Firebird 2.3 を使用して Delphi 2010 / dbExpress で作成されたマスター / 詳細アプリケーションがあります。問題が見つかりました。
詳細に同一のデータ行が 2 つまたは 3 つ以上ある場合、そのうちの 1 つのデータを変更すると、他の行のデータも変更されます。これは、更新で、invoice_id とシリアルのみがキーとデータとして使用されるためだと思います。どちらの場合も等しい場合、更新は 2 つの場合で行われます。
マスター データ Invoice_id、シリアル、customer_id、日付 1、A、1.12 / 12 / 2010
詳細データ Invoice_id, serial, qty, description, Price 1, A, 10, BOXES OF SOME STUFF, 52.52 1, A, 10, BOXES OF SOME STUFF, 52.52
これを修正するには、フィールド ltes name ir line_no を使用します。このフィールドでは、各行が異なる番号を持つため、次のようにデータを区別して更新できます。
Line_no, Invoice_id, serial, qty, description, Price 1.1, A, 10, BOXES OF SOME STUFF, 52.52 2.1, A, 10, BOXES OF SOME STUFF, 52.52
したがって、情報は同じですが、更新の情報を区別するために line_no もあります
clientdataset で、クライアント側でこれを行う方法を知っている人は誰でも、
どうもありがとうございました