Tuesday, October 16, 2018

Assign value to Package List on Initialize and Add of Item Fulfillment using C#.NET

The code snippet below shows how to specify a package list on initialize and add of Item Fulfillment using C#.NET.

InitializeRecord ir = new InitializeRecord();
ir.type = InitializeType.itemFulfillment;
InitializeRef iref = new InitializeRef();
iref.typeSpecified = true;
iref.type = InitializeRefType.salesOrder;
iref.internalId = "123"; //specify internal id
ir.reference = iref;

// Perform initialize to get a copy of ItemFulfillment record
ReadResponse getInitResp = _service.initialize(ir);

// Keep a record of the original IF
ItemFulfillment ifrec = (ItemFulfillment)getInitResp.record;

ItemFulfillment recToFulfill = new ItemFulfillment();
recToFulfill.createdFrom = ifrec.createdFrom;
recToFulfill.generateIntegratedShipperLabel=true;

ItemFulfillmentItemList ifitemlist = ifrec.itemList;
ItemFulfillmentItem[] ifitems = new ItemFulfillmentItem[ifitemlist.item.Length];
RecordRef locRef = new RecordRef();
locRef.internalId = "1";
for (int i = 0; i < ifitemlist.item.Length; i++)
{
   ItemFulfillmentItem ffItem = new ItemFulfillmentItem();
   ffItem.item = ifitemlist.item[i].item;
   ffItem.orderLineSpecified = true;
   ffItem.orderLine = ifitemlist.item[i].orderLine;
   ffItem.location = locRef;
   ifitems[i] = ffItem;
}
ItemFulfillmentItemList ifitemlistToFulfill = new ItemFulfillmentItemList();
ifitemlistToFulfill.replaceAll = true;
ifitemlistToFulfill.item = ifitems;
recToFulfill.itemList = ifitemlistToFulfill;

ItemFulfillmentPackageList ifpl = new ItemFulfillmentPackageList();
ItemFulfillmentPackage[] ifps = new ItemFulfillmentPackage[1];
ifps[0] = new ItemFulfillmentPackage();
ifps[0].packageTrackingNumber = "1ZA87T331392847234";
ifps[0].packageWeight = 100;
ifps[0].packageWeightSpecified = true;
ifps[0].packageDescr = "Test";
ifpl.package = ifps;
recToFulfill.packageList = ifpl;

WriteResponse writeRes = _service.add(recToFulfill);



Note: "_service" is an instance of NetSuiteService and must be declared and instantiated accordingly.

No comments:

Post a Comment