OBJECT Get action および OBJECT SET ACTION コマンドは、フォームオブジェクトに対して使用する際、倍長整数の定数ではなく文字列の定数を使用するようになりました。
以前のコード:
ARRAY TEXT($arrObjects;0)
FORM GET OBJECTS($arrObjects)
For($i;1;Size of array($arrObjects))
If(OBJECT Get action(*;$arrObjects{$i})=Object No standard action)
OBJECT SET ACTION(*;$arrObjects{$i};Object Cancel action)
End if
End for
v17 に変換後のコード:
注: _o_Object Get action ファンクションのみが廃止予定と宣言されています。なぜならコンパイル時、結果の型をあらかじめ指定する必要があるからです。これはユーザーにコードの書き換えを促すために実装されました(以下参照)。そうでなければ、コンパイルは不可能であったからです。
新コード: コマンドや廃止予定の定数は以下のように置き換えることができます:
ARRAY TEXT($arrObjects;0)
FORM GET OBJECTS($arrObjects)
For($i;1;Size of array($arrObjects))
If(OBJECT Get action(*;$arrObjects{$i})=ak none)
OBJECT SET ACTION(*;$arrObjects{$i};ak cancel)
End if
End for
v17 以降、オブジェクトプロパティによって操作される4Dの時間(C_TIME型)は秒数へと変換されます。以前のバージョンでは、これはミリ秒へと変換されていました。
この変化は、オブジェクト記法を用いてオブジェクトあるいはコレクションに(あるいはそれから)変換されるすべての時間に適応されます。OB SET および OB Get, QUERY BY ATTRIBUTE といったコマンド、あるいはJSON Stringify および JSON Parse といったJSON コマンドなどです。また、以下の4D 機能における時間/数値の変換にも影響します:
- Web エリア(JavaScript 経由)
- 4D Mobile
- SQL (CAST ファンクション)
4D データベース側の適応を容易にするため(特に時間がフィールドオブジェクト属性内に保存されていたような場合)、新しい互換性オプションを使用して、セッション中に以前の振る舞いに戻すことができます:
WP GET ATTRIBUTES あるいはOB Get コマンドでwk image, wk list style image, およびwk background image 属性を使用すると、画像が宣言されていない場合、画像のURL ではなく、画像そのものを返すようになりました。
画像URL を探すためには、新しいwk image url, wk list style image url, および wk background image url 属性を使用してください。