ストラクチャーエディターにはデザインメニューのデータベースストラクチャーコマンドを選択するか、4Dツールバーの
ボタンをクリックしてアクセスできます。
ストラクチャーエディターを使用してデータベースストラクチャー (テーブルとリレーション) を管理できます。このエディターを使用してテーブル、テーブルプロパティ、フィールド、フィールドプロパティ、テーブルリレーションを管理できます。
ストラクチャーエディターはデータベースストラクチャーをグラフィカルに表示し、データベースデザイン操作に使用するツールバーやコンテキストメニューを提供します。
ストラクチャーエディター中で、それぞれのテーブルはテーブルイメージとして表現されます。テーブルにはフィールドとその型がアイコンで表示されます。マウスを重ねると、情報バーにテーブルやフィールドの情報が表示されます。
フローティングパレット上に表示されるインスペクターを使用して、ストラクチャーオブジェクトやストラクチャーエディター自身のプロパティを表示したり変更したりできます。このウィンドウについてはインスペクターパレットで説明します。
ストラクチャーエディターにはオブジェクト追加などの機能、およびナビゲーションやオプションを表示するツールバーがあります:

エディターウィンドウの下部にはマウスが重なっているオブジェクト (テーブル、フィールド、リレーション) のエリアに対応する情報を表示する情報バーがあります:
テーブルについての情報:

- テーブル名および番号
- テーブルトリガ:
- NEW; 新規レコード作成時
- SAVE: 既存レコード保存時
- DEL: 既存レコード削除時
フィールドについての情報:

- テーブル名および番号
- フィールド名および番号
- フィールドタイプ
- フィールド属性:
- NUL: 空値にヌル値をマップ
- UNI: 重複不可
リレーションについての情報:

- リレート元のテーブルとフィールド(N側フィールド)
- リレート先のテーブルとフィールド(1側フィールド)
- リレーションタイプおよびORDA名:
- N-1 (N対1) および relatedEntities リレーション属性名
- 1-N (1対N) および relatedEntity リレーション属性名
注意: ORDA の名前についてのより詳細な情報については、developer.4d.com のデータモデルオブジェクトのページ を参照してください。
ストラクチャーファイルがロックされている時には、閉じた南京錠のアイコン(
)が表示されます。ロックは、プロジェクトモードおよびクライアント/サーバーモードの両方において、以下ような場合に起こり得ます:
- catalog.4DCatalog ファイルが"読み出し専用"であるとき(プロジェクトモードのみ)。南京錠のアイコンをクリックすると、可能である場合にはそれを解錠するアラートが表示されます。解錠ができた場合、開いた南京錠のアイコン(上記参照)が表示されます。
- 2人以上のユーザーが同じストラクチャーを同時に編集しようとしたとき。ストラクチャーは、最初のユーザーがウィンドウを閉じて解放するまで使用することができません(クライアント/サーバーモードのみ)
どちらのケースにおいても、ストラクチャーは"読み出し専用"として開くことはできますが。ロックが解除されるまでは使用することができません。
ストラクチャーエディター中のオブジェクトのイメージを操作するには、まずそれを選択します。そしてそのプロパティを定義したり、移動したり、サイズ変更したり、削除したりできます。同時に同じタイプのオブジェクトを複数選択して、例えばインスペクターパレットで共通のプロパティを表示し、更新することができます。異なるテーブルのフィールドを同時に選択することもできます。
テーブルを選択するには:
- テーブルイメージをクリックする、
または
[Tab]またはShift+[Tab]を押して、ストラクチャーエディター中のテーブルを移動しながら選択します。
選択されたテーブルの外周部は青くなります。以降の操作は選択したテーブルに対して効果を及ぼします。
フィールドまたはリレーションを選択するには:
- フィールドまたはリレーション上でクリックする、
または
テーブルが選択されているとき、[upper arrow]または[lower arrow]キーを押してテーブル中のフィールドを移動して選択する、
または
テーブルが選択されているとき、[Home]または[End]キーを押してテーブルの先頭や最後のフィールドを選択します。
同じタイプのオブジェクト (テーブル、フィールド、リレーション) を複数選択するには:
- 連続したオブジェクトを選択するにはShift+clickを使用します。
または
連続しないオブジェクトを選択するにはCtrl+click (Windows) またはCommand+click (Mac OS) を使用します。
または
空のエリアをクリックし、選択するオブジェクトの周りに四角を描画します (テーブルの選択のみ)。
または
編集メニューまたはエディターのコンテキストメニューからすべてを選択コマンドを選択します (テーブルの選択のみ)。
必要に応じて、ストラクチャーエディター中でテーブルイメージのサイズを変更したり移動したりできます。
テーブルにフィールドを追加するときや、テーブルのサイズを小さくしたときなど、テーブルイメージが表示できるよりも多くのフィールドがテーブルに含まれることがあります。このような場合、4Dは自動でスクロールバーを追加し、フィールドリストをスクロールして表示できるようにします:

テーブルイメージのサイズを変更して、より多くのフィールドを表示したり、画面を再構成したりできます。サイズ変更には複数の方法があります:
- 手動によるサイズ変更: テーブルイメージの下部または右下の角をクリックしドラッグします。

- 最適サイズ: これは選択されたテーブルを自動でサイズ変更し、含まれるフィールド全体がぴったりひょ応じされるようにします(空行は表示されません)。
最適サイズコマンドを適用するには以下の手順を行います:
- エディタのツールバーボタンに割り当てられたメニューから最適サイズコマンドを選択する (テーブルを選択していない場合このコマンドは使用できません)。

- エディターのコンテキストメニューから最適サイズコマンドを選択します (テーブル上でクリック)。
- テーブルの名前部分をShift+ダブルクリックします。この操作を繰り返すと、以下の動作が適用されます: 元のサイズ -> 最適サイズ - > 折りたたむ
- 折りたたむ: この機能はテーブルイメージを折りたたみ、テーブル名のみが表示されるようにします。これは大きなストラクチャーで便利です。

折りたたむコマンドを適用するには、以下を行います:
- エディターのコンテキストメニューから折りたたむコマンドを選択します (テーブルのタイトルエリア上でクリック)。
- テーブルの名前部分をShift+ダブルクリックします。この操作を繰り返すと、以下の動作が適用されます: 元のサイズ -> 最適サイズ - > 折りたたむ
注:
- テーブル名エリアでダブルクリックを行うとインスペクターが表示されます。
- Alt (Windows) または Option (macOS) + ダブルクリックでテーブルのトリガーメソッドがメソッドエディタ中で開かれます。
- Ctrl (Windows) または Command (macOS) + ダブルクリックでエクスプローラーのフォームページが開かれます。
4D Server: 4D Server環境でテーブルイメージをサイズ変更すると、すべてのユーザーのデザインモードでテーブルイメージサイズが変更されます。
機能に基づいてテーブルをグループ化したり、ストラクチャーエディターウィンドウを再編成したりするために、テーブルイメージをエディター内で移動することができます。ストラクチャーの可読性を向上させるためにテーブルを揃えることもできます。リレーションは新しいテーブル位置に基づいて再描画されます。
手動でテーブルイメージを移動するには:
- マウスカーソルでテーブル名エリアをクリックしドラッグします。
テーブル名バーのみをドラッグします。テーブルイメージの他の部分をドラッグすると、異なる効果を起こします。例えば新しいテーブルリレーションが作成されたりテーブルイメージのサイズが変更されたりします。
4D Server: 4D Server環境でテーブルイメージを移動すると、すべてのユーザーのデザインモードでテーブルは新しい位置に表示されます。
複数のテーブルの位置を揃えるには:
- 揃えるテーブルを選択し、ツールメニューから対応するメニューを選択します:

これらのコマンドは2つ以上のテーブルが選択されている場合に有効となります。
巨大なストラクチャーにおいては特別なスクロール機能がナビゲーションを容易にします:
- マウスホイールを使用するとエディターウィンドウが縦にスクロールされます。カーソルがテーブル上にあるときはテーブルのフィールドがスクロールされます。
- マウスホイールスクロール時にShiftを押すと、横にスクロールされます。
- Shiftキーを押して空のエリアをクリック&ドラッグするとハンドツールが使用可能になり、ウィンドウの内容全体をスクロールすることができます。
ストラクチャーツールバーのズーム機能を使用して、データベースストラクチャーの表示倍率を変更できます。データベースを開く際のデフォルトは100%です。セレクションがフォーム内にある場合にはそこへズームされます。
ズーム設定はユーザーごとに異なります。設定はウィンドウを閉じる際に保存されます。
注: 環境設定を使用してズーム時のストラクチャーエディターの描画品質を設定できます。詳細はSEND HTML FILEを参照してください。
ストラクチャーエディターのツールバーの表示ボタンには、タイプに基づいてストラクチャーオブジェクトの表示と非表示を切り替えるメニューが割り当てられています:

デ フォルトですべてのオブジェクトが表示されます。この機能を使用してさまざまな表現 (もっとも単純なものから完全な表示まで) を得ることができます。そして必要な情報のレベルに基づくストラクチャーの検証ツールを提供します。選択はすべてのテーブルとフィールドに適用されます。 設定はユーザーごとに異なり、ウィンドウを閉じる際に保存されます。特定のオブジェクトを非表示にしてもテーブルの位置は変わりません。
- 複数のフィールドタイプがチェックされていると、論理OR演算を使用して表示するオブジェクトが決定されます。例えば非表示フィールドとインデックスされていないフィールドオプションが選択されている場合、(表示・非表示属性に関わらず) すべてのインデックスがないフィールドと、(インデックス属性に関わらず) すべての非表示フィールドが表示されます。
- テーブルはフィールドに対して優先されます。テーブルが表示されない場合、フィールドも表示されません。
- 表示されないタイプのオブジェクト (テーブル、フィールド、リレーション) を追加すると、オブジェクトはエディターに表示されます。それを非表示にするには、表示ボタンに割り当てられた対応するオプションを改めて設定する必要があります。
エクスプローラーウィンドウのホームページページで定義されたフォルダーに基づき、ストラクチャーエディター内でテーブルグループを非表示にすることができます。ストラクチャーエディターのツールバーにあるフォルダーボタン
を使用してテーブルの表示を設定します。
ボタンに割り当てあられたメニューには表示を管理するコマンドと、データベースに定義されたフォルダーのリストが表示されます。表示されるフォルダーの隣にはチェックが付けられます。このメニューでフォルダーを選択/選択解除することで、表示を変更できます。
すべてのフォルダーをハイライト/すべてのフォルダーを薄暗く表示コマンドを使用してデータベースのフォルダー中のテーブルをすべて表示したり隠したりできます。
ボタンをクリックするたびにテーブルの表示が切り替えられます。
テーブルが薄暗く表示されているとき、デフォルトでストラクチャーウィンドウにはその外周部だけが表示されます。隠されていないテーブルのみが全体として表示されます:

注: ストラクチャーエディター中で (フォルダーごとに) 薄暗く表示するテーブルのアピアランスを、環境設定のSEND HTML FILEにあるオプションで切り替えることができます。この環境設定を変更した場合には設定を有効にするために、ストラクチャーエディターウィンドウを一度閉じて開きなおす必要があります。
ストラクチャーエディターの特定のプロパティはインスペクターを使用して変更することができます。
ストラクチャーエディターウィンドウのプロパティを表示するには:
- ウィンドウの空のエリアをダブルクリックします。またはインスペクターウィンドウが既に表示されている場合は空のエリアをクリックします。
- ウィンドウの空のエリアで右クリックをし、コンテキストメニューからストラクチャープロパティコマンドを選択します。
インスペクターパレットにストラクチャープロパティが表示されます:

以下のプロパティを設定できます:
- バックグランドピクチャー: 使用するバックグランドピクチャーとその表示フォーマットを変更できます。
ピクチャーを変更するには、開くボタンをクリックするかプレビューエリアをクリックしてコンテキストメニューから開くを選択します。そして表示するピクチャーを選択します。どのピクチャーフォーマットも使用できます。選択されたピクチャーをすぐにプレビューエリアとエディターウィンドウに表示されます。
ピクチャーの表示フォーマットを変更するには、ピクチャーフォーマットメニューから値を選択します。提供される選択肢は4D標準のピクチャー表示フォーマットです。
カスタムピクチャーを削除するには、クリアボタンをクリックするか、プレビューエリアをクリックしてコンテキストメニューからクリアを選択します。 - 塗りカラー: エディターウィンドウのバックグランドに使用されるカラーを変更できます。これを行うにはカラー選択エリアをクリックして選択メニューからカラーを選択します。
- デフォルトフォント: テーブルやフィールド名に使用されるデフォルトのフォントを変更するには、このメニューから使用するフォントを選択します。サイズメニューを使用してデフォルトのフォントサイズを変更することもできます。
4Dではストラクチャーエディターウィンドウ内で検索を行えます。検索は以下の要素に対して行われます:
検索を行うには、ストラクチャーを検索エリアに検索する文字列やテーブル番号を入力します。エリアに値を入力するとその下にオプションバーが表示され、検索のスコープとタイプを指定できます:

- 検索メニューは検索のスコープを設定します (テーブル&フィールドまたはテーブルのみ)。
- オプションメニューは検索のタイプを設定します:
- 含む (デフォルト): “le”を検索すると“Table”、“Letter”、“Elements”等が見つかります。
- 前方一致: “pa”を検索すると“paper”や“paid”が見つかりますが、“repair”は見つかりません。
- 番号: “2”を検索するとテーブル番号2、12、20、21が見つかります。
検索は値を入力するに従いリアルタイムで実行されます。検索されたテーブルやフィールドは強調表示されます。何も見つからないと、検索条件エリアが赤に変わります。検索モードを抜けるには、オプションバー (Windows) または検索条件エリア (Mac OS) の
ボタンをクリックするか、エリア内の文字をすべて削除します。