2

ワークフロー内で作成されたタスクから対応するタスク フォームに情報を渡そうとしています。CreateTask アクティビティの前に、SPWorkflowTaskProperties を作成し、通常の情報 (役職、担当者など) を入力します。また、ExtendedProperties プロパティにいくつかの要素を追加します。ただし、これらのカスタム プロパティがタスクに組み込まれることはありません。

プロパティキーを次のように設定しようとしました:

  • 私のタスクのコンテンツ タイプのフィールドの 1 つの Guid。
  • タスクのコンテンツ タイプのフィールドの 1 つの内部名。
  • 無関係な名前 (タスクのフィールドではなく、タスクのプロパティに情報を取得することを期待して)。

何も機能しません。作成されたタスクには、設定した組み込みフィールド値のみが含まれます。拡張プロパティに明示的に追加した値はどれも表示されません。

私の活動の(簡略化された)順序は次のとおりです。

  • 準備タスク。これは、SPWorkflowTaskProperties を含むカスタム アクティビティです。
  • タスクを作成します。タスク プロパティは、PrepareTask アクティビティのプロパティにバインドされます。
  • OnTaskCreated. タスク プロパティは、PrepareTask アクティビティのプロパティにバインドされます。
  • While (タスクが完了していない)
    • OnTaskChanged

WSS 3.0 SP1 と ASPX (InfoPath ではない) タスク フォームを使用しています。

4

2 に答える 2

2

元のソリューションが機能しなかった理由はまだわかりません。しかし、私は回避策を見つけました。私の一連の活動は次のとおりです。

  • タスクの作成
  • OnTaskCreated
  • CopyTaskItems. これは、カスタム タスクのフィールドに値を入力してからタスクを更新するカスタム アクティビティです。
  • While (タスクが完了していない)
    • OnTaskChanged

そのため、タスクを作成し、すぐに値を挿入して更新する必要があります。

これが、この質問の将来の読者に役立つことを願っています。

于 2008-10-28T01:53:01.407 に答える
0

タスク フォームに渡すフィールドの定義を含むセカンダリ データソースとして、ItemMetadata.xml ドキュメントを使用する必要があります。何かのようなもの:

<z:row xmlns:z="#RowsetSchema" 
    ows_Instructions="" 
    ows_Body=""
    ows_Comments=""
    ows_ApprovalStatus=""
/>

ファイル名は重要です。

に注意してくださいows_(Web サービスを使用しているため、リスト内のすべてのフィールドには接頭辞が付きowsます)。

次に、infopath フォームで、この情報を表示する各コントロールの既定値を設定します。[fx] ボタンをクリックして、セカンダリ データソースからフィールドまたはグループを挿入します。

良いリソース: http://weblog.vb-tech.com/nick/archive/2007/02/25/2207.aspx

于 2009-02-24T03:29:59.300 に答える