Exemplo n.º 1
0
        /// <summary>
        /// Arma un objeto artículo de proveedor.
        /// </summary>
        /// <param name="hojaXl"></param>
        /// <param name="fila"></param>
        /// <param name="param"></param>
        /// <param name="linea"></param>
        public void armaArtProvEconn(ExcelWorksheet hojaXl, int fila, Parametros param, int linea)
        {
            try
            {
                iError = 0;

                taCreateItemVendors_ItemsTaCreateItemVendors articuloIvVendor = new taCreateItemVendors_ItemsTaCreateItemVendors();
                articuloIvVendor.ITEMNMBR = param.defaultInventoryItem;
                articuloIvVendor.VENDORID = hojaXl.Cells[fila, Convert.ToInt32(param.facturaPopCaVENDORID)].Value.ToString();
                articuloIvVendor.VNDITNUM = param.defaultInventoryItem;
                articuloIvVendor.UpdateIfExists = 0;

                itemsVendors[linea] = articuloIvVendor;
            }
            catch (Exception errorGral)
            {
                sMensaje = "Error al armar artículos de proveedor. " + errorGral.Message + " [armaFacturaDeEconn]";
                iError++;
            }

        }
        private void CreateVendorItem(string vendorID, string itemNumber)
        {
            eConnectType eConnect;

            try
            {
                taCreateItemVendors_ItemsTaCreateItemVendors record = new taCreateItemVendors_ItemsTaCreateItemVendors();
                record.ITEMNMBR = itemNumber;
                record.VENDORID = vendorID;

                IVVendorItemType curType = new IVVendorItemType();
                curType.taCreateItemVendors_Items = new taCreateItemVendors_ItemsTaCreateItemVendors[] { record };


                IVVendorItemType[] typeArray = new IVVendorItemType[] { curType };

                eConnect = new eConnectType(); 
                eConnect.IVVendorItemType = typeArray;

                //Serialize the XML document to the file
                XmlSerializer serializer = new XmlSerializer(typeof(eConnectType));
                StringWriter writer = new StringWriter();
                serializer.Serialize(writer, eConnect);

                DynamicsGP_ec.SendData(writer.ToString());
            }

            catch (Exception ex)
            {
                //ExceptionMngr.WriteEvent("CreateVendorItem: ", ListValues.EventType.Error, ex, null,
                    //ListValues.ErrorCategory.ErpConnection);

                throw new Exception("CreateVendorItem: "+ ex.Message);
            }

        }
Exemplo n.º 3
0
        /// <summary>
        /// save part vendor master
        /// </summary>
        /// <param name="part"></param>
        /// <returns></returns>
        public OperationResult SavePartVendorMaster(IV00103_Part_Vendor_Master part)
        {
            var operationResult = new OperationResult();

            var existingPart = _dynamicsContext.IV00103_Part_Vendor_Master.FirstOrDefault(x => x.ITEMNMBR.Replace(" ", string.Empty).ToLower() == part.ITEMNMBR.Replace(" ", string.Empty).ToLower());

            if (existingPart == null)
            {
                logger.Debug("Vendor Part is being created...");

                using (eConnectMethods e = new eConnectMethods())
                {
                    try
                    {
                        // Instantiate a taCreateItemVendors_ItemsTaCreateItemVendors XML node object
                        taCreateItemVendors_ItemsTaCreateItemVendors item = new taCreateItemVendors_ItemsTaCreateItemVendors();

                        //Populate elements of the taCreateItemVendors_ItemsTaCreateItemVendors XML node object
                        item.ITEMNMBR       = part.ITEMNMBR;
                        item.VENDORID       = part.VENDORID;
                        item.VNDITNUM       = part.VNDITNUM;
                        item.UpdateIfExists = 0;

                        // Instantiate a IVItemMasterType schema object
                        IVItemMasterType itemtype = new IVItemMasterType();

                        // Populate the IVItemMasterType schema with the taCreateItemVendors_ItemsTaCreateItemVendors XML node
                        itemtype.taCreateItemVendors_Items = new taCreateItemVendors_ItemsTaCreateItemVendors[1] {
                            item
                        };
                        IVItemMasterType[] vendorItem = { itemtype };

                        // Instantiate an eConnectType schema object
                        eConnectType eConnect = new eConnectType();

                        // Instantiate a Memory Stream object
                        MemoryStream memoryStream = new MemoryStream();

                        // Create an XML serializer object
                        XmlSerializer serializer = new XmlSerializer(eConnect.GetType());

                        // Populate the eConnectType object with the IVItemMasterType schema object
                        eConnect.IVItemMasterType = vendorItem;

                        // Serialize the eConnectType.
                        serializer.Serialize(memoryStream, eConnect);

                        // Reset the position of the memory stream to the start.
                        memoryStream.Position = 0;

                        // Create an XmlDocument from the serialized eConnectType in memory.
                        XmlDocument xmlDocument = new XmlDocument();
                        xmlDocument.Load(memoryStream);
                        memoryStream.Close();

                        // Call eConnect to process the XmlDocument.
                        e.CreateEntity(_dynamicsConnection, xmlDocument.OuterXml);

                        operationResult.Success = true;
                        operationResult.Message = "Success";
                    }
                    // The eConnectException class will catch eConnect business logic errors.
                    // display the error message on the console
                    catch (eConnectException exc)
                    {
                        Console.Write(exc.ToString());
                        operationResult.Success = false;
                        operationResult.Message = "Error";
                        logger.ErrorFormat("Error saving new part price header: {0} ", exc.ToString());
                    }
                    // Catch any system error that might occurr.
                    // display the error message on the console
                    catch (System.Exception ex)
                    {
                        Console.Write(ex.ToString());
                        operationResult.Success = false;
                        operationResult.Message = "Error";
                        logger.ErrorFormat("Error saving new part price header: {0} ", ex.ToString());
                    }
                    finally
                    {
                        // Call the Dispose method to release the resources
                        // of the eConnectMethds object
                        e.Dispose();
                    }
                } // end of using statement
            }
            else
            {
                operationResult.Success = false;
                operationResult.Message = "Duplicate Entry";
            }

            return(operationResult);
        }