コード例 #1
0
 private void btnGuardar_Click(object sender, EventArgs e)
 {
     try
     {
         this.txtMensajeError.Visible = false;
         List <Error> Errores = this.ValidarDatos();
         if (Errores.Count == 0)
         {
             Producto         Datos      = this.ObtenerDatos();
             Producto_Negocio ProdNeg    = new Producto_Negocio();
             bool             Completado = ProdNeg.GuardarPrecioXIDSucursal(Datos);
             if (Completado)
             {
                 MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                 this.DialogResult = DialogResult.OK;
             }
             else
             {
                 MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else
         {
             this.MostrarMensajeError(Errores);
         }
     }
     catch (Exception ex)
     {
         LogError.AddExcFileTxt(ex, "frmNuevoProductoServicio ~ btnGuardar_Click");
         MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
コード例 #2
0
        private void cmb_Producto_DropDownClosed(object sender, EventArgs e)
        {
            Producto_Negocio prod_neg = new Producto_Negocio();
            DataTable        resp     = new DataTable();

            if (cmb_Producto.Text == "")
            {
                MessageBox.Show("Debe seleccionar un producto");
            }
            else
            {
                int id_prod = int.Parse(cmb_Producto.SelectedValue.ToString());

                resp = prod_neg.Buscar_Prod_id(id_prod.ToString());
                if (resp.Rows.Count > 0)
                {
                    foreach (DataRow item in resp.Rows)
                    {
                        txt_Id_producto.Text    = item["id_producto"].ToString();
                        txt_Sku_producto.Text   = item["sku_prod"].ToString();
                        txt_descr_producto.Text = cmb_Producto.Text;
                    }
                }
                else
                {
                    MessageBox.Show("invalido");
                }
            }
        }
コード例 #3
0
 private List <Producto> GenerarListaMatriz()
 {
     try
     {
         Producto_Negocio ProdNeg = new Producto_Negocio();
         Producto         Datos   = new Producto {
             Conexion = Comun.Conexion, IDSucursal = Comun.IDSucursalCaja
         };
         ProdNeg.ObtenerProductosInventarioMatriz(Datos);
         List <Producto> Lista = new List <Producto>();
         Producto        Item;
         foreach (DataRow Fila in Datos.TablaDatos.Rows)
         {
             Item                = new Producto();
             Item.Clave          = Fila["Clave"].ToString();
             Item.NombreProducto = Fila["NombreProducto"].ToString();
             Item.Existencia     = Convert.ToDecimal(Fila["Existencia"].ToString());
             Item.IDProducto     = Fila["IDProducto"].ToString();
             Lista.Add(Item);
         }
         return(Lista);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #4
0
 private void btnGuardar_Click(object sender, EventArgs e)
 {
     try
     {
         this.txtMensajeError.Visible = false;
         List <Error> Errores = this.ValidarDatos();
         if (Errores.Count == 0)
         {
             Producto         Datos = this.ObtenerDatos();
             Producto_Negocio PN    = new Producto_Negocio();
             PN.ActualizarExistenciaProductoXSucusal(Datos);
             if (Datos.Completado)
             {
                 MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                 this.DialogResult = DialogResult.OK;
             }
             else
             {
                 MessageBox.Show("Ocurrió un error al guardar los datos.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else
         {
             this.MostrarMensajeError(Errores);
         }
     }
     catch (Exception ex)
     {
         LogError.AddExcFileTxt(ex, "frmDescontarExistencia ~ btnGuardar_Click");
         MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
コード例 #5
0
 private void btnGuardar_Click(object sender, EventArgs e)
 {
     try
     {
         List <Error> Errores = this.ValidarDatos();
         if (Errores.Count == 0)
         {
             Producto         Datos   = this.ObtenerDatos();
             Producto_Negocio ProdNeg = new Producto_Negocio();
             ProdNeg.EnviarTarjetasRegalo(Datos, Comun.IDSucursalCaja);
             if (Datos.Completado)
             {
                 MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                 this.DialogResult = DialogResult.OK;
             }
             else
             {
                 MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else
         {
             this.MostrarMensajeError(Errores);
         }
     }
     catch (Exception ex)
     {
         LogError.AddExcFileTxt(ex, "frmEnviarTarjetas ~ btnGuardar_Click");
         MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
コード例 #6
0
 private List <Producto> GenerarListaMatrizXIDSUCURSALCAJA()
 {
     try
     {
         Producto_Negocio ProdNeg = new Producto_Negocio();
         Producto         Datos   = new Producto {
             Conexion = Comun.Conexion, IDSucursal = Comun.IDSucursalCaja
         };
         ProdNeg.ObtenerProductosInventarioMatrizXIDSUCURSALCAJA(Datos);
         List <Producto> Lista = new List <Producto>();
         Producto        Item;
         foreach (DataRow Fila in Datos.TablaDatos.Rows)
         {
             decimal Existencia = 0, ExistenciaAlmacen = 0, ExistenciaUso = 0;
             Item                = new Producto();
             Item.Clave          = Fila["Clave"].ToString();
             Item.NombreProducto = Fila["NombreProducto"].ToString();
             decimal.TryParse(Fila["Existencia"].ToString(), out Existencia);
             decimal.TryParse(Fila["ExistenciaAlmacen"].ToString(), out ExistenciaAlmacen);
             decimal.TryParse(Fila["ExistenciaUso"].ToString(), out ExistenciaUso);
             Item.Existencia        = Existencia;
             Item.ExistenciaAlmacen = ExistenciaAlmacen;
             Item.ExistenciaUso     = ExistenciaUso;
             Item.IDProducto        = Fila["IDProducto"].ToString();
             Lista.Add(Item);
         }
         return(Lista);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #7
0
 private void EliminarProducto(Producto Datos)
 {
     try
     {
         Datos.Conexion  = Comun.Conexion;
         Datos.IDUsuario = Comun.IDUsuario;
         Producto_Negocio ProdNeg = new Producto_Negocio();
         ProdNeg.EliminarTarjetasRegalo(Datos);
         if (Datos.Completado)
         {
             MessageBox.Show("Registro Eliminado.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
             Int32 RowToDelete = this.dgvProductos.Rows.GetFirstRow(DataGridViewElementStates.Selected);
             if (RowToDelete > -1)
             {
                 this.dgvProductos.Rows.RemoveAt(RowToDelete);
             }
             else
             {
                 this.LlenarGridCatProductos(this.chkTodos.Checked);
             }
         }
         else
         {
             MessageBox.Show("Error al guardar los datos. Contacte a Soporte Técnico.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
             LogError.AddExcFileTxt(new Exception(Datos.MensajeError), "frmCatTarjetas ~ EliminarProducto -> Método");
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #8
0
 private void Busqueda(string TextoBusqueda)
 {
     try
     {
         if (!string.IsNullOrEmpty(TextoBusqueda.Trim()))
         {
             Producto Datos = new Producto {
                 Conexion = Comun.Conexion, BuscarTodos = false, NombreProducto = this.txtBusqueda.Text
             };
             Producto_Negocio ProdNeg = new Producto_Negocio();
             this._DatosActuales = ProdNeg.ObtenerProductosBusqueda(Datos);
             this.LlenarGridProducto();
             if (this.dgvProducto.Rows.Count > 0)
             {
                 this.ActiveControl = this.dgvProducto;
                 this.dgvProducto.Focus();
             }
         }
         else
         {
             this.dgvProducto.DataSource = new List <Producto>();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #9
0
        private System.Data.DataTable GenerarTablaAux()
        {
            Producto_Negocio ProdNeg = new Producto_Negocio();
            Producto         Datos   = new Producto {
                Conexion = Comun.Conexion, IDSucursal = Comun.IDSucursalCaja
            };

            ProdNeg.ObtenerProductosInventarioMatriz(Datos);
            return(Datos.TablaDatos);
        }
コード例 #10
0
 private DataTable ObtenerClaves(string IDGen, bool EsEmpleado, string BusqProd)
 {
     try
     {
         Producto_Negocio ProdNeg = new Producto_Negocio();
         return(ProdNeg.ObteneClavesXIDEmpleadoIDSucursal(Comun.Conexion, EsEmpleado, IDGen, BusqProd));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #11
0
        private void btnReemplazar_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.dgvClaves.SelectedRows.Count == 1)
                {
                    int      Row   = dgvClaves.Rows.GetFirstRow(DataGridViewElementStates.Selected);
                    Producto Datos = this.ObtenerDatosGrid(Row);
                    if (!string.IsNullOrEmpty(Datos.IDAsignacion))
                    {
                        if (MessageBox.Show(string.Format("¿Está seguro(a) de reemplazar el producto {0} con clave {1}? Este proceso no es reversible.", Datos.NombreProducto, Datos.ClaveProduccion), Comun.Sistema, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                        {
                            Producto_Negocio ProdNeg = new Producto_Negocio();
                            int Result = ProdNeg.ReemplazarClaveProduccion(Comun.Conexion, EsEmpl, Datos.IDAsignacion, Comun.IDSucursalCaja, Comun.IDUsuario);
                            if (Result == 1)
                            {
                                MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                                this.LlenarGrid(this.txtProducto.Text.Trim());
                            }
                            else
                            {
                                string Message = string.Empty;
                                switch (Result)
                                {
                                case -1:
                                    Message = "La clave ya no está en producción.";
                                    break;

                                case -2:
                                    Message = "No hay existencias suficientes para reemplazar la clave.";
                                    break;

                                default:
                                    Message = "Error al guardar los datos. Intente nuevamente. ";
                                    break;
                                }
                                MessageBox.Show(Message, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Seleccione un registro.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                LogError.AddExcFileTxt(ex, "frmClavesXIDEmpleado ~ btnReemplazar_Click");
                MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
コード例 #12
0
 private void btnGuardar_Click(object sender, EventArgs e)
 {
     try
     {
         List <Error> Errores = this.ValidarDatos();
         if (Errores.Count == 0)
         {
             Producto         Datos   = this.ObtenerDatos();
             Producto_Negocio ProdNeg = new Producto_Negocio();
             ProdNeg.ACTarjetasRegalo(Datos);
             if (Datos.Completado)
             {
                 MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                 this.DialogResult = DialogResult.OK;
             }
             else
             {
                 if (Datos.Resultado == 51000)
                 {
                     Error ResultError = new Error {
                         Numero = 1, ControlSender = this.txtClave, Descripcion = "La clave del producto ya existe."
                     };
                     Errores = new List <Error>();
                     Errores.Add(ResultError);
                     this.MostrarMensajeError(Errores);
                 }
                 else if (Datos.Resultado == 51001)
                 {
                     Error ResultError = new Error {
                         Numero = 1, ControlSender = this.txtMonto, Descripcion = "El monto de la tarjeta ya existe"
                     };
                     Errores = new List <Error>();
                     Errores.Add(ResultError);
                     this.MostrarMensajeError(Errores);
                 }
                 else
                 {
                     MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
         }
         else
         {
             this.MostrarMensajeError(Errores);
         }
     }
     catch (Exception ex)
     {
         LogError.AddExcFileTxt(ex, "frmNuevaTarjetaRegalo ~ btnGuardar_Click");
         MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
コード例 #13
0
 private System.Data.DataTable BusquedaResultados(Producto Datos)
 {
     try
     {
         Producto_Negocio ProdNeg = new Producto_Negocio();
         ProdNeg.ObtenerProductosInventario(Datos);
         return(Datos.TablaDatos);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #14
0
 private Producto ObtenerDetalleProductoXID(string IDProducto)
 {
     try
     {
         Producto_Negocio ProdNeg = new Producto_Negocio();
         return(ProdNeg.ObtenerDatosProductoXID(new Producto {
             IDProducto = IDProducto, Conexion = Comun.Conexion
         }));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #15
0
 private Producto ObtenerPreciosXIDSucursal(string _IDSucursal)
 {
     try
     {
         Producto_Negocio ProdNeg = new Producto_Negocio();
         return(ProdNeg.ObtenerPreciosXIDSucursal(new Producto {
             IDProducto = IDProducto, IDSucursal = _IDSucursal, Conexion = Comun.Conexion
         }));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #16
0
 private void ExistenciasProducto(string IDSucursal, string IDProductos)
 {
     try
     {
         Producto DatosAux = new Producto {
             Conexion = Comun.Conexion, IDSucursal = IDSucursal, IDProducto = IDProductos
         };
         Producto_Negocio MN = new Producto_Negocio();
         this._DatosProductos = MN.ObtenerExistentes(DatosAux);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #17
0
 private void BusquedaProducto(string TextoProducto)
 {
     try
     {
         Producto DatosAux = new Producto {
             Conexion = Comun.Conexion, NombreProducto = TextoProducto, BuscarTodos = false
         };
         Producto_Negocio PN = new Producto_Negocio();
         PN.ObtenerCatProductosBusqueda(DatosAux);
         this.dgvProductos.AutoGenerateColumns = false;
         this.dgvProductos.DataSource          = DatosAux.TablaDatos;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #18
0
 private void LlenarGridCatProductosStockMaximo(bool Band)
 {
     try
     {
         Producto DatosAux = new Producto {
             Conexion = Comun.Conexion, IDSucursal = Comun.IDSucursalCaja, BuscarTodos = Band
         };
         Producto_Negocio PN = new Producto_Negocio();
         PN.ObtenerCatProductosStockMaximo(DatosAux);
         this.dgvProductos.AutoGenerateColumns = false;
         this.dgvProductos.DataSource          = DatosAux.TablaDatos;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #19
0
 private void BusquedaTarjeta(string TextoProducto)
 {
     try
     {
         Producto DatosAux = new Producto {
             Conexion = Comun.Conexion, Clave = TextoProducto, BuscarTodos = this.chkTodos.Checked
         };
         Producto_Negocio PN = new Producto_Negocio();
         PN.ObtenerCatTarjetasRegaloBusqueda(DatosAux);
         this.dgvProductos.AutoGenerateColumns = false;
         this.dgvProductos.DataSource          = DatosAux.TablaDatos;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #20
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                this.txtMensajeError.Visible = false;
                List <Error> Errores = this.ValidarDatos();
                if (Errores.Count == 0)
                {
                    Producto_Negocio ProdNeg = new Producto_Negocio();
                    int Result = ProdNeg.InicializarNuevaClaveProduccion(Comun.Conexion, EsEmpleado, DatosEmpleado != null ? DatosEmpleado.IDEmpleado : string.Empty, Actual.IDProducto, this.ObtenerCantidad(), Comun.IDSucursalCaja, Comun.IDUsuario);
                    if (Result == 1)
                    {
                        MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.DialogResult = DialogResult.OK;
                    }
                    else
                    {
                        string Message = string.Empty;
                        switch (Result)
                        {
                        //case -1:
                        //    Message = "La clave ya no está en producción.";
                        //    break;
                        case -2:
                            Message = "No hay existencias suficientes para inicializar la clave.";
                            break;

                        default:
                            Message = "Error al guardar los datos. Intente nuevamente. ";
                            break;
                        }
                        MessageBox.Show(Message, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    this.MostrarMensajeError(Errores);
                }
            }
            catch (Exception ex)
            {
                LogError.AddExcFileTxt(ex, "frmInicializarClaves ~ btnGuardar_Click");
                MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
コード例 #21
0
 private void BuscarRegistros(string Busqueda)
 {
     try
     {
         Producto DatosAux = new Producto {
             Opcion = TipoForm, Conexion = Comun.Conexion, NombreProducto = Busqueda, IDProveedor = string.IsNullOrEmpty(this._Datos.IDProveedor) ? string.Empty : this._Datos.IDProveedor, IDProductoXServicio = string.Empty
         };
         Producto_Negocio ProdNeg = new Producto_Negocio();
         ProdNeg.ObtenerBusquedaProductosServicios(DatosAux);
         this.dgvProductos.AutoGenerateColumns = false;
         this.dgvProductos.DataSource          = DatosAux.TablaDatos;
         this.dgvProductos.Focus();
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #22
0
        private void cmb_Tipo_Prod_Vta_DropDownClosed(object sender, EventArgs e)
        {
            Producto_Negocio    Prod_Nego = new Producto_Negocio();
            List <Producto_dto> respuesta = new List <Producto_dto>();
            string txt = "";

            if (cmb_Tipo_Prod_Vta.Text != "")
            {
                string producto_buscar = txt;
                int    tipo_prod       = int.Parse(cmb_Tipo_Prod_Vta.SelectedValue.ToString());
                respuesta = Prod_Nego.ListarProducto(tipo_prod, producto_buscar);
                cmb_Producto.ItemsSource       = respuesta;
                cmb_Producto.DisplayMemberPath = "descr_producto";
                cmb_Producto.SelectedValuePath = "id_producto";
            }
            else
            {
                MessageBox.Show("Debe seleccionar tipo de producto");
            }
        }
コード例 #23
0
        private void Btn_Buscar_prod_Click(object sender, RoutedEventArgs e)
        {
            Producto_Negocio    Prod_Nego = new Producto_Negocio();
            List <Producto_dto> respuesta = new List <Producto_dto>();

            if (cmb_Tipo_P.Text != "")
            {
                string producto_buscar = txt_buscar_prod.Text;
                int    tipo_prod       = int.Parse(cmb_Tipo_P.SelectedValue.ToString());
                respuesta = Prod_Nego.ListarProducto(tipo_prod, producto_buscar);
                cmb_Producto.ItemsSource       = respuesta;
                cmb_Producto.DisplayMemberPath = "descr_producto";
                cmb_Producto.SelectedValuePath = "id_producto";
            }
            else
            {
                MessageBox.Show("Debe seleccionar tipo de producto");
            }
            limpiar1();
        }
コード例 #24
0
 private void EliminarProducto(Producto Datos)
 {
     try
     {
         Datos.Conexion         = Comun.Conexion;
         Datos.IDUsuario        = Comun.IDUsuario;
         Datos.Opcion           = 3;
         Datos.TablaMonederos   = this.GenerarTablaMonedero();
         Datos.TablaProveedores = this.GenerarTablaProveedores();
         Datos.FechaInicioTemp  = DateTime.Today;
         Datos.FechaFinTemp     = DateTime.Today;
         Datos.Imagen           = new byte[0];
         Producto_Negocio ProdNeg = new Producto_Negocio();
         ProdNeg.ABCCatProductos(Datos);
         if (Datos.Completado)
         {
             MessageBox.Show("Registro Eliminado.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
             Int32 RowToDelete = this.dgvProductos.Rows.GetFirstRow(DataGridViewElementStates.Selected);
             if (RowToDelete > -1)
             {
                 this.dgvProductos.Rows.RemoveAt(RowToDelete);
             }
             else
             {
                 this.LlenarGridCatProductos(false);
             }
         }
         else
         {
             MessageBox.Show("Error al guardar los datos. Contacte a Soporte Técnico.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
             LogError.AddExcFileTxt(new Exception(Datos.MensajeError), "frmCatProductos ~ EliminarProducto -> Método");
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #25
0
        private bool ActualizarExistenciasExcel(string FileName)
        {
            try
            {
                Microsoft.Office.Interop.Excel.Application xlsApp = new Microsoft.Office.Interop.Excel.Application();
                if (xlsApp == null)
                {
                    MessageBox.Show("EXCEL could not be started. Check that your office installation and project references are correct.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return(false);
                }
                Workbook  xlsBook;
                Worksheet Inventario;
                Sheets    xlHojas;
                string    PathAr = FileName;
                xlsBook    = xlsApp.Workbooks.Open(PathAr);
                xlHojas    = xlsBook.Sheets;
                Inventario = (Worksheet)xlHojas["Inventario"];
                try
                {
                    xlsApp.DisplayAlerts = false;
                    xlsApp.Visible       = false;
                    int FilaInicio = 4;
                    infoProducto.ImportarExcel = new System.Data.DataTable();
                    infoProducto.ImportarExcel.Columns.Add("IDProducto", typeof(string));
                    infoProducto.ImportarExcel.Columns.Add("Clave", typeof(string));
                    infoProducto.ImportarExcel.Columns.Add("ConteoFisico", typeof(decimal));
                    while ((Inventario.Cells[FilaInicio, 1] as Microsoft.Office.Interop.Excel.Range).Value2 != null)
                    {
                        string  Codigo = "", IDProducto = "";
                        decimal ConteoFisico = 0;
                        IDProducto = (Inventario.Cells[FilaInicio, 6] as Microsoft.Office.Interop.Excel.Range).Value2.ToString();
                        Codigo     = (Inventario.Cells[FilaInicio, 1] as Microsoft.Office.Interop.Excel.Range).Value2.ToString();
                        decimal.TryParse((Inventario.Cells[FilaInicio, 4] as Microsoft.Office.Interop.Excel.Range).Value2.ToString(), NumberStyles.Currency, CultureInfo.CurrentCulture, out ConteoFisico);
                        infoProducto.ImportarExcel.Rows.Add(new Object[] { IDProducto, Codigo, ConteoFisico });
                        FilaInicio++;
                    }

                    Producto         AuxProducto = new Producto();
                    Producto_Negocio ProdNeg     = new Producto_Negocio();
                    AuxProducto.Conexion      = Comun.Conexion;
                    AuxProducto.IDSucursal    = Comun.IDSucursalCaja;
                    AuxProducto.IDUsuario     = Comun.IDUsuario;
                    AuxProducto.ImportarExcel = infoProducto.ImportarExcel;
                    ProdNeg.AInventarioEXCEL(AuxProducto);
                    if (AuxProducto.Completado)
                    {
                        MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("Datos no se guardaron correctamente. Intente mas tarde", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                catch (Exception ex)
                {
                    LogError.AddExcFileTxt(ex, "Generar Reporte Excel");
                    return(false);
                }
                finally
                {
                    xlsBook.Close();
                    xlsApp.Quit();
                    releaseObject(xlHojas);
                    releaseObject(xlsBook);
                    releaseObject(Inventario);
                    releaseObject(xlsApp);
                }
                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #26
0
        private void ImportarExcel()
        {
            try
            {
                OpenFileDialog openFileDialogExcel = new OpenFileDialog();
                openFileDialogExcel.Filter           = "Excel Files|*.xlsx";
                openFileDialogExcel.FileName         = "";
                openFileDialogExcel.Title            = "Seleccione el archivo excel";
                openFileDialogExcel.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments).ToString();
                if (openFileDialogExcel.ShowDialog() == DialogResult.OK)
                {
                    Microsoft.Office.Interop.Excel.Application xlsApp = new Microsoft.Office.Interop.Excel.Application();

                    Workbook  xlsBook;
                    Worksheet Inventario;
                    Sheets    xlHojas;

                    xlsApp.DisplayAlerts = false;
                    xlsApp.Visible       = false;
                    string PathAr = openFileDialogExcel.FileName;
                    xlsBook = xlsApp.Workbooks.Open(PathAr);

                    xlHojas    = xlsBook.Sheets;
                    Inventario = (Worksheet)xlHojas["Inventario"];
                    int FilaInicio = 4;

                    infoProducto.ImportarExcel = new System.Data.DataTable();
                    infoProducto.ImportarExcel.Columns.Add("IDProducto", typeof(string));
                    infoProducto.ImportarExcel.Columns.Add("Clave", typeof(string));
                    infoProducto.ImportarExcel.Columns.Add("ConteoFisico", typeof(decimal));

                    while ((Inventario.Cells[FilaInicio, 1] as Microsoft.Office.Interop.Excel.Range).Value2 != null)
                    {
                        string  Codigo = "", IDProducto = "";
                        decimal ConteoFisico = 0;
                        IDProducto = (Inventario.Cells[FilaInicio, 6] as Microsoft.Office.Interop.Excel.Range).Value2.ToString();
                        Codigo     = (Inventario.Cells[FilaInicio, 1] as Microsoft.Office.Interop.Excel.Range).Value2.ToString();
                        decimal.TryParse((Inventario.Cells[FilaInicio, 4] as Microsoft.Office.Interop.Excel.Range).Value2.ToString(), NumberStyles.Currency, CultureInfo.CurrentCulture, out ConteoFisico);
                        infoProducto.ImportarExcel.Rows.Add(new Object[] { IDProducto, Codigo, ConteoFisico });
                        FilaInicio++;
                    }

                    Producto         AuxProducto = new Producto();
                    Producto_Negocio ProdNeg     = new Producto_Negocio();
                    AuxProducto.Conexion      = Comun.Conexion;
                    AuxProducto.IDSucursal    = Comun.IDSucursalCaja;
                    AuxProducto.IDUsuario     = Comun.IDUsuario;
                    AuxProducto.ImportarExcel = infoProducto.ImportarExcel;
                    ProdNeg.AInventarioEXCEL(AuxProducto);
                    if (AuxProducto.Completado)
                    {
                        MessageBox.Show("Datos guardados correctamente.", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("Datos no se guardaron correctamente. Intente mas tarde", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                    xlsBook.Close();
                    xlsApp.Quit();
                    releaseObject(xlHojas);
                    releaseObject(xlsBook);
                    releaseObject(Inventario);
                    releaseObject(xlsApp);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
            }
        }
コード例 #27
0
        private void Btn_Confirmar_Rec_Click(object sender, RoutedEventArgs e)
        {
            txt_id_recep.Text = "";
            bool                       SkuVacio     = false;
            string                     cabecera     = "";
            bool                       aumentar     = false;
            bool                       new_estado   = false;
            Producto_Negocio           producto_Neg = new Producto_Negocio();
            Recepcionar_Pedido_Negocio Recepnegocio = new Recepcionar_Pedido_Negocio();

            var    SelectProd     = DG_Recep.ItemsSource;
            var    JsonItemSelect = JsonConvert.SerializeObject(SelectProd);
            JArray jsonPreservar  = JArray.Parse(JsonItemSelect.ToString());

            foreach (JObject item in jsonPreservar.Children <JObject>())
            {
                if (item["SKU"].ToString() == "" && SkuVacio == false)
                {
                    MessageBox.Show(" El Producto : " + item["Descripción"].ToString() + " se encuentra sin su SKU");
                    SkuVacio = true;
                }
            }
            if (cmb_estado_recep.Text != "Generado")
            {
                if (SkuVacio == false)
                {
                    // var total = Math.Round(decimal.Parse(item["TOTAL"].ToString()), 0).ToString().Replace(".", "");
                    cabecera   = Recepnegocio.CrearRecepcionHDR(txt_fecha_recep.Text, cmb_estado_recep.SelectedValue.ToString(), txt_id_pedido.Text, cmb_empleado.SelectedValue.ToString(), cmb_proveedor.SelectedValue.ToString(), txt_total_recep.Text);
                    new_estado = Recepnegocio.Cambiar_Estado_Pedido(txt_id_pedido.Text, cmb_estado_recep.SelectedValue.ToString());
                    foreach (JObject item in jsonPreservar.Children <JObject>())
                    {
                        try
                        {
                            var precio = Math.Round(decimal.Parse(item["Precio"].ToString()), 0).ToString().Replace(".", "");
                            var total  = Math.Round(decimal.Parse(item["Total"].ToString()), 0).ToString().Replace(".", "");

                            Recepnegocio.CrearRecepcionDet(item["Recibido"].ToString(),
                                                           precio,
                                                           item["SKU"].ToString(),
                                                           cabecera,
                                                           item["IDProducto"].ToString(),
                                                           total);
                            aumentar = producto_Neg.Aumentar_cant_prod(item["IDProducto"].ToString(),
                                                                       item["Recibido"].ToString());
                        }
                        catch (Exception ex)
                        {
                            throw ex;
                        }
                    }
                    // aumentar = producto_Neg.Aumentar_cant_prod();
                    txt_id_recep.Text = cabecera;
                    this.Btn_Confirmar_Rec.IsEnabled = false;
                    MessageBox.Show("Recepción realizada con éxito");
                }
            }
            else
            {
                MessageBox.Show("Debe Cambiar el estado del pedido");
            }
        }
コード例 #28
0
        //////////////////////////////////////
        /////////////////VENTA////////////////
        //////////////////////////////////////
        private void Btn_Generar_venta_Click(object sender, RoutedEventArgs e)
        {
            BoletaVenta    rpt     = new BoletaVenta();
            VentaHDR       dataset = new VentaHDR();
            ReportDocument doc     = new ReportDocument();


            string cabecera = "";

            txt_Id_venta.Text = "";
            bool             restar       = false;
            Producto_Negocio producto_Neg = new Producto_Negocio();
            Venta_Negocio    Venta_Neg    = new Venta_Negocio();
            Deuda_Negocio    deudaN       = new Deuda_Negocio();

            if (cmb_Cliente_Vta.Text == "" || cmb_Documento_Vta.Text == "")
            {
                if (cmb_Cliente_Vta.Text == "" && cmb_Documento_Vta.Text == "")
                {
                    MessageBox.Show("Debe seleccionar un cliente y tipo de documento");
                }
                else
                {
                    if (cmb_Cliente_Vta.Text == "")
                    {
                        MessageBox.Show("Debe seleccionar un cliente");
                    }
                    if (cmb_Documento_Vta.Text == "")
                    {
                        MessageBox.Show("Debe seleccionar un tipo de documento");
                    }
                }
            }
            else
            {
                if (Application.Current.Properties["ListadoVenta"] == null || Application.Current.Properties["ListadoVenta"].ToString() == "[]")
                {
                    MessageBox.Show("Debe ingresar al menos un Producto o Servicio");
                }
                else
                {
                    cabecera = Venta_Neg.CrearVentaHDR(txt_Fecha_V.Text, txt_iva.Text, txt_total.Text, cmb_Cliente_Vta.SelectedValue.ToString(), cmb_Documento_Vta.SelectedValue.ToString(), cmb_taller_Vta.SelectedValue.ToString());
                    if (cmb_Documento_Vta.Text == "Pagare")
                    {
                        string estadodeduda = "1";
                        deudaN.CrearDeuda(txt_Fecha_V.Text, estadodeduda, txt_total.Text, cabecera, cmb_Cliente_Vta.SelectedValue.ToString());
                    }

                    try
                    {
                        var row = dataset.Tables["VentaHdr"].NewRow();
                        row["Numero_Doc"]     = "N° Documento: " + cabecera;
                        row["Fecha"]          = "Fecha: " + txt_Fecha_V.Text;
                        row["Tipo_Doc"]       = "Tipo Documento: " + cmb_Documento_Vta.Text;
                        row["Nombre_Cliente"] = "Nombre Cliente: " + cmb_Cliente_Vta.Text;
                        row["SubTotal"]       = "SUBTOTAL $ " + txt_Sub.Text;
                        row["IVA"]            = "IVA $ " + txt_iva.Text;
                        row["Empresa_Nombre"] = cmb_taller_Vta.Text;
                        row["Total"]          = "TOTAL $ " + txt_total.Text;

                        ///campos en duro para pdf//////

                        row["rut"]       = "RUT: 78.598.553 - 9";
                        row["giro"]      = "GIRO: Venta Mantenimiento y Reparación de Vehiculos Y sus Partes Piezas Y Accesorios";
                        row["fono"]      = "FONO: 98758789";
                        row["direccion"] = "DIRECCIÓN: Alonso de Ovale 1586 , Santiago Centro";

                        row["idp_hdr"]      = "ID";
                        row["nombrep_hdr"]  = "Descripción";
                        row["tipo_hdr"]     = "Tipo";
                        row["cantidad_hdr"] = "Cantidad";
                        row["precio_hdr"]   = "Precio";
                        row["total_hdr"]    = "Total";
                        ///////////////////////////////////////////
                        ///
                        dataset.Tables["VentaHdr"].Rows.Add(row);
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                    if (Application.Current.Properties["ListadoVenta"] != null)
                    {
                        // trae lo que esta en la variable de sesion77k
                        var jsonValueToGet = JsonConvert.DeserializeObject(Application.Current.Properties["ListadoVenta"].ToString());

                        // lo convierte en un array
                        JArray jsonPreservar = JArray.Parse(jsonValueToGet.ToString());

                        //lo recorre para añadir al listado que luego se mostrará en la grilla
                        foreach (JObject item in jsonPreservar.Children <JObject>())
                        {
                            var precio = Math.Round(decimal.Parse(item["Precio"].ToString()), 0).ToString().Replace(".", "");
                            var total  = Math.Round(decimal.Parse(item["Total"].ToString()), 0).ToString().Replace(".", "");


                            // estos datos vienen de la grilla, creamosla entidad para añadir al listado
                            var respuesta = Venta_Neg.CrearVentaDet(item["Cantidad"].ToString(), precio, cabecera, total, item["T"].ToString(), item["ID"].ToString());
                            if (item["T"].ToString() == "P")
                            {
                                restar = producto_Neg.Restar_cant_prod(item["ID"].ToString(),
                                                                       item["Cantidad"].ToString());
                            }

                            var rowlist = dataset.Tables["Venta_DT"].NewRow();

                            rowlist["Descripcion"]  = item["Descripción"].ToString();
                            rowlist["Id_Prod_Serv"] = item["ID"].ToString();
                            // rowlist["SKU"] = ;
                            rowlist["Tipo"]            = item["T"].ToString();
                            rowlist["Cantidad"]        = item["Cantidad"].ToString();
                            rowlist["Precio"]          = item["Precio"].ToString();
                            rowlist["Total_Prod_Serv"] = item["Total"].ToString();

                            dataset.Tables["Venta_DT"].Rows.Add(rowlist);
                        }

                        txt_Id_venta.Text = cabecera;
                        MessageBox.Show("Venta generado con el Numero: " + txt_Id_venta.Text);
                    }

                    string reporte   = "BoletaVenta.rpt";
                    string ruta      = @"C:\Users\Diaz-Olivares\Documents\Proyectos\TallerMecanico\Taller_Escritorio_wpf\RPT\";
                    string rutaFinal = ruta + reporte;
                    doc.Load(rutaFinal);
                    doc.SetDataSource(dataset);
                    try
                    {
                        string nombreDoc   = "Documento_Venta" + cabecera + DateTime.Now.Millisecond + ".pdf";
                        string rutaGuardar = @"C:\RPT\" + nombreDoc;
                        doc.ExportToDisk(ExportFormatType.PortableDocFormat, rutaGuardar);
                        Process.Start(rutaGuardar);
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }
            }
        }
コード例 #29
0
        private void Btn_Agregar_p_Click(object sender, RoutedEventArgs e)
        {
            decimal                   total       = 0;
            Producto_Negocio          Prod_Neg    = new Producto_Negocio();
            List <Detalle_Pedido_dto> listado_det = new List <Detalle_Pedido_dto>();

            if (txt_Cant_producto.Text == "" || cmb_Producto.Text == "")
            {
                if (txt_Cant_producto.Text == "" && cmb_Producto.Text == "")
                {
                    MessageBox.Show("Debe seleccionar un producto y su cantidad");
                }
                else
                {
                    if (cmb_Producto.Text == "")
                    {
                        MessageBox.Show("Debe seleccionar un producto");
                    }
                    if (txt_Cant_producto.Text == "")
                    {
                        MessageBox.Show("Debe ingresar cantidad");
                    }
                }
            }
            else
            {
                bool   existe        = false;
                string id_prod       = txt_Id_producto.Text;
                int    cantidad_prod = int.Parse(txt_Cant_producto.Text);

                // Aqui trae lo previamente guardado en la grilla, si la variable se session esta nula no entra
                if (Application.Current.Properties["ListadoPedido"] != null)
                {
                    // trae lo que esta en la variable de sesion
                    var jsonValueToGet = JsonConvert.DeserializeObject(Application.Current.Properties["ListadoPedido"].ToString());

                    // lo convierte en un array
                    JArray jsonPreservar = JArray.Parse(jsonValueToGet.ToString());

                    //lo recorre para añadir al listado que luego se mostrará en la grilla
                    foreach (JObject item in jsonPreservar.Children <JObject>())
                    {
                        // estos datos vienen de la grilla, creamosla entidad para añadir al listado

                        Detalle_Pedido_dto entidad = new Detalle_Pedido_dto();
                        entidad.Producto    = int.Parse(item["Producto"].ToString());
                        entidad.SKU         = item["SKU"].ToString();
                        entidad.Descripción = item["Descripción"].ToString();
                        entidad.Cantidad    = int.Parse(item["Cantidad"].ToString());
                        entidad.Total       = decimal.Parse(item["Total"].ToString()).ToString("n2");
                        entidad.Precio      = decimal.Parse(item["Precio"].ToString()).ToString("n2");

                        total = total + decimal.Parse(entidad.Total);

                        listado_det.Add(entidad);
                        if (id_prod == item["Producto"].ToString())
                        {
                            existe = true;
                        }
                    }
                }

                if (existe)
                {
                    MessageBox.Show(" El Producto : " + txt_descr_producto.Text + " ya existe en el listado");
                    limpiar1();
                }
                else
                {
                    DataTable respuesta = Prod_Neg.Buscar_Prod_id(id_prod);
                    foreach (DataRow item in respuesta.Rows)
                    {
                        Detalle_Pedido_dto entidad = new Detalle_Pedido_dto();
                        entidad.Producto    = int.Parse(item["id_producto"].ToString());
                        entidad.SKU         = item["sku_prod"].ToString();
                        entidad.Descripción = item["descr_producto"].ToString();
                        entidad.Cantidad    = cantidad_prod;
                        entidad.Precio      = decimal.Parse(item["precio_costo"].ToString()).ToString("n2");
                        entidad.Total       = (decimal.Parse(item["precio_costo"].ToString()) * cantidad_prod).ToString("n2");

                        total = total + decimal.Parse(entidad.Total);
                        listado_det.Add(entidad);
                    }
                }

                // actualiza variable de sesion con los datos actuales de la grilla
                var jsonValueToSave = JsonConvert.SerializeObject(listado_det);
                Application.Current.Properties["ListadoPedido"] = jsonValueToSave;

                txt_total.Text = total.ToString("n2");
                Dt_G_list_pedido.ItemsSource = listado_det;
                limpiar1();
            }
        }