IM-ERP Real Connect for Accel Platform プログラミングガイド 初版 2013-02-01

請求伝票登録 API (BillingDocCreateMultipleController)

請求伝票を登録するためには、BillingDocCreateMultipleController クラスの持つ各メソッドを利用する必要があります。
引数、戻り値についての詳細な情報は、API リストを参照してください。

各メソッドの説明

コンストラクタ / メソッド名 説明
BillingDocCreateMultipleController コンストラクタ(引数無し)
BillingDocCreateMultipleController
コンストラクタ(第1引数あり)。
ConnectionManager を使う場合に使用する。第1引数で「ConnectionManager」を設定する。
BillingDocCreateMultipleController
コンストラクタ(第1引数あり)。
SAPClient の接続情報を使う場合に使用する。第1引数で「SAPClient」(オブジェクト)を設定する。
setTestrun import 項目:シミュレーション実行 (‘X’)、更新実行 (‘ ‘)を設定します。
setPosting import 項目:転記カテゴリ: 直接転記を設定します。
setStrParam
構造型の各項目に値を設定する。
第1引数に structure 名、第2引数に項目名、第3引数に値を設定する。
setTblParam
テーブル型の各項目に値を設定する。
第1引数にテーブル名、第2引数に項目名第3引数に値、第4引数にレコード番号を設定する。
executeBapi BapiController により請求伝票を登録します。
getBapiReturnErrMessage
BAPI実行結果である BapiReturn の Type 情報が正常(デフォルト値: “S” / “”)以外の BapiReturn オブジェクトのメッセージ情報を全て返します。
全て正常の場合は null が返却されます。
getBapiReturnMessage
BAPI実行結果である BapiReturn の Type 情報が正常(デフォルト値: “S” / “”)と判断された Type 情報のメッセージ情報を全て返します。
メッセージが存在しない場合は null が返却されます。
getTestrun import 項目:シミュレーション実行 (‘X’)、更新実行 (‘ ‘)を取得します。
getPosting import 項目:転記カテゴリ: 直接転記を取得します。
getBillingDataInList import 項目:設定した処理予定明細データのテーブル情報を取得します。
getCCardDataInList import 項目:設定した処理予定支払方法のテーブル情報を取得します。
getConditionDataInList import項目:設定した処理予定条件のテーブル情報を取得します。
getCreatorDataIn import 項目:設定した取り込まれる日付の順序情報を取得します。
getErrorsList import 項目:設定した前明細の不正処理に関する情報情報を取得します。
getSuccessList export 項目:設定した正常に処理された明細のテーブル情報を取得します。
getTextDataInList import項目:設定した請求インタフェースの通信構造テキスト情報を取得します。

サンプルプログラム

//■正常に処理された明細のテーブル
var successList;
var successCnt;
//■前明細の不正処理に関する情報
var errorsList;
var errorsCnt;
var ret;

function init(request) {

    //--------------------------------------------------------------------------
    //変数宣言
    //--------------------------------------------------------------------------
    var objCon;
    var objResult;
    
    //--------------------------------------------------------------------------
    //インスタンス生成      //  説明 1 
    //--------------------------------------------------------------------------
    objCon = new BillingDocCreateMultipleController();

    //--------------------------------------------------------------------------
    // テスト実行      //  説明 2 
    //--------------------------------------------------------------------------
    objCon.setTestrun("");

    //--------------------------------------------------------------------------
    // テーブル項目セット      //  説明 4 
    //--------------------------------------------------------------------------
    //処理予定明細データのテーブル
    objCon.setTblParam("BillingDataIn", "BILL_DATE", "20070115", 1); //請求索引および印刷に対する請求日
    objCon.setTblParam("BillingDataIn", "REF_DOC", "0080000033", 1); //参照伝票番号
    objCon.setTblParam("BillingDataIn", "REF_DOC_CA", "J", 1); //先行販売管理伝票の伝票カテゴリ

    //--------------------------------------------------------------------------
    // executeBapi実行      //  説明 5 
    //--------------------------------------------------------------------------
    objResult = objCon.executeBapi();

    //--------------------------------------------------------------------------
    // エラー判定
    //--------------------------------------------------------------------------
    if(objResult["ERR_CODE"] != null) {
        //インスタンス生成時に例外が発生した場合
        //エラーメッセージを出力
        Debug.browse(objResult);
    }

    //API実行結果を取得します。      //  説明 6 
    //正常に処理された明細のテーブルの内容と件数を取得
    successList = objCon.getSuccessList();
    successCnt = successList.length;

    //前明細の不正処理に関する情報
    errorsList = objCon.getErrorsList();
    errorsCnt = errorsList.length;

    //API実行結果を取得します。
    ret = objCon.getBapiReturnMessage();

}
  • 請求伝票登録 API のインスタンス生成(説明1)

    BillingDocCreateMultipleController クラスのインスタンスを生成します。
    引数は不要です。
    インスタンスを生成すると、請求伝票登録 BAPI(BAPI_BILLINGDOC_CREATEMULTIPLE)の import 型の import、structure、table パラメータに値を設定することができます。
„
  • import の各項目に値を設定(説明2)

    import パラメータの項目に値を設定する場合は、set メソッドを使用します。
    メソッドについては各 API のAPI リストを参照ください。
„
  • structure の各項目に値を設定(説明3)

    structure パラメータの項目に値を設定する場合は、setStrParam メソッドを使用します。
    第1引数の structure 名称は固定値になっています。
    後述のとおりに名称を設定して下さい。
    第2引数の項目名称はSAP の各属性の項目名称を設定してください。
    structure 名称、項目名称は英字の大文字、小文字は厳密に区別されます。
    第3引数に値を設定します。
    SAP structure セットする固有名称
    CREATORDATAIN (取り込まれる日付の順序) CreatorDataIn
  • table の各項目に値を設定(説明4)

    table パラメータの項目に値を設定する場合は、setTblParam メソッドを使用します。
    第1引数のtable名称は固定値になっています。
    後述のとおりに名称を設定して下さい。
    第2引数の項目名称は SAP の各属性の項目名称を設定してください。
    table 名称、項目名称は英字の大文字、小文字は厳密に区別されます。
    第3引数に値、第4引数にレコード番号を設定します。
    SAP table セットする固有名称
    BILLINGDATAIN (処理予定明細データのテーブル) BillingDataIn
    CCARDDATAIN (処理予定支払方法のテーブル) CCardDataIn
    CONDITIONDATAIN (処理予定条件のテーブル) ConditionDataIn
    ERRORS (前明細の不正処理に関する情報) Errors
    SUCCESS (正常に処理された明細のテーブル) Success
    TEXTDATAIN (請求インタフェースの通信構造テキスト) TextDataIn
„
  • 請求伝票の登録(説明5)

    BillingDocCreateMultipleController クラスの executeBapi メソッドを実行すると、各項目にセットされた値がSAP 上に請求伝票データとして登録されます。
    登録が成功した場合には、請求伝票登録 API の内部で自動的に commit 処理が実行されます。
    登録に失敗した場合には、自動的に rollback 処理が実行されます。
    成功・失敗の基準は、請求伝票登録用 BAPI(BAPI_BILLINGDOC_CREATEMULTIPLE)の実行後にRETURN パラメータの TYPE 値を取得して、S(正常終了)、空文字以外が1つでも存在するかどうかです。
    1つでも存在する場合は、rollback が自動的に実行されます。
„
  • サンプルプログラムの中で記載されたデータ取得メソッドの詳細説明については、以下を参照してください。(説明6)

    • Type 情報が正常(デフォルト値: “S” / “”)以外の BapiReturn を取得

      BillingDocCreateMultipleController クラスの getBapiReturnErrMessage メソッドを使用すると、取得したBapiReturn の Type 情報が正常(デフォルト値: “S” / “”)以外の BapiReturn オブジェクトのメッセージ情報を取得することが可能です。
      全て正常の場合は null を取得します。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • Type 情報が正常(デフォルト値: “S” / “”)の BapiReturn を取得

      BillingDocCreateMultipleController クラスの getBapiReturnMessage メソッドを使用すると、取得したBapiReturn の Type 情報が正常(デフォルト値: “S” / “”)と判断された Type 情報のメッセージ情報を取得することが可能です。
      メッセージが存在しない場合は null を取得します。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • シミュレーション実行 (‘X’)、更新実行 (‘ ‘)情報を取得

      BillingDocCreateMultipleController クラスのgetTestrunメソッドを使用すると、設定したシミュレーション実行 (‘X’)、更新実行 (‘ ‘)情報を取得することが可能です。
    • 転記カテゴリ: 直接転記情報を取得

      BillingDocCreateMultipleController クラスの getPosting メソッドを使用すると、設定した転記カテゴリ: 直接転記情報を取得することが可能です。
    • 処理予定明細データのテーブル情報を取得

      BillingDocCreateMultipleController クラスの getBillingDataInList メソッドを使用すると、設定した処理予定明細データのテーブル情報を取得することが可能です。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • 処理予定支払方法のテーブル情報を取得

      BillingDocCreateMultipleController クラスの getCCardDataInList メソッドを使用すると、設定した処理予定支払方法のテーブル情報を取得することが可能です。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • 処理予定条件のテーブル情報を取得

      BillingDocCreateMultipleController クラスの getConditionDataInList メソッドを使用すると、設定した処理予定条件のテーブル情報を取得することが可能です。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • 取り込まれる日付の順序情報を取得

      BillingDocCreateMultipleController クラスの getCreatorDataIn メソッドを使用すると、設定した取り込まれる日付の順序情報を取得することが可能です。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • 前明細の不正処理に関する情報情報を取得

      BillingDocCreateMultipleController クラスの getErrorsList メソッドを使用すると、取得した前明細の不正処理に関する情報情報を取得することが可能です。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • 正常に処理された明細のテーブル情報を取得

      BillingDocCreateMultipleController クラスの getSuccessList メソッドを使用すると、取得した正常に処理された明細のテーブル情報を取得することが可能です。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。
    • 請求インタフェースの通信構造テキスト情報を取得

      BillingDocCreateMultipleController クラスの getTextDataInList メソッドを使用すると、設定した請求インタフェースの通信構造テキスト情報を取得することが可能です。
      項目の値を取得するには、KEY に SAP の各属性の項目名称を設定してください。

コラム

サンプルプログラム実行結果では、SAP テスト環境のデータが取得されています。SAP 標準では該当データが存在しません。

注意

請求伝票登録 API に関して、import、structure、table パラメータが持つ各コンポーネントの必須項目や値の相関チェック等を確認する必要がある場合は、SAP 上の汎用モジュールビルダ(t-cd:SE37)等を使用して、「BAPI_BILLINGDOC_CREATEMULTIPLE」の BAPI 仕様を確認してください。