0

以下のようなデータシートが1つあります

勤務週 Person1 Person2
WW1XY
WW2座
WW3 XZ

A、X、Y、および Z は、sharepoint グループのメンバーです。必須 このような Web パーツを表示したい

WW1
画像1 画像2
XY

来週、Web パーツはこのように動的に更新されるはずです。

第二次世界大戦
画像3 画像4
座

この要件が可能な場合、可能であれば、pls はこれを達成する方法を提案します。

4

2 に答える 2

0

これは、SharePoint では週次更新 Web パーツと呼ばれます。

私の考え:

DateTime.Today のような1 つのCurrentDate値を現在の Web プロパティに設定できます。また、WorkWeek ユーザーのプロパティをもう 1 つ設定できます。今すぐチェック

         SPWeb web = SPContext.Current.Web;
         if (string.isnullorEmpty(web.Properties["CurrentDate"]))
            {
                 web.Properties["CurrentDate"] = DateTime.Today.Tostring();
                 // do the stuff for displying data.
            }
        else 
          {
             if(IFChangeNeeded())
              {
                 // do the stuff for displying data.
              }
            else
              {
                 web.Properties["CurrentDate"] = DateTime.Today.Tostring();
                 // do the stuff for displying data.
        
            }
         }

IfChangeNeeded()bool値を返す関数です。この関数は、従業員が今週変更する必要があることを確認します。

      public bool IFChangeNeeded()
      {
           DateTime PropDate = Convert.ToDateTime(web.Properties["CurrentDate"]);
           DateTime TDate = DateTime.Today;
           
           if(WeekNo(TDate) == WeekNo(PropDate)) // WeekNo is function return weekno from current date.
             {
                return true;
             
             }
           else
             {
                 return false;
             }
      }
于 2012-12-27T06:13:14.080 に答える
0

この要件を達成するのに役立ついくつかのロジックを提供できます。

要件に応じて html を持つユーザー コントロールを使用して、1 つのビジュアル Web パーツを作成します。

データシートからデータを取得するには、コードを使用してデータシートからデータを読み取ります

最初の週のデータを表示する場合は、1 つの変数を作成し、データシートから取得する週の順序を識別するためにそれを維持します。

初めてデータシートにアクセスするときは、この変数に年の週番号を設定します。

IF 変数が null のように、この変数を使用してデータシートの読み取りを調整し、年の週番号を割り当てます。

次にこのロジックに来たら、この変数を確認してください。変数が週よりも小さい場合、現在の週番号ではなく、データシートを最後に取得すると、+ 1 はデータシート 2 を意味するなど..

下手な英語でごめんなさい

variable : one for DaasheetNo, WeekNo,CurrentWeekNo

assign datasheetNo = Sheet1

If(WeekNo== Null)
{
first time getdata from DaasheetNo (First Sheet)
}
else if(WeekNo < CurrentWeekNo)
{
Get data from datasheetNo +1
}

それがあなたを助けることを願っています

于 2012-12-27T05:58:10.573 に答える