Esempio n. 1
0
        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;
        }
Esempio n. 2
0
        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;
        }
Esempio n. 3
0
        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;
        }
Esempio n. 4
0
        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;
        }
Esempio n. 6
0
        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);

            }
        }
Esempio 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]);
        }
Esempio n. 8
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;
        }
Esempio n. 9
0
 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;
 }
Esempio n. 10
-1
        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;
        }