設定
AP to APインターフェースの登録手順は、下記のとおりである。
1. 電文レイアウト登録
電文レイアウトは、共通部、個別部のレイアウトを登録・管理する機能である。
共通部はシステムごとの共通電文であるため、エンジン設定時に登録する。
個別部は、各インターフェースの担当者がMessage Management > Message Layout
画面を利用して登録する。
電文レイアウトはフィールド名、タイプ、長さなどの情報を含むレイアウト情報である。電文レイアウト登録時、反復部項目に別の電文レイアウトを設定して処理することができる。
反復部と下位電文のレイアウト例は、下記のとおりである。
上記の例のように、複数のアドレス情報を管理する場合、郵便番号やアドレス、詳細アドレスを持つAddrInfo
をレイアウトに登録する。
その後id、pwとアドレス情報のレイアウトであるAddrInfoを含むUserInfo
レイアウトを作成する。
電文にはバージョンがあり、インターフェースに使用される電文レイアウトID単位で、変更ログを管理するために管理するために使用される。
インターフェースの電文レイアウトが変更する場合、既存のレイアウト情報を修正し、バージョンアップして登録すると、電文レイアウトの画面から、現在のバージョンおよび過去のバージョンに関する変更ログが確認できる。
登録手順
Message Management > Message Layout
画面でグリッド右上のボタンをクリックし、新規電文レイアウトの登録画面を開く。- 右上の行追加ボタンをクリックし、電文の各フィールド項目のフィールド名およびタイプ、長さなどを設定して登録する。
☑基本情報
- Version :
Setting > Layout Version Management
に登録されているバージョンを選択する。 - Target Space Name : XMLのネームスペース名を入力する。入力しなかった場合、レイアウトIDがネームスペース名になる。
- Root Element Name : JSONやXML電文のRootエレメント名を入力する。入力しなかった場合、レイアウトIDがRootエレメント名になる。
- Copy Message Layout : 登録済みの電文レイアウトをコピーして新しいレイアウトを作成する。
☑フィールド情報
カラム | 説明 |
---|---|
Element Name | JSONや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、インターフェース名はインターフェースを識別できる値で設定する。
各構成項目に関する説明は、下記のとおりである。
構成項目
☑ 基本情報
- Send System Code : 端末/チャネルシステムコード
- Send Business Code : 内部システム業務コード
- Receive System Code : 端末/チャネルシステムコード
- Receive Business Code : 内部システム業務コード
- Apply Date : 当該インターフェースを適用する日付。当日から実行する場合、今日より過去の日付を登録する。
- Service Code : 呼び出す時に同じURLを使用し、共通部のサービスコードを使用する方式で共通部のサービスコードの値を登録する。
基本設定管理 > システム別業務
でサービス呼び出し区分コードがURL方式
の場合、代わりにコンテキストURLを設定できるが、これはURL単位で呼び出す方式の時に呼び出しURLを定義する。 - Synchronization Y/N : 同期に設定
- Response Y/N : 応答に設定
- Request Flow ID :MCIで要求処理時に使用されるフロー
- Response Flow ID : MCIで応答処理時に使用されるフロー
☑ 電文情報
- 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) : 応答がない場合にタイムアウト処理をするための時間設定。
要求/応答電文レイアウトの位置
電文レイアウトとしては、要求電文レイアウトと応答電文レイアウトを登録する。 要求電文レイアウトは図で1番に当たり、応答電文レイアウトは上の図で2番に当たる。
3. 電文変換の登録
送信システムと受信システムの電文が異なる場合、電文変換が必要である。電文変換は、要求と応答に対してそれぞれ行われる。
したがって、電文変換を登録する際に、要求と応答に対して、それぞれ電文変換情報を登録する必要がある。
電文変換は、入力電文を出力電文に変換する情報を登録することであり、
Message Management > Message Transformation
から入力と出力電文を選択してマッピング情報を登録する。
電文変換は、入力と出力電文の項目をマッピングする機能の他に、出力電文に定数やシステム日付などを設定することができる。


登録プロセス
Message Management > Message Transformation
からMessage Transformation Type
を、それぞれの電文変換タイプで選択する。- 共通部の電文変換、または個別部の電文変換の場合、
Request Response Division
として、要求や応答を選択する。 - 電文変換対象の入力レイアウトや出力レイアウトを登録した後、
1:1 Mapping
ボタンを押してマッピングする。 - 情報登録後、保存ボタンを押して完了する。
電文変換に登録されたマッピング情報以外に追加でマッピングが必要な場合、User Program
を呼び出してマッピングできる。
電文変換に登録されたマッピング後に呼び出される。
電文変換の種類
共通部の電文変換
MCIではチャネル電文と内部電文が使用され、チャネル共通ヘッダー部と標準共通ヘッダー部間の変換を行う。 共通部の電文変換はインターフェースごとに要求、応答それぞれ登録する。
チャネル共通ヘッダー部と標準共通ヘッダー部が同一の場合、共通部の電文変換は設定しない。
個別部の電文変換
個別部の電文変換は、入力として受信した電文の個別部に該当する部分を、サービス入力の個別部に合わせて変換(マッピング)する。 要求、応答の電文変換をそれぞれ登録する必要がある。
反復部の電文変換
反復部の電文変換は、繰り返される下位電文レイアウトに関する、電文変換を登録することを意味する。 登録された反復部の電文変換情報は、繰り返し使用できる。
マッピング情報
カラム | 説明 |
---|---|
Attribute name | 入力レイアウトのフィールド名のうち1つを選択する。出力レイアウトのフィールドに、選択した入力レイアウトのフィールドデータが保存される。 |
Constant | 特定の定数値を入力する。出力レイアウトのフィールドに、入力した定数値が保存される。 |
Special word | スペシャルワードの意味によって値を設定する。例えば、GUIDを選択した場合、出力レイアウトのフィールドには、作成されたGUID値が保存される。現在、基本のスペシャルワードはGUID である。詳細については、ユーザースペシャルワード処理方法を参照する。 |
System date | 現在の日付や時間のフォーマットをリストから選択する。 |
script | 入力値に補正を行う必要がある場合そのscriptを入力する。詳細については、スクリプトを参照する。 |
Submaps | サブレイアウトの場合、反復部の電文変換に登録したサブマッピングを選択する。 |
No transformation | 当該出力レイアウトフィールドにデータが保存されない。 |
☑ ユーザースペシャルワード処理方法
ユーザーが定義したスペシャルワードの処理方式は、ユーザープログラムを利用して処理する。
ユーザーはユーザースペシャルワードを処理するプログラムを開発し、スペシャルワードを決めてspecialword.properties
に登録する。
ユーザースペシャルワードはワード別にユニークな名前で登録する必要がある。
ユーザースペシャルワードの登録プロセスは下記のとおりである。
- ユーザースペシャルワードを処理するプログラムを、スプリングビーンプログラムとして開発する。
Base Setting Management > Program Information
で開発したプログラムを登録する。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 の場合はtarget1 、source2 の場合はtarget2 に変換する。 ex) txCode.value(source1=target1, source2=target2) |