2011-11-09 2 views
0

2つのページ(1つのレポート、1つの編集フォーム)を作成する方法は可能ですか?その場合は、レポートをベースにして、編集フォームをテーブルに基づいて作成しますか?Apexのビュー/テーブルに基づいてレポート/フォームページのコンボを作成する方法は?

私は非常に複雑なビューを持っていますが、これは更新できません。そのため、編集フォームをテーブルの生データに基づいて作成する必要があります。これはどのように可能ですか?

答えて

2

まず、レポートを作成してテーブルの上に置く必要があります。 フォームを作成します。

フォームをリンクするには、フォームの基になっているテーブルの主キーを知る必要があります。私はあなたのテーブルが1または2列からなるPKを持っていると仮定し、あなたの自動行取り出し+ DMLプロセスはこのPKを使用します。 PK in form これは、PK値がレポートの行とフォームの行の間のリンクを形成するためです。

レポートの属性では、[リンクの列]セクションを検索します。レポートの列をリンクとして使用する場合は、その列のオプションに移動し、そこで列をリンクするセクションを探します。リンクは「カスタムターゲットへのリンク」でなければなりません。アイコンを選択するか、リンクテキストを定義します。 レポート属性のリンクは、単一行の列アイコンまたはカスタムリンクのいずれかを選択する必要があることを意味します。リンクがすでに設定されている場合は、レポートクエリに新しい空の列を作成し、その列にリンクを設定します。 Link column attributes

Settings: 
Target: Page in this Application 
Page: the page number of your form 
Clear Cache: page number of your form 

次に、一意フォーム(あなたのPK)のために使用されるテーブル内の行を特定の値に沿って通過します。 例:

Item 1: Name: "P2_EMPNO" Value: "#EMPNO#" 

それの要点だ、とレポートとフォームのためのウィザードを使用したいときに、フォームとレポート間のリンクが生成される方法もあります。

もっと複雑な状況ですか? たとえば、PKには2つ以上の列があります。 Apex 4.1では、テーブルのROWID(生命維持装置)に自動ロー・フェッチとdmlの基盤を置くことができます。この場合、ビューのレコードのROWIDをビューに含めることを検討できます(もちろんビューの別名にする必要があります)。このROWIDは、フォーム・ページのROWIDを含む項目に渡すことができます。

4.1ではなく、rowidはオプションではなく、PKには2つ以上のカラムがあります。独自のローフェッチとdmlプロセスを作成するか、代わりにトリガを使用してビューを作成する必要があります。テーブルのビューを作成し、PK列をビューの列に連結することをお勧めします。この列は、生成された頂点でPK値として機能します。いずれにしても、行を識別する方法を考え、フォームページで適切なフェッチと処理方法を提供する必要があります。 this question for some more infoを参照してください。

関連する問題