protected DataTable GetDetalle(int AgenciaID)
        {
            DsReporteRendicion ds      = (DsReporteRendicion)Session["DsReporte"];
            DataTable          dt      = new DataTable();
            DataSet            Detalle = new DataSet();

            Detalle.Tables.Add();
            Detalle.Tables[0].Columns.Add("AgenciaID");
            Detalle.Tables[0].Columns.Add("SucursalDGI");
            Detalle.Tables[0].Columns.Add("NroRendicion");
            Detalle.Tables[0].Columns.Add("Fecha");
            Detalle.Tables[0].Columns.Add("DiasRecepcion");
            Detalle.Tables[0].Columns.Add("DiasControl");
            Detalle.Tables[0].Columns.Add("TotalRendidoA");
            Detalle.Tables[0].Columns.Add("TotalRendidoB");
            Detalle.Tables[0].Columns.Add("TotalRendido");

            int i = 0;

            foreach (DsReporteRendicion.DetalleRow dr in ds.Detalle)
            {
                if (Convert.ToInt32(ds.Detalle.Rows[i]["AgenciaID"]) == AgenciaID)
                {
                    DataRow drDetalle = Detalle.Tables[0].NewRow();
                    drDetalle["AgenciaID"]   = dr.AgenciaID;
                    drDetalle["SucursalDGI"] = dr.SucursalDGI;

                    drDetalle["NroRendicion"] = dr.NroRendicion;
                    drDetalle["Fecha"]        = dr.Fecha;
                    if (dr.IsFechaRecibidaNull())
                    {
                        drDetalle["DiasRecepcion"] = dr.DiasRecepcion;
                    }
                    else
                    {
                        drDetalle["DiasRecepcion"] = dr.FechaRecibida.ToShortDateString();
                    }

                    if (dr.IsFechaControladaNull())
                    {
                        drDetalle["DiasControl"] = dr.DiasControl;
                    }
                    else
                    {
                        drDetalle["DiasControl"] = dr.FechaControlada.ToShortDateString();
                    }

                    drDetalle["TotalRendidoA"] = dr.TotalRendidoA;
                    drDetalle["TotalRendidoB"] = dr.TotalRendidoB;
                    drDetalle["TotalRendido"]  = dr.TotalRendido;
                    Detalle.Tables[0].Rows.Add(drDetalle);
                }
                i++;
            }
            return(Detalle.Tables[0]);
        }
        private void Inicializar()
        {
            DsReporteRendicion ds = new DsReporteRendicion();

            ds    = (DsReporteRendicion)Session["DsReporte"];
            Datos = new DataTable();
            Datos.Columns.Add("AgenciaID");
            Datos.Columns.Add("SucursalDGI");
            Datos.Columns.Add("RazonSocial");
            Datos.Columns.Add("TotalRendido");
            Datos.Columns.Add("Ejecutivo");
            Datos = ds.Datos;

            this.Title = "Reporte de rendiciones agrupado por agencia";
            CustomExport();
        }
 private void dtgReporte_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
 {
     try
     {
         if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
         {
             e.Item.Cells[4].Text = Utiles.Formatos.Importe(Convert.ToDouble(e.Item.Cells[4].Text));
         }
         else if (e.Item.ItemType == ListItemType.Footer)
         {
             DsReporteRendicion ds = (DsReporteRendicion)Session["DsReporte"];
             total = Convert.ToDouble(ds.Datos.Compute("SUM(TotalRendido)", ""));
             e.Item.Cells[4].Text = Utiles.Formatos.Importe(total);
         }
     }
     catch (Exception ex)
     {
         ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message);
     }
 }
예제 #4
0
 public DsReporteRendicion GetReporteDateSet()
 {
     try
     {
         DsReporteRendicion ds             = new DsReporteRendicion();
         SqlParameter       pAgenciaID     = new SqlParameter("@AgenciaID", Utiles.BaseDatos.IntToSql(AgenciaID));
         SqlParameter       pEjecutivoID   = new SqlParameter("@PersonalID", Utiles.BaseDatos.IntToSql(EjecutivoID));
         SqlParameter       pDiasRecepcion = new SqlParameter("@DiasRecibir", Utiles.BaseDatos.IntToSql(DiasRecepcion));
         SqlParameter       pDiasControlar = new SqlParameter("@DiasControlar", Utiles.BaseDatos.IntToSql(DiasControlar));
         SqlParameter       pFechaDesde    = new SqlParameter("@FechaDesde", Utiles.BaseDatos.FechaToSql(FechaDesde));
         SqlParameter       pFechaHasta    = new SqlParameter("@FechaHasta", Utiles.BaseDatos.FechaToSql(FechaHasta));
         Config.Conexion.LlenarTypeDataSet(ds.Datos, System.Data.CommandType.StoredProcedure, "ReporteRendicionAgencia",
                                           pAgenciaID, pEjecutivoID, pDiasRecepcion, pDiasControlar, pFechaDesde, pFechaHasta);
         Config.Conexion.LlenarTypeDataSet(ds.Detalle, System.Data.CommandType.StoredProcedure, "ReporteRendicionAgenciaDetalle",
                                           pAgenciaID, pEjecutivoID, pDiasRecepcion, pDiasControlar, pFechaDesde, pFechaHasta);
         return(ds);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        private void BindGrid()
        {
            try
            {
                Page.Validate();
                if (!Page.IsValid)
                {
                    return;
                }
                AdministrarGrillas.Configurar(dtgReporte, "AgenciaID", CantidadOpciones, true, true);
                DsReporteRendicion ds      = new DsReporteRendicion();
                IReporteRendicion  reporte = ReporteRendicionFactory.ReporteFactory();
                if (Agencia1.RazonSocial != "" || Agencia1.Sucursal != "")
                {
                    reporte.AgenciaID = Utiles.Validaciones.obtieneEntero(Agencia1.AgenciaID);
                }
                else
                {
                    reporte.AgenciaID = 0;
                }
                if (Ejecutivo1.Nombre != "" || Ejecutivo1.Legajo != "")
                {
                    reporte.EjecutivoID = Utiles.Validaciones.obtieneEntero(Ejecutivo1.PersonalID);
                }
                else
                {
                    reporte.EjecutivoID = 0;
                }
                reporte.DiasRecepcion = Utiles.Validaciones.obtieneEntero(txtRecepcion.Text);
                reporte.DiasControlar = Utiles.Validaciones.obtieneEntero(txtControl.Text);
                reporte.FechaDesde    = txtFechaDesde.Text == "" ? DateTime.MinValue : Convert.ToDateTime(txtFechaDesde.Text);
                if (txtFechaHasta.Text != "")
                {
                    reporte.FechaHasta = txtFechaHasta.Text == "" ? DateTime.Now : Convert.ToDateTime(txtFechaHasta.Text);
                }
                else
                {
                    reporte.FechaHasta = DateTime.Now;
                    txtFechaHasta.Text = reporte.FechaHasta.ToShortDateString();
                }
                if (Session["DsReporte"] == null)
                {
                    ds = reporte.GetReporteDateSet();                    //ds va con encabezado y detalle
                }
                else
                {
                    ds = (DsReporteRendicion)Session["DsReporte"];
                }

                if (ds.Datos.Count > 0)
                {
                    Session["DsReporte"] = ds;
                    DataSet dsHG = new DataSet();
                    dsHG.Tables.Add(ds.Datos.Clone());
                    dsHG.Tables[0].TableName = "Cabecera";
                    foreach (System.Data.DataRow row in ds.Datos.Rows)
                    {
                        dsHG.Tables["Cabecera"].ImportRow(row);
                    }

                    dsHG.Tables.Add(ds.Detalle.Clone());
                    dsHG.Tables[1].TableName = "Detalle";
                    foreach (System.Data.DataRow row in ds.Detalle.Rows)
                    {
                        dsHG.Tables["Detalle"].ImportRow(row);
                    }

                    DataColumn dc1 = dsHG.Tables[0].Columns["AgenciaID"];
                    DataColumn dc2 = dsHG.Tables[1].Columns["AgenciaID"];

                    DataRelation dr = new DataRelation("Reporte_Rendicion", dc1, dc2, false);
                    dsHG.Relations.Add(dr);
                    dtgReporte.DataSource = dsHG;
                    dtgReporte.DataMember = "Cabecera";
                }
                else
                {
                    Session["DsReporte"]  = ds;
                    dtgReporte.DataSource = null;
                }

                if (ds.Detalle.Count > 0 && ds.Datos.Count > 0)
                {
                    butExcel.Enabled = true;
                }
                else
                {
                    butExcel.Enabled = false;
                }
                dtgReporte.CurrentPageIndex = Utiles.Validaciones.obtieneEntero(txtPagina.Text);
                dtgReporte.DataBind();
            }
            catch (Exception ex)
            {
                ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message);
            }
        }