問題タブ [workflow-activity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
validation - ActivityDesigner 内からアクティビティを検証しますか?
子アクティビティのデザイナーの 1 つから、デザイン サーフェイス (この場合は Visual Studio) 内のワークフローを検証したいと考えています。後で設計エクスペリエンスを簡素化するために、他のエラーが修正されるまで、ユーザーが先に進めないようにしたいと考えています。
単純な実装は機能しません:
問題は、ActivityBuilder (Activityではなく、 に渡すことができない)に、ワークフローのルートで定義されたValidate
すべての変数と引数が含まれていることです。そのため、ルート ( ) の最初の子を検証しようとすると、Implementation
これらへのバインディングが失敗するため、無効なエラーが発生します。
Implementation
キャリア アクティビティ (たとえば、シーケンス) に を追加し、ActivityBuilder にあるすべての変数と引数をキャリアに追加するという提案されたハックを見てきました。
これは臭い。
より良い方法はありますか?
.net - TFS 2010 ビルド中に app_offline を削除する
Web アプリケーション プロジェクト用のカスタム TFS ビルド プロセスがあり、公開も行います。これを達成するために、ビルドからコンパイル済みソースをコピーする前に、現在の発行場所を削除しようとします。
サイトにアクセスする人がいるためにファイルがロックされている場合を除いて、これは (ほとんどの場合) 機能します。ほとんどの場合、ビルドは誰もアクセスしていないときに行われるため (これらは純粋に開発および QA ビルドであるため)、通常は問題ありません。 .
パブリッシュ ディレクトリを削除できないエッジ ケースを修正するために、app_offline.htm ファイルをディレクトリにコピーし、4 秒待ってからサイトの残りの部分を削除します。これは機能し、公開が終了した後に app_offline.htm を削除しようとしても、この手順でエラーは発生しませんでした。次のエラーが表示されます。
ワークフローをキャンセルできません。エージェントを再起動する必要があります。詳細: WorkflowApplication f670d4fb-d9e3-4f33-bc3d-925faa925e04 が中止されたため、操作を実行できませんでした。
削除は、カスタム CodeActivity を使用して作成されます (TFS ワークフローには削除がないため)。
後で「Tries」引数を追加して、このエラーの原因を見つけようとしました。
ただし、ログを表示すると、上記のエラーは DeleteFile アクティビティの下には配置されず、ログの先頭にのみ配置され、他のエラーや警告は表示されないことに注意してください。
最後に、tfsbuild ユーザーは公開ディレクトリに対する削除権限を持っています (app_offline.htm だけで残りのディレクトリを削除しても問題ありません)。
workflow-foundation-4 - ワークフローのアクティビティをオーバーライドしますか?
マーケティングメールを顧客に送信するための複雑なワークフローがあります。誰がどのような種類の電子メールを受け取るかを決定する20のアクティビティのようなものがあります。
私のアクティビティの95%は、バイナリアクティビティライブラリで定義されています。私はビジュアルスタジオでメインのアクティビティを組み立てました。
特定のタイプの顧客の場合、(たとえば)ステップ25aのアクティビティを、ビルド時に定義したものとは異なる動作にする必要があります。データベースでホストされているxamlからアクティビティを読み込むことができます。
1つのオプションは、それらの顧客のワークフロー全体を複製することですが、それは多くのコードの重複です。
ランタイムがアクティビティの検索とマーシャリングに使用するものをすべてオーバーライドして、顧客が左利きの場合、IDEで定義したものの代わりにワークフロー内の1つのアクティビティが置き換えられるようにすることは可能ですか?
mvcでViewEngineをオーバーライドして、iPadビューなどを動的にロードする方法を考えています。読み込みアクティビティに似たものはありますか?
sharepoint - SharePoint Designer 2010ワークフローエラー:オブジェクトを逆シリアル化できませんでした。タイプを解決できませんでした
開発環境では、SharePointDesignerでSharePointワークフローを作成しています。VisualStudioで作成されたカスタムアクティビティを使用するこのワークフロー。本番環境でWeb(Import-SPWeb Export-SPWeb)をデプロイした後、Designer内でワークフローを開くときにエラーが発生しました。
ソリューションを再インストールし、アプリケーションデータのSharePointDesignerキャッシュをクリアしようとしています。ワークフローのxomlで、カスタムアクティビティを使用してアセンブリの正しい完全な名前空間を指定します。このアセンブリはGACに存在します。
workflow - ワークフローを中断してワークフローを再開する方法は?
ワークフローが長時間実行されています。ワークフローを一時停止し、準備ができたら再開するオプションをユーザーに提供したい...
wf4 でこれを達成するにはどうすればよいですか?
workflow - フローチャート ワークフローで割り当てをプログラムで作成する
入力引数を受け入れて結果を返す、シリアル化可能なフローチャート Windows ワークフローをプログラムで定義する必要があります。デザイナーを使用してこれらのワークフローを作成する方法は理解していますが、コードで作成し、フローチャート ワークフローをシリアル化できるようにする必要があります (したがって、ラムダ式はありません)。
Assign の「To」フィールドを取得できません。以下のコードは、WriteLine とそれに続く Assign のフローチャート ワークフローを作成します。
上記のコードは、「テキスト 'bye' から 'OutArgument' を作成できませんでした」というメッセージを表示して、ActivityBuilder から Activity に変換しようとすると失敗します。これは、OutArgument を使用せずに渡すだけで問題なく動作します。
私の質問は、To プロパティに何を入れるかです。ActivityBuilder.Properties に追加した OutArgument を参照するにはどうすればよいですか? VisualBasicReference は OutArgument ではありません。これを必要以上に難しくしていませんか?
ヒントをありがとう!
編集:プログラムでワークフローを作成したい。ワークフローには入力引数があり、結果を返す必要があります (出力引数)。
ワークフローを作成する方法と、入力引数を宣言して使用する方法を理解しています。ActivityBuilder を使用してワークフローを作成し、ActivityBuilder のプロパティを介して InArgument を設定しています。XAML にシリアル化し、ActivityXamlServices.Load を使用して逆シリアル化することで、ActivityBuilder からワークフローを作成します。
私が理解していないのは、ワークフローから結果を取得する方法です。OutArgument が含まれていると思います。ワークフローに OutArgument を追加する方法/場所は? 私が提供したコード スニペットは OutArgument に値を割り当てると思っていましたが、ActivityXamlServices.Load の呼び出しが失敗し、OutArgument を作成できないというエラーが表示されます。
- ActivityBuilder を使用するアプローチは正しいですか?
- Assign アクションの「To」フィールドは OutArgument を適切に参照していますか?
- ActivityBuilder に OutArgument を認識させ、アクティビティ / ワークフローに変換できるようにするにはどうすればよいですか?
これで私の問題が明確になることを願っています。
.net - WF アプリでのドキュメントの長時間の待機を表すために使用するアクティビティはどれですか?
基本的に、私のワークフローには、ドキュメントが送信された後、さまざまなことが発生する/発生する可能性があるポイントがあります。
- 顧客は 10 日以内に回答を送信できます
- 顧客の応答が 10 日以内に受信されると、待機は終了し、応答はワークフローの次のステップに移ります。
- 8 日目または 9 日目に応答がない場合は、お客様にメールを送信する必要があります。
- 11 日目に、応答が遅れていることを示す電子メールが顧客に送信されます。
- その後、応答を受信するまで、3 日または 5 日ごとに顧客に電子メールを送信する必要があります。
ワークフローで While アクティビティを使用する必要があるか、使用できるかどうか、コード ビハインドで While ループを含むコード アクティビティを使用する必要があるかどうかがわかりません。ドキュメントが送信された日、その期限、および応答がいつ受信されたかを追跡します。これを行うためのベストプラクティス/アプローチについてはわかりません。
workflow-foundation - ネイティブ アクティビティの execute メソッド内での永続性
何かが可能かどうか、または私の問題に対するより良い解決策があるかどうかを判断する必要があります。以下は私が持っているシナリオです。アクティビティの Execute メソッド内で、3 つの異なるメソッドを実行できる必要があります。1 つ目は UI (HTML または VXML) を表示し、ユーザー入力を待ちます。この段階では、ワークフローが持続することを期待しています (可能であれば)。2 番目の方法は、ユーザーが入力したデータを取得して検証します。入力が有効な場合、データを処理する次のメソッドが実行されます。入力が無効な場合、UI を再度表示する必要があります。これは execute メソッド内で可能なことですか、それともこのシナリオに対するより良い解決策はありますか?
asp.net - X日後に警告を送信し、次に「メールが遅れていますか?
完全な説明。現在、3つのブランチを持つListenアクティビティがあります。最初の分岐は、ドキュメントが時間どおりに返送されるかどうかです。2つ目は、X日が経過した後、ユーザーが遅れないように警告する電子メールを受け取った場合です。3番目のブランチは、Y日後にドキュメントが遅れ、ユーザーはドキュメントが遅れたことを示す電子メールを受け取ります。リッスンアクティビティはwhileループ内にあります。これで設定方法により、ワークフローがX日ごとに2番目のブランチを実行することがわかりました。2番目のブランチを実行するようにワークフローを設定する方法がよくわかりません。それでもドキュメントが返されない場合は、3番目のブランチが実行されます。
何か案は?
workflow - カスタム アクティビティの動的パラメータ?
独自のアプリで WF-4 デザイナーを再ホストしています。フィルターと呼ばれるものがあります。次に、このフィルターを実行して ForEach で結果を操作できるアクティビティが必要です。十分に単純です。ただし、これらのフィルターには、ワークフロー ホストに入力する必要がある (フィルターを実行するための) パラメーターのリストがあります。フィルタ パラメータのリストは、0 から N までの任意の値にすることができます。
ユーザーが FilterId を設定した後、そのフィルターのインスタンスを作成し、そのパラメーターのリストを調べて、それらのパラメーターをアクティビティに追加する方法はありますか? パラメーターは基本的に Name と Type だけで、その値はユーザーが入力する必要があります。
もう 1 つのことは、実行時に Filter のインスタンスを作成したくないということです。これはコストがかかりすぎるためです。実行時に必要なのは、フィルター ID とパラメーター値のリストだけです。
FilterId が変更されたときにそれを更新し、このリストのすべてのパラメーターに値があることを検証する方法があれば、パラメーターの静的プロパティがあれば幸いです。