1.1.10 Float

LANSA

1.1.10 Float


Floatは概数の数値フィールドで、浮動小数点数値データ(SignedやPackedなど固定小数点数値フィールドと対照的なデータ)を保管します。浮動小数点データは概数です。このフィールド・タイプの範囲内で、すべての値が正確に表されるわけではありません。Floatは、LANSAでは数字に分類されます。

Floatタイプのフィールドは算術演算式だけで使用することができます。コンポーネントやファンクションでFloatを表示することはできません。

Floatでは値を保管するためのバイト数を定義します。バイト数が大きくなるほど、数字の正確度は増します。4バイトのFloatは6桁以内であれば正確です。 8バイトのFloatは15桁以内であれば正確です。

次のテーブルはFloatで考えられる各バイト長の正確な長さの一覧です。正確な長さはSignedまたはPackedフィールドの実際の長さに相当すると考えることができます。考えられる実行時の小数点以下桁数もテーブルに示されています。

バイト数

正確な桁数(正確な長さ)

考えられる小数点以下桁数

4

6

0 - 6

8

15

0 - 15

一般的な事柄については、「フィールド・タイプについて」を参照してください。

フィールド定義の規則

Floatフィールドをリポジトリに定義するときの規則は以下のとおりです。

長さ

Float は4または8バイト長にすることができます。小数点以下桁数は必ずゼロにします。

有効なキーボード・シフト

ブランク

許容される属性

AB、 ASQN、CS、FE、ND、RA、RB、RL、RLTB

編集オプション

不可

デフォルト

*NULL

使用規則

区画タイプ

RDMLX使用可能区画

ファイル

Float はRDMLXファイルでのみ使用することができます。Floatは実フィールドとして使用することができます。Floatをキー・フィールドとして使用することはお勧めしません。

論理ビュー

Float をキー・フィールドとして使用することはお勧めしません。

仮想フィールド

Float は演算仮想フィールドで使用することができます。Floatはソース・フィールドとして使用することができます。

Floatはコード・フラグメントによる仮想フィールドで使用することができます。Float をサブストリング、連結、または日付仮想フィールドで使用してはいけません。

事前結合フィールド

Float は数値事前結合フィールドに使用することができます。

RDML コマンド

Floatタイプのフィールドは算術演算式だけで使用することができます。

例えば、DISPLAY、REQUEST、POP_UP、DEF_HEAD、DEF_FOOT、 DEF_BREAK、およびDEF_LINEは、Floatタイプのフィールドをサポートできません。Visual LANSAコンポーネントはFloatタイプのフィールドを表示するメカニズムはありません。

組込み関数

Float を組み込み関数で使用する場合、有効な引数のタイプは「N」です。

Float タイプのフィールドは、実行時に0から15桁の間のどこにでも小数点を持つことができるため、一般的にBIFの数値引数には不適切であると考えられています。実際の小数点位置を予測することが不可能なためです。

特殊値

*NULL、 *NAVAIL、*HIVAL、*LOVAL、*REMEMBERED_VALUE

変換

Float からDateやTimeフィールドへ変換すること、またその逆の変換は誤りです。「フィールド・タイプ変換」を参照してください。

使用に関する注意事項

·         ファンクションやコンポーネントで、作業フィールドはTYPE(*FLOAT)として定義することができます。長さの指定がない場合、デフォルトの8が仮定されます。

·         Floatタイプのフィールドは算術演算式だけで使用することができます。Floatを算術演算式ではないコマンド・パラメータとして使用すると、FFCエラーになります。例えば、FloatをBEGIN_LOOPコマンドで使用することはできません。

·         一般的に、FloatsはBIFへの数値引数としては不適切なタイプだと考えられています。

·         Float タイプは正確ではないため、Floatを用いて厳密な比較を行うことはお勧めしません。例えば、フィールドに保管された値やテーブルに保存された値と、フィールドに割り当てられた値は正確に一致しない場合があります。ただし、*ZEROや*SQLNULLとの比較は問題ありません。

プラットフォームについて

·         プラットフォーム別の考慮事項については、「フィールド・タイプについて」を参照してください。

ヒントとテクニック

·         一般的にFloatは科学や工学のアプリケーションで使用されます。ビジネス・アプリケーションでの使用は一般的ではありません。

·         LANSA では、Floatはその外部ファイルでの使用が基本的にサポートされていますが、ビジネス・アプリケーションでの使用はお勧めしません。

さらに、次のトピックも参照してください。

Packed

Signed

Integer

Ýフィールド・タイプ