SVHEAD
オプションのキーワードSVHEADは、区切り値データのフィールド・レイアウトの記述に使用されます。
インバウンド
SVHEADキーワードは、インバウンド区切り値データとアウトバウンド区切り値データでは異なる役割になります。
SVHEADキーワードがRECEIVEコマンドやREADコマンドで使用されてインバウンド・データを処理する場合、以下のルールが適用されます。
SVHEADキーワードがなく、SVMODEキーワードが*NONEまたは*IGNOREの場合、インバウンド・データは作業リストに直接挿入されるため、フィールド件数やデータ・タイプはリスト定義と一致しなくてはなりません。
SVHEADキーワードがある場合、sv.head.{値}を使用してサービス・プロパティ・リソースの検索が行われ、インバウンド・データの列レイアウトを記述するヘッダー・レコードを決定します。
作業リストにデータを追加する際に、このヘッダー・レコードを使用して各レコードの列値と作業リスト・フィールドをマッピングします。
SVFileService.propertiesの例
sv.head.order=LINENUM,PARTNUM,PARTDSC,PARTAMT,PARTQTY
例
READ SVHEAD(ORDER) SERVICE_LIST(...)
RECEIVE SVHEAD(ORDER) SERVICE_LIST(...)
アウトバウンド
アウトバウンド区切り値データにヘッダー・レコードを追加するには、SVHEADキーワードをSENDコマンドやWRITEコマンドで使用できます。
キーワード値は、sv.head.{値}検索を使用してサービス・プロパティ・リソースの検索を行い、ヘッダー・レコードを検索します。
キーワード値が*LISTの場合、サービスで作業リスト・フィールドが使用されます。
キーワード値が*COLUMNの場合、サービスでSVCOLUMN検索のフィールドが使用されます。
例
WRITE SVHEAD(*LIST) SERVICE_LIST(...)
SEND SVHEAD(*LIST) SERVICE_LIST(...)