Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Added |../../index.htm#lansa/l4wtgu01_0040.htm]
現在地:

Anchor
_Ref78089795
_Ref78089795
Anchor
_Toc130904713
_Toc130904713
1.1.1 フィールド・タイプについて

フィールド・タイプ使用の推奨事項  

フィールド・タイプ使用の推奨事項  

フィールド・タイプ変換  

フィールド・タイプ変換  

RDMLX使用可能区画  

RDMLX使用可能区画  

SQL

Null処理  

Null処理  

Unicode フィールド

タイプ  

タイプ  

フィールドを RDML に分類するもの

 
フィールド定義

  • すべての区画で 1.1.2 Alpha、1Alpha1.1.7 Packed、1Packed1.1.8 Signed のフィールド・タイプを使用することができます。
  • フィールド・タイプ 1.1.11 Date、1Date1.1.12 Time、1Time1.1.13 DateTime、1DateTime1.1.14 Binary、1Binary1.1.15 VarBinary、1VarBinary1.1.3 String、1String1.1.4 NVarChar、1NVarChar1.1.6 NChar、1NChar1.1.5 Char、1Char1.1.9 Integer、1Integer1.1.10 Float、1Float1.1.17 BLOB、1BLOB1.1.18 CLOB、1CLOB1.1.19 Booleanは、RDMLX使用可能区画で使用する必要があります。詳細については、『Visual Booleanは、RDMLX使用可能区画で使用する必要があります。詳細については、『Visual LANSA 管理者ガイド』の 「&<a href="../../../lansa011/content/lansa/l4wpar01_0020.htm"&>RDML RDML 区画および RDMLX 区画&</a&>」を参照してください。」を参照してください。
  • Packed、Signed、および Integer には編集コードと編集語の使用が許されます。他のフィールド・タイプは編集コードと編集後はサポートされていません。
  • 鍵盤シフト・ブランクは、Binary、VarBinary、Date、Time、DateTime、Integer、Float、NVarChar、NChar、BLOB、Boolean のみで有効な値です。のみで有効な値です。
  • RDMLX区画では、参照フィールドにより定義されたフィールドは参照フィールドと異なる属性を持つことはできません。これはシステム定義の*IMPREFFLDNOPROPフラグに関係なく適用されます。
  • Date、Time、DateTime、Binary、VarBinary、BLOB、およびCLOBタイプの新しいフィールドは、デフォルトで ASQN 属性 (1.2.17 [入力属性] の共通属性を参照) が有効になります。

LANSAでのフィールドの使用

...

Define

...

Field(#MyDate)

...

Type(*DATE)

...


Change

...

#MyDate

...

To(1972-03-04)

...


Set

...

#MyDate

...

Value(1972-03-04)

...


#MyDate.Value

...

:=

...

"1972-03-04"

...

Wiki Markup
    If

...

 (#Std_Num.IsSqlNull) 
 

...

    If (#Std_Num *ISNOT *SqlNull) 
 

...

    If ((*Not #Std_Num.IsSqlNull) *AndIf (#Std_Num > 45.00)) 
 

...

    If ( (\[your expression\] *IS *SqlNull ) 

...


組み込み関数の引数/戻り値のタイプ

ヒントとテクニック

  • LANSAは、強い型付け (ストロング・タイピング) をすべてのフィールド・タイプに実装しました。例えば、Alphaの使用が許される組み込みファンクションでは String もサポートされます。しかしDateTimeの使用は許されません。DateTimeを使用する場合は、単純に#MyDateTim.asStringを使って文字列形式の使用を明示します。
  • RDML区画を使用する場合は『LANSA/AD ユーザーガイド』を参照してください。この資料はRDML区画だけを使用した開発について記述されています。
  • LANSA には 1.1.10 Float など、その他のファイルでの使用が基本的にサポートされているフィールド・タイプもありますが、ビジネス・アプリケーションでの使用はお勧めしません。多くの数値データには、フィールド 1.1.9 Integer または 1.1.7 Packed を使用することをお勧めします。また、RDML区画では、1 を使用することをお勧めします。また、RDML区画では、1.1.8 Signed の使用もお勧めします。
  • 文字データは 1.1.2 Alpha、1Alpha1.1.3 String、1String1.1.5 Char、1Char1.1.4 NVarChar、1NVarChar1.1.6 NChar タイプのフィールドで保管することができます。可能なかぎり 1.1.2 Alpha フィールドの使用をお勧めします。
  • 導入先にベンダー特定のDBMSを選択する場合、選択したDBMSで特定のフィールド範囲のサポートの問題がないように、ファイルを作成/編集するときにすべての警告を必ずレビューしてください。

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

  • LANSA ファイル作成時、LANSA フィールド・タイプは、各ベンダーがサポートする特定の DBMS データ・タイプに変換されます。例えば、Integerフィールドは(その長さに依存して)TINYINT、SMALLINT、INTEGER、BIGINT、NUMBER(3)、NUMBER(5)、またはその他のタイプで実装されます。これはサポートされる特定ベンダーのDBMSレイヤーにより異なります。ファイル x_dbmenv.dat がこの動作を制御しますが、これは変更することはできません。
  • 場合によって特定ベンダーの DBMS がフィールド長のすべてを処理できないことがありますが、これは LANSA で有効なデータ長がベンダーのデータベースで有効なデータ長よりも長い場合です。導入先のDBMSシステムを選択することはできますが、フィールドが正確に保持されない場合は警告が表示されます。この場合、データは切り捨てられるかまたは拒否されます。例えば 29 桁に定義された DateTime の場合、Oracle では完全な小数点以下 9 桁での保管をサポートしますが、他の DBMS ではデータは自動的に切り捨てられ、小数点以下は 0、3、または 6 桁になります。

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

[ Image Added |../../index.htm#lansa/l4wtgu01_0040.htm]