My advice is to keep all the line items in ONE table. Add separate fields for packing list number and invoice number. Also have separate fields for ordered quantity and delivered quantity. As soon as the invoice number is not empty, you know that this record is "read only".
>Hi all
>
>I have this design question. I have developed a Packing List module. This is a Parent-Multiple Child tables module.
>
>Now I am supposed to develop a Pre-Shipment Invoice module. Each Pre-Shipment Invoice is one-to-one relation to Packing List. The only difference between each Packing List and it's corresponding Pre-Shipment Invoice is the invoice serial no. and a couple of additional fields.
>
>The simple logic is that one a packing list is created the items and stuff in the pre-shipment should also be the same, one can't send x qty. and then create an invoice of y qty.
>
>How can I proceed without duplicating all these data?
>
>I have thought of adding the additional fields in the Packing List table itself, but then how can such a form be designed that will accept the Party Name. Display a filtered list of Packing Lists that do not have a corresponding Pre-Shipment Invoice. Once selected the complete set of records is displayed as read-only, except for the new fields.
>
>I know this is a tall order but all the help I can get is appreciated.
>
>Please advise.