How to prevent DMT from deleting parent and all child records when specific child record specified

I created a DMT for Management / Sales / Price List Part. This shows required fields in PriceLstPart and an optional field in PLPartBrk (Quantity). I specified all the required fields plus the optional field, expecting that it would delete the single record in PLParkBrk which matched all these criteria.

Instead, it deleted all the records in PLPartBrk PLUS the PriceLstPart record.

What did I do wrong? How can I have it only delete the PLPartBrk record with the quantity specified and leave the PriceLstPart record alone?

Also - we have a BPM logging changes on these two tables, but nothing was logged. Is this expected?

On a related note… when I tried to DMT back in the deleted records, I got tons of errors, basically completely failing to DMT any PLPartBrk records, due to this error:

Column 'Company, ListCode, PartNum, UOMCode' is constrained to be unique.

I have the same column values multiple times with different quantity price breaks and unit prices (“PLPartBrk#Quantity”, “PLPartBrk#UnitPrice”). How else am I supposed to DMT in multiple quantity price breaks?

I think the important thing to know is that the “required fields” typically only apply to creating records. Updating an existing record can be done if you provide the minimal info to identify it.

For example, Customer only needs a Company, CustID and Name to create a Customer record. But to delete it, you only need specify Company and CustID.

And here’s a good side note … While CustNum is the real key field used for relating records for customer, DMT uses CustID and translates that to the appropriate CustNum.

So in your original problem, you should use data dictionary to see what fields make up the keys for the tables, and specify those as your fields.

Looks like this was a cockpit error: I only had “Add New” and not “Update” selected, thinking that I was only adding new PLPartBrk records.