void CamposPedido(string CdPedido, string TpDoc, string CdVendedor, string CdCliente, string CdFP, DateTime Fecha, string NmCliente, string Ruc, string Direccion, string Dni, string NmVendedor, string Gestion, string IdDistrito, DataGridView dgv) { using (LiderEntities CTX = new LiderEntities()) { var Rutina = new Libreria.Rutina(); PEDIDO Cp = new PEDIDO { Pedido1 = CdPedido }; CTX.PEDIDOes.Attach(Cp); Cp.Personal = CdVendedor; Cp.Cliente = CdCliente; Cp.FormaPago = CdFP; Cp.Fecha = Fecha; Cp.rsocial = NmCliente; Cp.ruc = Ruc; Cp.direccion = Direccion; Cp.dni = Dni; Cp.encargado = CdVendedor; Cp.npersonal = NmVendedor; Cp.nencargado = NmVendedor; Cp.gestion = Gestion; Cp.ptollegada = Direccion; Cp.distllegada = IdDistrito; Cp.tipodoc = TpDoc; CTX.Configuration.ValidateOnSaveEnabled = false; CTX.DETPEDIDOes.RemoveRange(CTX.DETPEDIDOes.Where(a => a.Pedido == CdPedido)); foreach (DataGridViewRow fila in dgv.Rows) { DETPEDIDO ItemCp = new DETPEDIDO(); ItemCp.Pedido = CdPedido; ItemCp.Producto = Convert.ToString(fila.Cells["Codigo"].Value); ItemCp.PrecUnit = Convert.ToDecimal(fila.Cells["PrecioNeto"].Value); ItemCp.Cantidad = Convert.ToDecimal(fila.Cells["Cantidad"].Value); ItemCp.Estado = "P"; ItemCp.TipoPrecio = Convert.ToString(fila.Cells["TpPrecio"].Value); ItemCp.TranGratuita = (decimal)0.00; ItemCp.lote = string.Empty; ItemCp.fvctolote = Convert.ToDateTime("1990/01/01"); ItemCp.flgSurtido = "N"; ItemCp.IDBonificacion = Convert.ToInt32(fila.Cells["IDBonificacion"].Value == string.Empty ? 0 : fila.Cells["IDBonificacion"].Value); ItemCp.PrecioUnitario = Convert.ToDecimal(fila.Cells["PrecioUnitario"].Value); ItemCp.PrecioNeto = Convert.ToDecimal(fila.Cells["PrecioNeto"].Value); ItemCp.Descuento = Convert.ToDecimal(fila.Cells["Descuento"].Value); ItemCp.Recargo = Convert.ToDecimal(fila.Cells["Recargo"].Value); ItemCp.Afecto = Convert.ToDecimal(fila.Cells["Afecto"].Value); ItemCp.Bonif = Convert.ToBoolean(fila.Cells["Bonif"].Value); CTX.DETPEDIDOes.Add(ItemCp); } CTX.SaveChanges(); Rutina.ejecutar("sp_stock_sistema_nuevo '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Rutina.ejecutar("sp_stock_sistema_web '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Refrescar(); } }
private void FILTRO_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { using (var CTX = new LiderEntities()) { var Rutina = new Libreria.Rutina(); Rutina.actualizar("pedido", "FECHA = REPLACE(CONVERT(VARCHAR(10),Fecha,120),'-','')", "procesado = 0 and statusweb is null"); Rutina.ejecutar(Libreria.Constante.PedidoRecalculo); Filtros.frmFiltros filtro = new Filtros.frmFiltros(); DataGridViewComboBoxColumn i = filtro.dataGridView1.Columns["Index1"] as DataGridViewComboBoxColumn; i.DataSource = CTX.FiltroConfiguracions.Where(a => a.Tipo == "CONDICION").ToArray(); i.DisplayMember = "Descripcion"; i.ValueMember = "Codigo"; DataGridViewComboBoxColumn j = filtro.dataGridView1.Columns["Index3"] as DataGridViewComboBoxColumn; j.DataSource = CTX.FiltroConfiguracions.Where(a => a.Tipo == "OPERADOR").ToList(); j.DisplayMember = "Descripcion"; j.ValueMember = "Codigo"; DataGridViewComboBoxColumn k = filtro.dataGridView1.Columns["Index0"] as DataGridViewComboBoxColumn; k.DataSource = CTX.Database.SqlQuery <string>(Libreria.Constante.Mapa_View + "'vva_pedido'").ToList(); filtro.pasar += new Filtros.frmFiltros.variables(Condicion); filtro.StartPosition = FormStartPosition.CenterScreen; foreach (var fila in CTX.Filtroes.Where(w => w.tabla.Equals(Tabla)).OrderBy(x => x.Orden).ToList()) { filtro.dataGridView1.Rows.Add(fila.campo, fila.condicion, fila.valor, fila.union); } filtro.entidad = Tabla; filtro.ShowDialog(); } }
private void NUEVO_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { var Rutina = new Libreria.Rutina(); Rutina.ejecutar("sp_stock_sistema_nuevo '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Rutina.ejecutar("sp_stock_sistema_web '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Elementos.frmpedido nuevopedido = new Elementos.frmpedido(); nuevopedido.pasar += new Elementos.frmpedido.varaible(CamposPedido_); nuevopedido.StartPosition = FormStartPosition.CenterScreen; nuevopedido.dateEmision.EditValue = DateTime.Now.ToShortDateString(); nuevopedido.dateEntrega.EditValue = DateTime.Now.AddDays(1).ToShortDateString(); nuevopedido.btnCredito.Enabled = false; nuevopedido.txtformaPago.Enabled = false; nuevopedido.txtformaPago.Text = "CONTADO"; nuevopedido.CodigoFP.Text = "C"; nuevopedido.Show(); }
void CamposPedido_(string CdPedido, string TpDoc, string CdVendedor, string CdCliente, string CdFP, DateTime Fecha, string NmCliente, string Ruc, string Direccion, string Dni, string NmVendedor, string Gestion, string IdDistrito, DataGridView dgv) { using (LiderEntities CTX = new LiderEntities()) { var Rutina = new Libreria.Rutina(); var i = CTX.PEDIDOes.Where(x => x.Personal == CdVendedor && x.Fecha == Fecha); string _Correlativo = CdVendedor + Fecha.Year.ToString().Substring(2, 2) + Fecha.Month + Convert.ToInt32(Fecha.Day) + (i.Count() + 1).ToString("D2"); PEDIDO Cp = new PEDIDO(); Cp.Pedido1 = _Correlativo.Trim(); Cp.Personal = CdVendedor; Cp.Cliente = CdCliente; Cp.FormaPago = CdFP; Cp.Fecha = Fecha; Cp.Estado = "P"; Cp.Reparto = true; Cp.TipoPersona = "1"; Cp.Procesado = false; Cp.rsocial = NmCliente; Cp.ruc = Ruc; Cp.direccion = Direccion; Cp.dni = Dni; Cp.encargado = CdVendedor; Cp.npersonal = NmVendedor; Cp.nencargado = NmVendedor; Cp.gestion = Gestion; Cp.ptollegada = Direccion; Cp.distllegada = IdDistrito; Cp.tipodoc = TpDoc; Cp.flagCobertura = "N"; Cp.Fecha_web = DateTime.Now; Cp.statusWeb = null; Cp.Aprobado = true; CTX.Configuration.ValidateOnSaveEnabled = false; CTX.PEDIDOes.Add(Cp); foreach (DataGridViewRow fila in dgv.Rows) { DETPEDIDO ItemCp = new DETPEDIDO(); ItemCp.Pedido = _Correlativo; ItemCp.Producto = Convert.ToString(fila.Cells["Codigo"].Value); ItemCp.PrecUnit = Convert.ToDecimal(fila.Cells["PrecioNeto"].Value); ItemCp.Cantidad = Convert.ToDecimal(fila.Cells["Cantidad"].Value); ItemCp.Estado = "P"; ItemCp.TipoPrecio = Convert.ToString(fila.Cells["TpPrecio"].Value); ItemCp.TranGratuita = (decimal)0.00; ItemCp.lote = string.Empty; ItemCp.fvctolote = Convert.ToDateTime("1990/01/01"); ItemCp.flgSurtido = "N"; ItemCp.IDBonificacion = Convert.ToInt32(fila.Cells["IDBonificacion"].Value == string.Empty ? 0 : fila.Cells["IDBonificacion"].Value); ItemCp.PrecioUnitario = Convert.ToDecimal(fila.Cells["PrecioUnitario"].Value); ItemCp.PrecioNeto = Convert.ToDecimal(fila.Cells["PrecioNeto"].Value); ItemCp.Descuento = Convert.ToDecimal(fila.Cells["Descuento"].Value); ItemCp.Recargo = Convert.ToDecimal(fila.Cells["Recargo"].Value); ItemCp.Afecto = Convert.ToDecimal(fila.Cells["Afecto"].Value); ItemCp.Bonif = Convert.ToBoolean(fila.Cells["Bonif"].Value); CTX.DETPEDIDOes.Add(ItemCp); } CTX.SaveChanges(); Rutina.ejecutar("sp_stock_sistema '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Rutina.ejecutar("sp_stock_sistema_web '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Refrescar(); } }
private void Modificar() { var Rutina = new Libreria.Rutina(); Rutina.ejecutar("sp_stock_sistema_nuevo '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Rutina.ejecutar("sp_stock_sistema_web '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); if (gridView1.SelectedRowsCount > 0) { string Comodin = "'C','K'"; string PedidoNumero = Convert.ToString(gridView1.GetFocusedRowCellValue("num Pedido")); var CTX = new LiderEntities(); var Pe = CTX.PEDIDOes.Where(p => p.Pedido1.Equals(PedidoNumero)); var DPe = CTX.DETPEDIDOes.Where(p => p.Pedido == PedidoNumero).ToList(); var Cl = CTX.CLIENTEs.Where(p => p.Cliente1 == (Pe.Select(s => s.Cliente).FirstOrDefault())); var Zn = CTX.ZONAs.Where(p => p.Zona1 == Cl.Select(s => s.Cliente1).FirstOrDefault()); var Dt = CTX.Distritoes.Where(p => p.iddistrito == Pe.Select(s => s.distllegada).FirstOrDefault()); var Pv = CTX.provincias.Where(p => p.idprovincia == Dt.Select(s => s.idprovincia).FirstOrDefault()); var Fp = CTX.FORMAPAGOes.Where(p => p.FormaPago1 == Pe.Select(s => s.FormaPago).FirstOrDefault()); var Formulario = new Elementos.frmpedido(); Formulario.Existe = true; Formulario.pasar += new Elementos.frmpedido.varaible(CamposPedido); string CodigoVendedor = Pe.Select(a => a.Personal).FirstOrDefault(); string NombreVendedor = Pe.Select(a => a.npersonal).FirstOrDefault(); string CodigoCliente = Pe.Select(a => a.Cliente).FirstOrDefault(); string NombreCliente = Cl.Select(a => a.Alias.Trim()).FirstOrDefault(); string DocumentoCliente = Pe.Select(a => a.ruc.Trim()).FirstOrDefault().Length > 0 ? Pe.Select(a => a.ruc.Trim()).FirstOrDefault() : Pe.Select(a => a.dni.Trim()).FirstOrDefault(); string DireccionCliente = Pe.Select(a => a.direccion).FirstOrDefault(); string ZonaCliente = Zn.Select(a => a.Descripcion).FirstOrDefault(); string DistritoCliente = Dt.Select(a => a.descrip).FirstOrDefault(); string ProvinciaCliente = Pv.Select(a => a.descrip).FirstOrDefault(); string Gestion = Pe.Select(a => a.gestion).FirstOrDefault(); bool Credito = Comodin.Contains(Pe.Select(a => a.FormaPago).FirstOrDefault()) ? false : true; string FormaPago = Pe.Select(a => a.FormaPago).FirstOrDefault(); string FechaEmision = Convert.ToDateTime(Pe.Select(a => a.Fecha).FirstOrDefault()).ToString("dd/MM/yyyy"); try { Formulario.txtcdDocumento.Text = PedidoNumero; Formulario.txtcdVendedor.Text = CodigoVendedor; Formulario.txtnmVendedor.Text = NombreVendedor; Formulario.txtcdCLiente.Text = CodigoCliente; Formulario.txtnmCliente.Text = NombreCliente; Formulario.txtdocCliente.Text = DocumentoCliente; Formulario.txtnmDireccion.EditValue = DireccionCliente; Formulario.txtnmZona.EditValue = ZonaCliente; Formulario.txtcdZona.EditValue = Cl.Select(a => a.Zona).FirstOrDefault(); Formulario.txtnmDistrito.EditValue = DistritoCliente; Formulario.txtcdDistrito.EditValue = Dt.Select(a => a.iddistrito).FirstOrDefault(); Formulario.txtnmProvincia.EditValue = ProvinciaCliente; Formulario.txtcdProvincia.EditValue = Pv.Select(a => a.idprovincia); Formulario.txtcdGestion.Text = Gestion; Formulario.dateEmision.EditValue = FechaEmision; Formulario.dateEntrega.EditValue = Convert.ToDateTime(FechaEmision).AddDays(1).ToString("dd/MM/yyyy"); Formulario.btnCredito.Checked = Credito == true ? true : false; Formulario.txtformaPago.Text = Fp.Select(a => a.Descripcion).FirstOrDefault(); Formulario.CodigoFP.Text = FormaPago; foreach (var X in DPe) { string Codigo = X.Producto; string Descripcion = CTX.PRODUCTOes.Where(a => a.Producto1 == X.Producto).Select(s => s.Descripcion).FirstOrDefault(); decimal Cantidad = Convert.ToDecimal(X.Cantidad); string Unidad = CTX.PRODUCTOes.Where(a => a.Producto1 == X.Producto).Select(s => s.UniMed).FirstOrDefault(); decimal PrecioUnitario = Convert.ToDecimal(X.PrecioUnitario); decimal PrecioNeto = Convert.ToDecimal(X.PrecioNeto); decimal Descuento = Convert.ToDecimal(X.Descuento); decimal Recargo = Convert.ToDecimal(X.Recargo); bool Bonificacion = Convert.ToBoolean(X.Bonif); bool Afecto = Convert.ToBoolean(X.Afecto); var IdBonif = X.IDBonificacion is DBNull ? 0 : X.IDBonificacion; decimal TipoPrecio = Convert.ToInt32(X.TipoPrecio); Formulario.dataGridView1.Rows.Add(Codigo, Descripcion, Cantidad, Cantidad, Unidad, TipoPrecio, PrecioUnitario, PrecioNeto, (Cantidad * PrecioNeto), Descuento, Recargo, Bonificacion, Credito, Afecto, IdBonif); Formulario.dataGridView1.CurrentRow.ReadOnly = Bonificacion == true ? true : false; Formulario.dataGridView1.CurrentRow.Cells["Codigo"].ReadOnly = true; Formulario.dataGridView1.CurrentRow.Cells["Descripcion"].ReadOnly = true; Formulario.dataGridView1.CurrentRow.Cells["Cantidad"].ReadOnly = false; Formulario.dataGridView1.CurrentRow.Cells["PrecioNeto"].ReadOnly = false; } Formulario.calculartotal(); Formulario.StartPosition = FormStartPosition.CenterScreen; Formulario.Existe = false; Formulario.Show(); } catch (Exception t) { MessageBox.Show(t.Message); } } }
void Campos(string Fecha, int Serie) { var Rutina = new Libreria.Rutina(); int Contador = 0; if (gridView1.SelectedRowsCount > 0) { List <string> Lista = new List <string>(); var frmmensage = new Elementos.frmMsg(); frmmensage.dataGridView1.Columns[0].HeaderText = "Pedido"; frmmensage.dataGridView1.Columns[1].HeaderText = "Mensage"; frmmensage.dataGridView1.Columns[2].HeaderText = string.Empty; frmmensage.dataGridView1.Columns[3].HeaderText = string.Empty; using (var CTX = new LiderEntities()) { foreach (var fila in gridView1.GetSelectedRows()) { string Pedido_ = Convert.ToString(gridView1.GetRowCellValue(fila, "num Pedido")); string Tipo = CTX.PEDIDOes.Where(x => x.Pedido1 == Pedido_).Select(p => p.tipodoc).FirstOrDefault(); int Persona = Convert.ToInt32(CTX.PEDIDOes.Where(x => x.Pedido1 == Pedido_).Select(p => p.TipoPersona).FirstOrDefault()); var Estado = CTX.PEDIDOes.Where(x => x.Pedido1 == Pedido_).Select(p => p.Procesado).FirstOrDefault(); var Aprobado = CTX.PEDIDOes.Where(x => x.Pedido1 == Pedido_).Select(p => p.Aprobado).FirstOrDefault(); if (!Estado) { Contador += 1; if (Aprobado is DBNull ? false : (bool)Aprobado) { Contador += 1; Lista.Add(Pedido_); CTX.sp_genera_documento(Pedido_, Persona, Tipo); } else { frmmensage.dataGridView1.Rows.Add(Pedido_, "Pedido se encuentra desaprobado."); } } else { frmmensage.dataGridView1.Rows.Add(Pedido_, "Pedido se encuentra procesado."); } } if (Contador == 0) { frmmensage.Show(); } else if (Contador == 2) { string cadena = string.Join(",", Lista.ToArray()); var Documentos = (from doc in CTX.DOCUMENTOes where cadena.Contains(doc.Pedido.Trim()) select new { Documento = doc.Documento1, Tipo = doc.TipoDoc }) .ToList(); foreach (var fila in Documentos) { try { int Numero; string serie, NumeroComprobante; switch (fila.Tipo) { case "B": Numero = Convert.ToInt32((from p in CTX.DOCTIPOes.AsEnumerable() where p.PKID == Serie select p.Numero).FirstOrDefault()); serie = Convert.ToString((from p in CTX.DOCTIPOes.AsEnumerable() where p.PKID == Serie select p.Serie).FirstOrDefault()); NumeroComprobante = serie + Numero.ToString("D8"); var Cp = (from p in CTX.DOCUMENTOes where p.Documento1 == fila.Documento && p.TipoDoc == fila.Tipo select p).FirstOrDefault(); Cp.Generado = NumeroComprobante; var Pd = (from p in CTX.PEDIDOes where p.Pedido1 == CTX.DOCUMENTOes.Where(y => y.Documento1 == fila.Documento && y.TipoDoc == fila.Tipo).Select(x => x.Pedido.Trim()).FirstOrDefault() select p).FirstOrDefault(); Pd.Procesado = true; Pd.statusWeb = true; var DTp = (from p in CTX.DOCTIPOes where p.PKID == Serie select p).FirstOrDefault(); DTp.Numero = DTp.Numero + 1; break; case "F": Numero = Convert.ToInt32((from p in CTX.DOCTIPOes.AsEnumerable() where p.PKID == Serie select p.Numero).FirstOrDefault()); serie = Convert.ToString((from p in CTX.DOCTIPOes.AsEnumerable() where p.PKID == Serie select p.Serie).FirstOrDefault()); NumeroComprobante = serie + Numero.ToString("D8"); var Cp_ = (from p in CTX.DOCUMENTOes where p.Documento1 == fila.Documento && p.TipoDoc == fila.Tipo select p).FirstOrDefault(); Cp_.Generado = NumeroComprobante; var Pd_ = (from p in CTX.PEDIDOes where p.Pedido1 == CTX.DOCUMENTOes.Where(y => y.Documento1 == fila.Documento && y.TipoDoc == fila.Tipo).Select(x => x.Pedido.Trim()).FirstOrDefault() select p).FirstOrDefault(); Pd_.Procesado = true; Pd_.statusWeb = true; var DTp_ = (from p in CTX.DOCTIPOes where p.PKID == Serie select p).FirstOrDefault(); DTp_.Numero = DTp_.Numero + 1; break; } } catch (DbEntityValidationException t) { foreach (var eve in t.EntityValidationErrors) { foreach (var ve in eve.ValidationErrors) { MessageBox.Show("Propiedad: \"" + ve.PropertyName + "\", Error: \"" + ve.ErrorMessage + "\""); } } Refrescar(); } } CTX.SaveChanges(); Rutina.ejecutar("sp_stock_sistema_nuevo '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); Rutina.ejecutar("sp_stock_sistema_web '" + DateTime.Now.Date.ToString("yyyyMMdd") + "', 2"); MessageBox.Show("Se realizo la facturacion de : " + Lista.Count + " con exito.\n Detalles en control genera."); Refrescar(); } } } }