!--a11y-->
ユニット 8:
パラメータを持たないメソッド ExistenceCheck
の登録 
このユニットでは、パラメータを持たないメソッド ExistenceCheck の登録と導入の方法について説明します。
オブジェクトタイプが SAP 標準インタフェース をサポートしている場合には、このメソッドを導入する必要があります。
メソッド ExistenceCheck は、キー項目で特定されたオブジェクトが実際に存在するかどうかをチェックするメソッドです。このメソッドは、すべてのオブジェクトタイプが SAP 標準インタフェース ( 技術名称: IFSAP) から継承するメソッドの 1 つです。
このメソッドはインタフェースに対してまだ導入されていません。そのため、導入プログラムをこれに応じて拡張する必要があります。
メソッド ExistenceCheck の以下のプロパティと例外がインタフェース IFSAP から継承されます。
キ メソッドのプロパティ
メソッド ExistenceCheck は、ダイアログなしで実行される同期メソッドで、インスタンスに依存し、結果を返しません。オブジェクトが存在しなければ、このメソッドは例外によって終了します。
キ 例外
例外オブジェクトがありませんは、メソッド ExistenceCheck に対して番号 0001 で定義されています。
この例外は、ソーステキストの適切な箇所に実装する必要があります。これを行うには、マクロコマンド EXIT_RETURN 0001 SPACE SPACE SPACE SPACE を使用します。
例外は、メソッドごとに定義することができます。各例外について、一時エラー、アプリケーションエラー、またはシステムエラーが関与するかどうかを指定する必要があります。例外は、それぞれ 4 桁の番号で識別され、ランタイム時に最大 4 つの変数で補足されるメッセージテキストにリンクされます。以下の番号範囲を使用することができます。
キ 1001 - 7999: アプリケーション固有の例外(SAP 開発用)
キ 9000 - 9999: 得意先固有の例外
メソッド処理中にエラーが発生した場合には、メソッドの実装部分、つまりマクロコマンド BEGIN_METHOD と END_METHOD の間で例外をトリガします。マクロコマンドは、コール EXIT_RETURN Code Variable1 Variable2 Variable3 Variable4 で呼び出して、使用します。
コード (ABAP ディクショナリ参照 SWOTINVOKE-CODE) としては、例外を定義した際に指定した 4 桁の例外番号を入力します。最大 4 つの変数が、例外にリンクされているメッセージの定義から決定されます。
追加情報については、
プログラミングの例外を参照してください。
...
1. メソッド ExistenceCheck にカーソルを合わせます。
2.
を選択します。
エントリの色が変わります。
3.
メソッド名をダブルクリックして、メソッド定義を開きます。この例では、ここで何も変更する必要はありません。
を選択します。
4. メソッド ExistenceCheck にカーソルを合わせます。
5. プログラム を選択します。不足しているメソッドに対して、テンプレートの自動登録を行います。
1. マニュアルによる実装は、 BEGIN_METHOD EXISTENCECHECK CHANGING CONTAINER と END_METHOD の 2 つのマクロコマンドの間で行う必要があります。初期状態では、追加ソーステキストはありません。
付録の導入プログラム(104 行目から 111 行目) から、メソッド ExistenceCheck の導入プログラムを追加します。受注のヘッダデータを含むテーブル VBAK が、入力したキーでスキャンされます。これがうまくいかない場合は、例外 0001 がトリガされます。
6.
を選択して、プログラムエディタを終了します。
...
1.
オブジェクトタイプは、インスタンスとしてテストできるように、最初に生成する必要があります。これを行うには、
を選択します。
オブジェクトタイプにまだエラーが含まれている場合は、その旨が通知されます。エラー一覧 ( ジャンプ → エラー一覧) で、これらのエラーを修正してください。
2.
メソッドをテストするには、
を選択します。
オブジェクトタイプ< オブジェクト名> のテスト: インスタンスなし 画面が表示されます。
3.
インスタンス
を選択します。
任意の受注番号を入力して、タイプが受注であるオブジェクトを特定します。必要な場合は、F4 入力ヘルプを使用してください。
4.
を選択します。
オブジェクトタイプ < オブジェクト名> のテスト 画面が表示されます。ここで、オブジェクトタイプのテスト ( メソッドの実行、属性値のチェック) を行うことができます。