JP1/File Transmission Server -全銀TCP

[目次][用語][索引][前へ][次へ]

ライブラリーの使用方法

JP1/全銀TCP APIライブラリーは,JP1/全銀TCPのファイル伝送機能をユーザープログラムから利用するときに使用します。

JP1/全銀TCP APIライブラリーを使用すると,次のことが実現できます。

言語

ユーザープログラムで使用できる言語を次に示します。

コーディング

伝送要求の登録は,ZTC_Syn_trans(),ZTC_Asyn_trans()の引数に伝送情報定義ファイルに定義されているラベル名や定義変更内容格納構造体のアドレスを設定します。

#define LABEL_LEN 32
struct ztc_tran_label_t {
    char label[LABEL_LEN+1];
};
 
label
ファイルラベル名を指定します。
#define REMOTE_CODE_LEN 7
#define PASSWD_LEN 6
#define STRING_LEN 256
#define EXEC_OPT_LEN 25
#define ZTC_CHANGE_DEF_ZGNP 1
#define ZTC_CHANGE_DEF_ZGNC 2
struct change_host_define_t {
    int changeflg;
    char exec[STRING_LEN];
    int exec_opt[EXEC_OPT_LEN+1];
    char remote_code[(REMOTE_CODE_LEN*2)+3];
    char own_code[(REMOTE_CODE_LEN*2)+3];
    char open_req_pass[(PASSWD_LEN*2)+3];
    char open_ans_pass[(PASSWD_LEN*2)+3];
    char close_req_pass[(PASSWD_LEN*2)+3]
    char close_ans_pass[(PASSWD_LEN*2)+3]
    char ipaddr[STRING_LEN];
    int text_ack_cnt;
    int protocol_name;
};
 
changeflg
相手局情報定義の変更設定マクロを指定します。相手局情報定義の変更設定マクロのマクロ値を論理和形式で指定してください。
exec
起動するUAPを指定します。1〜255バイト以内の文字列でフルパスを指定してください。
exec_opt
UAP起動オプションを示すマクロを指定します。詳細については,「UAP起動オプション設定マクロ」および「UAP起動オプション設定マクロの内容」を参照してください。
remote_code
相手センタ確認コードを指定します。14けたの16進数で指定してください。
own_code
当方センタ確認コードを指定します。14けたの16進数で指定してください。
open_req_pass
開局要求パスワードを指定します。6バイトの文字列または12けたの16進数で指定してください。
open_ans_pass
開局回答パスワードを指定します。6バイトの文字列または12けたの16進数で指定してください。
close_req_pass
閉局要求パスワードを指定します。6バイトの文字列または12けたの16進数で指定してください。
close_ans_pass
閉局回答パスワードを指定します。6バイトの文字列または12けたの16進数で指定してください。
ipaddr
相手局のIPアドレスを指定します。なお,相手局ホスト名が"/etc/hosts"に登録されている場合は,ホスト名でも指定できます。
text_ack_cnt
テキスト連続送受信回数を指定します。0〜15の値で指定してください。
protocol_name
使用するプロトコル(全銀協手順)を指定します。パソコン手順の場合はZTC_CHANGE_DEF_ZGNPを,コンピュータ手順の場合はZTC_CHANGE_DEF_ZGNCを指定してください。
#define TRANS_FILE_NAME_LEN 12
#define ACCESSKEY_LEN 6
#define SUB_TRANS_FILE_NAME_LEN 17
#define ZTC_CHANGE_DEF_SEND 1
#define ZTC_CHANGE_DEF_RECV 2
#define ZTC_CHANGE_DEF_APPEND 1
#define ZTC_CHANGE_DEF_WRITE 2
#define ZTC_CHANGE_DEF_TRUE 1
#define ZTC_CHANGE_DEF_FALSE 2
#define ZTC_CHANGE_DEF_FIX 1
#define ZTC_CHANGE_DEF_FLEX 2
#define ZTC_CHANGE_DEF_REMOVE 1
#define ZTC_CHANGE_DEF_NOT_REMOVE 2
#define ZTC_CHANGE_DEF_OK 1
#define ZTC_CHANGE_DEF_NG 2
#define ZTC_RESND 1
struct change_file_define_t {
    int resndflg;
    int cycle_number;
    int changeflg;
    char exec[STRING_LEN];
    int exec_opt[EXEC_OPT_LEN+1];
    int mode;
    int file_mode;
    char real_file_name[STRING_LEN];
    char trans_file_name[(TRANS_FILE_NAME_LEN*2)+3];
    char start_req_acckey[(ACCESSKEY_LEN*2)+3];
    char start_ans_acckey[(ACCESSKEY_LEN*2)+3];
    char end_req_acckey[(ACCESSKEY_LEN*2)+3];
    char end_ans_acckey[(ACCESSKEY_LEN*2)+3];
    char resend_acckey[(ACCESSKEY_LEN*2)+3];
    int record_type;
    short record_len;
    int max_text_len;
    int cmp_mode;
    char divide_word;
    int remove_mode;
    int nullfile;
    char sub_trans_file_name[(SUB_TRANS_FILE_NAME_LEN*2)+3];
};
 
resndflg
再送要求送信マクロを指定します。
cycle_number
伝送済みのサイクル番号を指定します。サイクル管理をするファイルだけに指定できます。
changeflg
ファイル情報定義の変更設定マクロを指定します。ファイル情報定義の変更設定マクロのマクロ値を論理和形式で指定してください。
exec
起動するUAPを指定します。1〜255バイトの文字列でフルパスを指定してください。
exec_opt
UAP起動オプションを示すマクロを指定します。詳細については,「UAP起動オプション設定マクロ」および「UAP起動オプション設定マクロの内容」を参照してください。
mode
ファイル送受信モードを指定します。送信用のファイル定義の場合はZTC_CHANGE_DEF_SENDを,受信用のファイル定義の場合はZTC_CHANGE_DEF_RECVを指定してください。
file_mode
受信ファイル書き込みモードを指定します。受信データをファイルの最後に追加したい場合はZTC_CHANGE_DEF_APPENDを,ファイルの先頭から上書きしたい場合はZTC_CHANGE_DEF_WRITEを指定してください。
real_file_name
実ファイル名を指定します。1〜255バイトの文字列でフルパスを指定してください。
trans_file_name
伝送ファイル名を指定します。12バイトの文字列または24けたの16進数で指定してください。
start_req_acckey
開始要求アクセスキーを指定します。6バイトの文字列または12けたの16進数で指定してください。
start_ans_acckey
開始回答アクセスキーを指定します。6バイトの文字列または12けたの16進数で指定してください。
end_req_acckey
終了要求アクセスキーを指定します。6バイトの文字列または12けたの16進数で指定してください。
end_ans_acckey
終了回答アクセスキーを指定します。6バイトの文字列または12けたの16進数で指定してください。
resend_acckey
再送要求アクセスキーを指定します。6バイトの文字列または12けたの16進数で指定してください。
record_type
ファイルレコード形式を指定します。固定長形式の場合はZTC_CHANGE_DEF_FIXを,可変長形式の場合はZTC_CHANGE_DEF_FLEXを指定してください。
record_len
ファイルレコード長を指定します(単位:バイト)。ファイルレコード形式が固定長の場合に有効になります。1〜32,767の任意の数値を指定してください。
max_text_len
最大伝送テキスト長(全銀協標準通信プロトコルの定義する伝送テキストの最大長)を指定します(単位:バイト)。7〜43,700の数値を指定してください。
cmp_mode
圧縮モードを指定します。圧縮して伝送する場合はZTC_CHANGE_DEF_TRUEを,圧縮しないで伝送する場合はZTC_CHANGE_DEF_FALSEを指定してください。
divide_word
区切り文字として使用する文字を指定します。ファイルレコード形式が可変長の場合に有効になります。
remove_mode
区切り文字の扱いを指定します。ZTC_CHANGE_DEF_REMOVEをした場合は,送信時には区切り文字を除いて送信し,受信時には区切り文字を付けてファイルに書き出します。ZTC_CHANGE_DEF_NOT_REMOVEを指定した場合は,送信時には区切り文字を付けたまま送信し,受信時には受け取ったテキストをファイルにそのまま書き出します。
nullfile
0件ファイルの扱い方を指定します。ZTC_CHANGE_DEF_OKを指定した場合は,0件ファイルを正常扱いします。ZTC_CHANGE_DEF_NGを指定した場合は,0件ファイルをエラー扱いします。
sub_trans_file_name
ファイル名補助情報を指定します。17バイトの文字列または34けたの16進数で指定してください。
#define ZTC_CHANGE_HOST_DEF_EXEC 0x1
#define ZTC_CHANGE_HOST_DEF_EXEC_OPT 0x2
#define ZTC_CHANGE_HOST_DEF_REMOTE_CODE 0x4
#define ZTC_CHANGE_HOST_DEF_OWN_CODE 0x8
#define ZTC_CHANGE_HOST_DEF_OPEN_REQ_PASS 0x10
#define ZTC_CHANGE_HOST_DEF_OPEN_ANS_PASS 0x20
#define ZTC_CHANGE_HOST_DEF_CLOSE_REQ_PASS 0x40
#define ZTC_CHANGE_HOST_DEF_CLOSE_ANS_PASS 0x80
#define ZTC_CHANGE_HOST_DEF_IPADDR 0x400
#define ZTC_CHANGE_HOST_DEF_TEXT_ACK_CNT 0x800
#define ZTC_CHANGE_HOST_DEF_PROTOCOL_NAME 0x1000
 
ZTC_CHANGE_HOST_DEF_EXEC
UAP起動を変更します。
ZTC_CHANGE_HOST_DEF_EXEC_OPT
UAP起動引数を変更します。
ZTC_CHANGE_HOST_DEF_REMOTE_CODE
相手センタ確認コードを変更します。
ZTC_CHANGE_HOST_DEF_OWN_CODE
当方センタ確認コードを変更します。
ZTC_CHANGE_HOST_DEF_OPEN_REQ_PASS
開局要求パスワードを変更します。
ZTC_CHANGE_HOST_DEF_OPEN_ANS_PASS
開局回答パスワードを変更します。
ZTC_CHANGE_HOST_DEF_CLOSE_REQ_PASS
閉局要求パスワードを変更します。
ZTC_CHANGE_HOST_DEF_CLOSE_ANS_PASS
閉局回答パスワードを変更します。
ZTC_CHANGE_HOST_DEF_IPADDR
相手局のIPアドレスを変更します。
ZTC_CHANGE_HOST_DEF_TEXT_ACK_CNT
テキスト連続送受信回数を変更します。
ZTC_CHANGE_HOST_DEF_PROTOCOL_NAME
使用するプロトコル(全銀協手順)を変更します。
指定例:
相手センタ確認コードと当方センタ確認コードを変更する場合
 
changeflgに,次のように値を指定します。
def.changeflg = 0
def.changeflg = ZTC_CHANGE_HOST_DEF_REMOTE_CODE | ZTC_CHANGE_HOST_DEF_OWN_CODE;
 
#define ZTC_CHANGE_FILE_DEF_EXEC 0x1
#define ZTC_CHANGE_FILE_DEF_EXEC_OPT 0x2
#define ZTC_CHANGE_FILE_DEF_MODE 0x4
#define ZTC_CHANGE_FILE_DEF_FILE_MODE 0x8
#define ZTC_CHANGE_FILE_DEF_REAL_FILE_NAME 0x10
#define ZTC_CHANGE_FILE_DEF_TRANS_FILE_NAME 0x20
#define ZTC_CHANGE_FILE_DEF_START_REQ_ACCKEY 0x40
#define ZTC_CHANGE_FILE_DEF_START_ANS_ACCKEY 0x80
#define ZTC_CHANGE_FILE_DEF_END_REQ_ACCKEY 0x100
#define ZTC_CHANGE_FILE_DEF_END_ANS_ACCKEY 0x200
#define ZTC_CHANGE_FILE_DEF_RESEND_ACCKEY 0x400
#define ZTC_CHANGE_FILE_DEF_RECORD_TYPE 0x800
#define ZTC_CHANGE_FILE_DEF_RECORD_LEN 0x1000
#define ZTC_CHANGE_FILE_DEF_MAX_TEXT_LEN 0x2000
#define ZTC_CHANGE_FILE_DEF_CMP_MODE 0x4000
#define ZTC_CHANGE_FILE_DEF_DIVIDE_WORD 0x8000
#define ZTC_CHANGE_FILE_DEF_REMOVE_MODE 0x10000
#define ZTC_CHANGE_FILE_DEF_NULLFILE 0x20000
#define ZTC_CHANGE_FILE_DEF_SUB_TRANS_FILE_NAME 0x40000
 
ZTC_CHANGE_FILE_DEF_EXEC
UAP起動を変更します。
ZTC_CHANGE_FILE_DEF_EXEC_OPT
UAP起動引数を変更します。
ZTC_CHANGE_FILE_DEF_MODE
ファイル送受信モードを変更します。
ZTC_CHANGE_FILE_DEF_FILE_MODE
受信ファイル書き込みモードを変更します。
ZTC_CHANGE_FILE_DEF_REAL_FILE_NAME
実ファイル名を変更します。
ZTC_CHANGE_FILE_DEF_TRANS_FILE_NAME
伝送ファイル名を変更します。
ZTC_CHANGE_FILE_DEF_START_REQ_ACCKEY
開始要求アクセスキーを変更します。
ZTC_CHANGE_FILE_DEF_START_ANS_ACCKEY
開始回答アクセスキーを変更します。
ZTC_CHANGE_FILE_DEF_END_REQ_ACCKEY
終了要求アクセスキーを変更します。
ZTC_CHANGE_FILE_DEF_END_ANS_ACCKEY
終了回答アクセスキーを変更します。
ZTC_CHANGE_FILE_DEF_RESEND_ACCKEY
再送要求アクセスキーを変更します。
ZTC_CHANGE_FILE_DEF_RECORD_TYPE
ファイルレコード形式を変更します。
ZTC_CHANGE_FILE_DEF_RECORD_LEN
ファイルレコード長を変更します。
ZTC_CHANGE_FILE_DEF_MAX_TEXT_LEN
最大伝送テキスト長を変更します。
ZTC_CHANGE_FILE_DEF_CMP_MODE
圧縮モードを変更します。
ZTC_CHANGE_FILE_DEF_DIVIDE_WORD
区切り文字を変更します。
ZTC_CHANGE_FILE_DEF_REMOVE_MODE
区切り文字の扱いを変更します。
ZTC_CHANGE_FILE_DEF_NULLFILE
0件ファイルの扱いを変更します。
ZTC_CHANGE_FILE_DEF_SUB_TRANS_FILE_NAME
ファイル名補助情報を変更します。
指定例:
ファイル送受信モードと受信ファイル書き込みモードを変更する場合
 
changeflgに,次のように値を指定します。
def.changeflg = 0;
def.changeflg = ZTC_CHANGE_FILE_DEF_MODE | ZTC_CHANGE_FILE_DEF_FILE_MODE;
 
#define ZTC_REMOTELBL 1
#define ZTC_STATION 4
#define ZTC_TRNMODE 8
#define ZTC_REQLEN 9
#define ZTC_RRTN 11
#define ZTC_FILE 12
#define ZTC_FILELBL 13
#define ZTC_RCNTCODE 14
#define ZTC_HCNTCODE 15
#define ZTC_OREQPW 16
#define ZTC_ORSPPW 17
#define ZTC_CREQPW 18
#define ZTC_CRSPPW 19
#define ZTC_MREQPW 20
#define ZTC_MRSPPW 21
#define ZTC_IPADDR 22
#define ZTC_REQNO 25
#define ZTC_REALFILE 26
 
ZTC_REMOTELBL
相手局ラベル名をオプション引数として指定します。
ZTC_STATION
局種別をオプション引数として指定します。
ZTC_TRNMODE
伝送形態をオプション引数として指定します。
ZTC_REQLEN
このオプションは,ファイル情報定義UAPオプションの場合に限り有効です。
レコード長をオプション引数として指定します。
ZTC_RRTN
終了状態をオプション引数として指定します。
ZTC_FILE
伝送ファイル名をオプション引数として指定します。
ZTC_FILELBL
このオプションは,ファイル情報定義UAPオプションの場合に限り有効です。
伝送ファイルラベル名をオプション引数として指定します。
ZTC_RCNTCODE
相手センタ確認コードをオプション引数として指定します。
ZTC_HCNTCODE
当方センタ確認コードをオプション引数として指定します。
ZTC_OREQPW
開局要求パスワードをオプション引数として指定します。
ZTC_ORSPPW
開局回答パスワードをオプション引数として指定します。
ZTC_CREQPW
閉局要求パスワードをオプション引数として指定します。
ZTC_CRSPPW
閉局回答パスワードをオプション引数として指定します。
ZTC_MREQPW
モード変更要求パスワードをオプション引数として指定します。
ZTC_MRSPPW
モード変更回答パスワードをオプション引数として指定します。
ZTC_IPADDR
相手局のIPアドレスまたは相手ホスト名をオプション引数として指定します。
ZTC_REQNO
通番をオプション引数として指定します。
ZTC_REALFILE
このオプションは,ファイル情報定義UAPオプションの場合に限り有効です。
実ファイル名をオプション引数として指定します。
指定例:
UAP起動オプションとして伝送ファイル名と通番を指定する場合
 
exec_optに,次のように値を指定します。
def.exec_opt[0] = ZTC_FILE;
def.exec_opt[1] = ZTC_REQNO;
def.exec_opt[2] = 0;