Пример #1
0
        private void cargaProductosalPedido(ProductoPredidoTablas dttDatosProducto, int intTotalUnidadesCombo)
        {
            DataRow row;

            row                              = dttPedidoDigitado.NewRow();
            row["CODIGO"]                    = dttDatosProducto.CODIGO_VENTA;
            row["NOMBRE"]                    = dttDatosProducto.NOMBRE_PRODUCTO;
            row["CANTIDAD"]                  = Convert.ToInt32(txtUnidades.Text) * intTotalUnidadesCombo;
            row["PRECIO_UNI"]                = dttDatosProducto.PRECIO_LISTA;
            row["PRECIO_PUB"]                = dttDatosProducto.PRECIO_LISTA;
            row["SUMA_VALOR_PUBLICO"]        = dttDatosProducto.SUMA_VALOR_PUBLICO;
            row["ESCALA_DESCUENTOS"]         = dttDatosProducto.SUMA_PARA_LLEGAR_ESCALA;
            row["SE_LE_APLICA_ESCALA_DCTOS"] = dttDatosProducto.APLICA_ESCALA;
            row["MONTO_PEDIDO"]              = dttDatosProducto.APLICA_SUPERA_MONTO_MINIMO;
            row["ES_ACCESORIO"]              = dttDatosProducto.ES_ACCESORIO;
            row["PORC_IVA"]                  = dttDatosProducto.IVA;
            row["MOTIVO_VENTA"]              = dttDatosProducto.MOTIVO_VENTA;
            row["CENTRO_GASTO"]              = dttDatosProducto.CENTRO_GASTO_VENTA;
            row["MOTIVO_OBSEQUIO"]           = dttDatosProducto.MOTIVO_OBSEQUIO;
            row["CENTRO_GASTO_OBSEQUIO"]     = dttDatosProducto.CENTRO_GASTO_OBSEQUIO;
            row["SAV_LISTA_PRECIOS_PROD"]    = dttDatosProducto.CODIGO;
            row["TIPO_PRODUCTO"]             = dttDatosProducto.CODIGO_TIPO_PRODUCTO;
            row["OFERTA_APLICADA"]           = false;
            row["ELIMINA"]                   = false;
            if (Convert.ToInt32(dttDatosProducto.IVA) > 0)
            {
                row["TIENE_IVA"]    = "S";
                row["VALOR_IVA"]    = Convert.ToDouble(dttDatosProducto.PRECIO_LISTA) - (Convert.ToDouble(dttDatosProducto.PRECIO_LISTA) / (1 + Convert.ToDouble(dttDatosProducto.IVA)));
                row["PRECIO_NET"]   = Convert.ToDouble(dttDatosProducto.PRECIO_LISTA) / (1 + Convert.ToDouble(dttDatosProducto.IVA));
                row["PRECIO_TOTAL"] = (Convert.ToDouble(dttDatosProducto.PRECIO_LISTA) - (Convert.ToDouble(dttDatosProducto.PRECIO_LISTA) * Convert.ToDouble(dttDatosProducto.IVA))) * Convert.ToDouble(row["CANTIDAD"]);
            }
            else
            {
                row["TIENE_IVA"]    = "N";
                row["VALOR_IVA"]    = 0;
                row["PRECIO_NET"]   = Convert.ToDouble(dttDatosProducto.PRECIO_LISTA) / (1 + Convert.ToDouble(dttDatosProducto.IVA));
                row["PRECIO_TOTAL"] = Convert.ToDouble(dttDatosProducto.PRECIO_LISTA) * Convert.ToDouble(row["CANTIDAD"]);
            }
            row["PORC_DESCUENTO_ESPECIAL"]  = "0";
            row["PRECIO_LISTA"]             = Convert.ToDouble(dttDatosProducto.PRECIO_LISTA);
            row["PORC_ESCALA_DESCUENTO"]    = "0";
            row["VALOR_ESCALA_UNITARIO"]    = "0";
            row["VALOR_ESCALA_TOTAL"]       = "0";
            row["VALOR_DESCUENTO_ESPECIAL"] = "0";
            row["SUMA_NETO"]       = dttDatosProducto.SUMA_PARA_VALOR_NETO;
            row["PUNTOS_PRODUCTO"] = (Convert.ToInt32(dttDatosProducto.PUNTOS_PREMIO) * ((Convert.ToInt32(txtUnidades.Text) * intTotalUnidadesCombo)));
            // intTotalValorPublico = intTotalValorPublico + (dttDatosProducto.Rows(0).Item("LPP_NPRECIO_LISTA") * (1 + (dttDatosProducto.Rows(0).Item("LPP_NPORC_IVA")) / 100))
            // txtValorPublico.Text = intTotalValorPublico * CInt(row("CANTIDAD"))
            dttPedidoDigitado.Rows.Add(row);
        }
Пример #2
0
        private void adicionaProducto()
        {
            if (txtUnidades.Text != "" | txtUnidades.Text != null)
            {
                for (var i = 0; i <= dttPedidoDigitado.Rows.Count - 1; i++)
                {
                    DataRow row = dttPedidoDigitado.Rows[0];

                    if (dttPedidoDigitado.Rows[i]["CODIGO"].ToString() == txtCodigoProducto.Text.ToUpper().Trim())
                    {
                        txtUnidades.Text = dttPedidoDigitado.Rows[i]["CANTIDAD"].ToString() + txtUnidades.Text;
                        dttPedidoDigitado.Rows[i]["ELIMINA"] = true;
                        blnEliminaItems = true;
                        break;
                    }
                }
                if (blnEliminaItems)
                {
                    dttPedidoDigitado = eliminaItems(dttPedidoDigitado);
                    blnEliminaItems   = false;
                }

                if (blnCargacombo)
                {
                    foreach (CombosTabla DetalleCombo in ListcombosTabla)
                    {
                        var dttDetalleCombo = ServicePedidos.getProductoCombos(DetalleCombo.CODIGO);
                        foreach (ProductosCombo detallecombo in dttDetalleCombo)
                        {
                            var dttProducto = ServicePedidos.getProductoPedidos(detallecombo.CODIGO_VENTA, intCodigoListaPrecios);

                            foreach (ProductoPredidoTablas predidoTablas in dttProducto)
                            {
                                ProductoPredidoTablas productoPredido = new ProductoPredidoTablas();
                                productoPredido.APLICA_ESCALA = predidoTablas.APLICA_ESCALA;
                                productoPredido.APLICA_SUPERA_MONTO_MINIMO = predidoTablas.APLICA_SUPERA_MONTO_MINIMO;
                                productoPredido.CENTRO_GASTO_OBSEQUIO      = predidoTablas.CENTRO_GASTO_OBSEQUIO;
                                productoPredido.CENTRO_GASTO_VENTA         = predidoTablas.CENTRO_GASTO_VENTA;
                                productoPredido.CODIGO = predidoTablas.CODIGO;
                                productoPredido.CODIGO_TIPO_PRODUCTO  = predidoTablas.CODIGO_TIPO_PRODUCTO;
                                productoPredido.CODIGO_VENTA          = predidoTablas.CODIGO_VENTA;
                                productoPredido.COSTO_PRODUCTO        = predidoTablas.COSTO_PRODUCTO;
                                productoPredido.ES_ACCESORIO          = predidoTablas.ES_ACCESORIO;
                                productoPredido.ES_CODIGO_PRINCIPAL   = predidoTablas.ES_CODIGO_PRINCIPAL;
                                productoPredido.ES_FALTANTE_ANUNCIADO = predidoTablas.ES_FALTANTE_ANUNCIADO;
                                productoPredido.IVA                     = predidoTablas.IVA;
                                productoPredido.LIMITE_VENTA            = predidoTablas.LIMITE_VENTA;
                                productoPredido.MOTIVO_OBSEQUIO         = predidoTablas.MOTIVO_OBSEQUIO;
                                productoPredido.MOTIVO_VENTA            = predidoTablas.MOTIVO_VENTA;
                                productoPredido.NOMBRE_PRODUCTO         = predidoTablas.NOMBRE_PRODUCTO;
                                productoPredido.PERMITE_DIGITAR         = predidoTablas.PERMITE_DIGITAR;
                                productoPredido.PRECIO_CATALOGO         = predidoTablas.PRECIO_CATALOGO;
                                productoPredido.PRECIO_LISTA            = predidoTablas.PRECIO_LISTA;
                                productoPredido.PUNTOS_PREMIO           = predidoTablas.PUNTOS_PREMIO;
                                productoPredido.REFERENCIA              = predidoTablas.REFERENCIA;
                                productoPredido.SUMA_PARA_LLEGAR_ESCALA = predidoTablas.SUMA_PARA_LLEGAR_ESCALA;
                                productoPredido.SUMA_PARA_VALOR_NETO    = predidoTablas.SUMA_PARA_VALOR_NETO;
                                productoPredido.SUMA_VALOR_PUBLICO      = predidoTablas.SUMA_VALOR_PUBLICO;
                                cargaProductosalPedido(productoPredido, detallecombo.UNIDADES);
                            }
                        }
                    }
                }
                else
                {
                    var dttProducto = ServicePedidos.getProductoPedidos(txtCodigoProducto.Text, intCodigoListaPrecios);

                    foreach (ProductoPredidoTablas predidoTablas in dttProducto)
                    {
                        ProductoPredidoTablas productoPredido = new ProductoPredidoTablas();
                        productoPredido.APLICA_ESCALA = predidoTablas.APLICA_ESCALA;
                        productoPredido.APLICA_SUPERA_MONTO_MINIMO = predidoTablas.APLICA_SUPERA_MONTO_MINIMO;
                        productoPredido.CENTRO_GASTO_OBSEQUIO      = predidoTablas.CENTRO_GASTO_OBSEQUIO;
                        productoPredido.CENTRO_GASTO_VENTA         = predidoTablas.CENTRO_GASTO_VENTA;
                        productoPredido.CODIGO = predidoTablas.CODIGO;
                        productoPredido.CODIGO_TIPO_PRODUCTO  = predidoTablas.CODIGO_TIPO_PRODUCTO;
                        productoPredido.CODIGO_VENTA          = predidoTablas.CODIGO_VENTA;
                        productoPredido.COSTO_PRODUCTO        = predidoTablas.COSTO_PRODUCTO;
                        productoPredido.ES_ACCESORIO          = predidoTablas.ES_ACCESORIO;
                        productoPredido.ES_CODIGO_PRINCIPAL   = predidoTablas.ES_CODIGO_PRINCIPAL;
                        productoPredido.ES_FALTANTE_ANUNCIADO = predidoTablas.ES_FALTANTE_ANUNCIADO;
                        productoPredido.IVA                     = predidoTablas.IVA;
                        productoPredido.LIMITE_VENTA            = predidoTablas.LIMITE_VENTA;
                        productoPredido.MOTIVO_OBSEQUIO         = predidoTablas.MOTIVO_OBSEQUIO;
                        productoPredido.MOTIVO_VENTA            = predidoTablas.MOTIVO_VENTA;
                        productoPredido.NOMBRE_PRODUCTO         = predidoTablas.NOMBRE_PRODUCTO;
                        productoPredido.PERMITE_DIGITAR         = predidoTablas.PERMITE_DIGITAR;
                        productoPredido.PRECIO_CATALOGO         = predidoTablas.PRECIO_CATALOGO;
                        productoPredido.PRECIO_LISTA            = predidoTablas.PRECIO_LISTA;
                        productoPredido.PUNTOS_PREMIO           = predidoTablas.PUNTOS_PREMIO;
                        productoPredido.REFERENCIA              = predidoTablas.REFERENCIA;
                        productoPredido.SUMA_PARA_LLEGAR_ESCALA = predidoTablas.SUMA_PARA_LLEGAR_ESCALA;
                        productoPredido.SUMA_PARA_VALOR_NETO    = predidoTablas.SUMA_PARA_VALOR_NETO;
                        productoPredido.SUMA_VALOR_PUBLICO      = predidoTablas.SUMA_VALOR_PUBLICO;
                        cargaProductosalPedido(productoPredido, 1);
                        llenaGrilla(dttPedidoDigitado);
                        limpiaCamposdigitacion();
                    }
                }
            }
        }
Пример #3
0
        private void cargaProductoDigitado()
        {
            if (txtCodigoProducto.Text != string.Empty)
            {
                var dttEquivalencia = ServicePedidos.getEquivalencias(4, 0, txtCodigoProducto.Text);
                if (dttEquivalencia.Count() > 0)
                {
                    txtCodigoProducto.Text = dttEquivalencia.FirstOrDefault().CODIGO_ENTREGA;
                    var dttDatosCombo = ServicePedidos.getCombos(3, 0, dttEquivalencia.FirstOrDefault().CODIGO_ENTREGA, intCodigoListaPrecios);
                    if (dttDatosCombo.Count() > 0)
                    {
                        foreach (CombosTabla item in dttDatosCombo)
                        {
                            CombosTabla combo = new CombosTabla();
                            combo.CODIGO = item.CODIGO;
                            combo.CODIGO_LISTA_PRECIOS = item.CODIGO_LISTA_PRECIOS;
                            combo.CODIGO_VENTA         = item.CODIGO_VENTA;
                            combo.ESTADO         = item.ESTADO;
                            combo.NOMBRE         = item.NOMBRE;
                            combo.PORC_DESCUENTO = item.PORC_DESCUENTO;
                            combo.PRECIO_VENTA   = item.PRECIO_VENTA;
                            ListcombosTabla.Add(combo);
                        }
                    }
                }
                else
                {
                    var dttDatosCombo = ServicePedidos.getCombos(3, 0, txtCodigoProducto.Text, intCodigoListaPrecios);
                    if (dttDatosCombo.Count() > 0)
                    {
                        foreach (CombosTabla item in dttDatosCombo)
                        {
                            CombosTabla combo = new CombosTabla();
                            combo.CODIGO = item.CODIGO;
                            combo.CODIGO_LISTA_PRECIOS = item.CODIGO_LISTA_PRECIOS;
                            combo.CODIGO_VENTA         = item.CODIGO_VENTA;
                            combo.ESTADO         = item.ESTADO;
                            combo.NOMBRE         = item.NOMBRE;
                            combo.PORC_DESCUENTO = item.PORC_DESCUENTO;
                            combo.PRECIO_VENTA   = item.PRECIO_VENTA;
                            ListcombosTabla.Add(combo);
                        }
                    }
                }

                if (ListcombosTabla.Count() > 0)
                {
                    txtNombreProducto.Text = ListcombosTabla.FirstOrDefault().NOMBRE;
                    txtUnidades.Focus();
                    blnCargacombo = true;
                }
                else
                {
                    try
                    {
                        blnCargacombo = false;
                        var dttProducto = ServicePedidos.getProductoPedidos(txtCodigoProducto.Text, intCodigoListaPrecios);
                        foreach (ProductoPredidoTablas Productopedido in dttProducto)
                        {
                            ProductoPredidoTablas producto = new ProductoPredidoTablas();
                            producto.APLICA_ESCALA = Productopedido.APLICA_ESCALA;
                            producto.APLICA_SUPERA_MONTO_MINIMO = Productopedido.APLICA_SUPERA_MONTO_MINIMO;
                            producto.CENTRO_GASTO_OBSEQUIO      = Productopedido.CENTRO_GASTO_OBSEQUIO;
                            producto.CENTRO_GASTO_VENTA         = Productopedido.CENTRO_GASTO_VENTA;
                            producto.CODIGO = Productopedido.CODIGO;
                            producto.CODIGO_TIPO_PRODUCTO  = Productopedido.CODIGO_TIPO_PRODUCTO;
                            producto.CODIGO_VENTA          = Productopedido.CODIGO_VENTA;
                            producto.COSTO_PRODUCTO        = Productopedido.COSTO_PRODUCTO;
                            producto.ES_ACCESORIO          = Productopedido.ES_ACCESORIO;
                            producto.ES_CODIGO_PRINCIPAL   = Productopedido.ES_CODIGO_PRINCIPAL;
                            producto.ES_FALTANTE_ANUNCIADO = Productopedido.ES_FALTANTE_ANUNCIADO;
                            producto.IVA                     = Productopedido.IVA;
                            producto.LIMITE_VENTA            = Productopedido.LIMITE_VENTA;
                            producto.MOTIVO_OBSEQUIO         = Productopedido.MOTIVO_OBSEQUIO;
                            producto.MOTIVO_VENTA            = Productopedido.MOTIVO_VENTA;
                            producto.NOMBRE_PRODUCTO         = Productopedido.NOMBRE_PRODUCTO;
                            producto.PERMITE_DIGITAR         = Productopedido.PERMITE_DIGITAR;
                            producto.PRECIO_CATALOGO         = Productopedido.PRECIO_CATALOGO;
                            producto.PRECIO_LISTA            = Productopedido.PRECIO_LISTA;
                            producto.PUNTOS_PREMIO           = Productopedido.PUNTOS_PREMIO;
                            producto.REFERENCIA              = Productopedido.REFERENCIA;
                            producto.SUMA_PARA_LLEGAR_ESCALA = Productopedido.SUMA_PARA_LLEGAR_ESCALA;
                            producto.SUMA_PARA_VALOR_NETO    = Productopedido.SUMA_PARA_VALOR_NETO;
                            producto.SUMA_VALOR_PUBLICO      = Productopedido.SUMA_VALOR_PUBLICO;
                            ListProducto.Add(producto);
                        }
                        if (dttProducto.Count() > 0)
                        {
                            if (!dttProducto.FirstOrDefault().PERMITE_DIGITAR)
                            {
                                MessageBox.Show("El producto no está habilitado para registro en pedidos", "No habilitado", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
                                txtCodigoProducto.Focus();
                            }
                            else if (dttProducto.FirstOrDefault().ES_FALTANTE_ANUNCIADO)
                            {
                                MessageBox.Show("El producto digitado es un faltante anunciado", "No habilitado", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
                                txtCodigoProducto.Focus();
                            }
                            else
                            {
                                txtNombreProducto.Text = dttProducto.FirstOrDefault().NOMBRE_PRODUCTO;
                                txtUnidades.Focus();
                            }
                        }
                        else
                        {
                            txtCodigoProducto.Focus();
                            txtCodigoProducto.Text = null;
                            MessageBox.Show("Código de producto no existe", "Producto no Existe", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                    }
                }
            }
        }