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); }
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(); } } } }
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); } } } }