0

元の投稿:

会社の一部の人には機能するが、他の人には機能しないウィジェットを作成しました。誰かが私を助けてくれるのではないかと思っていました。

それが機能する人々にとって、使用しているコンピューターやブラウザーは関係ありません。それが機能しない人にとっては、使用するコンピューターやブラウザーに関係なく機能しません.

ウィジェットはとてもシンプルです。結果をグラフにプロットする前に、クエリ API を使用してクエリを作成します。

主な問題は、なんらかの理由でクエリが一部の人にゼロの結果を返すことです。

スタックホルダー ライセンスの一部のユーザーはウィジェットを表示できますが、プロジェクト管理者権限を持つベーシック ライセンスのユーザーは表示できないため、ライセンスやセキュリティ許可とは何の関係もないようです。

どんな提案でも大歓迎です。

コード:

まず、必要なクエリの種類に応じてクエリを作成するメソッドがあります。

var queryString = buildWiql(queryType, dateString, iterationPath);

の実装buildWiql()は次のとおりです。

var buildWiql = function (queryType, dateString, iterationPath) {

    var queryString;

    if (queryType=== "someType") {
        queryString = {
            "query": "Select [Microsoft.VSTS.Scheduling.RemainingWork] From WorkItems Where [System.WorkItemType] = 'Task' AND [System.State] <> 'Done' AND [System.State] <> 'Closed' AND [System.IterationPath] = '" + iterationPath + "' order by [System.CreatedDate] desc ASOF " + dateString
        };
    }
    else if (queryType === "someOtherType") {
        ....
    }
    else {
        ....                            
    }

    return queryString;
};

次に、メイン関数内で次のようにします。

return TFS_Wit_WebApi.getClient().queryByWiql(queryString)
    .then(function (query) {
        console.log(query);
        ....
    }

コンソールがクエリ結果をログに記録するとき。うまくいかない人のために、クエリは要素が 0 の配列を返します。

更新: ウィジェットが機能しないアカウントの場合。ブラウザでコンソールを開くと、次のエラーが表示されます。

Failed to load resource: the server responded with a status of 400 (Bad Request)
*******ERROR*******:
Error: Expecting date-time. The error is caused by <<'20/8/2016'>>.(....)
4

1 に答える 1