This commit is contained in:
2024-08-02 07:17:53 -07:00
7 changed files with 536 additions and 422 deletions

View File

@@ -3266,6 +3266,25 @@ Public Class ClsNominas
#End Region
#Region "MovtosPermanentes"
Public Function GetMovtoPermanenteRep(CveEmpresa As Int32, CvePersonal As Integer) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_GetMovtoPermanenteRep", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@CvePersonal", SqlDbType.Int).Value = CvePersonal
End With
Try
SqlAdapter.Fill(Data)
retorno = True
Catch sqEx As SqlException
retorno = False
OnError("Ocurrió un error al obtener los Movtos Permanentes.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Catch ex As Exception
retorno = False
OnError("Ocurrió un error al obtener los Movtos Permanentes.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return retorno
End Function
Public Function GetMovtoPermanente(CveEmpresa As Int32, CvePersonal As Integer) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_GetMovtoPermanente", CommandType.StoredProcedure)
@@ -3305,7 +3324,7 @@ Public Class ClsNominas
End Try
Return retorno
End Function
Public Function AddMovtoPermanente(cveConcepto As Int32, cvePersonal As Int32, descripcion As String, tipoDescuento As Int32, valor As Double, vecesAplicar As Int32, montoLimite As Decimal, fechaInicioAplicacion As Date, estatus As Boolean, CveCuenta As Integer, Optional CveIE As Integer = -1) As Integer
Public Function AddMovtoPermanente(cveConcepto As Int32, cvePersonal As Int32, descripcion As String, tipoDescuento As Int32, valor As Double, vecesAplicar As Int32, montoLimite As Decimal, fechaInicioAplicacion As Date, estatus As Boolean, CveCuenta As Integer, Optional CveIE As Integer = -1, Optional EsAcumulado As Integer = 0) As Integer
Dim retorno As Integer = 0
DataAdapter("PA_AddMovtoPermanente", CommandType.StoredProcedure)
@@ -3321,6 +3340,7 @@ Public Class ClsNominas
.Add("@estatus", SqlDbType.Bit).Value = (estatus)
.Add("@CveCuenta", SqlDbType.Int).Value = (CveCuenta)
.Add("@CveIE", SqlDbType.Int).Value = (CveIE)
.Add("@EsAcumulado", SqlDbType.Int).Value = (EsAcumulado)
.Add("@CveMovtoPermanente", SqlDbType.Int).Direction = ParameterDirection.Output
End With
Try
@@ -3335,7 +3355,7 @@ Public Class ClsNominas
End Try
Return retorno
End Function
Public Function UpMovtoPermanente(cveMovtoPermanente As Int32, cveConcepto As Int32, cvePersonal As Int32, descripcion As String, tipoDescuento As Int32, valor As Double, vecesAplicar As Int32, montoLimite As Decimal, fechaInicioAplicacion As Date, estatus As Boolean, CveCuenta As Integer) As Boolean
Public Function UpMovtoPermanente(cveMovtoPermanente As Int32, cveConcepto As Int32, cvePersonal As Int32, descripcion As String, tipoDescuento As Int32, valor As Double, vecesAplicar As Int32, montoLimite As Decimal, fechaInicioAplicacion As Date, estatus As Boolean, CveCuenta As Integer, Optional EsAcumulado As Integer = -1) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_UpMovtoPermanente", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
@@ -3350,6 +3370,7 @@ Public Class ClsNominas
.Add("@fechaInicioAplicacion", SqlDbType.Date).Value = (fechaInicioAplicacion)
.Add("@estatus", SqlDbType.Bit).Value = (estatus)
.Add("@CveCuenta", SqlDbType.Int).Value = (CveCuenta)
.Add("@EsAcumulado", SqlDbType.Int).Value = (EsAcumulado)
End With
Try
SqlAdapter.Fill(Data)

View File

@@ -8135,6 +8135,7 @@ Public Class ClsPaginas
Return Nothing
End If
Dim CveNomina As Integer = ObjNomina.CveNomina
Dim RFCPackCertifica As String = ""
Dim DTPercepciones As Data.DataTable
Dim DTDeducciones As Data.DataTable
Dim DTDeducciones2 As New Data.DataTable
@@ -8165,8 +8166,18 @@ Public Class ClsPaginas
If System.IO.File.Exists(PathXML) Then
Dim XmlDoc As New System.Xml.XmlDocument
'XmlDoc.Load(Ruta & "XML\\Nomina\NOM A-3845.xml")
Dim timbreFiscal = (XDocument.Load(PathXML)).Descendants().
Where(Function(e) e.Name.LocalName = "TimbreFiscalDigital").
FirstOrDefault()
If timbreFiscal IsNot Nothing Then
RFCPackCertifica = timbreFiscal.Attribute("RfcProvCertif")?.Value
Else
End If
XmlDoc.Load(PathXML)
If ValorNodoXML(XmlDoc.DocumentElement, "version").Contiene("3.3", "4.0") Then
FechaEmision = XmlDoc.DocumentElement.Attributes("Fecha").InnerText.ToDate
NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("NoCertificado").InnerText
@@ -8408,6 +8419,10 @@ Public Class ClsPaginas
Dim Archivo As New System.IO.FileInfo(RutaFormato)
If Not TieneError Then
If Archivo.Exists Then
If Extensiones.ModExtensiones.HasReportParameter(RutaFormato, "RFCPackCertifica") Then
RptParametro.Add(New ReportParameter("RFCPackCertifica", RFCPackCertifica))
End If
Retorno = StreamPDF(RutaFormato, LSRds, RptParametro, ObjNomina.SerieFolio, "PDF", MR:=Nothing)
Dim ArchivoPDF As New System.IO.FileInfo(String.Format("{0}PDF\\{1}.pdf", RutaEmpresa, ObjNomina.SerieFolio))
If Not ArchivoPDF.Exists Then

View File

@@ -30,6 +30,7 @@ Namespace Extensiones
#Region "E X T E N S I O N E S"
Public Module ModExtensiones
Public ReadOnly Property foreign_characters As Dictionary(Of String, String)
Get
Dim fgk As Dictionary(Of String, String) = New Dictionary(Of String, String) From {
@@ -3771,6 +3772,20 @@ Namespace Extensiones
text = str.Replace("&", "&")
Return text
End Function
Function HasReportParameter(reportPath As String, parameterName As String) As Boolean
' Leer el archivo .rdlc como XML
Dim rdlcDoc As XDocument = XDocument.Load(reportPath)
' Buscar el parámetro en el XML
Dim parameters = From e In rdlcDoc.Descendants()
Where e.Name.LocalName = "ReportParameter"
Select e.Attribute("Name").Value
' Verificar si existe el parámetro RFCPackCertifica
Return parameters.Contains(parameterName)
End Function
End Module
#End Region

View File

@@ -794,6 +794,8 @@
<asp:Label ID="LblAsisProyecto" AssociatedControlID="DdlAsisProyecto" runat="server" Text="Proyecto:"></asp:Label>
</div>
</asp:Panel>
</div>
<div class="row">
<asp:Panel ID="PnlSubProyecto" CssClass="col-md-12" runat="server">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlAsisSubProyecto" runat="server" AppendDataBoundItems="true" CssClass="form-control select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
@@ -814,11 +816,7 @@
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="LnkGuardarASistencia" OnClick="LnkGuardarASistencia_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
</ContentTemplate>
</asp:UpdatePanel>
<asp:LinkButton ID="LnkGuardarASistencia" OnClick="LnkGuardarASistencia_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
</div>
</div>
</ContentTemplate>
@@ -1390,7 +1388,7 @@
<asp:GridView ID="GVMovtoPermanente" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall " AutoGenerateColumns="False"
ShowHeader="true" EmptyDataText="No se encontraron Movimientos"
DataKeyNames="CveMovtoPermanente,CveConcepto,CveCuenta,CvePersonal,Descripcion,TipoDescuento,Valor,VecesAplicar,MontoLimite,FechaInicioAplicacion,Estatus,FechaRegistro">
DataKeyNames="CveMovtoPermanente,CveConcepto,CveCuenta,CvePersonal,Descripcion,MontoLimiteV,TipoDescuento,Valor,VecesAplicar,MontoLimite,EsAcumulado,FechaInicioAplicacion,Estatus,FechaRegistro">
<Columns>
<asp:TemplateField HeaderText="Descripción">
<ItemTemplate>
@@ -1419,7 +1417,7 @@
<asp:TemplateField HeaderText="Monto limite" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click"
CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("MontoLimite","{0:###,###.##}")%>'></asp:LinkButton>
CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("MontoLimiteV","{0:###,###.##}")%>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Saldo" ItemStyle-HorizontalAlign="Right">
@@ -1444,6 +1442,8 @@
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
@@ -2182,6 +2182,207 @@
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div>
</div>
<div id="ModalMovtoPermanente" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpMovtosPermanentesModal" UpdateMode="Conditional" class="modal-dialog" runat="server">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" onclick="$('#ModalMovtoPermanente').modal('hide');return;">&times;</button>
<h4 class="modal-title">Movimiento permanente</h4>
</div>
<div class="modal-body">
<asp:Panel runat="server" Visible="false" CssClass="portlet light xspadding bordered " ID="pnlAddupMovto">
<div class="portlet-title">
<div class="caption ">
<i class="icon-pin font-yellow-gold"></i>
<span class="caption-subject font-yellow-gold bold uppercase">
<asp:Literal ID="LtlMovtoPermanenteaddup" runat="server"></asp:Literal></span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body ">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDescripcion" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtDescripcion" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción:" AssociatedControlID="TxtDescripcion"></asp:Label>
</div>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" Text="Tipo Concepto:" AssociatedControlID=""></asp:Label>
<asp:DropDownList ID="DdlTipo" runat="server" AppendDataBoundItems="True" OnSelectedIndexChanged="DdlTipo_SelectedIndexChanged" AutoPostBack="true" DataTextField="TipoGasto" DataValueField="TipoGasto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar">
<asp:ListItem Value="P" Text="Percepciones"></asp:ListItem>
<asp:ListItem Value="D" Selected="True" Text="Deducciones"></asp:ListItem>
<asp:ListItem Value="O" Text="Obligaciones"></asp:ListItem>
</asp:DropDownList>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" Text="Concepto:" AssociatedControlID=""></asp:Label>
<asp:DropDownList ID="DdlConcepto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" Text="Tipo Descuento:" AssociatedControlID=""></asp:Label>
<asp:DropDownList ID="DdlTipoDescto" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlTipoDescto_SelectedIndexChanged" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar">
<asp:ListItem Value="1" Text="Importe"></asp:ListItem>
<asp:ListItem Value="2" Text="Porcentaje"></asp:ListItem>
<asp:ListItem Value="3" Text="Importe(Tope Monto)"></asp:ListItem>
<asp:ListItem Value="4" Text="Porcentaje(Tope Monto)"></asp:ListItem>
</asp:DropDownList>
</div>
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtValor" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvValor" runat="server" ControlToValidate="TxtValor" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Valor''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Valor:" AssociatedControlID="TxtValor"></asp:Label>
</div>
</div>
<asp:Panel runat="server" ID="pnlVecesAplicar" CssClass="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtVecesAplicar" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvVecesAplicar" runat="server" ControlToValidate="TxtVecesAplicar" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Veces por Aplicar''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Veces por Aplicar:" AssociatedControlID="TxtVecesAplicar"></asp:Label>
</div>
</asp:Panel>
<asp:Panel runat="server" ID="pnlMonto" CssClass="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtMontoLimite" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvMontoLimite" runat="server" ControlToValidate="TxtMontoLimite" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Monto Limite''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Monto Limite:" AssociatedControlID="TxtMontoLimite"></asp:Label>
</div>
</asp:Panel>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtFechaAplicacion" runat="server" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvFechaAplicacion" runat="server" ControlToValidate="TxtFechaAplicacion" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Fecha de Aplicación: " AssociatedControlID="TxtFechaAplicacion"></asp:Label>
<ajax:MaskedEditExtender ID="MKEFechaAplicacion" runat="server" TargetControlID="TxtFechaAplicacion" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left" BehaviorID="_content_MKEFechaBaja" Century="2000" CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" CultureDateFormat="" CultureDatePlaceholder="" CultureDecimalPlaceholder="" CultureThousandsPlaceholder="" CultureTimePlaceholder=""></ajax:MaskedEditExtender>
<ajax:CalendarExtender ID="CEFechaAplicacion" runat="server" TargetControlID="TxtFechaAplicacion" PopupButtonID="ImgFechaBaja" PopupPosition="BottomRight" BehaviorID="_content_CEFechaBaja"></ajax:CalendarExtender>
<asp:CompareValidator ID="CVFechaAplicacion" runat="server" ControlToValidate="TxtFechaAplicacion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar" Visible="False"></asp:CompareValidator>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Cuenta contable" AssociatedControlID="DdlCtaContable"></asp:Label>
<asp:DropDownList ID="DdlCtaContable" runat="server" AppendDataBoundItems="True" DataTextField="CtaCodigo" DataValueField="CveCuenta" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="col-md-3">
<div style="padding-top: 10px; padding-bottom: 14px;">
¿Activo?
</div>
<asp:CheckBox ID="ChkEstatus" CssClass="chksino " Text=" " runat="server" />
</div>
<div class="col-md-3">
<div style="padding-top: 10px; padding-bottom: 14px;">
¿Es acumulado?
</div>
<asp:CheckBox ID="ChkPermEsAcumulado" CssClass="chksino " Text=" " runat="server" />
</div>
</div>
</div>
</asp:Panel>
<asp:GridView ID="GVMovtoPermanenteSaldos" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="CveTipo,Nombre,Concepto,CveMovtoPermanente,FechaFin,CvePeriodo,NoPagos,ImportePagos,Pagado,Total,Saldo,Fecha">
<Columns>
<asp:TemplateField HeaderText="Nombre">
<ItemTemplate>
<asp:Label ID="lblnombre" runat="server" Text='<%# Eval("Nombre")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<%--<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="lblconcepto" runat="server" Text='<%# Eval("Concepto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cve Movto Permanente">
<ItemTemplate>
<asp:Label ID="lblcveMovtoPermanente" runat="server" Text='<%# Eval("CveMovtoPermanente")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<%--<asp:TemplateField HeaderText="Fecha Fin">
<ItemTemplate>
<asp:Label ID="lblfechaFin" runat="server" Text='<%# Eval("FechaFin")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<%--<asp:TemplateField HeaderText="Cve Periodo">
<ItemTemplate>
<asp:Label ID="lblcvePeriodo" runat="server" Text='<%# Eval("CvePeriodo")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Label ID="lblfecha" runat="server" Text='<%# Eval("Fecha")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="No Pagos">
<ItemTemplate>
<asp:Label ID="lblnoPagos" runat="server" Text='<%# Eval("NoPagos")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe Pago">
<ItemTemplate>
<asp:Label ID="lblimportePagos" runat="server" Text='<%# Eval("ImportePagos","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Pagado">
<ItemTemplate>
<asp:Label ID="lblpagado" runat="server" Text='<%# Eval("Pagado","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Total">
<ItemTemplate>
<asp:Label ID="lbltotal" runat="server" Text='<%# Eval("Total","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Saldo">
<ItemTemplate>
<asp:Label ID="lblsaldo" runat="server" Text='<%# Eval("Saldo","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
<div class="modal-footer">
<asp:LinkButton ID="LnkAddMovto" OnClick="LnkAddMovto_Click" ValidationGroup="GrpGuardarMovyoPerma" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
<asp:LinkButton ID="LnkUpMovto" OnClick="LnkUpMovto_Click" ValidationGroup="GrpGuardarMovyoPerma" CssClass="btn btn-success" runat="server">Actualizar</asp:LinkButton>
<button type="button" class="btn btn-danger" onclick="$('#ModalMovtoPermanente').modal('hide');return;">Cancelar</button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</ContentTemplate>
<Triggers>
<%--<asp:PostBackTrigger ControlID="BtnImprimirsobrerecibo" />--%>
@@ -4359,132 +4560,7 @@
</asp:TemplateField>
</Columns>
</asp:GridView>
<%--<table id="headerProcesaSUA" style="display: none">
<tr>
<th></th>
<th colspan="2">Salario</th>
<th colspan="2">Días</th>
<th colspan="2">Cuota Fija</th>
<th colspan="2">Cuota Excedente</th>
<th colspan="2">Prestaciones en Dinero</th>
<th colspan="2">Gastos Medicos</th>
<th colspan="2">Riesgos de Trabajo</th>
<th colspan="2">Invalidez y Vida</th>
<th colspan="2">Guarderia</th>
<th colspan="2">Retiro</th>
</tr>
</table>
<asp:GridView ID="GVProcesarSUA" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD" AutoGenerateColumns="False"
OnRowDataBound="GVProcesarSUA_RowDataBound" data-height="300" data-tableheader="#headerProcesaSUA"
DataKeyNames="CvePersonal,CodigoNombreCompleto,CuotaFijaSUA,CuotaFijaSIG,CuotaExcedenteSUA,CuotaExcedenteSIG,PrestacionesDineroSUA,PrestacionesSIG,GastosMedPenSUA,GastosMedicosSIG,RiesgosdeTrabajoSUA,RiesgoTrabajoSIG,InvalidezyVidaSUA,InvalidezyVidaSIG,GuarderiaSUA,GuarderiaSIG,RetiroSUA,RetiroSIG,SalarioSUA,SalarioSIG">
<Columns>
<asp:TemplateField HeaderText="Nombre">
<ItemTemplate>
<asp:Label ID="lblcodigoNombreCompleto" runat="server" Text='<%# Eval("CodigoNombreCompleto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("SalarioSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("SalarioSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("DiasMes","{0:N0}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("DiasAsistio","{0:N0}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("CuotaFijaSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("CuotaFijaSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("CuotaExcedenteSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("CuotaExcedenteSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("PrestacionesDineroSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("PrestacionesSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("GastosMedPenSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("GastosMedicosSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("RiesgosdeTrabajoSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("RiesgoTrabajoSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("InvalidezyVidaSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("InvalidezyVidaSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("GuarderiaSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("GuarderiaSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SUA">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("RetiroSUA","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("RetiroSIG","{0:N2}")%>'> </asp:Label></td>
</ItemTemplate>
</asp:TemplateField>showResult
</Columns>
</asp:GridView>--%>
</div>
</div>
</div>
@@ -5101,7 +5177,7 @@
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="divPersonalizarNomina" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpPersonalizarxls" class="modal-dialog modal" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
@@ -5114,11 +5190,11 @@
<asp:Label runat="server" ID="Label12" Text="Personalizar"></asp:Label>
</h4>
</div>
<div class="modal-body" >
<div class="modal-body">
<div class="portlet light bordered xspadding" id="portletpersonalizarxls" >
<div class="portlet light bordered xspadding" id="portletpersonalizarxls">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
@@ -5130,24 +5206,24 @@
</div>
</div>
<div class="portlet-body">
<div class="row">
<div class="col-md-6">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="ddltipoPersonalizar" runat="server" CssClass="form-control Widthall select2me" AutoPostBack="true" OnSelectedIndexChanged="ddltipoPersonalizar_SelectedIndexChanged" Style="width: 100%"
DataTextField="Columna" DataValueField="ColumnaDB" ValidationGroup="GrpGuardarOrder">
<asp:ListItem Selected="True" Text="campo Libre" Value="-1"></asp:ListItem>
<asp:ListItem Text="Percepciones" Value="1"></asp:ListItem>
<asp:ListItem Text="deducciones" Value="2"></asp:ListItem>
<asp:ListItem Text="obligacion" Value="3"></asp:ListItem>
<asp:ListItem Text="Datos Personal" Value="4"></asp:ListItem>
<asp:ListItem Text="Percepciones" Value="1"></asp:ListItem>
<asp:ListItem Text="deducciones" Value="2"></asp:ListItem>
<asp:ListItem Text="obligacion" Value="3"></asp:ListItem>
<asp:ListItem Text="Datos Personal" Value="4"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" Text="Tipo:" AssociatedControlID="ddltipoPersonalizar"></asp:Label>
<asp:Label runat="server" Text="Tipo:" AssociatedControlID="ddltipoPersonalizar"></asp:Label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
@@ -5156,7 +5232,7 @@
<asp:ListItem Text="Ocultar" Value="0"></asp:ListItem>
</asp:DropDownList>--%>
<asp:TextBox ID="TxtTitulo" CssClass="form-control" runat="server"></asp:TextBox>
<asp:Label Text="Titulo:" AssociatedControlID="TxtTitulo" runat="server"></asp:Label>
<asp:Label Text="Titulo:" AssociatedControlID="TxtTitulo" runat="server"></asp:Label>
</div>
</div>
@@ -5166,7 +5242,7 @@
DataTextField="Columna" DataValueField="ColumnaDB" ValidationGroup="GrpGuardarOrder">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" Text="Columna:" AssociatedControlID="DdlMOPXColumna"></asp:Label>
<asp:Label runat="server" Text="Columna:" AssociatedControlID="DdlMOPXColumna"></asp:Label>
</div>
</div>
@@ -5205,202 +5281,6 @@
</Triggers>
</asp:UpdatePanel>
</div>
<div id="ModalMovtoPermanente" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpMovtosPermanentesModal" UpdateMode="Conditional" class="modal-dialog" runat="server">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" onclick="$('#ModalMovtoPermanente').modal('hide');return;">&times;</button><h4 class="modal-title">Movimiento permanente</h4>
</div>
<div class="modal-body">
<asp:Panel runat="server" Visible="false" CssClass="portlet light xspadding bordered " ID="pnlAddupMovto">
<div class="portlet-title">
<div class="caption ">
<i class="icon-pin font-yellow-gold"></i>
<span class="caption-subject font-yellow-gold bold uppercase">
<asp:Literal ID="LtlMovtoPermanenteaddup" runat="server"></asp:Literal></span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body ">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDescripcion" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtDescripcion" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción:" AssociatedControlID="TxtDescripcion"></asp:Label>
</div>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" Text="Tipo Concepto:" AssociatedControlID=""></asp:Label>
<asp:DropDownList ID="DdlTipo" runat="server" AppendDataBoundItems="True" OnSelectedIndexChanged="DdlTipo_SelectedIndexChanged" AutoPostBack="true" DataTextField="TipoGasto" DataValueField="TipoGasto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar">
<asp:ListItem Value="P" Text="Percepciones"></asp:ListItem>
<asp:ListItem Value="D" Selected="True" Text="Deducciones"></asp:ListItem>
<asp:ListItem Value="O" Text="Obligaciones"></asp:ListItem>
</asp:DropDownList>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" Text="Concepto:" AssociatedControlID=""></asp:Label>
<asp:DropDownList ID="DdlConcepto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" Text="Tipo Descuento:" AssociatedControlID=""></asp:Label>
<asp:DropDownList ID="DdlTipoDescto" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlTipoDescto_SelectedIndexChanged" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar">
<asp:ListItem Value="1" Text="Importe"></asp:ListItem>
<asp:ListItem Value="2" Text="Porcentaje"></asp:ListItem>
<asp:ListItem Value="3" Text="Importe(Tope Monto)"></asp:ListItem>
<asp:ListItem Value="4" Text="Porcentaje(Tope Monto)"></asp:ListItem>
</asp:DropDownList>
</div>
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtValor" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvValor" runat="server" ControlToValidate="TxtValor" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Valor''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Valor:" AssociatedControlID="TxtValor"></asp:Label>
</div>
</div>
<asp:Panel runat="server" ID="pnlVecesAplicar" CssClass="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtVecesAplicar" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvVecesAplicar" runat="server" ControlToValidate="TxtVecesAplicar" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Veces por Aplicar''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Veces por Aplicar:" AssociatedControlID="TxtVecesAplicar"></asp:Label>
</div>
</asp:Panel>
<asp:Panel runat="server" ID="pnlMonto" CssClass="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtMontoLimite" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvMontoLimite" runat="server" ControlToValidate="TxtMontoLimite" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Monto Limite''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Monto Limite:" AssociatedControlID="TxtMontoLimite"></asp:Label>
</div>
</asp:Panel>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtFechaAplicacion" runat="server" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvFechaAplicacion" runat="server" ControlToValidate="TxtFechaAplicacion" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> es necesario "
ValidationGroup="GrpGuardarMovyoPerma"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Fecha de Aplicación: " AssociatedControlID="TxtFechaAplicacion"></asp:Label>
<ajax:MaskedEditExtender ID="MKEFechaAplicacion" runat="server" TargetControlID="TxtFechaAplicacion" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left" BehaviorID="_content_MKEFechaBaja" Century="2000" CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" CultureDateFormat="" CultureDatePlaceholder="" CultureDecimalPlaceholder="" CultureThousandsPlaceholder="" CultureTimePlaceholder=""></ajax:MaskedEditExtender>
<ajax:CalendarExtender ID="CEFechaAplicacion" runat="server" TargetControlID="TxtFechaAplicacion" PopupButtonID="ImgFechaBaja" PopupPosition="BottomRight" BehaviorID="_content_CEFechaBaja"></ajax:CalendarExtender>
<asp:CompareValidator ID="CVFechaAplicacion" runat="server" ControlToValidate="TxtFechaAplicacion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar" Visible="False"></asp:CompareValidator>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Cuenta contable" AssociatedControlID="DdlCtaContable"></asp:Label>
<asp:DropDownList ID="DdlCtaContable" runat="server" AppendDataBoundItems="True" DataTextField="CtaCodigo" DataValueField="CveCuenta" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="col-md-3">
<div style="padding-top: 10px; padding-bottom: 14px;">
¿Activo?
</div>
<asp:CheckBox ID="ChkEstatus" CssClass="chksino " Text=" " runat="server" />
</div>
<div class="col-md-3">
</div>
</div>
<div class="text-right"></div>
</div>
</asp:Panel>
<asp:GridView ID="GVMovtoPermanenteSaldos" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="CveTipo,Nombre,Concepto,CveMovtoPermanente,FechaFin,CvePeriodo,NoPagos,ImportePagos,Pagado,Total,Saldo,Fecha">
<Columns>
<asp:TemplateField HeaderText="Nombre">
<ItemTemplate>
<asp:Label ID="lblnombre" runat="server" Text='<%# Eval("Nombre")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<%--<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="lblconcepto" runat="server" Text='<%# Eval("Concepto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cve Movto Permanente">
<ItemTemplate>
<asp:Label ID="lblcveMovtoPermanente" runat="server" Text='<%# Eval("CveMovtoPermanente")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<%--<asp:TemplateField HeaderText="Fecha Fin">
<ItemTemplate>
<asp:Label ID="lblfechaFin" runat="server" Text='<%# Eval("FechaFin")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<%--<asp:TemplateField HeaderText="Cve Periodo">
<ItemTemplate>
<asp:Label ID="lblcvePeriodo" runat="server" Text='<%# Eval("CvePeriodo")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Label ID="lblfecha" runat="server" Text='<%# Eval("Fecha")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="No Pagos">
<ItemTemplate>
<asp:Label ID="lblnoPagos" runat="server" Text='<%# Eval("NoPagos")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe Pago">
<ItemTemplate>
<asp:Label ID="lblimportePagos" runat="server" Text='<%# Eval("ImportePagos","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Pagado">
<ItemTemplate>
<asp:Label ID="lblpagado" runat="server" Text='<%# Eval("Pagado","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Total">
<ItemTemplate>
<asp:Label ID="lbltotal" runat="server" Text='<%# Eval("Total","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Saldo">
<ItemTemplate>
<asp:Label ID="lblsaldo" runat="server" Text='<%# Eval("Saldo","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
<div class="modal-footer">
<asp:LinkButton ID="LnkAddMovto" OnClick="LnkAddMovto_Click" ValidationGroup="GrpGuardarMovyoPerma" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
<asp:LinkButton ID="LnkUpMovto" OnClick="LnkUpMovto_Click" ValidationGroup="GrpGuardarMovyoPerma" CssClass="btn btn-success" runat="server">Actualizar</asp:LinkButton>
<button type="button" class="btn btn-danger" onclick="$('#ModalMovtoPermanente').modal('hide');return;">Cancelar</button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<asp:TextBox ID="TxtCvePeriodo" CssClass="TxtCvePeriodo hidden" runat="server"></asp:TextBox>
<asp:TextBox ID="TxtCvePersonal" CssClass="TxtCvePersonal hidden" runat="server"></asp:TextBox>
<asp:Button ID="BtnGeneratepdf" CssClass="BtnGeneratepdf hidden" OnClick="BtnGeneratepdf_Click" UseSubmitBehavior="false" runat="server" Text="Button" />

View File

@@ -40,7 +40,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
set { ViewState["DtNomOcultarMostrar"] = value; }
}
private DataTable DtNomPersonalizarxls
{
get
@@ -2642,10 +2642,92 @@ public partial class Nomina_Nomina2 : ClsPaginas
}//ImgDelete
protected void LnkReenviarCorreoSobreRecibo_Click(object sender, EventArgs e)
{
//string msggral = "";
int CvePeriodo = 0;
ClsSisMail Mail = new ClsSisMail();
DataTable dtpersonal = new DataTable();
DataRow drow;
using (ClsRH objrh = new ClsRH())
{
objrh.GetPersonal(-1, UsuarioActual.CveEmpresa);
dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "Correo", "NombreCompleto" });
}
using (ClsRH objrh = new ClsRH())
using (ClsNominas ObjNomina = new ClsNominas())
{
foreach (GridViewRow gvRow in GvNominas.Rows)
{
CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero();
int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
int CveNomina = gvRow.DataKey("CveNomina").ToEntero();
int SeTimbro = (gvRow.DataKey("SeTimbro").ToUpper() == "TRUE" ? 1 : gvRow.DataKey("SeTimbro").ToEntero());
LinkButton LnkTimbrar = gvRow.FCLinkButton("LnkTimbrar");
string Correo = string.Empty;
string NombreCompleto = string.Empty;
if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null)
{
Correo = drow["Correo"].ToString();
NombreCompleto = drow["NombreCompleto"].ToString();
}
if (CvePersonal == SRCvePersonal && SeTimbro == 1)
{
if (Correo.Trim().Length > 0)
{
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
if (pdf != null)
{
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
if (ObjNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodo, -1, UsuarioActual.CveEmpresa))
{
string Ruta = "";
string PathXML = "";
string PathXMLF = "";
string Xmlname = "";
string XmlnameF = "";
//string empleado = "";
Ruta = UsuarioActual.Empresa.Ruta;
PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml";
PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
Xmlname = $"{ObjNomina.SerieFolio}.xml";
XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = $"{ObjNomina.SerieFolio}.pdf" });
//this.GuardaLog(PathXML);
if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML))
{
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname });
}
if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF))
{
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF });
}
}
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
// Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), Correo.Trim(), "", objarch);
objrh.NomBitacoraCorreoAdd(CvePeriodoSeleccionado, CvePersonal, Correo.Trim(), UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario);
}
}
}
}
}
Alert("se reenvió el recibos timbrados");
}
protected void LnkCancelarSobreRecibo_Click(object sender, EventArgs e)
{
showhideaccionesSR(true);
DataRow dr = dtempleados.FiltroPrimero(string.Format("CvePersonal = {0}", SRCvePersonal));
CveNominaCancelar = dr["CveNomina"].ToString().ToEntero();
DdlMotivoCancelacion.DataSource = get_GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa).FiltraParametros("CveSATMotivoCancelacion IN (2,3)");
DdlMotivoCancelacion.DataBind();
UpCancelarDocumento.Update();
RegistraScript("$('#ModalCancelarDocumento').modal()");
//showhideaccionesSR(true);
}
public void showhideaccionesSR(bool cargadatos = false)
{
@@ -4836,7 +4918,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtColumnas = GetTablaColumnasConceptos();
DdlMOPXColumna.DataSource = dtColumnas;
DdlMOPXColumna.DataBind();
{
addcoltopersonalizar("Codigo", "0", "Codigo", "");
@@ -4859,7 +4941,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' AND EsPadre = 1 AND SoloVisible =0").Rows)//
{
{
if (!(dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0))
{
addcoltopersonalizar(row["Concepto"].ToString(), "1", string.Format("[V_{0}]", row["CveConcepto"].ToString()), row["Codigo"].ToString());
@@ -4944,11 +5026,67 @@ public partial class Nomina_Nomina2 : ClsPaginas
UpPersonalizarxls.Update();
}
private void Titlecell(ClosedXML.Excel.IXLWorksheet libro, object Valor, int fi, int ff, bool topBorder = true, bool bottomBorder = true, ClosedXML.Excel.XLColor borderColor = null)
{
ClosedXML.Excel.IXLCell celda = libro.Cell(fi, ff);
celda.Value = Valor;
if (borderColor != null)
{
if (topBorder)
{
celda.Style.Border.TopBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.TopBorderColor = borderColor;
}
celda.Style.Border.LeftBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.LeftBorderColor = borderColor;
celda.Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.RightBorderColor = borderColor;
if (bottomBorder)
{
celda.Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.BottomBorderColor = borderColor;
}
}
}
//IXLRange
private void TitleRange(ClosedXML.Excel.IXLWorksheet libro, object Valor, int fi, int ff, int fi2, int ff2, bool topBorder = true, bool bottomBorder = true, ClosedXML.Excel.XLColor borderColor = null)
{
ClosedXML.Excel.IXLRange celda = libro.Range(fi, ff, fi2, ff2).Merge();
celda.Value = Valor;
if (borderColor != null)
{
if (topBorder)
{
celda.Style.Border.TopBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.TopBorderColor = borderColor;
}
celda.Style.Border.LeftBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.LeftBorderColor = borderColor;
celda.Style.Border.RightBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.RightBorderColor = borderColor;
if (bottomBorder)
{
celda.Style.Border.BottomBorder = ClosedXML.Excel.XLBorderStyleValues.Medium;
celda.Style.Border.BottomBorderColor = borderColor;
}
}
}
protected void LnkFormatoPersonalizado_Click(object sender, EventArgs e)
{
try
{
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
var PercborderColor = ClosedXML.Excel.XLColor.FromArgb(0, 102, 0);
var dedcborderColor = ClosedXML.Excel.XLColor.FromArgb(99, 37, 35);
ClosedXML.Excel.XLColor colorperp = ClosedXML.Excel.XLColor.FromArgb(51, 153, 102);
ClosedXML.Excel.XLColor colorded = ClosedXML.Excel.XLColor.FromArgb(150, 54, 52);
ClosedXML.Excel.IXLCell celda;
var libro = wb.AddWorksheet("Nomina");
int column = 1;
int filainicio = 3;
@@ -4968,71 +5106,88 @@ public partial class Nomina_Nomina2 : ClsPaginas
libro.Range(2, 2, 2, 4).Merge().Value = periodo;
int iniciotipe = column;
int incioConceptos = iniciotipe + 1;
column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "Mensual";
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "Sueldo";
Titlecell(libro, "Mensual", filainicio + 2, column, true, false, PercborderColor);
Titlecell(libro, "Sueldo", filainicio + 3, column, false, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15;
column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "Sueldo";
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "diario";
Titlecell(libro, "Sueldo", filainicio + 2, column, true, false, PercborderColor);
Titlecell(libro, "diario", filainicio + 3, column, false, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15;
column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "dias Pen";
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "Pago";
Titlecell(libro, "dias Pen", filainicio + 2, column, true, false, PercborderColor);
Titlecell(libro, "Pago", filainicio + 3, column, false, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15;
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo ='P' AND EsPadre = 1 AND SoloVisible =0").Rows)
{
column++;
libro.Cell(filainicio + 2, column).Value = row["Concepto"].ToString();
libro.Cell(filainicio + 3, column).Value = row["Codigo"].ToString();
libro.Column(column).Width = 15;
if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0))
{
libro.Column(column).Hide();
}
else
{
Titlecell(libro, row["Concepto"].ToString(), filainicio + 2, column, true, false, PercborderColor);
Titlecell(libro, row["Codigo"].ToString(), filainicio + 3, column, false, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15;
}
}
column++;
TitleRange(libro, "Percepciones", filainicio + 2, column, filainicio + 3, column, true, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15;
if (iniciotipe < column)
{
libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center;
TitleRange(libro, "Percepciones", filainicio + 1, iniciotipe + 1, filainicio + 1, column, true, true, PercborderColor);
libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Merge().Value = "Percepciones";
}
//column++;
//libro.Range(filainicio + 2, column, filainicio + 3, column).Merge().Value = "Percepciones";
//libro.Column(column).Width = 15;
//if (iniciotipe < column)
//{
// libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center;
// libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Merge().Value = "Percepciones";
//}
iniciotipe = column;
int finPercepciones = iniciotipe;
column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "Incapacidad";
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "Perm. Faltas";
TitleRange(libro, "Incapacidad", filainicio + 2, column, filainicio + 2, column, true, false, dedcborderColor);
TitleRange(libro, "Perm. Faltas", filainicio + 3, column, filainicio + 3, column, false, true, dedcborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor);
libro.Column(column).Width = 15;
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' AND EsPadre = 1 AND SoloVisible =0").Rows)
{
column++;
libro.Cell(filainicio + 2, column).Value = row["Concepto"].ToString();
libro.Cell(filainicio + 3, column).Value = row["Codigo"].ToString();
libro.Column(column).Width = 15;
if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0))
{
libro.Column(column).Hide();
}
else
{
Titlecell(libro, row["Concepto"].ToString(), filainicio + 2, column, true, false, dedcborderColor);
Titlecell(libro, row["Codigo"].ToString(), filainicio + 3, column, false, true, dedcborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor);
libro.Column(column).Width = 15;
}
}
//column++;
//libro.Range(filainicio + 2, column, filainicio + 3, column).Merge().Value = "Deducciones";
//libro.Column(column).Width = 15;
//if (iniciotipe < column)
//{
// libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center;
// libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Merge().Value = "Deducciones";
//}
column++;
TitleRange(libro, "Deducciones", filainicio + 2, column, filainicio + 3, column, true, true, dedcborderColor);
libro.Column(column).Width = 15;
if (iniciotipe < column)
{
libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center;
TitleRange(libro, "Deducciones", filainicio + 1, iniciotipe + 1, filainicio + 1, column, true, true, dedcborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor);
}
int findeducciones = column;
//column++;
//libro.Cell(filainicio + 1, column).Value = " ";
@@ -5043,23 +5198,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
libro.Range(filainicio + 2, column, filainicio + 3, column).Merge().Value = "Total";
libro.Column(column).Width = 15;
iniciotipe = column;
//if (iniciotipe < column)
//{
// libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center;
// libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Merge().Value = "Obligaciones";
//}
//libro.Row(1).CellsUsed().Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
//libro.Row(2).CellsUsed().Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
//libro.Row(3).CellsUsed().Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
//libro.Row(1).CellsUsed().Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(177, 160, 199));
//libro.Row(2).CellsUsed().Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
//libro.Row(3).Cell(1).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
//libro.Row(3).CellsUsed().Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
int maxnocolumn = column;
libro.Range(filainicio + 1, 1, filainicio + 4, maxnocolumn).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Range(filainicio + 1, 1, filainicio + 4, maxnocolumn).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
libro.Range(filainicio + 1, incioConceptos, filainicio + 4, finPercepciones).Style.Fill.SetBackgroundColor(colorperp);
libro.Range(filainicio + 1, finPercepciones + 1, filainicio + 4, findeducciones).Style.Fill.SetBackgroundColor(colorded);
int Fila = filainicio + 3;
int cveSupProyecto = -5;
@@ -5068,7 +5214,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
int oldcveSupProyecto = -5;
bool newsubproyecto = false;
bool newsubproyectoTitulo = false;
List<int> filasborrar= new List<int>();
List<int> filasborrar = new List<int>();
DataTable dtsr = dtempleados.FiltraParametros("", "CveSubProyecto");
dtsr.Rows.Add(dtsr.NewRow());
foreach (DataRow erow in dtsr.Rows)
@@ -5107,6 +5253,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++;
libro.Cell(Fila, column).Value = erow["SalarioDiario"];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
column++;
libro.Cell(Fila, column).Value = "";
@@ -5115,22 +5262,32 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++;
string Concepto = string.Format("V_{0}", row["CveConcepto"]);
libro.Cell(Fila, column).Value = erow[Concepto];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
if (newsubproyecto)
{
libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto));
libro.Cell(Fila -3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;";
}
}
//column++;
//libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166));
//libro.Cell(Fila, column).Value = erow["SumaPercepciones"];
//if (newsubproyecto)
//{
// libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto));
//}
column++;
libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorperp);
Titlecell(libro, erow["SumaPercepciones"], Fila, column, false, false, PercborderColor);
libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
if (newsubproyecto)
{
libro.Cell(Fila - 2, column).Style.Fill.SetBackgroundColor(colorperp);
Titlecell(libro,"", Fila - 2, column, false, false, PercborderColor);
libro.Cell(Fila - 3, column).Style.Fill.SetBackgroundColor(colorperp);
libro.Cell(Fila - 3, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Cell(Fila-3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;";
Titlecell(libro, dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)), Fila - 3, column, true, true, PercborderColor);
//libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto));
}
column++;
@@ -5140,20 +5297,30 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++;
string Concepto = string.Format("V_{0}", row["CveConcepto"]);
libro.Cell(Fila, column).Value = erow[Concepto];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
if (newsubproyecto)
{
libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto));
libro.Cell(Fila-3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;";
}
}
//column++;
//libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166));
//libro.Cell(Fila, column).Value = erow["SumaDeducciones"];
//if (newsubproyecto)
//{
// libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto));
//}
column++;
libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorded);
Titlecell(libro, erow["SumaDeducciones"], Fila, column, false, false, dedcborderColor);
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
if (newsubproyecto)
{
libro.Cell(Fila - 2, column).Style.Fill.SetBackgroundColor(colorded);
Titlecell(libro, "", Fila - 2, column, false, false, dedcborderColor);
libro.Cell(Fila - 3, column).Style.Fill.SetBackgroundColor(colorded);
libro.Cell(Fila -3, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Cell(Fila-3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;";
Titlecell(libro, dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)), Fila - 3, column, true, true, dedcborderColor);
//libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto));
}
//column++;
//libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166));
//libro.Cell(Fila, column).Value = erow["SumaEspecie"];
@@ -5164,8 +5331,12 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++;
libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166));
libro.Cell(Fila, column).Value = erow["Total"];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
if (newsubproyecto)
{
libro.Cell(Fila-2, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166));
libro.Cell(Fila-3, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166));
libro.Cell(Fila-3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;";
libro.Cell(Fila - 3, column).Value = dtempleados.SUM("Total", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto));
}
@@ -5190,9 +5361,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
//}
}
libro.Rows(Fila-2, Fila).Delete();
libro.Range(filainicio + 1, 1, filainicio + 4, maxnocolumn).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Range(filainicio + 1, 1, filainicio + 4, maxnocolumn).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
{
var columnsToDelete = new List<int>();
foreach (var columnx in libro.Columns())
@@ -5211,11 +5381,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
libro.Column(columnNumber).Delete();
}
}
int primera = filasborrar.First();
filasborrar.Remove(primera);
filasborrar.Reverse();
foreach (int rownumber in filasborrar)
{
libro.Rows(rownumber, rownumber).Delete();
libro.Rows(rownumber-1, rownumber).Delete();
}
libro.Rows(primera, primera).Delete();
System.IO.Stream fs = new System.IO.MemoryStream();
wb.SaveAs(fs);
fs.Position = 0;
@@ -10525,7 +10698,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
StringBuilder SbErrores = new StringBuilder();
bool ErroresValidaciones = false;
int modalidadnomina = 1;
if (UsuarioActual.CveEmpresa.Contiene(189,193,195,196,197)) modalidadnomina = 2;
if (UsuarioActual.CveEmpresa.Contiene(189, 193, 195, 196, 197)) modalidadnomina = 2;
SbErrores.AppendLine("Se detectaron los siguientes errores en la generación del layout:<br/>");
@@ -11994,4 +12167,9 @@ public partial class Nomina_Nomina2 : ClsPaginas
UpDatos.Update();
}
protected void ddltipoPersonalizar_SelectedIndexChanged(object sender, EventArgs e)
{
}
}

View File

@@ -433,9 +433,11 @@
<%--20--%>
<asp:BoundField HeaderText="O. C." DataField="OC_noOrden" ItemStyle-Width="5%" Visible="false" />
<%--21--%>
<asp:BoundField HeaderText="Kilogramos" DataField="OC_Kilogramos" ItemStyle-Width="5%" Visible="false" />
<asp:BoundField HeaderText="Kilogramos" DataField="OC_Kilogramos" DataFormatString="{0:###,###,###,###.##}" ItemStyle-Width="5%" Visible="false" ItemStyle-HorizontalAlign="Right" />
<%--22--%>
<asp:BoundField HeaderText="Cantiadad" DataField="OC_Cantidad" ItemStyle-Width="5%" Visible="false" />
<asp:BoundField HeaderText="Cantiadad" DataField="OC_Cantidad" DataFormatString="{0:###,###,###,###.##}" ItemStyle-Width="5%" Visible="false" ItemStyle-HorizontalAlign="Right" />
<%--23--%>
<asp:BoundField HeaderText="Manifiesto" DataField="NoManifiesto" ItemStyle-Width="5%" Visible="false" />
</Columns>
<RowStyle CssClass="Texto" />
<HeaderStyle CssClass="Titulos" />
@@ -477,7 +479,7 @@
<asp:CheckBox ID="ChkFormaPago" runat="server" Text="Forma de Pago" />
</td>
</tr>
<tr>
<tr runat="server" id="DivMostrarCgame">
<td style="text-align: left;">
<asp:CheckBox ID="ChkOC_noOrden" runat="server" Text="O. C." />
</td>
@@ -493,11 +495,12 @@
<td style="text-align: left;">
<asp:CheckBox ID="ChkFechaHoraEmision" runat="server" Text="Fecha Hora de Emisión" />
</td>
<td style="text-align: left;">
<asp:CheckBox ID="ChkNumTurnos" runat="server" Text="Número de turnos" Visible="false" />
<td style="text-align: left;" runat="server" id="DivMostrarCgame2">
<asp:CheckBox ID="ChkNoManifiesto" runat="server" Text="Manifiesto" />
</td>
<td style="text-align: left;">
<asp:CheckBox ID="ChkNumTurnos" runat="server" Text="Número de turnos" Visible="false" />
</td>
</tr>
</tbody>

View File

@@ -73,7 +73,8 @@ Partial Class Ventas_RepProductosServiciosDetalle
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
DivMostrarCgame.Visible = (UsuarioActual.CveEmpresa = 172)
DivMostrarCgame2.Visible = (UsuarioActual.CveEmpresa = 172)
If UsuarioActual.CveEmpresa = 2 AndAlso UsuarioActual.CveUsuario.Contiene(77, 21) Then Response.Redirect("/Inicio.aspx")
SetValues()
CargaParametrosDetalle()
@@ -558,6 +559,7 @@ Partial Class Ventas_RepProductosServiciosDetalle
GvDatos.Columns(20).Visible = ChkOC_noOrden.Checked
GvDatos.Columns(21).Visible = ChkOC_Kilogramos.Checked
GvDatos.Columns(22).Visible = ChkOC_Cantidad.Checked
GvDatos.Columns(23).Visible = ChkNoManifiesto.Checked