4Dには主に3つのエリアで、自動化された、カスタマイズ可能なグローバルデータベース環境制御が用意されています。
これら緊密に統合された環境制御は、作成したデータベースをスムーズに問題なく操作するためのキーとなるものです。
4D External Environment Managerは作業環境を自動的にチェックします。たとえば、ディスクスペースが足りなくなったり、適切なネットワークがインストールされていないなどの場合、4Dから自動的に警告が表示されます。また、4D Managerは開発者がプログラム制御を行えるように情報を受け渡します。
環境に関する重要な情報は4Dのアバウトボックスに表示され、次のような情報が含まれています。
データベースについて
●テーブル、レコード、権限情報
●データストラクチャファイルの場所
●データファイルの場所
4Dアプリケーションはストラクチャファイルとデータファイルから構成されます。別々のファイルにすることによって、パッケージ開発者がアプリケーションのアップグレードを柔軟に行えるようになります。逆に、データファイルとストラクチャファイルの関連付けは慎重に行ってください(WEDD)。
モニタ
●画面サイズ ●色数
ネットワーク設定
●コンピュータ名 ●ユーザ名
ボリューム情報
ボリューム情報を知ることにより、ディスクスペースの最適化や、データセグメントサイズ設定の必要性の判断がしやすくなります(単一のダイアログで実行可能)。
●名前 ●サイズ ●アプリケーションから使用されている割合 ●ボリュームの空きスペース
プログラム上では、次のようなシステム環境に関するコマンドを使い、環境に関連する引数を操作することができます。
Count screens、Current machine、Current machine owner、FONT LIST、Font name、Font number、Gestalt、Menu bar height、Menu bar screen、SCREEN COORDINATES、SCREEN DEPTH、Screen height、Screen width、System folder、Temporary folder、SET SCREEN DEPTH
カレントデータベースのデータベースグローバルプロパティはプロパティウインドウで定義します。必要に応じ、フォームレベルまたはプログラムからこれらのプロパティを変更することができます。
一般
●起動時モードの選択:デザイン、ユーザ、カスタムモード
4Dには3種類のモードがあります。デザインモードではアプリケーションと基礎となるデータベースを作成します。ユーザモードは一般的な4Dエンドユーザ用のインタフェースです。カスタムモードではカスタムアプリケーションを実行します。
●進捗インジケータ:数字またはサーモメータ ●ツールバー表示 ●ドラッグ&ドロップ時の点滅(フレーム、パターン、両方) ●Webサーバ:起動時にデータベース公開Webへのデータベース公開機能は4Dに組み込まれている(4D Web Serviceの項を参照)。 ●TCPポート番号:同一コンピュータ上で複数のWebサーバを稼動させ、 それぞれのWebサーバ用に異なるTCPポートを選択できる。
データ制御
ログファイルに必ず記録する:ログファイルは最後にバックアップをとった時点以降に行われたデータベースへの変更を追跡するためのものです。必要があれば、データベースを前の状態に修復することができます。
●リレートテーブル用に削除制限を行う。
●データ入力時に自動トランザクションを使用する:このオプションは4D Firstから4Dへアップグレードしたユーザ向けです。
●カスタマイズ可能なデータバッファフラッシュ。
アクセス権
●4D Openの接続を許可する
4D Openは4DのApplication Programming Interface (API)で、4D以外のクライアントから4D Serverへの接続を可能にし、分散型クライアント/サーバアーキテクチャ作成を実現します。
●ストラクチャアクセスグループの権限:特定のグループに対しデザインモードへのアクセスを許可する(パスワードシステムを参照)
●パスワードダイアログボックスにユーザリストを表示/非表示
●ユーザリストをソートする
プラットフォームインタフェース
●自動、MacOS、Copland、Windows 3.1、Windows 95/Windows NT(4Dクロスプラットフォーム管理の項を参照) ● デフォルトフォント:システムフォントまたはリストに表示された別のフォント ● メッセージフォントとフォントサイズ ● スタイルシート編集:利用できるプラットフォームに対するスタイルシート
テーブルおよびフィールドのデフォルト
●名前や背景に色を付ける:4Dではデザインモードでフィールドやテーブルを整理するために色をカスタマイズできる。
●フィールドタイプアイコン表示:フィールドのタイプを表わすアイコンを表示できる。
メソッドエディタ
●メソッドをリスト式またはフローチャート式で表示
注:フローチャート式でのプログラミングは数年前に4Dで実現されていました。この方式は、主に互換性の理由から残されています。
●メソッドエディタの下にキーワードを表示/非表示
●旧バージョンのStartupプロシージャ方式やファイルプロシージャ方式を使う:既存の4Dアプリケーションとバージョン6の4Dとの完全互換を図るため、前バージョンの4Dで使用されていた機能を実行することができます。
デザインモード印刷
●タイトル印刷:ストラクチャ、フォーム、メソッド、パスワードの印刷時にタイトルを印刷するかどうか選択。
スケジューラ
スケジューラを使い、Windows NTなどのプリエンプティブなOSで稼動する各サーバに対し、優先度を定義できる。
●OSをコールする間隔(tick) ● OSコール毎の最大数(tick) ● OSコール毎の最小数(tick)
データキャッシュとメモリ
最適なパフォーマンスを得るため、キャッシュとメモリの設定を行える。
●Macintosh上で新しいメモリ割り当て方式を使用する。
●最大キャッシュ
●アプリケーションメインメモリ:Windowsでアプリケーションを動作させる際に割り当てるメモリを設定できる。
●スクリーン更新制御:スクリーン更新の高速化(メモリが余計に必要)
クライアント/サーバとWebサーバ接続タイムアウト
クライアント/サーバとWebサーバ接続に対し、タイムアウトのカスタマイズが可能。しかし、予期しない終了時でも、4Dはデータベースで使用されるすべてのオブジェクトを自動的に開放、クローズする。
フォーマットと入力フィルタの表示
全フィールドの表示用フォーマットの一覧に加え(フォームの項参照)、4Dでは通常のオブジェクトプロパティウインドウで表示される表示フォーマットや入力フィルタのカスタマイズが可能です。これらフォーマットおよびフィルタはスタイルシートの役割を果たします。全フォームを通し、フォーマットや入力フィルタを使って、すべての変更が実行されます。
Customizer Plusの使用
Customizer Plusは4Dに付属するユーティリティで、より高度なカスタマイズが行えます。特に、Customizer Plusでは前述のデータベースプロパティウインドウに関する予備的なカスタマイズを行います。
その他プレファレンス設定
●キーボード:主要な動作用にキーボードショートカットをカスタマイズできます(データ入力確定、キャンセル、サブテーブルへのレコード追加)。
●ウインドウ:ウインドウサイズや位置の制御。
●プレファレンス:7種類の主要なプロセス、カーソル、プリントモード、桁精度等のスタックサイズを制御。
●フォント:メソッドプリント時のフォントを制御。
●キャッシュ:特定アプリケーションのメモリ管理を最適化。
バージョン制御
●データファイルとアプリケーションを強制的にリンクさせ、誤ったデータファイルへのアクセスを防止。
●すべての4D Clientマシン上の外部エクステンションをすべて強制更新。この機能は4D Serverの自動アプリケーションサービスに対して適用されます(4D Serverドキュメントで説明)。
ネットワークコンポネント
4Dには仮想ネットワークマネージャが装備され、ネットワークプロトコルへの同時アクセスが可能(TCP/IP、ADSP、IPX)。4Dではメモリ上でネットワークをエミュレートできる。たとえば、テストや開発のために一台のマシンでクライアント/サーバのシミュレーションが可能。
●4D Serverと4D Client間のADSP通信を最適化
●IPXとTCPアクセス用にポート番号をカスタマイズ
●タイムアウト管理
ローカライズ
●国特定のOSに対し、ASCII内部マップを採用(たとえば、ギリシャのWindows)。
●国の言語でコマンド名を自動表示(たとえば、英語やドイツ語、フランス語で書かれたアプリケーションを実行)。
●4Dとスクリプトマネージャを一緒に使用する。
下のアプリケーションのローカライズの項を参照。
4Dでは、複数カ国語またはインターナショナルなアプリケーションへのカスタマイズが簡単に行えます。余分な開発を行わずに同じアプリケーションを複数言語で使用できます。
●4Dのテーブルやフィールドはトークンナイズされ、アプリケーションをオープンするのに使用された言語に翻訳されます。
●4Dはビルトインリソース管理を装備しています。したがって、メニューテキスト、メニュー項目、ボタン、オブジェクトフォームをハードコードする代わりに、フォーム内でリソースを参照し、また4D Insiderを使ってストリングリソースを簡単に翻訳できます。
●4D Serverのクライアント/サーバアーキテクチャでは、ローカライズはクライアント側で行われるため、フランスのユーザが本来英語圏のユーザ向けに作られたデータベースにアクセスすることができます。インタフェース管理、メニュー、アラート、コマンドはクライアント側にあるため、同一アプリケーションに複数カ国語のクライアントからアクセスできるのです。各クライアントは特定の言語の特徴をすべて利用することができます。つまり、比較文字列、発音区別文字、ソート順、日付や時間表示フォーマット、電話番号、貨幣記号などです。