Odoo Upsert Configuration
Odoo Upsert Configuration
The Upsert action inserts or updates Odoo data. By default, if a record already exists in Odoo, an update is performed on the existing data in Odoo using the values provided from the input.
Tables and Columns
If you choose Upsert for the Odoo connector, you must select a target table (or tables) from Odoo. Click the + Add button above the Tables pane.
A modal appears and lists all available tables. Select the desired table and click + Add.
The chosen table appears under the Tables pane, and the columns in the table appear under the Columns pane. The connector automatically detects values that have special relevance (for example, the primary key and foreign keys) and labels them accordingly.
By default, all of the columns are selected for inclusion in the action for the Odoo connector. You can exclude individual columns by un-checking them.
Note: You can select more tables by clicking + Add and repeating this process. See Child Tables for more information.
Example Arc Flow
After you choose the tables and columns for the Upsert-configured Odoo connector, place the connector at the end of an Arc flow. The screenshot below depicts an example flow with a CSV connector, an XML Map connector, and a Odoo Upsert connector at the end:
Data in this example flow passes through these steps:
The CSV1 connector supplies a CSV file that contains data.
This data passes to the XML_Map connector as the Source File, which maps to the Source tree.
Data from the Odoo_Upsert connector passes to the XML_Map connector as the Destination File, which maps to the Destination tree.
The XML_Map connector attempts to automatically map Source elements to Destination elements with the same name. You can manually change these and fill in blank mappings by dragging elements from Source to Destination.
The Odoo_Upsert connector performs the Upsert according to the mapping and passes the resulting data to Odoo.
XML Aggregate Columns
Most Odoo database columns function as single elements for mapping. The examples above under Example Arc Flow demonstrate single-element columns.
Some columns appear in the Odoo connector with the XML aggregate icon
</> next to their names. In contrast to a standard single-element column, an aggregate column contains a collection of entities. The following screenshot shows an aggregate column in an Upsert-configured Odoo connector:
In an XML Map connector, the full structure of the aggregate column expands to display all of its contents. The following screenshot shows an aggregate column expanded:
Each element of an aggregate column can be mapped the same way as single-element columns.