次の方法で共有


ワークフローからの動的な更新のサンプル

Download sample

このサンプルでは、実行中のワークフロー インスタンスをワークフロー内から動的に更新する方法を示します。

ワークフローは、ある金額の発注書の要求を受け取ります。発注書の金額が $1,000 未満の場合、ワークフローは自動的に発注書を承認します。金額が $1,000 より大きい場合は、発注書の承認が必要です。これは、ワークフロー内でコード側に InvokeWorkflowActivity アクティビティを動的に追加することで実現できます。別のワークフローを呼び出すことで、ワークフロー内に承認要求ロジックをカプセル化できます。ただし、承認ロジックは、必要に応じてインラインで実行することもできます。

サンプルをビルドおよび実行すると、次のような出力が表示されます。

動的な更新のサンプル出力

データベースの構成

Windows Workflow Foundation によってインストールされた SQL Server サービスは、Microsoft SQL Server を使用して情報を保存します。これらの作業には、Microsoft SQL Server 2005 Express、SQL Server 2000 以降のバージョン、または SQL Server 2000 Desktop Engine (MSDE) を使用できます。

Windows Workflow Foundation のセットアップでは、これらのサービスに必要なデータベースはインストールされませんが、これらのサービスで使用するデータベースを作成および構成するための SQL スクリプトはインストールされます。

次の手順では、このサンプルの各サービスで使用されるデータベースを作成および構成する方法を説明します。

SQL Server データベースを作成および構成するには

  • Microsoft SQL Server 2005 Express、SQL Server 2000 以降、または SQL Server 2000 Desktop Engine (MSDE) を使用して、SQL クエリ ステートメント

    CREATE DATABASE SqlPersistenceService

    で新規データベース SqlPersistenceService を作成します。

Noteメモ :

ワークフロー アプリケーションで SqlTrackingServiceSqlWorkflowPersistenceService の両方を使用する場合は、永続性と追跡に対して単一のデータベースを使用することをお勧めします。

  1. SQL Query Analyzer 作業領域で、使用可能なデータベースのリストから手順 1. で作成したデータベースを選択します。

  2. [ファイル] メニューの [開く] をクリックして、SQL スクリプト %WINDIR%\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL\<言語>SqlPersistenceService_Schema を開きます。

  3. [実行] をクリックするか F5 キーを押してクエリを実行し、SQL 永続性サービス テーブルを作成します。

  4. [ファイル] メニューの [開く] をクリックして、SQL スクリプト %WINDIR%\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL\<言語>\SqlPersistenceService_Logic を開きます。

  5. [実行] をクリックするか F5 キーを押してクエリを実行し、SQL 永続性サービス ストアド プロシージャを作成します。

サンプルをビルドするには

  1. [サンプルのダウンロード] をクリックしてサンプルをダウンロードします。

    サンプル プロジェクトがローカル コンピュータのハード ディスクにダウンロードされます。

  2. [スタート] ボタンをクリックし、[すべてのプログラム] をポイントします。次に、[Microsoft Windows SDK] をポイントし、[CMD シェル] をクリックします。

  3. サンプルのソース ディレクトリに移動します。

  4. コマンド プロンプトで、「MSBUILD <ソリューション ファイル名>」と入力します。

サンプルを実行するには

  • SDK コマンド プロンプト ウィンドウで、DynamicUpdateFromWorkflow\bin\debug フォルダ (このサンプルの VB バージョンでは DynamicUpdateFromWorkflow\bin フォルダ) にある .exe ファイルを実行します (このサンプルでは、メイン フォルダの下にあります)。

関連項目

参照

WorkflowChanges
ApplyWorkflowChanges

その他の技術情報

Using Dynamic Updates in Workflows
Applying Dynamic Updates to Workflows
動的な更新のサンプル
ホストからの動的な更新のサンプル
Dynamic Updates to Rule Conditions

Footer image

Copyright © 2007 by Microsoft Corporation.All rights reserved.