4D-jp 4D Japan Technical Support Team

ARRAY TO LISTとSAVE LIST

2021-06-23

プロジェクトモードでは,特に指定しない限り,書き込み禁止のパッケージ(拡張子.4DZの圧縮されたプロジェクトフォルダー)がビルドされます。ビルド後にプロジェクト(ストラクチャー)を更新することはできない点に留意してください。つまり,テーブルやフィールドを追加するようなSQL,SAVE LIST ARRAY TO LIST SET PICTURE TO LIBRARY CREATE INDEXなどのコマンドは使用できません。これは仕様です。

アプリケーションが内部ファイルを書き換えることは一般的に推奨されていません。これにはインストール済みアプリケーションを部分的に更新すること,たとえばビルドされたアプリ内のストラクチャーファイルを入れ替えることも含まれます。オペレーティングシステムやセキュリティソフトウェアは,そのようなアプリを「悪意のあるプログラム」とみなすかもしれません。

プロジェクトモードで開発したストラクチャーをビルド後に書き換えるのであれば,オペレーティングシステムやセキュリティソフトウェアの監視対象からアプリケーションを外すことに加え,拡張子.4DZの圧縮されたパッケージを作成するのではなく,コンパイルコードをそのままエクスポートする必要があります。そのようなアプリをビルドするには,ビルド設定ファイルの「PackProject」キーを使用します。

https://doc.4d.com/4Dv19/4D/19/PackProject.300-5447945.ja.html

しかし,セキュリティ上のベストプラクティスに倣い,アプリケーションはRead Onlyモードで配付し,部分的にではなく,全体を入れ替えるような仕方でアップデートするべきです。過去のバージョンで開発されたストラクチャーの場合,プロジェクトモードに移行した後,下記の点をチェックすると良いかもしれません。

初回データファイルをRead Onlyにする

最後に使用したデータファイルの場所をストラクチャーに書き込まない

データベース設定をストラクチャーに書き込まない

バックアップ設定をストラクチャーと同じ階層に保存しない

ストラクチャー書き換えコマンドを使用しない

  • SET PICTURE TO LIBRARY
  • SAVE LIST
  • ARRAY TO LIST
  • CREATE INDEX
  • DELETE INDEX
  • SET INDEX
  • IMPORT STRUCTURE
  • REGENERATE MISSING TABLE

リンク