問題タブ [biztalk-orchestrations]
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.
streaming - Biztalk - ストリーミング逆アセンブル パイプラインを調整する方法
ストリーミング逆アセンブル受信パイプラインで大きなメッセージをデバッチするときに生成されるオーケストレーション インスタンスの数を制限する必要があります。100 000 の個別の「注文」メッセージを含む大きな xml が入ってくるとしましょう。受信パイプラインはそれをデバッチし、100 000 の「ProcessOrder」オーケストレーションを作成します。これは多すぎるので、制限する必要があります。
要件
- メッセージボックスに送信する前に、一度に 1 つの「注文」メッセージのみをメモリにロードするように、デバッチをストリーミング方式で行う必要があります。
- デバッチは、現在実行中の「ProcessOrder」オーケストレーション インスタンスの数に基づいて調整する必要があります (たとえば、実行中のインスタンスが既に 100 個ある場合、デバッチは、別の「Order」メッセージをメッセージ ボックスに送信するために 1 つのインスタンスが終了するまで待機します)。
私がいるところ
メッセージのデバッチ処理と機能変更を行う受信パイプラインがあります。本来あるべきことをストリーミング方式で実行し、個々のメッセージを VirtualStreams に入れます。
「ProcessOrder」オーケストレーション インスタンスの数を制限できるオーケストレーション メソッドとヘルパー メソッドがあります。
問題
オーケストレーション内で受信パイプラインを実行できることはわかっています (そして、パイプラインへのすべての "getnext" 呼び出しで、実行中のオーケストレーション インスタンスが多すぎる場合はそのままにしておくことができるため、問題は解決します) 、biztalk dll を掘り下げるMicrosoft.XLANGs.Pipeline.XLANGPipelineManager を使用すると、Microsoft.BizTalk.PipelineOM.PipelineManager のようにすべてのメッセージを列挙するのではなく、メモリ内のすべてのメッセージが読み込まれることに気付きました。彼らがすべてのメッセージを VirtualStream に入れていることは知っていますが、このような大きなメッセージ数に対しては、メモリに関してはまだ不十分です。
質問
私の次のステップは、「ProcessOrder」インスタンスの数を制限するオーケストレーションを使用せずに、受信パイプラインを受信ポートで直接実行することです (したがって、Microsoft.BizTalk.PipelineOM.PipelineManager を使用します)。パイプラインに遅延ロジックを追加する必要があります。これは実行可能なオプションですか?そうでない場合、なぜですか?他にどのような選択肢がありますか?
wcf - Biztalk over https および PUT モードでの動的送信ポートからの WCF サービスの使用
BizTalk オーケストレーションの動的送信ポートから https 接続を介して PUT WCF サービスを使用したい これまでのところ、メッセージ割り当てシェイプでこのコードを使用しています
URL: https://example.com/url/url2 メソッド: PUT
サービスを利用できず、次のエラーが発生します HTTP 要求は、クライアント認証スキーム「ネゴシエート」で許可されていません。サーバーから受信した認証ヘッダーは '' でした。HTTP 認証ヘッダーが見つかりません
サーバーは基本認証を使用しています。
ありがとう
xml - Orchestration Send から XML メッセージを異なるフラット ファイルに分割する
注文メッセージを SOAP サービスに送信する販売注文オーケストレーションがあります。このメッセージには、注文ヘッダー要素と、注文明細の繰り返しセットが含まれています。例:
SOAP 呼び出しが失敗した場合の「バックアップ計画」を導入する必要があります (理由が何であれ、ネットワークの問題など)。XML メッセージを受け取り、注文ヘッダーと注文明細を表す一連のフラット ファイル (パイプ区切り) に変換し、そのファイルを共有に送信するように依頼されました。 SOAP サービスと同じバックエンド システムにインポートします。
つまり、XML を個別のファイルに分割する必要があります。これは、1 つのファイルが注文ヘッダーに使用され、別のファイルが注文明細に使用されるためです。私の実際のシナリオには、注文でノードを繰り返す他のファイルもありますが、シナリオは注文品目とまったく同じであるため、ここでは単純にしています。
デバッチなどについて話している投稿をたくさん見てきましたが、上記のシナリオに当てはまるものはないようです。
BizTalk 2013 R2 でこれを実現する最善の方法は何ですか? 送信ポートで何かを行うことはできますか、それともカスタム コーディングが必要ですか? 手順と、可能であれば関連記事リソースへのリンクを提供してください。ありがとう!
biztalk - Biztalk 2013 - 例外ハンドラーを追加した場合にのみ、構築されていないメッセージが表示される
MS CRM との簡単な接続の構築に取り組んでいます。この 'Unconstructed message' エラーは、例外ハンドラーを追加した場合にのみ発生します。別のリンクUse of unconstructed messageを参照しました。これは、メッセージが処理される前に、コンパイラがメッセージが構築されていることを確認できない可能性があることを示しています。
しかし、私はマップ (Transform shape) でメッセージを作成しています - それはメッセージが作成されることを保証しませんか?
変換の前にメッセージ割り当て図形を追加して、要求メッセージを初期化する必要がありますか?
biztalk - オーケストレーションの出力を別のスキーマの要素にマップする
それぞれOne、Two、Threeとして応答する3つのスキーマがあります。
One、Two、および Three を要素として含む別のスキーマがあります。
これらを次のようにマッピングする方法はありますか?
ResultSchema は、他のすべての出力スキーマを要素として含むものだとします。
これは、別のオブジェクトのプロパティとしてのオブジェクトのようなものです。
.net - コードを使用してカスタム BizTalk 永続ポイントを追加する方法は?
.NET コードを使用して BizTalk オーケストレーション フロー内に永続的なポイントを追加する方法はありますか? 私は検索して検索しましたが、役立つものを見つけることができませんでした。助けてください、誰か?
biztalk - 非アトミック オーケストレーションでのシリアル化不可能なオブジェクトの宣言
トランザクション タイプが [なし] に設定されたオーケストレーションがあります。オーケストレーション内で、オーケストレーション プロジェクトで参照される C# ヘルパー クラスを呼び出します。ビルド時にエラーが発生します
シリアル化できないオブジェクト型は、アトミック スコープまたはサービス内でのみ宣言できます。
これを回避するために、オーケストレーションのトランザクション タイプをアトミックに変更しようとしましたが、その中から別のオーケストレーションも呼び出す必要があるため、エラーが発生します。
アトミック スコープは、「uses」ポートまたはサービスリンクでの requestresponse 操作の送信と対応する受信の両方を含むサービスまたはスコープを含んだり、呼び出したりすることはできません。
ここで誰かが私を正しい方向に向けることができますか?
biztalk - BTDF を使用したオーケストレーションの登録解除
私は、20 個のオーケストレーションのうち 2 個を Unenlisted 状態にしておく必要があるという要件に取り組んでいます。デプロイには BTDF を使用しています。バインド ファイルで状態をUnenlistedのままにしても、デプロイの最後に BTDF によってアプリケーションが開始され、すべてのオーケストレーションが開始されます。誰でも同じことを達成するのを手伝ってくれませんか。以下は私のバインディングファイルのスニペットです: