システム関数 SysLib.convert は、EBCDIC 形式 (ホスト) と ASCII 形式 (ワークステーション) の間でデータを変換したり、または単一の形式内でコード・ページの変換を実行します。SysLib.convert は、関数呼び出し文の中で関数名として使用することができます。
SysLib.convert( target anyFixedItemOrRecordOrFormVariable inout, direction enumerationConversionDirection in, conversionTable CHAR(8) in)
リンケージ・オプション・パーツを使用すると、リモート呼び出し、リモート非同期トランザクションの始動、またはリモート・ファイル・アクセスに関してデータの自動変換を行うよう要求することができます。自動変換は、変換対象の引数に定義されているデータ構造を常に使用して行われます。引数に複数の形式が存在する場合は、自動変換を要求しないでください。 代わりに、引数の現行値を正しくマップするようにレコード宣言を再定義して、SysLib.convert を明示的に呼び出すプログラムをコーディングしてください。
Record RecordA record_type char(3); item1 char(20); end Record RecordB record_type char(3); item2 bigint; item3 decimal(7); item4 char(8); end Program ProgramX type basicProgram myRecordA RecordA; myRecordB RecordB {redefines = "myRecordA"}; myConvTable char(8); function main(); myConvTable = "ELACNENU"; // conversion table for US English if (myRecordA.record_type == "00A") SysLib.convert(myRecordA, "L", myConvTable); else; SysLib.convert(myRecordB, "L", myConvTable); end call ProgramY myRecordA; end end
関連する概念
EGL 関数の構文図
関連する参照項目
データ変換
EGL ライブラリー SysLib
callConversionTable