/// <summary> /// Evento Producido al Presionar el Boton "Buscar" /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnBuscar_OnClick(object sender, EventArgs e) { //Obteniendo Tablas de los Reportes using (DataSet dtables = SAT_CL.ControlEvidencia.Reportes.CargaReporteDocumentos( txtNViaje.Text, Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(txtCompania.Text, ":", 1)), Convert.ToInt32(Cadena.RegresaCadenaSeparada(txtCliente.Text, "ID:", 1)), Convert.ToByte(ddlEstatus.SelectedValue), txtReferencia.Text, Fecha.ConvierteStringDateTime(txtFechaInicial.Text), Fecha.ConvierteStringDateTime(txtFechaFinal.Text), txtCartaPorte.Text)) { //Validando que el DataSet contenga las tablas if (Validacion.ValidaOrigenDatos(dtables, "Table") && Validacion.ValidaOrigenDatos(dtables, "Table1")) { //Cargando los GridView Controles.CargaGridView(gvResumen, dtables.Tables["Table"], "Documentos", "", true, 1); Controles.CargaGridView(gvDetalles, dtables.Tables["Table1"], "IdServicio-IdServicioControlEvidencia", "", true, 2); //Añadiendo Tablas al DataSet de Session Session["DS"] = OrigenDatos.AñadeTablaDataSet((DataSet)Session["DS"], dtables.Tables["Table"], "Table"); Session["DS"] = OrigenDatos.AñadeTablaDataSet((DataSet)Session["DS"], dtables.Tables["Table1"], "Table1"); gvResumen.FooterRow.Cells[2].Text = (((DataSet)Session["DS"]).Tables["Table"].Compute("SUM(TotalServicios)", "")).ToString(); //Carga grafica Controles.CargaGrafica(ChtDocumentos, "Serie1", "Area1", SeriesChartType.Pie, OrigenDatos.RecuperaDataTableDataSet((DataSet)Session["DS"], "Table").DefaultView, "Documentos", "TotalServicios", true); } else { //Inicializando GridViews Controles.InicializaGridview(gvResumen); Controles.InicializaGridview(gvDetalles); //Eliminando Tablas del DataSet de Session Session["DS"] = OrigenDatos.EliminaTablaDataSet((DataSet)Session["DS"], "Table"); Session["DS"] = OrigenDatos.EliminaTablaDataSet((DataSet)Session["DS"], "Table1"); }//Quitando Selección de los Detalles gvDetalles.SelectedIndex = -1; } //Inicializamos Controles Para Carga de Imagenes //Cambiamos Vista mtvDocumentosDigitalizados.ActiveViewIndex = 1; //Carga Imagenes cargaImagenDocumentos(); //Cambiando estilos de pestañas btnPestanaRecibirDocumentosDigitalizados.CssClass = "boton_pestana"; btnPestanaDocumentosDigitalizados.CssClass = "boton_pestana_activo"; }
/// <summary> /// Realiza la búsqueda de facturas y su integración de acuerdo a los filtros definidos /// </summary> private void cargaReporteIntegracion() { //Determinando rango de fechas solicitado DateTime fInicio = chkIncluir.Checked ? Fecha.ConvierteStringDateTime(txtFecIni.Text) : DateTime.MinValue; DateTime fFin = chkIncluir.Checked ? Fecha.ConvierteStringDateTime(txtFecFin.Text) : DateTime.MinValue; //Obteniendo estatus de pago string ids_estatus_pago = Controles.RegresaSelectedValuesListBox(ddlEstatusFactura, "{0},", true, false); //Realizando consulta de facturas de proveedor using (DataTable mitOriginal = SAT_CL.CXP.Reportes.ObtieneIntegracionFacturasProveedor(((UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, Convert.ToInt32(Cadena.RegresaCadenaSeparada(txtProveedor.Text, "ID:", 1)), txtSerie.Text, txtFolio.Text, txtUUID.Text, fInicio, fFin, txtNoServicio.Text, txtNoViaje.Text, txtCartaPorte.Text, txtNoAnticipo.Text, txtNoLiquidacion.Text, ids_estatus_pago.Length > 1 ? ids_estatus_pago.Substring(0, ids_estatus_pago.Length - 1) : "")) { //Definiendo auxiliar de origen de datos con formato DataTable mit = null; //Si hay resultados if (mitOriginal != null) { //Copiando esquema mit = mitOriginal.Clone(); //Declarando auxilizar de identificación de factura nueva string UUID = ""; int idFactura = 0; decimal montoAnt = 0, montoLiq = 0, montoOtr = 0; decimal montoFac = 0, montoApl = 0, montoPen = 0, saldo = 0; //Para cada linea encontrada foreach (DataRow row in mitOriginal.Rows) { //Si la factura es distinta al auxiliar if (row.Field <string>("UUID") != UUID) { //Insertando fila con totales de aplicaciones if (UUID != "") { mit.Rows.Add(idFactura, "", "", "", "", DBNull.Value, "", "", "Totales:", 0, montoAnt, "", 0, montoLiq, "", montoOtr, "", montoFac, montoApl, montoPen, saldo); //Limpiando elementos auxiliares de montos de aplicación montoAnt = montoLiq = montoOtr = 0; } //Añadiendo linea a origen de datos alterno mit.ImportRow(row); //Preservando nuevo UUID UUID = row.Field <string>("UUID"); idFactura = row.Field <int>("IdFactura"); //Asignando totales de factura montoFac = Convert.ToDecimal(row["MontoFactura"]); montoApl = Convert.ToDecimal(row["MontoAplicado"]); montoPen = Convert.ToDecimal(row["MontoProgramado"]); saldo = Convert.ToDecimal(row["Saldo"]); //Incrementando total de aplicaciones montoAnt += Convert.ToDecimal(row["MontoAnticipo"]); montoLiq += Convert.ToDecimal(row["MontoLiquidacion"]); montoOtr += Convert.ToDecimal(row["MontoOtros"]); } else { //Añadiendo linea a origen de datos alterno mit.Rows.Add(idFactura, "", "", "", "", DBNull.Value, row["NoServicio"], row["NoViaje"], row["CPorte"], row["NoAnticipo"], row["MontoAnticipo"], row["EstAnticipo"], row["NoLiquidacion"], row["MontoLiquidacion"], row["EstLiquidacion"], row["MontoOtros"], "", 0, 0, 0, 0); //Incrementando total de aplicaciones montoAnt += Convert.ToDecimal(row["MontoAnticipo"]); montoLiq += Convert.ToDecimal(row["MontoLiquidacion"]); montoOtr += Convert.ToDecimal(row["MontoOtros"]); } } //Si hubo registros if (mit.Rows.Count > 0) { //Insertando suma total de último conjunto mit.Rows.Add(idFactura, "", "", "", "", DBNull.Value, "", "", "Totales:", 0, montoAnt, "", 0, montoLiq, "", montoOtr, "", montoFac, montoApl, montoPen, saldo); } //Guardando origen de datos Session["DS"] = OrigenDatos.AñadeTablaDataSet((DataSet)Session["DS"], mit, "Table"); } //Si no los hay else { //Borrando origen de datos Session["DS"] = OrigenDatos.EliminaTablaDataSet((DataSet)Session["DS"], "Table"); } //Llenando gv con resultados Controles.CargaGridView(gvFacturasProveedor, mit, "IdFactura-SerieFolio", "", true, 2); } }