0

非アクティブ化されたときに、現在のレコードに関連するいくつかのレコードを削除する必要があります。レコードが非アクティブ化されたときにイベントを取得できますが、JavaScript でレコードを削除するコードを Google とこのサイトでしばらく調べましたが、そこにいくつかあるはずですが、何も見つかりません。

誰でも助けることができますか?

ありがとう

4

2 に答える 2

3

プラグインを使用してこれを実行しても問題ありません。知っておく必要があるのは、レコードが非アクティブ化されていることを取得する方法だけです。

SetStateおよびSetStateDynamicメッセージにプラグインを登録できます(シナリオではPreイベントを推奨します)。これらの各メッセージは、非アクティブ化されているレコードを参照するプロパティバッグに渡さEntityMonikerれます。InputParameters

コードでは、次のことを行う必要があります。

  1. SetStateリクエストの新しい状態が非アクティブ化されていることを確認します(もちろん、レコードは通常再アクティブ化でき、おそらく削除も試みたくないため)
  2. EntityMonikerからピックアップIPluginExecutionContext.InputParameters
  3. クエリを実行して、関連するレコードを特定して削除します
  4. プラグインを終了して、SetStateトランザクションを完了できるようにします
于 2012-09-20T16:26:44.307 に答える
3

本当に JavaScript でレコードを削除したい場合は、MSDNにサンプルがあります。

少し長くなりました (CRUD の例 - 作成、取得、更新、削除)。ただし、必要な情報が含まれている必要があります。

そのページには、jQuery を使用しない例もあります (jQuery の使用に問題がある場合)。

そうは言っても、この操作では、プラグインを使用して実装、テスト、および保守する方が簡単だと思います(したがって、Gregの答えに行きます)。

さらに、プラグインはすべてのコンテキストで適用されます。たとえば、ワークフローでレコードを非アクティブ化すると、JavaScript は実行されませんが、プラグインは実行されます。

于 2012-09-20T19:14:57.890 に答える