public Location(string locationName) { NetSuiteService service = new NetSuiteService(); service.CookieContainer = new CookieContainer(); NetsuiteUser user = new NetsuiteUser("3451682", "*****@*****.**", "1026", "tridenT168"); Passport passport = user.prepare(user); Status status = service.login(passport).status; LocationSearch locSearch = new LocationSearch(); SearchStringField locName = new SearchStringField(); locName.@operator = SearchStringFieldOperator.@is; locName.operatorSpecified = true; locName.searchValue = locationName; LocationSearchBasic locSearchBasic = new LocationSearchBasic(); locSearchBasic.name = locName; locSearch.basic = locSearchBasic; SearchResult locationResult = service.search(locSearch); if (locationResult.status.isSuccess != true) throw new Exception("Cannot find Item " + locationName + " " + locationResult.status.statusDetail[0].message); if (locationResult.recordList.Count() != 1) throw new Exception("More than one item found for item " + locationName); this.locationRecord = new RecordRef(); this.locationRecord.type = RecordType.location; this.locationRecord.typeSpecified = true; this.locationRecord.internalId = ((com.netsuite.webservices.Location)locationResult.recordList[0]).internalId; }
public void addItemRecord() { NetSuiteService service = new NetSuiteService(); service.CookieContainer = new CookieContainer(); NetsuiteUser user = new NetsuiteUser("3451682", "*****@*****.**", "1026", "tridenT168"); Passport passport = user.prepare(user); Status status = service.login(passport).status; string itemName = this.ItemName; SearchStringField objItemName = new SearchStringField(); objItemName.searchValue = itemName; objItemName.@operator = SearchStringFieldOperator.@is; objItemName.operatorSpecified = true; ItemSearch objItemSearch = new ItemSearch(); objItemSearch.basic = new ItemSearchBasic(); objItemSearch.basic.itemId = objItemName; SearchPreferences searchPreferences = new SearchPreferences(); searchPreferences.bodyFieldsOnly = false; service.searchPreferences = searchPreferences; SearchResult objItemResult = service.search(objItemSearch); if (objItemResult.status.isSuccess != true) throw new Exception("Cannot find Item " + itemName + " " + objItemResult.status.statusDetail[0].message); if (objItemResult.recordList.Count() != 1) throw new Exception("More than one item found for item " + itemName); InventoryItem iRecord = new InventoryItem(); iRecord = ((InventoryItem)objItemResult.recordList[0]); this.itemRecord = new InventoryItem(); this.itemRecord=iRecord; }
public string createNewBin(InventoryBin bin) { NetSuiteService service = new NetSuiteService(); service.CookieContainer = new CookieContainer(); NetsuiteUser user = new NetsuiteUser("3451682", "*****@*****.**", "1026", "tridenT168"); Passport passport = user.prepare(user); Status status = service.login(passport).status; LocationSearch locationSearch = new LocationSearch(); LocationSearchBasic locationSearchBasic = new LocationSearchBasic(); SearchStringField locationName = new SearchStringField(); locationName.searchValue = bin.LocationName; locationName.@operator = SearchStringFieldOperator.@is; locationName.operatorSpecified = true; locationSearchBasic.name = locationName; locationSearch.basic = locationSearchBasic; SearchResult sr = new SearchResult(); sr = service.search(locationSearch); if (sr.status.isSuccess != true) Console.WriteLine(sr.status.statusDetail[0].message); Bin newBin = new Bin(); RecordRef newLocation = new RecordRef(); newLocation.type = RecordType.location; newLocation.typeSpecified = true; newLocation.internalId = ((com.netsuite.webservices.Location)sr.recordList[0]).internalId; newBin.binNumber = bin.BinNumber; newBin.location = newLocation; WriteResponse writeResponse = service.add(newBin); if (writeResponse.status.isSuccess == true) { Console.WriteLine("Bin: "+ newBin.binNumber +" has been created."); return "Bin: " + newBin.binNumber + " has been created."; } if (writeResponse.status.isSuccess == false) { Console.WriteLine(writeResponse.status.statusDetail[0].message); return writeResponse.status.statusDetail[0].message; } return string.Empty; }
public void addBinRecord(string binNumber) { NetSuiteService service = new NetSuiteService(); service.CookieContainer = new CookieContainer(); NetsuiteUser user = new NetsuiteUser("3451682", "*****@*****.**", "1026", "tridenT168"); Passport passport = user.prepare(user); Status status = service.login(passport).status; SearchStringField objBinNumber = new SearchStringField(); objBinNumber.searchValue = binNumber; objBinNumber.@operator = SearchStringFieldOperator.@is; objBinNumber.operatorSpecified = true; BinSearch objBinSearch = new BinSearch(); objBinSearch.basic = new BinSearchBasic(); objBinSearch.basic.binNumber = objBinNumber; SearchResult objBinResult = service.search(objBinSearch); if (objBinResult.status.isSuccess == false) throw new Exception("Unable to find bin " + binNumber + " is NetSuite"); if (((Bin)objBinResult.recordList[0]).isInactive) throw new Exception("Bin Number " + binNumber + " is inactive in NetSuite"); this.binRecord = new Bin(); this.binRecord = (Bin)objBinResult.recordList[0]; }
public static RecordRef GetCustomer(string strParent, string strPhone) { RecordRef objCustomer = null; CustomerSearch custSearch = new CustomerSearch(); SearchStringField customerPhone = new SearchStringField(); customerPhone.@operator = SearchStringFieldOperator.@is; customerPhone.operatorSpecified = true; customerPhone.searchValue = strPhone; CustomerSearchBasic custBasic = new CustomerSearchBasic(); custBasic.phone = customerPhone; custBasic.parent = new SearchMultiSelectField(); custBasic.parent.@operator = SearchMultiSelectFieldOperator.anyOf; custBasic.parent.operatorSpecified = true; custBasic.parent.searchValue = new RecordRef[1]; custBasic.parent.searchValue[0] = new RecordRef(); custBasic.parent.searchValue[0].internalId = strParent; custBasic.parent.searchValue[0].type = RecordType.customer; custBasic.parent.searchValue[0].typeSpecified = true; custSearch.basic = custBasic; SearchResult res = _service.search(custSearch); if (res.status.isSuccess) { if (res.recordList != null && res.recordList.Length == 1) { objCustomer = new RecordRef(); objCustomer.type = RecordType.customer; objCustomer.typeSpecified = true; System.String entID = ((Customer)(res.recordList[0])).entityId; objCustomer.name = entID; objCustomer.internalId = ((Customer)(res.recordList[0])).internalId; } } return objCustomer; }
public void DeleteBin(InventoryBin bin) { NetSuiteService service = new NetSuiteService(); service.CookieContainer = new CookieContainer(); NetsuiteUser user = new NetsuiteUser("3451682", "*****@*****.**", "1026", "tridenT168"); Passport passport = user.prepare(user); Status status = service.login(passport).status; BinSearch binSearch = new BinSearch(); BinSearchBasic bSBasic = new BinSearchBasic(); SearchStringField binName = new SearchStringField(); binName.searchValue = bin.BinNumber; binName.@operator = SearchStringFieldOperator.@is; binName.operatorSpecified = true; bSBasic.binNumber = binName; binSearch.basic = bSBasic; SearchResult sr = new SearchResult(); sr = service.search(binSearch); if (sr.status.isSuccess != true) Console.WriteLine(sr.status.statusDetail[0].message); RecordRef binToDelete = new RecordRef(); binToDelete.type = RecordType.bin; binToDelete.typeSpecified = true; binToDelete.name = bin.BinNumber; binToDelete.internalId = ((Bin)sr.recordList[0]).internalId; WriteResponse writeResponse = service.delete(binToDelete); if (writeResponse.status.isSuccess == true) { Console.WriteLine("Bin: " + binToDelete.name + " has been deleted."); } if (writeResponse.status.isSuccess == false) { Console.WriteLine(writeResponse.status.statusDetail[0].message); } }
public void itemFulfillmentSearch(string orderNumber) { NetSuiteService service = new NetSuiteService(); service.CookieContainer = new CookieContainer(); NetsuiteUser user = new NetsuiteUser("3451682", "*****@*****.**", "1026", "tridenT168"); Passport passport = user.prepare(user); Status status = service.login(passport).status; TransactionSearchAdvanced tranSearchAdvanced = new TransactionSearchAdvanced(); TransactionSearch tranSearch = new TransactionSearch(); SearchStringField orderID = new SearchStringField(); orderID.@operator = SearchStringFieldOperator.@is; orderID.operatorSpecified = true; orderID.searchValue = orderNumber; TransactionSearchBasic tranSearchBasic = new TransactionSearchBasic(); tranSearchBasic.tranId = orderID; tranSearch.basic = tranSearchBasic; tranSearchAdvanced.criteria = tranSearch; SearchPreferences searchPreferences = new SearchPreferences(); searchPreferences.bodyFieldsOnly = false; service.searchPreferences = searchPreferences; SearchResult transactionResult = service.search(tranSearchAdvanced); if (transactionResult.status.isSuccess != true) throw new Exception("Cannot find Order " + orderNumber + " " + transactionResult.status.statusDetail[0].message); if (transactionResult.recordList.Count() != 1) throw new Exception("More than one order found for item " + orderNumber); this.itemFulfillment = new com.netsuite.webservices.ItemFulfillment(); this.itemFulfillment = ((com.netsuite.webservices.ItemFulfillment)transactionResult.recordList[0]); }
public string addBin(InventoryBin itemBin) { NetSuiteService service = new NetSuiteService(); service.CookieContainer = new CookieContainer(); NetsuiteUser user = new NetsuiteUser("3451682", "*****@*****.**", "1026", "tridenT168"); Passport passport = user.prepare(user); Status status = service.login(passport).status; SearchStringField objItemName = new SearchStringField(); objItemName.searchValue = itemBin.InventoryItem.ItemName; objItemName.@operator = SearchStringFieldOperator.@is; objItemName.operatorSpecified = true; ItemSearch objItemSearch = new ItemSearch(); objItemSearch.basic = new ItemSearchBasic(); objItemSearch.basic.itemId = objItemName; SearchResult objItemResult = service.search(objItemSearch); if (objItemResult.status.isSuccess != true) { Console.WriteLine("Cannot find Item " + itemBin.InventoryItem.ItemName + " " + objItemResult.status.statusDetail[0].message); return "Cannot find Item " + itemBin.InventoryItem.ItemName + " " + objItemResult.status.statusDetail[0].message; } if (objItemResult.recordList.Count() != 1) { Console.WriteLine("More than one item found for item " + itemBin.InventoryItem.ItemName); return "More than one item found for item " + itemBin.InventoryItem.ItemName; } SearchStringField objBinNumber = new SearchStringField(); objBinNumber.searchValue = itemBin.BinNumber; objBinNumber.@operator = SearchStringFieldOperator.@is; objBinNumber.operatorSpecified = true; BinSearch objBinSearch = new BinSearch(); objBinSearch.basic = new BinSearchBasic(); objBinSearch.basic.binNumber = objBinNumber; SearchResult objBinResult = service.search(objBinSearch); if (objBinResult.status.isSuccess == false) { Console.WriteLine("Unable to find bin " + itemBin.BinNumber + " in NetSuite"); return "Unable to find bin " + itemBin.BinNumber + " in NetSuite"; } if (objItemResult.recordList.Count() != 1) { Console.WriteLine("More than one bin found for " + itemBin.BinNumber); return "More than one bin found for " + itemBin.BinNumber; } if (((Bin)objBinResult.recordList[0]).isInactive) { Console.WriteLine("Bin Number " + itemBin.BinNumber + " is inactive in NetSuite"); return "Bin Number " + itemBin.BinNumber + " is inactive in NetSuite"; } RecordRef objAddBin = new RecordRef(); objAddBin.type = RecordType.bin; objAddBin.typeSpecified = true; objAddBin.internalId = ((Bin)objBinResult.recordList[0]).internalId; objAddBin.name = ((Bin)objBinResult.recordList[0]).binNumber; InventoryItemBinNumber objItemBinNumber = new InventoryItemBinNumber(); objItemBinNumber.location = ((Bin)objBinResult.recordList[0]).location.internalId; objItemBinNumber.binNumber = objAddBin; InventoryItemBinNumber[] objItemBinNumbers = new InventoryItemBinNumber[1]; objItemBinNumbers[0] = objItemBinNumber; if(((InventoryItem)objItemResult.recordList[0]).useBins==true) { //Initialize item to update InventoryItem objInventoryItem = new InventoryItem(); objInventoryItem.internalId = ((InventoryItem)objItemResult.recordList[0]).internalId; objInventoryItem.salesDescription = ((InventoryItem)objItemResult.recordList[0]).salesDescription; objInventoryItem.purchaseDescription = ((InventoryItem)objItemResult.recordList[0]).purchaseDescription; objInventoryItem.binNumberList = new InventoryItemBinNumberList(); objInventoryItem.binNumberList.binNumber = objItemBinNumbers; objInventoryItem.binNumberList.replaceAll = false; //Request to update item with bins WriteResponse objWriteResponse = service.update(objInventoryItem); if (objWriteResponse.status.isSuccess != true) { Console.WriteLine(objWriteResponse.status.statusDetail[0].message); return objWriteResponse.status.statusDetail[0].message; } Console.WriteLine("Bins successfully updated for: "+((InventoryItem)objItemResult.recordList[0]).itemId); return "Bins successfully updated for: " + ((InventoryItem)objItemResult.recordList[0]).itemId; } return string.Empty; }
public CustomerSearch CustomerNameSearch(string custName) { CustomerSearch custSearch = new CustomerSearch(); SearchStringField customerEntityID = new SearchStringField(); customerEntityID.@operator = SearchStringFieldOperator.@is; customerEntityID.operatorSpecified = true; customerEntityID.searchValue = custName; CustomerSearchBasic custBasic = new CustomerSearchBasic(); custBasic.entityId = customerEntityID; custSearch.basic = custBasic; return custSearch; }
public Dictionary<string, double> getBins(string SKU) { NetSuiteService objService = new NetSuiteService(); objService.CookieContainer = new CookieContainer(); Passport passport = new Passport(); passport.account = "3451682"; passport.email = "*****@*****.**"; RecordRef role = new RecordRef(); role.internalId = "1026"; passport.role = role; passport.password = "******"; Passport objPassport = passport; Status objStatus = objService.login(objPassport).status; ItemSearchAdvanced isa = new ItemSearchAdvanced(); isa.savedSearchId = "141"; //substitute your own saved search internal ID ItemSearch iS = new ItemSearch(); ItemSearchBasic isb = new ItemSearchBasic(); SearchStringField itemSKU = new SearchStringField(); itemSKU.searchValue = SKU; itemSKU.@operator = SearchStringFieldOperator.contains; itemSKU.operatorSpecified = true; isb.itemId = itemSKU; iS.basic = isb; isa.criteria = iS; SearchResult sr = new SearchResult(); sr = objService.search(isa); if (sr.status.isSuccess != true) throw new Exception("Cannot find item."); Dictionary<string, double> binNumberList = new Dictionary<string, double>(); foreach (ItemSearchRow irow in sr.searchRowList) { if (irow.basic.itemId[0].searchValue == SKU) { binNumberList.Add(irow.basic.binNumber[0].searchValue, irow.basic.binOnHandAvail[0].searchValue); } } return binNumberList; }