Samples > Data load utility samples > Examples: Mapping data > Examples: Mapping inventory data


Example: Inserting and replacing expected inventory records (RA)

Use the data load utility to load data into the RA table.


Prerequisites

Before running this example, ensure the following prerequisites have been fulfilled:


CSV file with sample data

In this example the data source is a CSV file named ra.csv. The file contains sample data.

CSV file with sample data

VendorName CreateTime OrderDate DateClosed OpenIndicator ExternalId
J and J Company 2005-07-12 01:01:01.123456 2005-06-12 02:02:02.123456 2005-08-08 00:00:00.0 True ATP-1201 Record 1
AdvancedB2BDirect Vendor 2008-05-15 04:04:04.0 2008-04-15 00:00:00.0 2008-12-24 09:02:00.0 False ATP-1301 Record 1
AdvancedB2BDirect Vendor 2009-05-21 00:00:00.0 2009-04-21 00:00:00.0      


CSV file column definitions

VendorName

(Mandatory, string) The vendor that supplied the inventory. This field is mandatory and cannot be null.

CreateTime

(Mandatory, timestamp) The date and time this record is created. The format of the input is "yyyy-mm-dd hh:mm:ss.SSSSSS". the length of the fractional seconds should no more than 6. The format may be customized by setting timestampPattern property in wc-dataload.xml. This field is part of the unique index of RA table. This field is mandatory and cannot be null.

OrderDate

(Mandatory, timestamp) The date and time this order was created with the vendor. The format is same as specified in CreateTime. This field is mandatory and cannot be null.

DateClosed

(Timestamp) The date and time this record was closed. The format is same as specified in CreateTime.

OpenIndicator

(Boolean) True = Expected inventory may still be received and allocated to backorders. False = No further inventory will be received. Expected inventory may not be allocated to backorders.

ExternalId

(String) The external identifier. It is usually supplied by the vendor and can be used to reference this record.

Other optional fields not included in the example are:

StoreIdentifier

(String) The identifier of the store which this item belongs to, such as ConsumerDirect. This column can be added into CSV if the item belongs to a store which is different from the store defined in BusinessContext elements of wc-dataload-env.xml. If this column is not provided in the CSV file, the StoreIdentifier in the business context will be used.

Delete

(String) Indicates whether to delete this record. This field takes effect when dataLoadMode is "replace". If the value of this field equals to deleteValue, the corresponding record will be deleted. The default deleteValue is 1, deleteValue may be configured under <DataMapping> element in BusinessObjectConfigFile.


Business context data

The following code snippet from the wc-dataload-env.xml configuration file provides the business context data necessary for loading the data:

<_config:BusinessContext storeIdentifier="ConsumerDirect"> 
</_config:BusinessContext>

storeIdentifier

(String) The identifier of the store which this item belongs to, such as ConsumerDirect. It is used if CSV file does not provide this information. The StoreIdentifier is used to retrieve the storeID and the ownerID.


Map data

The following snippet from the sample configuration file demonstrates how to map each column of data in the source CSV file to a value.

<_config:DataReader className="com.ibm.commerce.foundation.dataload.datareader.CSVReader" firstLineIsHeader="true">     <_config:Data>         <_config:column number="1" name="VendorName" />         <_config:column number="2" name="CreateTime" />         <_config:column number="3" name="OrderDate" />         <_config:column number="4" name="ClosedDate" />         <_config:column number="5" name="OpenIndicator" />         <_config:column number="6" name="ExternalId" />     </_config:Data>
</_config:DataReader >

The following snippet from the sample configuration file demonstrates how to map each column of the data in the CSV file to a business object logical schema path. The attribute 'value' represents the name of a column of the CSV file which is defined in the configuration snippet above. Each column in the CSV file must have a mapping to the logical schema path. If the optional fields specified above are present in the CSV file, the mapping for them must be added. The mapping logical schema path is specified in the following table.

<_config:DataMapping>     <_config:mapping xpath="ExpectedInventoryRecordIdentifier/ExternalIdentifier/VendorName" value="VendorName" valueFrom="InputData" />     <_config:mapping xpath="OrderDate" value="OrderDate" valueFrom="InputData" />     <_config:mapping xpath="ExpectedInventoryRecordIdentifier/ExternalIdentifier/CreateDate" value="CreateTime" valueFrom="InputData" />       <_config:mapping xpath="CloseDate" value="ClosedDate" valueFrom="InputData" />     
    <_config:mapping xpath="OpenIndicator" value="OpenIndicator" valueFrom="InputData" />     <_config:mapping xpath="ExternalId" value="ExternalId" valueFrom="InputData" /></_config:DataMapping>


Business object mediator

The mediator class name is com.ibm.commerce.inventory.dataload.mediator.ExpectedInventoryMediator. The corresponding logical schema is ExpectedInventoryRecord.xsd.


+

Search Tips   |   Advanced Search