# フォーマット情報の登録

フォーマット情報を登録します。

## Examples

REQUEST EXAMPLE

HULFT for Windows のサンプルは以下となります。

    {
      "id": "FORMATID",
      "comment": "人事情報ファイル キー0001フォーマット",
      "formats": [
          {
            "field_name": "CODE",
            "start_position": 0,
            "bytes_count": 8,
            "field_type": "character"
          },
          {
            "field_name": "NAME",
            "start_position": 0,
            "bytes_count": 20,
            "field_type": "double_byte_graphic_characters"
          },
          {
            "field_name": "AGE",
            "start_position": 0,
            "bytes_count": 2,
            "field_type": "unsigned_external_decimal"
          },
          {
            "field_name": "GENDER",
            "start_position": 0,
            "bytes_count": 2,
            "field_type": "binary"
          },
          {
            "field_name": "ADDRESS",
            "start_position": 0,
            "bytes_count": 30,
            "field_type": "variable_length_characters"
          },
          {
            "field_name": "WORKHOURS",
            "start_position": 0,
            "bytes_count": 4,
            "decimal_places": 2,
            "field_type": "signed_internal_decimal"
          }
      ]
    }

## Request Interface

    http://ControlURL/api/v1/hulft/{hulft-host-id}/managements/formats/detail

= 備考 =

上のRequest InterfaceのURLで、斜体の文字部分に指定するパスについては以下を参照してください。

HULFT10 API Gateway ガイド : Request Interfaceの指定

REQUEST BODY SCHEMA : application/json

id : string

  フォーマットID （必須）

  登録したフォーマットを認識するためのID

  1～50バイト以内で指定します。

  このフォーマットIDと以下の項目の設定値が関連づけされます。

  配信管理情報の「M/フォーマットID」

  マルチフォーマット情報の「デフォルトフォーマットID」と「フォーマットID」

comment : string

  コメント

  フォーマットに対するコメント

  0～60バイト以内で指定します。

formats : Array of objects

  フォーマット （必須）

  以下の構造の情報（Array[]）を複数（1～1000）設定可能です。

  Array[

  field_name : string

    項目名 （必須）

    項目を認識する名称

    1～16バイト以内で指定します。

  start_position : integer

    開始位置

    当該項目の開始位置

    0～9999の値を指定します。

    項目の開始位置（レコードの先頭から何バイト目か）を指定します。

    省略もしくは“0”を指定すると、1つ前の項目の開始位置とバイト数を足した値になります（自動計算）。

  bytes_count : integer

    バイト数 （必須）

    当該項目のバイト数

    1～9999の値を指定します。

    項目タイプの設定によって、可能バイト数が下記の通りです。

    character (X): 1～9999

    binary (B): 2、4、8

    signed_internal_decimal (P): 1～10

    double_byte_graphic_characters (N): 2～9998

    variable_length_characters (M): 1～9999

    unsigned_external_decimal (9): 1～18

    floating_point (F): 4、8

    image (I): 1～9999

    signed_external_decimal (S): 1～18

  decimal_places : integer

    小数部桁数

    当該項目の小数部桁数

    0～9の値を指定します。

    項目タイプに“character”、“image”、“floating_point”、“double_byte_graphic_characters”、“variable_length_characters”を指定した場合、小数部桁数は0を指定してください。

    項目が下記の数値データで小数部桁数がある場合に指定します。

    - binary (B): バイナリ

    - signed_internal_decimal (P): サイン付内部10進数

    - unsigned_external_decimal (9): サイン無外部10進数

    - signed_external_decimal (S): サイン付外部10進数

  field_type : string

    項目タイプ （必須）

    当該項目のデータタイプ

    以下のいずれかを指定します。

    character (X)

      : キャラクタ。EBCDICコードのみの文字データ形式。2バイトコードが含まれていてはいけません。

    binary (B)

      : バイナリ。符号付きの整数の数値データ形式。

    signed_internal_decimal (P)

      : サイン付内部10進数。符号付きのパック形式の10進数データ形式。ただし、18桁までしか扱えません。

    double_byte_graphic_characters (N)

      : 2バイト表示文字。シフトコードがない2バイトコードのみの文字データ形式。EBCDICコードが含まれていてはいけません。偶数バイトしか扱えません。HULFT for MainframeまたはHULFT for IBMiの場合、シフトコードを含まない2バイトコードのときに使用します。

    variable_length_characters (M)

      : 可変長文字。EBCDICコードと2バイトコードが混在する文字データ形式。HULFT for MainframeまたはHULFT for IBMiの場合、2バイトコードはシフトコードで囲まれている必要があります。

    unsigned_external_decimal (9)

      : サイン無外部10進数。符号を持たないゾーン形式の10進数データ形式。

    floating_point (F)

      : 浮動小数点タイプ。符号付きの浮動小数点データ形式。MainframeはIBMフォーマット、その他の機種はIEEEフォーマットの浮動小数形式をサポートします。

    image (I)

      : イメージタイプ（無変換）。無変換を表すデータ形式。

    signed_external_decimal (S)

      : サイン付外部10進数。符号付きのゾーン形式の10進数データ形式。

  ]

## Response Interface

### 201 Created 情報登録

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

meta : object

  メタデータ

  os_type : string

    接続先ホスト機種

    以下のいずれかが取得されます。

    windows

      : Windows環境管理情報

    linux

      : Linux/AIX環境管理情報

    ibmi

      : IBM i（AS/400）環境管理情報

    zos

      : z/OS（汎用機）環境管理情報

  request_user_role : string

    API実行ユーザーの権限

    以下のいずれかが取得されます。

    admin

      : ユーザーの管理や接続先HULFTの追加を行うことができる権限

    member

      : 登録済みのHULFTへの接続を行うことができる権限

  strong_key_mode : string

    高強度暗号強制モードの設定値

    以下のいずれかが取得されます。

    disable

      : 無効

    enable

      : 有効

  product_version : string

    製品バージョン

id : string

  フォーマットID

comment : string

  コメント

formats : Array of objects

  フォーマット

  以下の構造の情報（Array[]）が複数（1～1000）取得されます。

  Array[

  field_name : string

    項目名

  start_position : integer

    開始位置

  bytes_count : integer

    バイト数

  decimal_places : integer

    小数部桁数

  field_type : string

    項目タイプ

    以下のいずれかが取得されます。

    character (X)

      : キャラクタ。EBCDICコードのみの文字データ形式。2バイトコードが含まれていてはいけません。

    binary (B)

      : バイナリ。符号付きの整数の数値データ形式。

    signed_internal_decimal (P)

      : サイン付内部10進数。符号付きのパック形式の10進数データ形式。ただし、18桁までしか扱えません。

    double_byte_graphic_characters (N)

      : 2バイト表示文字。シフトコードがない2バイトコードのみの文字データ形式。EBCDICコードが含まれていてはいけません。偶数バイトしか扱えません。HULFT for MainframeまたはHULFT for IBMiの場合、シフトコードを含まない2バイトコードのときに使用します。

    variable_length_characters (M)

      : 可変長文字。EBCDICコードと2バイトコードが混在する文字データ形式。HULFT for MainframeまたはHULFT for IBMiの場合、2バイトコードはシフトコードで囲まれている必要があります。

    unsigned_external_decimal (9)

      : サイン無外部10進数。符号を持たないゾーン形式の10進数データ形式。

    floating_point (F)

      : 浮動小数点タイプ。符号付きの浮動小数点データ形式。MainframeはIBMフォーマット、その他の機種はIEEEフォーマットの浮動小数形式をサポートします。

    image (I)

      : イメージタイプ（無変換）。無変換を表すデータ形式。

    signed_external_decimal (S)

      : サイン付外部10進数。符号付きのゾーン形式の10進数データ形式。

  ]

### 400 リクエストエラー

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

request_id : string

  リクエストID

accept_datetime : string <date-time>

  受付日時

api_path : string

  APIパス

http_method : string

  HTTPリクエストのメソッド形式

  以下のいずれかが取得されます。

  GET

  HEAD

  POST

  OPTIONS

  PUT

  DELETE

  TRACE

  PATCH

  LINK

  UNLINK

errors : Array of objects

  エラー詳細情報

  以下の構造の情報（Array[]）が複数取得されます。

  Array[

  kind : string

    エラー種別

  description : string

    エラーの説明

  measure : string

    対処方法

  detail : string

    詳細エラー情報

  additional : (Error1(object or null)) or (Error2(object or null))

    "Error1"、"Error2"のいずれかが取得されます。

    Error1
      message : string

        バリデーションエラーメッセージ

      fields : string

        バリデーションフィールド情報

    Error2
      code : integer

        HULFT実行結果

      detail : string

        HULFT詳細コード

      latest_process_id : string

        最新処理ID

      message : string

        HULFTエラーメッセージ

  ]

### 401 認証エラー

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

request_id : string

  リクエストID

accept_datetime : string <date-time>

  受付日時

api_path : string

  APIパス

http_method : string

  HTTPリクエストのメソッド形式

  以下のいずれかが取得されます。

  GET

  HEAD

  POST

  OPTIONS

  PUT

  DELETE

  TRACE

  PATCH

  LINK

  UNLINK

### 403 認可エラー

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

request_id : string

  リクエストID

accept_datetime : string <date-time>

  受付日時

api_path : string

  APIパス

http_method : string

  HTTPリクエストのメソッド形式

  以下のいずれかが取得されます。

  GET

  HEAD

  POST

  OPTIONS

  PUT

  DELETE

  TRACE

  PATCH

  LINK

  UNLINK

errors : Array of objects

  エラー詳細情報

  以下の構造の情報（Array[]）が複数取得されます。

  Array[

  kind : string

    エラー種別

  description : string

    エラーの説明

  measure : string

    対処方法

  detail : string

    詳細エラー情報

  ]

### 409 登録済みのIDを指定

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

request_id : string

  リクエストID

accept_datetime : string <date-time>

  受付日時

api_path : string

  APIパス

http_method : string

  HTTPリクエストのメソッド形式

  以下のいずれかが取得されます。

  GET

  HEAD

  POST

  OPTIONS

  PUT

  DELETE

  TRACE

  PATCH

  LINK

  UNLINK

errors : Array of objects

  エラー詳細情報

  以下の構造の情報（Array[]）が複数取得されます。

  Array[

  kind : string

    エラー種別

  description : string

    エラーの説明

  measure : string

    対処方法

  detail : string

    詳細エラー情報

  ]

### 500 サーバー内部エラー

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

request_id : string

  リクエストID

accept_datetime : string <date-time>

  受付日時

api_path : string

  APIパス

http_method : string

  HTTPリクエストのメソッド形式

  以下のいずれかが取得されます。

  GET

  HEAD

  POST

  OPTIONS

  PUT

  DELETE

  TRACE

  PATCH

  LINK

  UNLINK

errors : Array of objects

  エラー詳細情報

  以下の構造の情報（Array[]）が複数取得されます。

  Array[

  kind : string

    エラー種別

  description : string

    エラーの説明

  measure : string

    対処方法

  detail : string

    詳細エラー情報

  ]

### 502 HULFT接続エラー

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

request_id : string

  リクエストID

accept_datetime : string <date-time>

  受付日時

api_path : string

  APIパス

http_method : string

  HTTPリクエストのメソッド形式

  以下のいずれかが取得されます。

  GET

  HEAD

  POST

  OPTIONS

  PUT

  DELETE

  TRACE

  PATCH

  LINK

  UNLINK

errors : Array of objects

  エラー詳細情報

  以下の構造の情報（Array[]）が複数取得されます。

  Array[

  kind : string

    エラー種別

  description : string

    エラーの説明

  measure : string

    対処方法

  detail : string

    詳細エラー情報

  additional : object

    HULFTエラー追加情報

    code : integer

      HULFT実行結果

    detail : string

      HULFT詳細コード

    latest_process_id : string

      最新処理ID

    message : string

      HULFTエラーメッセージ

  ]

### 504 タイムアウトエラー

RESPONSE HEADERS

X-Request-ID : string

  WebAPIのリクエストID

RESPONSE SCHEMA : application/json

request_id : string

  リクエストID

accept_datetime : string <date-time>

  受付日時

api_path : string

  APIパス

http_method : string

  HTTPリクエストのメソッド形式

  以下のいずれかが取得されます。

  GET

  HEAD

  POST

  OPTIONS

  PUT

  DELETE

  TRACE

  PATCH

  LINK

  UNLINK

errors : Array of objects

  エラー詳細情報

  以下の構造の情報（Array[]）が複数取得されます。

  Array[

  kind : string

    エラー種別

  description : string

    エラーの説明

  measure : string

    対処方法

  detail : string

    詳細エラー情報

  ]