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"; } }
/// <summary> /// Cargar los datos del pedido y su partida /// </summary> /// <param name="bDatos"></param> protected void CargarFormulario(bool bDatos) { pnlFormulario.Visible = true; pnlCatalogo.Visible = false; if (bDatos) { //Objeto que contiene el id del pedido oblFacturas = new MedNeg.Facturas.BlFacturas(); oFactura = new MedDAL.DAL.facturas(); oFactura = (MedDAL.DAL.facturas)oblFacturas.BuscarFactura(int.Parse(dgvDatos.SelectedDataKey[0].ToString())); //Llenar los campos del pedido txbFolio.Text = oFactura.Folio; txbFecha.Text = oFactura.Fecha.ToShortDateString(); int iContador = 0; cmbEstatus.SelectedIndex = -1; foreach (ListItem elemento in cmbEstatus.Items) { if (elemento.Value.Equals(oFactura.Estatus.ToString())) { elemento.Selected = true; } iContador++; } cmbTipoFactura.SelectedIndex = -1; iContador = 0; foreach (ListItem elemento in cmbTipoFactura.Items) { if (elemento.Value.Equals(oFactura.TipoFactura.ToString())) { elemento.Selected = true; } iContador++; } //Llenar los campos del cliente txbCliente.Text = oFactura.clientes.Nombre + " " + oFactura.clientes.Apellidos; txbDireccion.Text = oFactura.clientes.Calle + " " + oFactura.clientes.NumeroExt; if (oFactura.clientes.NumeroInt != null) { txbDireccion.Text += "Int: " + oFactura.clientes.NumeroInt; } txbPoblacion.Text = oFactura.clientes.poblaciones.Nombre.ToString() + ", " + oFactura.clientes.municipios.Nombre.ToString() + ", " + oFactura.clientes.estados.Nombre.ToString(); //Lenar los datos de la partida del detalle oblFacturas = new MedNeg.Facturas.BlFacturas(); //Recuperar la partida del pedido var oQuery = oblFacturas.RecuperarPartidaFactura(oFactura.idFactura); //Session["lstDetallePartida"] = new List<MedNeg.Facturas.BlDetallePartida>(); if (((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Count() > 0) { ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Clear(); } //Recorrer el resultado y meterlo al datagridview Session["sTotalFactura"] = 0; foreach (MedDAL.DAL.facturas_partida oDetalle in oQuery) { oblDetallePartida = new MedNeg.Facturas.BlDetallePartida( Convert.ToInt32(oDetalle.idProducto), oDetalle.productos.Clave1, oDetalle.productos.Nombre, oDetalle.Cantidad, Convert.ToDecimal(oDetalle.IEPS), Convert.ToDecimal(oDetalle.Iva), Convert.ToDecimal(oDetalle.Precio), oDetalle.Observaciones, Convert.ToDecimal((oDetalle.Precio * oDetalle.Cantidad) + oDetalle.IEPS + oDetalle.Iva)); ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Add(oblDetallePartida); Session["sTotalFactura"] = Convert.ToDecimal(Session["sTotalFactura"]) + Convert.ToDecimal((oDetalle.Precio * oDetalle.Cantidad) + oDetalle.IEPS + oDetalle.Iva); } //Hacer el binding de la data al dgvDatos lblTotal.Text = "TOTAL:$" + Session["sTotalFactura"].ToString(); dgvPartidaDetalle.DataBind(); ////si el estatus es 1 (Pedido) aun se pueden agregar articulos de lo contario ya no //if (oFactura.Estatus == "3") //{ // HabilitaRemision(); // Deshabilita(); //} //else //{ DeshabilitaRemision(); Deshabilita(); //cmbEstatus.Enabled = true; //} } else { //Limpia(); //Deshabilita(); } }
/// <summary> /// Editar /// </summary> private void Editar() { oFactura = new MedDAL.DAL.facturas(); oblFacturas = new MedNeg.Facturas.BlFacturas(); oFactura.idFactura = int.Parse(dgvDatos.SelectedDataKey.Value.ToString()); oFactura.Estatus = cmbEstatus.SelectedValue.ToString(); if (oblFacturas.EditarRegistro(oFactura)) { //Datos de la bitacora string sDatosBitacora = string.Empty; sDatosBitacora += "Tipo:" + cmbTipoFactura.SelectedValue.ToString() + " "; sDatosBitacora += "Folio:" + txbFolio.Text + " "; sDatosBitacora += "Fecha:" + txbFecha.Text + " "; sDatosBitacora += "Estatus:" + cmbEstatus.SelectedItem.ToString() + " "; sDatosBitacora += "Cliente:" + txbCliente.Text + " "; oblFacturas = new MedNeg.Facturas.BlFacturas(); if (oblFacturas.EliminarFacturaPartida(oFactura.idFactura)) { bool bRegistroFallido = false; //Recorrer el objeto de sesion lstDetallePartida que contiene los datos de la partida foreach (MedNeg.Facturas.BlDetallePartida facturaDetalle in (List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]) { oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); oFacturaPartida.idFactura = oFactura.idFactura; oFacturaPartida.idProducto = facturaDetalle.iIdProducto; oFacturaPartida.Cantidad = facturaDetalle.dCantidad; oFacturaPartida.IEPS = facturaDetalle.dIeps; oFacturaPartida.Iva = facturaDetalle.dIva; oFacturaPartida.Precio = facturaDetalle.dPrecio; //Registrar el detalle del pedido if (!oblFacturas.NuevoDetallePartida(oFacturaPartida)) { bRegistroFallido = true; } else { sDatosBitacora += "Producto:" + facturaDetalle.iIdProducto.ToString() + " "; sDatosBitacora += "Cant:" + facturaDetalle.dCantidad.ToString() + " "; sDatosBitacora += "IEPS:" + facturaDetalle.dIeps.ToString() + " "; sDatosBitacora += "Iva:" + facturaDetalle.dIva.ToString() + " "; sDatosBitacora += "Precio:" + facturaDetalle.dPrecio.ToString() + " "; sDatosBitacora += "Total:" + Convert.ToDecimal((facturaDetalle.dCantidad * facturaDetalle.dPrecio) + facturaDetalle.dIeps + facturaDetalle.dIva) + ", "; } } //Anotar en la bitacora la modificación al pedido oBitacora = new MedDAL.DAL.bitacora(); 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 = "Edición de Factura"; oBitacora.Descripcion = sDatosBitacora; if (!oblBitacora.NuevoRegistro(oBitacora)) { lblDatos.Text = "El evento no pudo ser registrado en la bitácora"; } } } }
/// <summary> /// Cargar los datos del pedido y su partida /// </summary> /// <param name="bDatos"></param> protected void CargarFormulario(bool bDatos) { pnlFormulario.Visible = true; pnlCatalogo.Visible = false; pnlFiltroReportes.Visible = false; if (bDatos) { //Objeto que contiene el id del pedido oblFacturas = new MedNeg.Facturas.BlFacturas(); oFactura = new MedDAL.DAL.facturas(); oFactura = (MedDAL.DAL.facturas)oblFacturas.BuscarFactura(int.Parse(dgvDatos.SelectedDataKey[0].ToString())); //Llenar los campos de la factura txbFolio.Text = oFactura.Folio; if (oFactura.idPedido.Equals(null)) txbPedido.Text = ""; else txbPedido.Text = oFactura.pedidos.Folio.ToString(); if (oFactura.idRemision.Equals(null)) txbRemision.Text = ""; else txbRemision.Text = oFactura.remisiones.Folio.ToString(); if (oFactura.idReceta.Equals(null)) txbReceta.Text = ""; else txbReceta.Text = oFactura.recetas.Folio.ToString(); txbFecha.Text = oFactura.Fecha.ToShortDateString(); int iContador = 0; cmbEstatus.SelectedIndex = -1; foreach (ListItem elemento in cmbEstatus.Items) { if (elemento.Value.Equals(oFactura.Estatus.ToString())) { elemento.Selected = true; } iContador++; } cmbTipoFactura.SelectedIndex = -1; iContador = 0; foreach (ListItem elemento in cmbTipoFactura.Items) { if (elemento.Value.Equals(oFactura.TipoFactura.ToString())) { elemento.Selected = true; } iContador++; } //Llenar los campos del cliente txbCliente.Text = oFactura.clientes.Nombre + " " + oFactura.clientes.Apellidos; txbDireccion.Text = oFactura.clientes.Calle + " " + oFactura.clientes.NumeroExt; if (oFactura.clientes.NumeroInt != null) { txbDireccion.Text += "Int: " + oFactura.clientes.NumeroInt; } txbPoblacion.Text = oFactura.clientes.poblaciones.Nombre.ToString() + ", " + oFactura.clientes.municipios.Nombre.ToString() +", " + oFactura.clientes.estados.Nombre.ToString(); //Lenar los datos de la partida del detalle oblFacturas = new MedNeg.Facturas.BlFacturas(); //Recuperar la partida del pedido List<MedDAL.DAL.facturas_partida> oQuery = new List<MedDAL.DAL.facturas_partida>(); oQuery.AddRange(oblFacturas.RecuperarPartidaFactura(oFactura.idFactura)); //Session["lstDetallePartida"] = new List<MedNeg.Facturas.BlDetallePartida>(); if (((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Count() > 0) { ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Clear(); } //Recorrer el resultado y meterlo al datagridview Session["sTotalFactura"] = 0; //0087 Variables para gestionar la carga de datos del producto o del ensamble string sClave; string sNombre; bool bEsEnsamble; foreach (MedDAL.DAL.facturas_partida oDetalle in oQuery) { //0087 Identificar si es un producto o un ensamble if (oDetalle.idEnsamble.Equals(null)) { //Datos del producto sClave = oDetalle.productos.Clave1; sNombre = oDetalle.productos.Nombre; bEsEnsamble = false; } else { //Datos del ensamble sClave = oDetalle.ensamble.ClaveBom; sNombre = oDetalle.ensamble.Descripcion; bEsEnsamble = true; } oblDetallePartida = new MedNeg.Facturas.BlDetallePartida( Convert.ToInt32(oDetalle.idProducto), //0087 Comentar para enviar las variables correspondientes que tienen la info del producto o ensamble //oDetalle.productos.Clave1, //oDetalle.productos.Nombre, sClave, sNombre, oDetalle.Cantidad, Convert.ToDecimal(oDetalle.IEPS), Convert.ToDecimal(oDetalle.Iva), Convert.ToDecimal(oDetalle.Precio), oDetalle.Observaciones, Convert.ToDecimal((oDetalle.Precio * oDetalle.Cantidad)+oDetalle.IEPS+oDetalle.Iva), oDetalle.Descripcion, bEsEnsamble //0087 ); ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Add(oblDetallePartida); Session["sTotalFactura"] = Convert.ToDecimal(Session["sTotalFactura"]) + Convert.ToDecimal((oDetalle.Precio * oDetalle.Cantidad) + oDetalle.IEPS + oDetalle.Iva); } //Hacer el binding de la data al dgvDatos lblTotal.Text = "TOTAL:$" + Session["sTotalFactura"].ToString(); dgvPartidaDetalle.DataBind(); //si el estatus es 1 (Pedido) aun se pueden agregar articulos de lo contario ya no if (oFactura.Estatus == "3") { HabilitaRemision(); Deshabilita(); } else { DeshabilitaRemision(); Deshabilita(); } } else { Session["lstDetallePartidaPedidos"] = new List<MedNeg.Facturas.BlDetallePartida>(); dgvPartidaDetalle.DataSource = ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartidaPedidos"]); dgvPartidaDetalle.DataBind(); //Limpia(); //Deshabilita(); } }
/// <summary> /// PAGE LOAD /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Page_Load(object sender, EventArgs e) { #region Interfaz Hashtable htbPermisos = (Hashtable)Session["permisos"]; char cPermiso = 'N'; try { cPermiso = (char)htbPermisos["facturas"]; Master.FindControl("btnNuevo").Visible = false; Master.FindControl("btnEliminar").Visible = false; Master.FindControl("btnAceptar").Visible = false; Master.FindControl("btnCancelar").Visible = false; Master.FindControl("btnImprimir").Visible = false; //Master.FindControl("imgBtnReportes").Visible = false; //Master.FindControl("btnMostrar").Visible = false; //Master.FindControl("btnReportes").Visible = false; //Master.FindControl("rdbFiltro1").Visible = false; //Master.FindControl("rdbFiltro2").Visible = false; //Master.FindControl("rdbFiltro3").Visible = false; //Master.FindControl("btnBuscar").Visible = false; //Master.FindControl("txtBuscar").Visible = false; //Master.FindControl("lblBuscar").Visible = false; //imbNuevo = (ImageButton)Master.FindControl("imgBtnNuevo"); //imbNuevo.Click += new ImageClickEventHandler(this.imbNuevo_Click); imbEditar = (ImageButton)Master.FindControl("imgBtnEditar"); imbEditar.Click += new ImageClickEventHandler(this.imbEditar_Click); //imbEliminar = (ImageButton)Master.FindControl("imgBtnEliminar"); //imbEliminar.Click += new ImageClickEventHandler(this.imbEliminar_Click); imbMostrar = (ImageButton)Master.FindControl("imgBtnMostrar"); imbMostrar.Click += new ImageClickEventHandler(this.imbMostrar_Click); imbAceptar = (ImageButton)Master.FindControl("imgBtnAceptar"); imbAceptar.Click += new ImageClickEventHandler(this.imbAceptar_Click); //imbCancelar = (ImageButton)Master.FindControl("imgBtnCancelar"); //imbCancelar.Click += new ImageClickEventHandler(this.imbCancelar_Click); imbReportes = (ImageButton)Master.FindControl("imgBtnReportes"); imbReportes.Click += new ImageClickEventHandler(this.imbReportes_Click); rdbTodos = (RadioButton)Master.FindControl("rdbFiltro1"); rdbTodos.Text = "Folio"; rdbClave = (RadioButton)Master.FindControl("rdbFiltro2"); rdbClave.Text = "Cliente"; rdbNombre = (RadioButton)Master.FindControl("rdbFiltro3"); rdbNombre.Text = "Fecha"; btnBuscar = (Button)Master.FindControl("btnBuscar"); btnBuscar.Click += new EventHandler(this.btnBuscar_Click); txbBuscar = (TextBox)Master.FindControl("txtBuscar"); lblNombreModulo = (Label)Master.FindControl("lblNombreModulo"); lblNombreModulo.Text = "Cuentas Por Cobrar"; lblEditar = (Label)Master.FindControl("lblEditar"); lblEditar.Text = "Aplicación"; switch (cPermiso) { case 'T': break; case 'E': DesactivarEdicionEliminacion(); break; case 'L': DesactivarEdicionEliminacion(); DesactivarNuevo(); break; } #endregion dgvPartidaDetalle.Visible = true; dgvPartidaDetalle.ShowHeader = true; dgvPartidaDetalle.EmptyDataText = "Sin Detalle"; dgvPartidaDetalle.DataSource = ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]); dgvPartidaDetalle.DataBind(); txbClave.TextChanged += new EventHandler(txbClave_TextChanged); if (!IsPostBack) { // Saber si estan activados los folios automaticos y poner su valor por default // Se almacena en una variable de sesión para comparar que se esta respetando el formato automatico // y validar que no haya cambiado el folio de pedidos debido a otro registro mientras se hacia el actual oblFacturas = new MedNeg.Facturas.BlFacturas(); Session["iFolioAutomatico"] = oblFacturas.RecuperaFolioAutomatico(Server.MapPath("~/Archivos/Configuracion.xml")); txbFolio.Text = Session["iFolioAutomatico"].ToString(); Session["sEsDePedido"] = false; Session["sEsDeRemision"] = false; Session["sEsDeReceta"] = false; Session["lstDetallePartida"] = new List<MedNeg.Facturas.BlDetallePartida>(); pnlCatalogo.Visible = false; pnlFormulario.Visible = false; //pnlReporte.Visible = false; Session["sTotalFactura"] = 0; Session["resultadoquery"] = ""; ViewState["direccionsorting"] = System.Web.UI.WebControls.SortDirection.Ascending; pnlFiltroReportes.Visible = false; } } catch (NullReferenceException) { if (!ClientScript.IsStartupScriptRegistered("alertsession")) { Page.ClientScript.RegisterStartupScript(this.GetType(), "alertsession", "alertarSesion();", true); } pnlCatalogo.Visible = false; pnlFormulario.Visible = false; Site1 oPrincipal = (Site1)this.Master; oPrincipal.DeshabilitarControles(this); oPrincipal.DeshabilitarControles(); } }
private string CrearFacturaSubTotales(string sFolio,decimal dSubtotalFacturar) { //TODO: GT Paso 6: Paso opcional, aqui se genera la factura por sub totales si lo eligio el usuario //objeto que contiene la receta string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); string sRutaCertificados = Server.MapPath("~/Archivos/"); bool bRegistroFallido = false; //MedDAL.DAL.recetas oReceta = new MedDAL.DAL.recetas(); //MedNeg.Recetas.BlRecetas oblReceta = new MedNeg.Recetas.BlRecetas(); MedNeg.Configuracion.BlConfiguracion oblConfiguracion = new MedNeg.Configuracion.BlConfiguracion(); MedDAL.Configuracion.DALConfiguracion odalConfiguracion = new MedDAL.Configuracion.DALConfiguracion(); MedDAL.DAL.facturas oFacturas = new MedDAL.DAL.facturas(); MedNeg.Facturas.BlFacturas oblFacturas = new MedNeg.Facturas.BlFacturas(); //decimal dSubtotal = 0; //int idReceta = 0; odalConfiguracion = (MedDAL.Configuracion.DALConfiguracion)oblConfiguracion.CargaDatos(sRutaArchivoConfig); //ID Cliente oFacturas.idCliente = (int)Session["sIdCliente"]; //IDRECETA //oFacturas.idReceta = oReceta.idReceta; //Asiganr el folio de la factura if (odalConfiguracion.iFacturasAutomatico == 1) { oFacturas.Folio = odalConfiguracion.iFolioFacturas++.ToString(); } else { //oFacturas.Folio = oReceta.Folio; oFacturas.Folio = sFolio + "-GastoAdm"; } string sIdFolioFactura = oFacturas.Folio; //Fecha oFacturas.Fecha = DateTime.Now; oFacturas.FechaAplicacion = DateTime.Now; //tipo (4 por que son de receta) oFacturas.TipoFactura = "4"; //Estatus (3 de emitida) oFacturas.Estatus = "3"; //Id del usuario que genero la factura oFacturas.idUsuario=Convert.ToInt32(Session["usuarioid"]); //Nombre del vendedor que en este caso es el usuario oFacturas.Vendedor = Session["nombre"].ToString(); //Registrar la factura if (oblFacturas.NuevoRegistro(oFacturas)) { oFacturas = new MedDAL.DAL.facturas(); oblFacturas = new MedNeg.Facturas.BlFacturas(); ////Recuperar el id de la factura crea| da oFacturas = oblFacturas.BuscarFacturasFolio(sIdFolioFactura); //Actualizar el consecutivo en la bitacora oblFacturas.ActualizarFolioFactura(sRutaArchivoConfig); //Insertar el detalle de factura oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); oFacturaPartida.idFactura = oFacturas.idFactura; oFacturaPartida.idProducto = (int)Session["sIdProductoFxR"]; oFacturaPartida.Cantidad = 1; oFacturaPartida.IEPS = 0; //Identificar de cuanto va a ser la factura de subtotales, si un porciento del subtotal o un monto especifico if (txbMonto.Text == "" && txbPorcentaje.Text=="") { oFacturaPartida.Precio = dSubtotalFacturar; oFacturaPartida.Iva = dSubtotalFacturar * consdIva; } else if (txbMonto.Text != "") //El sub total es por monto { oFacturaPartida.Precio = Convert.ToDecimal(txbMonto.Text); oFacturaPartida.Iva = Convert.ToDecimal(txbMonto.Text) * consdIva; } else if(txbPorcentaje.Text!="") //El sub total es por porcentaje del monto de sub total { oFacturaPartida.Precio=dSubtotalFacturar*(Convert.ToDecimal(txbPorcentaje.Text)/100); oFacturaPartida.Iva=consdIva*(dSubtotalFacturar*(Convert.ToDecimal(txbPorcentaje.Text)/100)); } oFacturaPartida.Descripcion = txbProductos.Text; oFacturaPartida.Observaciones = ""; //Registrar el detalle del pedido if (!oblFacturas.NuevoDetallePartida(oFacturaPartida)) { bRegistroFallido = true; } else { } //TODO: GT Paso 6.1 Aqui si bRegistroFallido es false entonces aqui se generaria la factura electronica con los datos de sub totales if (cmbModoFactura.SelectedValue == "2" && !bRegistroFallido) { oblFacturas = new MedNeg.Facturas.BlFacturas(); oblFacturas.GenerarFacturaElectronica(oFacturas.idFactura, sRutaCertificados, Session["usuario"].ToString(), (int)Session["sIdCliente"], oFacturas.Folio); return Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFacturas.Folio + ".xml"); //System.IO.FileInfo fFactura = new System.IO.FileInfo(Server.MapPath("~/Archivos/FacturasElectronicas/FacturaE-" + oFacturas.Folio + ".xml")); //Response.Clear(); //Response.AddHeader("Content-Disposition", "attachment; filename=" + fFactura.Name); //Response.AddHeader("Content-Length", fFactura.Length.ToString()); //Response.ContentType = "application/...."; //Response.WriteFile(fFactura.FullName); //Response.End(); } return ""; } return ""; }
/// <summary> /// funcion que crea una factura nueva sin gastos de administracion /// </summary> /// <param name="sFolio"></param> /// <param name="iTipo">1-Tradicional, 2-Electronica</param> /// <returns></returns> private void CrearFactura(List<MedNeg.Facturas.BlDetalleFacturaReceta> lstDetalleFactura, int iTipo) { //TODO: GT Paso 3: Generar la factura con todo lo contabilizado de las recetas que van a conformar esta factura. //objeto que contiene la receta string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); string sRutaCertificados = Server.MapPath("~/Archivos/"); string sFacturaAdicional = ""; string sFacturaAdicional2 = ""; MedDAL.DAL.recetas oReceta = new MedDAL.DAL.recetas(); MedNeg.Recetas.BlRecetas oblReceta = new MedNeg.Recetas.BlRecetas(); MedNeg.Configuracion.BlConfiguracion oblConfiguracion = new MedNeg.Configuracion.BlConfiguracion(); MedDAL.Configuracion.DALConfiguracion odalConfiguracion = new MedDAL.Configuracion.DALConfiguracion(); MedDAL.DAL.facturas oFacturas = new MedDAL.DAL.facturas(); MedNeg.Facturas.BlFacturas oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.FacturacionDeRecetas oFacturacionRecetas = new MedDAL.DAL.FacturacionDeRecetas(); decimal dSubtotal = 0; int idReceta = 0; odalConfiguracion = (MedDAL.Configuracion.DALConfiguracion)oblConfiguracion.CargaDatos(sRutaArchivoConfig); //ID Cliente oFacturas.idCliente = (int)Session["sIdCliente"]; //IDRECETA //oFacturas.idReceta = oReceta.idReceta; //Asiganr el folio de la factura if (odalConfiguracion.iFacturasAutomatico == 1) { oFacturas.Folio = odalConfiguracion.iFolioFacturas++.ToString(); } else { string sFolioAux; sFolioAux = "FxR" + DateTime.Now.ToShortDateString() + iContadorFacturas.ToString(); //Validar que no exista el folio while (!ValidaFolioRepetido(sFolioAux)) sFolioAux = "FxR" + DateTime.Now.ToShortDateString() + iContadorFacturas++.ToString(); oFacturas.Folio = sFolioAux; } string sIdFolioFactura=oFacturas.Folio; //Fecha oFacturas.Fecha = DateTime.Now; oFacturas.FechaAplicacion = DateTime.Now; //tipo (4 por que son de receta) oFacturas.TipoFactura = "4"; //Estatus (3 de emitida) oFacturas.Estatus = "3"; //Id del usuario que genero la factura oFacturas.idUsuario = Convert.ToInt32(Session["usuarioid"]); //Nombre del vendedor que en este caso es el usuario oFacturas.Vendedor = Session["nombre"].ToString(); //Registrar la factura if (oblFacturas.NuevoRegistro(oFacturas)) { oFacturas = new MedDAL.DAL.facturas(); oblFacturas = new MedNeg.Facturas.BlFacturas(); ////Recuperar el id de la factura crea| da oFacturas = oblFacturas.BuscarFacturasFolio(sIdFolioFactura); //Actualizar el consecutivo en la configuracion oblFacturas.ActualizarFolioFactura(sRutaArchivoConfig); iContadorFacturas++; //Insertar el detalle de factura //Recorrer el objeto de sesion lstDetallePartida que contiene los datos de la partida foreach (MedNeg.Facturas.BlDetalleFacturaReceta renglon in lstDetalleFactura) { oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); oFacturaPartida.idFactura = oFacturas.idFactura; oFacturaPartida.idProducto = renglon.iIdProducto; oFacturaPartida.Cantidad = renglon.dCantidad; oFacturaPartida.IEPS = renglon.dIeps; oFacturaPartida.Iva = renglon.dIva; oFacturaPartida.Precio = renglon.dPrecio; //Registrar el detalle del pedido if (!oblFacturas.NuevoDetallePartida(oFacturaPartida)) { //bRegistroFallido = true; } else { //Guardar el monto de las lineas MedNeg.Facturas.BlFacturacionDeLineas oblFacturacionLinea = new MedNeg.Facturas.BlFacturacionDeLineas(); oblFacturacionLinea.DMonto = oFacturaPartida.Cantidad * oFacturaPartida.Precio; oblFacturacionLinea.DtFecha = DateTime.Now; oblFacturacionLinea.IIdLineaCredito = renglon.IIdLineaCredito; lstTotalFacturadoPorLinea.Add(oblFacturacionLinea); //Guardar el subtotal para cuando sea una facturacion de Gtos. Admon por subtotales dSubtotal += oFacturaPartida.Cantidad * oFacturaPartida.Precio; //Modificar el estatus de la receta if (idReceta != renglon.IIdReceta) { MedDAL.DAL.recetas oRecetaEditar = new MedDAL.DAL.recetas(); MedNeg.Recetas.BlRecetas oblRecetas = new MedNeg.Recetas.BlRecetas(); oRecetaEditar.idReceta = renglon.IIdReceta; oRecetaEditar.Estatus = "2"; oblRecetas = new MedNeg.Recetas.BlRecetas(); oblRecetas.EditarRegistro(oRecetaEditar); idReceta = renglon.IIdReceta; } //TODO: Paso 3.1 Aqui generar la factura electronica de las recetas facturadas } } if (iTipo == 2) { oblFacturas = new MedNeg.Facturas.BlFacturas(); oblFacturas.GenerarFacturaElectronica(oFacturas.idFactura, sRutaCertificados, Session["usuario"].ToString(), (int)Session["sIdCliente"], oFacturas.Folio); } ///TODO /// Mandar a imprimir la de gastos de administración por renglones o por subtotales /// 1 = Renglones, 2 = Sub totales /// //TODO: GT Paso 4: una vez generada una factura y segun como eligio el usuario se debe de hacer una factura de tipo Gasto administrativo o por sub totales A LA PAR DE LA FACTURA EMITIDA, es regla de negocio por eso por cada factura siempre existiran 2 if (chkPanelGtosAdmon.Checked == true) { if (rblGenerarFacturaTipo.SelectedValue == "1") { sFacturaAdicional = CrearFacturaGtoAdministrativo(sIdFolioFactura, lstDetalleFactura); sFacturaAdicional2 = sFacturaAdicional.Replace(".xml", ".pdf"); } if (rblGenerarFacturaTipo.SelectedValue == "2") { //Generar la factura agregandole el monto a la factura sFacturaAdicional = CrearFacturaSubTotales(sIdFolioFactura, dSubtotal); sFacturaAdicional2 = sFacturaAdicional.Replace(".xml", ".pdf"); dSubtotal = 0; } } //Gurdar en la base de datos lo facturado por linea de credito foreach (MedNeg.Facturas.BlFacturacionDeLineas registro in lstTotalFacturadoPorLinea) { oFacturacionRecetas.idLineaCredito = registro.IIdLineaCredito; oFacturacionRecetas.Fecha = registro.DtFecha; oFacturacionRecetas.Monto = registro.dMonto; oblFacturas = new MedNeg.Facturas.BlFacturas(); //MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); //Registrar el renglon de lo facturado if(!oblFacturas.NuevoRegistroFacturacionReceta(oFacturacionRecetas)) { //bRegistroFallido = true; } } if (iTipo == 2) { try { oblFacturas.CrearZip(new string[] { Server.MapPath("~/Archivos/FacturasElectronicasTimbradas"), Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFacturas.Folio + ".zip") }, Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFacturas.Folio + ".xml"), Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFacturas.Folio + ".pdf"), sFacturaAdicional, sFacturaAdicional2); ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarFacturas(0);", true); System.IO.FileInfo fFactura = new System.IO.FileInfo(Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFacturas.Folio + ".zip")); Response.Clear(); Response.AddHeader("Content-Disposition", "attachment; filename=" + fFactura.Name); Response.AddHeader("Content-Length", fFactura.Length.ToString()); Response.ContentType = "application/...."; Response.WriteFile(fFactura.FullName); Response.End(); } catch (Exception) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarExcepcion(0);", true); } } } }
public bool Timbrar(int iIdFactura) { string sRutaCertificados = Server.MapPath("~/Archivos/"); oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas oDALFacturas = new MedDAL.DAL.facturas(); string sDatosBitacora = string.Empty; oFactura = new MedDAL.DAL.facturas(); oFactura = oblFacturas.BuscarFactura(iIdFactura); int iResultado = oblFacturas.GenerarFacturaElectronica(iIdFactura, sRutaCertificados, Session["usuario"].ToString(), oFactura.idCliente, oFactura.Folio); if (iResultado == 0) { oblFacturas.CrearZip(new string[] { Server.MapPath("~/Archivos/FacturasElectronicasTimbradas"), Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFactura.Folio + ".zip") }, Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFactura.Folio + ".xml"), Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFactura.Folio + ".pdf")); ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarFacturas(0);", true); System.IO.FileInfo fFactura = new System.IO.FileInfo(Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFactura.Folio + ".zip")); Response.Clear(); Response.AddHeader("Content-Disposition", "attachment; filename=" + fFactura.Name); Response.AddHeader("Content-Length", fFactura.Length.ToString()); Response.ContentType = "application/...."; Response.WriteFile(fFactura.FullName); Response.End(); } else if (iResultado == 1) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarFacturas(1);", true); } else if (iResultado == 2) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarFacturas(2);", true); } else if (iResultado == 3) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarFacturas(3);", true); } else if (iResultado == 4) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarFacturas(4);", true); } return true; }
protected void cmbEstatusCobranza_SelectedIndexChanged(object sender, EventArgs e) { //Recuperar el id de la factura seleccionada y mandar el nuevo estatus MedDAL.DAL.facturas oFacturas = new MedDAL.DAL.facturas(); MedNeg.Facturas.BlFacturas oblFacturas = new MedNeg.Facturas.BlFacturas(); oFacturas = oblFacturas.BuscarFacturasFolio(dgvDatos.SelectedRow.Cells[4].Text); oFacturas.Estatus = ((DropDownList)dgvDatos.SelectedRow.Cells[8].FindControl("cmbEstatusCobranza")).SelectedValue; //Actualizar la fecha de aplicación oFacturas.FechaAplicacion = DateTime.Now; if (oblFacturas.EditarRegistro(oFacturas)) { lblAviso.Text = "La aplicación de la factura:" + dgvDatos.SelectedRow.Cells[4].Text + " fue correcta."; //Datos de la bitacora string sDatosBitacora = string.Empty; sDatosBitacora += "Folio:" + oFacturas.Folio + " "; sDatosBitacora += "Estatus Cambiado A: " + ((DropDownList)dgvDatos.SelectedRow.Cells[8].FindControl("cmbEstatusCobranza")).SelectedItem.ToString() + " "; sDatosBitacora += "Cliente:" + oFacturas.clientes.Nombre + " "+ oFacturas.clientes.Apellidos+" "; sDatosBitacora += "RFC:" + oFacturas.clientes.Rfc; //Registrar en la bitacora RegistrarEnBitacora(sDatosBitacora); MostrarLista(); } else { lblAviso.Text = "La aplicación de la factura:" + dgvDatos.SelectedRow.Cells[4].Text + " fue incorrecta, por favor intentelo de nuevo."; MostrarLista(); } }
/// <summary> /// PAGE LOAD /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Page_Load(object sender, EventArgs e) { Hashtable htbPermisos = (Hashtable)Session["permisos"]; char cPermiso = 'N'; try { #region Interfaz cPermiso = (char)htbPermisos["facturas"]; Master.FindControl("btnAlertaStock").Visible = true; imbNuevo = (ImageButton)Master.FindControl("imgBtnNuevo"); imbNuevo.Click += new ImageClickEventHandler(this.imbNuevo_Click); imbEditar = (ImageButton)Master.FindControl("imgBtnEditar"); imbEditar.Click += new ImageClickEventHandler(this.imbEditar_Click); imbEliminar = (ImageButton)Master.FindControl("imgBtnEliminar"); imbEliminar.Click += new ImageClickEventHandler(this.imbEliminar_Click); imbMostrar = (ImageButton)Master.FindControl("imgBtnMostrar"); imbMostrar.Click += new ImageClickEventHandler(this.imbMostrar_Click); imbAceptar = (ImageButton)Master.FindControl("imgBtnAceptar"); imbAceptar.Click += new ImageClickEventHandler(this.imbAceptar_Click); imbCancelar = (ImageButton)Master.FindControl("imgBtnCancelar"); imbCancelar.Click += new ImageClickEventHandler(this.imbCancelar_Click); imbImprimir = (ImageButton)Master.FindControl("imgBtnImprimir"); imbImprimir.Click += new ImageClickEventHandler(this.imbImprimir_Click); imbReimprimir = (ImageButton)Master.FindControl("imgBtnPrecios"); imbReimprimir.Click += new ImageClickEventHandler(this.imbReimprimir_Click); imbReimprimir.ImageUrl = "~/Icons/reports32.png"; lblReimprimir = (Label)Master.FindControl("lblPrecios"); lblReimprimir.Text = "Reenviar"; imbTimbrar = (ImageButton)Master.FindControl("imgBtnAlertas"); imbTimbrar.Click += new ImageClickEventHandler(this.imbTimbrar_Click); imbTimbrar.ImageUrl = "~/Icons/up_32.png"; lblTimbrar = (Label)Master.FindControl("lblAlertas"); lblTimbrar.Text = "Timbrar"; rdbTodos = (RadioButton)Master.FindControl("rdbFiltro1"); rdbTodos.Text = "Folio"; rdbClave = (RadioButton)Master.FindControl("rdbFiltro2"); rdbClave.Text = "Cliente"; rdbNombre = (RadioButton)Master.FindControl("rdbFiltro3"); rdbNombre.Text = "Fecha"; btnBuscar = (Button)Master.FindControl("btnBuscar"); btnBuscar.Click += new EventHandler(this.btnBuscar_Click); txbBuscar = (TextBox)Master.FindControl("txtBuscar"); Master.FindControl("btnReportes").Visible = true; Master.FindControl("btnPrecios").Visible = true; lblNombreModulo = (Label)Master.FindControl("lblNombreModulo"); lblNombreModulo.Text = "Facturas"; //GT 0175 imbReportes = (ImageButton)Master.FindControl("imgBtnReportes"); imbReportes.Click += new ImageClickEventHandler(this.imbReportes_Click); //2013/03/14 JID Se ocultan un par de campos cmbModoFactura.Visible = false; Label25.Visible = false; switch (cPermiso) { case 'T': break; case 'E': DesactivarEdicionEliminacion(); break; case 'L': DesactivarEdicionEliminacion(); DesactivarNuevo(); break; } #endregion if (!IsPostBack) { Session["editarpartidas"] = 0; Session["reporteactivo"] = 0; Session["reportdocument"] = ""; Session["titulo"] = ""; Session["resultadoquery"] = ""; ViewState["direccionsorting"] = System.Web.UI.WebControls.SortDirection.Ascending; //GT: Lista donde se guardan los productos que se agregan en una edicion de remisiones a los ya existentes Session["lstremisionespartidaedicion"] = new List<MedNeg.Facturas.BlDetallePartida>(); Session["accion"] = 0; } if (int.Parse(Session["editarpartidas"].ToString()) == 1) { Session["editarpartidas"] = 0; } else { dgvPartidaDetalle.Visible = true; dgvPartidaDetalle.ShowHeader = true; dgvPartidaDetalle.EmptyDataText = "Sin Detalle"; dgvPartidaDetalle.DataSource = ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]); dgvPartidaDetalle.DataBind(); txbClave.TextChanged += new EventHandler(txbClave_TextChanged); } if (!IsPostBack) { // Saber si estan activados los folios automaticos y poner su valor por default // Se almacena en una variable de sesión para comparar que se esta respetando el formato automatico // y validar que no haya cambiado el folio de pedidos debido a otro registro mientras se hacia el actual oblFacturas = new MedNeg.Facturas.BlFacturas(); Session["iFolioAutomatico"] = oblFacturas.RecuperaFolioAutomatico(Server.MapPath("~/Archivos/Configuracion.xml")); txbFolio.Text = Session["iFolioAutomatico"].ToString(); Session["sEsDePedido"] = false; Session["sEsDeRemision"] = false; Session["sEsDeReceta"] = false; Session["lstDetallePartida"] = new List<MedNeg.Facturas.BlDetallePartida>(); pnlCatalogo.Visible = false; pnlFormulario.Visible = false; //pnlReportes.Visible = false; Session["sTotalFactura"] = 0; //Variable de sesion para saber si es un ensamble al momento de registrar el detalle de la partida // 0 = False, 1 = True Session["sBolEsEnsamble"] = 0; //GT 0175 ConfigurarMenuBotones(true, true, false, false, false, false, true, true); pnlFiltroReportes.Visible = false; } } catch (NullReferenceException) { if (!ClientScript.IsStartupScriptRegistered("alertsession")) { Page.ClientScript.RegisterStartupScript(this.GetType(), "alertsession", "alertarSesion();", true); } pnlFormulario.Visible = false; pnlCatalogo.Visible = false; Site1 oPrincipal = (Site1)this.Master; oPrincipal.DeshabilitarControles(this); oPrincipal.DeshabilitarControles(); } }
/// <summary> /// 2013/03/10 Jorge Ibarra /// Crea una instancia de factura, la guarda, y en caso de ser electrónica la procesa para ser timbrada /// </summary> private bool AddFactura() { string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); MedDAL.Facturas.DALFacturas oDALFacturas = new MedDAL.Facturas.DALFacturas(); oblFacturas = new MedNeg.Facturas.BlFacturas(); oFactura = SetObjetoFactura(); //Coloca la partida en la factura y además resta las existencias en el almacén correspondiente if (!SetObjetoFacturaPartida(ref oFactura, oDALFacturas.MedicuriEntities)) { Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert(Ha ocurrido un error: \n" + oDALFacturas.GetError() + ")", true); return false; } if (!oDALFacturas.Add(oFactura, oDALFacturas.MedicuriEntities)) { Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert(Ha ocurrido un error: \n" + oDALFacturas.GetError() + ")", true); return false; } //Saber si se va a actualizar el estatus del pedido if ((bool)Session["sEsDePedido"] == true) { oFactura.pedidos.Estatus = "3"; } //Saber si se va a actualizar el estatus de la remision if ((bool)Session["sEsDeRemision"] == true) { oFactura.remisiones.Estatus = "3"; } //Saber si se va a actualizar el estatus de la remision if ((bool)Session["sEsDeReceta"] == true) { oFactura.recetas.Estatus = "2"; } if (oDALFacturas.SaveChanges(oDALFacturas.MedicuriEntities)) { oBitacora = new MedDAL.DAL.bitacora(); oblBitacora = new MedNeg.Bitacora.BlBitacora(); oBitacora.FechaEntradaSrv = DateTime.Now; oBitacora.FechaEntradaCte = DateTime.Now;//Linea Temporal oBitacora.Modulo = "Factura"; oBitacora.Usuario = Session["usuario"].ToString(); oBitacora.Nombre = Session["nombre"].ToString(); oBitacora.Accion = "Nueva Factura"; oBitacora.Descripcion = sDatosBitacora; if (!oblBitacora.NuevoRegistro(oBitacora)) { lblDatos.Text = "El evento no pudo ser registrado en la bitácora"; } oblFacturas.ActualizarFolioFactura(sRutaArchivoConfig); return true; } else { Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert(Ha ocurrido un error: \n" + oDALFacturas.GetError() + ")", true); return false; } }
/// <summary> /// Deprecated: 0087 Metodo que que desgloza los ensambles en sus productos para registrarlo en la partida /// </summary> protected void AgregarDetalleEnsamble(MedNeg.Facturas.BlDetallePartida renglonEnsamble, int iIdFactura) { //Recuperar los datos del ensamble MedDAL.DAL.ensamble oEnsamble = new MedDAL.DAL.ensamble(); MedDAL.DAL.ensamble_productos oEnsambleProductos = new MedDAL.DAL.ensamble_productos(); MedNeg.Ensambles.BlEnsambles oblEnsamble = new MedNeg.Ensambles.BlEnsambles(); oEnsamble = oblEnsamble.BuscarNombre(renglonEnsamble.sProducto); oblEnsamble = new MedNeg.Ensambles.BlEnsambles(); oEnsambleProductos = oblEnsamble.RecuperarProducto(oEnsamble.ClaveBom); //Para registrar el detalle de la remision oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); oFacturaPartida.idFactura = iIdFactura; oFacturaPartida.idEnsamble = oEnsamble.idEnsamble; oFacturaPartida.idProducto = oEnsambleProductos.idProducto; oFacturaPartida.Cantidad = renglonEnsamble.dCantidad; oFacturaPartida.IEPS = 0; oFacturaPartida.Iva = 0; oFacturaPartida.Precio = renglonEnsamble.dPrecio; oFacturaPartida.Observaciones = renglonEnsamble.sObservaciones; oFacturaPartida.Descripcion = oEnsamble.Descripcion; //Registrar el detalle del pedido if (!oblFacturas.NuevoDetallePartida(oFacturaPartida)) { //bRegistroFallido = true; } else { sDatosBitacora += "Producto:" + renglonEnsamble.sProducto.ToString() + " "; sDatosBitacora += "Cant:" + renglonEnsamble.dCantidad.ToString() + " "; sDatosBitacora += "IEPS:" + renglonEnsamble.dIeps.ToString() + " "; sDatosBitacora += "Iva:" + renglonEnsamble.dIva.ToString() + " "; sDatosBitacora += "Precio:" + renglonEnsamble.dPrecio.ToString() + " "; sDatosBitacora += "Total:" + Convert.ToDecimal((renglonEnsamble.dCantidad * renglonEnsamble.dPrecio) + renglonEnsamble.dIeps + renglonEnsamble.dIva) + ", "; sDatosBitacora += "Obs:" + renglonEnsamble.sObservaciones; } }
private void Reimprimir(int iIdFactura) { oblFacturas = new MedNeg.Facturas.BlFacturas(); oFactura = new MedDAL.DAL.facturas(); oFactura = oblFacturas.BuscarFactura(iIdFactura); if (System.IO.File.Exists(Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFactura.Folio + ".zip"))) { System.IO.FileInfo fFactura = new System.IO.FileInfo(Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFactura.Folio + ".zip")); Response.Clear(); Response.AddHeader("Content-Disposition", "attachment; filename=" + fFactura.Name); Response.AddHeader("Content-Length", fFactura.Length.ToString()); Response.ContentType = "application/...."; Response.WriteFile(fFactura.FullName); Response.End(); } else { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarFacturas(5);", true); } }
/// <summary> /// Editar /// </summary> private void Editar() { oFactura = new MedDAL.DAL.facturas(); oblFacturas = new MedNeg.Facturas.BlFacturas(); //oFactura.idFactura = int.Parse(dgvDatos.SelectedDataKey.Value.ToString()); oFactura = oblFacturas.BuscarFacturasFolio(txbFolio.Text); oFactura.Estatus = cmbEstatus.SelectedValue.ToString(); oblFacturas = new MedNeg.Facturas.BlFacturas(); if(oblFacturas.EditarRegistro(oFactura)) { //Datos de la bitacora string sDatosBitacora = string.Empty; sDatosBitacora += "Tipo:" + cmbTipoFactura.SelectedValue.ToString() + " "; sDatosBitacora += "Folio:" + txbFolio.Text + " "; sDatosBitacora += "Fecha:" + txbFecha.Text + " "; sDatosBitacora += "Estatus:" + cmbEstatus.SelectedItem.ToString() + " "; sDatosBitacora += "Cliente:" + txbCliente.Text + " "; oblFacturas = new MedNeg.Facturas.BlFacturas(); if (oblFacturas.EliminarFacturaPartida(oFactura.idFactura)) { bool bRegistroFallido = false; //Recorrer el objeto de sesion lstDetallePartida que contiene los datos de la partida foreach (MedNeg.Facturas.BlDetallePartida facturaDetalle in (List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]) { //Saber si es un ensamble el que se esta registrando if (facturaDetalle.bEsEnsamble == true) { AgregarDetalleEnsamble(facturaDetalle, oFactura.idFactura); } else { oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); oFacturaPartida.idFactura = oFactura.idFactura; oFacturaPartida.idProducto = facturaDetalle.iIdProducto; oFacturaPartida.Cantidad = facturaDetalle.dCantidad; oFacturaPartida.IEPS = facturaDetalle.dIeps; oFacturaPartida.Iva = facturaDetalle.dIva; oFacturaPartida.Precio = facturaDetalle.dPrecio; //Registrar el detalle del pedido if (!oblFacturas.NuevoDetallePartida(oFacturaPartida)) { bRegistroFallido = true; } else { sDatosBitacora += "Producto:" + facturaDetalle.iIdProducto.ToString() + " "; sDatosBitacora += "Cant:" + facturaDetalle.dCantidad.ToString() + " "; sDatosBitacora += "IEPS:" + facturaDetalle.dIeps.ToString() + " "; sDatosBitacora += "Iva:" + facturaDetalle.dIva.ToString() + " "; sDatosBitacora += "Precio:" + facturaDetalle.dPrecio.ToString() + " "; sDatosBitacora += "Total:" + Convert.ToDecimal((facturaDetalle.dCantidad * facturaDetalle.dPrecio) + facturaDetalle.dIeps + facturaDetalle.dIva) + ", "; } } } /****** GT: Modificar las existencias de los productos nuevos ***************/ MedNeg.Usuarios.BlUsuarios oblUsuario = new MedNeg.Usuarios.BlUsuarios(); MedDAL.DAL.usuarios oUsuario = new MedDAL.DAL.usuarios(); oUsuario = (MedDAL.DAL.usuarios)oblUsuario.Buscar(Session["usuario"].ToString()); //oblRemision = new MedNeg.Remisiones.BlRemisiones(); oblFacturas = new MedNeg.Facturas.BlFacturas(); foreach (MedNeg.Facturas.BlDetallePartida remisionDetalleNuevos in (List<MedNeg.Facturas.BlDetallePartida>)Session["lstremisionespartidaedicion"]) { oblFacturas.ModificarExistenciaProducto(oUsuario.idAlmacen, remisionDetalleNuevos.iIdProducto, remisionDetalleNuevos.dCantidad, 1); } /****** GT: Modificar las existencias de los productos nuevos ***************/ //Anotar en la bitacora la modificación a la factura oBitacora = new MedDAL.DAL.bitacora(); 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 = "Edición de Factura"; oBitacora.Descripcion = sDatosBitacora; if (!oblBitacora.NuevoRegistro(oBitacora)) { lblDatos.Text = "El evento no pudo ser registrado en la bitácora"; } if (oFactura.Estatus == "5") { string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); string sRutaCertificados = Server.MapPath("~/Archivos/"); string[] sUUID = new string[1]; string sMensaje = ""; bool bEncontrado = false; XmlTextReader oXMLReader = new XmlTextReader(sRutaCertificados + "/FacturasElectronicasTimbradas/FacturaE-" + oFactura.Folio + ".xml"); while (oXMLReader.Read()) { switch (oXMLReader.NodeType) { case XmlNodeType.Element: if (oXMLReader.Name == "tfd:TimbreFiscalDigital") { sUUID[0] = oXMLReader.GetAttribute("UUID"); bEncontrado = true; break; } break; } } if (bEncontrado) { int iResultado = oblFacturas.CancelarFacturaElectronica(sUUID, sRutaCertificados, out sMensaje); if (iResultado == 0) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarCancelacionFacturas(0);", true); System.IO.FileInfo fFactura = new System.IO.FileInfo(Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + sUUID[0] + ".xml")); Response.Clear(); Response.AddHeader("Content-Disposition", "attachment; filename=" + fFactura.Name); Response.AddHeader("Content-Length", fFactura.Length.ToString()); Response.ContentType = "application/...."; Response.WriteFile(fFactura.FullName); Response.End(); } else if (iResultado == 1) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarCancelacionFacturas(1);", true); } } } } } }
protected void Page_Load(object sender, EventArgs e) { Hashtable htbPermisos = (Hashtable)Session["permisos"]; char cPermiso = 'N'; try { #region Interfaz cPermiso = (char)htbPermisos["reportes"]; Master.FindControl("btnNuevo").Visible = false; Master.FindControl("btnEditar").Visible = false; Master.FindControl("btnEliminar").Visible = false; Master.FindControl("btnReportes").Visible = false; Master.FindControl("btnMostrar").Visible = false; Master.FindControl("btnCancelar").Visible = false; Master.FindControl("btnAceptar").Visible = false; Master.FindControl("lblBuscar").Visible = false; rdbTodos = (RadioButton)Master.FindControl("rdbFiltro1"); rdbTodos.Visible = false; rdbClave = (RadioButton)Master.FindControl("rdbFiltro2"); rdbClave.Visible = false; rdbNombre = (RadioButton)Master.FindControl("rdbFiltro3"); rdbNombre.Visible = false; btnBuscar = (Button)Master.FindControl("btnBuscar"); btnBuscar.Visible = false; txbBuscar = (TextBox)Master.FindControl("txtBuscar"); txbBuscar.Visible = false; lblNombreModulo = (Label)Master.FindControl("lblNombreModulo"); lblNombreModulo.Text = "Reportes"; /*switch (cPermiso) * { * case 'T': * break; * case 'E': * break; * case 'L': * break; * }*/ #endregion oblFacturas = new MedNeg.Facturas.BlFacturas(); oblRecetas = new MedNeg.Recetas.BlRecetas(); oblPoblaciones = new MedNeg.Poblaciones.BlPoblaciones(); if (!IsPostBack) { Session["reporteactivo"] = 0; Session["reportdocument"] = ""; Session["titulo"] = ""; Session["reporte"] = null; pnlFiltroReportes.Visible = true; CargarListaReportes(); } } catch (NullReferenceException) { if (!ClientScript.IsStartupScriptRegistered("alertsession")) { Page.ClientScript.RegisterStartupScript(this.GetType(), "alertsession", "alertarSesion();", true); } Site1 oPrincipal = (Site1)this.Master; oPrincipal.DeshabilitarControles(this); oPrincipal.DeshabilitarControles(); } }
/// <summary> /// Validar que el folio no exista en el sistema /// </summary> /// <returns>False si existe</returns> private bool ValidaFolioRepetido() { oblFacturas = new MedNeg.Facturas.BlFacturas(); if (!oblFacturas.ValidarFolioRepetido(txbFolio.Text)) return false; else return true; }
//private void CargaCamposEditablesProductos() //{ // MedNeg.CamposEditables.BlCamposEditables oblCamposEditables = new MedNeg.CamposEditables.BlCamposEditables(); // var oQuery = oblCamposEditables.Buscar("Productos"); // foreach (MedDAL.DAL.campos_editables oCampo in oQuery) // { // //si tiene un valor asignado se carga // if (oCampo.Valor != "") // { // cmbDatosOpcionales.Items.Add(oCampo.Valor); // } // } //} /// <summary> /// Validar que el folio no exista en el sistema /// </summary> /// <returns>False si existe</returns> private bool ValidaFolioRepetido(string sFolioValidar) { MedNeg.Facturas.BlFacturas oblFacturas = new MedNeg.Facturas.BlFacturas(); if (!oblFacturas.ValidarFolioRepetido(sFolioValidar)) return false; else return true; }
/// <summary> /// Buscar /// </summary> /// <param name="sCadena"></param> protected void Buscar(string sCadena) { lblAviso.Text = ""; lblAviso2.Text = ""; int iTipo = 1; if (rdbTodos.Checked) { iTipo = 1; } else if (rdbClave.Checked) { iTipo = 2; } else if (rdbNombre.Checked) { iTipo = 3; DateTime dCadena; try { dCadena = Convert.ToDateTime(sCadena); } catch { dCadena = DateTime.Now; txbBuscar.Text = dCadena.ToShortDateString(); } sCadena = dCadena.Year.ToString() + "-" + dCadena.Month.ToString() + "-" + dCadena.Day.ToString(); } oblFacturas = new MedNeg.Facturas.BlFacturas(); var oQuery = oblFacturas.Buscar(sCadena, iTipo); Session["resultadoquery"] = oQuery; ViewState["direccionsorting"] = System.Web.UI.WebControls.SortDirection.Ascending; var result = (IQueryable<MedDAL.Facturas.CuentasxCobrarView>)Session["resultadoquery"]; DataTable dt = MedNeg.Utilidades.DataSetLinqOperators.CopyToDataTable(result); DataView dv = new DataView(dt); dv.Sort = "Nombre ASC"; try { dgvDatos.DataSource = dv; dgvDatos.DataKeyNames = new string[] { "idFactura" }; dgvDatos.DataBind(); CargarCatalogo(); if (dgvDatos.Rows.Count == 0 && txbBuscar.Text == "") { dgvDatos.EmptyDataText = "No existen remisiones registradas aun"; } else { dgvDatos.EmptyDataText = "No existen remisiones que coincidan con la búsqueda"; } dgvDatos.ShowHeader = true; } catch (Exception ex) { Response.Write(ex.Message); } }
/// <summary> /// Factura que crea una receta con gastos de administracion /// </summary> /// <param name="sFolio"></param> /// <param name="lstDetalleFactura"></param> private string CrearFacturaGtoAdministrativo(string sFolio,List<MedNeg.Facturas.BlDetalleFacturaReceta> lstDetalleFactura) { //TODO: GT Paso 5: Paso opcional, aqui se genera la factura por gastos administrativos si lo eligio el usuario //objeto que contiene la receta string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); string sRutaCertificados = Server.MapPath("~/Archivos/"); bool bRegistroFallido = false; //MedDAL.DAL.recetas oReceta = new MedDAL.DAL.recetas(); //MedNeg.Recetas.BlRecetas oblReceta = new MedNeg.Recetas.BlRecetas(); MedNeg.Configuracion.BlConfiguracion oblConfiguracion = new MedNeg.Configuracion.BlConfiguracion(); MedDAL.Configuracion.DALConfiguracion odalConfiguracion = new MedDAL.Configuracion.DALConfiguracion(); MedDAL.DAL.facturas oFacturas = new MedDAL.DAL.facturas(); MedNeg.Facturas.BlFacturas oblFacturas = new MedNeg.Facturas.BlFacturas(); //decimal dSubtotal = 0; //int idReceta = 0; odalConfiguracion = (MedDAL.Configuracion.DALConfiguracion)oblConfiguracion.CargaDatos(sRutaArchivoConfig); //ID Cliente oFacturas.idCliente = (int)Session["sIdCliente"]; //IDRECETA //oFacturas.idReceta = oReceta.idReceta; //Asiganr el folio de la factura if (odalConfiguracion.iFacturasAutomatico == 1) { oFacturas.Folio = odalConfiguracion.iFolioFacturas++.ToString(); } else { //oFacturas.Folio = oReceta.Folio; oFacturas.Folio = sFolio + "-GastoAdm"; } string sIdFolioFactura = oFacturas.Folio; //Fecha oFacturas.Fecha = DateTime.Now; oFacturas.FechaAplicacion = DateTime.Now; //tipo (4 por que son de receta) oFacturas.TipoFactura = "4"; //Estatus (3 de emitida) oFacturas.Estatus = "3"; //Id del usuario que genero la factura oFacturas.idUsuario = Convert.ToInt32(Session["usuarioid"]); //Nombre del vendedor que en este caso es el usuario oFacturas.Vendedor = Session["nombre"].ToString(); //Registrar la factura if (oblFacturas.NuevoRegistro(oFacturas)) { oFacturas = new MedDAL.DAL.facturas(); oblFacturas = new MedNeg.Facturas.BlFacturas(); ////Recuperar el id de la factura crea| da oFacturas = oblFacturas.BuscarFacturasFolio(sIdFolioFactura); //Actualizar el consecutivo en la bitacora oblFacturas.ActualizarFolioFactura(sRutaArchivoConfig); //Insertar el detalle de factura //Recorrer el objeto de sesion lstDetallePartida que contiene los datos de la partida foreach (MedNeg.Facturas.BlDetalleFacturaReceta renglon in lstDetalleFactura) { oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); oFacturaPartida.idFactura = oFacturas.idFactura; oFacturaPartida.idProducto = renglon.iIdProducto; oFacturaPartida.Cantidad = renglon.dCantidad; oFacturaPartida.IEPS = renglon.dIeps; oFacturaPartida.Iva = renglon.DImp1 * consdIva; oFacturaPartida.Precio = renglon.DImp1; //Registrar el detalle del pedido if (!oblFacturas.NuevoDetallePartida(oFacturaPartida)) { bRegistroFallido = true; } else { } } //TODO: GT Paso 5.1 Aqui si bRegistroFallido es false entonces aqui se generaria la factura electronica de gastos administrativos if (cmbModoFactura.SelectedValue == "2" && !bRegistroFallido) { oblFacturas = new MedNeg.Facturas.BlFacturas(); oblFacturas.GenerarFacturaElectronica(oFacturas.idFactura, sRutaCertificados, Session["usuario"].ToString(), (int)Session["sIdCliente"], oFacturas.Folio); return Server.MapPath("~/Archivos/FacturasElectronicasTimbradas/FacturaE-" + oFacturas.Folio + ".xml"); //System.IO.FileInfo fFactura = new System.IO.FileInfo(Server.MapPath("~/Archivos/FacturasElectronicas/FacturaE-" + oFacturas.Folio + ".xml")); //Response.Clear(); //Response.AddHeader("Content-Disposition", "attachment; filename=" + fFactura.Name); //Response.AddHeader("Content-Length", fFactura.Length.ToString()); //Response.ContentType = "application/...."; //Response.WriteFile(fFactura.FullName); //Response.End(); } return ""; } return ""; }
/// <summary> /// Registrar nuevo pedido /// </summary> private void Nuevo() { string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); string sRutaCertificados = Server.MapPath("~/Archivos/"); oFactura = new MedDAL.DAL.facturas(); oblFacturas = new MedNeg.Facturas.BlFacturas(); oFactura.idCliente = (int)Session["sIdCliente"]; if ((bool)Session["sEsDePedido"] == true) oFactura.idPedido = (int)Session["sIdPedido"]; if ((bool)Session["sEsDeRemision"] == true) oFactura.idRemision = (int)Session["sIdRemision"]; if ((bool)Session["sEsDeReceta"] == true) oFactura.idReceta = (int)Session["sIdReceta"]; oFactura.TipoFactura = cmbTipoFactura.SelectedValue.ToString(); oFactura.Fecha = DateTime.Now; oFactura.Estatus = cmbEstatus.SelectedValue; //Validar Folio Repetido if (ValidaFolioRepetido()) { //Validar si se esta respetando el folio automatico y verificar si aun es el mismo o cambio su valor if (Session["iFolioAutomatico"].Equals(txbFolio.Text)) { oFactura.Folio = oblFacturas.RecuperaFolioAutomatico(sRutaArchivoConfig).ToString(); } else { oFactura.Folio = txbFolio.Text; } if (oblFacturas.NuevoRegistro(oFactura)) { //Datos de la bitacora string sDatosBitacora = string.Empty; sDatosBitacora += "Tipo:" + cmbTipoFactura.SelectedValue.ToString() + " "; sDatosBitacora += "Folio:" + txbFolio.Text + " "; sDatosBitacora += "Fecha:" + txbFecha.Text + " "; sDatosBitacora += "Estatus:" + cmbEstatus.SelectedItem.ToString() + " "; sDatosBitacora += "Cliente:" + txbCliente.Text + " "; // Registrar la partida de la remision oFactura = new MedDAL.DAL.facturas(); oFactura = oblFacturas.BuscarFacturasFolio(txbFolio.Text); int iIdFactura = oFactura.idFactura; bool bRegistroFallido = false; //Recorrer el objeto de sesion lstDetallePartida que contiene los datos de la partida foreach (MedNeg.Facturas.BlDetallePartida facturaDetalle in (List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]) { oblFacturas = new MedNeg.Facturas.BlFacturas(); MedDAL.DAL.facturas_partida oFacturaPartida = new MedDAL.DAL.facturas_partida(); oFacturaPartida.idFactura = iIdFactura; oFacturaPartida.idProducto = facturaDetalle.iIdProducto; oFacturaPartida.Cantidad = facturaDetalle.dCantidad; oFacturaPartida.IEPS = facturaDetalle.dIeps; oFacturaPartida.Iva = facturaDetalle.dIva; oFacturaPartida.Precio = facturaDetalle.dPrecio; oFacturaPartida.Descripcion = facturaDetalle.SProducto; //Registrar el detalle del pedido if (!oblFacturas.NuevoDetallePartida(oFacturaPartida)) { bRegistroFallido = true; } else { sDatosBitacora += "Producto:" + facturaDetalle.iIdProducto.ToString() + " "; sDatosBitacora += "Cant:" + facturaDetalle.dCantidad.ToString() + " "; sDatosBitacora += "IEPS:" + facturaDetalle.dIeps.ToString() + " "; sDatosBitacora += "Iva:" + facturaDetalle.dIva.ToString() + " "; sDatosBitacora += "Precio:" + facturaDetalle.dPrecio.ToString() + " "; sDatosBitacora += "Total:" + Convert.ToDecimal((facturaDetalle.dCantidad * facturaDetalle.dPrecio) + facturaDetalle.dIeps + facturaDetalle.dIva) + ", "; } } //Registrar datos de la remision en la bitacora //lblAviso.Text = "El usuario se ha registrado con éxito"; oBitacora = new MedDAL.DAL.bitacora(); oblBitacora = new MedNeg.Bitacora.BlBitacora(); oBitacora.FechaEntradaSrv = DateTime.Now; oBitacora.FechaEntradaCte = DateTime.Now;//Linea Temporal oBitacora.Modulo = "Factura"; oBitacora.Usuario = Session["usuario"].ToString(); oBitacora.Nombre = Session["nombre"].ToString(); oBitacora.Accion = "Nueva Factura"; oBitacora.Descripcion = sDatosBitacora; if (!oblBitacora.NuevoRegistro(oBitacora)) { lblDatos.Text = "El evento no pudo ser registrado en la bitácora"; } //Actualizar el consecutivo en la bitacora oblFacturas.ActualizarFolioFactura(sRutaArchivoConfig); //Generar la factura electronica if (cmbModoFactura.SelectedValue == "2") { oblFacturas = new MedNeg.Facturas.BlFacturas(); oblFacturas.GenerarFacturaElectronica(iIdFactura, sRutaCertificados, Session["usuario"].ToString(), (int)Session["sIdCliente"], txbFolio.Text); System.IO.FileInfo fFactura = new System.IO.FileInfo(Server.MapPath("~/Archivos/FacturasElectronicas/FacturaE-" + txbFolio.Text + ".xml")); Response.Clear(); Response.AddHeader("Content-Disposition", "attachment; filename=" + fFactura.Name); Response.AddHeader("Content-Length", fFactura.Length.ToString()); Response.ContentType = "application/...."; Response.WriteFile(fFactura.FullName); Response.End(); } //Saber si se va a actualizar el estatus del pedido if ((bool)Session["sEsDePedido"] == true) { //Actualizar el estatus del pedido en caso de que se haya hecho la remision a partir de un pedido MedDAL.DAL.pedidos oPedido = new MedDAL.DAL.pedidos(); MedNeg.Pedidos.BlPedidos oblPedido = new MedNeg.Pedidos.BlPedidos(); //Actualizar el estatus del pedido oPedido = oblPedido.BuscarPedido((int)Session["sIdPedido"]); oPedido.Estatus = "3"; if (!oblPedido.EditarRegistro(oPedido)) { lblDatos.Text = "No se pudo cambiar el estatus del pedido, contacte al administrador"; } } //Saber si se va a actualizar el estatus de la remision if ((bool)Session["sEsDeRemision"] == true) { //Actualizar el estatus del pedido MedDAL.DAL.remisiones oRemision = new MedDAL.DAL.remisiones(); MedNeg.Remisiones.BlRemisiones oblRemision = new MedNeg.Remisiones.BlRemisiones(); oRemision = oblRemision.BuscarRemision((int)Session["sIdRemision"]); oRemision.Estatus = "3"; if (!oblRemision.EditarRegistro(oRemision)) { lblDatos.Text = "No se pudo cambiar el estatus de la remisión, contacte al administrador"; } } //Saber si se va a actualizar el estatus de la remision if ((bool)Session["sEsDeReceta"] == true) { //Actualizar el estatus del pedido MedDAL.DAL.remisiones oRemision = new MedDAL.DAL.remisiones(); MedNeg.Remisiones.BlRemisiones oblRemision = new MedNeg.Remisiones.BlRemisiones(); MedDAL.DAL.recetas oReceta = new MedDAL.DAL.recetas(); MedNeg.Recetas.BlRecetas oblRecetas = new MedNeg.Recetas.BlRecetas(); oReceta = oblRecetas.BuscarReceta((int)Session["sIdReceta"]); oReceta.Estatus = "2"; if (!oblRecetas.EditarRegistro(oReceta)) { lblDatos.Text = "No se pudo cambiar el estatus de la receta, contacte al administrador"; } } } else { } } else //si es folio repetido { lblDatos.Text = "Folio Repetido, no se puede generar el pedido"; } }
private void MostrarLista() { MedNeg.Facturas.BlFacturas oblFacturas = new MedNeg.Facturas.BlFacturas(); var oQuery = oblFacturas.TotalFacturadoPorLineaCredito(); Session["resultadoquery"] = oQuery; ViewState["direccionsorting"] = System.Web.UI.WebControls.SortDirection.Ascending; var result = (IQueryable<MedDAL.Facturas.FacturasxRecetaView>)Session["resultadoquery"]; DataTable dt = MedNeg.Utilidades.DataSetLinqOperators.CopyToDataTable(result); DataView dv = new DataView(dt); dv.Sort = "FuenteCuenta ASC"; try { dgvFacturacionTotales.DataSource = dv; dgvFacturacionTotales.DataKeyNames = new string[] { "idLineaCredito" }; dgvFacturacionTotales.DataBind(); //CargarCatalogo(); if (dgvFacturacionTotales.Rows.Count == 0 && txbBuscar.Text == "") { dgvFacturacionTotales.EmptyDataText = "No existen facturas registradas aun"; } else { dgvFacturacionTotales.EmptyDataText = "No existen facturas que coincidan con la búsqueda"; } dgvFacturacionTotales.ShowHeader = true; } catch (Exception ex) { Response.Write(ex.Message); } }
protected void Page_Load(object sender, EventArgs e) { Hashtable htbPermisos = (Hashtable)Session["permisos"]; char cPermiso = 'N'; try { #region Interfaz cPermiso = (char)htbPermisos["reportes"]; Master.FindControl("btnNuevo").Visible = false; Master.FindControl("btnEditar").Visible = false; Master.FindControl("btnEliminar").Visible = false; Master.FindControl("btnReportes").Visible = false; Master.FindControl("btnMostrar").Visible = false; Master.FindControl("btnCancelar").Visible = false; Master.FindControl("btnAceptar").Visible = false; Master.FindControl("lblBuscar").Visible = false; rdbTodos = (RadioButton)Master.FindControl("rdbFiltro1"); rdbTodos.Visible = false; rdbClave = (RadioButton)Master.FindControl("rdbFiltro2"); rdbClave.Visible = false; rdbNombre = (RadioButton)Master.FindControl("rdbFiltro3"); rdbNombre.Visible = false; btnBuscar = (Button)Master.FindControl("btnBuscar"); btnBuscar.Visible = false; txbBuscar = (TextBox)Master.FindControl("txtBuscar"); txbBuscar.Visible = false; lblNombreModulo = (Label)Master.FindControl("lblNombreModulo"); lblNombreModulo.Text = "Reportes"; /*switch (cPermiso) { case 'T': break; case 'E': break; case 'L': break; }*/ #endregion oblFacturas = new MedNeg.Facturas.BlFacturas(); oblRecetas = new MedNeg.Recetas.BlRecetas(); oblPoblaciones = new MedNeg.Poblaciones.BlPoblaciones(); if (!IsPostBack) { Session["reporteactivo"] = 0; Session["reportdocument"] = ""; Session["titulo"] = ""; Session["reporte"] = null; pnlFiltroReportes.Visible = true; CargarListaReportes(); } } catch (NullReferenceException) { if (!ClientScript.IsStartupScriptRegistered("alertsession")) { Page.ClientScript.RegisterStartupScript(this.GetType(), "alertsession", "alertarSesion();", true); } Site1 oPrincipal = (Site1)this.Master; oPrincipal.DeshabilitarControles(this); oPrincipal.DeshabilitarControles(); } }