Coupa Extractor (2024-01-12)
Change of primary keys for revision tables
Previously the Extractor was using the “id” column as the default primary key for revision tables, which wasn’t right. We’ve corrected it to use the “revision-record_id” column, which means you can properly link and join the parent and child revision tables through this column.
Delta loads of the affected child revision tables will fail following this update, because the primary key of the parent table is added in its child table. To prevent this, enable the option Include metadata changes in the extraction settings, or carry out a full data extraction next time in place of a delta load. After that, your delta loads will work correctly again - although you’ll notice a difference in the records they load, because they’re now based on the corrected primary key column.
These tables are affected by the primary key change:
- purchase_order_revisions (parent) and purchase_order_revision_order_lines (child)
- invoice_revision_records (parent) and invoice_revision_records_invoice_lines (child)
- order_revision_records (parent) and order_revision_records_order_lines (child)
- requisition_revision_records (parent) and requisition_revision_records_requisition_lines (child)
- revision_records_invoiceheader (nested child table of the object)
- revision_records_orderheader (nested child table of the object)
- revision_records_requisitionheader (nested child table of the object)