2

私は YouTube でかなりの数のビデオを見て、ユーザー出口 (拡張機能?) を見つけて実装する方法について基本的な理解を持っています。ただし、私が見たものを複製しようとすると、機能していないようです。

CO11N を介して製造オーダーが確認 (クローズ/終了) されたときに実行されるユーザー出口を作成しようとしています。「BREAK ユーザー名」というコード行を挿入することを誰かが提案しました。コードが起動していることを確認できるように。何も壊れません。インターネットで見つけたコードからメッセージを入れてみました

MESSAGE s208(00) WITH 'TEST'.

メッセージは表示されません。インクルードとプロジェクトを有効にしました。さまざまな終了/インクルードを試しましたが、何をしても、メッセージが壊れたり表示されたりすることはありません。

私が見逃している簡単なものはありますか?CONFPI05とCONFPM05を試しました。

4

2 に答える 2

2

CONFPI05 はプロセス指図用です。CONFPM05 はプラント保守オーダ用です。まず、使用する注文の種類を確認する必要があります。製造オーダーを使用しているとします。よりも User-Exit CONFPP05 を確認する必要があります。

とにかく、BAdI WORKORDER_CONFIRM を使用することをお勧めします。この BAdI 内には、エラーメッセージを表示できるメソッドがあります。

BAdI ドキュメントから:

メソッドでは、システム メッセージが送信されない場合があることに注意してください。唯一の例外は、AT_SAVE および AT_CANCEL_CHECK メソッドです。これらのメソッド内で、システム メッセージが発行される場合がありますが、例外 ERROR_WITH_MESSAGE (AT_SAVE メソッドの場合) または NOT_ALLOWED (AT_CANCEL_CHECK メソッドの場合) を同時にトリガーした場合のみです。

また、メソッド内で「コミット作業」命令が実行されない場合があることにも注意してください。これは、データベース内のデータが正しくないことにつながるためです。

User-Exit または BAdI の実装では、MESSAGE ステートメントを使用しないことを強くお勧めします。MESSAGE ステートメントは暗黙的に COMMIT WORK を呼び出し、データベースの不整合を引き起こす可能性があります (ちなみに、非常に頻繁に発生します)。

1 つ追加の注意事項。BREAK-POINT または BREAK ユーザー名を直接使用する代わりに、チェックポイント グループを使用してチェックする必要があります。

于 2015-09-26T08:08:54.067 に答える
1

ドキュメントを確認しました:

確認を保存した後、独自のデータを更新するための CONFPI05

別のドキュメントで、別の警告を見つけました。

このカスタマ エンハンスメントでは、エラー メッセージやその他のメッセージを送信することは固く禁じられています。SAP はこれについて責任を負うことはできません!!

これは、更新タスクの変更のように聞こえます。デフォルトでは、更新タスクのブレークポイントは有効になっていません。

保存を押した後、コードを処理する必要がありますか?

はいの場合、あなたが試すことができるもの:

  • どこでもブレークポイントを設定します。または/h、データの挿入中に試してください。
  • デバッグ画面で、更新のデバッグを有効にします。 ここに画像の説明を入力
  • F8 でプロセスを続行します。
  • うまくいけば、ブレークポイントで停止します。
于 2015-09-25T21:17:44.213 に答える