We currently use a BDC process to execute XD01 to create the customer. This also creates the ADRC record. we then use a BDC to execute XK01 to create the vendor and we add the customer to the LFA1-KUNNR field. This also creates a ADRC record with a different ADRDR number. Is there a way to create the customer and the vendor and have them both use the same ADRC record?
I don't think so - because both a "customer" and a "vendor" are separate objects, independent of each other. Each one has its own master data.
What is more: address data are stored in the database not only in an ADRC record, as you probably know, but also (reduntantly) in KNA1 for a customer and in LFA1 for a vendor. So imagine even if you managed to force KNA1-ADRNR = LFA1-ADRNR somehow, then what would happen if you ran XD02 later and changed some of the custmer address data ? Such changes would have to be saved in KNA1 and in ADRC (pointed by KNA1-ADRNR) but there would be no changes to LFA1, so you end up with inconsistency.
That's why I would not expect this to be possible.
The reason that I am asking this is that when our business user creates a vendor, he adds the freight info and custom account group ZVEN, and it automatically creates the customer in the background with the same ADRC record as the vendor. This issue arose when the business was making changes to the tax jurisdiction code for the vendor and thought that the customer associated with the vendor would be updated as well and it was not because the customer ADRC record had a different ADRDR number then what the vendor had. We want to be able to do the same process using BDC sessions but do not know how to get it to create the same ADRC record.