コンテンツエリア開始

Procedure documentation  ユニット 8: パラメータを持たないメソッド ExistenceCheck の登録 Locate the document in its SAP Library structure

使用

このユニットでは、パラメータを持たないメソッド 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 つの変数が、例外にリンクされているメッセージの定義から決定されます。

追加情報については、Structure linkプログラミングの例外を参照してください。

手順

...

     1.      メソッド ExistenceCheck にカーソルを合わせます。

     2.      This graphic is explained in the accompanying text  を選択します。

エントリの色が変わります。

     3.      メソッド名をダブルクリックして、メソッド定義を開きます。この例では、ここで何も変更する必要はありません。This graphic is explained in the accompanying text を選択します。

     4.      メソッド ExistenceCheck にカーソルを合わせます。

     5.      プログラム を選択します。不足しているメソッドに対して、テンプレートの自動登録を行います。

1.     マニュアルによる実装は、 BEGIN_METHOD EXISTENCECHECK CHANGING CONTAINER END_METHOD 2 つのマクロコマンドの間で行う必要があります。初期状態では、追加ソーステキストはありません。

付録の導入プログラム(104 行目から 111 行目) から、メソッド ExistenceCheck の導入プログラムを追加します。受注のヘッダデータを含むテーブル VBAK が、入力したキーでスキャンされます。これがうまくいかない場合は、例外 0001 がトリガされます。

     6.      This graphic is explained in the accompanying text  を選択して、プログラムエディタを終了します。

結果

パラメータを持たないメソッドのテスト

...

     1.      オブジェクトタイプは、インスタンスとしてテストできるように、最初に生成する必要があります。これを行うには、This graphic is explained in the accompanying text を選択します。

オブジェクトタイプにまだエラーが含まれている場合は、その旨が通知されます。エラー一覧 ( ジャンプ エラー一覧) で、これらのエラーを修正してください。

     2.      メソッドをテストするには、This graphic is explained in the accompanying text を選択します。

オブジェクトタイプ< オブジェクト名> のテスト: インスタンスなし 画面が表示されます。

     3.      This graphic is explained in the accompanying text   インスタンス を選択します。

任意の受注番号を入力して、タイプが受注であるオブジェクトを特定します。必要な場合は、F4 入力ヘルプを使用してください。

     4.      This graphic is explained in the accompanying text  を選択します。

オブジェクトタイプ < オブジェクト名> のテスト 画面が表示されます。ここで、オブジェクトタイプのテスト ( メソッドの実行、属性値のチェック) を行うことができます。

 

 

コンテンツエリア終了