0

Oracle Forms で発行された POST を元に戻す方法を考えられる人はいますか? ノート; これは POST であり、COMMIT ではありません。

非常に複雑ですが、基本的には POST する必要があるため、通常は作成されるいくつかのレコードに対してクエリを実行できますが、後でいくつかの値を変更する必要がある場合があります。これには、前の POST を元に戻す必要があります。

ROLLBACK (および ROLLBACK TO) を試しましたが、この場合、Oracle Forms はフォーム全体をクリアします。これは、1 つの値のみを変更する必要がある場合にはほとんど役に立ちません。

4

2 に答える 2

2

私も投稿はいつも面倒くさいです...個人的には、「投稿」をしようとすると、物事が複雑になります。代わりに、マスター ブロックを上に、ディテール ブロックを下にして、2 つのフォームを 1 つにマージします。フィールドの数が原因で多くの垂直スクロールが発生する場合は、常にマスター ブロックをタブに配置し、詳細ブロックを 2 番目のタブに配置できます。

もちろん、可能な場合にのみマージすることを忘れないでください。

于 2009-10-09T13:20:59.430 に答える
0

考慮すべき別のオプションは、ON COMMIT DELETE ROWS; を使用したグローバル一時テーブルだと思います。あなたのフォームは、このテーブルを好きなように挿入/更新/クエリでき、POST を使用してテーブルに行を取得できます。次に、ユーザーが [保存] をクリックすると、フォームの PRE-COMMIT トリガーが行を GTT から「実際の」テーブルにコピーできます。

于 2009-12-11T07:02:24.810 に答える