0

同じサイト コレクションの複数のリストから値を計算する SharePoint ホスト型アプリを開発しています。似たような名前のリストを検索する必要があります。

例: ルート サイト:

/dev 

サブサイト:

/dev/site1 
/dev/site2 

サイト 1 とサイト 2 の両方に「タイムシート」という名前のリストがあります。
ユーザー 1 とユーザー 2 について考えてみましょう。各ユーザーは両方のサブ サイトにアクセスできます。そして、両方のサイトのタイムシートを更新します。

私が必要としているのは、サイト 1 とサイト 2 の両方からタイムシート リストのフィールド (loggedhours) の値を計算し、それを追加して、ルート サイト リスト (別のリスト) に保存することです。

また、ユーザーのみに基づいて値をフィルタリングする必要があります。

例: サイト 1 > タイムシート - 現在のユーザーによって作成されたアイテムを計算し、サイト 2 > タイムシート - 現在のユーザーによって作成されたアイテムを計算し、ルート サイトに保存します。

値を取得するために caml クエリを使用しています。しかし、caml クエリを使用して現在のユーザーに基づいてフィルター処理する方法がわかりません。

私のコード

var TimesheetList01 = web01.get_lists().getByTitle('Timesheet');

var camlQuery01 = new SP.CamlQuery();
camlQuery01.set_viewXml("<View><Query><Where></Where></Query></View>");

this.collListItem01 = TimesheetList01.getItems(camlQuery01);
currentcontext01.load(collListItem01, 'Include(Id,LoggedHours)');

currentcontext01.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
             function onQuerySucceeded(sender, args) {
             var mysum01 = 0;
              var myloggedHours01 = 0;
              var listItemInfo01 = '';
             var listItemEnumerator011 = collListItem01.getEnumerator(); 
             while (listItemEnumerator011.moveNext()) {
                var oListItem01 = listItemEnumerator011.get_current();
                  myloggedHours01 = oListItem01.get_item('LoggedHours');
                  mysum01 = mysum01 + myloggedHours01;`

助けてください。

ありがとう、アルン

4

1 に答える 1