Hitachi

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


LXRPIB03 漢字シフト

サブルーチンID

機能分類

サブルーチン名

テーブル名

LXRPIB03

漢字処理

漢字シフト

LXRCIB03

〈このページの構成〉

インタフェース

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

レベル

項目名

属性

説明および設定値

区分

03

I-STR-KJ

N(100)

文字列(漢字)

I

03

I-SHFT-LENG

P(3)

シフトする文字数

C

正数:右方向にシフト

負数:左方向にシフト

ゼロ:シフトしない

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

レベル

項目名

属性

説明および設定値

区分

03

O-STR-KJ

N(100)

文字列(漢字)

O

03

O-RTN-CD

X(10)

リターンコード

R

SPACE:正常終了

LXREB005:NUMERICエラー

LXREB004:シフトする文字数が範囲外

処理基準

  1. 漢字データの内容を指定文字数分シフトする。

    1.1 シフトする文字数(I-SHFT-LENG)によって,次の処理を行う。

      正数:I-SHIFT-LENGの値だけ,右方向にシフトする。

      負数:I-SHIFT-LENGの絶対値だけ,左方向にシフトする。

      ゼロ:入力文字列をそのまま出力文字列とする。

例1

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

例2

 I-STR-KJ  :'あいうえお'
 I-SHFT-LENG:-2
 ↓
 O-STR-KJ   :'うえお'
 O-RTN-CD  :SPACE

注意事項

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

  2. -100≦I-SHFT-LENG≦100でなければ,I-SHFT-LENGを100として処理を続行し,エラーコード'LXREB004'をリターンコードとして返す。

  3. シフトした結果が出力文字列N(100)の範囲からはみだす時は切り捨てる。リターンコードには,スペースを出力する。