4D-jp 4D Japan Technical Support Team

4D 20r5 修正リスト

2024-07-07

バージョン: 20r5
ビルド: 100217

  • ACI0104921 Windows版のみ。4D ODBC Driver のデータソースを登録した後,ODBCアドミニストレータで設定を変更することができませんでした。

  • ACI0104911 TRACEが記述されたメソッドをQodly Studio から実行して4Dでトレースした後,Qodly Studio のコードエディターで編集しようとした場合,アプリケーションがクラッシュしました。

  • ACI0104899 シングルユーザー版のみ。クラスのプロパティ宣言に複数行を記述するためのバックスラッシュ記号を入力してからenter キーで改行した場合,アプリケーションがクラッシュしました。

  • ACI0104872 Qodly の標準アクションで作成した新規エンティティのリレーション属性にエンティティを代入した場合,リレーション属性のキーが正しく保存されませんでした。

  • ACI0104893 QUICレイヤーのみ。クライアントがテーブルリストだけを表示した状態でスリープモードに移行した場合,スリープ解除時にアプリケーションがハングしました。新ネットワークレイヤーでは「接続済みソケットの作成に失敗しました。」エラーが返されることがあります。

  • ACI0104890 Mac版のみ。プロジェクト開始時にアプリケーションがクラッシュすることがありました。ACI0104865が修正されたことによる副作用です。

  • ACI0104886 中途半端な内容でクラスのソースファイルを保存した場合,プロジェクト再起動後にアプリケーションがクラッシュすることがありました。

  • ACI0104810 互いをプロパティとして参照する再帰的な共有クラスをインスタンス化した場合,コンストラクターでエラーが返されました。

注記: 共有クラスに限られた問題ではありません。下記のようなコードでも同じ状況が発生します。修正に伴い,共有オブジェクトの実装が見直されました。

$o1:=New shared object("a"; 123)
$o2:=New shared object("a"; 123)
$o3:=New shared object("o"; $o2)
Use ($o1)
  $o1.o:=$o3
End use 
  • ACI0104887 コンパイルモードのみ。エラーハンドリングメソッドがインストールされている場合,Try式でキャッチしたエラーがCatchブロックで処理されず,エラーダイアログが表示されました。

  • ACI0104885 QodlyWebForm にデータテーブルを表示した状態でモデルを更新した場合,パーミッション情報が失われました。

  • ACI0104881 リモートデータストアに対してdataStore.authentify()を実行した場合,エラーが返されました。

  • ACI0104865 Mac版のみ。システム設定で4Dの言語設定をOSとは別のものに変更した場合,正しい.lproj’ フォルダーが使用されませんでした。

  • ACI0104839 ファイルの相対パスがフォームのドキュメンテーションに使用されている場合,画像が表示されませんでした。

  • ACI0104776 並び替えエディターの項目をダブルクリックした場合,不自然な順にフィールドが追加されました。

  • ACI0104880 QodlyforceLoginを有効にした場合,WebForm がレンダリングされなくなりました。

  • ACI0104875 SPELL ADD TO USER DICTIONARYに文字列型のフォーミュラを渡した場合,コンパイルエラーが返されました。

  • ACI0104868 スタンドアロン版コンパイルモードのみ。ORDER BY FORMULAのフォーミュラとして自動リレーションフィールドの演算式を記述した場合,セレクションの並び順が正しくありませんでした。クライアント/サーバー版またはインタープリターモードでは問題ありません。

ORDER BY FORMULA([Movimenti];[Clienti]RagioneSociale+[Fornitori]RagioneSociale;<)
  • ACI0104854 WebForm から呼び出されたエンティティのメンバー関数をトレースした場合,アプリケーションがクラッシュしました。

  • ACI0104626 model.4DModel プロジェクトをメンテナンスモードで開いた場合,MSCでデータやインデックスの検証ができませんでした。

  • ACI0104876 データクラスのメンバー関数がQodly Studio に認識されませんでした。

  • ACI0104866 延期されたクライアント接続の再開に失敗した場合,内部的なミューテックスが解除されず,クライアントがフリーズする可能性がありました。

  • ACI0104777 クライアント/サーバー版のみ。エンティティの時間型属性が正しくサーバーに転送されませんでした。秒数の1/1000が値として保存されました。

  • ACI0104877 Qodly studio でメソッドまたはクラスを開いた場合,アプリケーションがクラッシュしました。

  • ACI0104862 クライアント/サーバー版のみ。entitySelection.refresh()でローカルキャッシュのエンティティセレクションを無効にしてからエンティティセレクションを参照した場合,削除したエンティティがundefined として返されませんでした。30秒後にエンティティセレクションを参照すれば,削除したエンティティがundefined として返されます。

  • ACI0104857 データソースが設定されたWrite Proテーブルをテキストボックスに挿入し,.4wp形式でドキュメントをエクスポート&インポートした場合,テーブルのデータ行とブレーク行が複製されました。

  • ACI0104799 ORDAクエリにリレーション属性のパスと計算属性を指定した場合,onQueryが実行されず,空のエンティティセレクションが返されました。

  • ACI0104770 メソッドエディターで4Dクラスストアのクラスを右クリックした場合,コンテキストメニューに「ドキュメンテーションを表示…」が表示されませんでした。

  • ACI0104869 Qodly のプレビューでデータを表示した後,Qodly Studio でデータストアを開いた場合,データストアに対するアクセス権限が失われ,サーバーを再起動またはデータストアを編集するまで回復しませんでした。

  • ACIACI0104852 Linux版のみ。Get process activity().processescpuTimeおよびcpuUsageが不正確な数値または0を返しました。

  • ACI0104826 SQL EXECUTEのクエリに時間を要した場合,つづくSQL LOAD RECORDでレコードフェッチのメッセージ画面が表示されました。

  • ACI0104822 Mac版のみ。GOTO OBJECT(*; "")につづけてCALL FORM(Current form window)実行した場合,CPU使用率が少し増えました。

  • ACI0104820 Windows版のみ。バーチャルキーコードを送信するタイプのバーコードリーダーでReturn キーを入力することができませんでした。

  • ACI0104812 Qodly またはデータエクスプローラーでアップロードした画像がサーバー再起動後に表示されました。キャッシュにない画像も表示されるべきです。

  • ACI0104811 プロジェクトを開くたびに* catalog_editor.json* ファイルのcolorcoordinatesの順序が入れ替わり,バージョン管理システムの競合を引き起こしました。

  • ACI0104798 Write Pro Toolbar が配置されたダイアログを閉じたタイミングでエラーが返されることがありました。

  • ACI0104738 サーバー管理画面のモニター上で右クリックしてもコンテキストメニューが表示されませんでした。

  • ACI0104564 プロジェクトのパスを指定してCompile projectでコンポーネントをコンパイルした場合,ORDER BY FORMULAがエラーを返しました。カレントプロジェクトを指定してCompile projectでコンパイルした場合,あるいはデザインモードのコンパイラーを使用した場合は問題ありません。

  • ACI0104832 サーバー側のメンバー関数で作成した新規エンティティをWebForm 側のアクションで保存することができませんでした。

  • ACI0104717 $format=lookerを指定したRESTリクエストのJSONレスポンスが正しくエスケープ処理されていませんでした。

  • ACI0104836 Windows版のみ。クエリエディターでブール型のフィールドを指定した場合,二択のポップアップメニューが表示されませんでした。

  • ACI0104828 .4DZ 形式にビルドしたプロジェクトの$shared 仮想フォルダーにQodly からアクセスできませんでした。

  • ACI0104833 QUICレイヤーのみ。テーブルにレコードを追加するたびにメモリーリークが発生しました。

  • ACI0104845 バイナリモードのみ。トレース中に追加したブレークポイントが保存されませんでした。

  • ACI0104837 Windows版のみ。過去バージョンのバイナリモードでコンパイルされたコンポーネントメソッドをコンパイルモードで実行した場合,アプリケーションがクラッシュすることがありました。ポインター型パラメーターの逆参照に問題があるようです。Macでは「再コンパイルが必要です」というエラーが返されます。

注記: 修正により,v14以前にコンパイルされたコンポーネントを開こうとした場合,再コンパイルを促すメッセージが表示されるようになりました。

  • ACI0104814 「サーバー側で実行」メソッドを実行中のサーバー側プロセスを強制的に終了した場合,プロセス名が管理画面の「プロセス」ページから消えませんでした。

  • ACI0104785 新ネットワークレイヤーのみ。複数のクライアントが接続された状態で負荷のかかる処理を長時間にわたって実行した場合,クライアントがクラッシュする可能性がありました。

  • ACI0104406 テーブルに複合インデックスが設定されている場合,QUIT 4Dの実行後にアプリケーションがフリーズすることがありました。

  • ACI0104813 クライアント/サーバー版のみ。リレーションエンティティを作成する前に新規エンティティのリレーション属性に外部キー値を代入してエンティティを保存した場合,代入した外部キー値ではなく空値が保存されました。

  • ACI0104802 開始時にWebサーバーを起動しない限り,WebAdmin ポート(デフォルトは7443)経由で$sharedフォルダーにアクセスすることができませんでした。

  • ACI0104747 VP Convert to pictureでView Proスプレッドシートの一部分をSVGピクチャに変換した場合,View Proエリアとは違うフォントが使われることがありました。

注記: CEFとピクチャではフォールバックフォントが違うことが関係しています。修正により,Calibri がインストールされていない環境では Helvetica Neue が使用されるようになりました。

  • ACI0104724 Get process activityから返されるストアドプロシージャセッションのuserNameが空でした。カレントユーザーが返されるべきです。

  • ACI0104749 ネットワーク接続に問題がある環境で4D.HTTPRequestを使用した場合,レスポンスが返されるまでに72秒(IPv4)または81秒(IPv6)を要しました。劣悪なネットワーク接続はclumsyでエミュレーションすることができます。

  • ACI0104453 コンパイルモードのみ。別々のプリエンプティブWebプロセスからStorage経由でオブジェクトまたはコレクションにアクセスする処理が引き金となってアプリケーションがクラッシュする可能性がありました。

  • ACI0104800 RESTでフェッチしたエンティティをデバッガでトレースした場合,計算属性を評価しようとしたところでアプリケーションがクラッシュしました。メンバー関数のコードにTRACEが記述されていなければ問題ありません。

  • ACI0104782 WebSocket に接続して30秒ほど放置した場合,エラー1006「異常終了(終了フレームが送信または受信されませんでした)」が返されました。

  • ACI0104447 CREATE INDEXでインデックス設定を更新した場合,ストラクチャエディターには変更が反映されますが,SQLシステムテーブルはプロジェクトを再起動するまで更新されませんでした。

  • ACI0104342 コンパイルモードのみ。SET HELP MENUでインストールしたak msc アクションをサーバー側のヘルプメニューから実行した場合,ランタイムエラーが返されました。INVOKE ACTIONを実行するための4D_Server_Interfaceワーカーがプリエンプティブプロセスで起動されているためです。

  • ACI0104596 サーバー側のORDAリクエストログipAddress(クライアントのIPアドレス)が出力されませんでした。

  • ACI0104758 プロジェクトモードのみ。互換性の「ピリオドとカンマを数値フォーマットのプレースホルダーとして使用する」が無効にされているストラクチャーをプロジェクトに変換した場合,ピリオドや空白を桁区切りとして使用するシステムで####0,00%;-####0,00%;0,00%のようなフォーマットをString関数で数値に適用した場合,カンマが小数点ではなく,桁区切り記号として処理されるようになりました。

注記: プロジェクトモード変換の仕様が変更されました。以前は「ピリオドとカンマを数値フォーマットのプレースホルダーとして使用する」が強制的に有効化され,変換ログにも下記の警告が出力されました。

{
  "message": "Compatibility setting 'Use period and comma as placeholders in numeric formats' switched on.",
  "severity": "warning"
}

修正により,この設定は保持されるようになりました。プロジェクトモード変換後にデータベース設定で有効化することができます。

  • ACI0104752 Write Proの小数点タブが文字列の後に続くスペースに対して適用されませんでした。Microsoft Wordと同じように処理されるべきです。

Write Pro(修正前)

Word(参考)

  • ACI0104764 Windows版のみ。Write Proドキュメントをwk pdf 形式でエクスポートした場合,Unicodeの結合文字を使用したウムラウトが正しい位置に表示されませんでした。プリンタードライバー経由でPDFを出力すれば問題ありません。

注記: Hummus PDF-Writerの不具合でした。レンダリングの問題を回避するため,合成文字のウムラウトが出力されるようになりました。

  • ACI0104698 Mac版のみ。Modal form dialog box タイプのウィンドウからポップアップウィンドウを表示した場合,テキスト入力オブジェクトに数字をタイプ入力することができませんでした。

注記: Appleの仕様では非アクティブのウィンドウにフォーカスを設定することはできないことになっていますが,4Dはポップアップウィンドウが非アクティブであってもタイプ入力ができる(したがってフォーカスを設定することができる)仕様になっています。今回の修正には,Appleの仕様を迂回することが関係しています。IMEは,非アクティブであるポップアップウィンドウの背後に表示されるので,隠されてしまわないよう,ポップウィンドウにテキストを入力している間はウィンドウの外に表示されます。過去バージョンの動作を再現するために問題は修正されましたが,テキスト入力が必要であれば,ポップアップウィンドウではなく,フローティングウィンドウを使用することが勧められています。

  • ACI0104669 メソッドエディター上でCase of構文の条件ブロックを畳んだ状態で別の条件ブロックカットまたは削除し,command+Zで操作を取り消した場合,コードが正しく復元されませんでした。

  • ACI0104797 Windows版のみ。GET SERIAL PORT MAPPINGCOM9より高いポートを取得することができませんでした。

  • ACI0104789 Windows版のみ。SET PRINT OPTIONで設定したOrientation option の設定がQR RUNで出力したレポートの2ページ目以降に反映されませんでした。PDF/XPSに出力した場合は問題ありません。なお,印刷ジョブを開始する前に用紙の方向を設定すれば問題ありません。

注記: Direct2Dモードで印刷中に用紙の方向を変更した場合の処理が修正されました。

  • ACI0104603 フォームエディターのプロパティリストで関連メニューバーを「なし」に設定した場合,form.4DForm ファイルのmenuBarプロパティがnone に更新され,プロパティリストのラベル表示がエラーを意味する赤いタイトル文字に変化しました。関連メニューバーを「なし」に設定した場合は値が空になるべきです。

注記: 問題は修正されましたが,すでにメニューバーがnone に設定されている既存のフォームは修正されません。なお,プロパティリストにおける表示上の不具合であり,動作には問題ありません。手作業で修正するには,有効なメニューバーを設定した後,control キーを押しながらプロパティリストのラベルをクリックして設定をクリアしてください。

  • ACI0104496 QUICレイヤーのみ。スリープモードから復帰したクライアントのサーバー側プロセスが正常に終了しませんでした。

  • ACI0104739 Mac版コンパイルモードのみ。ストアドプロシージャーをアボートした場合,クライアント側にエラーメッセージが表示されませんでした。

  • ACI0104771 セレクション型リストボックスのハイライトセットが設定されていない場合,選択されたレコードを標準アクションの「サブレコード削除」またはINVOKE ACTIONで削除することができませんでした。

  • ACI0104686 CSSのverticalAlignプロパティを使用してリストボックス列の垂直揃えを設定した場合,フォームエディターのプレビュー表示にプロパティが反映されませんでした。フォーム実行時のレンダリングは問題ありません。

  • ACI0104654 QUICレイヤーのみ。クライアント側で新規プロセスを起動し,時間を要するクエリを実行した場合,サーバー側のプロセス名が管理画面に約10秒間だけ表示され,その後に消えました。ネットワーク帯域を制限するリミッターを有効化し,転送されるデータをおおきくすることで現象を再現できます。サーバー側のプロセス名はクエリが完了するまで表示されているべきです。

  • ACI0104597 On Server Startup データベースイベントで新規プロセスを起動して開いたウィンドウのオブジェクトメソッドでOPEN ADMINISTRATION WINDOWを実行した場合,何も起きませんでした。

注記: 管理ウィンドウはヘルプメニューのショートカットで開くことができますが, プロセスにメニューバーがインストールされておらず,フォームにメニューバーが関連付けられていない場合,管理ウィンドウを開くためのメニューコマンドが処理されないことが原因でした。パレットタイプのウィンドウであれば,アプリケーションプロセスのメインメニューが使用されます。修正により,どちらのケースでも管理ウィンドウが表示されるようになりました。

  • ACI0104491 QUICレイヤーのみ。ストアドプロシージャーを強制的にアボートした場合,クライアント接続が切断されました。エラー-1000「ユーザーにより処理が中断されました」が返されるべきです。

  • ACI0104760 Qodly Studio のモデルエディターでカタログを編集していると,パーミッション設定が失われ,設定を復元するためにはサーバーを再起動しなければならないことがありました。ACI0104330が修正されたことによる副作用のようです。

  • ACI0104805 ビルド版シングルユーザーアプリケーションでWEB START SERVERまたはデータベース設定の「開始時にWebサーバーを起動」を使用した場合,アプリケーションがクラッシュすることがありました。

  • ACI0104788 ツールボックスの「リスト」ページに移動するとランタイムエラーが表示されました。

  • ACI0104751 Webリクエスト処理中にWebサーバーを停止しようとした場合,アプリケーションがクラッシュしました。

  • ACI0104775 メールオブジェクトをMIME形式に変換した場合,messageIdの値に余計なエンコードが適用されました。

注記: 修正により,Message-IDヘッダーは76文字を超過しても折り返されないようになりました。

  • ACI0104744 デバッガでメソッドをアボートした場合,ネットワークエラーがQodly Studio に返されました。

注記: 修正により,エラーではなくレスポンスとして{"result":null}が返されるようになりました。

  • ACI0104730 データエクスプローラーの詳細フォームに<script>タグを利用してJavaScript コードを実行させることができました。

  • ACI0104753 ループ処理でHTTP Getを実行した場合,Content-Lengthヘッダーがリセットされませんでした。

  • ACI0104765 コンパイルモードのみ。WebServer.start()あるいはWebServer.stop()を繰り返し実行した場合,アプリケーションがクラッシュすることがありました。

  • ACI0104705 新規エンティティを保存するとピクチャ属性がQodly Studioimageコンポーネントに表示されなくなりました。

  • ACI0104683 新規エンティティを保存するまでピクチャ属性がQodly Studioimageコンポーネントに表示されませんでした。

  • ACI0104773 Windows版のみ。ビルド版のクライアントでビルド版のサーバーに新ネットワークレイヤーで接続できませんでした。QUICレイヤーでは問題ありません。

  • ACI0104188 フィールド値に<または>記号が含まれている場合,データエクスプローラーの表示が崩れました。

  • ACI0104548 Qodly Studio にアクセスした場合,RESTセッションが開始されませんでした。ACI0104503が修正されたことによる副作用のようです。

  • ACI0104768 クライアント/サーバー版のみ。入力フォームに配置されたチェックボックス(リレーションフィールド)が原因でアプリケーションがクラッシュすることがありました。ACI0104414が修正されたことによる副作用のようです。

  • ACI0104759 クライアント/サーバー版のみ。SET AUTOMATIC RELATIONS(True; False)でリレーション設定を変更することができませんでした。ACI0104414が修正されたことによる副作用のようです。

  • ACI0104754 テンキーのenter を入力した場合,データエクスプローラーのウィンドウが閉じられました。

  • ACI0104750 クライアント/サーバー版のみ。終了時にサーバーがクラッシュすることがありました。

  • ACI0103856 必要なコンポーネントがインストールされていないプロジェクトをtool4d で開いた場合,コンソールにエラーメッセージを出力せず,そのままアプリケーションが終了しました。

  • ACI0104703 ストラクチャエディターでフィールドの「重複不可」属性を有効にした後,変更前のデータファイルを開いた場合,ストラクチャエディターとカタログファイルの間で齟齬が発生しました。ストラクチャエディターには起動時のカタログファイルの設定(「重複不可」属性は有効)が表示されますが,カタログファイルはデータファイルの設定(「重複不可」属性は無効)で更新されました。ACI0104582と似ていますが,別の問題です。

  • ACI0104542 entity.save()したリレーション属性のNフィールドにNullを代入することができませんでした。1フィールドがプライマリーキーでなければ問題ありません。

  • ACI0104755 Qodly Studioの$shared 仮想フォルダーがwebAdmin ポートを介して配信されませんでした。ACI0104622が修正されたことによる副作用です。起動時にwebAdmin サーバーを開始していれば,問題ありません。

  • ACI0104290 ビット4 (16) を指定せずに Current process debug log を有効化した場合,プラグインコマンドの呼び出しでアプリケーションがクラッシュしました。さきに全プロセスのデバッグログを有効化していれば問題ありません。

  • ACI0104746 クライアント/サーバー版のみ。コンパイルを実行してからコンパイルモードでプロジェクトを再起動した場合,クライアントアプリケーションがそのまま終了することがありました。

  • ACI0104706 クライアント/サーバー版のみ。アプリケーション再起動時にクライアントまたはサーバーがクラッシュすることがありました。Sessionオブジェクトの仕様変更が関係しています。

  • ACI0104731 varシンタックスで変数の宣言と初期化を記述し,タイプとして小文字の4D.folderまたは4D.fileを記述した場合,コンパイラーが問題を検出しませんでした。変数の宣言だけであれば,未知のクラスであるという警告が表示されます。ACI0104606が修正されたことによる副作用です。


関連記事

リンク