Note
As of January 2023, Optimizely no longer adds new functionality to ERP connectors. Instead, partners can build customized solutions for clients. Optimizely continues to fix ERP connector bugs only if there are no workarounds or extensibility solutions available.
## Supporting tables
### Salespeople
The salesperson information is important so that we can set the primary sales rep on the customer records. This allows your customers to know who their sales reps are, and allows your sales reps to view customer data in Optimizely <<product-name>>. It is also required if using the Request for Quote functionality in <<product-name>>.
**Deletion Strategy** – We will use Ignore and not delete any salesperson records automatically during the refresh.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1">Field Mapping: Salesperson Refresh</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1">ERP Source (smsn)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1">Destination (Salesperson)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Company</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Cono</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>N/A</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p>Used for filtering the correct records only.</p> <p>Obtain value from the system setting</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Salesperson Number</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Slsrep</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>SalespersonNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Name</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Email Address</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Email</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Email</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Title</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Slstitle</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Title</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Phone number</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Phoneno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Phone1</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1"><p>Manager Number</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1"><p>mgr</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1"><p>SalesManager</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1"><p>If provided, we can track the manager of the sales rep which allows access to the sales rep’s accounts and quotes</p></td> </tr> </tbody> </table>
### Payment Methods
The payment terms refresh populates the payment methods table in <<product-name>>, which is referenced in history tables and sets the default value in the customer table used in order submission. Typically, once this is run, customers can update the descriptions in the Admin Console to reflect the values displayed to the end user, such as ‘Terms’.
**Deletion Strategy** – We will use Ignore and not delete any payment method records automatically during the refresh.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1">Field Mapping: Payment Terms Refresh</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1">ERP Source (sasta)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1">Destination (PaymentMethod)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Company</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Cono</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>N/A</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p>Used for filtering the correct records only.</p> <p>Obtain value from the system setting</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Record Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Codeiden = ‘T’</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p>Using code ‘T’ to pull in the terms codes from the system admin table</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Terms Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Codeval</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Name</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Description</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>descrip</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>Description</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>COD/Cash</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>n/a</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1"><p>IsCreditCard</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1"><p>This terms code requires payment by credit card on the site</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1"><p>Active Indicator</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1"><p> </p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1"><p>ActivateOn</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1"><p>Not overwritten – set on initial setup to current date</p></td> </tr> </tbody> </table>
## Product tables
### Products
The Product Refresh process retrieves item/product information directly from the SX.e ERP database. It first looks for records in the ICSP (Products) table, and then it looks to the ICSC (Catalog) table for records that do not exist in the ICSP table. If the same item appears in both the ICSP & ICSC tables, only the ICSP data will be integrated into <<product-name>>. Only records marked as active within SX.e will be retrieved in the refresh job.
If SX.e catalog information should be excluded, remove the Union join information for ICSC in the query within the job definition.
Some Product-related data required by <<product-name>> may not exist in the ICSP table. Instead, this data will be retrieved from the ICSW table by joining on the **cono**, **prod**, and **whse** fields between the ICSP & ICSW tables. The **whse** value is determined using the default warehouse value as defined in a parameter in the integration job.
Unlike the ICSP, the ICSC table contains all the Product data required by <<product-name>>, so there is no need to join to the ICSW table if used.
Note that we only retrieve products that are in stock with an active status. Inactive products are not retrieved by default nor is the inactive flag set on the products directly. If an active product becomes inactive, it will be effectively discontinued on the site. This logic can be changed by the implementer.
**Deletion Strategy** – Since these tables can be large, <<product-name>> should only retrieve records important to the platform. The job also runs using Delta Datasets to minimize transaction volume and needs to do a union query between the two tables, excluding the data in ICSC that already exists in ICSP. <<product-name>> uses the Set Field option to set the DeactivateOn field automatically based on using a snapshot strategy for data retrieval.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Product Refresh – Product</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="125">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="124">ERP Source (icsp)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="155">Destination (Product)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="255">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Company</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>cono</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>N/A</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Used for filtering the correct records only.</p> <p>Obtain value from the system setting</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Product Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>prodtype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>N/A</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Only pull records WHERE icsp.prodtype = 'S' (standard products)</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Active/Deactivate</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>statustype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ActivateOn</p> <p>DeactivateOn</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Only pulling records with statustype ‘A’ (active) and the ActivateOn will be set with the current date but not overwritten.</p> <p> </p> <p>Active records will reset the DeactivateOn date to null.</p> <p> </p> <p>Products with statustype ‘I’ (inactive) will be archived by setting their deactivateon to the current date as part of the DeleteAction.</p> <p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>ERP Item #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>prod</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>Name</p> <p>ERPNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>This is the primary natural key to the table</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Item Title &</p> <p>Item Description</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>descrip[1] + " " + descrip[2]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ShortDescription</p> <p>ERPDescription</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Short description will not be overwritten – it is expected to be maintained in the application or from a PIM</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>URL Segment</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>Descrip[1] + ‘ ‘ + descrip[2] + ‘ ‘ + prod</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>URLSegment</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Appending the item number to ensure uniqueness</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Manufacturer’s Part #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>icsw.vendprod</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ManufacturerItem</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>vendprod from default warehouse</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Tax Code/Class</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>n/a</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>TaxCode1</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>This field is not mapped as standard, but might need to be included for successful calls to 3<sup>rd</sup>-party tax systems (such as Avalara, Vertex)</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit of Measure</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>unitstock</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>UnitOfMeasure</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>This is the stocking unit of measure to properly handle conversions</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Multiple Sale Qty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>Sellmult</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>multipleSaleQty</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Items must be sold in multiples of this value</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Weight</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>weight</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ShippingWeight</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Length</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>length</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ShippingLength</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Width</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>width</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ShippingWidth</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Height</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>height</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ShippingHeight</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Price Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>icsw.pricetype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>PriceCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Pricetype from default warehouse</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Base Unit Price</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>icsw.listprice</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>BasicListPrice</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Listprice from default warehouse</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Product Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>prodcat</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>ProductCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Product Line</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>icsw.prodline</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="255"><p>Not mapped – used for pricing but will use real-time pricing</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="125"><p>Base Price</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="124"><p>icsw.baseprice</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="155"><p> </p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="255"><p>Not mapped – used for pricing but will use real-time pricing</p></td> </tr> </tbody> </table>
<table class="TableStyle-Borders" style="width:100%;" data-cellspacing="0"> <colgroup> <col style="width: 16%" /> <col style="width: 16%" /> <col style="width: 16%" /> <col style="width: 16%" /> <col style="width: 16%" /> <col style="width: 16%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="6" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Product Refresh – Catalog</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="125">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="124">ERP Source (icsc)</th> <th colspan="3" class="TableStyle-Borders-HeadE-Regular-Header1" width="155">Destination (Product)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="254">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Active/Deactivate</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>statustype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>Active</p> <p>Deactivate</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p>icsc.statustype = 'A' (Active)</p> <p>icsc.statustype = 'I' (Inactive)</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>ERP Item #</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>catalog</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>Name</p> <p>ERPNumber</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Item Title</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>descrip[1] + " " + descrip[2]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ShortDescription</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p>Not overwritten -expected to be managed via product information management or <<product-name>></p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Item Description</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>longdescrip</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ERPDescription</p> <p>Description</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p>Not overwritten -expected to be managed via product information management or <<product-name>></p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Manufacturer’s Part #</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>vendprod</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ManufacturerItem</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit of Measure</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>unitstock</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>UnitOfMeasure</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p>Default sales unit of measure</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Weight</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>weight</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ShippingWeight</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Length</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>length</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ShippingLength</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Width</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>width</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ShippingWidth</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Height</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>height</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ShippingHeight</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Price Code</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>pricetype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>PriceCode</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Base Unit Price</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>listprice</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>BasicListPrice</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Product Code</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>prodcat</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p>ProductCode</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Product Line</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>prodline</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p> </p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p>Not mapped – used for pricing but will use real-time pricing</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Base Price</p></td> <td colspan="2" class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>baseprice</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="153"><p> </p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="256"><p>Not mapped – used for pricing but will use real-time pricing</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="125"> </td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="124"> </td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="1"> </td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="153"> </td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="2"> </td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="254"> </td> </tr> </tbody> </table>
### Product Cross-Sell
<<product-name>> retrieves Product Cross-Sells via a direct call to the SX.e database. This refresh can be modified or copied to use specific record types or relationships needed for a given implementation.
**Deletion Strategy** – This refresh uses the Ignore option. Users may create manual entries for different types of relationships that are not managed in SX.e.
Field Mapping: Product Cross-Sells | Column Title | Column Title | Column Title |
Field Name | ERP Source (icsec) | Destination (CustomerProduct) | Notes |
Record Filter | rectype | Only pull records WHERE icsec.rectype = ‘S’ (substitute) and ‘U’ (upgrade) records | |
Relationship | CrossSell | This is the related product type we will use | |
Part # | Altprod | ProductId | Lookup to Product table |
Cross-Sell Part # | prod | RelatedProductId | Child collection to be populated |
### Product Alternate Unit of Measure
<<product-name>> retrieves Alternate Units of Measure via a direct call to the SX.e database. This refresh is done as a separate step in the Product Refresh
**Deletion Strategy** – <<product-name>> uses the Delete option for this data.
Field Mapping: Product Alternate Unit of Measure | Column Title | Column Title | Column Title |
Field Name | ERP Source (icseu) | Destination (ProductUnitOfMeasure) | Notes |
Product # | Prod | Product.ERPNumber | Lookup to Product |
Unit of Measure | Units | UnitOfMeasure | |
Conversion Factor | Unitconv | QtyPerBaseUnitOfMeasure | |
Descrption | Descrip | Description |
## Inventory tables
<<product-name>> uses real-time calls to obtain pricing and availability via real-time calls. No refresh of inventory will be used. See the section on Pricing for the API call mapping.
## Customer tables
### Customer
<<product-name>> retrieves both Customer (ARSC) and Ship-To (ARSS) information into a common customer table via the Customer refresh.
**Deletion Strategy** – <<product-name>> retrieves all customer records and physically sets the IsActive flag directly from the data, so the Ignore delete action will be used. <<product-name>> must use Ignore, since the data will be retrieved in two separate sweeps. Delta Dataset option will be disabled.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Customer (Bill-To)</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="102">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="110">ERP Source (arsc)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="171">Destination (Customer)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="276">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Company #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>cono</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>N/A</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Used for filtering the correct records only.</p> <p>Company will be incorporated into the query directly.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Customer #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>custno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>CustomerNumber</p> <p>ERPNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Ship-To #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>CustomerSequence</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Static Value = Blank</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Customer Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>Company</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Address Line 1-3</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>addr[1..3]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>Address1..3</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>City</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>city</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>City</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>State</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>state</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>StateId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Lookup being used – must exist in <<product-name>></p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Country</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>countrycd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>CountryId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Must match country abbreviation to be valid, uses lookup</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Postal Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>zipcd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>PostalCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Customer Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>custtype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>CustomerType</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Optional field</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Email</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>email</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>Email</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Must match proper email format or an error will be generated</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Phone 1</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>phoneno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>Phone</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Fax</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>faxphoneno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>Fax</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Terms Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>termstype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>TermsCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Should match a valid payment method;not enforced on refresh</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Tax Code 1</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>TaxCode1</p></td> <td rowspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Static Value = Blank; Relying on calls to API to determine the tax amount in cart.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Tax Code 2</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>TaxCode2</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Price Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>pricetype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>PriceCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Not used when real-time pricing implemented</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Currency Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>currencyty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>CurrencyId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Must match a valid currency code</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Warehouse</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>whse</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>DefaultWarehouseId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Must match a valid warehouse</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Outside Sales Rep</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>slsrepout</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>PrimarySalespersonId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Must match a valid sales rep</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Optimizely Sales Rep</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>Slsrepin</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>If desired, can be mapped to Salesperson instead of the outside sales rep. We only support a single, assigned sales rep to the account.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Default Ship Via</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>shipviaty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>ShipCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Should match a valid Carrier/Service code by the ‘ ShipCode’ field – not enforced but required to map properly when setting the default carrier/service in the checkout screen</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Alternate Pricing Customer</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>pdcustno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>PricingCustomerId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Optional – represents the customer number to be used for pricing. Since we use real-time pricing, this will be automatic and is not necessary for integration.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Bank Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>bankno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>BankCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Price Level</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>pricecd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Not required – using real-time pricing</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Line Discount Level</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>disccd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Not required – using real-time pricing</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="102"><p>Credit Limit</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="110"><p>credlim</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>CreditLimit</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="276"><p>Not enforced as standard feature</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="102"><p>Active</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="110"><p>statustype</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="171"><p>IsActive</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="276"><p>arsc.statustype = A (Active) – use 1 for query (Boolean)</p> <p>arsc.statustype = I (Inactive)</p></td> </tr> </tbody> </table>
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Customer (Ship-To)</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="129">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="130">ERP Table.Field</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="183">Commerce Table.Field</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="216">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Company #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.cono</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>N/A</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Used for filtering the correct records only.</p> <p>Value called out directly in query.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Customer #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.custno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>CustomerNumber</p> <p>ERPNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Ship-To #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.shipto</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>CustomerSequence</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Customer Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>Company</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Address Line 1-3</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.addr[1..3]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>Address1..3</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>City</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.city</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>City</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>State</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.state</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>StateId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Lookup – must match a valid state for the country supplied</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Country</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.countrycd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>CountryId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Lookup – must match a valid country. The standard code will default US as the country for any entries without a country supplied – this can be changed in the query to match the correct base country</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Postal Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.zipcd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>PostalCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Customer Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arsc.custtype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>CustomerType</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Email</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.email</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>Email</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Validated against standard email formats and will error if incorrect.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Phone 1</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.phoneno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>Phone</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Fax</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.faxphoneno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>Fax</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Terms Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.termstype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>TermsCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Mapped like arsc but normally the BillTo’s terms is all that’s used</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Tax Code 1</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>TaxCode1</p></td> <td rowspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Static Value = Blank; Relying on calls to API to determine the tax amount in cart.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Tax Code 2</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>TaxCode2</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Price Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.pricetype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>PriceCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Not required when real-time pricing used</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Currency Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arsc.currencyty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>CurrencyId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Must match valid currency code</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Warehouse</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.whse</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>WarehouseId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Must match valid warehouse</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Salesman</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.slsrepout</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>PrimarySalespersonId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Must match valid sales rep</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Salesman</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.slsrepin</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>PrimarySalespersonId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Must match valid sales rep. If determined that inside sales rep is the better one to use, adjust the standard field map</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Default Ship Via</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.shipviaty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>ShipCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Should match a valid Carrier/Service code by the ‘ ShipCode’ field – not enforced but required to map properly when setting the default carrier/service in the checkout screen. If none provided, will use the BillTo value</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Alternate Pricing Customer</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.pdcustno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>PricingCustomerId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Optional – should not be valid on a ShipTo</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Bank Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arsc.bankno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>BankCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Price Level</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.pricecd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Not required – using real-time pricing</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Line Discount Level</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.disccd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Not required – using real-time pricing</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="129"><p>Credit Limit</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="130"><p>arss.credlim</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="183"><p>CreditLimit</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="216"><p>Typically enforced only at customer level but not a standard function</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="129"><p>Active</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="130"><p>arss.statustype</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="183"><p>IsActive</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="216"><p>arsc.statustype = A (Active)</p> <p>arsc.statustype = I (Inactive)</p></td> </tr> </tbody> </table>
### Customer Products
Customer-specific product data will be retrieved by <<product-name>> via a direct call to the SX.e database. While SX.e supports ship-to level customer-specific products, <<product-name>> integration will only pull the bill-to level records.
**Deletion Strategy** – <<product-name>> uses the Delete option to physically remove records that are no longer valid. <<product-name>> also uses Delta Datasets.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="610">Field Mapping: Customer Product</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="98">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="103">ERP Source (icsec)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="139">Destination (CustomerProduct)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="271">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="98"><p>Record Filter</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="103"><p>rectype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="139"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="271"><p>Only pull records WHERE</p> <p>icsec.rectype = ‘C’ (customer product)</p> <p>icsec.shipto = ‘’ (no ship-to’s)</p> <p>icsp.statustype = ‘A’ (active products)</p> <p>icsp.prodtype = ‘S’ (standard products)</p> <p>arsc.statustype = 1 (active customers)</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="98"><p>ERP Part #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="103"><p>altprod</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="139"><p>ProductId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="271"><p>Lookup to Product table</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="98"><p>Customer #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="103"><p>custno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="139"><p>CustomerId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="271"><p>Only pull records WHERE icsec.shipto is blank (bill-to level). Lookup to customer table.</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="98"><p>Customer Part #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="103"><p>prod</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="139"><p>Name</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="271"><p>Customer’s product number</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="98"><p>Unit of Measure</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="103"><p>unitsell</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="139"><p>UnitOfMeasure</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="271"><p>This will become the default unit of measure for the customer if specified</p></td> </tr> </tbody> </table>
## Pricing tables
### Pricing API
<<product-name>> retrieves pricing from SX.e via real-time calls, so no refresh is needed. The API used for this function is sxapiOEPricingMultpleV3.
<<product-name>> does not retrieve price breaks from this call - OEPricingMultipleV3 does not return enough information to calculate pricing based on the price break information returned. However, if price-break-based pricing is set up, <<product-name>> sends in the correct quantity values and will retrieve the correct pricing for the price tier in the cart.
Field Mapping: Pricing & Availability | Column Title | Column Title | Column Title |
Field Name | ERP Table.Field | Commerce Table.Field (ProdDataPrcAvail) | Notes |
Transaction # | “1” | Parameter 1: Transactions ID Number | |
Request Identification | Company Number to 4 digits plus Customer.ERPNumber formatted to 12 digits | Parameter 2: Request ID # | Formatted with leading zeros |
Order Number | Blank | Parameter 3: Order # | Since there wil be no order #, leave empty |
Ship To | Customer.ERPSequence | Parameter 4: Ship To | |
Warehouse | Warehouse.Name | Parameter 5: Warehouse | The warehouse for which pricing is calculated. If blank, will return all warehouses. |
Warehouse | Warehouse.Name | \<origWhse> | |
Qty Ordered | “1” | \<qtyOrd> | We use this normally to get the default price for a qty of 1 |
Unit of Measure | Product.UnitOfMeasure | \<unit> | |
\<calcPriceTy> | |||
Product # | Product.ERPNumber | \<Prod> | |
Unused | \<itemDetail> | ||
Unused | \<calcPriceFl> | ||
Unused | \<availabilityWhse> | ||
Unused | \<altWhse> | ||
Unused | \<netAvail> | ||
Unused | \<unitConv> |
## Tax (order simulation)
### Tax Calculation
As part of the standard connector for SX.e, there is a Tax Calculator which makes an API call to SX.e to calculate and return the tax amount to <<product-name>> on the Cart (if configured) and Checkout screens. If another tax calculator, such as Avalara, is used, then this Order Simulate function will be disabled. When using another tax calculator, be sure to review the Product & Customer refresh to ensure the correct data is being pulled into those records to pass into the tax service.
The API sxapiSFOEOrderTotLoadV4 will be used for this function.
Note
It is expected that 1-time addresses, if allowed, will be able to have tax calculated internally within SX.e without additional information provided. If taxes are critical for the order to be > submitted but the tax jurisdiction cannot reliably be determined, Optimizely suggests self-registration, new ship-to addresses, and 1-time addresses should all be disabled.
## Order submission
### Order Submit API
<<product-name>> will submit orders to SX.e via the API. Typical order submission data will be included: bill-to information, ship-to information, and line item information. If a credit card was used for the order, <<product-name>> will also submit the authorization token information.
A new customer is created if the user self-registers or adds a new ship-to address.
If a 1-time order address is submitted, it will be placed into the Order Header (OEEH).
The API sxapiSFOEOrderTotLoadV4 is used for this function. The data below will show the net differences for the actual order submission.
The standard <<product-name>> connector mapping for API calls is hard-coded but implemented with pipelines to allow the implementer to extend the integration to incorporate additional mapping information for other fields or adjust the standard mappings. The following shows the default approach to mapping the API call and only calls out the changes from the tax calculation.
The standard SX.e connector code will attempt to override the price if there is a line-level promotion. This only works with the following options configured within SX.e:
If the setting **ediprcfl** is turned on in SX.e and ARSC/ARSS tables allow for it.
Create/update a setting in SASBR for category SXAPI,
Rule: Override Price and value: Yes.
Note that this can be used to set several parameters such as various defaults, debug directory, and so on.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="673">Field Mapping: Order Submit – Header</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="132">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="148">Commerce Table.Field (CustomerOrder)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="168">ERP Web Service Field (inputHeaderData)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="225">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Web Transaction Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Webtransactiontype</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>LSF used for order submission</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Order Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Order Type</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>“O” for order</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Requested Ship Date</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>RequestedDeliveryDate</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Reqshipdate</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>This could potentially use the RequestedShipDate field from <<product-name>> but that field is currently disabled and delivery date is exposed as standard</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Web Order #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>OrderNumber</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Defined by setting IntegrationConnector_SXeWebOrderNumberField</p> <p> </p> <p>Headerextradata.fieldname = ‘iondata’</p> <p>Headerextradata.fieldvalue=OrderNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>This is for reference purposes only and is optional – if the setting is configured, the target field (which would normally be refer or one of the user fields) will be populated with the web order # for reference purposes.</p> <p>Currently, the only one that can be set is the Refer field.</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Order-Level Discount Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>DiscountAmount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Headerextradata.fieldname = ‘discountamt’</p> <p>Headerextradata.fieldvalue = <discountamount></p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>This field is used for order level promotion discounts.</p> <p>If wanting to use a percentage, use the fieldname = ‘discountpct’</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Miscellaneous Charge Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>OtherCharges</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>N/A</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>We don’t expect to have any miscellaneous charges</p> <p>See Freight for populating addons</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Tax Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>TaxAmount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Taxamount</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Miscellaneous Charge Addon Field</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Addon number 10</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>Headerextradata.fieldname=’addon’</p> <p>Headerextradata.value = ‘addonno=1<tab>addonamt=XXX<tab>addontype=$’ (or %) – generic way to create addons</p> <p> </p> <p>Note that we expect SX to be configured to match this assignment</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Freight Charge Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>ShippingCharges</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Addon number 2</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>Note that we expect SX to be configured to match this assignment</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Handling Charge Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>HandlingCharges</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Addon number 3</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>Note that we expect SX to be configured to match this assignment</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Terms Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>PaymentMethod.Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Headerextradata.fieldname=’termstype’</p> <p>Headerextradata.fieldvalue=<paymentmethod.name></p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Total Order Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>OrderTotal</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>n/a</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>No equivalent field in SX</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Order Notes</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Notes</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>See notes</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>Send in the same as line notes only set the itemnumber to ‘/’</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td colspan="4" class="TableStyle-Borders-BodyD-Regular-Row1" width="673"><p><strong>CENPOS C/CARD INFO</strong> (all data from CreditCardTransaction unless otherwise noted)</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>General information</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>ALL</p></td> <td colspan="2" class="TableStyle-Borders-BodyD-Regular-Row1" width="393"><p>All credit card fields are sent un using the InFieldValue table:</p> <p>Infieldvalue.level = ‘SFOEOrderTotLoadV4’</p> <p>Infieldvalue.lineNumber = 0 (header)</p> <p>Infieldvalue.sequenceNumber = 0</p> <p>Infieldvalue.fieldname = <see below></p> <p>Infieldvalue.fieldvalue = <see below></p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>MerchantId</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Setting by website</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Fieldname = ‘MerchantId’</p> <p>Fieldvalue = <setting value></p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>Must be returned in order to read the SAST record for additional information about the card data</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>CenPos indicator</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Fieldname = ‘PaymentType’</p> <p>Fieldvalue = ‘cenpos’</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Masked Credit Card #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>CreditCardNumber</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Fieldname =-‘CardNumber’</p> <p>fieldValue = masked credit card #</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>Optional but helps identify to the customer if questions are asked which card was used</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Card Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>CardType</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Fieldname = ‘ProcPaymentType’</p> <p>fieldValue = <card type></p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p>Valid values: AMEX, VISA, MASTERCARD, DISCOVER</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Authorization Token</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Token1</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Fieldname = ‘Token’</p> <p>fieldValue = <></p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Authorization Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Fieldname = ‘AuthAmt’</p> <p>fieldValue = <></p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>Authorization Number</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>AuthCode</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="168"><p>Fieldname = ‘AuthNumber’</p> <p>fieldValue = <></p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="225"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="132"><p>Card Reference Number</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="148"><p> </p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="168"><p>Fieldname = ‘ReferenceNumber’</p> <p>fieldValue = <></p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="225"><p>Currently will not populate</p></td> </tr> </tbody> </table>
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Order Submit – Detail/Line</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="148">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="126">Commerce Table.Field (OrderLine)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="150">ERP Web Service Field (inputLineData)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="234">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Line number</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Line</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>SequenceNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="234"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Line Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>LineItemType</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="234"><p>“I” for Item</p> <p>“C” for comment followed by “X” (do not print on documents), “P” (print on pick ticket only), “I” (print on invoice only) or leave blank to print on all documents.</p> <p> </p> <p>We will use the “cp” by default to print on pick ticket only.</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Unit Sell Price</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>UnitNetPrice</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>Actualsellprice</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="234"><p>Represents the actual amount of the product if non-stock. This means that,basically, we don’t get to set the price UNLESS we set a field in inheaderextra where fieldname = ‘donotrecalculateprice’ with a value of yes in which case the unit sell price we send in will be used.</p> <p> </p> <p>The desired behavior is to check the order</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="148"><p>Order Line Notes</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="126"><p>Notes</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="150"><p>ItemDescription1</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="234"><p>When sending in comments, send in as a separate line with the item number set to ‘&’ (per Ron Stephen’s example, not the documentation) and set the lineitemtype to ‘cp’, and sequencenumber to an increment for each note (that is order note would be 1)</p></td> </tr> </tbody> </table>
## Credit card processing
<<product-name>> calls the payment gateway (typically CenPOS for SX.e) directly to authorize a user’s credit card. The authorization information is passed into SX.e via the order submission process using an authorization token returned by the payment gateway. This information does not apply to SX.e v6.
## A/R aging balances (invoices)
### A/R Aging Balances API
<<product-name>> uses a standard direct call to an API endpoint to display the A/R aging information on the Invoice History page. The standard aging buckets must be set up as global options in Settings. We do not use the labels returned from the API, only the balances themselves.
The API used is sxapiARGetCustomerBalanceV2.
Field Mapping: A/R Aging | Column Title | Column Title | Column Title |
Field Name | Commerce Table.Field (Current Session Context) | ERP Web Service Field | Notes |
Customer # | BillTo.ERPNumber | Parameter 1: Customer # | |
Ship To | Blank | Parameter 2 – Ship To | We will always retrieve the customer level information but, if theERPSequence is provided, the balance for that specific ship-to would be returned. |
Balance Type | BalanceType=t | Parameter 3 – Balance Type | T provides total exposure across ARSC and ARSS |
## Existing orders
### Order history
<<product-name>> retrieves Order history data from SX.e via a direct call to the ERP database. The data is stored within the <<product-name>> database and refreshed on a regular interval, typically once a day.
To limit the number of SX.e order records analyzed, the integration process uses a lookback period in the query. This query is performed against the SX.e order header transaction date AND the order line transaction date.
Orders placed in <<product-name>> are immediately added to the order history tables. This ensures that a user will immediately see their orders on the Order History pages under My Account. Because the SX.e connector order submission uses the real-time API, the ERP order # should also be present.
**Implementation Note - Performance** – Because many SX.e customers have very large tables and there is not an index on the transdt field, the system must perform a table scan, which can greatly increase refresh run time. A setting exists to capture the starting order number so that the refreshes will look back by date but limit the search to orders beginning at a specific number. This improves performance and this value can be updated periodically (that is quarterly) if performance is an issue. This applies to order history refresh, invoice history, and shipment history refreshes.
**Implementation Note – Lookback Days** – Optimizely’s strategy is to limit the amount of data being reviewed and transmitted to <<product-name>> for large history files. <<product-name>> only looks for records that have changed within a relatively short period of time, with a default of 5 days to cover any missed refreshes, weekends and holidays. The number can be modified based on implementation preferences. It is coded directly into the WHERE clauses of the history refreshes.
**Record Selection** – Only records for the current company, stagecd between 1 and 5, selected transdt withing the lookback days, and for transtypes not BL, QU, ST, FO, or BR.
**Deletion Strategy** – There is a special strategy for Order History, as it’s not ideal to do a full snapshot of the data. However, we need to catch any changes to, say, order lines that were deleted. A special option to “Delete Children” is used, with the delete action set to Delete. Any order that is processed clears and reloads the order line data to history.
<table class="TableStyle-Borders" width="673" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="673">Field Mapping: Order History - Header</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="141">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="159">ERP Table.Field (oeeh)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="144">Commerce Table.Field (OrderHistory)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="229">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>ERP Order #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>Orderno</p> <p>ordersuf</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>ERPOrderNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>concatenation of (oeeh.orderno) + "-" + (oeeh.ordersuf,"99")</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Order Status</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>stagecd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>Status</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>Value - Description</p> <p>1 - Ordered</p> <p>2 - Picked</p> <p>3 - Shipped</p> <p>4 - Invoiced</p> <p>5 - Paid</p> <p> </p> <p>Records not retrieved into Commerce include: 0 - Quoted & 9 - Do Not Select</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Order Date</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>enterdt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>OrderDate</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Order Type/ Transaction Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>transtype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p> </p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>Used to filter out records from being retrieved into Commerce.</p> <p>All transtypes are retrived into Commerce except: BL, QU, ST, FO, BR.</p> <p>Sample transtype retrieved into Commerce: SO, CS, DO, CR, RM.</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Customer #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>custno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>CustomerNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Ship-To #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>shipto</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>CustomerSequence</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Customer PO #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>custpo</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>CustomerPO</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Terms Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>termtype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>Terms</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Ship Via</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>shipviaty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>ShipCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Requested Ship Date</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>reqshipdt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>RequestedDeliveryDate</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>Note that these are not exactly the same</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Salesperson</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>slsrepout</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>Salesperson</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Billing Information: Company/Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>arsc.name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>BTCompanyName</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>JOIN arsc to oeeh:</p> <p> arsc.cono = oeeh.cono</p> <p> arsc.custno = oeeh.custno</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Billing Information: Address</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>arsc.addr[1..2]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>BTAddress1..2</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Billing Information: City</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>arsc.city</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>BTCity</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Billing Information: State</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>arsc.state</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>BTState</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Billing Information : Zip</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>arsc.zipcode</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>BTPostalCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Billing Information Country</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>Arsc.countrycd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>BTCountry</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipping Information: Company/Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>shiptonm</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>STCompanyName</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipping Information: Address</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>shiptoaddr[1..2]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>STAddress1..2</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipping Information: City</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>shiptocity</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>STCity</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipping Information: State</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>shiptost</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>STState</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipping Information: Postal Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>shiptozip</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>STPostalCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipping Information: Country</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>Countrycd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>STCountry</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Subtotal</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>totlineamt OR totlineord</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>ProductTotal</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>IF stagecd <= 1 THEN oeeh.totlineord ELSE oeeh.totlineamt<br /> Special Instructions:<br /> [result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Order Discount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>specdiscamt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>OrderDiscountAmount</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipping</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>addon.addonnet</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>ShippingCharges</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>SUM of addon.addonnet WHERE addon.addonno = 02<br /> Special Instructions:<br /> [result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)<br /> <br /> JOIN addon TO oeeh:<br /> addon.cono = oeeh.cono<br /> addon.ordertype = "oe"<br /> addon.orderno = oeeh.orderno<br /> addon.ordesuf = oeeh.ordersuf<br /> addon.addonno = 02</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Misc. Charges</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>addon.addonnet</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>OtherCharges</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>SUM of addon.addonnet WHERE addon.addonno <> 02<br /> Special Instructions:<br /> [result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)<br /> <br /> JOIN addon TO oeeh:<br /> addon.cono = oeeh.cono<br /> addon.ordertype = "oe"<br /> addon.orderno = oeeh.orderno<br /> addon.ordesuf = oeeh.ordersuf<br /> addon.addonno <> 02</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Sales Tax</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>taxamt[1-4]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>TaxAmount</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>oeeh.taxamt[1] + oeeh.taxamt[2] +</p> <p>oeeh.taxamt[3] + oeeh.taxamt[4]</p> <p>Special Instructions:</p> <p>[result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Order Total</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="159"><p>Calculated</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="144"><p>OrderTotal</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="229"><p>SUM(Subtotal + Order Discount + Shipping + Misc Charges + Sales Tax)</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="141"><p>Order Notes</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="159"><p>notes.noteln[1…16]</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="144"><p>Notes</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="229"><p>There are up to 16 lines of notes per page and up to 99 pages. If notes.noteln[x] is blank, don't display.</p> <p> </p> <p>JOIN notes TO oeeh:</p> <p> notes.cono = oeeh.cono</p> <p> notes.notestype = "o"</p> <p> notes.primarykey = string(oeeh.orderno)</p> <p> notes.secondarykey = blank OR string(oeeh.ordersuf)</p> <p> (notes.printfl2 = yes OR notes.printfl5 = yes)</p></td> </tr> </tbody> </table>
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Order History - Detail</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="125">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="115">ERP Table.Field (oeel)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="148">Commerce Table.Field (OrderHistoryLine)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="270">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>ERP Order #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>orderno<br /> ordersuf</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>OrderHistoryId</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p>concatenation of (oeeh.orderno) + "-" + (oeeh.ordersuf,"99")</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Line Number</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>lineno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>LineNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Customer #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>custno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>CustomerNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Ship-To #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>shipto</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>CustomerSequence</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Line Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>LineType</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p>Static Value = 'Product'</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Item #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>shipprod</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>ProductERPNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Item Description</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>descrip[1-2] OR icsp.proddesc & icsp.proddesc2</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Description</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p>IF oeel.specnstype <> ‘’ THEN (l=lost, s=special order, n=nonstock) concatenate(oeel.proddesc, " ", oeel.prodesc2) ELSE concatenate(icsp.descrip[1], " ", icsp.descrip[2])</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Warehouse</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>Whse</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>Warehouse</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit of Measure</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>Unit</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>UnitOfMeasure</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>QTY Ordered</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>Qtyord</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>QtyOrdered</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>QTY Shipped</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>Qtyship</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>QtyShipped</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p>IF oeeh.stagecd <= 1 THEN blank or zero ELSE oeel.qtyship</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Inventory Qty Ordered</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>StkQtyOrd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>InventoryQtyOrdered</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Inventory Qty Shipped</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>Stkqtyship</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>InventoryQtyShipped</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Unit Price</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>Price</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>UnitNetPrice</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Extended Price</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>netord OR netamt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>LineTotal</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p>IF oeeh.stagecd <= 1 THEN oeel.netord ELSE oeel.netamt</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="125"><p>Ship Date</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="115"><p>oeeh.shipdt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="148"><p>LastShipDate</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="270"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="125"><p>Line Notes</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="115"><p>com.noteln</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="148"><p>Notes</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="270"><p>JOIN com TO oeel</p> <p> oeel.cono = com.cono AND</p> <p> oeel.orderno = com.orderno AND</p> <p> oeel.ordersuf = com.ordersuf AND</p> <p> oeel.lineno = com.lineno AND</p> <p> com.comtype = ‘oe’ AND</p> <p> (com.printfl = ‘yes’ OR com.printfl2 = ‘yes’)</p></td> </tr> </tbody> </table>
### Shipments
<<product-name>>’s shipment refresh assumes some sort of shipping interface is used within SX.e so that OEEHP records are being generated with tracking information. This refresh typically runs once per day and uses a lookback period from which to run the query.
To limit the number of SX.e order records analyzed, the integration process uses a lookback period in the query. This query is used against only the SX.e order header transaction date, since we do not expect OEEH/OEEL records to change once invoiced.
Refer to the Implementation Notes in Order History Refresh for additional information. **(Anchor link)**
**Deletion Strategy** – Since this is not a full snapshot and this data is highly unlikely to change once processed, the Ignore delete action is used.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Order History - Shipment</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="141">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="155">ERP Table.Field (oeehp)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="156">Commerce Table.Field (Shipment)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="206">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>ERP Order Number</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>orderno<br /> ordersuf</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="156"><p>ERPOrderNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="206"><p>concatenation of (oeeh.orderno) + "-" + (oeeh.ordersuf,"99")</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="141"><p>Shipment #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="155"><p>orderno<br /> ordersuf</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="156"><p>ShipmentNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="206"><p>concatenation of (oeeh.orderno) + "-" + (oeeh.ordersuf,"99")</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="141"><p>Shipment Date</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="155"><p>transdt</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="156"><p>ShipmentDate</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="206"><p> </p></td> </tr> </tbody> </table>
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="610">Field Mapping: Order History – Shipment Packages</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="124">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="132">ERP Table.Field (oeehp)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="171">Commerce Table.Field (ShipmentPackage)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="182">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>Shipment #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>orderno<br /> ordersuf</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>ShipmentID</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="182"><p>concatenation of (orderno) + "-" + (ordersuf,"99")</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>Ship Via</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>shipviaty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>Carrier</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="182"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>Tracking #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>trackerno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>TrackingNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="182"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="124"><p>Freight Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="132"><p>freightamt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="171"><p>Freight</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="182"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="124"><p>Package #</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="132"><p>pkgno</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="171"><p>PackageNumber</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="182"><p> </p></td> </tr> </tbody> </table>
### Invoices
Invoice data is retrieved from SX.e via a direct call to ERP database. The data is stored within the <<product-name>> database and refreshed on a regular interval, typically once a day.
To limit the number of SX.e order records analyzed, the integration process uses a lookback period in the query. This query is used against only the SX.e order header transaction date, since we do not expect OEEH/OEEL records to change once invoiced.
Refer to the Implementation Notes in Order History Refresh for additional information.
The filter for these records only includes the specified company; stagecd 4 or 5; excludes transtypes BL, QU, ST, FO, and BR; enterdt not null; and transdt within the specified timeframe window.
**Deletion Strategy** – We will employ the Ignore strategy, as we will only be taking a snapshot and do not expect line information to change once the status of the order is changed to Invoiced.
<table class="TableStyle-Borders" data-cellspacing="0"> <colgroup> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> <col style="width: 25%" /> </colgroup> <thead> <tr class="header TableStyle-Borders-Head-Header1"> <th colspan="4" class="TableStyle-Borders-HeadD-Regular-Header1" width="658">Field Mapping: Invoice History - Header</th> </tr> <tr class="odd TableStyle-Borders-Head-Header1"> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="131">Field Name</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="126">ERP Table.Field (oeeh)</th> <th class="TableStyle-Borders-HeadE-Regular-Header1" width="150">Commerce Table.Field (InvoiceHistory)</th> <th class="TableStyle-Borders-HeadD-Regular-Header1" width="252">Notes</th> </tr> </thead> <tbody> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Invoice #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>orderno + ordersuf</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>InvoiceNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>concatenation of (oeeh.orderno) + "-" + (oeeh.ordersuf,"99")</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Invoice Date</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>invoicedt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>InvoiceDate</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Invoice Due Date</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Aret.duedt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>DueDate</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>Join to ARET on cono, custno, invdt, invno, invsuf where transcd = 0</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Invoice Type</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>InvoiceType</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>Static value = ‘Invoice’</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Invoice Status</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>stagecd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>Status</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>Only stagecd 4 and 5 will be pulled into invoice history</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Open Invoice Flag</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p> </p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>IsOpen</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>If stagecd = 5,set = 1, else 0</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Customer #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>custno</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>CustomerNumber</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Ship-To #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>shipto</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>CustomerSequence</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Currency</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Currencyty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>CurrencyCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Customer PO #</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>custpo</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>CustomerPO</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Terms</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>termtype</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>Terms</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Ship Code</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Shipviaty</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>ShipCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Salesperson</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Slsrepout</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>Salesperson</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Subtotal</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Totlineamt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>ProductTotal</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>Special Instructions:<br /> [result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Sales Tax</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>taxamt[1-4]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>TaxAmount</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>oeeh.taxamt[1] + oeeh.taxamt[2] +<br /> oeeh.taxamt[3] + oeeh.taxamt[4]<br /> Special Instructions:<br /> [result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Shipping</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>addon.addonnet</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>ShippingAndHandling</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>SUM of addon.addonnet WHERE addon.addonno = 02<br /> Special Instructions:<br /> [result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)<br /> <br /> JOIN addon TO oeeh:<br /> addon.cono = oeeh.cono<br /> addon.ordertype = "oe"<br /> addon.orderno = oeeh.orderno<br /> addon.ordesuf = oeeh.ordersuf<br /> addon.addonno = 02</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Discount Amount</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>specdiscamt</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>DiscountAmount</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Misc Charges</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>addon.addonnet</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>OtherCharges</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>SUM of addon.addonnet WHERE addon.addonno <> 02<br /> Special Instructions:<br /> [result field] * (IF oeeh.transtype = "rm" THEN -1 ELSE 1)<br /> <br /> JOIN addon TO oeeh:<br /> addon.cono = oeeh.cono<br /> addon.ordertype = "oe"<br /> addon.orderno = oeeh.orderno<br /> addon.ordesuf = oeeh.ordersuf<br /> addon.addonno <> 02</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Invoice Total</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Calculated</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>InvoiceTotal</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>SUM(Subtotal + Order Discount + Shipping + Misc Charges + Sales Tax)</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Current Balance</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>Derived from ARET</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>CurrentBalance</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>InvoiceTotal – sum(aret.amount) joined on cono, custno, invdt, invno, invsuf where transcd <> 0 and <> 11</p> <p> </p> <p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Billing Information: Company/Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>arsc.name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>BTCompanyName</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>JOIN arsc to oeeh:<br /> arsc.cono = oeeh.cono<br /> arsc.custno =oeeh.custno</p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Billing Information: Address</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>arsc.addr[1]<br /> arsc.addr[2]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>BTAddress1..2</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Billing Information: City</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>arsc.city</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>BTCity</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Billing Information: Country</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>arsc.countrycd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>BTCountry</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Billing Information: State</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>arsc.state</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>BTState</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Billing Information: Zip</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>arsc.zipcode</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>BTPostalCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Billing Information: Country</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>arsc.countrycd</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>BTCountry</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Ship-To Information: Company/Name</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>shiptonm</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>STCompanyName</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p>JOIN arsc to oeeh:<br /> arsc.cono = oeeh.cono<br /> arsc.custno =oeeh.custno</p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Ship-To Information: Address</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>shiptoaddr[1..2]</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>STAddress1..2</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Ship-To Information: City</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>shiptocity</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>STCity</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Ship-To Information: State</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>shiptost</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>STState</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="even TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="131"><p>Ship-To Information : Zip</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="126"><p>shiptozip</p></td> <td class="TableStyle-Borders-BodyE-Regular-Row1" width="150"><p>STPostalCode</p></td> <td class="TableStyle-Borders-BodyD-Regular-Row1" width="252"><p> </p></td> </tr> <tr class="odd TableStyle-Borders-Body-Row1"> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="131"><p>Ship-To Information : Country</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="126"><p>Shiptocountrycd</p></td> <td class="TableStyle-Borders-BodyB-Regular-Row1" width="150"><p>STCountry</p></td> <td class="TableStyle-Borders-BodyA-Regular-Row1" width="252"><p> </p></td> </tr> </tbody> </table>
Field Mapping: Invoice History - Detail | Column Title | Column Title | Column Title |
Field Name | ERP Web Service Field (oeel) | Commerce Table.Field (InvoiceHistoryLine) | Notes |
Invoice # | orderno + ordersuf | InvoiceHistoryId | concatenation of (oeeh.orderno) + "-" + (oeeh.ordersuf,"99") |
Line Number | lineno | LineNumber | |
Release Number | ReleaseNumber | Static value = 0 | |
Line Type | LineType | Static Value = 'Product' | |
ERP Order # | orderno + ordersuf | ERPOrderNumber | concatenation of (oeeh.orderno) + "-" + (oeeh.ordersuf,"99") |
Item # | shipprod | ProductERPNumber | |
Item Description | icsp.descrip\[1-2\] OR oeel.proddesc & oeel.proddesc2 | Description | IF oeel.specnstype = "n" THEN concatenate(oeel.proddesc, " ", oeel.prodesc2) ELSE concatenate(icsp.descrip\[1\], " ", icsp.descrip\[2\]) |
Unit of Measure | unit | UnitOfMeasure | |
Warehouse | Whse | Warerhouse | |
Qty Invoiced | qtyord | QtyInvoiced | |
Unit Price | price | UnitPrice | |
Extended Price | netamt | LineTotal |