Hitachi

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


LXRPIB06 漢字データ中央揃え

サブルーチンID

機能分類

サブルーチン名

テーブル名

LXRPIB06

漢字処理

漢字データ中央揃え

LXRCIB06

〈このページの構成〉

インタフェース

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

レベル

項目名

属性

説明および設定値

区分

03

I-LENG

P(3)

長さ

OL

03

I-STR-KJ

N(100)

文字列(漢字)

I

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

レベル

項目名

属性

説明および設定値

区分

03

O-STR-KJ

N(100)

文字列(漢字)

O

03

O-RTN-CD

X(10)

リターンコード

R

SPACE:正常終了

LXREB005:NUMERICエラー

LXREB004:入力長が範囲外

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

LXREB002:切り捨てが発生した

処理基準

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

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

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

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

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

      左詰めを行う。

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

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

例1

 I-STR-KJ:'あ△い△う△え△△△△'
 I-LENG  :11
 ↓
 O-STR-KJ:'△△あ△い△う△え△△'
 O-RTN-CD:SPACE

注意事項

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

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

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

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

  5. このサブルーチンから(漢字データ有効桁数算出:LXRPIB07)を呼び出す。

  6. Unicode対応版では,サロゲートペアで表現される文字は1ペア2文字で指定する。