diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index ae3ec08ab..5c2ca42f5 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -10099,7 +10099,7 @@ public partial class Nomina_Nomina2 : ClsPaginas { if (objnom.GetDispersionnominaXLS(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa)) { - CrearLayoutNominaBanamex(objnom.DtResultados.Copy()); + CrearLayoutNominaBanamex(objnom.DtResultados.FiltraParametros(" (BancoNombre) like '%BANAMEX%'")); } } @@ -10345,7 +10345,7 @@ public partial class Nomina_Nomina2 : ClsPaginas SbErrores.AppendLine("Se detectaron los siguientes errores en la generación del layout"); - foreach (DataRow dRow in DTNomina.FiltraParametros(" (BancoNombre) like '%BANAMEX%'").Rows) + foreach (DataRow dRow in DTNomina.Rows) { //string RFC = dRow["RFC"].ToString(); string Nombre = dRow["Nombre"].ToString(); @@ -10415,9 +10415,10 @@ public partial class Nomina_Nomina2 : ClsPaginas sb.AppendLine($"{TipoReg2}{TipoOpe2}{ClaveMoneda}{ImporteTotal}{TipoCuenta}{Sucursal}{NumCuenta}{Espacio}"); //REGISTRO DE CARGOS O ABONOS INDIVIDUALES - IMPORTACIÓN - int Count = 1; - - foreach (DataRow dRow in DTNomina.FiltraParametros(" (BancoNombre) like '%BANAMEX%'").Rows) + int Count = 0; + + decimal SumaImportes = 0; + foreach (DataRow dRow in DTNomina.Rows) { var TipoReg3 = "3"; //Registro de Movtos. Individuales var TipoOpe3 = "0"; //0 = Si es Abono, 1 = Si es Cargo (solo aplica para cobros) @@ -10433,24 +10434,29 @@ public partial class Nomina_Nomina2 : ClsPaginas var StrImporte = Importe.ToString("0000000000000000.00").Replace(".", ""); var StrTipoCuenta = "03";// 01- Cheques / CLABE, 03=Plástico var StrCuenta = BancoNumCuenta.Trim().PadLeft(20, '0'); //USARA TARJETA DE DEBITO - var ReferenciaAlfa = ("").PadRight(40); //No se ocupa si es nomina banamex + var ReferenciaAlfa = (dRow["Codigo"].ToString()).PadRight(10); //si banamex debe ser de 10 digitos, y agregar 30 espacios + var EspacioRefBen = ("").PadRight(30); var Beneficiario = ($"{Nombres},{APaterno}/{AMaterno}").PadRight(55); - var Inst3 = ("").PadRight(40); + var Inst3 = ("PAGO").PadRight(40); var DescTEF = ("").PadRight(24); - var ClaveBanco = ("").PadRight(4); //BANCOMER //No se ocupa si es nomina baname - var ReferenciaNum = dRow["Codigo"].ToString().PadRight(7, '0'); //QUE TOME DE LA CvePersonal como folio - var Plazo = "00"; // MISMO DIA - sb.AppendLine($"{TipoReg3}{TipoOpe3}{ClaveMoneda}{StrImporte}{StrTipoCuenta}{StrCuenta}{ReferenciaAlfa}{Beneficiario}{Inst3}{DescTEF}{ClaveBanco}{ReferenciaNum}{Plazo}00"); + var ClaveBanco = ("0000").PadRight(4); //No se ocupa si es nomina banamex + var ReferenciaNum = ("").PadRight(7, '0'); //QUE TOME DE LA CvePersonal como folio , SOLO PARA INTERBANCARIOS + var Plazo = ""; // 00 - MISMO DIA , 24 HRS + sb.AppendLine($"{TipoReg3}{TipoOpe3}{ClaveMoneda}{StrImporte}{StrTipoCuenta}{StrCuenta}{ReferenciaAlfa}{EspacioRefBen}{Beneficiario}{Inst3}{DescTEF}{ClaveBanco}{ReferenciaNum}{Plazo}00"); - Count = Count + 1; + Count += 1; + SumaImportes += Importe; } //REGISTRO DE TOTALES - IMPORTACIÓN var TipoReg4 = "4"; + // LOS ABONOS A LOS EMPLEADOS var NumAbonos = Count.ToString("000000"); - var NumCargos = Count.ToString("000000"); + //EL CARGO QUE SE LE HIZO A LA CUENTA DE LA EMPRESA + var NumCargos = (1).ToString("000000"); + var StrImportes = SumaImportes.ToString("0000000000000000.00").Replace(".", ""); - sb.AppendLine($"{TipoReg4}{ClaveMoneda}{NumAbonos}{ImporteTotal}{NumCargos}{ImporteTotal}"); + sb.AppendLine($"{TipoReg4}{ClaveMoneda}{NumAbonos}{StrImportes}{NumCargos}{StrImportes}"); Response.Clear(); Response.ClearHeaders();