public static void DeleteItemFullfitment() { string strItem = ""; try { TransactionSearch xactionSearch = new TransactionSearch(); //xactionSearch.basic //SearchMultiSelectField entity = new SearchMultiSelectField(); //entity.@operator = SearchMultiSelectFieldOperator.anyOf; //entity.operatorSpecified = true; //RecordRef custRecordRef = new RecordRef(); //custRecordRef.internalId = strCustomerId; //custRecordRef.type = RecordType.customer; //custRecordRef.typeSpecified = true; //RecordRef[] custRecordRefArray = new RecordRef[1]; //custRecordRefArray[0] = custRecordRef; //entity.searchValue = custRecordRefArray; SearchEnumMultiSelectField searchSalesOrderField = new SearchEnumMultiSelectField(); searchSalesOrderField.@operator = SearchEnumMultiSelectFieldOperator.anyOf; searchSalesOrderField.operatorSpecified = true; System.String[] soStringArray = new System.String[1]; soStringArray[0] = "_itemFulfillment"; searchSalesOrderField.searchValue = soStringArray; TransactionSearchBasic xactionBasic = new TransactionSearchBasic(); xactionBasic.type = searchSalesOrderField; xactionBasic.dateCreated = new SearchDateField(); xactionBasic.dateCreated.@operator = SearchDateFieldOperator.within; xactionBasic.dateCreated.operatorSpecified = true; xactionBasic.dateCreated.searchValue = new DateTime(2011, 12, 30); xactionBasic.dateCreated.searchValueSpecified = true; xactionBasic.dateCreated.searchValue2 = new DateTime(2011, 12, 31); xactionBasic.dateCreated.searchValue2Specified = true; xactionSearch.basic = xactionBasic; SearchResult objSearchResult = _service.search(xactionSearch); if (objSearchResult.status != null && objSearchResult.status.isSuccess) { if (objSearchResult.recordList != null) { Record[] recordList; for (int i = 1; i <= objSearchResult.totalPages; i++) { recordList = objSearchResult.recordList; for (int j = 0; j < recordList.Length; j++) { if (recordList[j] is ItemFulfillment) { try { ItemFulfillment objOrder = (ItemFulfillment)(recordList[j]); object objCustomReseller = GetValue("custbodytbfcustomerid", objOrder.customFieldList); if (objCustomReseller != null && (objCustomReseller.ToString().Equals("CST100WA") || objCustomReseller.ToString().Equals("1"))) { RecordRef objRef = new RecordRef(); objRef.internalId = ((ItemFulfillment)recordList[j]).internalId; objRef.type = RecordType.itemFulfillment; objRef.typeSpecified = true; WriteResponse writeRes = _service.delete(objRef); if (writeRes.status.isSuccess) { Console.WriteLine("delete: " + objRef.internalId); } else { Console.WriteLine(getStatusDetails(writeRes.status)); } } } catch (Exception objExc) { Console.WriteLine(objExc.ToString()); } } } } } } else { strItem = "error"; } } catch (Exception objExc) { Console.WriteLine(objExc.ToString()); } }
public void savedSearchMaxCredible(NetSuiteService service) { TransactionSearchAdvanced TSA = new TransactionSearchAdvanced(); TSA.savedSearchScriptId = TxtSavedSearch1.Text; TransactionSearch TS = new TransactionSearch(); TransactionSearchBasic TSB = new TransactionSearchBasic(); if (Settings.Default.APP_DatesEnabled) { DateTime theSearchStartDate = DTPickerFrom.Value; DateTime theSearchFinishDate = DTPickerTo.Value; SearchDateField theDTSearch = new SearchDateField(); theDTSearch.operatorSpecified = true; theDTSearch.@operator = SearchDateFieldOperator.within; theDTSearch.searchValue2Specified = true; theDTSearch.searchValueSpecified = true; theDTSearch.searchValue = theSearchStartDate; theDTSearch.searchValue2 = theSearchFinishDate; TSB.tranDate = theDTSearch; } TS.basic = TSB; TSA.criteria = TS; AppendTextBoxLine(txtSearchResults, "Performing search ...", true); SearchResult SR = service.search(TSA); if (SR.totalRecords == 0) { AppendTextBoxLine(txtSearchResults, "No records / consignments were returned in the Saved Search : " + TxtSavedSearch1.Text, true); } else { AppendTextBoxLine(txtSearchResults, SR.totalRecords + " records / consignments were returned in the Saved Search : " + TxtSavedSearch1.Text, true); SearchRow[] SSR; SSR = SR.searchRowList; SearchRow[] SSRM; // Build Intermediate List to allow pagination System.Collections.ArrayList theInvoiceList = new System.Collections.ArrayList(); for (int ssr = 0; ssr < SSR.Length; ssr++) theInvoiceList.Add(SSR[ssr]); AppendTextBoxLine(txtSearchResults, "Records downloaded : " + theInvoiceList.Count + " of " + SR.totalRecords.ToString(), true); if (SR.totalRecords > SR.pageSize) { int batchNo = 2; // Keep getting pages until there are no more pages to get while (SR.totalRecords > ((batchNo - 1) * SR.pageSize)) { AppendTextBoxLine(txtSearchResults, "Fetching next batch no. " + batchNo, true); // Invoke searchMore() operation - ensure logged in ... setupNetSuiteObjects(service); // To ensure logged in before next batch SearchResult SRM = service.searchMore(batchNo); if (SRM != null) { // Process response if (SRM.status.isSuccess) { SSRM = SRM.searchRowList; for (int ssrm = 0; ssrm < SSRM.Length; ssrm++) theInvoiceList.Add(SSRM[ssrm]); AppendTextBoxLine(txtSearchResults, "Records downloaded : " + theInvoiceList.Count + " of " + SR.totalRecords.ToString(), true); batchNo++; } else { AppendTextBoxLine(txtSearchResults, getStatusDetails(SRM.status), true); } } } } _SSRECORDS = new SearchRow[theInvoiceList.Count]; IEnumerator iienum = theInvoiceList.GetEnumerator(); for (int iicr = 0; iienum.MoveNext(); iicr++) { _SSRECORDS[iicr] = (SearchRow)iienum.Current; } //Record list assembly complete - create list for MaxCredible upload ProgressNSSearch.Maximum = _SSRECORDS.Length; for (int i = 0; i < _SSRECORDS.Length; i++) { TransactionSearchRow TSR = (TransactionSearchRow)_SSRECORDS[i]; // Declare all the variables for use when writing the file... //DOCNUM string theInternalid = ""; if (TSR.basic.internalId != null) { theInternalid = TSR.basic.internalId[0].searchValue.internalId; } string sDocNum = ""; if (TSR.basic.tranId != null) { sDocNum = TSR.basic.tranId[0].searchValue.ToString(); } //DATE string sDate = ""; if (TSR.basic.tranDate != null) { sDate = TSR.basic.tranDate[0].searchValue.ToString("dd/MM/yyyy"); } AppendTextBoxLine(txtSearchResults, (i+1) + "\t" + theInternalid + "\t" + sDocNum + "\t" + sDate, false); ProgressNSSearch.Value++; } // Set up MaxCredible Data defaults based on records returned _MaxCredibleData.NR_RECORDS = _SSRECORDS.Length.ToString(); _MaxCredibleData.CHUNK_SIZE = TxtChunkSize.Text; GrpMaxCredible.Text = "Step 2 - Upload " + _MaxCredibleData.NR_RECORDS + " Records to MaxCredible"; updateChunkSizes(); } return; }
public static string GetOrderId(string strCustomerId, double numAmount) { string strItem = ""; try { TransactionSearch xactionSearch = new TransactionSearch(); SearchMultiSelectField entity = new SearchMultiSelectField(); entity.@operator = SearchMultiSelectFieldOperator.anyOf; entity.operatorSpecified = true; RecordRef custRecordRef = new RecordRef(); custRecordRef.internalId = strCustomerId; custRecordRef.type = RecordType.customer; custRecordRef.typeSpecified = true; RecordRef[] custRecordRefArray = new RecordRef[1]; custRecordRefArray[0] = custRecordRef; entity.searchValue = custRecordRefArray; SearchEnumMultiSelectField searchSalesOrderField = new SearchEnumMultiSelectField(); searchSalesOrderField.@operator = SearchEnumMultiSelectFieldOperator.anyOf; searchSalesOrderField.operatorSpecified = true; System.String[] soStringArray = new System.String[1]; soStringArray[0] = "_salesOrder"; searchSalesOrderField.searchValue = soStringArray; TransactionSearchBasic xactionBasic = new TransactionSearchBasic(); xactionBasic.type = searchSalesOrderField; xactionBasic.entity = entity; xactionBasic.status = new SearchEnumMultiSelectField(); xactionBasic.status.@operator = SearchEnumMultiSelectFieldOperator.anyOf; xactionBasic.status.operatorSpecified = true; xactionBasic.status.searchValue = new string[] { "_salesOrderPendingApproval" }; xactionBasic.amount = new SearchDoubleField(); xactionBasic.amount.@operator = SearchDoubleFieldOperator.equalTo; xactionBasic.amount.operatorSpecified = true; xactionBasic.amount.searchValue = numAmount; xactionBasic.amount.searchValueSpecified = true; xactionSearch.basic = xactionBasic; SearchResult objSearchResult = _service.search(xactionSearch); if (objSearchResult.recordList != null) { Record[] recordList; for (int i = 1; i <= objSearchResult.totalPages; i++) { recordList = objSearchResult.recordList; for (int j = 0; j < recordList.Length; j++) { if (recordList[j] is SalesOrder) { SalesOrder so = (SalesOrder)(recordList[j]); strItem = so.internalId; return strItem; } } } } } catch (Exception) { } return strItem; }
public static string GetOrderId(string strCustomerId, string strPONumber, string strOrderNumber) { string strItem = ""; try { TransactionSearch xactionSearch = new TransactionSearch(); //SearchMultiSelectField entity = new SearchMultiSelectField(); //entity.@operator = SearchMultiSelectFieldOperator.anyOf; //entity.operatorSpecified = true; //RecordRef custRecordRef = new RecordRef(); //custRecordRef.internalId = strCustomerId; //custRecordRef.type = RecordType.customer; //custRecordRef.typeSpecified = true; //RecordRef[] custRecordRefArray = new RecordRef[1]; //custRecordRefArray[0] = custRecordRef; //entity.searchValue = custRecordRefArray; SearchEnumMultiSelectField searchSalesOrderField = new SearchEnumMultiSelectField(); searchSalesOrderField.@operator = SearchEnumMultiSelectFieldOperator.anyOf; searchSalesOrderField.operatorSpecified = true; System.String[] soStringArray = new System.String[1]; soStringArray[0] = "_salesOrder"; searchSalesOrderField.searchValue = soStringArray; TransactionSearchBasic xactionBasic = new TransactionSearchBasic(); xactionBasic.type = searchSalesOrderField; //xactionBasic.entity = entity; xactionBasic.otherRefNum = new SearchTextNumberField(); xactionBasic.otherRefNum.@operator = SearchTextNumberFieldOperator.equalTo; xactionBasic.otherRefNum.operatorSpecified = true; xactionBasic.otherRefNum.searchValue = strPONumber; SearchStringCustomField objOrderNumber = new SearchStringCustomField(); objOrderNumber.internalId = "custbodycst_ordernumber"; objOrderNumber.@operator = SearchStringFieldOperator.contains; objOrderNumber.operatorSpecified = true; objOrderNumber.searchValue = strOrderNumber; xactionBasic.customFieldList = new SearchCustomField[] { objOrderNumber }; xactionSearch.basic = xactionBasic; SearchResult objSearchResult = _service.search(xactionSearch); if (objSearchResult.status != null && objSearchResult.status.isSuccess) { if (objSearchResult.recordList != null) { Record[] recordList; for (int i = 1; i <= objSearchResult.totalPages; i++) { recordList = objSearchResult.recordList; for (int j = 0; j < recordList.Length; j++) { if (recordList[j] is SalesOrder) { SalesOrder so = (SalesOrder)(recordList[j]); strItem = so.internalId; return strItem; } } } } } else { strItem = "error"; } } catch (Exception) { } return strItem; }
public static string GetOrderId(string strPONumber, string strReseller) { string strOrderId = ""; try { TransactionSearch xactionSearch = new TransactionSearch(); SearchEnumMultiSelectField searchSalesOrderField = new SearchEnumMultiSelectField(); searchSalesOrderField.@operator = SearchEnumMultiSelectFieldOperator.anyOf; searchSalesOrderField.operatorSpecified = true; System.String[] soStringArray = new System.String[1]; soStringArray[0] = "_salesOrder"; searchSalesOrderField.searchValue = soStringArray; TransactionSearchBasic xactionBasic = new TransactionSearchBasic(); xactionBasic.type = searchSalesOrderField; xactionBasic.otherRefNum = new SearchTextNumberField(); xactionBasic.otherRefNum.@operator = SearchTextNumberFieldOperator.equalTo; xactionBasic.otherRefNum.operatorSpecified = true; xactionBasic.otherRefNum.searchValue = strPONumber; SearchMultiSelectCustomField objReseller = new SearchMultiSelectCustomField(); objReseller.internalId = "custbodytbfcustomerid"; objReseller.@operator = SearchMultiSelectFieldOperator.anyOf; objReseller.operatorSpecified = true; objReseller.searchValue = new ListOrRecordRef[1]; objReseller.searchValue[0] = new ListOrRecordRef(); objReseller.searchValue[0].internalId = strReseller; xactionBasic.customFieldList = new SearchCustomField[] { objReseller }; xactionSearch.basic = xactionBasic; SearchResult objSearchResult = _service.search(xactionSearch); if (objSearchResult.recordList != null) { Record[] recordList; for (int i = 1; i <= objSearchResult.totalPages; i++) { recordList = objSearchResult.recordList; for (int j = 0; j < recordList.Length; j++) { if (recordList[j] is SalesOrder) { SalesOrder so = (SalesOrder)(recordList[j]); strOrderId = so.internalId; } } } } } catch (Exception) { } return strOrderId; }
public static void DeleteSalesOrder() { string strItem = ""; try { TransactionSearch xactionSearch = new TransactionSearch(); //xactionSearch.basic //SearchMultiSelectField entity = new SearchMultiSelectField(); //entity.@operator = SearchMultiSelectFieldOperator.anyOf; //entity.operatorSpecified = true; //RecordRef custRecordRef = new RecordRef(); //custRecordRef.internalId = strCustomerId; //custRecordRef.type = RecordType.customer; //custRecordRef.typeSpecified = true; //RecordRef[] custRecordRefArray = new RecordRef[1]; //custRecordRefArray[0] = custRecordRef; //entity.searchValue = custRecordRefArray; SearchEnumMultiSelectField searchSalesOrderField = new SearchEnumMultiSelectField(); searchSalesOrderField.@operator = SearchEnumMultiSelectFieldOperator.anyOf; searchSalesOrderField.operatorSpecified = true; System.String[] soStringArray = new System.String[1]; soStringArray[0] = "_salesOrder"; searchSalesOrderField.searchValue = soStringArray; TransactionSearchBasic xactionBasic = new TransactionSearchBasic(); xactionBasic.type = searchSalesOrderField; xactionBasic.customFieldList = new SearchCustomField[1]; SearchStringCustomField objNumber = new SearchStringCustomField(); objNumber.internalId = "custbodycst_ordernumber"; objNumber.@operator = SearchStringFieldOperator.notEmpty; objNumber.operatorSpecified = true; xactionBasic.customFieldList[0] = objNumber; xactionSearch.basic = xactionBasic; SearchResult objSearchResult = _service.search(xactionSearch); if (objSearchResult.status != null && objSearchResult.status.isSuccess) { if (objSearchResult.recordList != null) { Record[] recordList; for (int i = 1; i <= objSearchResult.totalPages; i++) { recordList = objSearchResult.recordList; for (int j = 0; j < recordList.Length; j++) { if (recordList[j] is SalesOrder) { try { SalesOrder objOrder = GetSalesOrder(((SalesOrder)(recordList[j])).internalId); object objCustomReseller = GetValue("custbodytbfcustomerid", objOrder.customFieldList); if (objCustomReseller.ToString().Equals("CST100WA")) { RecordRef objRef = new RecordRef(); objRef.internalId = objOrder.internalId; objRef.type = RecordType.salesOrder; objRef.typeSpecified = true; WriteResponse writeRes = _service.delete(objRef); if (writeRes.status.isSuccess) { Console.WriteLine("delete: " + objOrder.tranId); } else { Console.WriteLine(getStatusDetails(writeRes.status)); } } } catch (Exception objExc) { Console.WriteLine(objExc.ToString()); } } } } } } else { strItem = "error"; } } catch (Exception) { } }
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]); }