Esempio n. 1
0
        public static async Task <WSShipToAddressNAV.Create_Result> CreateAsync(ShipToAddressViewModel shipToAddress, NAVWSConfigurations WSConfigurations)
        {
            if (shipToAddress == null)
            {
                throw new ArgumentNullException("shipToAddress");
            }

            WSShipToAddressNAV.Create navCreate = new WSShipToAddressNAV.Create()
            {
                WSShipToAddress = MapShipToAddressNAV(shipToAddress)
            };

            //Configure NAV Client
            EndpointAddress ws_URL = new EndpointAddress(WSConfigurations.WS_ShipToAddress_URL.Replace("Company", WSConfigurations.WS_User_Company));

            WSShipToAddressNAV.WSShipToAddress_PortClient WS_ShipToAddress = new WSShipToAddressNAV.WSShipToAddress_PortClient(navWSBinding, ws_URL);
            WS_ShipToAddress.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Delegation;
            WS_ShipToAddress.ClientCredentials.Windows.ClientCredential          = new NetworkCredential(WSConfigurations.WS_User_Login, WSConfigurations.WS_User_Password, WSConfigurations.WS_User_Domain);

            try
            {
                navCreate.WSShipToAddress.Utilizador_Alteracao_eSUCH = shipToAddress.Utilizador_Alteracao_eSUCH;

                WSShipToAddressNAV.Create_Result result = await WS_ShipToAddress.CreateAsync(navCreate);

                return(result);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Esempio n. 2
0
        public static async Task <WSShipToAddressNAV.Delete_Result> DeleteAsync(string CustomerNo, string Code, NAVWSConfigurations WSConfigurations)
        {
            if (CustomerNo == null)
            {
                throw new ArgumentNullException("CustomerNo");
            }

            //Configure NAV Client
            EndpointAddress ws_URL = new EndpointAddress(WSConfigurations.WS_ShipToAddress_URL.Replace("Company", WSConfigurations.WS_User_Company));

            WSShipToAddressNAV.WSShipToAddress_PortClient WS_ShipToAddress = new WSShipToAddressNAV.WSShipToAddress_PortClient(navWSBinding, ws_URL);
            WS_ShipToAddress.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Delegation;
            WS_ShipToAddress.ClientCredentials.Windows.ClientCredential          = new NetworkCredential(WSConfigurations.WS_User_Login, WSConfigurations.WS_User_Password, WSConfigurations.WS_User_Domain);

            try
            {
                WSShipToAddressNAV.Read_Result resultRead = await WS_ShipToAddress.ReadAsync(CustomerNo, Code);

                WSShipToAddressNAV.Delete_Result result = await WS_ShipToAddress.DeleteAsync(resultRead.WSShipToAddress.Key);

                return(result);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Esempio n. 3
0
        public static async Task <List <ShipToAddressViewModel> > GetByNoAsync(string CustomerNo, NAVWSConfigurations WSConfigurations)
        {
            if (CustomerNo == null)
            {
                throw new ArgumentNullException("CustomerNo");
            }

            //Configure NAV Client
            EndpointAddress WS_URL = new EndpointAddress(WSConfigurations.WS_ShipToAddress_URL.Replace("Company", WSConfigurations.WS_User_Company));

            WSShipToAddressNAV.WSShipToAddress_PortClient WS_ShipToAddress = new WSShipToAddressNAV.WSShipToAddress_PortClient(navWSBinding, WS_URL);
            WS_ShipToAddress.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Delegation;
            WS_ShipToAddress.ClientCredentials.Windows.ClientCredential          = new NetworkCredential(WSConfigurations.WS_User_Login, WSConfigurations.WS_User_Password, WSConfigurations.WS_User_Domain);

            var filter = new WSShipToAddressNAV.WSShipToAddress_Filter {
                Field = WSShipToAddressNAV.WSShipToAddress_Fields.Customer_No, Criteria = CustomerNo
            };
            var filterArray = new WSShipToAddressNAV.WSShipToAddress_Filter[] { filter };

            try
            {
                WSShipToAddressNAV.ReadMultiple_Result result = await WS_ShipToAddress.ReadMultipleAsync(filterArray, null, 0);  //WS_ShipToAddress.ReadAsync(CustomerNo);

                //return result.ReadMultiple_Result1;

                List <ShipToAddressViewModel> retval = new List <ShipToAddressViewModel>();
                foreach (var r in result.ReadMultiple_Result1)
                {
                    var item = MapShipToAddressViewModel(r);
                    item.Selected = false;
                    retval.Add(item);
                }
                return(retval);
                //return WSCustomer;
            }
            catch (Exception ex)
            {
                throw;
            }
        }