/// <summary> /// / /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GenerarReporte_Click(object sender, EventArgs e) { var Reporte = new FacturaGlobalWeb.FacturaGlobalWeb(); _fechacreacion = Localization.Now.ToString("yyyyMMddHHmmss"); Ex = null; _db = new BasesDatos((Session["IDENTEMI"] != null ? Session["IDENTEMI"].ToString() : "CORE")); var _connectionString = _db.CadenaConexion.ToString(); if (string.IsNullOrEmpty(tbsucursal.Text)) { (Master as SiteMaster).MostrarAlerta(this, "Inserte la serie de la sucursal", 4, null); return; } if (!string.IsNullOrEmpty(tbFecha.Text) || !string.IsNullOrEmpty(FechaFin.Text) || !string.IsNullOrEmpty(tbsucursal.Text)) { var where = ""; var sql = @"SELECT Trama from log_trama"; var fechain = tbFecha.Text + "-" + FechaFin.Text; if (!string.IsNullOrEmpty(tbsucursal.Text)) { where += (!string.IsNullOrEmpty(where) ? " AND " : " WHERE ") + "serie = " + "'" + tbsucursal.Text + "'"; } where += (!string.IsNullOrEmpty(where) ? " AND " : " WHERE ") + " Trama like '%" + fechain.ToString() + "%'" + " AND " + " observaciones = " + "'ExtranetOK'" + " AND " + "tipo= " + "4"; _db.Conectar(); _db.CrearComando(sql + where); var dr = _db.EjecutarConsulta(); var val = new List <string[]>(); while (dr.Read()) { string[] valor = new string[3]; valor[0] = dr[0].ToString(); val.Add(valor); } _db.Desconectar(); var directorio = AppDomain.CurrentDomain.BaseDirectory; var rfc = Session["IDENTEMI"].ToString(); var cfdi = Session["CfdiVersion"].ToString(); if (val.Count > 0) { new System.Threading.Thread(() => { Reporte.GenerarReporteAsync(tbFecha.Text, FechaFin.Text, tbsucursal.Text, rfc.ToString(), cfdi, directorio); }).Start(); } else { (Master as SiteMaster).MostrarAlerta(this, "No se encontraron registros", 4, null); return; } gvFacGlobWeb.DataBind(); (Master as SiteMaster).MostrarAlerta(this, "El reporte se está generando, favor de actualizar los registros nuevamente en unos minutos", 4); } }
protected void GenerarTickets_Click(object sender, EventArgs e) { _db = new BasesDatos((Session["IDENTEMI"] != null ? Session["IDENTEMI"].ToString() : "CORE")); if (ddlSerie.SelectedItem.Text.Equals("Todas") || string.IsNullOrEmpty(tbsucursal.Text)) { (Master as SiteMaster).MostrarAlerta(this, ddlSerie.SelectedItem.Text.Equals("Todas") ? "Seleccione la serie" : "Inserte la sucursal", 4, null); return; } if (!string.IsNullOrEmpty(tbFecha.Text) || !string.IsNullOrEmpty(FechaFin.Text) || !string.IsNullOrEmpty(tbsucursal.Text)) { var where = ""; var sql = @"SELECT DISTINCT CONVERT(VARCHAR(MAX), Trama) AS Trama,serie,noTicket from log_trama"; var fechain = tbFecha.Text + "-" + FechaFin.Text; if (!string.IsNullOrEmpty(tbsucursal.Text)) { where += (!string.IsNullOrEmpty(where) ? " AND " : " WHERE ") + "serie = " + "'" + tbsucursal.Text + "'"; } where += (!string.IsNullOrEmpty(where) ? " AND " : " WHERE ") + " Trama like '%" + fechain.ToString() + "%'" + " AND " + " observaciones = " + "'ExtranetOK'" + " AND " + "tipo= " + "4"; _db.Conectar(); _db.CrearComando(sql + where); var dr = _db.EjecutarConsulta(); var val = new List <string[]>(); while (dr.Read()) { string[] valor = new string[3]; valor[0] = dr[0].ToString(); valor[1] = dr[1].ToString(); valor[2] = dr[2].ToString(); val.Add(valor); } _db.Desconectar(); List <KeyValuePair <string, string> > errores; var tbLugarExp = ""; var tbTotalFac = ""; var tbTotal = ""; var tbCodDoc = ""; var tbISH = ""; var tbFormaPago = ""; var tbSubtotal = ""; var tbPropina = ""; var tbOtrosCargos = ""; var tbCantLetra = ""; var tbIva16 = ""; var ddlMetodoPago = ""; var serie = ""; var tbNumCtaPago = ""; var tbObservaciones = ""; var facturas = new List <object[]>(); var tramas = tramasChecked(out errores, val); var tramasFacturadas = GetFacturadas(tramas); if (tramas.Count < 1) { (Master as SiteMaster).MostrarAlerta(this, "No se encontraron registros", 4, null); return; } else if (tramasFacturadas.Count > 0) { var html = "<ul><li>" + string.Join("</li></li>", tramasFacturadas.Select(x => Session["CfdiVersion"].ToString().Equals("3.3") ? x.Resumen33.CurrentReferenceNumber : x.Resumen.NoReferenciaAct)) + "</li></ul>"; (Master as SiteMaster).MostrarAlerta(this, "Los siguientes tickets ya fueron facturados, actualice la busqueda:<br/>" + html, 4, null); return; } else { try { var numLetra = new NumerosALetras(); decimal _subTotal = 0; decimal _iva16 = 0; decimal _totalFac = 0; decimal _propina = 0; decimal _otrosCargos = 0; decimal _aPagar = 0; decimal _descuentos = 0; dataTableConceptos = new DataTable(); if (dataTableConceptos.Columns.Count == 0) { dataTableConceptos.Columns.Add("cantidad", typeof(string)); dataTableConceptos.Columns.Add("descripcion", typeof(string)); dataTableConceptos.Columns.Add("valorUnitario", typeof(string)); dataTableConceptos.Columns.Add("iva", typeof(string)); dataTableConceptos.Columns.Add("importe", typeof(string)); dataTableConceptos.Columns.Add("propina", typeof(string)); dataTableConceptos.Columns.Add("total", typeof(string)); dataTableConceptos.Columns.Add("unidad", typeof(string)); dataTableConceptos.Columns.Add("descuento", typeof(string)); } foreach (var tramaMicros in tramas) { string descripcion = ""; decimal subTotal = 0; decimal iva = 0; decimal totalFac = 0; decimal propina = 0; decimal otrosCargos = 0; decimal aPagar = 0; decimal descuentos = 0; //requerido por parroquia decimal MontoNeto = 0; if (Session["CfdiVersion"].ToString().Equals("3.3")) { if (tramaMicros.Resumen33.CurrentReferenceNumber.Equals("21913756180557")) { // Do Nothing } try { descripcion = tramaMicros.Resumen33.CurrentReferenceNumber; } catch { } try { subTotal = tramaMicros.Detalles33.Sum(x => Convert.ToDecimal(x.NetAmount)); } catch { } //try { iva = tramaMicros.Impuestos33.Sum(x => Convert.ToDecimal(x.GrossAmount.Replace("-", ""))); } catch { } #region Impuestos por Concepto iva = 0; foreach (var concepto in tramaMicros.Detalles33) { var taxDetails = concepto.TaxBaseFactorAmountCode.Split(';'); foreach (var taxDetail in taxDetails) { if (!string.IsNullOrEmpty(taxDetail)) { decimal dtaxAmount = 0; var taxAmount = taxDetail.Split(' ')[2]; decimal.TryParse(taxAmount, out dtaxAmount); iva += dtaxAmount; } } } #endregion try { totalFac = tramaMicros.Detalles33.Sum(x => Convert.ToDecimal(x.GrossAmount)); } catch { } try { propina = Convert.ToDecimal(tramaMicros.Propinas33 != null ? tramaMicros.Propinas33.NetAmount : "0.00"); } catch { } try { otrosCargos = Convert.ToDecimal("0.00"); } catch { } try { aPagar = Convert.ToDecimal(tramaMicros.Resumen33.GrossAmountGroupedP); } catch { } descuentos = tramaMicros.Descuentos33 == null ? 0 : tramaMicros.Descuentos33.Sum(x => Convert.ToDecimal(x.NetAmount.Replace("-", ""))); totalFac = subTotal - descuentos + iva; aPagar = totalFac + propina; } else { if (tramaMicros.Resumen.NoReferenciaAct.Equals("21913756180557")) { // Do Nothing } try { descripcion = tramaMicros.Resumen.NoReferenciaAct; } catch { } try { subTotal = tramaMicros.Detalles.Sum(x => Convert.ToDecimal(x.MontoNetoAgrupado)); } catch { } try { iva = tramaMicros.Impuestos.Sum(x => Convert.ToDecimal(x.MontoNetoi)); } catch { } try { totalFac = tramaMicros.Detalles.Sum(x => Convert.ToDecimal(x.MontoBrutoagrupadom)); } catch { } try { propina = Convert.ToDecimal(tramaMicros.Propinas != null ? tramaMicros.Propinas.MontoNetos : "0.00"); } catch { } try { otrosCargos = Convert.ToDecimal("0.00"); } catch { } try { aPagar = Convert.ToDecimal(tramaMicros.Resumen.MontoBruto); } catch { } if (tramaMicros.Descuentos != null) { try { descuentos = tramaMicros.Descuentos.Sum(x => Math.Abs(Convert.ToDecimal(x.MontoNetod, new CultureInfo("en-US")))); } catch { } } MontoNeto = Convert.ToDecimal(tramaMicros.Resumen.MontoNeto);// totalFac = MontoNeto - propina; aPagar = MontoNeto; } _subTotal += subTotal; _iva16 += iva; _totalFac += totalFac; //_totalFac += MontoNeto; _propina += propina; _otrosCargos += otrosCargos; _aPagar += aPagar; _descuentos += descuentos; var NewRow = dataTableConceptos.NewRow(); NewRow[0] = "1"; // CANTIDAD NewRow[1] = descripcion; // DESCRIPCION NewRow[2] = subTotal.ToString(); // VAL. UNITARIO NewRow[3] = iva.ToString(); // IVA NewRow[4] = subTotal.ToString(); // IMPORTE NewRow[5] = propina.ToString(); // PROPINA NewRow[6] = aPagar.ToString(); // TOTAL NewRow[7] = "NO APLICA"; // UNIDAD NewRow[8] = descuentos; // DESCUENTOS dataTableConceptos.Rows.Add(NewRow); facturas.Add(NewRow.ItemArray); } if (Session["CfdiVersion"].ToString().Equals("3.3")) { var claveSucursalTramas = ""; var tramasGrouped = tramas.GroupBy(trama => Session["CfdiVersion"].ToString().Equals("3.3") ? (trama.Resumen33.PropertyName) : (trama.Resumen.NombrePropiedad)); if (tramasGrouped.Count() == 1) { claveSucursalTramas = tramasGrouped.FirstOrDefault().Key; } if (!string.IsNullOrEmpty(claveSucursalTramas)) { _db.Conectar(); _db.CrearComando(@"select codigoPostal from cat_sucursalesemisor where clave = @claveSucursal AND RFC = @RFCEMI"); _db.AsignarParametroCadena("@RFCEMI", Session["IDENTEMI"].ToString()); _db.AsignarParametroCadena("@claveSucursal", claveSucursalTramas); dr = _db.EjecutarConsulta(); if (dr.Read()) { tbLugarExp = dr[0].ToString(); } _db.Desconectar(); } else { _db.Conectar(); _db.CrearComando(@"select codigoPostal FROM Cat_Emisor where RFCEMI=@RFCEMI"); _db.AsignarParametroCadena("@RFCEMI", Session["IDENTEMI"].ToString()); dr = _db.EjecutarConsulta(); while (dr.Read()) { tbLugarExp = dr[0].ToString(); } _db.Desconectar(); } } else { _db.Conectar(); _db.CrearComando(@"select RFCEMI,NOMEMI,dirMatriz,noExterior,noInterior,colonia,referencia,municipio, estado,pais,codigoPostal,regimenFiscal FROM Cat_Emisor where RFCEMI=@RFCEMI"); _db.AsignarParametroCadena("@RFCEMI", Session["IDENTEMI"].ToString()); dr = _db.EjecutarConsulta(); if (dr.Read()) { tbLugarExp = dr[9].ToString() + ", " + dr[8].ToString(); } _db.Desconectar(); } tbTotalFac = _totalFac.ToString(); tbTotal = _aPagar.ToString(); //tbAmbiente.Text = "PRODUCCIÓN"; tbCodDoc = "FACTURA"; tbISH = "0.00"; tbFormaPago = "PAGO EN UNA SOLA EXIBICION"; tbSubtotal = _subTotal.ToString(); tbPropina = _propina.ToString(); tbOtrosCargos = _otrosCargos.ToString(); tbCantLetra = numLetra.ConvertirALetras(tbTotal, "MXN"); //rowPropina.Visible = !string.IsNullOrEmpty(tbPropina.Trim()); //trOtrosCargos.Visible = !string.IsNullOrEmpty(tbOtrosCargos.Trim()); tbIva16 = _iva16.ToString(); ddlMetodoPago = "NA"; serie = (ddlSerie.SelectedItem.Text);; tbObservaciones = $"Factura global {FechaFin.SelectedItem.Text} {tbFecha.Text}"; } catch { } } var comprobante = serie + '|' + tbFormaPago + '|' + tbSubtotal + '|' + tbTotalFac + '|' + ddlMetodoPago + '|' + tbLugarExp + '|' + tbNumCtaPago + '|' + tbOtrosCargos + '|' + tbTotal + '|' + tbObservaciones + '|' + tbPropina;; var daterecep = ("PUBLICO GENERAL" + "|" + "XAXX010101000" + "|" + "" + "|" + "-" + "|" + "" + "|" + "" + "|" + "-" + "|" + "" + "|" + "" + "|" + "MEX" + "|" + "00000" + "|" + tbIva16); var json = Newtonsoft.Json.JsonConvert.SerializeObject(facturas); _idUser = Session["idUser"].ToString(); var FGWeb = new FacturaGlobalWeb.FacturaGlobalWeb(); new System.Threading.Thread(() => { FGWeb.FacuraGlobalAsync(Session["IDENTEMI"].ToString(), Session["IDGIRO"].ToString(), json, _idUser, serie, daterecep, comprobante); }).Start(); (Master as SiteMaster).MostrarAlerta(this, "El comprobante se esta generando", 2, null); } else { (Master as SiteMaster).MostrarAlerta(this, "Debe sellecionar ambas fechas", 2, null); return; } }
/// <summary> /// Handles the Click event of the bGenerar control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param> protected void bGenerar_Click(object sender, EventArgs e) { Page.Validate(); if (Page.IsValid) { var where = ""; try { _count = 0; if (!ddlReporte.SelectedValue.Equals("0")) { if (!string.IsNullOrEmpty(tbFechaInicial.Text) && !string.IsNullOrEmpty(tbFechaFinal.Text)) { if (!Convert.ToDateTime(tbFechaInicial.Text).ToString("yyyyMMdd").Equals("00010101") && !Convert.ToDateTime(tbFechaFinal.Text).ToString("yyyyMMdd").Equals("00010101")) { if (Convert.ToDateTime(tbFechaInicial.Text) <= Convert.ToDateTime(tbFechaFinal.Text)) { _fecha = Convert.ToDateTime(tbFechaInicial.Text).ToString("yyyyMMdd"); _fechanom = Convert.ToDateTime(tbFechaFinal.Text).ToString("yyyyMMdd"); _fechacreacion = Localization.Now.ToString("yyyyMMddHHmmss"); where += " CONVERT(VARCHAR(MAX),g.FECHA,112) >= " + Convert.ToDateTime(tbFechaInicial.Text).ToString("yyyyMMdd") + " AND CONVERT(VARCHAR(MAX),g.FECHA,112) <=" + Convert.ToDateTime(tbFechaFinal.Text).ToString("yyyyMMdd") + " AND "; if (ddlPtoEmi.SelectedValue != "0") { where += " g.serie='" + ddlPtoEmi.SelectedItem.Text + "' AND "; } if (ddlEstado.SelectedValue != "0") { where += " (g.tipo +g.estado) = '" + ddlEstado.SelectedValue + "' AND "; } if (ddlTipDoc.SelectedValue != "0") { where += " g.codDoc='" + ddlTipDoc.SelectedValue + "' AND "; } if (ddlEmisor.SelectedValue != "0" && ddlEmisor.SelectedValue != "Todos") { where += " cem.RFCEMI='" + ddlEmisor.SelectedItem.Text + "' AND "; } if (ddlReceptor.SelectedValue != "0" && ddlReceptor.SelectedValue != "Todos") { where += " cr.RFCREC='" + ddlReceptor.SelectedItem.Text + "' AND "; } where = where.Substring(0, where.Length - 5); if (!ddlReporte.SelectedValue.Equals("Contabilidad")) { _virtualDir = @"docs\" + (Session["IDENTEMI"] != null ? Session["IDENTEMI"].ToString() : "CORE") + _fechacreacion + "_" + ddlReporte.SelectedValue + ".xlsx"; } else { if (Session["IDENTEMI"].ToString() == "HRP880129QX5") { _virtualDir = @"docs\Conta\"; // _virtualDirConta = @"docs\" + "U" + new string((Session["IDENTEMI"] != null ? Session["IDENTEMI"].ToString() : "CORE").Take(3).ToArray()) + _fechacreacion + "_" + ddlReporte.SelectedValue + ".zip"; _sesion = new string((Session["IDENTEMI"] != null ? Session["IDENTEMI"].ToString() : "CORE").Take(3).ToArray()); } else { _virtualDir = @"docs\Conta\" + "U" + new string((Session["IDENTEMI"] != null ? Session["IDENTEMI"].ToString() : "CORE").Take(3).ToArray()) + _fecha + ".txt"; } } _dir = AppDomain.CurrentDomain.BaseDirectory + @"reportes\" + _virtualDir; Directory.CreateDirectory(Path.GetDirectoryName(_dir)); var periodo = tbFechaInicial.Text + " - " + tbFechaFinal.Text; var informes = new Informes(_dir, _db.CadenaConexion, periodo, Session["IDGIRO"].ToString()); if (ddlReporte.SelectedValue.Equals("General")) { _db.Conectar(); _db.CrearComando(@"SELECT count(g.idComprobante) FROM Dat_GENERAL g INNER JOIN Cat_Emisor cem ON g.id_Emisor = cem.IDEEMI LEFT OUTER JOIN Cat_RECEPTOR cr ON g.id_Receptor = cr.IDEREC WHERE " + where); var dr = _db.EjecutarConsulta(); if (dr.Read()) { _count = Convert.ToInt32(dr[0]); } _db.Desconectar(); if (_count > 0) { if (informes.General(where, Session["IDENTEMI"].ToString())) { var js = "downloadFile('" + _virtualDir.Replace(@"\", "/") + "');"; ScriptManager.RegisterStartupScript(this, GetType(), "downloadViaJS", js, true); } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('" + informes.Ex.Message + "', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('No hay registros de acuerdo a los criterios de busqueda', 4);", true); } } else if (ddlReporte.SelectedValue.Equals("Email")) { _db.Conectar(); _db.CrearComando(@"SELECT COUNT(g.idComprobante) FROM Cat_emailEnvio mail inner join Dat_general g on g.idComprobante = mail.id_general INNER JOIN Cat_Emisor cem ON g.id_Emisor = cem.IDEEMI LEFT OUTER JOIN Cat_RECEPTOR cr ON cr.IDEREC = g.id_Receptor WHERE " + where); var dr = _db.EjecutarConsulta(); if (dr.Read()) { _count = Convert.ToInt32(dr[0]); } _db.Desconectar(); if (_count > 0) { if (informes.Mail(where, Session["IDENTEMI"].ToString())) { var js = "downloadFile('" + _virtualDir.Replace(@"\", "/") + "');"; ScriptManager.RegisterStartupScript(this, GetType(), "downloadViaJS", js, true); } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('" + informes.Ex.Message + "', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('No hay registros de acuerdo a los criterios de busqueda', 4);", true); } } else if (ddlReporte.SelectedValue.Equals("Conceptos")) { _db.Conectar(); _db.CrearComando(@"SELECT COUNT(g.idComprobante) FROM Dat_Detalles dd inner join Dat_general g on g.idComprobante = dd.id_Comprobante INNER JOIN Cat_Emisor cem ON g.id_Emisor = cem.IDEEMI LEFT OUTER JOIN Cat_RECEPTOR cr ON cr.IDEREC = g.id_Receptor WHERE " + where); var dr = _db.EjecutarConsulta(); if (dr.Read()) { _count = Convert.ToInt32(dr[0]); } _db.Desconectar(); if (_count > 0) { if (informes.Conceptos(where, Session["IDENTEMI"].ToString())) { var js = "downloadFile('" + _virtualDir.Replace(@"\", "/") + "');"; ScriptManager.RegisterStartupScript(this, GetType(), "downloadViaJS", js, true); } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('" + informes.Ex.Message + "', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('No hay registros de acuerdo a los criterios de busqueda', 4);", true); } } else if (ddlReporte.SelectedValue.Equals("Contabilidad")) { if (Session["IDENTEMI"].ToString() == "HRP880129QX5") { //obtener rango var whereC = ""; if (ddlPtoEmi.SelectedValue != "0") { whereC += " g.serie='" + ddlPtoEmi.SelectedItem.Text + "' AND "; } if (ddlEstado.SelectedValue != "0") { whereC += " (g.tipo +g.estado) = '" + ddlEstado.SelectedValue + "' AND "; } if (ddlTipDoc.SelectedValue != "0") { whereC += " g.codDoc='" + ddlTipDoc.SelectedValue + "' AND "; } if (ddlEmisor.SelectedValue != "0") { whereC += " cem.RFCEMI='" + ddlEmisor.SelectedItem.Text + "' AND "; } if (ddlReceptor.SelectedValue != "0") { whereC += " cr.RFCREC='" + ddlReceptor.SelectedItem.Text + "' AND "; } var yearS = Convert.ToDateTime(tbFechaInicial.Text).ToString("yyyy"); var yearE = Convert.ToDateTime(tbFechaInicial.Text).ToString("yyyy"); var monthS = Convert.ToDateTime(tbFechaInicial.Text).ToString("MM"); var monthE = Convert.ToDateTime(tbFechaInicial.Text).ToString("MM"); int dayStart = Convert.ToInt32(Convert.ToDateTime(tbFechaInicial.Text).ToString("dd")); int dayEnd = Convert.ToInt32(Convert.ToDateTime(tbFechaFinal.Text).ToString("dd")); var j = dayStart - 1; for (var i = dayStart; i <= dayEnd; i++) { where = ""; j += 1; var dateS = yearS + "/" + monthS + "/" + j; var dateE = yearE + "/" + monthE + "/" + i; where = " CONVERT(VARCHAR(MAX),g.FECHA,112) >= " + Convert.ToDateTime(dateS).ToString("yyyyMMdd") + " AND CONVERT(VARCHAR(MAX),g.FECHA,112) <=" + Convert.ToDateTime(dateE).ToString("yyyyMMdd") + " AND " + whereC; where = where.Substring(0, where.Length - 5); //fin repCon _db.Conectar(); _db.CrearComando(@"SELECT COUNT(g.idComprobante) FROM Dat_Detalles inner join Dat_general g on g.idComprobante = Dat_Detalles.id_Comprobante INNER JOIN Cat_Emisor cem ON g.id_Emisor = cem.IDEEMI LEFT OUTER JOIN Cat_RECEPTOR cr ON cr.IDEREC = g.id_Receptor WHERE " + where); var dr = _db.EjecutarConsulta(); if (dr.Read()) { _count = Convert.ToInt32(dr[0]); } _db.Desconectar(); if (_count > 0) { if (informes.ContabilidadC(where, _sesion)) { } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('" + informes.Ex.Message + "', 4);", true); } } else { } }//for reporte por dias Zip_Download(_dir); } else { _db.Conectar(); _db.CrearComando(@"SELECT COUNT(g.idComprobante) FROM Dat_Detalles inner join Dat_general g on g.idComprobante = Dat_Detalles.id_Comprobante INNER JOIN Cat_Emisor cem ON g.id_Emisor = cem.IDEEMI LEFT OUTER JOIN Cat_RECEPTOR cr ON cr.IDEREC = g.id_Receptor WHERE " + where); var dr = _db.EjecutarConsulta(); if (dr.Read()) { _count = Convert.ToInt32(dr[0]); } _db.Desconectar(); if (_count > 0) { if (informes.Contabilidad(where, "", Session["IDENTEMI"].ToString())) { var js = "downloadFile('" + _virtualDir.Replace(@"\", "/") + "');"; ScriptManager.RegisterStartupScript(this, GetType(), "downloadViaJS", js, true); } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('" + informes.Ex.Message + "', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('No hay registros de acuerdo a los criterios de busqueda', 4);", true); } } } else if (ddlReporte.SelectedValue.Equals("Tickets")) { var date = Convert.ToDateTime(tbFechaInicial.Text); var year = date.ToString("yyyy"); var month = date.ToString("MM"); var serie = ""; var rfcEmisor = ""; var count = -1; if (!ddlPtoEmi.SelectedValue.Equals("0")) { serie = ddlPtoEmi.SelectedItem.Text; } if (!ddlEmisor.SelectedValue.Equals("0")) { rfcEmisor = ddlEmisor.SelectedItem.Text; } var Reptikets = new FacturaGlobalWeb.FacturaGlobalWeb(); var RutBase = AppDomain.CurrentDomain.BaseDirectory; Reptikets.TicketsAsync(where, Session["CfdiVersion"].ToString(), month, year, serie, rfcEmisor, _dir, RutBase, Session["IDENTEMI"].ToString()); (Master as SiteMaster).MostrarAlerta(this, "El reporte se esta generando", 4); gvRepTickets.DataBind(); //if (informes.Tickets(where, Session["CfdiVersion"].ToString(), month, year, serie, rfcEmisor, out count)) //{ // if (count <= 0) // { // ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('No hay registros de acuerdo a los criterios de busqueda', 4);", true); // return; // } // var js = "downloadFile('" + _virtualDir.Replace(@"\", "/") + "');"; // ScriptManager.RegisterStartupScript(this, GetType(), "downloadViaJS", js, true); // Response.Redirect("~/download.aspx?file=" + "reportes/" + _virtualDir.Replace(@"\", "/")); //} //else //{ // ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('" + informes.Ex.Message + "', 4);", true); //} } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('Selecciona fecha inicial y fecha final', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('Tienes que seleccionar ambas fechas', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('Tienes que seleccionar ambas fechas', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('Tienes que seleccionar un tipo de Reporte', 4);", true); } } catch (Exception ea) { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('" + ea.Message + "', 4);", true); } } else { ScriptManager.RegisterStartupScript(this, GetType(), "alertBootBox", "alertBootBox('Verifique que los datos sean correctos', 4);", true); } }