17r4以降,Mac版のボーダーハイライトが17.xよりも「太く」表現されるようになりました。これはシステムの表示に合わせるための意図的な変更であり,仕様です。
17.x

17r4

4D for iOSは,標準的なXcodeプロジェクトを出力し,ネイティブiOSアプリをビルドするツールです。17r4に組み込まれている4D for iOSは,ABI安定化前のSwiftを使用しているため,XcodeおよびiOSのバージョンが17r4開発当時のもの(Xcode 10.1)でなければアプリをビルドしたり,デバイスで動かしたりすることができません。これは仕様です。
| Xcode | Swift | iOS | 4D |
|---|---|---|---|
| 10.2 | 5 | 12 | 17r5 |
| 10.1 | 4.2.1 | 12 | 17r4 |
| 10.0 | 4.2 | 12 | 17r3 |
| 9.4.1 | 4.1.2 | 11.4 | 17r2 |
17r4の4D for iOSを使用するのであれば,Xcode 10.1の環境を用意し,アップデートは控えるようにしてください。
注記: デバイスをiOS 12.2にアップデートすると,Xcode 10.1ではデバッグができなってしまいますので,テストに使用するデバイスのアップデートも控えたほうが良いかもしれません。
すでにアップデートしてしまった場合, Appleから過去のXcodeをダウンロードすることができます。
17r5には,Xcode 10.2およびSwift 5に対応した4D for iOSが組み込まれています。最新版のXcodeを使用するのであれば,17r5(ベータ版)の4D for iOSをご検討ください。
なお,4D for iOSは,単独でダウンロードすることもできます。
17r5のexport structure fileコマンドでフォームをエクスポートした場合,フォームの名前がそのままフォルダーの名前として使用されます。ファイルシステムで許可されていない名前がつけられたフォームは,必然的にエラーが返されることになります。
プロジェクトモードでは,識別子がファイルパスの一部になりますので,フォーム・オブジェクト・メソッドの名前に : \ / . といった文字を使用することは控えてください。バージョン管理システムとの連携を考え,POSIXパスのフォルダー区切り文字も避けたほうが無難です。なお,テーブルは,名前ではなく,番号がフォルダー名に使用されるので,問題にはなりません。
忘れがちな点として,Windowsでは,歴史的な経緯により,フォルダー名に使用できない識別子があります。
IN OUT CON PRN AUX NUL
COM1 COM2 COM3 COM4 COM5 COM6 COM7 COM8 COM9
LPT1 LPT2 LPT3 LPT4 LPT5 LPT6 LPT7 LPT8 LPT9
Windows版でMDIウィンドウの閉じるボタンをクリックしたり,Alt+F4を入力したり,タイトルバーの左端にあるウィンドウメニューの「閉じる」アクションを実行したりしても,アプリケーションが終了しない場合,アプリケーション「終了」アクションがきちんと設定されているか,確認してください。
「終了」アクションが実行されるためには,「終了」標準アクションが設定された項目がメニューに存在しなければなりません。「終了」メニューを設定することにより,Windows版でMDIウィンドウの「閉じる」ボタンがこのメニュー項目に関連付けられます。Mac版では,アプリケーションメニューに「…を終了」という項目が追加され,代わりに本来の項目がメニューから取り除かれます。
このメニュー項目にプロジェクトメソッドが設定されていない場合,項目を選択すると,自動的に確認ダイアログが表示され,終了することに同意すると,アプリケーションの終了プロセスが始まります。
このメニュー項目にプロジェクトメソッドが設定されている場合,項目を選択すると,確認ダイアログは省略され,すぐにアプリケーションの終了プロセスが始まります。
「終了」標準アクションが設定された項目がメニューに存在しない場合,MDIウィンドウの「閉じる」ボタンをクリックしても何も起きません。
ヘルプ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で開こうとすると「データベースストラクチャが無効です。バージョンが古すぎるか,ファイルを修復する必要があります」というエラーが返されます。これは仕様です。