4D v18は、デプロイされたmacOSパッケージとWindowsアプリケーションのフォルダをそのまま維持するために、ファイルとフォルダのための新しいアーキテクチャを導入しています。簡単に言うと、ログフォルダと、4Dバックアップ設定を含む全てのユーザーベースの設定は、データファイルの隣に保存されるようになりました。実際、設定は2回存在します。1つは新しいデータファイルのデフォルト設定として使用する構造の横に、もう1つはデータファイルの横に、ユーザーの変更を保存するために存在します。
その結果、構造体を含むフォルダの内部は何も変更されないので、読み取り専用にすることができます(*)。構造体フォルダーを置き換えるだけで、中のものを事前にコピーする必要がないため、導入が容易になります。
(*) は、プロジェクト・データベースでのみ使用できます。バイナリデータベースでは、ユーザーとパスワードのテーブルが構造体に格納されているため、フォルダを読み取り専用にしてはいけません。
Preferences フォルダは廃止され、Settings フォルダが復活しました。
4D v18へのコンバージョン中に、いくつかの名前の変更が行われました。
-
- 環境設定“フォルダは “Settings “に
- バックアップ設定ファイルはbackup.4DSettingsとなり、Settingsフォルダの中に置かれます。
- ビルドアプリケーション設定ファイルは、buildApp.4DSettingsとなり、Settingsフォルダ内に配置されます。
インタプリタ型、コンパイル型、マージ型のどのデータベースを使用しているかにかかわらず、これらの操作はデータベースを開くときに自動的に実行されます。デプロイされたアプリケーションであっても、これらの変更の恩恵を受けるために書き換える必要はありません。
バックアップファイルの利用がよりシンプルに
以前の4Dリリースでは、バックアップ設定とバックアップログは、異なる情報を含む複数のファイルに保存されていました。
現在では、backup.4DSettingsファイルを構造体の近くに置いたり、別のファイルをSettingsフォルダでデータファイルの近くに置いたりすることができます。前者は構造設定ダイアログで、後者はデータファイルのユーザー設定ダイアログで変更することができます。どちらも設定に特化しています。構造体の近くのSettingsフォルダーに置かれたものは、顧客がデータファイルのユーザー設定を忘れた場合に備えて、標準のバックアップとして使用されます。
これらの仕組みをどのように利用すればよいのでしょうか。
アプリケーションのデプロイ時に、従来のPreferencesフォルダをインストーラから除外しておくと、新しいバージョンをデプロイする際に、4Dが自動的に以前の変更を適用してくれるため、おすすめです。デプロイメントのもう一つの良い方法は、データファイル専用の設定を作成することです。バックアップの設定も同様です。4D Dialogデータファイルのユーザー設定を開き、データファイルのバックアップ戦略を調整するだけです。これで、アップデートを展開する際にバックアップの設定を気にする必要がなくなります!
そして、何が起こったのか?
新しいbackupHistory.jsonファイル(このファイルは File (Backup history file)) には、利用可能なすべてのバックアップレポートが集められています。開始と終了のタイムスタンプ、ステータス、期間、パス、埋め込みファイルなどを含む包括的な情報です。最後のバックアップ期間も簡単に取得することができます。
GET BACKUP INFORMATION ( ;$duration;$timestamp)Last Backup information
バックアップログファイルはLogsフォルダに保存され、簡単に確認することができます。
Logs フォルダ
macOS パッケージや Windows Program Files フォルダにログを書き込まないように、Logs フォルダをデータファイルの近くに移動しました。検証、コンパクト化、修復の各操作は、アクティブなデータファイルがなくても実行できるため、対応する生成ログファイルは、システムのユーザー設定フォルダに配置されます。これらのファイルを簡単に管理するために、以下のコマンドを使用することをお勧めします。
File(Compacting log file)
File (Verification log file)
File (
Repair log file)
なお、既存のLogsフォルダは触れないので、そこに入れたファイルを失うことはありません。
最後に…
これらの改善は、デプロイを容易にし、開発に集中できるようにするために行われました。