Get menu bar reference
はプロセスのカレントメニューバーを返すコマンドです。SET MENU BAR
でメニューバーをインストールしていることが前提になります。SET MENU BAR
を使用せずに,プロパティで連結メニューが設定されたフォームを表示した場合,連結メニューは表示されますが,Get menu bar reference
は空の文字列を返すことになります。これは仕様です。
Windows版でCurrent machine
から返される文字列は15
文字が限度となっています。これは仕様です。コマンドはローカルコンピューターのNetBIOS名を返すようになっているためです。
配列の最大サイズは符号付き32ビット(21億以上)ですが,配列のカレント項目(添字を省略した変数)は符号付き16ビットつまり32767
です。Find in array
などで返された値が32767
を超える場合,その値を配列のカレント項目に代入することはできません。別途,倍長整数型の変数を用意して管理する必要があります。これは仕様です。
Javaのzip4j
で作成したzipファイルは,ZIP Read archive
で展開できないことがあります。コマンドは.zip形式の仕様に準拠しており,パス区切り文字はAmigaやUNIXシステムとの互換性のため,スラッシュ記号だけを使用することになっています。バックスラッシュ記号を許容するプログラムで作成した圧縮ファイルは「ファイルがみつかりません」エラーが返されるかもしれないので注意してください。
19r5 Hotfix 1および19.4以降,数値ではなく文字列に数値フォーマットを適用した場合の仕様が明確になりました(ACI0103061)。桁区切り=カンマ/小数点=ピリオドではないシステムでは注意が必要です。なお,macOS Montereyはシステム環境設定で桁区切りと小数点をカスタマイズすることができましたが,Venturaではそれができなくなりました。
数値に数値フォーマットを適用した場合,システムの桁区切り記号および小数点が使用されます。文字列に数値フォーマットを適用した場合,フォーマットのカンマおよびピリオドがそのままトークナイズ解釈されずに使用されます。つまり,String
などのドキュメントに記述されている数値フォーマットが適用されるのは,数値だけであり,文字列には適用されません。文字列を(電話番号等ではなく)数値として扱う場合,Num
で数値に変換することが必要かもしれません。
SQLのCREATE TABLE
やDROP TABLE
でデータベースを変更した場合,クライアント側のストラクチャ情報が更新されるまで少しの時間が必要です。たとえば,SQLを実行した直後はテーブルやフィールドのポインターが作成できないかもしれません。これは仕様です。回避策としてIs table number valid
やIs field number valid
を使用することができます。これらのコマンドを実行することにより,該当する番号のテーブルまたはフィールドの存在がチェックされ,クライアント側のストラクチャ情報が更新されるためです。
Mac版でPRINT SETTINGS
を使用して印刷ダイアログを表示した場合,ポップアップメニューで「プレビューで開く」という項目を選択することができます。このオプションを使用した直後,同一プロセスで実行した印刷コマンドは,SET PRINT OPTION
でDestination option を1
(直接プリント)に指定したり,Print settings to BLOB
で印刷設定を元に戻したりしても,デフォルトで「プレビューで開く」が実行されることになります。これはオペレーションシステムの仕様です。 プレビュー設定を解除するためには,新規プロセスで印刷するか,下記のコードを実行する必要があります。
SET PRINT PREVIEW(False)
印刷ダイアログでファイル出力を選択した場合,Windowsプラットフォームでユーザーが指定したパスはそのままドライバーに渡されるため,macOSのようにGET PRINT OPTION
で取得することができません。これは仕様です。回避策としてファイル選択ダイアログを表示し,そのパスをSET PRINT OPTION
で指定することができるかもしれません。
v15以前に作成されたバイナリモードのリストボックスは,テキストのレンダリングにGDIを使用するようになっています。v16以降に作成されたものはDirectWriteを使用します。これは内部的なプロパティ設定であり,ドキュメントされていないデータベースパラメーター107
以外では読み書きすることができません。
19r3以降,高解像度ディスプレイを想定したデータベース設定「WindowsでのDirectWriteの使用」を有効化することができるようになりました。ただし,前述した「v15以前に作成されたバイナリモードのリストボックス」にはこの設定が適用されません。そのため,テキストが部分的にGDIでレンダリングされる,という状況が生じ得ます。たとえば,DirectWriteが有効なオブジェクトは絵文字がカラーで表示されるのに対し,GDIを使用しているリストボックスだけはモノクロで表示されるかもしれません。
19r8以降,クライアント/サーバー版またはリモートデータストアのエンティティセレクションはadd()
やminus()
を実行した場合,entitySelection.isOrdered()
がTrue
を返すようになりました。内部的にインデックスクエリと該当するセット演算を実行するようなクエリも同様です。エンティティセレクションの並び順が保持されることにより,さらに直感的なインターフェースがORDAで提供できるようになりました。