代替テキスト http://img29.imageshack.us/img29/825/simplemodel.jpg
上記のように、これは RDBMS (この場合、私のお気に入り: MySQL) のテーブルの一種のサブクラスであるため、フィールド データなどを検証する tb_order_base のベース フォームを Visual Subclassing で処理します。
このようにして、コードの繰り返しやその他の厄介な問題から解放されます。まあ、これは真の OO アプローチのようです。しかし ...
サブクラス化されたフォーム、つまりマスター/詳細アプローチを使用した tb_order_service で大きな問題が発生しました。tb_order_base データセットを投稿すると、Delphi が最初に投稿して RDBMS から PK ID を取得し、ID が入力された TB_ORDER_PRODUCT を投稿するのではなく、反対に、詳細な tb_order_product データセットを最初に投稿してから、マスター tb_order_base を投稿すると、大きなキー制約エラーが発生します。
この驚くべき問題を回避する方法を知っている人はいますか?
以前に質問したことがありますが、マスター/ディテールの動作の詳細はほとんどありません