ヘルプTipsが表示されているときにOBJECT SET HELP TIPを使用した場合,表示中のヘルプは取り消され,新しい内容のヘルプが表示されます。これは仕様です。設定したメッセージが以前と同じものであったとしても,この点は変わりません。マウスポインターの移動中にコマンドを実行すると,ヘルプTipsが絶えず点滅し,ユーザーに不快な印象を与えるかもしれませんので,注意が必要です。
Current method nameをフォームメソッド内でコールした場合,コンパイルモードではフォーム名に出現する最後のピリオド以降の文字列が返されます。これは仕様です。たとえば,Invoice.Output.Dialogのような名前をフォームに設定した場合,Dialogだけが返されます。フォーム名にピリオドは使用しないでください。
ユーザーモードのメニュー項目「ファイル > 読み込み > ODBCソースから読み込み」および「ファイル > 書き出し > データをODBCソースに書き出し」は,64ビット版でdisabled状態となっています。IMPORT ODBC EXPORT ODBC も64ビット版では使用できません。これは仕様です。ODBC経由でデータの読み書きをするのであれば,標準のSQLコマンドを使用してください。
注記: 32ビット版アプリケーションは,17r4が最後のリリースとなります。17r5以降,4Dおよび4D Serverは64ビット版アプリケーションのみのリリースとなり,32ビット版は提供されません。
17r3以降,スプレッドシートをVP EXPORT DOCUMENTで.xlsx形式でエクスポートすることができるようになりました。.4vp形式を指定した場合,コマンドは同期処理でファイルを書き出しますが,.xlsx形式を指定した場合,非同期処理でファイルを書き出した後,コールバックとして渡されたFormulaオブジェクトが実行されるようになっています。On Close Boxフォームイベントでコマンドを実行した場合,ウィンドウが閉じられることにより,非同期処理がアボートされてしまうため,.xlsx形式のエクスポートはキャンセルされてしまいます。これは仕様です。ダイアログの終了と同時にエクスポートを実行するのであれば,コールバックとして渡されたFormulaオブジェクトが実行された後にウィンドウを閉じるようにしてください。
17r3は,v2004のストラクチャファイルを開くことができる最後のバージョンです。v17r4で開こうとすると「データベースストラクチャが無効です。バージョンが古すぎるか,ファイルを修復する必要があります」というエラーが返されます。これは仕様です。
Write Pro文書・画像・セクション・段落のボーダー(罫線)は,コンテキストメニュー,またはWP SET ATTRIBUTESとwk border style wk border widthの組み合わせで設定することができますが,テーブル全体や特定の行列のボーダーは設定することができません。これは仕様です。
ボーダーは,テーブル・行・列ではなく,セルの属性です。テーブル全体や特定の行列のボーダーする場合,下記のようにセルの集合を取得した上でWP SET ATTRIBUTESを使用します。
$table:=WP Get element by ID($wp;"t1")
$cells:=WP Table get cells($table;1;1;MAXLONG;MAXLONG)
WP SET ATTRIBUTES($cells;wk border style;wk none)
v16では,リスト型のサブフォームダブルクリックすると,FORM SET INPUTで指定した入力フォームに切り替わりましたが,v17では常にデフォルトの入力フォームが使用され,FORM SET INPUTで指定したフォームは使用されません。これは仕様です。以前の振る舞いはバグであり,意図的な設計によるものではありませんでした。サブフォームの内容は,OBJECT SET SUBFORMで明示的に切り替えることができます。
追記: ビルド237123以降,仕様が見直され,サブフォームに対してFORM SET INPUTが使用できるようになりました。(ACI0099331)
オブジェクト型のプロパティは,フィールドや従来の変数とは違い,タイプが固定されていません(「強い型付け」)。C_PICTUREで型が宣言されたピクチャ変数にNullを代入した場合,変数の内容がクリアされますが,型は変わりません(CLEAR VARIABLEまたはpicture:=picture*0と同じ)。対照的に,ピクチャ型のオブジェクトプロパティにNullを代入した場合,プロパティは0バイトのピクチャではなく,Nullになります。Write ProやORDAも同じ振る舞いになります。これは仕様です。
オブジェクト記法およびコレクション型がランゲージに追加されるまで,オブジェクト型の読み書きにはOBで名前が始まるコマンドが使用されていました。OBコマンドは廃止予定ではありませんが,オブジェクト記法(ドット記法とブラケット記法)をサポートしていないことに留意する必要があります。たとえば,下記の例で[Person]familyはオブジェクト型のフィールドですが,コードを実行するとエラーが返されます。これは仕様です。
OB SET ARRAY([Person]family.children[0];"ID";$IDs)