Exemplo n.º 1
0
        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;
        }
Exemplo n.º 3
0
        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;
        }
Exemplo n.º 4
0
        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;
        }
Exemplo n.º 5
0
        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;
        }
Exemplo n.º 6
0
        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)
            {
            }
        }
Exemplo n.º 7
0
        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]);
        }