次の方法で共有


Condition 要素 (WorkflowInfo)

適用対象: SharePoint 2016 |SharePoint Foundation 2013 |SharePoint Online |SharePoint Server 2013

Condition ステートメントを表します。これは、Microsoft SharePoint Designer 2010 などの宣言型のルール ベースのコードフリー ワークフロー エディターで表示できるルール文の一部です。

Microsoft SharePoint Foundation 2010の SharePoint リストまたはドキュメント ライブラリアイテムに対応するイベントによってワークフローがトリガーされる場合、多くの場合、実行するワークフロー アクションやアクションが必要かどうかを評価する必要があります。 Condition 要素を使用すると、ワークフロー エディターによって提供される値と引数を使用して、ワークフローでこの評価を実行できます。

Condition 要素は、指定された SharePoint Foundation 2010 ワークフロー ライブラリ内の ブール 型メソッドにも対応します。 これらのメソッドは、パラメーターによって渡された値を評価し、 true または false を返すために使用 されます

Condition 要素には、Condition コードが実装されている Microsoft .NET アセンブリに関する情報と、関数呼び出しを行うために必要なパラメーターも含まれています。 この要素には、Condition 文をワークフロー エディタに表示する方法に関する情報も含まれています。

定義

<WorkflowInfo>
      <Conditions>
            <Condition>
               <RuleDesigner>…</RuleDesigner>
               <Paramaters>…</Parameters>
            </Condition>
            <Default>…</Default>
      </Conditions>
      <Action>…</Actions>
</WorkflowInfo>

要素と属性

以下のセクションで、属性、子要素、親要素について説明します。

属性

属性

説明

**AppliesTo**

必要な **テキスト**。 評価される条件付きステートメントを SharePoint リストまたはドキュメント ライブラリに適用することを指定します。 値を変更することにより、ワークフローに関連する SharePoint リストの形式に応じて、ワークフロー エディタで特定の条件文の表示または非表示の切り替えができるようになります。

次の値では大文字と小文字は区別されません。

  • **all** は、すべてのリスト ライブラリとドキュメント ライブラリの種類で条件ステートメントを使用できることを指定します。

  • **doclib** は、ワークフローがドキュメント ライブラリに関連付けられている場合にのみ、条件ステートメントがワークフロー エディターに表示されるように指定します。 ワークフローが他の種類のリストに関連付けられている場合、条件ステートメントはワークフロー エディターから非表示になります。

  • **list** は、ワークフローが SharePoint リストに関連付けられている場合にのみ、条件ステートメントがワークフロー エディターに表示されるように指定します。 ワークフローがリスト型以外の型に関連付けられている場合、条件ステートメントはワークフロー エディターから非表示になります。

  • **none** は、条件ステートメントがワークフロー エディターから非表示であることを指定します。

**Assembly**

必要な **テキスト**。 **Condition** 要素に対応する実装コードが含まれる .NET アセンブリを指定します。

値の型: **文字列**。

ワークフロー コードを含む .NET アセンブリを指定します。 形式は以下のようになります。

アセンブリ名、バージョン、カルチャ、PublicKeyToken

例:

Assembly=>Microsoft.SharePoint.WorkflowActions,

Version=12.0.0.0,

Culture=Neutral,

PublicKeyToken= 71e9bce11e9429c>

**ClassName**

必要な **テキスト**。 **Condition** 要素のコードが実装されている完全修飾クラス名を含みます。

値の型: **文字列**。

カスタムの **Condition** 要素のコードが実装されている完全修飾クラス名。

例:

**XML**:

ClassName=>**Microsoft.SharePoint.WorkflowActions.Helper**>

**FunctionName**

必要な **テキスト**。 **Condition** コードを実装するクラス内の **Boolean** メソッド名。

値の型: **文字列**。

**Condition** 要素のコードが実装されているクラス内のメソッド名を表します。

**メソッドの例**:

`Bool myCondition(WorkflowContext context, string ListGUIDorName, int ItemWorkflowAttachedTo)`

**XML**:

FunctionName=>myCondition>

**ItemKeyType**

省略可能な **テキスト**。 既定のオブジェクト型の実装固有の識別子。

**名前**

必要な **テキスト**。 ローカライズされた条件名を指定します。

**型**

省略可能な **テキスト**。 **Condition** 要素が、**Custom** または **Advanced** のどちらかを指定します。

次の値では大文字と小文字は区別されません。

  • **Custom**   現在の SharePoint リストやドキュメント ライブラリ アイテムに存在する値と、ワークフロー デザイナにより指定した値を比較する場合に使用します。

  • **Advanced**   **Condition** を使用して、型 (例 : テキスト、整数、日付) の 2 つの値を比較できることを示す場合に使用します。

**UsesCurrentItem**

省略可能な **ブール値**。 現在選択したアイテムがワークフローと関連づけられるように指定します。

値の型 : **Boolean**。

**true** に設定すると、ワークフロー は、ワークフロー インスタンスを開始した SharePoint リスト アイテムまたはドキュメント ライブラリ アイテムにバインドされます。 宣言型のコードフリーワークフロー エディターを使用する場合、この値は常に **true **を返し、変更できません。

子要素

RuleDesigner

パラメーター

親要素

条件

以下の例では、ワークフロー設計の工程において Condition 要素をコードを使用しないエディタに表示する方法について説明します。

    <WorkflowInfo Language="en-us">
       <Conditions And="and" Or="or" Not="not" When="If" Else="ElseIf">
          <Condition
                  AppliesTo="list"
                  Assembly="MyWorkflowProject.Workflow1,
                            PublicKeyToken=71e9bce111e9429c,
                            Version=1.0.0.0,
                            Culture=neutral"
                  ClassName="MyWorkflowProject.Workflow1.MyClass"
                  FunctionName="IsOrderComplete"
                  Name="Check if item in %1 is a complete order"
                  Type="Custom"
                  UsesCurrentItem="True">
              <RuleDesigner>...</RuleDesigner>
          </Condition>
       </Conditions>
    </WorkflowInfo>

関連項目