Hitachi

SEWB+/標準サブルーチン ライブラリリファレンス


LXRPIA08 文字列中央揃え

サブルーチンID

機能分類

サブルーチン名

テーブル名

LXRPIA08

文字列処理

文字列中央揃え

LXRCIA08

〈このページの構成〉

インタフェース

入力(区分:INPUT-PARM=I,CONSTANT=C)

レベル

項目名

属性

説明および設定値

区分

03

I-LENG

P(3)

出力フィールドの長さ

OL

03

I-STR

X(200)

入力文字列

I

出力(区分:OUTPUT-PARM=O,RTN-CODE=R)

レベル

項目名

属性

説明および設定値

区分

03

O-STR

X(200)

出力文字列

O

03

O-RTN-CD

X(10)

リターンコード

R

SPACE:正常終了

LXREA024:NUMERICエラー

LXREA020:入力長が範囲外

LXREA008:入力文字列がスペース

LXREA018:切り捨てが発生した

処理基準

  1. 入力文字列をセンタリング編集する。

    1.1 (文字列有効桁数算出:LXRPIA09)によって,入力文字列の最右文字位置を求める。

    1.2 入力文字列の最左文字位置(半角空白以外の最初の文字の位置)を求める。

    1.3 入力文字列の最右文字位置と最左文字位置から実文字数を求め,(出力フィールドの長さ:

      I-LENG)に収まらなければ,エラーコード'LXREA018'をリターンコードとして返し,

      左詰めを行う。

    1.4 (出力フィールドの長さ − 実文字数)を2で割り(余り切り捨て),その商で表される出力文字列

      上の位置に入力文字列の最左文字位置からの文字列を転送する。

例1

 I-STR    :'A△B△C△△△△△△'
 I-LENG   :10
 ↓
 O-STR     :'△△A△B△C△△△'
 O-RTN-CD   :SPACE

注意事項

  1. 左右の空白が等しくならないときは,左側の空白を1つ少なくする。

  2. I-LENGについてNUMERICチェックを行い,数値でなければエラーコード'LXREA024'をリターンコードとして返す。入力文字列をそのまま出力とする。

  3. 1≦I-LENG≦200でなければエラーとし,エラーコード'LXREA020'をリターンコードとして返す。入力文字列をそのまま出力とする。

  4. 入力文字列がスペースの場合,エラーコード'LXREA008'をリターンコードとして返す。出力はスペースとする。

  5. このサブルーチンから(文字列有効桁数算出:LXRPIA09)を呼び出す。

  6. EUC対応版,Unicode対応版で半角カナを編集する場合,文字列長は実バイト長(EUC:2バイト/文字,Unicode:3バイト/文字)で指定する。