示例#1
0
        private void button1_Click(object sender, EventArgs e)
        {
            Forms.Producto.Codigo = "";
            Forms.Producto Producto = new Forms.Producto();

            Producto.Show(this);
        }
示例#2
0
 private void toolStripButton1_Click(object sender, EventArgs e)
 {
     if (txtCodigo.Text != "")
     {
         Forms.Producto.Codigo = id.ToString();
         Forms.Producto prod = new Forms.Producto();
         prod.Show(this);
     }
     else
     {
         MessageBox.Show("Debe seleccionar un articulo a modificar");
     }
 }
示例#3
0
 private void toolStripButton2_Click(object sender, EventArgs e)
 {
     Forms.Producto.Codigo = "";
     Forms.Producto prod = new Forms.Producto();
     prod.Show(this);
 }
示例#4
0
        private void button4_Click(object sender, EventArgs e)
        {
            dtProductos.Rows.Clear();
            OpenFileDialog open = new OpenFileDialog();

            open.Filter = "txt files (*.xml)|*.xml";
            if (open.ShowDialog() == DialogResult.OK && open.ToString() != " ")
            {
                XmlDocument CFDI = new XmlDocument();
                CFDI.Load(@open.FileName);
                XmlNode nodo          = CFDI.GetElementsByTagName("cfdi:Comprobante").Item(0);
                string  valorAtributo = nodo.Attributes.GetNamedItem("Fecha").Value;
                dtFechaDoc.Value = Convert.ToDateTime(valorAtributo);
                txtFolio.Text    = nodo.Attributes.GetNamedItem("Folio").Value;
                if (nodo.Attributes.GetNamedItem("Descuento") != null)
                {
                    txtdescuento.Text = nodo.Attributes.GetNamedItem("Descuento").Value.ToString();
                }
                else
                {
                    txtdescuento.Text = "0.00";
                }

                XmlNode          emisor    = CFDI.GetElementsByTagName("cfdi:Emisor").Item(0);
                string           RFC       = emisor.Attributes.GetNamedItem("Rfc").Value;
                Models.Product   prod      = new Models.Product();
                string           clave     = "";
                double           sumatoria = 0;
                Models.Providers proveedor = new Models.Providers();
                using (proveedor)
                {
                    List <Models.Providers> resultado = proveedor.getProviderbyRFC(RFC);
                    if (resultado.Count > 0)
                    {
                        cbProveedor.SelectedValue = resultado[0].Id;
                        txtNumero.Text            = resultado[0].Id.ToString();
                    }
                    else
                    {
                        proveedor.Id   = 0;
                        proveedor.RFC  = emisor.Attributes.GetNamedItem("Rfc").Value;
                        proveedor.Name = emisor.Attributes.GetNamedItem("Nombre").Value;
                        proveedor.createProvider();
                        resultado = proveedor.getProviderbyRFC(RFC);
                        carga_proveedor();
                        cbProveedor.SelectedValue = resultado[0].Id;
                        txtNumero.Text            = resultado[0].Id.ToString();
                    }
                }
                foreach (XmlNode conceptos in CFDI.GetElementsByTagName("cfdi:Conceptos").Item(0).ChildNodes)
                {
                    clave = conceptos.Attributes.GetNamedItem("NoIdentificacion").Value;
                    using (prod)
                    {
                        List <Models.Product> bucador = prod.getProductByigualCode(clave);
                        if (bucador.Count > 0)
                        {
                            sumatoria = Convert.ToDouble(conceptos.Attributes.GetNamedItem("Cantidad").Value) * Convert.ToDouble(conceptos.Attributes.GetNamedItem("ValorUnitario").Value);
                            dtProductos.Rows.Add(bucador[0].Id, bucador[0].Code1, conceptos.Attributes.GetNamedItem("Cantidad").Value, bucador[0].Description, conceptos.Attributes.GetNamedItem("ValorUnitario").Value, sumatoria, "", "", bucador[0].Buy_tax);
                        }
                        else
                        {
                            DialogResult is_new = MessageBox.Show("El producto " + conceptos.Attributes.GetNamedItem("Descripcion").Value + " no fue encontrado, ¿Es nuevo?", "Producto no encontrado", MessageBoxButtons.YesNo);
                            if (is_new == DialogResult.Yes)
                            {
                                Forms.Producto.Codigo = "";
                                Forms.Producto Producto = new Forms.Producto();
                                Producto.txtCodigo1.Text     = clave;
                                Producto.txtDescripcion.Text = conceptos.Attributes.GetNamedItem("Descripcion").Value;
                                Producto.txtCosto.Text       = conceptos.Attributes.GetNamedItem("ValorUnitario").Value;
                                Producto.txtUnidadSat.Text   = conceptos.Attributes.GetNamedItem("ClaveUnidad").Value;
                                Producto.txtSAT.Text         = conceptos.Attributes.GetNamedItem("ClaveProdServ").Value;
                                Producto.Owner = this;
                                Producto.ShowDialog();
                                bucador   = prod.getProductByigualCode(clave);
                                sumatoria = Convert.ToDouble(conceptos.Attributes.GetNamedItem("Cantidad").Value) * Convert.ToDouble(conceptos.Attributes.GetNamedItem("ValorUnitario").Value);
                                dtProductos.Rows.Add(bucador[0].Id, bucador[0].Code1, conceptos.Attributes.GetNamedItem("Cantidad").Value, bucador[0].Description, conceptos.Attributes.GetNamedItem("ValorUnitario").Value, sumatoria, "", "", bucador[0].Buy_tax);
                            }
                            else if (is_new == DialogResult.No)
                            {
                                Buscar_producto buscar = new Buscar_producto();
                                buscar.ShowDialog();
                                if (intercambios.Id_producto != 0)
                                {
                                    bucador = prod.getProductById(Convert.ToInt32(intercambios.Id_producto));

                                    bool encontrado = false;
                                    if (bucador[0].Code2.Trim() == "" && encontrado == false)
                                    {
                                        prod.Id    = Convert.ToInt32(intercambios.Id_producto);
                                        prod.Code2 = clave;
                                        prod.update_code2();
                                        encontrado = true;
                                    }

                                    if (bucador[0].Code3.Trim() == "" && encontrado == false)
                                    {
                                        prod.Id    = Convert.ToInt32(intercambios.Id_producto);
                                        prod.Code3 = clave;
                                        prod.update_code3();
                                        encontrado = true;
                                    }
                                    if (bucador[0].Code4.Trim() == "" && encontrado == false)
                                    {
                                        prod.Id    = Convert.ToInt32(intercambios.Id_producto);
                                        prod.Code4 = clave;
                                        prod.update_code4();
                                        encontrado = true;
                                    }

                                    if (bucador[0].Code5.Trim() == "" && encontrado == false)
                                    {
                                        prod.Id    = Convert.ToInt32(intercambios.Id_producto);
                                        prod.Code5 = clave;
                                        prod.update_code5();
                                        encontrado = true;
                                    }
                                    sumatoria = Convert.ToDouble(conceptos.Attributes.GetNamedItem("Cantidad").Value) * Convert.ToDouble(conceptos.Attributes.GetNamedItem("ValorUnitario").Value);
                                    dtProductos.Rows.Add(bucador[0].Id, bucador[0].Code1, conceptos.Attributes.GetNamedItem("Cantidad").Value, bucador[0].Description, conceptos.Attributes.GetNamedItem("ValorUnitario").Value, sumatoria, "", "", bucador[0].Buy_tax);
                                }
                                else
                                {
                                    MessageBox.Show("No se agregara el producto", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                }
                            }
                        }
                    }
                }
                calcula();
            }
        }