SET DATABASE PARAMETER
SET DATABASE PARAMETER ( {aTable ;} selector ; value )
引数 | 型 | 説明 | |
---|---|---|---|
aTable | Table | → | パラメータをセットするテーブル、または 省略時、デフォルトテーブル |
selector | Integer | → | 変更を行うデータベースパラメタのコード |
value | Real, Text | → | パラメタの値 |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
SET DATABASE PARAMETERコマンドを使用して、4Dデータベース内部の様々なパラメーターを変更することができます。
selectorには、変更するデータベースのパラメーターを指定します。4DはDatabase Parametersテーマに定義済の下記のような定数があります。次の表は、各定数とその有効範囲、またその設定が2つの異なるセッションで保持されるかを示しています:
定数 | 型 | 値 | コメント |
---|---|---|---|
4D Server timeout | 倍長整数 | 13 | スコープ: value が正数なら4Dアプリケーション 2セッション間で設定を保持: value が正数ならYes とりうる値: 0 -> 32 767 説明: この引数を使用して、4D Serverのタイムアウトの値を変更することができます。4D Serverのタイムアウトのデフォルト値は、サーバ側の「環境設定」ダイアログボックスの「クライアント-サーバ/接続設定」ページで定義します。 サーバータイムアウトは、クライアントのレスポンスを待つ”認定された”最大の時間を設定します。例えばブロッキングオペレーションを実行中等です。この時間の後は、4D Serverはクライアントから切断します。 セレクタ4D Server Timeoutに より、対応する引数valueの新しいタイムアウト(分単位で指定)を設定できます。この機能は、クライアント側でCPUを占有する、時間がかかる処理を 実行する前に、タイムアウト設定を長くしたい場合は特に便利です。例えば、膨大なページの印刷などは、予期しないタイムアウトになる可能性があります。 2種類のオプションがあります: value引数に正数を渡すと、グローバルかつ永続的なタイムアウトが設定されます。この新しい値はすべてのプロセスに対して適用され、4Dアプリケーションの環境設定に保存されます(環境設定ダイアログボックスで変更した場合と同じ)。value引数に負数を 渡すと、ローカルで一時的なタイムアウトが設定されます。この新しい値は呼び出し元のプロセスに対してのみ適用され(他のプロセスではデフォルトの値を維持)、例えば処理の終了時のように、クライアントが動作していることを示す信号をサーバが受信すると即座に、デフォルト値へリセットされます。このオプションは、4Dプラグインにより開始された時間のかかる処理を管理する際に便利です。“タイムアウトしない”オプションを設定するには、valueに0 を渡します。例1を参照して下さい。 |
4D Remote mode timeout | 倍長整数 | 14 | スコープ(旧式ネットワークレイヤーのみ): value が正数の場合4D アプリケーション 2セッション間で設定を保持: value が正数の場合Yes 説明: 非常に特殊な場合においてのみ使用されるべき定数です。この引数を使用して、4D Serverに接続したリモートの4Dマシンが参照するタイムアウト値を設定できます。リモートモードの4Dが使用するデフォルトのタイムアウト値は、リモートマシン上の環境設定の“クライアント-サーバ/設定”ページで設定されます。 4D Remote Mode Timeout セレクターは旧式ネットワークレイヤーを使用している場合のみ考慮されます。ServerNet レイヤーが有効化されている場合には無視されます。この設定は4D Server Timeout (13) によって完全に管理されています。 |
Port ID | 倍長整数 | 15 | スコープ: 4D ローカル, 4D Server 2セッション間で設定を保持: No 説明: Command SET DATABASE この引数を使用して、ローカルモードの4Dおよび4D Serverによる4D Webサーバが使用するTCPポートをオンザフライで変更することができます。デフォルト値は80で、この値は環境設定ダイアログボックスの“Web/設定”ページで設定できます。TCP Port Numbersテーマの定数をvalue引数に使用できます。 Port IDセレクタは、コンパイルして4D Desktopを組み込んだ4D Webサーバで役立ちます(この場合、デザインモードへのアクセス手段がありません)。TCPポートIDに関する詳細はWebサーバー設定を参照してください。 |
Character set | 倍長整数 | 17 | 説明: 廃止 (互換性のために保持)。HTTPサーバー設定を変更するためにはWEB SET OPTIONとWEB GET OPTIONコマンドを使用してください。 |
Max concurrent Web processes | 倍長整数 | 18 | 説明: 廃止 (互換性のために保持)。HTTPサーバー設定を変更するためにはWEB SET OPTIONとWEB GET OPTIONコマンドを使用してください。 |
Client port ID | 倍長整数 | 22 | スコープ: すべての4Dリモートマシン 2セッション間で設定を保持: Yes とりうる値: セレクタ15参照 説明: このセレクタを使用して、Webサーバとして使用する4Dクライアントマシンの動作パラメタを指定できます。これらのセレクタを用いて指定された値は、 Webサーバとして使用するすべての4D Clientマシンに対して適用されます。特定の4D Clientマシンに対してのみ値を指定したい場合には、4D Clientの環境設定ダイアログボックスを使用してください。 |
Client character set | 倍長整数 | 24 | スコープ: すべての4Dリモートマシン 2セッション間で設定を保持: Yes とりうる値: セレクタ17参照 説明: このセレクタを使用して、Webサーバとして使用する4Dクライアントマシンの動作パラメタを指定できます。これらのセレクタを用いて指定された値は、 Webサーバとして使用するすべての4D Clientマシンに対して適用されます。特定の4D Clientマシンに対してのみ値を指定したい場合には、4D Clientの環境設定ダイアログボックスを使用してください。 |
Client max concurrent Web proc | 倍長整数 | 25 | スコープ: すべての4Dリモートマシン 2セッション間で設定を保持: Yes とりうる値: セレクタ18参照 説明: このセレクタを使用して、Webサーバとして使用する4Dクライアントマシンの動作パラメタを指定できます。これらのセレクタを用いて指定された値は、Webサーバとして使用するすべての4D Clientマシンに対して適用されます。特定の4D Clientマシンに対してのみ値を指定したい場合には、4D Clientの環境設定ダイアログボックスを使用してください。 |
Maximum Web requests size | 倍長整数 | 27 | 説明: 廃止 (互換性のために保持)。HTTPサーバー設定を変更するためにはWEB SET OPTIONとWEB GET OPTIONコマンドを使用してください。 |
4D Server log recording | 倍長整数 | 28 | Scope: 4D Server, 4D リモート 2セッション間で設定を保持: No** とりうる値**: 0 または 1 から X (0 = 記録しない, 1 から X = ファイル名に付加するシーケンス値)。 説明: 4D Serverが受け取る標準的なリクエスト(Webリクエストを除く)の記録を開始または停止します。デフォルト値は0(リクエストを記録しない)です。 サーバマシンが受信した各リクエストをログファイルに記録するよう、4D Serverに指示することができます。このメカニズムが有効になると、データベースストラクチャと同じ階層に2つのログファイルが作成されます。サーバー側では4DRequestsLogServer_X.txt および 4DRequestsLog_ProcessInfoServer_X.txt 、リモート側では4DRequestsLog_X.txt および 4DRequestsLog_ProcessInfo_X.txt on the と名付けられたファイルが作成されます(Xはログのシーケンシャル番号)。ファイルサイズが10MBに達するとそのファイルは閉じられ、インクリメントしたシーケンス番号を使用して新しいファイルが作成されます。もし同じ名前のファイルが存在する場合は置き換えられます。シーケンシャル番号の開始番号を、value引数を使用して指定できます。このテキストファイルにはそれぞれのリクエストに関する様々な情報(時間、プロセス番号、ユーザ、リクエストサイズ、処理時間など)がシンプルな表形式のフォーマットで保存されます。4DRequestLog ファイルのより詳細な情報については、ログファイルの詳細 の章を参照してください。 |
Client Web log recording | 倍長整数 | 30 | スコープ:すべての4Dリモートマシン 2セッション間で設定を保持: Yes とりうる値: 0 = 記録しない (デフォルト), 1 = CLFフォーマットで記録, 2 = DLFフォーマットで記録, 3 = ELFフォーマットで記録, 4 = WLFフォーマットで記録 説明: Command SET DATABASE PARAMETEすべてのクライアントマシンのWebサーバが受け取るWebリクエストの記録を開始または停止します。デフォルト値は0(リクエストを記録しない)です。 このセレクタの動作はセレクタ29と同じです。しかし対象はWebサーバとして使用されるすべての4Dクライアントマシンです。この場合、"logweb.txt"ファイルは4Dクライアントデータベースフォルダ (キャッシュフォルダ) のLogsサブフォルダに作成されます。特定のクライアントマシンにのみ設定を行いたい場合、4Dクライアントの環境設定を使用します。 |
Table sequence number | 倍長整数 | 31 | スコープ:4D アプリケーション 2セッション間で設定を保持: Yes とりうる値: 任意の倍長整数値 説明: Command SET DATABASE PARAMETERこのセレクタは、引数に渡したテーブルのレコードの、カレントのユニーク番号を取得あるいは設定するために使用します。“カレントの数値”とは“最後に使用された数値”を意味します。SET DATABASE PARAMETERコマンドを使用してこの値を変更すると、渡された値+1の番号を使用して次のレコードが作成されます。この新しい番号は、Sequence numberコマンドによって返される、さらにはストラクチャエディタやSQLで自動インクリメントが設定されたフィールドに返される番号です。 デフォルトで、この固有の番号は4Dが設定し、レコードの作成順に対応します。詳細はSequence numberコマンドのドキュメントを参照してください。 |
Debug log recording | 倍長整数 | 34 | スコープ: 4Dアプリケーション 2セッション間で設定を保持: No** 説明**: 4Dプログラミングレベルで起きているイベントの 4DDebugLog[_n].txt ファイルまたは4DDebugLogServer[_n].txt ファイルへのシーケンシャル記録を開始・または停止します(この_n はファイルのセグメント番号を表し、サーバー側でファイルが生成された場合にはServer がファイル名に追加されます)。 2つのモードを利用することができます: - 標準モードではイベントの基本的なビューを提供し、ファイルはストラクチャーファイルと同階層のLogsサブフォルダ内に自動的に置かれます。実行時間はミリ秒で表示され、オペレーション時間が1ミリ秒未満だった場合には"< ms" の値が表示されます。 - タブ分けされたモードでは、追加の情報を提供し、よりコンパクトで、タブ分けされたフォーマットをファイルで使用します。実行時間はマイクロ秒で表示されます。 取りうる値: ビットフィールドを含む倍調整数:値 = bit0(1)+bit1(2)+bit2(4)+bit3(8)+…) - Bit 0 (値 1) ファイルの有効化をリクエスト(nullでない値であればどれでもファイルを有効化します) - Bit 1 (値 2) メソッドとコマンドに対し、引数の呼び出しをリクエスト - Bit 2 (値 4) 新しいタブ分けされたフォーマットを有効化 - Bit 3 (値 8) 各オペレーションのディスクへの即時記録を無効化(デフォルトでは有効)。即時記録は遅いですが、例えばクラッシュの原因をさぐる、などと言った場合はより効果的です。このモードを無効化すると、ファイルのコンテンツは早く生成されます。 - Bit 4 (値 16) プラグインの呼び出しの記録を無効化(デフォルトでは有効)。 - Bit 5 (値 32) メンバーファンクションのログを無効化 例: SET DATABASE PARAMETER (34;1) // v13モードのファイルを有効化、引数は除くがランタイムは有効化 SET DATABASE PARAMETER (34;2) // v13モードのファイルを有効化、引数をリクエスト、ランタイムも有効化 SET DATABASE PARAMETER (34;2+4) // v14フォーマットで有効化、引数をリクエスト、ランタイムも有効化 SET DATABASE PARAMETER (34;0) // ファイルを無効化 以下の方法を使用することで、インタープリタモードでもコンパイルモードでもどのタイプの4Dアプリケーション(4Dの全モード、4D Server、4D Volume Desktop)でも、ファイルに記録される情報が過多にならないようにすることができます: - Log command list (セレクター80)を使用して記録されている4D コマンドを制限するLog command list - Current process debug log recording (セレクター111)を使用してカレントプロセスにおいてのみ制限する。この場合ファイル名にはアルファベット"p"とプロセス番号が追加されます: 4DDebugLog[_pn_n].txt このフォーマットと4DDebugLog ファイルの使用についての詳細な情報については、デザインリファレンスのログファイルの詳細 を参照して下さい。 注: このセレクターはデバッグ目的のためにのみ提供されており、アプリケーションのパフォーマンスに影響しうるため、使用の際には注意が必要です。 |
Client Server port ID | 倍長整数 | 35 | スコープ:データベース 2セッション間で設定を保持: Yes とりうる値: 0~65535 説明: 4D Server が(4D Client に対して)データベースを公開するために使用されるTCPポート番号をプログラムで変更するために使用します。デフォルト値は19813 です。 この値を変更すれば、TCPプロトコルを使用して、複数の4D クライアント/サーバアプリケーションを同じマシンで同時に使用することができます。その場合、それぞれのアプリケーションごとに異なるポート番号を設定します。 公開ポート番号は、ストラクチャファイルに記録されています。ローカルモードの4Dで設定することもできますが、クライアント/サーバ環境でのみ考慮されます。 値を変更した場合、新しい設定が有効になるためには、アプリケーションを再起動する必要があります。 |
HTTPS Port ID | 倍長整数 | 39 | 説明: 廃止 (互換性のために保持)。HTTPサーバー設定を変更するためにはWEB SET OPTIONとWEB GET OPTIONコマンドを使用してください。 |
Client HTTPS port ID | 倍長整数 | 40 | スコープ:すべての4Dリモートマシン 2セッション間で設定を保持: Yes とりうる値: 0 ~ 65535 説明: このセレクタは、クライアントマシンのWebサーバがSSLによるセキュアな接続(HTTPSプロトコル)で使用するTCP ポート番号を、プログラムで変更するために使用できます。デフォルトの値は443(標準ポート番号)です。 このセレクタの動作はセレクタ39と同じですが、Web サーバとして使用されるすべてのクライアントマシンに適用されます。特定のクライアントマシンの設定だけを変更するのであれば、4Dリモートの環境設定ダイアログ画面を使用してください。 |
SQL Autocommit | 倍長整数 | 43 | スコープ:データベース 2セッション間で設定を保持: Yes とりうる値: 0 (無効) または 1 (有効) 説明: SQLの自動コミットモードを有効または無効にするために使用します。デフォルトは 0 (無効モード) です。 自動コミットモードは、データベースの参照整合性を強化するために使用されます。このモードが有効の時、すべてのSELECT, INSERT, UPDATE そして DELETE (SIUD) クエリは、これらがトランザクション内で実行されていない場合、自動でアドホックなトランザクションに含められます。このモードはデータベースの環境設定でも設定できます。 |
SQL Engine case sensitivity | 倍長整数 | 44 | スコープ: データベース** 2セッション間で設定を保持**: Yes** とりうる値**: 0 (大文字小文字を区別しない) または 1 (区別する) 説明: SQLエンジンが文字列比較を行う際に、大文字と小文字の違いを考慮させるかどうかを設定します。 デフォルトで値は1 (大文字小文字を区別する) です。SQLエンジンは文字列比較 (並び替えやクエリ) の際に大文字と小文字とアクセント付き文字を異なる文字として扱います。例えば“ABC”= “ABC”ですが“ABC” # “Abc”であり、"abc" # "âbc"です。SQLエンジンと4Dエンジンの動作をそろえたいなど特定の場合では、大文字と小文字を区別しない文字列比較 (“ABC”=“Abc"="âbc") を使用できます。 警告: このオプションはデータベースのストラクチャーファイルと全てのプロセスを変更するため、パフォーマンス上の観点から、データベースのスタートアップ時にのみ設定することが強く推奨されます。 このオプションはアプリケーション環境設定のCALL SUBFORM CONTAINER で設定できます。 |
Client log recording | 倍長整数 | 45 | スコープ: リモート4Dマシン 2セッション間で設定を保持: No とりうる値: 0 または 1 から X (0 = 記録しない, 1 から X = ファイル名に付加するシーケンス値)。 説明: コマンドを実行した4Dクライアントマシンが実行した標準的なリクエスト(Webリクエストを除く)の記録を開始または停止します。デフォルト値は0(リクエストを記録しない)です。 クライアントマシンが実行したリクエストをログファイルに記録するよう、4Dに指示することができます。このメカニズムが有効になると、クライアントマシンのデータベースのローカルフォルダ内、Logsサブフォルダに2つのログファイルが作成されます。ファイルには"4DRequestsLog_X.txt"と"4DRequestsLog_ProcessInfo_X.txt"(Xはログのシーケンシャル番号)の名前が付けられます。4DRequestsLogファイルサイズが10MBに達するとそのファイルは閉じられ、インクリメントしたシーケンス番号を使用して新しいファイルが作成されます。もし同じ名前のファイルが存在する場合は置き換えられます。シーケンシャル番号の開始番号を、value引数を使用して指定できます。 このテキストファイルにはそれぞれのリクエストに関する様々な情報(時間、プロセス番号、リクエストサイズ、処理時間など)がシンプルな表形式のフォーマットで保存されます。4DRequestsLogについての詳細な情報については、ログファイルの詳細 の章を参照してください。 |
Query by formula on server | 倍長整数 | 46 | スコープ: カレントテーブルおよびプロセス 2セッション間で設定を保持: No とりうる値: 0 (データベース設定を使用), 1 (クライアント上で実行) または 2 (サーバ上で実行) 説明: 引数に渡されたtableに対して実行されるQUERY BY FORMULAやQUERY SELECTION BY FORMULAコマンドの実行場所。 クライアント/サーバモードでデータベースを使用するとき、フォーミュラを使用したクエリをサーバ上またはクライアント上で実行させることができます: 4D v11 SQLで作成されたデータベースでは、これらのコマンドはサーバ上で実行されます。変換されたデータベースでは、これらのコマンドは、以前のバージョンの4Dと同様、クライアントマシン上で実行されます。変換されたデータベースでは、環境設定のアプリケーション/互換性ページで、これらのコマンドの実行場所をグローバルに変更できます。この実行場所の違いは、アプリケーションのパフォーマンス (通常サーバ上で実行したほうが早い) だけでなく、プログラミングにも影響します。実際フォーミュラの部品の値 (特にメソッドから呼ばれる変数) は、実行コンテキストにより異なります。このセレクタを使用して開発者は、アプリケーションの動作を適応させられます。 value 引数に0を渡すと、フォーミュラを使用するクエリの実行場所は、データベースの設定に基づきます: 4D v11 SQLで作成されたデータベースでは、これらのコマンドはサーバ上で実行されます。変換されたデータベースでは、データベース環境設定に基づき、クライアントマシンまたはサーバマシンで実行されます。valueに1または2を渡すと、これらのコマンドの実行場所をクライアントマシンまたはサーバマシンに強制できます。 例題2を参照してください。 Note: "SQLタイプ"のJOINを有効にしたい場合 (QUERY BY FORMULA Joins (49) セレクタ参照) は、フォーミュラがレコードにアクセスすることができるよう、常にフォーミュラをサーバ上で実行しなければなりません。このコンテキストでは、フォーミュラはいかなるメソッド呼び出しも含んではいけないことに注意してください。そうでない場合、自動でリモートマシンでの実行に切り替わります。 |
Order by formula on server | 倍長整数 | 47 | スコープ:カレントテーブルおよびプロセス 2セッション間で設定を保持: No とりうる値: 0 (データベース設定を使用), 1 (クライアント上で実行) または 2 (サーバ上で実行) 説明: 引数に渡されたtableに対して実行されるORDER BY FORMULAコマンドの実行場所。 クライアント/サーバモードでデータベースを使用するとき、ORDER BY FORMULAコマンドをサーバ上またはクライアント上で実行させることができます。このセレクタを使用して、このコマンドの実行場所 (サーバまたはクライアント) を指定できます。このモードはデータベース環境設定でも設定できます。詳細はセレクタ46、Query By Formula On Serverの説明を参照してください。 Note: "SQLタイプ"のJOINを有効にしたい場合 (QUERY BY FORMULA Joins (49) セレクタ参照) は、フォーミュラがレコードにアクセスすることができるよう、常にフォーミュラをサーバ上で実行しなければなりません。このコンテキストでは、フォーミュ ラはいかなるメソッド呼び出しも含んではいけないことに注意してください。そうでない場合、自動でリモートマシンでの実行に切り替わります。 |
Auto synchro resources folder | 倍長整数 | 48 | スコープ:4D リモートマシン 2セッション間で設定を保持: No とりうる値: 0 (同期しない), 1 (自動同期) または2 (確認する). 説明: このコマンドを実行する4DクライアントマシンのResourcesフォルダの動的な同期モード。 サーバ上のResourcesフォルダの内容が更新されたり、(リソースエクスプローラや SET DATABASE LOCALIZATION コマンドで) ユーザが同期をリクエストすると、サーバは接続されたユーザに通知を行います。 クライアント側では3つの同期モードを選択できます。Auto Synchro Resources Folderセレクタはカレントセッションでクライアントマシンが使用するモードを指定できます: 0 (デフォルト値): 動的な同期を行わない (同期リクエストは無視される)1: 自動の動的同期2: クライアントマシンにダイアログを表示し、同期の受け入れ回避を確認するアプリケーションの環境設定で、同期モードをグローバルに設定できます。 |
Query by formula joins | 倍長整数 | 49 | スコープ:カレントプロセス 2セッション間で設定を保持: No とりうる値: 0 (データベース設定を使用), 1 (常に自動リレーションを使用) または 2 (可能ならSQL JOINを使用) 説明: "SQL JOIN"の利用に関連する、QUERY BY FORMULAとQUERY SELECTION BY FORMULAコマンドの動作モード。 4D v11 SQLのバージョン11.2以降で作成されたデータベースでは、これらのコマンドはSQL JOINモデルに基づくJOINを実行します。このメカニズムを使用して、(以前のバージョンでは必要な条件だった) 自動リレーションで接続されていない他のテーブルに対して実行されたクエリに基づき、テーブルのセレクションを変更できます。 QUERY BY FORMULA Joinsセレクタで、カレントプロセスの、フォーミュラによるクエリの動作モードを指定できます: 0: データベースの現在の設定を使用する (デフォルト値)。4D v11 SQLのバージョン11.2以降で作成されたデータベースでは、"SQL JOIN"はフォーミュラによるクエリに対し常に有効です。変換されたデータベースでは、互換性のためデフォルトでこのメカニズムは有効になっていません。しかし環境設定で実装できます。1: 常に自動リレーションを使用 (= 以前のバージョンの4Dの動作)。このモードでは、他のテーブルに対して行われたクエリに基づきテーブルのセレクションを作成するためには、リレーションが必要です。4Dは"SQL JOIN"を行いません。2: 可能であればSQL JOINを使用 (= 4D v11 SQLのバージョン11.2以降で作成されたデータベースのデフォルト動作)。このモードでは、フォーミュラが適合する限り、4Dはフォーミュラによるクエリに"SQL JOIN"を使用します (2つの例外があります。QUERY BY FORMULAやQUERY SELECTION BY FORMULA コマンドの説明を参照)。Note: 4Dのリモートモードにおいて、"SQL JOIN"はフォーミュラがサーバ上で実行されているときにのみ使用できます (レコードへのアクセスが必要なため)。フォーミュラの実行場所を設定するには、セレクタ46と47を参照してください。 |
HTTP compression level | 倍長整数 | 50 | 説明: 廃止 (互換性のために保持)。HTTPサーバー設定を変更するためにはWEB SET OPTIONとWEB GET OPTIONコマンドを使用してください。 |
HTTP compression threshold | 倍長整数 | 51 | 説明: 廃止 (互換性のために保持)。HTTPサーバー設定を変更するためにはWEB SET OPTIONとWEB GET OPTIONコマンドを使用してください。 |
Server base process stack size | 倍長整数 | 53 | スコープ: 4D Server 2セッション間で設定を保持: No とりうる値:正の倍長整数 説明: サーバ上のプリエンプティブシステムプロセス毎に割り当てるスタックのサイズ (バイト単位) です。デフォルトでの値はシステムによって決定されます。 プ リエンプティブシステムプロセスはメインの4D クライアントプロセスを制御するためにロードされます。デフォルトでそれぞれのプリエンプティブプロセスに割り当てられるサイズはおよその場合最適なサイ ズですが、何百ものプロセスが作成されるようなケースではこのサイズが適切かどうか検討する必要が出てくるかもしれません。 データベースが実行する処理がそれを許す限り、最適化の目的でこのサイズを大幅に減らすことができます ( 例えばデータベースで大量のレコードの並び替えなどを行わない場合)。512 や256 KB でさえも設定可能です。スタックサイズを小さくしすぎることは致命的であり、4D Server の動作に害を及ぼすことになるので注意してください。このパラメタの設定は注意を持って行い、データベースの利用状況 (レコード数や行う処理など) を考慮しながら行わなければなりません。 このパラメタの設定を行うには、On Server Startupデータベースメソッド などにおいてサーバ上でコマンドが実行されなければなりません。 |
Idle connections timeout | 倍長整数 | 54 | スコープ: 値が負数でないなら4Dアプリケーション 2セッション間で設定を保持: No とりうる値: 持続時間を秒で表す値。値は正数 (新規接続) または負数 (既存の接続)をとることができます。デフォルト値は20です。 説明: この引数を使用して、4DデータベースエンジンとSQLエンジン両方への動きのない接続の最大時間 (タイムアウト) を設定できます。またServerNet (新しいネットワークレイヤー)モードにおいては4Dアプリケーションサーバーへの接続のタイムアウトも設定します。 動作していない接続がこの制限時間に達すると、接続は自動でスタンバイ状態に置かれます。つまりクライアント/サーバセッションがフリーズされ、ネットワー クソケットが閉じられます。サーバー管理ウィンドウでは、ユーザープロセスの状態は"延期"と表示されます。この動作はユーザに対し完全に透過的です。スタンバイ状態の接続でリクエストが開始されると、ソケットが自動で再び開かれ、クライアント/サーバセッションが再び有効になります。 この設定によりサーバのリソースを節約できます。スタンバイ状態の接続はソケットを 閉じ、サーバ上のプロセスを解放します。他方これにより、ファイアウォールがアイドルなソケットを閉じてしまうことに伴い接続が失われることを避けること ができます。このためには、アイドル接続のタイムアウト値はファイアウォールのタイムアウト値よりも小さくなくてはなりません。 valueに正数を渡すと、設定はすべてのプロセスのすべての新規接続に適用されます。負数を渡すと、設定はカレントプロセスの開かれた接続に適用されます。0を渡すと、アイドル接続のタイムアウトは行われません。 このパラメターはクライアント側で設定する必要があります。通常この値を変更する必要はありません。 |
PHP interpreter IP address | 倍長整数 | 55 | スコープ: 4D アプリケーション 2セッション間で設定を保持: No** 値**: IPv4 型にフォーマットされた文字列(例 "127.0.0.1") あるいはIPv6 型にフォーマットされた文字列(例 "2001:0db8:0000:0000:0000:ff00:0042:8329") 説明: FastCGI を経由してPHPインタプリタと通信を行うために、4D がローカルで使用するIP アドレス。デフォルトで値は"127.0.0.1" です(IPv5 フォーマットのアドレスは4D v16 R4 以降でサポートされます)。このアドレスは4D が配置されているマシンに対応しなければなりません。このパラメタはデータベース設定を使用してすべてのマシン用にグローバルに設定できます。 PHPインタプリタに関する詳細はDesign Referenceマニュアルを参照してください。 |
PHP interpreter port | 倍長整数 | 56 | スコープ:4D アプリケーション 2セッション間で設定を保持: No 値: 正の倍長整数値。デフォルト値は8002。 説明: 4DのPHPインタプリタが使用するTCPポート番号。データベース設定でこの値をすべてのマシン用にグローバルに変更できます。PHPインタープリタに関する詳細はDesign Reference マニュアルを参照してください。 |
SSL cipher list | 倍長整数 | 64 | スコープ: 4Dアプリケーション 2セッション間で設定を保持: No とりうる値: コロンで区切られた一連の文字列 (例 "ECDHE-RSA-AES128-....") 説明: 安全なプロトコルのために4Dが使用する暗号リストです。このリストを使用して4Dによって実装された暗号化アルゴリズムの順位を変更することができます。例えば、以下の文字列を value 引数に渡す事ができます:"HIGH:!aNULL:!MD5:!3DES:!CAMELLIA:!AES128:!RSA:!DH:!RC4". 暗号リストのシンタックスの完全な詳細については、OpenSSL の暗号ページ のサイト を参照して下さい。 この設定はメインWebサーバー(ただしWebサーバーオブジェクトは除く)、SQLサーバー、クライアント/サーバー接続、そしてHTTPクライアントと、安全なプロトコルを使用する4D コマンドの全てに対して適用されます。この変更は一時的な物です(つまり異なるセッション間で設定は保持されません)。 暗号リストが変更された場合、新しい設定が使用されるようにするためには関係するサーバーを再起動する必要があります。 暗号リストを (SLIファイルに恒久的に格納された) デフォルト値に再設定するには、value引数に空の文字列 ("") を渡して SET DATABASE PARAMETER コマンドを呼び出します。 注: Get database parameter コマンドで暗号リストはオプションの stringValue 引数に返され、戻り値は常に0となります。 |
Cache unload minimum size | 倍長整数 | 66 | スコープ:4Dアプリケーション 2セッション間で設定を保持: No とりうる値: 1より大きい正の倍長整数 説明: エンジンがオブジェクトをデータベースキャッシュに配置する際に空き空間を作成する必要が出た場合、データベースキャッシュからリリースするメモリの最小サイズ (バイト単位)。 このセレクタの目的はキャッシュからデータをリリースする時間を減らし、よりパフォーマンスを得ることにあります。キャッシュのサイズやデータベース中で処理されるデータのブロックサイズに応じてこの値を変更できます。 このセレクタが使用されないとデフォルトで、4Dは空間が必要になった時最低10%のキャッシュをアンロードします。 |
Direct2D status | 倍長整数 | 69 | スコープ: 4Dアプリケーション 2セッション間で設定を保持: No 説明: WindowsにおけるDirect2D実装のアクティベーションモード 取りうる値: 以下の定数のいずれか (デフォルトでモード3): Direct2D Disabled (0): Direct2Dモードは無効であり、データベースは過去のモード (GDI/GDIPlus) で動作する。 Direct2D Hardware (1): 4Dアプリケーション全体でDirect2Dグラフィックハードウェアコンテキストを使用する。このコンテキストが利用できない場合、Direct2Dグ ラフィックソフトウェアコンテキストを使用する。 Direct2D Software (3) (デフォルトモード): Windows 7以降、4Dアプリケーション全体でDirect2Dグラフィックソフトウェアコンテキストを利用。 互換性に関する注意: このセレクターはデバッグ目的のためだけに提供されています。4D の複数の機能がDirect2D に依存しているため、配布されたアプリケーションでは無効化してはいけません。配布されたアプリケーションではデフォルトモード (Direct2D Software) のみが許可されます。 |
Direct2D get active status | 倍長整数 | 74 | 注: このセレクターはGet database parameterコマンドでのみ使用することができ、設定することはできません。 説明: WindowsにおいてDirect2Dのアクティブな実装を返します。 取りうる値: 0, 1, 2, 3, 4 または 5 (セレクター69の値参照)。返される値はDirect2Dが利用可能かどうか、およびハードウェア、OSによってサポートされるDirec2Dの品質に基づきます。 例えば以下のコードを実行した場合、 SET DATABASE PARAMETER(Direct2D status;Direct2D Hardware) $mode:=Get database parameter(Direct2D get active status) - Windows 7以降、システムがDirect2D互換のハードウェアを検知すると、$modeに1が設定されます。そうでなければ$modeは3に設定されます (ソフトウェアコンテキスト)。 - Windows Vistaでは、システムがDirect2D互換のハードウェアを検知すると、$modeに1が設定されます。そうでなければ$modeは0に設定されます (Direct2D無効)。 - Windows XPでは、$modeは常に0です (Direct2D非互換)。 |
Diagnostic log recording | 倍長整数 | 79 | スコープ: 4Dアプリケーション 2セッション間で設定を保持: No 取りうる値: 0 または 1 (0 = 記録しない, 1 = 記録する) 説明: 4D診断ファイルの記録を開始または停止する。デフォルトの値は0(記録しない)です。 4Dは診断ファイルの中に内部的なアプリケーション処理に関連するイベントを継続的に記録することができます。このファイルに含まれる情報は4Dアプリケーション開発のために使用され、4D社の技術サポート担当により解析されます。このセレクターに1を渡すと、データベースのLogs フォルダ内に診断ファイルが自動的に作成されます(またはすでに存在する場合には開かれます)。ファイルには4DDiagnosticLog_X.txt (あるいはサーバー側で生成された場合には 4DDiagnosticLogServer_X.txt) という名前が付けられます。このファイルのサイズが10MBに達するとそのファイルは閉じられ、DatabaseName_N.txtが生成されます (Nは連番)。 LOG EVENTコマンドを使用してカスタム情報をこのファイルに書き込むこともできます。 |
Log command list | 倍長整数 | 80 | スコープ: 4D アプリケーション 2セッション間で設定を保持: No 取りうる値: 記録する4Dコマンドの番号リスト。型は文字列で各コマンド番号をセミコロンで区切ります。"all"を渡すとすべてのコマンドが記録され、"" (空の文字列) を渡すとなにも記録されません。 説明: デバッグファイルに記録する4Dコマンドのリスト (セレクター 34, Debug Log Recording参照)。デフォルトではすべての4Dコマンドが記録されます。 このセレクターを使用すれば、記録に残したい4Dコマンドを指定することで、デバッグファイルに保存される情報の量を制限することができます。例えば以下のようにコードを記述できます: SET DATABASE PARAMETER(Log command list;"277;341") // QUERY および QUERY SELECTION コマンドのみを記録する |
Spellchecker | 倍長整数 | 81 | スコープ: 4D アプリケーション** 2セッション間で設定を保持**: No とりうる値: 0 (default) = macOSのシステムのスペルチェッカー(ハンスペルは無効化されます), 1 = ハンスペルスペルチェッカー有効化** 説明**: macOS環境下においてハンスペルスペルチェッカーを有効化します。デフォルトでは、このプラットフォームではシステムのスペルチェッカーが有効化されています。例えば、クロスプラットフォームアプリケーションのインターフェースを統一するためにハンスペルを使用したいという場面があるかもしれません(Windowsでは、ハンスペルチェッカーのみが動作します)。詳細な情報に関しては、スペルチェックを参照して下さい。 |
Dates inside objects | 倍長整数 | 85 | スコープ: カレントプロセス 2セッション間で設定を保持: No 取り得る値: String type without time zone (0), String type with time zone (1), Date type (2) (デフォルト) 説明: 日付がオブジェクトにどのように保存されるかを定義するとともに、どのようにJSON に読み込み/書き出しされるかも定義します。 セレクターの値がDate type (4D v17以降で作成されたデータベースにおけるデフォルト)のとき、4D 日付はオブジェクト内で日付型として保存され、ローカルの日付設定に準拠します。JSON フォーマットに変換された時、日付属性は、時間を含まない文字列へと変換されます(注: この設定は、データベース設定のにある"オブジェクト内ではISO日付フォーマットの代わりに日付型を使用"オプションによって設定することができます)。 セレクターにを渡した場合、4D 日付はローカルなタイムゾーンを考慮に入れつつISO 文字列に変換されます。例えば、例えば、23/08/2013という日付の変 換を、フランスのサマータイム(GMT+2)にて実行した場合、JSONフォーマットの"2013-08-22T22:00:00Z"という結 果が返されます。この原理はJavaScriptの標準のオペレーションに従うものです。これは異なるタイムゾーンにいる人にJSON日付の値を 送る場合には、エラーの原因となりかねません。例えば、Selection to JSONを使ってフランスでエクスポートされたテーブルをJSON TO SELECTION を使用してアメリカで再インポートする、というような場合です。日付の値は、デフォルトではそれぞれのタイムゾーンにおいて再変換 されるため、データベース内に保存された値は異なってしまいます。こういった場合には、このセレクターにString type without time zoneを渡す事によって、タイムゾーンを考慮しないよ うに日付の変換モードを変更することができます。すると、23/08/2013という日付を変換した場合に は、"2013-08-23T00:00:00Z"という値を返すようになります。 |
Diagnostic log level | 倍長整数 | 86 | スコープ: 4D アプリケーション** ** 異なるセッション間で設定を保持: No** ** 説明: 診断ログが有効化された際に、そこに含まれるメッセージのレベル(Diagnostic log recording セレクターを参照)。各レベルは診断メッセージのカテゴリを指定し、それより重要なカテゴリのメッセージも自動的に含まれます。カテゴリの詳細については、developer.4d.com 上のDiagnostic log levels の章を参照してください。 取りうる値: 以下の定数のいづれか(デフォルトは Log info ): Log trace: ERROR、WARN、INFO、DEBUG、TRACE を有効化します(最も詳細なレベル) Log debug: ERROR、WARN、INFO、DEBUG を有効化します Log info: ERROR、WARN、INFO を有効化します(デフォルト) Log warn: ERROR、WARN を有効化します Log error: ERROR を有効化します(最も簡略なレベル) |
Use legacy network layer | 倍長整数 | 87 | スコープ: 4D ローカル、4D Server 異なるセッション間で値を保持: Yes 詳細: クライアント/サーバー間の通信のネットワークレイヤーのカレントの状態を設定・取得します。旧式ネットワークレイヤーは4D v14 R5以降廃止予定となり、お使いのアプリケーションにおいてServerNet ネットワークレイヤーへと積極的に置き換えられてい行くべきです。ServerNet は、将来のネットワークの進化の恩恵を受けるために、今後の4Dのリリースの中で必須要項となって行きます。互換性の理由から、既存のアプリケーションの速やかな移行をサポートするために、旧式のネットワークレイヤーは引き続きサポートされます(v14 R5以前のリリースから変換されたアプリケーションにおいてはデフォルトで旧式ネットワークレイヤーが使用されます)。クライアント/サーバー通信において旧式ネットワークレイヤーを使用するためにはこの引数に1を渡します(ServerNet が無効化されます)。0を渡すと旧式ネットワークレイヤーが無効化されます(そしてServerNet が使用されます)。 このプロパティはデータベース設定の互換性ページ の"旧式ネットワークレイヤー"オプションを使用することによっても設定できます(ネットワーク/クライアント-サーバー通信参照)。この章では、移行戦略についての議論を読むこともできます。ServerNet の速やかな有効化が推奨されます。 この引数が有効になるためには、アプリケーションを再起動する必要があります。OS X版の4D Server 64-bit 版においてはServerNet のみをサポートするため、このオプションはご利用いただけません(常に0を返します)。 取り得る値: 0 または 1 (0 = 旧式ネットワークレイヤーを使用しない、1 = 旧式ネットワークレイヤーを使用する) デフォルトの値: 4D v14 R5以降で作成されたデータベースにおいては0、4D v14 R4以前のものから変換されたデータベースにおいては1 |
SQL Server Port ID | 倍長整数 | 88 | スコープ: 4D ローカル、4D Server 2セッション間で設定を保持: Yes 説明: 4Dローカル、または4D Server の統合されたSQLサーバーで使用されるTCPポート番号を取得、または設定します。デフォルトの値は19812です。このセレクターが設定されると、データベース設定は更新されます。TCPポート番号はデータベース設定ダイアログボックスの"SQL"ページにおいても設定可能です。 とりうる値: 0 から 65535 デフォルト値: 19812 |
Circular log limitation | 倍長整数 | 90 | スコープ: 4Dローカル、4D Server 異なるセッション間で値を保持: No** 取りうる値**: 任意の整数値、0 = 全てのログを保持** 詳細**: 各タイプのロゴのローテーションに保存するファイル数の最大値。デフォルトでは、直近の50 ファイルが保持されます。X という値を渡した場合、直近のX 個のファイルのみが保持され、最も古いファイルは新しいファイルが作成されたときに自動的に削除されます。この設定は全てのログファイルに対して適用されます:リクエストログ(セレクター28と45)、デバッグログ(セレクター34)、イベントログ(セレクター79)、Web ログ(WEB SET OPTIONコマンドのセレクター29と84)、などです。 |
Number of formulas in cache | 倍長整数 | 92 | スコープ: 4Dアプリケーション 異なるセッション間で保持: No 取りうる値: 正の倍長整数 デフォルト値: 0 (キャッシュなし) 詳細: フォーミュラのキャッシュに保存されるフォーミュラの最大数を設定あるいは取得します。これはEXECUTE FORMULAコマンドで使用されます。この上限は全てのプロセスに適用されますが、各プロセスにはそれぞれ独自のフォーミュラ用キャッシュがあります。フォーミュラをキャッシュすると、それぞれのフォーミュラはこの場合1度しかトークン化されないため、コンパイル済みモードでのEXECUTE FORMULAコマンドの実行が速くなります。キャッシュ値を変化させると、例え新しいサイズが以前のものより大きくても、既存の中身は全てリセットされます。キャッシュ内のフォーミュラ数が上限値に達すると、その後新しく実行されたフォーミュラはキャッシュ内の一番古いものを消去します(FIFOモード)。この引数は、コンパイルされたデータベース、あるいはコンパイルされたコンポーネントでのみ考慮されます。 |
OpenSSL version | 倍長整数 | 94 | スコープ: 4D マシン全体* * 2セッション間で設定を保持: No 説明: マシン上で使用されているOpenSSL ライブラリーのバージョン番号を返します(読み込みのみ) |
Cache flush periodicity | 倍長整数 | 95 | スコープ: 4Dローカル、4D Server 異なるセッション間で値を保持: No 取りうる値: 倍長整数 > 1 (秒) 詳細: 秒単位で指定された、キャッシュ保存頻度を取得あるいは設定します。この値を変更すると、データベース設定のXML DECODE内のキャッシュを保存: X秒毎オプションをセッション中の間上書きします(これはデータベース設定には保存されません)。 |
Remote connection sleep timeout | 倍長整数 | 98 | スコープ: 4D Server アプリケーション 2セッション間で設定を保持: No 取り得る値: 正の倍長整数 説明: カレントのリモート接続のスリープタイムアウトまでの秒数。デフォルトでは値は172800(48時間)。 このスリープタイムアウトは4Dリモートアプリケーションを実行しているマシンがスリープモードに切り替わったあとに適用されます。この場合、マシンのセッションは4D Server によって維持されます( 機能の詳細をご覧下さい)。4D Server はスリープしているリモート4D がスリープのタイムアウトを超過していないかを5分ごとにチェックし、超過していた場合にはマシンをドロップさせます。そのため、最大限許可されるスリープタイムは、カレントのスリープタイムアウト + 300 秒です。ロックされたレコードやライセンスをより頻繁にリリースさせるためなどの特定の場合には、このスリープタイムアウトを変更した方がいい場合があります。 |
Tips enabled | 倍長整数 | 101 | スコープ: 4D アプリケーション 異なるセッション間で値を保持: No 取りうる値: 0 = tips無効化、1 = tips有効化(デフォルト) 詳細: 4DアプリケーションのTipsのカレントの表示状態を設定あるいは取得します。デフォルトでは、Tipsは有効化されています。 この引数は全ての4DTipsに影響するという点に注意してください。つまり、フォームヘルプメッセージとデザインモードのエディターTipsに影響します。 |
Tips delay | 倍長整数 | 102 | スコープ: 4Dアプリケーション 異なるセッション間で値を保持: No 取りうる値: 倍調整数 >= 0 (ティック) 詳細: マウスカーソルがヘルプメッセージが関連づけられたオブジェクト内で停止してからTipsが表示されるまでの遅延時間です。値はティック(1/60秒)単位で表現されます。デフォルトの値は45ティック(=0.75秒)です。 |
Tips duration | 倍長整数 | 103 | スコープ: 4Dアプリケーション 異なるセッション間で値を保持: No 取りうる値: 倍調整数 >= 60 (ティック) 詳細: Tipsの最大表示時間です。値はティック(1/60秒)単位で表現されます。デフォルトの値は720ティック(=12秒)です。 |
Min TLS version | 倍長整数 | 105 | スコープ: 4D Server、4D Web サーバーおよび4D SQL サーバー 異なるセッション間で値を保持: No 詳細: Transport Layer Security (TLS) レベルを指定するのに使用します。これはデータ暗号化とアプリケーションとサーバー間での認証を可能にします。これによって定義された最小値を下回るバージョンしかサポートしないクライアントからの接続は拒否されます。この設定はネットワークレイヤー全体に適用されます。変更した後にその新しい値を使用するためには、サーバーを再起動する必要があります。 デフォルトの値: TLSv1_3 取りうる値: TLSv1_2 (TLS 1.2、2008年に導入) TLSv1_3 (TLS 1.3、2018年に導入) 注: - 4D Internet Commands プラグインは異るネットワークレイヤーを使用するため、ここのセレクターは4DICのTLSバージョンには影響しません。 - TLS を旧式ネットワークレイヤーに適用しても反映されません。 |
User param value | 倍長整数 | 108 | スコープ: 4D スタンドアロン、4D Server 2セッション間で値を保持: No 取りうる値: 任意のカスタムの文字列 説明: 4D アプリケーションが再起動される際に、ひとつのセッションから次のセッションへと渡されるカスタムの文字列です。このセレクターは異なる引数を使用してアプリケーションを再起動する必要がある、自動化されたユニットテストなどのコンテキストで有用です。SET DATABASE PARAMETER で使用された場合、手動で、あるいはOPEN DATABASE(*)、 OPEN DATA FILE、 または RESTART 4D コマンドを使用して4D が再起動したあとに開かれるデータベースで利用可能となる新しい値を定義します。Get database parameter で使用された場合、コマンドライン(コマンドラインインターフェース 参照)、4DLink ファイル(4DLinkファイルを使用する 参照)、あるいは前のセッションでのSET DATABASE PARAMETER への呼び出しなどを使用して定義された、現在利用可能なユーザー引数値を取得します。(*) SET DATABASE PARAMETERがUser param value を設定した後に、OPEN DATABASEにuser-param xml 属性を含む.4DLink ファイル渡して呼び出した場合、4D はSET DATABASE PARAMETERで提供された引数のみを考慮します。 |
Times inside objects | 倍長整数 | 109 | スコープ: 4D ローカル、4D Server (全てのプロセス) 異なるセッション間で値を保持: No 取りうる値: Times in seconds (0) (デフォルト)、 Times in milliseconds (1) 詳細: オブジェクトプロパティ内およびコレクション要素内で時間値がどのように変換され保存されるかを定義するとともに、JSONおよびWeb エリアへの読込/書出の方法を定義します。デフォルトでは、4D v17 以降、時間はオブジェクト内では秒数として変換・保管されます。 以前のリリースでは、時間値はこれらのコンテキストにおいてはミリ秒数として変換・保管されていました。このセレクターを使用することで、必要であれば以前の設定に戻すことで、移行がスムーズになります。 注: ORDA メソッドとSQL エンジンはこの設定を無視し、時間値は常に秒数であるとみなします。 |
SMTP Log | 倍長整数 | 110 | スコープ: 4D ローカル、4D Server 異なるセッション間で値を保持: しない** 取りうる値**: 0 あるいは1 からX まで(0 = 記録しない、1 から X = ファイル名に追加されるシーケンシャルな数字)。デフォルトでは、値は0(SMTP 通信は記録されない)です。 説明: transporter オブジェクトがtransporter.send( ) または SMTP_transporter.checkConnection( ) を通して処理される際、4D とSMTP サーバー間の通信の記録を開始、あるいは停止します。デフォルトでは、値は0です(通信は記録されない)。このログが有効化されると、データベースのLogs フォルダ内にログファイルが作成されます。ファイル名は4DSMTPLog_X.txt で、このX はログのシーケンシャルな番号です。4DSMTPLog のファイルのサイズが10MB に達すると、そのファイルは閉じられて新しいファイルが生成され、シーケンシャルな番号は数字がインクリメントされます。同じ名前のファイルが既に存在していた場合、そのファイルは直接上書きされます。value 引数を使用してシーケンスの開始番号を設定することができます。デフォルトでは全てのファイルが残されますが、Circular log limitation パラメータを使用することで保存しておくファイルの数を管理することができます。 4DSMTPLog_X.txt ファイルの詳細な情報については、ログファイルの詳細 の章を参照してください。 |
Current process debug log recording | 倍長整数 | 111 | スコープ: 4D アプリケーション 異なるセッション間で値を保持: No 詳細: カレントプロセスにおけるプログラミングイベントの、別のログファイルへのシーケンシャルな記録を開始または停止します。このログはDebug log recording (セレクター34)に似ていますが、こちらはカレントプロセスにのみを対象とします。ログファイル名はアルファベットの"p"とプロセス番号を含みます: 4DDebugLog[_pN_n].txt ここでのNはプロセスの固有のIDです。 このフォーマットと4DDebugLog ファイルの使用についての詳細な情報については、デザインリファレンスのログファイルの詳細 を参照してください。 注: このセレクターはデバッグ目的のためだけに提供されており、使用する際には注意が必要です。特に、アプリケーションのパフォーマンスに影響しうるため、製品で使用してはいけません。 Debug log recording および Current process debug log recording セレクターは同時に併用することができ、その場合にはメインのログファイルにはカレントプロセスのアクションは記録されません。 |
Is current database a project | 倍長整数 | 112 | 注: このセレクターはGet database parameter コマンドでのみ使用可能で、その値を設定することはできません。 スコープ: 4D アプリケーション** 詳細**: カレントのデータベースアーキテクチャーがプロジェクトモードなら1を、それ以外の場合には0を返します。詳細な情報については、データベースのプロジェクトモードとバイナリーモード の章を参照してください。 |
Is host database a project | 倍長整数 | 113 | 注: このセレクターはGet database parameter コマンドでのみ使用可能で、その値を設定することはできません。 スコープ: 4D アプリケーション** 詳細**: ホストデータベースアーキテクチャーがプロジェクトモードなら1を、それ以外の場合には0を返します。詳細な情報については、データベースのプロジェクトモードとバイナリーモード の章を参照してください。 |
Libldap version | 倍長整数 | 114 | スコープ: カレント4D マシン 異なるセッション間で値を保持: No 詳細: カレントマシン上の4D アプリケーション内のLDAP ライブラリーのバージョン番号を返します(読み出し専用) |
Libsasl version | 倍長整数 | 115 | スコープ: カレント4D マシン** 異なるセッション間で値を保持**: No** 詳細**: カレントマシン上の4D アプリケーション内のSASL ライブラリーのバージョン番号を返します(読み出し専用) |
POP3 Log | 倍長整数 | 116 | スコープ: 4D ローカル、4D Server 2セッション間で設定を保持: No 取りうる値: 0 または1からXまでの数字(0= 記録を取らない、1からX=シーケンシャルな数字、ファイル名に追加される)。デフォルトでは、値は0です(POP3通信は記録されません)。 説明: トランスポーターオブジェクトがPOP3_transporter.getMail( ) または *POP3_transporter.checkConnection( )*で処理されたとき、4D とPOP3 サーバー間の通信の記録を開始または停止します。デフォルトでは値は0 です(通信は記録されません)。この機構か有効化されている時、データベースのLogs フォルダにログファイルが作成されます。ファイル名は4DPOP3Log_X.txt という形式となっており、X はログのシーケンシャル番号です。4DPOP3Log のサイズが10MBに到達すると、そのファイルは閉じられて新しいファイルが生成され、シーケンシャル番号は1つ増加します。同じ名前のファイルが既に存在する場合、それは上書きされます。シーケンシャル番号の開始番号を、value 引数を用いて指定することができます。デフォルトでは全てのファイルが保持されますが、Circular log limitation 定数を使用することで残すファイルの数を制限することもできます。 4DPOP3Log_X.txt ファイルの詳細な情報については、ログファイルの詳細 の章を参照してください。 |
Is host database writable | 倍長整数 | 117 | 注: このセレクターはGet database parameter コマンドでしか使用できず、この値を設定することはできません。 スコープ: 4D アプリケーション 詳細: ホストのプロジェクトファイル/ストラクチャーが書き込み可能なら1を、読み出し専用なら0を返します。 |
IMAP Log | 倍長整数 | 119 | スコープ: 4D ローカル、4D Server 異なるセッション間で値を保持: No 取りうる値: 0 または1 から X(0= 記録しない、1からX= シーケンシャル番号、ファイル名に追加される)。デフォルトでは値は0 です(IMAP の交換は記録されない)。 詳細: transporter オブジェクトがIMAP_transporter.getMail( ) または IMAP_transporter.checkConnection( ) で処理される際の4D とIMAP サーバーとの間の通信記録を開始または停止します。デフォルトでは、値は0です(通信は記録されません)。この機構が有効化されている場合、ログファイルがデータベースのLogフォルダに作成されます。ファイルは4DIMAPLog_X.txt と名前がつけられ、このX はログのシーケンシャル番号です。ファイルのサイズが10MB に到達すると、ファイルは閉じられ、インクリメントされたシーケンシャル番号を持った新しいファイルが生成されます。同じ名前のファイルが既に存在する場合、それは直接置き換えられます。value 引数を使用するとシーケンス番号の開始番号を設定することができます。デフォルトで、全てのファイルは保持されますが、Circular log limitation 引数を使用することで保持するファイルの数をコントロールすることができます。 ファイルの詳細については、ログファイルの詳細 の章を参照してください。 |
Libzip version | 倍長整数 | 120 | スコープ: カレントの4D マシン** 2セッション間で設定を保持:** n/a** 説明:** カレントマシン上の4D アプリケーションのlibzip ライブラリのバージョン番号を返します(読み出し専用) |
Pause logging | 倍長整数 | 121 | スコープ: 4D アプリケーション** 異なるセッション間で値を設定を保持**: No** 取り得る値**: 0 (ログを再開)、1 (ログを停止) このセレクターを使用するとアプリケーション上で開始された全てのログオペレーションを停止/再開させることができます(ただしORDAログは除く)。この機能は4Dアプリケーションのタスクを一時的に軽くしたり、あるいはログオペレーションのスケジュールを設定することに有用です。 |
注意:
- table 引数はセレクター31, 46, そして47で使用されます。それ以外の場合、この引数は無視されます。
- 異なるセッション間で値が保持されない定数について、その値を確実に適用したい場合には、On Startupデータベースメソッド あるいは On Server Startupデータベースメソッド. 内において実行して下さい。
スレッドセーフなセレクター
SET DATABASE PARAMETER コマンドは、以下のセレクターを使用する場合にはプリエンプティブプロセスで使用することができます:
- 4D Server log recording
- Debug log recording
- Diagnostic log recording
- Diagnostic log level
- Circular log limitation
- Cache flush periodicity
- SMTP Log
- POP3 Log
- IMAP Log
- Pause logging
例題 1
以下の文は予期しないタイムアウトを避けます:
//カレントプロセスのタイムアウトを3時間にします
SET DATABASE PARAMETER(4D Server Timeout;-60*3)
//4Dからコントロールできない時間のかかる処理を行う
...
WR PRINT MERGE(Area;3;0)
...
例題 2
この例題は、一時的にクライアントマシン上でフォーミュラによるクエリを実行するよう強制します:
curVal:=Get database parameter([table1];Query By Formula On Server) //現在の設置を取得
SET DATABASE PARAMETER([table1];Query By Formula On Server;2) //クライアントマシンでの実行を強制
QUERY BY FORMULA([table1];myformula)
SET DATABASE PARAMETER([table1];Query By Formula On Server;curVal) //設定を元に戻す
例題 3
変換された4D date を含む JSON形式のデータを書き出したい場合を考えます。変換が起きるのは日付がオブジェクトに保存されたときなので、 OB SETコマンドが呼び出される前に SET DATABASE PARAMETERコマンドを使用する必要があることに注意して下さい:
var $o : Object
SET DATABASE PARAMETER(Dates inside objects;0)
OB SET($o ;"myDate";Current date) // JSON への変換
$json:=JSON Stringify($o)
SET DATABASE PARAMETER(Dates inside objects;1)