メインコンテンツまでスキップ

設定

AP to APインターフェースの登録手順は、下記のとおりである。

1. 電文レイアウト登録

電文レイアウトは、共通部、個別部のレイアウトを登録・管理する機能である。

共通部はシステムごとの共通電文であるため、エンジン設定時に登録する。 個別部は、各インターフェースの担当者がMessage Management > Message Layout画面を利用して登録する。

電文レイアウトはフィールド名、タイプ、長さなどの情報を含むレイアウト情報である。電文レイアウト登録時、反復部項目に別の電文レイアウトを設定して処理することができる。

反復部と下位電文のレイアウト例は、下記のとおりである。

下位のレイアウト

上記の例のように、複数のアドレス情報を管理する場合、郵便番号やアドレス、詳細アドレスを持つAddrInfoをレイアウトに登録する。 その後id、pwとアドレス情報のレイアウトであるAddrInfoを含むUserInfoレイアウトを作成する。

電文にはバージョンがあり、インターフェースに使用される電文レイアウトID単位で、変更ログを管理するために管理するために使用される。

インターフェースの電文レイアウトが変更する場合、既存のレイアウト情報を修正し、バージョンアップして登録すると、電文レイアウトの画面から、現在のバージョンおよび過去のバージョンに関する変更ログが確認できる。

登録手順

  1. Message Management > Message Layout画面でグリッド右上のボタンをクリックし、新規電文レイアウトの登録画面を開く。
  2. 右上の行追加ボタンをクリックし、電文の各フィールド項目のフィールド名およびタイプ、長さなどを設定して登録する。

☑基本情報

  • Version : Setting > Layout Version Managementに登録されているバージョンを選択する。
  • Target Space Name : XMLのネームスペース名を入力する。入力しなかった場合、レイアウトIDがネームスペース名になる。
  • Root Element Name : JSONやXML電文のRootエレメント名を入力する。入力しなかった場合、レイアウトIDがRootエレメント名になる。
  • Copy Message Layout : 登録済みの電文レイアウトをコピーして新しいレイアウトを作成する。

☑フィールド情報

カラム説明
Element NameJSONやXML電文で使用するフィールドのエレメント名を意味する。入力しない場合、フィールド名がエレメント名になる。
Field Nameフィールドの英語名を意味する。
Field Descriptionフィールドの説明を意味する。
Type登録できるデータタイプはBoolean、Byteなどがある。当該データタイプはjavaのデータタイプと同じであり、そのうちDTO選択の場合、電文レイアウトとして登録されたレイアウトを意味する。
Lengthフィールド長を意味する。
OffsetフィールドのOffset値を意味する。
Decimal Lengthフィールドの小数点以下の長さを意味する。
Format当該フィールドの日付や時間に関するフォーマットを意味する。
Array Reference Field繰り返される電文レイアウトの大きさ(値)を持つフィールド名、または反復回数を直接入力する項目を意味する。
Encryptionフィールドで暗号・復号化を使用するかどうかを意味する。暗号・復号化の処理情報はエンジン設定時に登録され、電文レイアウトでは使用するかどうかを選択する。
Code Conversionフィールドのコード変換方式を意味する。ASCII、EBCDICなどのエンコーディング、デコーディングに使用するコード変換方式を登録する。
Default Valueフィールドがnullの場合(入力していない場合)に使用するデフォルト値を意味する。
Order当該フィールドの並べ替え方式で、leftとrightのうち1つを値として持つ。タイプがStringの場合にはleft、intなどの数字の場合にはrightがデフォルト値となる。

2. インターフェース登録

Interface Management > Online Interface画面を利用して登録する。 インターフェースID、インターフェース名は、インターフェースを識別値で設定する。 各構成項目に関する説明は、下記のとおりである。

構成項目

☑基本情報

  • Institution Code : 機関コード
  • External Business Code : 機関で使用する業務コード
  • System Code : システムコード
  • Internal Business Code : システムで使用する業務コード
  • Apply Date : 当該インターフェースを適用する日付。当日から実行する場合、今日より過去の日付を登録する。
  • Service Code : 呼び出す時に同じURLを使用し、共通部のサービスコードを使用する方式で共通部のサービスコードの値を登録する。 基本設定管理 > システム別業務でサービス呼び出し区分コードがURL方式の場合、代わりにコンテキストURLを設定できるが、これはURL単位で呼び出す方式の時に呼び出しURLを定義する。
  • Synchronization Y/N : 同期/非同期方式に関する設定
  • Response Y/N : 応答するかどうかを設定
  • Request Type : 対外機関が要求する取引の場合には対外要求、対内システムが要求する取引の場合には対内要求
  • Request Flow ID :FEPで要求処理時に使用するフロー
  • Response Flow ID : FEPで応答処理時に使用するフロー

☑ 電文情報

  • Request Message Layout Name :送信システムの要求電文レイアウト
  • Response Message Layout Name : 受信システムの応答電文レイアウト
  • Request Header Message Transformation ID : 要求電文の共通ヘッダー部を変換するための変換情報
  • Response Header Message Transformation ID : 応答電文の共通ヘッダー部を変換するための変換情報
  • Request Body Message Transformation ID : 要求電文レイアウトを登録した場合、電文を変換するための変換情報
  • Response Body Message Transformation ID : 応答電文レイアウトを登録した場合、電文を変換するための変換情報

☑ 追加情報

  • Request User Process Program ID : 対内システムの対象サービス、または対外機関にサービスを要求する前に特別な処理が必要な場合に設定する。
  • Response User Process Program ID : 対内システムの対象サービス、または対外機関に応答を送信する前に特別な処理が必要な場合に設定する。
  • Transaction Control Code : 受信サービスの障害などによりインターフェースの取引を制御したい場合に使用される。取引制御を行うと受信サービスに伝達されなかった場合、設定値によって無応答処理やエラー応答処理を行うことができる。 エラー応答プログラムは、エンジン設定時に定義される。
  • Throttle ID : インターフェースに適用する流量制御ポリシー処理件数方式に対応する。
  • Timeout Time(Sec) : 応答がない場合にタイムアウト処理をするための時間設定
  • Timeout Response Y/N : タイムアウト時に応答するかどうか
  • Transmission Error Response Y/N : 伝送エラーやタイムアウト発生時にエラー応答電文を作成して要求機関に送信するかどうか
  • Delay Response Transmission Y/N :タイムアウト処理後に応答を受信した場合、対内システムに送信するかどうか
  • Flow Process Logging Y/N : ルーター入出力に対してロギングするかどうか
  • Root Element Name : 電文マーシャル時にボディのルートエレメント名がdataではなく、当該ルートエレメント名に変換

上記の項目のうち、インターフェース処理の詳細タイプおよび要求/応答電文レイアウトについては、下記で詳細説明する。

要求/応答電文レイアウト

要求/応答電文レイアウト登録

電文レイアウトとしては、要求電文レイアウトと応答電文レイアウトを登録する。

要求電文レイアウトは図で1に当たり、応答電文レイアウトは上の図で2に当たる。

3. 取引変換情報の登録

インターフェースIDとは、インターフェース識別のためのユニークなIDであるが、対外機関の共通部には内部電文で使用するインターフェースIDが含まれない。

したがって、FEPはインターフェースIDを識別するために、機関共通部(共通ヘッダー)の電文種別コード、電文業務区分コードのフィールド値で、インターフェースIDを識別する。 電文種別コード、電文業務区分コードのフィールド名は、共通ヘッダー情報に設定し、取引変換情報は要求取引変換情報応答取引変換情報に区分される。

取引変換情報の登録は、Interface Management > Online Transaction Transformation Informationで登録する。

要求/応答電文レイアウト登録

  • 要求取引変換情報 : 機関送信時、機関の要求電文のインターフェースを識別するための設定である。
  • 応答取引変換情報 : システム送信時、機関の応答電文のインターフェースを識別するための設定である。

4. 電文変換の登録

FEPは、機関電文と内部電文が異なるため、機関電文と内部電文間の変換を行う。

電文変換は、要求と応答に対してそれぞれ行われる。 したがって、電文変換を登録する際に、要求と応答に対して、それぞれ電文変換情報を登録する必要がある。 要求/応答区分および入力/出力電文の説明

電文変換は、入力電文を出力電文に変換する情報を登録することであり、 Message Management > Message Transformationから入力と出力電文を選択してマッピング情報を登録する。 電文変換は、入力と出力電文の項目をマッピングする機能の他に、出力電文に定数やシステム日付などを設定することができる。

登録プロセス

  1. Message Management > Message TransformationからMessage Transformation Typeを、それぞれの電文変換タイプで選択する。
  2. 共通部の電文変換、または個別部の電文変換の場合、Request Response Divisionとして、要求や応答を選択する。
  3. 電文変換対象の入力レイアウトや出力レイアウトを登録した後、1:1 Mappingボタンを押してマッピングする。
  4. 情報登録後、保存ボタンを押して完了する。
info

電文変換に登録されたマッピング情報以外に追加でマッピングが必要な場合、User Programを呼び出してマッピングできる。 電文変換に登録されたマッピング後に呼び出される。

電文変換の種類

共通部の電文変換

機関電文の共通部(機関共通ヘッダー部)を内部電文の共通部(標準共通ヘッダー部)に変換する。 共通部変換情報では、要求と応答をインターフェースごとに定義する。

個別部の電文変換

個別部の電文変換は、入力として受信した電文の個別部に該当する部分を、サービス入力の個別部に合わせて変換(マッピング)する。 要求、応答の電文変換をそれぞれ登録する必要がある。

反復部の電文変換

反復部の電文変換は、繰り返される下位電文レイアウトに関する、電文変換を登録することを意味する。 登録された反復部の電文変換情報は、繰り返し使用できる。

マッピング情報

カラム説明
Attribute name入力レイアウトのフィールド名のうち1つを選択する。出力レイアウトのフィールドに、選択した入力レイアウトのフィールドデータが保存される。
Constant特定の定数値を入力する。出力レイアウトのフィールドに、入力した定数値が保存される。
Special wordスペシャルワードの意味によって値を設定する。例えば、GUIDを選択した場合、出力レイアウトのフィールドには、作成されたGUID値が保存される。現在、基本のスペシャルワードはGUIDである。詳細については、ユーザースペシャルワード処理方法を参照する。
System date現在の日付や時間のフォーマットをリストから選択する。
script入力値に補正を行う必要がある場合そのscriptを入力する。詳細については、スクリプトを参照する。
Submapsサブレイアウトの場合、反復部の電文変換に登録したサブマッピングを選択する。
No transformation当該出力レイアウトフィールドにデータが保存されない。

☑ ユーザースペシャルワード処理方法

ユーザーが定義したスペシャルワードの処理方式は、ユーザープログラムを利用して処理する。

ユーザーはユーザースペシャルワードを処理するプログラムを開発し、スペシャルワードを決めてspecialword.propertiesに登録する。 ユーザースペシャルワードはワード別にユニークな名前で登録する必要がある。

ユーザースペシャルワードの登録プロセスは下記のとおりである。

  1. ユーザースペシャルワードを処理するプログラムを、スプリングビーンプログラムとして開発する。
  2. Base Setting Management > Program Informationで開発したプログラムを登録する。
  3. specialword.propertiesファイルに、スペシャルワードとユーザープログラムをマッピングして登録する。 下記はユーザースペシャルワードの登録例である。
${BXIHOME}/config/specialword.properties
# Special word for message transformation
# form: upper case special word=user bean program id
#
SEQUENCE_NO=customSequenceNumber

☑ スクリプト

設定値説明
substring文字列を分離する。ex) txCode.substring(1,4)
toUpperCase文字列を大文字に変換する。ex) txCode.toUpperCase()
toLowerCase文字列を小文字に変換する。ex) txCode.toLowerCase()
lpad文字列の左側をパディングする。パディングする文字列が指定されていない場合は、0にパディングする。 ex) txCode.lpad(10,A), txCode.lpad(10)
rpad文字列の右側をパディングする。パディングする文字列が指定されていない場合は、0にパディングする。 ex) txCode.rpad(10), txCode.rpad(10,A)
value入力レイアウトのデータを特定の値に変換する。 右側の例で、txCodeの値がsource1の場合はtarget1source2の場合はtarget2に変換する。 ex) txCode.value(source1=target1, source2=target2)