Cambios solicitudesIngresos SAT, mensajes efacturas descarga de facturas

This commit is contained in:
rakcsle
2022-07-26 09:04:52 -07:00
parent 4a9125045b
commit aaa3b42399
3 changed files with 204 additions and 101 deletions

View File

@@ -2645,10 +2645,10 @@ Partial Class Compras_eFacturas
sbResultado.Append($"{resultSolicitud(1)}<br/>") sbResultado.Append($"{resultSolicitud(1)}<br/>")
Else Else
sbResultado.Append($"Solicitud Generada Correctamente") sbResultado.Append($"Solicitud Generada Correctamente")
sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud(2)} <br>") sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud(1)} <br>")
End If End If
Else Else
sbResultado.Append($"{resultSolicitud(2)}") sbResultado.Append($"{resultSolicitud(1)}")
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia
End If End If
Else Else
@@ -2675,7 +2675,7 @@ Partial Class Compras_eFacturas
If Continuar Then If Continuar Then
txtFechaIAdd.Text = "" txtFechaIAdd.Text = ""
txtFechaFAdd.Text = "" txtFechaFAdd.Text = ""
Me.RegistraScript("$('#ModalAgregarSolicitud').modal('hide');") Me.RegistraScript("$('#ModalViewSolicitudes').modal('hide');")
cargasolicitudes() cargasolicitudes()
End If End If
@@ -2723,10 +2723,10 @@ Partial Class Compras_eFacturas
sbResultado.Append($"{resultSolicitud(2)}<br/>") sbResultado.Append($"{resultSolicitud(2)}<br/>")
Else Else
sbResultado.Append($"Solicitud Generada Correctamente") sbResultado.Append($"Solicitud Generada Correctamente")
sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud(2)} <br>") sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud(1)} <br>")
End If End If
Else Else
sbResultado.Append($"{resultSolicitud(2)}") sbResultado.Append($"{resultSolicitud(1)}")
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia
End If End If
Else Else
@@ -2737,9 +2737,9 @@ Partial Class Compras_eFacturas
If SeVerifico AndAlso resultVerificacion.Count = 4 Then If SeVerifico AndAlso resultVerificacion.Count = 4 Then
If ResultadoVerificaionOK Then If ResultadoVerificaionOK Then
sbResultado.Append($"{resultVerificacion(2)}<br>") sbResultado.Append($"{resultVerificacion(1)}<br>")
Else Else
sbResultado.Append($"Se presento un error al verificar las solicitudes {resultVerificacion(2)}<br>") sbResultado.Append($"Se presento un error al verificar las solicitudes {resultVerificacion(1)}<br>")
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia
End If End If
Else Else

View File

@@ -205,6 +205,9 @@
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(n+40) { .reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(n+40) {
text-align: right !important; text-align: right !important;
} }
</style> </style>
</asp:Content> </asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server"> <asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
@@ -219,7 +222,7 @@
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<contenttemplate> <contenttemplate>
<li> <li>
<asp:LinkButton ID="LnkShowSolicitudes" OnClick="LnkShowSolicitudes_Click" runat="server">Solicitudes</asp:LinkButton> <asp:LinkButton ID="LnkShowSolicitudes" OnClick="LnkShowSolicitudes_Click" runat="server" > Solicitudes</asp:LinkButton>
</li> </li>
</contenttemplate> </contenttemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
@@ -329,7 +332,7 @@
<div class="col-md-12"> <div class="col-md-12">
<asp:GridView ID="GvDatos" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" Visible ="false" AutoGenerateColumns="false" OnRowDataBound="GvDatos_RowDataBound" <asp:GridView ID="GvDatos" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" Visible ="false" AutoGenerateColumns="false" OnRowDataBound="GvDatos_RowDataBound"
ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros" ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros"
DataKeyNames="UUID,CountRegistros,VTotal,CBTTotal"> DataKeyNames="UUID,CountRegistros,VTotal,CBTTotal,CountRegistrosSIG,CountRegistrosSAT">
<Columns> <Columns>
<asp:TemplateField HeaderText="Folio"> <asp:TemplateField HeaderText="Folio">
@@ -469,7 +472,7 @@
<div id="ModalViewSolicitudes" class="modal ADS fade" role="dialog"> <div id="ModalViewSolicitudes" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UPModalViewSolicitudes" class="modal-dialog rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UPModalViewSolicitudes" class="modal-dialog rowpadding xspadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<contenttemplate> <contenttemplate>
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
@@ -493,9 +496,14 @@
<ajax:TabPanel runat="server" HeaderText="Pendientes" ID="TabPendientes"> <ajax:TabPanel runat="server" HeaderText="Pendientes" ID="TabPendientes">
<ContentTemplate> <ContentTemplate>
<asp:GridView ID="GVSolicitudesPendientes" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GVSolicitudesPendientes" runat="server" GridLines="None" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" AutoGenerateColumns="False"
ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros" ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros"
DataKeyNames="CveSolicitud,CveSolicitudCFDI,CveSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa"> DataKeyNames="CveSolicitud,CveSolicitudCFDI,CveSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa,ArchivoXML">
<Columns> <Columns>
<asp:TemplateField HeaderText="Folio"> <asp:TemplateField HeaderText="Folio">
<ItemTemplate> <ItemTemplate>
@@ -524,9 +532,12 @@
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha solicitud"> <asp:TemplateField HeaderText="Fecha solicitud">
<ItemTemplate> <ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy HH:mm}")%>'></asp:Label> <asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy}")%>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Solicitó"> <asp:TemplateField HeaderText="Solicitó">
<ItemTemplate> <ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>'></asp:Label> <asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>'></asp:Label>
@@ -534,6 +545,19 @@
</asp:TemplateField> </asp:TemplateField>
</Columns> </Columns>
</asp:GridView> </asp:GridView>
</div>
</div>
<div class="row">
<div class="col-md-12" style="text-align:center">
<asp:LinkButton ID="LnkverificarSolicitudes" CssClass="btn btn-primary" OnClick="LnkverificarSolicitudes_Click" runat="server">Verificar pendientes</asp:LinkButton>
</div>
</div>
</ContentTemplate> </ContentTemplate>
</ajax:TabPanel> </ajax:TabPanel>
@@ -541,9 +565,12 @@
<ajax:TabPanel runat="server" HeaderText="Historial" ID="TabHistorial"> <ajax:TabPanel runat="server" HeaderText="Historial" ID="TabHistorial">
<ContentTemplate> <ContentTemplate>
<asp:GridView ID="GVSolicitudesNominas" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GVSolicitudesNominas" runat="server" GridLines="None" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" AutoGenerateColumns="False" OnRowDataBound="GVSolicitudesNominas_RowDataBound"
ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros" ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros"
DataKeyNames="CveSolicitud,idSolicitudCFDI,idSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa"> DataKeyNames="CveSolicitud,idSolicitudCFDI,idSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa,ArchivoXML">
<Columns> <Columns>
<asp:TemplateField HeaderText="Folio"> <asp:TemplateField HeaderText="Folio">
<ItemTemplate> <ItemTemplate>
@@ -562,7 +589,7 @@
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="No CFDI"> <asp:TemplateField HeaderText="No CFDI">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="lblobservaciones" runat="server" Text='<%# Eval("numeroCFDIs")%>'></asp:Label> <asp:Label ID="LblnumeroCFDIs" runat="server" Text='<%# Eval("numeroCFDIs")%>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Observaciones"> <asp:TemplateField HeaderText="Observaciones">
@@ -572,16 +599,27 @@
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha solicitud"> <asp:TemplateField HeaderText="Fecha solicitud">
<ItemTemplate> <ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy HH:mm}")%>'></asp:Label> <asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy}")%>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Solicitó"> <asp:TemplateField HeaderText="Solicitó" ItemStyle-Width="100px" ControlStyle-Width="100px" >
<ItemTemplate> <ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>'></asp:Label> <asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>' CssClass="truncate"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="50px" HeaderText="XML">
<ItemTemplate>
<asp:LinkButton ID="LnkDescargaXML" CssClass="btn btn-circle btn-sm blue" OnClick="LnkDescargaXML_Click" runat="server" ToolTip="Descargar archivo"
Text="<i class='fa fa-download' style='color:white' title='Descargar Documento'></i>" CausesValidation="False" Visible="false" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
</Columns> </Columns>
</asp:GridView> </asp:GridView>
</div>
</div>
@@ -598,7 +636,7 @@
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<asp:LinkButton ID="LnkverificarSolicitudes" CssClass="btn btn-primary" OnClick="LnkverificarSolicitudes_Click" runat="server">Verificar pendientes</asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button> <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</div> </div>
</div> </div>

View File

@@ -179,6 +179,7 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
private void cargasolicitudes() private void cargasolicitudes()
{ {
LnkverificarSolicitudes.Visible = false;
using (ClsNominas nom = new ClsNominas()) using (ClsNominas nom = new ClsNominas())
{ {
@@ -187,6 +188,13 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
GVSolicitudesPendientes.DataSource = nom.DtResultados.FiltraParametros("Estatus =0"); GVSolicitudesPendientes.DataSource = nom.DtResultados.FiltraParametros("Estatus =0");
GVSolicitudesPendientes.DataBind(); GVSolicitudesPendientes.DataBind();
if (nom.DtResultados.FiltraParametros("Estatus =0").Rows.Count > 0)
{
LnkverificarSolicitudes.Visible = true;
}
GVSolicitudesNominas.DataSource = nom.DtResultados.FiltraParametros("Estatus =1"); GVSolicitudesNominas.DataSource = nom.DtResultados.FiltraParametros("Estatus =1");
GVSolicitudesNominas.DataBind(); GVSolicitudesNominas.DataBind();
} }
@@ -271,12 +279,12 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
else else
{ {
sbResultado.Append($"Solicitud Generada Correctamente"); sbResultado.Append($"Solicitud Generada Correctamente");
sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud[2]} <br>"); sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud[1]} <br>");
} }
} }
else else
{ {
sbResultado.Append($"{resultSolicitud[2]}"); sbResultado.Append($"{resultSolicitud[1]}");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia; TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} }
} }
@@ -287,23 +295,23 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
} }
if (SeVerifico && resultVerificacion.Count == 4) //if (SeVerifico && resultVerificacion.Count == 4)
{ //{
if (ResultadoVerificaionOK) // if (ResultadoVerificaionOK)
{ // {
sbResultado.Append($"{resultVerificacion[1]}<br>"); // sbResultado.Append($"{resultVerificacion[1]}<br>");
} // }
else // else
{ // {
sbResultado.Append($"Se presento un error al verificar las solicitudes {resultVerificacion[1]}<br>"); // sbResultado.Append($"Se presento un error al verificar las solicitudes {resultVerificacion[1]}<br>");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia; // TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} // }
} //}
else //else
{ //{
sbResultado.AppendLine("Se presento un error al verificar las solicitudes (API) <br/>"); // sbResultado.AppendLine("Se presento un error al verificar las solicitudes (API) <br/>");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia; // TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} //}
Alert(sbResultado.ToString(), TipoMensaje); Alert(sbResultado.ToString(), TipoMensaje);
} }
@@ -327,96 +335,105 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
StringBuilder sbResultado = new StringBuilder();
var api = new GeneralesAPII();
JToken ObjApiSolicitud = (JToken)api.GeneraSolicitud(UsuarioActual.CveEmpresa, 3);
List<string> resultSolicitud = new List<string>();
List<string> resultVerificacion = new List<string>();
var ResultadoVerificaionOK = false;
var SeVerifico = false;
var TipoMensaje = ModExtensiones.TipoMensaje.MsgInformacion;
var ResultadoSolicitudOK = false;
if (!(ObjApiSolicitud == null)) try
{ {
resultSolicitud = ObjApiSolicitud.Select(token => token.Values().Aggregate((i, j) => $"{i}|{j}").Value<string>()).ToList(); StringBuilder sbResultado = new StringBuilder();
ResultadoSolicitudOK = bool.Parse(resultSolicitud[0]); var api = new GeneralesAPII();
} JToken ObjApiSolicitud = (JToken)api.GeneraSolicitud(UsuarioActual.CveEmpresa, 3);
else List<string> resultSolicitud = new List<string>();
{ List<string> resultVerificacion = new List<string>();
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia; var ResultadoVerificaionOK = false;
} var SeVerifico = false;
var TipoMensaje = ModExtensiones.TipoMensaje.MsgInformacion;
var ResultadoSolicitudOK = false;
if (!(ObjApiSolicitud == null))
if (ResultadoSolicitudOK)
{
JToken ObjApiVerificacion = (JToken)api.VerificaSolicitudesNominas(UsuarioActual.CveEmpresa, 3);
if (!(ObjApiVerificacion == null))
{ {
resultVerificacion = ObjApiVerificacion.Select(token => token.Values().Aggregate((i, j) => $"{i}|{j}").Value<string>()).ToList(); resultSolicitud = ObjApiSolicitud.Select(token => token.Values().Aggregate((i, j) => $"{i}|{j}").Value<string>()).ToList();
ResultadoVerificaionOK = bool.Parse(resultVerificacion[0]); ResultadoSolicitudOK = bool.Parse(resultSolicitud[0]);
SeVerifico = true;
} }
else else
{ {
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia; TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} }
}
if (resultSolicitud.Count == 4)
{
if (ResultadoSolicitudOK) if (ResultadoSolicitudOK)
{ {
if (resultSolicitud[2].ToString().Trim().Length > 0) JToken ObjApiVerificacion = (JToken)api.VerificaSolicitudesNominas(UsuarioActual.CveEmpresa, 3);
if (!(ObjApiVerificacion == null))
{ {
sbResultado.Append($"{resultSolicitud[2]}<br/>"); resultVerificacion = ObjApiVerificacion.Select(token => token.Values().Aggregate((i, j) => $"{i}|{j}").Value<string>()).ToList();
ResultadoVerificaionOK = bool.Parse(resultVerificacion[0]);
SeVerifico = true;
} }
else else
{ {
sbResultado.Append($"Solicitud Generada Correctamente"); TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud[2]} <br>"); }
}
if (resultSolicitud.Count == 4)
{
if (ResultadoSolicitudOK)
{
if (resultSolicitud[1].ToString().Trim().Length > 0)
{
//sbResultado.Append($"{resultSolicitud[1]}<br/>");
}
else
{
sbResultado.Append($"Se presento un error al verificar las solicitudes <br/> {resultSolicitud[1]} <br>");
}
}
else
{
sbResultado.Append($"{resultSolicitud[1]}");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} }
} }
else else
{ {
sbResultado.Append($"{resultSolicitud[2]}"); sbResultado.AppendLine("Se presento un error al generar la solicitud (API) <br/>");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia; TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} }
}
else
{
sbResultado.AppendLine("Se presento un error al generar la solicitud (API) <br/>");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
}
if (SeVerifico && resultVerificacion.Count == 4) if (SeVerifico && resultVerificacion.Count == 4)
{
if (ResultadoVerificaionOK)
{ {
sbResultado.Append($"{resultVerificacion[2]}<br>"); if (ResultadoVerificaionOK)
{
sbResultado.Append($"{resultVerificacion[1]}.<br>");
}
else
{
sbResultado.Append($"Se presento un error al verificar las solicitudes {resultVerificacion[1]}<br>");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
}
} }
else else
{ {
sbResultado.Append($"Se presento un error al verificar las solicitudes {resultVerificacion[2]}<br>"); sbResultado.AppendLine("Se presento un error al verificar las solicitudes (API) <br/>");
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia; TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} }
Alert(sbResultado.ToString(), TipoMensaje);
cargasolicitudes();
} }
else catch(Exception ex)
{ {
sbResultado.AppendLine("Se presento un error al verificar las solicitudes (API) <br/>"); Alert(ex.StackTrace);
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia;
} }
Alert(sbResultado.ToString(), TipoMensaje);
cargasolicitudes();
} }
protected void LnkAgregarSolictud_Click(object sender, EventArgs e) protected void LnkAgregarSolictud_Click(object sender, EventArgs e)
@@ -437,7 +454,7 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
if(e.Row.DataKey("Mes").ToString() == "") if(e.Row.DataKey("Mes").ToString() == "")
{ {
e.Row.Cells[0].Text = "Total"; e.Row.Cells[0].Text = "Total";
e.Row.Font.Bold = true; e.Row.Attributes.Add("class", "Totales");
} }
} }
@@ -450,12 +467,11 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
{ {
if (e.Row.DataKey("UUID") == "Totales") if (e.Row.DataKey("UUID") == "Totales")
{ {
e.Row.Font.Bold = true; e.Row.Font.Bold = true;
e.Row.Cells[1].Text = e.Row.DataKey("VTotal").ToDecimal().ToString("###,###,###.00"); e.Row.Cells[1].Text = e.Row.DataKey("CountRegistrosSIG");
e.Row.Cells[2].Text = e.Row.DataKey("CBTTotal").ToDecimal().ToString("###,###,###.00"); e.Row.Cells[2].Text = e.Row.DataKey("CountRegistrosSAT");
e.Row.Cells[3].Text = e.Row.DataKey("CountRegistros"); e.Row.Cells[3].Text = e.Row.DataKey("CountRegistros");
e.Row.Attributes.Add("class", "Totales");
} }
} }
@@ -503,6 +519,55 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas
} }
}
protected void LnkDescargaXML_Click(object sender, EventArgs e)
{
GridViewRow GvRow = (GridViewRow)((LinkButton)sender).NamingContainer;
var UrlDescarga = $"{UsuarioActual.Empresa.Ruta}NomXMLSAT\\Descargas\\{GvRow.DataKey("ArchivoXML")}";
var Archivo = new System.IO.FileInfo(UrlDescarga);
if (Archivo.Exists)
{
Response.Clear();
Response.AddHeader("Content-Disposition", "attachment; filename=" + Archivo.Name);
Response.AddHeader("Content-Length", Archivo.Length.ToString());
Response.ContentType = "text/octet-stream";
Response.Flush();
Response.TransmitFile(Archivo.FullName);
Response.End();
}
}
protected void GVSolicitudesNominas_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.DataKey("ArchivoXML").Length > 0)
{
var UrlDescarga = $"{UsuarioActual.Empresa.Ruta}NomXMLSAT\\Descargas\\{e.Row.DataKey("ArchivoXML")}";
if (System.IO.File.Exists(UrlDescarga)){
LinkButton LnkDescargaXML = e.Row.FCLinkButton("LnkDescargaXML");
ScriptManager.GetCurrent(this).RegisterPostBackControl(LnkDescargaXML);
LnkDescargaXML.Visible = true;
}
}
}
} }
} }