IBM FileNet P8, バージョン 5.2.1            

数値関数

このセクションでは、浮動小数点数値または整数値に適用される関数について簡単に説明します。

表 1. 浮動小数点値または整数値に適用される関数の表
関数 動作
abs 数値関数の絶対値を返します。
bitor、bitand、bitnot ビットのブール操作を提供します。
convert 数値を別のデータ型に変換する、または別のデータ型を数値に変換します。
err_encode 3 パートから成る FileNet® P8 エラー要素を 1 パートの整数に変換します。
int 小数点以下をすべて切り捨てて、数式の整数値を返します。
max サポートされるデータ型の式のリストから最大値を返します。
min サポートされるデータ型の式のリストから最小値を返します。
mod 除算後の剰余を返します (モジュロ関数)。
numbertostring 指定されたマスクを使用して、数式を文字列式に変換します。
random 指定された範囲の乱整数を返します。
sizeof 配列のサイズを返します。

abs

この関数は、整数式または浮動小数点数式の絶対値を返します。使用する構文は次のとおりです。
abs (num_expr)
ここで、num_exp は、結果が整数型または浮動小数点型である式です。 次に例を示します。
abs (SalePrice - PurchasePrice)

bitand、bitor、bitnot

ビットのブール操作を提供します。これらの関数を使用して、設定のマスキングやビットの抽出など、多くのタスクを実行します。これらの各関数は、同時に最大 32 個のアイテムのブール演算を実行できます。

bitand、bitor、bitnot は、それぞれ C プログラミング言語の論理積 (&)、論理和 (|)、論理否定 (~) に対応します。C 言語をよく知らない場合は、数値をバイナリー値と考えてください (例えば、123 は 1111011 になります)。

これらの関数は、入力として 32 ビットの整数 (すなわち、0 から 42946967295) を取得し、出力として同じ範囲の整数を返します。使用する構文は次のとおりです。
bitand (expr1, expr2)

bitor (expr1, expr2)

bitnot (expr)
ここで、expr1 と expr2 は 32 ビットの整数です。
各関数の詳細および例については、次のリストから該当するトピックを選択してください。

bitand

bitand 関数は 2 つの整数の対応するビットを「論理積」演算します。ビットごとに比較します。比較の結果は新しい整数への出力になります。比較は次の規則にしたがって行われます。
  • 両方の整数の同じ位置に 1 が入っている場合、結果として生成される整数の同じ位置にも 1 が入ります。
  • 両方の整数の同じ位置に 0 が入っている場合、結果として生成される整数の同じ位置にも 0 が入ります。
  • 同じ位置で一方の整数には 1 が入り、もう一方の整数には 0 が入っている場合、結果として生成される整数の同じ位置には 0 が入ります。
例えば、bitand (123, 240) は次のように表すことができます。
bitand

     (00000000000000000000000001111011,
         

      00000000000000000000000011110000)
          

  結果は、次のようになります。 
      00000000000000000000000001110000

bitor

bitor 関数は 2 つの整数の対応するビットを「論理和」演算します。このビットごとの比較の結果は、新しい整数への出力となります。比較は次の規則にしたがって行われます。
  • 同じ位置でどちらか一方の整数に 1 が入っている場合、結果として生成される整数の同じ位置にも 1 が入ります。
  • 両方の整数の同じ位置に 0 が入っている場合、結果として生成される整数の同じ位置にも 0 が入ります。
例えば、bitor (123, 240) は次のように表すことができます。
bitor
     (00000000000000000000000001111011,
         
      00000000000000000000000011110000)
          
  結果は、次のようになります。 

      00000000000000000000000011111011

bitnot

bitnot 関数は整数を「論理否定」します。 このビットごとの分析の結果は、新しい整数への出力になります。新しい整数の各位置には逆のビット値が入ります。例えば、入力整数の所定の位置に 1 が入っている場合、新しい整数の同じ位置には 0 が入ります。

例えば、bitnot (123) は次のように表すことができます。
bitnot
              (00000000000000000000000001111011
  結果は、次のようになります。 
               11111111111111111111111110000100

int

この関数は、小数点以下をすべて切り捨てることで浮動小数点数式の整数値を計算します。例えば、浮動小数点数値 6.2 と 6.8 は整数値 6 に変換されます。数値の符号は変更されません。

使用する構文は次のとおりです。
int (num_expr)
ここで、num_expr は、結果が浮動小数点型である式です。 次に例を示します。
int (365 / 7)

mod

この関数は、除算後の剰余を返します (モジュロ関数)。値を 0 (ゼロ) で除算しようとすると、ランタイム・エラーが発生します。

使用する構文は次のとおりです。
mod (num1, num2)
ここで、num1 と num2 は浮動小数点型または整数型の変数です。負の値を入れることもできます。
次の例では、NumberOfDays を 7 で除算した場合の剰余が返されます。
mod (NumberOfDays, 7)
mod 関数の出力の符号は、num2 の符号によって決まります (出力が 0 に等しくない場合)。
num2 > 0 の場合は、次のようになります。 

		0 <= mod (num1, num2) < num2

num2 < 0 の場合は、次のようになります。 

		num2 < mod (num1, num2) <= 0

random

アプリケーションによっては、ランダム・サンプリングを実行する手段として、乱整数を生成する方法が必要です。この関数は、指定された範囲の乱整数を返します。範囲を決定するには整数をパラメーターとして指定する必要があります。

使用する構文は次のとおりです。
random (num)
ここで、num は 2 から 32768 (2 と 32768 を含む) の整数です。範囲は 0 から num - 1 です。この例で、num が 23 の場合、乱整数の範囲は 0 から 22 になります。

err_encode

この関数は、3 パートから成る FileNet P8 エラー要素を整数値に変換します。この整数値は、WorkFlo Application Libraries (WAL) 項目ポイント呼び出しから返された結果コードと比較できます。WAL は、通常の処理で例外条件が発生した場合 (単純なデータ処理でのファイルの終わりなど)、またはエラーが発生した場合に結果コードを返します。

err_encode の主な使い方は、WAL を呼び出す演算から返された結果に基づいて、ワーク・アイテムの後続の処理を決めることです。一般に、このような演算の後にはブランチ・システム・インストラクションが続きます。ブランチが実行されると、ワーク・アイテムは、直前の演算から返された結果コードによって決まる処理パスにしたがいます。例えば、ブランチ定義で err_code 関数を使用することで、ワーク・アイテムが <return code> = err_encode (80, 0, 2) の場合と <return code> = err_encode (80, 0, 5) の場合に従う処理パスを分けることができます。

使用する構文は次のとおりです。
err_encode (mod_num, func_num, err_num)
ここで
表 2. err_encode 関数のパラメーターおよび説明
パラメーター 説明
mod_num 結果コードの 1 つ目のパートです。このパートは、エラーの発生源であるサービス、ライブラリー、またはアプリケーションを示す整数式 (0 から 255 の範囲) です。
func_num 結果コードの 2 つ目のパートです。 このパートは、エラーの発生源である関数またはモジュール、またはエラーが属するカテゴリーを示す整数式 (0 から 255 の範囲) です。
err_num 結果コードの 3 つ目のパートです。 このパートは、エラー番号を示す整数式 (0 から 65535 の範囲) です。


最終更新日: 2016 年 3 月
bpfe010.htm

© Copyright IBM Corp. 2016.