総勘定元帳処理の定義
Infor EAMからERPアプリケーションへと処理情報を転送するためのSQL selectステートメントを動的に構築するには、総勘定元帳処理を使用可能にするパラメータを定義します。動的なSQLなら組織のニーズに基づいたInfor EAMの選択および処理を構成することができます。
この章の例ではOracleデータベースやPL/SQLに特化した表記法を使用しています。EAMデータベースがMicrosoft SQL Serverの場合、MS SQL Serverと同等のものを使用してください。
総勘定元帳処理を定義するには:
- [管理] > [Databridge] > [総勘定元帳処理定義]を選択します。
- [新しいレコード]をクリックします。
-
次の情報を指定します。
- 総勘定元帳処理定義
- 総勘定元帳処理定義を識別する一意的なコードを指定し、右のフィールドにDS ISSUESのような説明を入力します。注
作成している処理により入力する一意的なコードを確定します。一般に、一意的なコードは処理とグループの組合せを参照します。たとえば、GVL倉庫の倉庫処理から発行を作成している場合、ISSUE_GVLと入力します。
- 行識別
- r5translines.ROWIDなど総勘定元帳処理のソースデータベーステーブルにある行の一意的なレコードIDを指定します。注
トークン行IDのROWIDを使用して、データベーステーブルのソース行を識別する必要があります。
- スケジュール設定グループ
- TRL_TYPEなど総勘定元帳処理のグループ化値を識別するテーブル行名を指定します。注
グループのスケジュール設定では、処理定義のWhereステートメントの作成で使用される関連性のある共通の値を共有することが多いです。スケジュール設定グループもグループ内の財務アプリケーションの変更を確立するためGL参照フォームで使用されます。
- 仕訳記入カテゴリ
- trl_JECATEGORYなどフィード参照グループのERP仕訳入力カテゴリを識別する固有の値を指定します。正しい値については組織の財務管理者にお問い合わせください。
- 仕訳記入ソース
- trl_JESOURCEなどフィード参照グループのERP仕訳入力ソースを識別する固有の値を指定します。正しい値については組織の財務管理者にお問い合わせください。
- 概要
- 総勘定元帳処理の概要を含む場合に選択します。
- 元帳IDを設定
- tra_orgなどフィード参照グループのERP総勘定元帳セットの帳簿を識別するコードを指定します。正しいコードについては組織の財務管理者にお問い合わせください。複数の帳簿セットを使用している場合、正しい組の処理を分類する処理定義と参照グループの関係が必要です。
- 日付
- 総勘定元帳の仕訳入力に使用する日付を指定します。TRL_DATEなど元の処理の日付、SYSDATEなど処理転送の日付、または処理の会計期間終了を確認する日付のどれかを入力できます。
- 金額
- 原価計算にオーバーヘッド係数を使用している場合、TRL_PRICE* TRL_QTYやTRL_PRICE*TRL_QTY*1.15などの処理の通貨値の計算を指定します。注
必要に応じて正負の値を使用します。
- セグメント
- 仕訳入力の勘定コードセグメントを指定します。ERP会計定義で複数のセグメントが有効になっている場合、 ACD_SEGMENT1、ACD_SEGMENT2、ACD_SEGMENT3、ACD_SEGMENT4、ACD_SEGMENT5、ACD_SEGMENT6、ACD_SEGMENT7のようにこのフィールドにすべてのセグメントを入力する必要があります。注
複数のセグメントを入力する場合、「and」のような接続後のステートメントを含めないでください。
- FROMステートメント
- すべての処理定義制約を満たすInfor EAMソーステーブルを指定します。少なくともR5ACCOUNTDETAILテーブルと1つの処理テーブルを入力する必要があります。たとえば、r5translines, r5accountdetail, r5transactionsです。注
FromステートメントのテキストにFROMという単語を含めないでください。
- WHEREステートメント
- 「where」条件の節を指定します。「where」条件の節は処理定義に依存しています。リストされた全テーブルの結合ステートメントへの制約、さらにレコードが複数回送信されないように使用するXXX_GLTRANSFERとXXX_GLTRANSFERFLAGの値への制約を入力する必要があります。
trl_acd = acd_code AND NVL(trl_gltransferflag, '-' ) = '-' AND tra_code = trl_trans AND tra_rstatus = 'A' and tra_type = 'I' and trl_type = 'I' and trl_event is not null and trl_QTY >0
たとえばXXX_GLTRANSFER列とXXX_GRTRANSFERFLAG列は、ソース更新ステートメントを使って更新されます。そのためWhereステートメント条件節内では、ソース更新ステートメントの使用を制限してください。たとえばR5TRANSLINESとR5ACCOUNTDETAILを必要とする発行処理の基本的なWhereステートメントの場合、 trl_acd = acd_codeとnvl(trl_gltransferflag,'+') != '+'、さらに trl_rtype = 'I'と入力します。
注ターミネータとしてセミコロンを使用せず、[Whereステートメント]のテキストにWHEREという単語を含めないでください。
- ソース更新ステートメント
- 処理ソーステーブルの行を更新するSQLステートメントを指定します。
このステートメントでは、再度処理されないように処理されたら処理レコードにフラグが付きます。ステートメントにトークン:ROWIDまたは:rowidを加える必要があります。
再度処理されないように処理されたら処理レコードにフラグが付くというソース更新ステートメントについて次の例をご覧ください。
UPDATE r5translines SET trl_gltransferflag = '+', trl_gltransfer = sysdate WHERE rowid = :rowid
- 宛先更新ステートメント
- R5GLINTERFACEテーブルを更新して、仕訳インポートに必要な参照情報を含むようにSQLを指定します。宛先更新ステートメントでは、インストールに必要なカスタム情報をR5GLINTERFACEテーブルの参照フィールドに挿入します。たとえば、参照フィールドには在庫犯行処理の在庫コード、宛先、および作業オーダ番号が含まれます。すると、この参照情報が仕訳入力に加えられます。2つのトークンを使用する宛先更新ステートメントについて次の例をご覧ください。1つ目は:transidで、R5GLINTERFACEの適切な行を参照します。2つ目は:rowidで、処理ソース行IDを参照します。処理ソース行IDは追加の処理参照情報を検索するために使用します。
Declare Cursor C1 is SELECT substr(v.PRV_VALUE,1,3) company, substr(v.PRV_VALUE,5,4) GLS, substr(v.PRV_VALUE,10,5) DEP, substr(v.PRV_VALUE,16,6) EXP, substr(v.PRV_VALUE,23,4) PL , substr(v.PRV_VALUE,28,3) IC, substr(v.PRV_VALUE,32,6) FU from R5TRANSLINES L, R5PROPERTYVALUES V where l.rowid = :rowid and v.prv_property (+) = 'INVOFF' and v.PRV_RENTITY (+) = 'STOR' and v.PRV_CODE (+) = l.trl_store; BEGIN FOR r IN C1 LOOP UPDATE r5glinterface SET gli_segment1 = r.company, gli_segment2 = r.GLS, gli_segment3 = r.DEP, gli_segment4 = r.EXP WHERE gli_transid = :transid and gli_segment2 = '****' ; END LOOP; end;
- [レコードを保存]をクリックします。