concatenateBytes()

システム関数 VGLib.concatenateBytes は、2 つのフィールドを連結します。

StrLib.concatenate と同様に、source と target は、文字型にすることができます。 現在の関数では、source は以下のいずれかの型にすることもできます。
  StrLib.concatenateBytes(
    target 文字型です  inOut,
    source BIN、DECIMAL、NUM、NUMC、PACF、または文字型 in)
  returns (result INT)
result
関数から戻される次のいずれかの値 (INT 型か、INT 型と同等の、長さが 9 で小数部がない BIN 型と定義された型) を受け取る数値フィールド。
-1
連結された出力が長すぎてターゲット・フィールドと適合しないため、出力が切り捨てられた (後述)
0
連結済みの出力がターゲット・フィールドに収まった
target
ターゲット・フィールド。
source
ソース・フィールドまたはリテラル。

2 つの値を連結すると、以下のようになります。

  1. ターゲット値の末尾のスペースや NULL がすべて削除される。
  2. ソース値が、前ステップで作成された結果の値に追加されます。
  3. 第 2 ステップで作成された出力がターゲット・フィールドより長い場合は、 出力の末尾が切り捨てられます。 出力がターゲット・フィールドより短い場合は、 出力の残りがブランクで埋められます (出力が数値の場合でも)。

  phrase = "and/  "; // CHAR(7)  
  or     = "or";
  result =
    VGLib.concatenateBytes(phrase,or);
  if (result == 0)
    print phrase;  // phrase = "and/or "
  end
フィードバック
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.