コード例 #1
0
        private void Eliminar(int iIdFactura)
        {

            //Eliminar primero la partida para la integridad referencial
            oblFacturas = new MedNeg.Facturas.BlFacturas();
            string sDatosBitacora = string.Empty;

            //Guardar los datos del pedido para la bitacora
            oFactura = new MedDAL.DAL.facturas();
            oFactura = oblFacturas.BuscarFactura(iIdFactura);

            sDatosBitacora += "Folio:" + oFactura.Folio.ToString() + " ";
            sDatosBitacora += "Fecha:" + oFactura.Fecha.ToShortDateString() + " ";
            switch (oFactura.Estatus)
            {
                case "1":
                    sDatosBitacora += "Estatus:Pedido ";
                    break;
                case "2":
                    sDatosBitacora += "Estatus:Remitido ";
                    break;
                case "3":
                    sDatosBitacora += "Estatus:Emitida ";
                    break;
                case "4":
                    sDatosBitacora += "Estatus:Cobrada ";
                    break;
                case "5":
                    sDatosBitacora += "Estatus:Cancelada ";
                    break;
            }

            //Recuperar la partida del pedido
            oblFacturas = new MedNeg.Facturas.BlFacturas();
            var oQuery = oblFacturas.RecuperarPartidaFactura(iIdFactura);
            //Recorrer el resultado y meterlo al datagridview
            foreach (MedDAL.DAL.facturas_partida oDetalle in oQuery)
            {
                sDatosBitacora += "Producto:" + oDetalle.productos.Nombre.ToString() + " ";
                sDatosBitacora += "Cantidad:" + oDetalle.Cantidad.ToString() + " ";
                sDatosBitacora += "IEPS:" + oDetalle.IEPS.ToString() + " ";
                sDatosBitacora += "Iva:" + oDetalle.Iva.ToString() + " ";
                sDatosBitacora += "Precio:" + oDetalle.Precio.ToString() + " ";
                sDatosBitacora += "Total:" + Convert.ToDecimal((oDetalle.Cantidad * oDetalle.Precio) + oDetalle.IEPS + oDetalle.Iva) + ", ";

            }


            if (oblFacturas.EliminarFacturaPartida(iIdFactura))
            {
                oblFacturas = new MedNeg.Facturas.BlFacturas();
                if (oblFacturas.EliminarRegistro(iIdFactura))
                {
                    //lblAviso.Text = "El usuario se ha eliminado con éxito";
                    MedDAL.DAL.bitacora oBitacora = new MedDAL.DAL.bitacora();
                    MedNeg.Bitacora.BlBitacora oblBitacora = new MedNeg.Bitacora.BlBitacora();
                    oBitacora.FechaEntradaSrv = DateTime.Now;
                    oBitacora.FechaEntradaCte = DateTime.Now;//Linea Temporal
                    oBitacora.Modulo = "Facturas";
                    oBitacora.Usuario = Session["usuario"].ToString();
                    oBitacora.Nombre = Session["nombre"].ToString();
                    oBitacora.Accion = "Eliminación de Factura";
                    oBitacora.Descripcion = sDatosBitacora;

                    if (!oblBitacora.NuevoRegistro(oBitacora))
                    {
                        lblDatos.Text = "El evento no pudo ser registrado en la bitácora";
                    }
                }
                else
                {
                    //lblAviso.Text = "El usuario no pudo ser eliminado, es posible que tenga datos relacionados";
                }

            }
            else
            {
                //lblAviso.Text = "El usuario no pudo ser eliminado, es posible que tenga datos relacionados";
            }

        }