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 #End Region
#Region "MovtosPermanentes" #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 Public Function GetMovtoPermanente(CveEmpresa As Int32, CvePersonal As Integer) As Boolean
Dim retorno As Boolean = False Dim retorno As Boolean = False
DataAdapter("PA_GetMovtoPermanente", CommandType.StoredProcedure) DataAdapter("PA_GetMovtoPermanente", CommandType.StoredProcedure)
@@ -3305,7 +3324,7 @@ Public Class ClsNominas
End Try End Try
Return retorno Return retorno
End Function 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 Dim retorno As Integer = 0
DataAdapter("PA_AddMovtoPermanente", CommandType.StoredProcedure) DataAdapter("PA_AddMovtoPermanente", CommandType.StoredProcedure)
@@ -3321,6 +3340,7 @@ Public Class ClsNominas
.Add("@estatus", SqlDbType.Bit).Value = (estatus) .Add("@estatus", SqlDbType.Bit).Value = (estatus)
.Add("@CveCuenta", SqlDbType.Int).Value = (CveCuenta) .Add("@CveCuenta", SqlDbType.Int).Value = (CveCuenta)
.Add("@CveIE", SqlDbType.Int).Value = (CveIE) .Add("@CveIE", SqlDbType.Int).Value = (CveIE)
.Add("@EsAcumulado", SqlDbType.Int).Value = (EsAcumulado)
.Add("@CveMovtoPermanente", SqlDbType.Int).Direction = ParameterDirection.Output .Add("@CveMovtoPermanente", SqlDbType.Int).Direction = ParameterDirection.Output
End With End With
Try Try
@@ -3335,7 +3355,7 @@ Public Class ClsNominas
End Try End Try
Return retorno Return retorno
End Function 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 Dim retorno As Boolean = False
DataAdapter("PA_UpMovtoPermanente", CommandType.StoredProcedure) DataAdapter("PA_UpMovtoPermanente", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters With SqlAdapter.SelectCommand.Parameters
@@ -3350,6 +3370,7 @@ Public Class ClsNominas
.Add("@fechaInicioAplicacion", SqlDbType.Date).Value = (fechaInicioAplicacion) .Add("@fechaInicioAplicacion", SqlDbType.Date).Value = (fechaInicioAplicacion)
.Add("@estatus", SqlDbType.Bit).Value = (estatus) .Add("@estatus", SqlDbType.Bit).Value = (estatus)
.Add("@CveCuenta", SqlDbType.Int).Value = (CveCuenta) .Add("@CveCuenta", SqlDbType.Int).Value = (CveCuenta)
.Add("@EsAcumulado", SqlDbType.Int).Value = (EsAcumulado)
End With End With
Try Try
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)

View File

@@ -8135,6 +8135,7 @@ Public Class ClsPaginas
Return Nothing Return Nothing
End If End If
Dim CveNomina As Integer = ObjNomina.CveNomina Dim CveNomina As Integer = ObjNomina.CveNomina
Dim RFCPackCertifica As String = ""
Dim DTPercepciones As Data.DataTable Dim DTPercepciones As Data.DataTable
Dim DTDeducciones As Data.DataTable Dim DTDeducciones As Data.DataTable
Dim DTDeducciones2 As New Data.DataTable Dim DTDeducciones2 As New Data.DataTable
@@ -8165,8 +8166,18 @@ Public Class ClsPaginas
If System.IO.File.Exists(PathXML) Then If System.IO.File.Exists(PathXML) Then
Dim XmlDoc As New System.Xml.XmlDocument Dim XmlDoc As New System.Xml.XmlDocument
'XmlDoc.Load(Ruta & "XML\\Nomina\NOM A-3845.xml") '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) XmlDoc.Load(PathXML)
If ValorNodoXML(XmlDoc.DocumentElement, "version").Contiene("3.3", "4.0") Then If ValorNodoXML(XmlDoc.DocumentElement, "version").Contiene("3.3", "4.0") Then
FechaEmision = XmlDoc.DocumentElement.Attributes("Fecha").InnerText.ToDate FechaEmision = XmlDoc.DocumentElement.Attributes("Fecha").InnerText.ToDate
NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("NoCertificado").InnerText NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("NoCertificado").InnerText
@@ -8408,6 +8419,10 @@ Public Class ClsPaginas
Dim Archivo As New System.IO.FileInfo(RutaFormato) Dim Archivo As New System.IO.FileInfo(RutaFormato)
If Not TieneError Then If Not TieneError Then
If Archivo.Exists 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) 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)) Dim ArchivoPDF As New System.IO.FileInfo(String.Format("{0}PDF\\{1}.pdf", RutaEmpresa, ObjNomina.SerieFolio))
If Not ArchivoPDF.Exists Then 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" #Region "E X T E N S I O N E S"
Public Module ModExtensiones Public Module ModExtensiones
Public ReadOnly Property foreign_characters As Dictionary(Of String, String) Public ReadOnly Property foreign_characters As Dictionary(Of String, String)
Get Get
Dim fgk As Dictionary(Of String, String) = New Dictionary(Of String, String) From { Dim fgk As Dictionary(Of String, String) = New Dictionary(Of String, String) From {
@@ -3771,6 +3772,20 @@ Namespace Extensiones
text = str.Replace("&", "&") text = str.Replace("&", "&")
Return text 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 Function
End Module End Module
#End Region #End Region

View File

@@ -794,6 +794,8 @@
<asp:Label ID="LblAsisProyecto" AssociatedControlID="DdlAsisProyecto" runat="server" Text="Proyecto:"></asp:Label> <asp:Label ID="LblAsisProyecto" AssociatedControlID="DdlAsisProyecto" runat="server" Text="Proyecto:"></asp:Label>
</div> </div>
</asp:Panel> </asp:Panel>
</div>
<div class="row">
<asp:Panel ID="PnlSubProyecto" CssClass="col-md-12" runat="server"> <asp:Panel ID="PnlSubProyecto" CssClass="col-md-12" runat="server">
<div class="form-group form-md-line-input input-iconright"> <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"> <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>
<div class="modal-footer"> <div class="modal-footer">
<asp:UpdatePanel runat="server" UpdateMode="Conditional"> <asp:LinkButton ID="LnkGuardarASistencia" OnClick="LnkGuardarASistencia_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
<ContentTemplate>
<asp:LinkButton ID="LnkGuardarASistencia" OnClick="LnkGuardarASistencia_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
</ContentTemplate>
</asp:UpdatePanel>
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>
@@ -1390,7 +1388,7 @@
<asp:GridView ID="GVMovtoPermanente" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall " AutoGenerateColumns="False" <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" 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> <Columns>
<asp:TemplateField HeaderText="Descripción"> <asp:TemplateField HeaderText="Descripción">
<ItemTemplate> <ItemTemplate>
@@ -1419,7 +1417,7 @@
<asp:TemplateField HeaderText="Monto limite" ItemStyle-HorizontalAlign="Right"> <asp:TemplateField HeaderText="Monto limite" ItemStyle-HorizontalAlign="Right">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click" <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> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Saldo" ItemStyle-HorizontalAlign="Right"> <asp:TemplateField HeaderText="Saldo" ItemStyle-HorizontalAlign="Right">
@@ -1444,6 +1442,8 @@
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</ContentTemplate> </ContentTemplate>
@@ -2182,6 +2182,207 @@
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button> <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div> </div>
</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> </ContentTemplate>
<Triggers> <Triggers>
<%--<asp:PostBackTrigger ControlID="BtnImprimirsobrerecibo" />--%> <%--<asp:PostBackTrigger ControlID="BtnImprimirsobrerecibo" />--%>
@@ -4359,132 +4560,7 @@
</asp:TemplateField> </asp:TemplateField>
</Columns> </Columns>
</asp:GridView> </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> </div>
</div> </div>
@@ -5101,7 +5177,7 @@
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
<div id="divPersonalizarNomina" class="modal ADS fade" role="dialog"> <div id="divPersonalizarNomina" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpPersonalizarxls" class="modal-dialog modal" tabindex="-1" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpPersonalizarxls" class="modal-dialog modal" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
@@ -5114,11 +5190,11 @@
<asp:Label runat="server" ID="Label12" Text="Personalizar"></asp:Label> <asp:Label runat="server" ID="Label12" Text="Personalizar"></asp:Label>
</h4> </h4>
</div> </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="portlet-title">
<div class="caption font-green"> <div class="caption font-green">
<i class="icon-pin font-green"></i> <i class="icon-pin font-green"></i>
@@ -5130,24 +5206,24 @@
</div> </div>
</div> </div>
<div class="portlet-body"> <div class="portlet-body">
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
<div class="form-group form-md-line-input input-iconright"> <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%" <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"> DataTextField="Columna" DataValueField="ColumnaDB" ValidationGroup="GrpGuardarOrder">
<asp:ListItem Selected="True" Text="campo Libre" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="campo Libre" Value="-1"></asp:ListItem>
<asp:ListItem Text="Percepciones" Value="1"></asp:ListItem> <asp:ListItem Text="Percepciones" Value="1"></asp:ListItem>
<asp:ListItem Text="deducciones" Value="2"></asp:ListItem> <asp:ListItem Text="deducciones" Value="2"></asp:ListItem>
<asp:ListItem Text="obligacion" Value="3"></asp:ListItem> <asp:ListItem Text="obligacion" Value="3"></asp:ListItem>
<asp:ListItem Text="Datos Personal" Value="4"></asp:ListItem> <asp:ListItem Text="Datos Personal" Value="4"></asp:ListItem>
</asp:DropDownList> </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> </div>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
@@ -5156,7 +5232,7 @@
<asp:ListItem Text="Ocultar" Value="0"></asp:ListItem> <asp:ListItem Text="Ocultar" Value="0"></asp:ListItem>
</asp:DropDownList>--%> </asp:DropDownList>--%>
<asp:TextBox ID="TxtTitulo" CssClass="form-control" runat="server"></asp:TextBox> <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>
</div> </div>
@@ -5166,7 +5242,7 @@
DataTextField="Columna" DataValueField="ColumnaDB" ValidationGroup="GrpGuardarOrder"> DataTextField="Columna" DataValueField="ColumnaDB" ValidationGroup="GrpGuardarOrder">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:Label runat="server" Text="Columna:" AssociatedControlID="DdlMOPXColumna"></asp:Label> <asp:Label runat="server" Text="Columna:" AssociatedControlID="DdlMOPXColumna"></asp:Label>
</div> </div>
</div> </div>
@@ -5205,202 +5281,6 @@
</Triggers> </Triggers>
</asp:UpdatePanel> </asp:UpdatePanel>
</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>
</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="TxtCvePeriodo" CssClass="TxtCvePeriodo hidden" runat="server"></asp:TextBox>
<asp:TextBox ID="TxtCvePersonal" CssClass="TxtCvePersonal 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" /> <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; } set { ViewState["DtNomOcultarMostrar"] = value; }
} }
private DataTable DtNomPersonalizarxls private DataTable DtNomPersonalizarxls
{ {
get get
@@ -2642,10 +2642,92 @@ public partial class Nomina_Nomina2 : ClsPaginas
}//ImgDelete }//ImgDelete
protected void LnkReenviarCorreoSobreRecibo_Click(object sender, EventArgs e) 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) 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) public void showhideaccionesSR(bool cargadatos = false)
{ {
@@ -4836,7 +4918,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtColumnas = GetTablaColumnasConceptos(); DataTable dtColumnas = GetTablaColumnasConceptos();
DdlMOPXColumna.DataSource = dtColumnas; DdlMOPXColumna.DataSource = dtColumnas;
DdlMOPXColumna.DataBind(); DdlMOPXColumna.DataBind();
{ {
addcoltopersonalizar("Codigo", "0", "Codigo", ""); 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)// 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)) 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()); 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(); 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) protected void LnkFormatoPersonalizado_Click(object sender, EventArgs e)
{ {
try try
{ {
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook(); 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"); var libro = wb.AddWorksheet("Nomina");
int column = 1; int column = 1;
int filainicio = 3; int filainicio = 3;
@@ -4968,71 +5106,88 @@ public partial class Nomina_Nomina2 : ClsPaginas
libro.Range(2, 2, 2, 4).Merge().Value = periodo; libro.Range(2, 2, 2, 4).Merge().Value = periodo;
int iniciotipe = column; int iniciotipe = column;
int incioConceptos = iniciotipe + 1;
column++; column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "Mensual"; Titlecell(libro, "Mensual", filainicio + 2, column, true, false, PercborderColor);
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "Sueldo"; Titlecell(libro, "Sueldo", filainicio + 3, column, false, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15; libro.Column(column).Width = 15;
column++; column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "Sueldo"; Titlecell(libro, "Sueldo", filainicio + 2, column, true, false, PercborderColor);
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "diario"; Titlecell(libro, "diario", filainicio + 3, column, false, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15; libro.Column(column).Width = 15;
column++; column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "dias Pen"; Titlecell(libro, "dias Pen", filainicio + 2, column, true, false, PercborderColor);
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "Pago"; Titlecell(libro, "Pago", filainicio + 3, column, false, true, PercborderColor);
Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor);
libro.Column(column).Width = 15; libro.Column(column).Width = 15;
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo ='P' AND EsPadre = 1 AND SoloVisible =0").Rows) foreach (DataRow row in dtConceptos.FiltraParametros("Tipo ='P' AND EsPadre = 1 AND SoloVisible =0").Rows)
{ {
column++; 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)) if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0))
{ {
libro.Column(column).Hide(); 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; iniciotipe = column;
int finPercepciones = iniciotipe;
column++; column++;
libro.Range(filainicio + 2, column, filainicio + 2, column).Merge().Value = "Incapacidad"; TitleRange(libro, "Incapacidad", filainicio + 2, column, filainicio + 2, column, true, false, dedcborderColor);
libro.Range(filainicio + 3, column, filainicio + 3, column).Merge().Value = "Perm. Faltas"; 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; libro.Column(column).Width = 15;
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' AND EsPadre = 1 AND SoloVisible =0").Rows) foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' AND EsPadre = 1 AND SoloVisible =0").Rows)
{ {
column++; 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)) if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0))
{ {
libro.Column(column).Hide(); 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++; column++;
//libro.Range(filainicio + 2, column, filainicio + 3, column).Merge().Value = "Deducciones"; TitleRange(libro, "Deducciones", filainicio + 2, column, filainicio + 3, column, true, true, dedcborderColor);
//libro.Column(column).Width = 15; libro.Column(column).Width = 15;
if (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).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center; TitleRange(libro, "Deducciones", filainicio + 1, iniciotipe + 1, filainicio + 1, column, true, true, dedcborderColor);
// libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Merge().Value = "Deducciones"; Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor);
//} }
int findeducciones = column;
//column++; //column++;
//libro.Cell(filainicio + 1, column).Value = " "; //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.Range(filainicio + 2, column, filainicio + 3, column).Merge().Value = "Total";
libro.Column(column).Width = 15; libro.Column(column).Width = 15;
iniciotipe = column; 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; 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 Fila = filainicio + 3;
int cveSupProyecto = -5; int cveSupProyecto = -5;
@@ -5068,7 +5214,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
int oldcveSupProyecto = -5; int oldcveSupProyecto = -5;
bool newsubproyecto = false; bool newsubproyecto = false;
bool newsubproyectoTitulo = false; bool newsubproyectoTitulo = false;
List<int> filasborrar= new List<int>(); List<int> filasborrar = new List<int>();
DataTable dtsr = dtempleados.FiltraParametros("", "CveSubProyecto"); DataTable dtsr = dtempleados.FiltraParametros("", "CveSubProyecto");
dtsr.Rows.Add(dtsr.NewRow()); dtsr.Rows.Add(dtsr.NewRow());
foreach (DataRow erow in dtsr.Rows) foreach (DataRow erow in dtsr.Rows)
@@ -5107,6 +5253,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++; column++;
libro.Cell(Fila, column).Value = erow["SalarioDiario"]; libro.Cell(Fila, column).Value = erow["SalarioDiario"];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
column++; column++;
libro.Cell(Fila, column).Value = ""; libro.Cell(Fila, column).Value = "";
@@ -5115,22 +5262,32 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++; column++;
string Concepto = string.Format("V_{0}", row["CveConcepto"]); string Concepto = string.Format("V_{0}", row["CveConcepto"]);
libro.Cell(Fila, column).Value = erow[Concepto]; libro.Cell(Fila, column).Value = erow[Concepto];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
if (newsubproyecto) if (newsubproyecto)
{ {
libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); 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++; column++;
//libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166)); libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorperp);
//libro.Cell(Fila, column).Value = erow["SumaPercepciones"]; Titlecell(libro, erow["SumaPercepciones"], Fila, column, false, false, PercborderColor);
//if (newsubproyecto) libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
//{ libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
// libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); 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++; column++;
@@ -5140,20 +5297,30 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++; column++;
string Concepto = string.Format("V_{0}", row["CveConcepto"]); string Concepto = string.Format("V_{0}", row["CveConcepto"]);
libro.Cell(Fila, column).Value = erow[Concepto]; libro.Cell(Fila, column).Value = erow[Concepto];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
if (newsubproyecto) if (newsubproyecto)
{ {
libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); 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++; column++;
//libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166)); libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorded);
//libro.Cell(Fila, column).Value = erow["SumaDeducciones"]; Titlecell(libro, erow["SumaDeducciones"], Fila, column, false, false, dedcborderColor);
//if (newsubproyecto) libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
//{ libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
// libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); 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++; //column++;
//libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166)); //libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166));
//libro.Cell(Fila, column).Value = erow["SumaEspecie"]; //libro.Cell(Fila, column).Value = erow["SumaEspecie"];
@@ -5164,8 +5331,12 @@ public partial class Nomina_Nomina2 : ClsPaginas
column++; column++;
libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166)); 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).Value = erow["Total"];
libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\"";
if (newsubproyecto) 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)); 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>(); var columnsToDelete = new List<int>();
foreach (var columnx in libro.Columns()) foreach (var columnx in libro.Columns())
@@ -5211,11 +5381,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
libro.Column(columnNumber).Delete(); libro.Column(columnNumber).Delete();
} }
} }
int primera = filasborrar.First();
filasborrar.Remove(primera);
filasborrar.Reverse(); filasborrar.Reverse();
foreach (int rownumber in filasborrar) 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(); System.IO.Stream fs = new System.IO.MemoryStream();
wb.SaveAs(fs); wb.SaveAs(fs);
fs.Position = 0; fs.Position = 0;
@@ -10525,7 +10698,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
StringBuilder SbErrores = new StringBuilder(); StringBuilder SbErrores = new StringBuilder();
bool ErroresValidaciones = false; bool ErroresValidaciones = false;
int modalidadnomina = 1; 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/>"); 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(); UpDatos.Update();
} }
protected void ddltipoPersonalizar_SelectedIndexChanged(object sender, EventArgs e)
{
}
} }

View File

@@ -433,9 +433,11 @@
<%--20--%> <%--20--%>
<asp:BoundField HeaderText="O. C." DataField="OC_noOrden" ItemStyle-Width="5%" Visible="false" /> <asp:BoundField HeaderText="O. C." DataField="OC_noOrden" ItemStyle-Width="5%" Visible="false" />
<%--21--%> <%--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--%> <%--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> </Columns>
<RowStyle CssClass="Texto" /> <RowStyle CssClass="Texto" />
<HeaderStyle CssClass="Titulos" /> <HeaderStyle CssClass="Titulos" />
@@ -477,7 +479,7 @@
<asp:CheckBox ID="ChkFormaPago" runat="server" Text="Forma de Pago" /> <asp:CheckBox ID="ChkFormaPago" runat="server" Text="Forma de Pago" />
</td> </td>
</tr> </tr>
<tr> <tr runat="server" id="DivMostrarCgame">
<td style="text-align: left;"> <td style="text-align: left;">
<asp:CheckBox ID="ChkOC_noOrden" runat="server" Text="O. C." /> <asp:CheckBox ID="ChkOC_noOrden" runat="server" Text="O. C." />
</td> </td>
@@ -493,11 +495,12 @@
<td style="text-align: left;"> <td style="text-align: left;">
<asp:CheckBox ID="ChkFechaHoraEmision" runat="server" Text="Fecha Hora de Emisión" /> <asp:CheckBox ID="ChkFechaHoraEmision" runat="server" Text="Fecha Hora de Emisión" />
</td> </td>
<td style="text-align: left;"> <td style="text-align: left;" runat="server" id="DivMostrarCgame2">
<asp:CheckBox ID="ChkNumTurnos" runat="server" Text="Número de turnos" Visible="false" /> <asp:CheckBox ID="ChkNoManifiesto" runat="server" Text="Manifiesto" />
</td> </td>
<td style="text-align: left;"> <td style="text-align: left;">
<asp:CheckBox ID="ChkNumTurnos" runat="server" Text="Número de turnos" Visible="false" />
</td> </td>
</tr> </tr>
</tbody> </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 Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then 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") If UsuarioActual.CveEmpresa = 2 AndAlso UsuarioActual.CveUsuario.Contiene(77, 21) Then Response.Redirect("/Inicio.aspx")
SetValues() SetValues()
CargaParametrosDetalle() CargaParametrosDetalle()
@@ -558,6 +559,7 @@ Partial Class Ventas_RepProductosServiciosDetalle
GvDatos.Columns(20).Visible = ChkOC_noOrden.Checked GvDatos.Columns(20).Visible = ChkOC_noOrden.Checked
GvDatos.Columns(21).Visible = ChkOC_Kilogramos.Checked GvDatos.Columns(21).Visible = ChkOC_Kilogramos.Checked
GvDatos.Columns(22).Visible = ChkOC_Cantidad.Checked GvDatos.Columns(22).Visible = ChkOC_Cantidad.Checked
GvDatos.Columns(23).Visible = ChkNoManifiesto.Checked