This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2021-06-26 11:20:20 -07:00
parent 3fe555def5
commit 0382dfc1e3
12 changed files with 1052 additions and 76 deletions

View File

@@ -134,7 +134,7 @@ public partial class Nomina_Finiquito : ClsPaginas
HypCodigo.Text = drow["Codigo"].ToString();
HypEmpleado.Text = drow["NombreCompleto"].ToString();
HypCodigo.NavigateUrl =$"/RH/Personal.aspx?CvePersonal={drow["CvePersonal"]}";
HypCodigo.NavigateUrl = $"/RH/Personal.aspx?CvePersonal={drow["CvePersonal"]}";
LblPuesto.Text = drow["Puesto"].ToString();
LblSalario.Text = drow["SalarioDiario"].ToString();
LtlAreaGeografica.Text = drow["AreaGeografica"].ToString();
@@ -147,7 +147,7 @@ public partial class Nomina_Finiquito : ClsPaginas
FechaInicio = LblFechaAlta.Text.ToDateTime();
TxtFechaBaja.Text = string.Format("{0:dd/MM/yyyy}", da["FechaFin"]);
{
if(da["CveMotivoBaja"].ToString() == "")
if (da["CveMotivoBaja"].ToString() == "")
{
chkIndemnizacion.Checked = true;
chkSeparacionUnica.Checked = true;
@@ -158,18 +158,19 @@ public partial class Nomina_Finiquito : ClsPaginas
chkIndemnizacion.Checked = da["ValIndemnizacion"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" });
chkSeparacionUnica.Checked = da["ValSeparacionunica"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" });
chkPrimaantiguedad.Checked = da["ValPrimadeantiguedad"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" });
}
}
}
DdlMotivoBaja.SelectedValueExist(da["CveMotivoBaja"]);
TxtSalarioMinimo.Text = $"{da["SalarioMinimo"]:N2}" ;
TxtSalarioMinimo.Text = $"{da["SalarioMinimo"]:N2}";
ChkesLiquidacion.Checked = (da["esLiquidacion"].ToString() == "1" || da["esLiquidacion"].ToString().ToUpper() == "TRUE");
CvePeriodoIndemnizacion = da["CvePeriodoIndemnizacion"].ToString().ToEntero();
CvePeriodoFiniquito = da["CvePeriodoFiniquito"].ToString().ToEntero();
if (CvePeriodoIndemnizacion > 0)
if (CvePeriodoFiniquito > 0)
{
LnkCancelar.Visible = true;
LnkSimular.Visible = false;
using (ClsNominas onom = new ClsNominas())
{
loadsobrerecibo(onom);
@@ -208,17 +209,17 @@ public partial class Nomina_Finiquito : ClsPaginas
{
decimal retorno = 0;
decimal mes =12;
retorno =(fechafin.Year -fechainicio.Year ) - (fechafin.Month > fechainicio.Month ? 0 : (fechafin.Month == fechainicio.Month && fechafin.Day > fechainicio.Day ? 0 : 1));
retorno +=(((fechafin.Month == fechainicio.Month && fechafin.Day > fechainicio.Day ? fechainicio.Month : fechafin.Month + (fechafin.Month > fechainicio.Month ? 0 : 12)) - fechainicio.Month) / mes);
/* DateTime zeroTime = new DateTime(1, 1, 1);
TimeSpan span;
if (fechainicio < fechafin)
{
span = fechafin - fechainicio;
decimal years = (zeroTime + span).Year - 1;
retorno = Math.Round(years + (span.TotalDays.ToString().ToDecimal() / 365), 4);
}*/
decimal mes = 12;
retorno = (fechafin.Year - fechainicio.Year) - (fechafin.Month > fechainicio.Month ? 0 : (fechafin.Month == fechainicio.Month && fechafin.Day > fechainicio.Day ? 0 : 1));
retorno += (((fechafin.Month == fechainicio.Month && fechafin.Day > fechainicio.Day ? fechainicio.Month : fechafin.Month + (fechafin.Month > fechainicio.Month ? 0 : 12)) - fechainicio.Month) / mes);
/* DateTime zeroTime = new DateTime(1, 1, 1);
TimeSpan span;
if (fechainicio < fechafin)
{
span = fechafin - fechainicio;
decimal years = (zeroTime + span).Year - 1;
retorno = Math.Round(years + (span.TotalDays.ToString().ToDecimal() / 365), 4);
}*/
return retorno;
}
@@ -232,7 +233,7 @@ public partial class Nomina_Finiquito : ClsPaginas
{
using (ClsNominas onom = new ClsNominas())
{
if (onom.DeleteNom_NominasDetalles(SRCveConcepto, CvePersonal, CvePeriodoIndemnizacion))
if (onom.DeleteNom_NominasDetalles(SRCveConcepto, CvePersonal, CvePeriodoFiniquito))
{
Alert("el importe sera tomado del calculo y no del valor fijo");
}
@@ -294,7 +295,7 @@ public partial class Nomina_Finiquito : ClsPaginas
}
protected void DdlmcConceptos_SelectedIndexChanged(object sender, EventArgs e)
{
{
int CveConcepto = DdlmcConceptos.SelectedValue.ToEntero();
TxtmcImporte.Text = "";
TxtmcImporteGrabado.Text = "";
@@ -806,7 +807,7 @@ public partial class Nomina_Finiquito : ClsPaginas
double percepcionesindem = 0;
double deduccionesindem = 0;
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo IN ('P') AND EsPadre = 1 And CveSistema IN(10,11,32) ").Rows)
{
{
int CveConcepto = row["CveConcepto"].ToString().ToEntero();
string Concepto = row["Concepto"].ToString();
string Codigo = row["Codigo"].ToString();
@@ -902,15 +903,15 @@ public partial class Nomina_Finiquito : ClsPaginas
SubTotales.CveConceptoP = 0;
SubTotales.ConceptoP = "Total Percepciones";
SubTotales.EstatusP = -2;
SubTotales.ImporteP = dtempleados.SUM("SumaPercepciones", string.Format("CvePersonal = {0}", SRCvePersonal))- percepcionesindem;
SubTotales.ImporteP = dtempleados.SUM("SumaPercepciones", string.Format("CvePersonal = {0}", SRCvePersonal)) - percepcionesindem;
///Alert(SubTotales.ImporteP.ToString());
SubTotales.CveConceptoD = 0;
SubTotales.ConceptoD = "Total Deducciones";
SubTotales.EstatusD = -2;
SubTotales.ImporteD = dtempleados.SUM("SumaDeducciones", string.Format("CvePersonal = {0}", SRCvePersonal))- deduccionesindem;
SubTotales.ImporteD = dtempleados.SUM("SumaDeducciones", string.Format("CvePersonal = {0}", SRCvePersonal)) - deduccionesindem;
double neto = SubTotales.ImporteP - SubTotales.ImporteD;
NConcepto Totales = new NConcepto();
Totales.CveConceptoD = 0;
@@ -1026,14 +1027,14 @@ public partial class Nomina_Finiquito : ClsPaginas
SubTotales.CveConceptoP = 0;
SubTotales.ConceptoP = "Total Percepciones";
SubTotales.EstatusP = -2;
SubTotales.ImporteP = percepcionesindem;
SubTotales.ImporteP = percepcionesindem;
///Alert(SubTotales.ImporteP.ToString());
SubTotales.CveConceptoD = 0;
SubTotales.ConceptoD = "Total Deducciones";
SubTotales.EstatusD = -2;
SubTotales.ImporteD = deduccionesindem;
SubTotales.ImporteD = deduccionesindem;
double neto = SubTotales.ImporteP - SubTotales.ImporteD;
NConcepto Totales = new NConcepto();
@@ -1062,15 +1063,15 @@ public partial class Nomina_Finiquito : ClsPaginas
using (ClsRH ObjPersonal = new ClsRH())
using (ClsNominas onom = new ClsNominas(ObjPersonal.IniciaTransacSQL()))
{
if (continuar =ObjPersonal.UpPersonalAltas(CvePersonal, "", TxtFechaBaja.Text.ToDateTime().ToString("yyyy/MM/dd"), -1, DdlMotivoBaja.SelectedValue.ToEntero(), ChkesLiquidacion.Checked,chkIndemnizacion.Checked ,chkSeparacionUnica.Checked, chkPrimaantiguedad.Checked) && ObjPersonal.GetPersonalAltas(CvePersonal) && ObjPersonal.DtResultados.Rows.Count > 0)
if (continuar = ObjPersonal.UpPersonalAltas(CvePersonal, "", TxtFechaBaja.Text.ToDateTime().ToString("yyyy/MM/dd"), -1, DdlMotivoBaja.SelectedValue.ToEntero(), ChkesLiquidacion.Checked, chkIndemnizacion.Checked, chkSeparacionUnica.Checked, chkPrimaantiguedad.Checked) && ObjPersonal.GetPersonalAltas(CvePersonal) && ObjPersonal.DtResultados.Rows.Count > 0)
{
DataRow da = ObjPersonal.DtResultados.Rows[0];
CvePeriodoIndemnizacion = da["CvePeriodoIndemnizacion"].ToString().ToEntero();
CvePeriodoFiniquito = da["CvePeriodoFiniquito"].ToString().ToEntero();
CvePeriodoFiniquito = da["CvePeriodoFiniquito"].ToString().ToEntero();
}
if (continuar)
{
continuar = onom.GetFiniquitosPersonal(CvePersonal, UsuarioActual.CveEmpresa,diasindemnizacion:Txtdiasindemnizacion.Text.ToEntero());
continuar = onom.GetFiniquitosPersonal(CvePersonal, UsuarioActual.CveEmpresa, diasindemnizacion: Txtdiasindemnizacion.Text.ToEntero());
}
if (continuar)
{
@@ -1081,7 +1082,7 @@ public partial class Nomina_Finiquito : ClsPaginas
ObjPersonal.RollBack();
}
if (continuar)
{ loadsobrerecibo(onom); }
{ loadsobrerecibo(onom);LnkCancelar.Visible = true; LnkSimular.Visible = false; }
}
}
@@ -1291,7 +1292,9 @@ public partial class Nomina_Finiquito : ClsPaginas
{
if (onom.RemoveFiniquito(CvePersonal, UsuarioActual.CveEmpresa, CvePersonalAltas))
{
loadsobrerecibo(onom);
Alert("se ha eliminado el proceso de finiquito");
UPDatos.Update();
}
}
}
@@ -1310,7 +1313,7 @@ public partial class Nomina_Finiquito : ClsPaginas
using (ClsRH ObjPersonal = new ClsRH())
using (ClsNominas onom = new ClsNominas(ObjPersonal.IniciaTransacSQL()))
{
if (continuar =ObjPersonal.UpPersonalAltas(CvePersonal, "", TxtFechaBaja.Text.ToDateTime().ToString("yyyy/MM/dd"), -1, DdlMotivoBaja.SelectedValue.ToEntero(), ChkesLiquidacion.Checked, chkIndemnizacion.Checked, chkSeparacionUnica.Checked, chkPrimaantiguedad.Checked) && ObjPersonal.GetPersonalAltas(CvePersonal) && ObjPersonal.DtResultados.Rows.Count > 0)
if (continuar = ObjPersonal.UpPersonalAltas(CvePersonal, "", TxtFechaBaja.Text.ToDateTime().ToString("yyyy/MM/dd"), -1, DdlMotivoBaja.SelectedValue.ToEntero(), ChkesLiquidacion.Checked, chkIndemnizacion.Checked, chkSeparacionUnica.Checked, chkPrimaantiguedad.Checked) && ObjPersonal.GetPersonalAltas(CvePersonal) && ObjPersonal.DtResultados.Rows.Count > 0)
{
DataRow da = ObjPersonal.DtResultados.Rows[0];
CvePeriodoIndemnizacion = da["CvePeriodoIndemnizacion"].ToString().ToEntero();
@@ -1335,7 +1338,7 @@ public partial class Nomina_Finiquito : ClsPaginas
}
UPDatos.Update();
}
protected void BtnAceptarMC_Click(object sender, EventArgs e)
{
@@ -1356,7 +1359,7 @@ public partial class Nomina_Finiquito : ClsPaginas
objNomina.IniciaTransacSQL();
if (continuar)
{
if (objNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodoIndemnizacion, -1, UsuarioActual.CveEmpresa))
if (objNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodoFiniquito, -1, UsuarioActual.CveEmpresa))
{
if (objNomina.DtResultados.Rows.Count > 0)
{
@@ -1364,7 +1367,7 @@ public partial class Nomina_Finiquito : ClsPaginas
}
else
{
if (objNomina.AddNom_Nominas(-1, 1, CvePersonal, CvePeriodoIndemnizacion, Total, 0, 0, Total, CveMoneda, 1, CveMetodoPago, DateTime.Now, "Deducciones nómina",
if (objNomina.AddNom_Nominas(-1, 1, CvePersonal, CvePeriodoFiniquito, Total, 0, 0, Total, CveMoneda, 1, CveMetodoPago, DateTime.Now, "Deducciones nómina",
"", "", "", "", 0, 0, 0, new DateTime(), new DateTime(), new DateTime(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, false))
{
CveNomina = objNomina.CveNomina;
@@ -1389,7 +1392,7 @@ public partial class Nomina_Finiquito : ClsPaginas
if (continuar)
{
if (!objNomina.AddUPNom_NominasDetalles(CveNomina, CvePeriodoIndemnizacion, CvePersonal, CveConcepto, ImporteConcepto, ImporteGravadoConcepto, ImporteExentoConcepto, ImporteValor, UsuarioActual.CveUsuario, true))
if (!objNomina.AddUPNom_NominasDetalles(CveNomina, CvePeriodoFiniquito, CvePersonal, CveConcepto, ImporteConcepto, ImporteGravadoConcepto, ImporteExentoConcepto, ImporteValor, UsuarioActual.CveUsuario, true))
{
continuar = false;
}
@@ -1424,6 +1427,7 @@ public partial class Nomina_Finiquito : ClsPaginas
Alert("Debe seleccionar un concepto.", TipoMensaje.MsgAdvertencia);
}
}
UPDatos.Update();
}

207
Nomina/NomTimbrados.aspx Normal file
View File

@@ -0,0 +1,207 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="NomTimbrados.aspx.cs" Inherits="Nomina_NomTimbrados" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" Runat="Server">
<style>
table {
background-color:white;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
Reporte SAT
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter">
<div class="portlet-title portlet-filterT smalltitle">
<div class="titlefiltros caption">
<div class="row">
<label class="col-md-1 hidden">Tipo Período:</label>
<div class="col-md-2 hidden">
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" CssClass="select2me" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" Style="width: 100% !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 mediocol">del:</label>
<div class="col-md-2">
<div class="form-group input-iconright">
<asp:TextBox ID="TxtRpdFechaInicio" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<ajax:MaskedEditExtender ID="MaskedEditExtender3" runat="server" TargetControlID="TxtRpdFechaInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender3" TargetControlID="TxtRpdFechaInicio" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaInicio" runat="server" ControlToValidate="TxtRpdFechaInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaInicio"></ajax:ValidatorCalloutExtender>
</div>
</div>
<label class="col-md-1 mediocol">al:</label>
<div class="col-md-2">
<div class="form-group input-iconright">
<asp:TextBox ID="TxtRpdFechaFin" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<ajax:MaskedEditExtender ID="MaskedEditExtender5" runat="server" TargetControlID="TxtRpdFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender4" TargetControlID="TxtRpdFechaFin" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaFin" runat="server" ControlToValidate="TxtRpdFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaFin"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-1">
<asp:LinkButton ID="LnkConsultar" OnClick="LnkConsultar_Click" runat="server" Text="Consultar" Visible="true" class="btn btn-primary" />
</div>
</div>
</div>
<div class="tools">
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="Updatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table id="headerProcesaSUA" style="display: none">
<tr>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
<th > </th>
</tr>
<tr>
<th >Nombre</th>
<th >RFC</th>
<th >Fecha timbrado</th>
<th >FolioFiscal</th>
<th colspan="2">Total</th>
<th colspan="2">SubTotal</th>
<th colspan="2">Total sueldo</th>
<th colspan="2">Total gravado</th>
<th colspan="2">Total excento</th>
<th colspan="2">otras deducciones</th>
<th colspan="2">Total ISR</th>
</tr>
</table>
<asp:GridView ID="GVNominasXmlsat" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="Tipo,NumeroSS,RFC" ShowHeaderWhenEmpty="true" data-tableheader="#headerProcesaSUA" OnRowDataBound="GVNominasXmlsat_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="" ShowHeader ="false">
<ItemTemplate>
<asp:Label ID="lblcodigoNombreCompleto" runat="server" Text='<%# string.Format ("{0} {1}", Eval("Codigo"), Eval("NombreCompleto"))%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="" ItemStyle-Width="100" ShowHeader ="false">
<ItemTemplate>
<asp:Label ID="lblRFC" runat="server" Text='<%# Eval("RFC")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="" ItemStyle-Width="100" ShowHeader ="false">
<ItemTemplate>
<asp:Label ID="lblfecha" runat="server" Text='<%# Eval("fechatimbrado","{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="" ItemStyle-Width="100" ShowHeader ="false">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FolioFiscal")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SAT">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Total","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("TotalSIG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SAT">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("SubTotal","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("SubTotalSIG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SAT">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("TotalSueldo","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("TotalSueldoSIG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SAT">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("SubTotalG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("SubTotalGSIG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SAT">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Totalexento","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("TotalexentoSIG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SAT">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("totalotrasdeducciones","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("totalotrasdeduccionesSIG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SAT">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("TotalISR","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SIG">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("TotalISRSIG","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

667
Nomina/NomTimbrados.aspx.cs Normal file
View File

@@ -0,0 +1,667 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using Extensiones;
using System.Xml;
public partial class Nomina_NomTimbrados : ClsPaginas
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
TxtRpdFechaInicio.Text = string.Format(" {0:dd/MM/yyyy}", DateTime.Now.AddMonths(-1).FirstDayOfMonth());
TxtRpdFechaFin.Text = string.Format(" {0:dd/MM/yyyy}", DateTime.Now.AddMonths(-1).LastDayOfMonth());
// readTimbres();
}
}
public DataTable initxmldatatable()
{
DataTable dt = new DataTable();
dt.Columns.Add("NOMBREReceptor", typeof(String));
dt.Columns.Add("nrnumseguridadsocial", typeof(String));
dt.Columns.Add("RFCReceptor", typeof(String));
dt.Columns.Add("nrcurp", typeof(String));
dt.Columns.Add("nrnumempleado", typeof(String));
dt.Columns.Add("SERIE", typeof(String));
dt.Columns.Add("FOLIO", typeof(String));
dt.Columns.Add("TIPODECOMPROBANTE", typeof(String));
dt.Columns.Add("TOTAL", typeof(decimal));
dt.Columns.Add("SUBTOTAL", typeof(decimal));
dt.Columns.Add("DESCUENTO", typeof(decimal));
dt.Columns.Add("RFCEmisor", typeof(String));
/*I nomina12:nomina*/
dt.Columns.Add("tiponomina", typeof(String));
dt.Columns.Add("fechapago", typeof(DateTime));
dt.Columns.Add("fechainicialpago", typeof(DateTime));
dt.Columns.Add("fechafinalpago", typeof(DateTime));
dt.Columns.Add("numdiaspagados", typeof(Int32));
dt.Columns.Add("totalpercepciones", typeof(decimal));
dt.Columns.Add("totaldeducciones", typeof(decimal));
dt.Columns.Add("totalotrospagos", typeof(decimal));
/*E nomina12:nomina*/
/*I nomina12:emisor*/
dt.Columns.Add("registropatronal", typeof(String));
dt.Columns.Add("rfcpatronorigen", typeof(String));
/*E nomina12:emisor*/
/*I nomina12:receptor*/
dt.Columns.Add("nrfechainiciorellaboral", typeof(DateTime));
dt.Columns.Add("nrantiguedad", typeof(String));//antigüedad
dt.Columns.Add("nrtipocontrato", typeof(String));
dt.Columns.Add("nrsindicalizado", typeof(String));
dt.Columns.Add("nrtipojornada", typeof(String));
dt.Columns.Add("nrtiporegimen", typeof(String));
dt.Columns.Add("nrdepartamento", typeof(String));
dt.Columns.Add("nrpuesto", typeof(String));
dt.Columns.Add("nrriesgopuesto", typeof(String));
dt.Columns.Add("nrperiodicidadpago", typeof(String));
dt.Columns.Add("nrbanco", typeof(String));
dt.Columns.Add("nrcuentabancaria", typeof(String));
dt.Columns.Add("nrsalariobasecotapor", typeof(decimal));
dt.Columns.Add("nrsalariodiariointegrado", typeof(decimal));
dt.Columns.Add("nrclaveentfed", typeof(String));
/*E nomina12:receptor*/
/*I nomina12:percepciones*/
dt.Columns.Add("totalsueldos", typeof(decimal));
dt.Columns.Add("totalgravado", typeof(decimal));
dt.Columns.Add("totalexento", typeof(decimal));
/*E nomina12:percepciones*/
/*I nomina12:deducciones*/
dt.Columns.Add("totalotrasdeducciones", typeof(decimal));
dt.Columns.Add("totalimpuestosretenidos", typeof(decimal));
/*E nomina12:deducciones*/
dt.Columns.Add("uuid", typeof(String));
dt.Columns.Add("fechatimbrado", typeof(DateTime));
/*I nomina12:otrospagos*/
//dt.Columns.Add("", typeof(decimal));
/*E nomina12:otrospagos*/
return dt;
}
public string readTimbres()
{
string ruta = string.Format("{0}XML\\Nomina\\", UsuarioActual.Empresa.Ruta);
string keyComprobante = "cfdi:Comprobante";
string keyCfdiRelacionados = "cfdi:CfdiRelacionados".ToUpper();
string keyEmisor = "cfdi:Emisor".ToUpper();
string keyReceptor = "cfdi:Receptor".ToUpper();
string keyConceptos = "cfdi:Conceptos".ToUpper();
string keyImpuestos = "cfdi:Impuestos".ToUpper();
string keyComplemento = "cfdi:Complemento".ToUpper();
string[] PrimerNivel = new string[] { keyCfdiRelacionados, keyEmisor, keyReceptor, keyConceptos, keyImpuestos, keyComplemento };
XmlReaderSettings settings = new XmlReaderSettings();
settings.ConformanceLevel = ConformanceLevel.Fragment;
settings.IgnoreWhitespace = true;
settings.IgnoreComments = true;
DataTable dt = initxmldatatable();
foreach (string txtName in System.IO.Directory.GetFiles(ruta, "*.xml"))
{
DataRow drow = dt.NewRow();
bool canread = true;
using (XmlReader xtr = XmlReader.Create(txtName, settings))
{
while (canread = xtr.Read())
{
if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == keyComprobante.ToUpper())
{
int Nivel = xtr.Depth;
bool cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "SERIE": drow["SERIE"] = xtr.Value; break;
case "FOLIO": drow["FOLIO"] = xtr.Value; break;
case "SUBTOTAL": drow["SUBTOTAL"] = xtr.Value; break;
case "TOTAL": drow["TOTAL"] = xtr.Value; break;
case "DESCUENTO": drow["DESCUENTO"] = xtr.Value; break;
case "TIPODECOMPROBANTE": drow["TIPODECOMPROBANTE"] = xtr.Value; break;
}
switch (xtr.Name.ToUpper())
{
//case "XMLNS:CFDI": xmlCFDI.comprobante.xmlns_cfdi = xtr.Value; break;
//case "XMLNS:XSI": xmlCFDI.comprobante.xmlns_xsi = xtr.Value; break;
//case "XSI:SCHEMALOCATION": xmlCFDI.comprobante.xsi_schemaLocation = xtr.Value; break;
//case "VERSION": xmlCFDI.comprobante.Version = xtr.Value; break;
//case "SERIE": xmlCFDI.comprobante.Serie = xtr.Value; break;
//case "FOLIO": xmlCFDI.comprobante.Folio = xtr.Value; break;
//case "FECHA": xmlCFDI.comprobante.Fecha = xtr.Value; break;
//case "MONEDA": xmlCFDI.comprobante.Moneda = xtr.Value; break;
//case "SUBTOTAL": decimal SubTotal = 0; decimal.TryParse(xtr.Value, out SubTotal); xmlCFDI.comprobante.SubTotal = SubTotal; break;
//case "TOTAL": decimal Total = 0; decimal.TryParse(xtr.Value, out Total); xmlCFDI.comprobante.Total = Total; break;
//case "DESCUENTO": decimal Descuento = 0; decimal.TryParse(xtr.Value, out Descuento); xmlCFDI.comprobante.Descuento = Descuento; break;
//case "TIPOCAMBIO": decimal TipoCambio = 0; decimal.TryParse(xtr.Value, out TipoCambio); xmlCFDI.comprobante.TipoCambio = TipoCambio; break;
//case "TIPODECOMPROBANTE": xmlCFDI.comprobante.TipoDeComprobante = xtr.Value; break;
//case "FORMAPAGO": xmlCFDI.comprobante.FormaPago = xtr.Value; break;
//case "FORMADEPAGO": xmlCFDI.comprobante.FormaPago = xtr.Value; break;
//case "METODOPAGO": xmlCFDI.comprobante.MetodoPago = xtr.Value; break;
//case "METODODEPAGO": xmlCFDI.comprobante.MetodoPago = xtr.Value; break;
//case "CONDICIONESDEPAGO": xmlCFDI.comprobante.CondicionesDePago = xtr.Value; break;
//case "LUGAREXPEDICION": xmlCFDI.comprobante.LugarExpedicion = xtr.Value; break;
//case "CONFIRMACION": xmlCFDI.comprobante.Confirmacion = xtr.Value; break;
//case "NOCERTIFICADO": xmlCFDI.comprobante.NoCertificado = xtr.Value; break;
//case "SELLO": xmlCFDI.comprobante.Sello = xtr.Value; break;
//case "CERTIFICADO": xmlCFDI.comprobante.Certificado = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
cont = xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > Nivel)
{
if (PrimerNivel.Contains(xtr.Name.ToUpper()))
{
if (xtr.NodeType == XmlNodeType.Element && xtr.Name == keyCfdiRelacionados)
{
int cDepth = xtr.Depth;
string TipoRelacion = null;
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "TIPORELACION": TipoRelacion = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > cDepth)
{
//if (xtr.Name == "cfdi:CfdiRelacionado")
//{
// CFDIRelacionado cfdir = new CFDIRelacionado();
// cfdir.TipoRelacion = TipoRelacion;
// cfdir.UUID = xtr.GetAttribute("UUID");
// xmlCFDI.cFDIRelacionados.Add(cfdir);
//}
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
}
if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == keyEmisor.ToUpper())
{
int curentNivel = xtr.Depth;
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
//case "REGIMENFISCAL": xmlCFDI.emisor.RegimenFiscal = xtr.Value; break;
//case "NOMBRE": xmlCFDI.emisor.Nombre = xtr.Value; break;
case "RFC": drow["RFCEmisor"] = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
while ((canread = xtr.Read()) && !(xtr.NodeType == XmlNodeType.Element && curentNivel >= xtr.Depth)) { }//continua hasta que no tenga nodos y (el nodo sea tipo elemnto y ete en el mismo nivel)
}
if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == keyReceptor.ToUpper())
{
int curentNivel = xtr.Depth;
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "RFC": drow["RFCReceptor"] = xtr.Value; break;
case "NOMBRE": drow["NOMBREReceptor"] = xtr.Value; break;
//case "RESIDENCIAFISCAL": xmlCFDI.receptor.ResidenciaFiscal = xtr.Value; break;
//case "NUMREGIDTRIB": xmlCFDI.receptor.NumRegIdTrib = xtr.Value; break;
//case "USOCFDI": xmlCFDI.receptor.UsoCFDI = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
while ((canread = xtr.Read()) && !(xtr.NodeType == XmlNodeType.Element && curentNivel >= xtr.Depth)) { }//continua hasta que no tenga nodos y (el nodo sea tipo elemnto y ete en el mismo nivel)
}
if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == keyConceptos.ToUpper())
{
int cDepth = xtr.Depth;
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > cDepth)
{
if (xtr.Name == "cfdi:Concepto")
{
int cDepthb = xtr.Depth;
//CFDIConcepto concepto = new CFDIConcepto();
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
//case "CLAVEPRODSERV": concepto.ClaveProdServ = xtr.Value; break;
//case "NOIDENTIFICACION": concepto.NoIdentificacion = xtr.Value; break;
//case "CANTIDAD": concepto.Cantidad = xtr.Value; break;
//case "CLAVEUNIDAD": concepto.ClaveUnidad = xtr.Value; break;
//case "UNIDAD": concepto.Unidad = xtr.Value; break;
//case "VALORUNITARIO": decimal ValorUnitario = 0; decimal.TryParse(xtr.Value, out ValorUnitario); concepto.ValorUnitario = ValorUnitario; ; break;
//case "IMPORTE": decimal Importe = 0; decimal.TryParse(xtr.Value, out Importe); concepto.Importe = Importe; ; break;
//case "DESCUENTO": decimal DDescuento = 0; decimal.TryParse(xtr.Value, out DDescuento); concepto.Descuento = DDescuento; ; break;
//case "DESCRIPCION": concepto.Descripcion = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > cDepthb)
{
if (xtr.NodeType == XmlNodeType.Element && xtr.Name == "cfdi:Impuestos")
{
int cDepthc = xtr.Depth;
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > cDepthc)
{
if (xtr.Name == "cfdi:Traslado" || xtr.Name == "cfdi:Retencion")
{
//CFDIConceptoImpuesto impuesto = new CFDIConceptoImpuesto();
//impuesto.Impuesto = xtr.GetAttribute("Impuesto");
//impuesto.Tipo = xtr.LocalName;
//decimal Base = 0;
//decimal.TryParse(xtr.GetAttribute("Base"), out Base);
//impuesto.Base = Base;
//impuesto.TipoFactor = xtr.GetAttribute("TipoFactor");
//decimal tasaOCuota = 0;
//decimal.TryParse(xtr.GetAttribute("TasaOCuota"), out tasaOCuota);
//impuesto.TasaOCuota = impuesto.TipoFactor == "Tasa" ? (tasaOCuota * 100).ToString("N4") : xtr.GetAttribute("TasaOCuota");
//decimal ImImporte = 0;
//decimal.TryParse(xtr.GetAttribute("Importe"), out ImImporte);
//impuesto.Importe = ImImporte;
//concepto.Impuestos.Add(impuesto);
}
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
}
else
{
bool rednew = true;
if (xtr.NodeType == XmlNodeType.Element && xtr.Name == "cfdi:InformacionAduanera")
{
//concepto.NumeroPedimento = xtr.GetAttribute("NumeroPedimento");
rednew = false; while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
if (xtr.NodeType == XmlNodeType.Element && xtr.Name == "cfdi:CuentaPredial")
{
//concepto.CuentaPredial = xtr.GetAttribute("CuentaPredial");
rednew = false; while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
if (rednew) { while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { } }
}
}
//xmlCFDI.conceptos.Add(concepto);
}
}
}
if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == keyImpuestos.ToUpper())
{
int cDepth = xtr.Depth;
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > cDepth)
{
//CFDIImpuesto impuest = new CFDIImpuesto();
//if (xtr.Name == "cfdi:Traslado" || xtr.Name == "cfdi:Retencion" && xmlCFDI.comprobante.Version != null)
//{
// impuest.Tipo = xtr.LocalName == "Traslado" ? "Traslados" : (xtr.LocalName == "Retencion" ? "Retenciones" : "");
// impuest.Impuesto = xmlCFDI.comprobante.Version == "3.3" ? xtr.GetAttribute("Impuesto") : xtr.GetAttribute("impuesto");
// impuest.TipoFactor = xtr.GetAttribute("TipoFactor");
// impuest.TasaOCuota = xmlCFDI.comprobante.Version == "3.3" ? xtr.GetAttribute("TasaOCuota") : xtr.GetAttribute("tasa");
// decimal ImImporte = 0;
// decimal.TryParse((xmlCFDI.comprobante.Version == "3.3" ? xtr.GetAttribute("Importe") : xtr.GetAttribute("importe")), out ImImporte);
// impuest.Importe = ImImporte;
// xmlCFDI.Impuestos.Add(impuest);
//}
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
}
if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == keyComplemento.ToUpper())
{
int cDepth = xtr.Depth;
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > cDepth)
{
//string version = xmlCFDI.comprobante.Version != null ? xmlCFDI.comprobante.Version : "";
if (xtr.NodeType == XmlNodeType.Element && xtr.LocalName.ToUpper() == "TimbreFiscalDigital".ToUpper())
{
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "UUID": drow["uuid"] = xtr.Value; break;
case "FECHATIMBRADO": drow["fechatimbrado"] = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
xtr.MoveToFirstAttribute();
//xmlCFDI.complemento.xmlns_tfd = xtr.GetAttribute("xmlns:tfd");
//xmlCFDI.complemento.xsi_schemaLocation = xtr.GetAttribute("xsi:schemaLocation");
//xmlCFDI.complemento.Version = xtr.GetAttribute("Version");
//xmlCFDI.complemento.UUID = xtr.GetAttribute("UUID");
//xmlCFDI.complemento.FechaTimbrado = xtr.GetAttribute("FechaTimbrado");
//xmlCFDI.complemento.RfcProvCertif = xtr.GetAttribute("RfcProvCertif");
//xmlCFDI.complemento.SelloCFD = version == "3.3" ? xtr.GetAttribute("SelloCFD") : xtr.GetAttribute("selloCFD");
//xmlCFDI.complemento.NoCertificadoSAT = version == "3.3" ? xtr.GetAttribute("NoCertificadoSAT") : xtr.GetAttribute("noCertificadoSAT");
//xmlCFDI.complemento.SelloSAT = version == "3.3" ? xtr.GetAttribute("SelloSAT") : xtr.GetAttribute("selloSAT");
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.LocalName == "Pagos")
{
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
//xmlCFDI.complemento.Pagos = new CFDIPago();
int depthpagos = xtr.Depth;
bool conts = xtr.MoveToFirstAttribute();
while (conts)
{
decimal Base = 0;
switch (xtr.Name.ToUpper())
{
//case "FECHAPAGO": xmlCFDI.complemento.Pagos.FechaPago = xtr.Value; break;
//case "FORMADEPAGOP": xmlCFDI.complemento.Pagos.FormaDePagoP = xtr.Value; break;
//case "FORMADEPAGOPTEXT": xmlCFDI.complemento.Pagos.FormaDePagoPText = xtr.Value; break;
//case "MONEDAP": xmlCFDI.complemento.Pagos.MonedaP = xtr.Value; break;
//case "MONTO": decimal.TryParse(xtr.Value, out Base); xmlCFDI.complemento.Pagos.Monto = Base; break;
//case "TIPOCAMBIOP": decimal.TryParse(xtr.Value, out Base); xmlCFDI.complemento.Pagos.TipoCambioP = Base; break;
//case "NUMOPERACION": xmlCFDI.complemento.Pagos.NumOperacion = xtr.Value; break;
//case "NOMBANCOORDEXT": xmlCFDI.complemento.Pagos.NomBancoOrdExt = xtr.Value; break;
//case "RFCEMISORCTAORD": xmlCFDI.complemento.Pagos.RfcEmisorCtaOrd = xtr.Value; break;
//case "CTAORDENANTE": xmlCFDI.complemento.Pagos.CtaOrdenante = xtr.Value; break;
//case "RFCEMISORCTABEN": xmlCFDI.complemento.Pagos.RfcEmisorCtaBen = xtr.Value; break;
//case "CTABENEFICIARIO": xmlCFDI.complemento.Pagos.CtaBeneficiario = xtr.Value; break;
}
conts = xtr.MoveToNextAttribute();
}
conts = xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
while (canread && xtr.Depth > depthpagos)
{
//CFDIPagoDoctoRelacionado objpago = new CFDIPagoDoctoRelacionado();
conts = xtr.MoveToFirstAttribute();
while (conts)
{
decimal Basep = 0;
switch (xtr.Name.ToUpper())
{
//case "IDDOCUMENTO": objpago.IdDocumento = xtr.Value; break;
//case "SERIE": objpago.Serie = xtr.Value; break;
//case "FOLIO": objpago.Folio = xtr.Value; break;
//case "MONEDADR": objpago.MonedaDR = xtr.Value; break;
//case "METODODEPAGODR": objpago.MetodoDePagoDR = xtr.Value; break;
//case "NUMPARCIALIDAD": objpago.NumParcialidad = xtr.Value; break;
//case "IMPSALDOANT": decimal.TryParse(xtr.Value, out Basep); objpago.ImpSaldoAnt = Basep; break;
//case "IMPPAGADO": decimal.TryParse(xtr.Value, out Basep); objpago.ImpPagado = Basep; break;
//case "IMPSALDOINSOLUTO": decimal.TryParse(xtr.Value, out Basep); objpago.ImpSaldoInsoluto = Basep; break;
}
conts = xtr.MoveToNextAttribute();
}
conts = xtr.MoveToFirstAttribute();
//xmlCFDI.complemento.Pagos.doctosRelacionados.Add(objpago);
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == "nomina12:Nomina".ToUpper())
{
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "TIPONOMINA": drow["tiponomina"] = xtr.Value; break;
case "FECHAPAGO": drow["fechapago"] = xtr.Value; break;
case "FECHAINICIALPAGO": drow["fechainicialpago"] = xtr.Value; break;
case "FECHAFINALPAGO": drow["fechafinalpago"] = xtr.Value; break;
case "NUMDIASPAGADOS": drow["numdiaspagados"] = xtr.Value; break;
case "TOTALPERCEPCIONES": drow["totalpercepciones"] = xtr.Value; break;
case "TOTALDEDUCCIONES": drow["totaldeducciones"] = xtr.Value; break;
case "TOTALOTROSPAGOS": drow["totalotrospagos"] = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == "nomina12:emisor".ToUpper())
{
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "REGISTROPATRONAL": drow["registropatronal"] = xtr.Value; break;
case "RFCPATRONORIGEN": drow["rfcpatronorigen"] = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.Name.ToUpper() == "nomina12:Receptor".ToUpper())
{
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "CURP": drow["nrcurp"] = xtr.Value; break;
case "NUMSEGURIDADSOCIAL": drow["nrnumseguridadsocial"] = xtr.Value; break;
case "FECHAINICIORELLABORAL": drow["nrfechainiciorellaboral"] = xtr.Value; break;
case "ANTIGÜEDAD": drow["nrantiguedad"] = xtr.Value; break;
case "TIPOCONTRATO": drow["nrtipocontrato"] = xtr.Value; break;
case "SINDICALIZADO": drow["nrsindicalizado"] = xtr.Value; break;
case "TIPOJORNADA": drow["nrtipojornada"] = xtr.Value; break;
case "TIPOREGIMEN": drow["nrtiporegimen"] = xtr.Value; break;
case "NUMEMPLEADO": drow["nrnumempleado"] = xtr.Value; break;
case "DEPARTAMENTO": drow["nrdepartamento"] = xtr.Value; break;
case "PUESTO": drow["nrpuesto"] = xtr.Value; break;
case "RIESGOPUESTO": drow["nrriesgopuesto"] = xtr.Value; break;
case "PERIODICIDADPAGO": drow["nrperiodicidadpago"] = xtr.Value; break;
case "BANCO": drow["nrbanco"] = xtr.Value; break;
case "CUENTABANCARIA": drow["nrcuentabancaria"] = xtr.Value; break;
case "SALARIOBASECOTAPOR": drow["nrsalariobasecotapor"] = xtr.Value; break;
case "SALARIODIARIOINTEGRADO": drow["nrsalariodiariointegrado"] = xtr.Value; break;
case "CLAVEENTFED": drow["nrclaveentfed"] = xtr.Value; break;
case "": drow[""] = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.Name == "nomina12:Percepciones")
{
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "TOTALSUELDOS": drow["totalsueldos"] = xtr.Value; break;
case "TOTALGRAVADO": drow["totalgravado"] = xtr.Value; break;
case "TOTALEXENTO": drow["totalexento"] = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.Name == "nomina12:Percepcion")
{
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.Name == "nomina12:Deducciones")
{
cont = xtr.MoveToFirstAttribute();
while (cont)
{
switch (xtr.Name.ToUpper())
{
case "TOTALOTRASDEDUCCIONES": drow["totalotrasdeducciones"] = xtr.Value; break;
case "TOTALIMPUESTOSRETENIDOS": drow["totalimpuestosretenidos"] = xtr.Value; break;
}
cont = xtr.MoveToNextAttribute();
}
xtr.MoveToFirstAttribute();
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else if (xtr.NodeType == XmlNodeType.Element && xtr.Name == "nomina12:Deduccion")
{
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
else
{
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
}
}
}
else
{
//si no entro en ninguna de los anteriores no se debe ciclar
while ((canread = xtr.Read()) && xtr.NodeType != XmlNodeType.Element) { }
}
}
}
}
}
dt.Rows.Add(drow);
//using (StreamReader sr = new StreamReader(txtName))
//{
// sb.AppendLine(txtName.ToString());
// sb.AppendLine("= = = = = =");
// sb.Append(sr.ReadToEnd());
// sb.AppendLine();
// sb.AppendLine();
//}
}
dt.TableName = "satxml";
//GVNominasXmlsat.DataSource = dt;
//GVNominasXmlsat.DataBind();
System.Xml.Linq.XDocument doc = new System.Xml.Linq.XDocument();
System.Xml.Linq.XElement element = new System.Xml.Linq.XElement("XmlNominas");
foreach (DataRow item in dt.Rows)
{
System.Xml.Linq.XElement elementrow = new System.Xml.Linq.XElement("nom");
foreach (DataColumn col in dt.Columns)
{
System.Xml.Linq.XElement elementcol = new System.Xml.Linq.XElement(col.ColumnName);
if (col.DataType ==typeof(DateTime ))
{
if (item[col.ColumnName] == null) { } else
{
elementcol.Value =string.Format("{0:yyyy/MM/dd HH}:{0:mm}:{0:ss}", item[col.ColumnName]);
}
}
else
{
elementcol.Value = item[col.ColumnName].ToString();
}
//elementrow.SetAttributeValue(new System.Xml.Linq.XName() {LocalName(col.ColumnName) }, item[col.ColumnName]);
elementrow.Add(elementcol);
}
element.Add(elementrow);
}
doc.Add(element);
// new System.Xml.Linq.XDocument(new System.Xml.Linq.XElement("XmlNominas", dt.Rows.Select(x => new System.Xml.Linq.XElement("XmlNomina", x))));
//System.IO.StringWriter writer = new System.IO.StringWriter();
//dt.WriteXml(writer, XmlWriteMode.WriteSchema, false);
return doc.ToString();
}
public void loadinfo()
{
string xml =readTimbres();
using (ClsNominas onom = new ClsNominas())
{
if (onom.ComparativoSATNominasGet(UsuarioActual.CveEmpresa, xml, TxtRpdFechaInicio.Text.ToDateTime(), TxtRpdFechaFin.Text.ToDateTime(), DdlTipoPeriodo.SelectedValue.ToEntero()) )
{
GVNominasXmlsat.DataSource = onom.DtResultados ;
GVNominasXmlsat.DataBind();
}
}
Updatos.Update();
}
//public bool AddUnoaUnoCuestionario(string Cuestionario, string Comentario, int CveUsuario, List<int> ListPreguntas, int CveEmpresa)
//{
// bool retorno = false;
// System.Xml.Linq.XDocument xmlPreguntas = null;
// if (ListPreguntas != null && ListPreguntas.Count > 0)
// xmlPreguntas = new System.Xml.Linq.XDocument(new System.Xml.Linq.XElement("Preguntas", ListPreguntas.Select(x => new System.Xml.Linq.XElement("CveUnoaUnoPregunta", x))));
// DataAdapter("PA_OI_UnoaUnoCuestionarioAdd", CommandType.StoredProcedure);
// {
// var withBlock = SqlAdapter.SelectCommand.Parameters;
// withBlock.Add("@Cuestionario", SqlDbType.VarChar).Value = (Cuestionario);
// withBlock.Add("@Comentario", SqlDbType.VarChar).Value = (Comentario);
// withBlock.Add("@CveUsuario", SqlDbType.Int).Value = (CveUsuario);
// withBlock.Add("@CveEmpresa", SqlDbType.Int).Value = (CveEmpresa);
// withBlock.Add("@xmlPreguntas", SqlDbType.Xml).Value = xmlPreguntas == null ? DBNull.Value : (object)xmlPreguntas.ToString();
// }
// try
// {
// SqlAdapter.Fill(Data);
// retorno = true;
// }
// catch (Exception ex)
// {
// OnError("Ocurrió un error al agregar el cuestionario.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo());
// }
// return retorno;
//}
protected void LnkConsultar_Click(object sender, EventArgs e)
{
loadinfo();
}
protected void GVNominasXmlsat_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.DataKey("Tipo") == "1")
{
e.Row.CssClass = "SubTotales";
}
}
}
}

View File

@@ -9,6 +9,10 @@
content: "\f1c1";
}
label.compoonenlabel {
padding-top: 5px;
}
.lblforchk {
font-size: 13px;
color: #888888;
@@ -252,19 +256,19 @@
<div class="portlet-title portlet-filterT smalltitle">
<div class="titlefiltros caption">
<div class="row">
<label class="col-md-1" style="max-width: 65px;">Ejercicio: </label>
<label class="col-md-1 compoonenlabel" style="max-width: 65px;">Ejercicio: </label>
<div class="col-md-1">
<asp:DropDownList ID="DdlEjercicios" runat="server" OnSelectedIndexChanged="DdlEjercicios_SelectedIndexChanged" Style="width: 100% !important;" CssClass="select2me" DataValueField="Ejercicio" DataTextField="Ejercicio"></asp:DropDownList>
</div>
<label class="col-md-1" style="max-width: 100px;">Tipo Período:</label>
<label class="col-md-1 compoonenlabel" style="max-width: 100px;">Tipo Período:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" OnSelectedIndexChanged="DdlTipoPeriodo_SelectedIndexChanged" CssClass="select2me" AutoPostBack="true" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" Style="width: 100% !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1">Período:</label>
<label class="col-md-1 compoonenlabel">Período:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlPeriodo" runat="server" OnSelectedIndexChanged="DdlPeriodo_SelectedIndexChanged" CssClass="select2me" DataTextField="NominaEstatus" DataValueField="CvePeriodo" Style="width: 100% !important;" AutoPostBack="True">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
@@ -272,16 +276,6 @@
</div>
<label class="col-md-1 " style="max-width: 65px;">Turno:</label>
<div class="col-md-1" style="max-width: 110px !important;">
<asp:DropDownList ID="DdlTurno" runat="server" AppendDataBoundItems="true" CssClass="select2me" DataTextField="Turno" DataValueField="CveTurno" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList></td>
</div>
<div class="col-md-1" style="max-width: 110px !important; white-space:nowrap; ">
<label >Obligaciones:</label>
<asp:CheckBox ID="Chkobligaciones" CssClass ="chksino" runat="server" />
</div>
<div class="col-md-1">
<asp:LinkButton ID="LnkConsultar" OnClick="LnkConsultar_Click" runat="server" Text="Calcular" Visible="False" class="btn btn-primary" />
@@ -310,19 +304,25 @@
<asp:ListItem Text="Turno" Value="3"></asp:ListItem>
</asp:DropDownList>
</div>
<asp:Label ID="LblProyecto" CssClass="col-md-1 " runat="server" Text="Proyecto:" Style="max-width: 100px;"></asp:Label>
<asp:Label ID="LblProyecto" CssClass="col-md-1 compoonenlabel" runat="server" Text="Proyecto:" Style="max-width: 100px;"></asp:Label>
<div runat="server" id="divddlproyeto" class="col-md-2">
<asp:DropDownList ID="DdlProyecto" runat="server" AppendDataBoundItems="true" CssClass="select2me" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<asp:Label ID="LblSubProyeccto" CssClass="col-md-1 " runat="server" Text="SubProyecto:" Style="max-width: 100px;"></asp:Label>
<asp:Label ID="LblSubProyeccto" CssClass="col-md-1 compoonenlabel" runat="server" Text="SubProyecto:" Style="max-width: 103px;"></asp:Label>
<div class="col-md-2">
<asp:DropDownList ID="DdlSubProyecto" runat="server" AppendDataBoundItems="true" CssClass="select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<asp:Label ID="LblFechaPago" runat="server" Visible="false" CssClass="col-md-1 ">Fecha Pago:</asp:Label>
<label class="col-md-1 compoonenlabel" style="max-width: 65px;">Turno:</label>
<div class="col-md-1" style="max-width: 110px !important;">
<asp:DropDownList ID="DdlTurno" runat="server" AppendDataBoundItems="true" CssClass="select2me" DataTextField="Turno" DataValueField="CveTurno" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList></td>
</div>
<asp:Label ID="LblFechaPago" runat="server" Visible="false" CssClass="col-md-1 compoonenlabel">Fecha Pago:</asp:Label>
<div class="col-md-1" id="DivFechaPago" runat="server" visible="false">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 110px !important; padding: 0px; margin-bottom: -10px;">
<asp:TextBox ID="TxtFechaPago" runat="server" CssClass="form-control" CausesValidation="true" Width="100%" MaxLength="10"></asp:TextBox>
@@ -341,7 +341,7 @@
<div class="row">
<label class="col-md-1 " style="line-height: 1; max-width: 65px;">Régimen:</label>
<label class="col-md-1 compoonenlabel" style="line-height: 1; max-width: 65px;">Régimen:</label>
<div class="col-md-1">
<asp:DropDownList ID="DdlRegimenContratacion" runat="server" Style="width: 100% !important;" CssClass="select2me">
<asp:ListItem Text="Asalariados" Value="1"></asp:ListItem>
@@ -349,6 +349,10 @@
<asp:ListItem Text="Todos" Value="3"></asp:ListItem>
</asp:DropDownList>
</div>
<div class="col-md-2" style="max-width: 160px !important; white-space: nowrap;">
<label class="compoonenlabel">ver Obligaciones:</label>
<asp:CheckBox ID="Chkobligaciones" Text=" " CssClass="chksino" runat="server" />
</div>
</div>
</div>
@@ -592,33 +596,65 @@
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtPersonal" runat="server" Text=""></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtPersonal" Text="Empleado"></asp:Label>
<asp:Label runat="server" AssociatedControlID="TxtPersonal" Enabled="false" Text="Empleado"></asp:Label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlTipoAsistencias" runat="server" DataTextField="Tipo" DataValueField="CveAsistenciasInasistencias"
CssClass="form-control select2me" Style="width: 100% !important;" ValidationGroup="GrpGuardarAsistencia">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlTipoAsistencias" Text="Asistencia"></asp:Label>
<div class="row">
<div class="col-md-8">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlTipoAsistencias" runat="server" DataTextField="Tipo" DataValueField="CveAsistenciasInasistencias"
CssClass="form-control select2me" Style="width: 100% !important;" ValidationGroup="GrpGuardarAsistencia">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlTipoAsistencias" Text="Asistencia"></asp:Label>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtPorPago" runat="server" Text=""></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtPorPago" Text="Porcentaje Pago"></asp:Label>
</div>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtPorPago" runat="server" Text=""></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtPorPago" Text="Porcentaje Pago"></asp:Label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control " ID="TxtHorasDobles" runat="server" MaxLength="3" Text="0"></asp:TextBox></td>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control " ID="TxtHorasDobles" runat="server" MaxLength="3" Text="0"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtHorasDobles" Text="Horas Dobles"></asp:Label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control " ID="TxtHorasTriples" runat="server" MaxLength="3" Text="0"></asp:TextBox></td>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control " ID="TxtHorasTriples" runat="server" MaxLength="3" Text="0"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtHorasTriples" Text="Horas Triples"></asp:Label>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlMotivoHoraExtra" runat="server" AppendDataBoundItems="true" DataTextField="MotivoHoraExtra" DataValueField="CveMotivoHoraExtra"
CssClass="form-control select2me" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlMotivoHoraExtra" Text="Motivo Hora Extra"></asp:Label>
</div>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlMotivoHoraExtra" runat="server" AppendDataBoundItems="true" DataTextField="MotivoHoraExtra" DataValueField="CveMotivoHoraExtra"
CssClass="form-control select2me" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlMotivoHoraExtra" Text="Motivo Hora Extra"></asp:Label>
<div class="row">
<asp:Panel ID="PnlProyecto" CssClass="col-md-6" runat="server">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlAsisProyecto" runat="server" AppendDataBoundItems="true" CssClass="form-control select2me" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label ID="LblAsisProyecto" AssociatedControlID="DdlAsisProyecto" runat="server" Text="Proyecto:"></asp:Label>
</div>
</asp:Panel>
<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">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label ID="LblAsisSubProyecto" AssociatedControlID="DdlAsisSubProyecto" runat="server" Text="SubProyecto:"></asp:Label>
</div>
</asp:Panel>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtObservaciones" runat="server" MaxLength="150"></asp:TextBox>
@@ -2330,7 +2366,8 @@
<tr id="trnetoapagar">
<td colspan="5" class="text-left">Neto a pagar</td>
<td colspan="1">
<asp:TextBox ID="TxtNetoaPagar" CssClass="maskedmoney txtgridsimula" runat="server"></asp:TextBox></td>
<asp:TextBox ID="TxtNetoaPagar" CssClass="maskedmoney txtgridsimula" runat="server"></asp:TextBox>
</td>
<td colspan="3"></td>
</tr>

View File

@@ -195,7 +195,13 @@ public partial class Nomina_Nomina2 : ClsPaginas
LnkVerCalculoISR.Visible = (UsuarioActual.CveUsuario == 100);
TxtPeriodo.Text = $"{DateTime.Now:yyyyMM}";
CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, LblProyecto, LblSubProyeccto);
CargarCentrosDeCosto(DdlAsisProyecto, DdlAsisSubProyecto, LblAsisProyecto, LblAsisSubProyecto);
divddlproyeto.Visible = DdlProyecto.Visible;
PnlProyecto.Visible = DdlProyecto.Visible;
if (PnlProyecto.Visible)
{
PnlSubProyecto.CssClass = "col-md-6";
}
cargaEjercicios();
CargaTiposPeriodo();
cargaPeriodos();
@@ -4900,7 +4906,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
using (ClsRH objpersonal = new ClsRH())
{
if (objpersonal.AddAsistencia(CvePersonal, -1, -1, fecha, DdlTipoAsistencias.SelectedValue.ToEntero(), TxtPorPago.Text.Trim().ToDouble(), TxtHorasDobles.Text.Trim().ToDouble(),
if (objpersonal.AddAsistencia(CvePersonal, -1, DdlAsisSubProyecto.SelectedValue.ToEntero(), fecha, DdlTipoAsistencias.SelectedValue.ToEntero(), TxtPorPago.Text.Trim().ToDouble(), TxtHorasDobles.Text.Trim().ToDouble(),
TxtHorasTriples.Text.Trim().ToDouble(), DdlMotivoHoraExtra.SelectedValue.ToEntero(), TxtObservaciones.Text.Trim(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
{
@@ -4915,6 +4921,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
DateTime fecha = TxtasisFecha.Text.ToDate();
DataRow drow = dtempleados.FiltroPrimero(string.Format("CvePersonal={0}", CvePersonal));
TxtPersonal.Text = drow["nombre"].ToString();
DdlAsisSubProyecto.SelectedValueExist("-1");
if (DdlTipoAsistencias.Items.Count == 1)
{
DdlTipoAsistencias.DataSource = GlobalDTAsistenciasInasistencias.FiltraParametros(string.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa));
@@ -4935,6 +4942,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
DataRow dr = objpersonal.DtResultados.Rows[0];
DdlTipoAsistencias.SelectedValueExist(dr["CveAsistenciasInasistencias"].ToString());
DdlAsisSubProyecto.SelectedValueExist(dr["CveSubProyecto"].ToString());
TxtPorPago.Text = dr["PorcentajePago"].ToString();
TxtHorasDobles.Text = dr["HorasDobles"].ToString();
TxtHorasTriples.Text = dr["HorasTriples"].ToString();