アプリケーション・フレームワーク

アプリケーション・フレームワークには、アプリケーションの開発およびアプリケーションへのアクセスを提供する編成コンポーネントの開発のためのユーザー・インターフェース・コンポーネントが含まれます。

ユーザー・インターフェースはテキスト・ボックス、ボタン、タブなどのコントロールから成り立っていて、各コントロールにはその動作を決定する属性があります。 各アプリケーションには、アプリケーション・ユーザー・インターフェースを作成するために必要なすべての情報が含まれる presentation.xml ファイルがあります。 アプリケーションを作成すると、アプリケーションは、モジュールおよびアプリケーションのナビゲーション構造に自動的に追加されます。

ユーザー・インターフェース・コントロール

コントロールは、アプリケーション・ウィンドウのエレメントを作成するために使用される事前定義コンポーネントです。 アプリケーション・デザイナーで、個々のコントロールを選択し、コントロールのプロパティーを表示および変更し、「コントロール・パレット」からアプリケーションに新規コントロールをドラッグすることができます。 コントロールのコードは変更できませんが、コントロールのプロパティー・ウィンドウ内で適切な値を指定することにより、その動作を変更できます。 例えば、コントロールを必須フィールドとして設定したり、コントロールをルックアップ・テーブルに関連付けたり、コントロールをイベントにリンクしたりできます。

セクション、タブ・グループ、ボタン・グループなどの一部のコントロールは、コンテナー・コントロールです。 ほとんどのコンテナー・コントロールは、他のコントロールを格納する以外の目的を持ちません。 コンテナーではないコントロールは、コンテナー・コントロールの内部に配置する必要があります。 アプリケーション・デザイナーで、「コントロール・パレット」からアプリケーション・ワークスペースにコントロールをドラッグし、「コントロールのプロパティー」ウィンドウ内でコントロールを変更することができます。

コントロールの配置は、ピクセルまたはグリッドに基づくのではなく、他のコントロールに対するオフセットとして決定されます。この配置から、セクションやそのカラムの幅が動的にサイズ設定されます。 例えば、セクションにさまざまな幅のフィールドが含まれる場合、各フィールドの幅は、そのセクション内の最大幅のフィールドの幅に自動的に設定されます。

アプリケーション XML ファイル

すべてのアプリケーションの presentation.xml ファイルには、アプリケーション・ユーザー・インターフェースを作成するために必要なすべての情報が含まれています。 すべての presentation.xml ファイルは、データベース内の MAXPRESENTATION テーブルに保管されています。 コントロールは、アプリケーション・ウィンドウのエレメントを作成するために使用される事前定義コンポーネントです。 アプリケーション・デザイナーで、個々のコントロールを選択し、コントロールのプロパティーを表示および変更し、「コントロール・パレット」からアプリケーションに新規コントロールをドラッグすることができます。 コントロールのコードは変更できませんが、コントロールのプロパティー・ウィンドウ内で適切な値を指定することにより、その動作を変更できます。 例えば、コントロールを必須フィールドとして設定したり、コントロールをルックアップ・テーブルに関連付けたり、コントロールをイベントにリンクしたりできます。

アプリケーションの presentation.xml ファイルには、アプリケーション・ユーザー・インターフェース内で使用される各コントロールのタグが含まれます。 各コントロールには固有 ID と属性があり、それらの属性によってアプリケーションを表示するときのコントロールの動作が決まります。 presentation.xml ファイル内のコントロール・タグの相対的な位置関係から、アプリケーション・ウィンドウ内に表示されるユーザー・インターフェース・エレメントの順序が決まります。

アプリケーションを開始すると、presentation.xml ファイルがデータベースから取り出され、アプリケーション・サーバーのメモリーに保管されます。 アプリケーション・フレームワークは、各コントロールのコードを取り出し、presentation.xml で指定された属性に基づいて各コントロールの HTML 記述を作成します。 レンダリング・プロセスは増分的であり、アプリケーション・サーバーは、アプリケーション・ウィンドウ内のすべてのコントロールがレンダリングされるまで、各コントロールの HTML 記述をメモリーに保管します。 すべての HTML エレメントがレンダリングされると、アプリケーション・サーバーは、HTML をユーザーの Web ブラウザー (クライアント) に渡します。 presentation.xml ファイルは、サーバー・キャッシュ内に保持され、ユーザーが次回アプリケーションにアクセスするときに使用できます。

アプリケーション・デザイナーでアプリケーションを開くと、presentation.xml ファイルがメモリーにロードされます。 すべての変更は、アプリケーションを保存するまで、メモリーに保管されたファイル・バージョンにのみ適用されます。 presentation.xml を保存すると、変更された情報がデータベースにコミットされ、アプリケーションを開くと変更内容が反映されます。

アプリケーションへのほとんどの変更はアプリケーション・デザイナーで実行できますが、必要な場合には、presentation.xml ファイルを編集できます。 場合によっては、presentation.xml ファイルを変更することが、使用可能な最も効率的なアプローチであることがあります。例えば、検索と置換を使用して特定の用語を変更する場合です。 複数のタブとウィンドウがあるアプリケーションでは、このタスクのためには、アプリケーション・デザイナーで個々のウィンドウを開く必要があります。これには時間がかかり、エラーも発生しやすくなります。 一部のアプリケーションで使用される隠しタブは、アプリケーション・デザイナー内に表示されません。 これらのタブはアプリケーション・デザイナー内で変更できないため、変更するには presentation.xml ファイルを編集する必要があります。

アプリケーション編成

すべてのアプリケーションは、いずれかのモジュールの内部に属しています。 アプリケーションを作成するときには、そのモジュールおよび作成するアプリケーションのタイプを指定する必要があります。 アプリケーションは、3 つの異なるタイプに分類されますが、各タイプで使用される構造およびコンポーネントは同じです。 選択可能なアプリケーション・タイプは以下のとおりです。
  • パワー・アプリケーションは、標準タイプのアプリケーションであり、複数のタブ、「アクションの選択」メニュー、およびツールバー・ボタンが含まれています。
  • セルフサービス・アプリケーションは、レコードを作成するために使用され、「一覧」テーブル・ウィンドウまたはツールバーは含まれていません。
  • シングルページ・アプリケーションは、タブなしのアプリケーションですが、「アクションの選択」メニューおよびツールバー・ボタンを含めることができます。

アプリケーションを作成した後で、アプリケーションは、作成時に指定したモジュール内の「リンク先」メニューに追加されます。