diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index ab193393f..b4d3bd9eb 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -1509,7 +1509,7 @@ Public Class ClsNominas EsRetencion As Boolean, CveClasificacion As Integer, CveTipoGasto As Integer, TipoCalculo As Boolean, CveConceptoContable As Integer, AplicaFiniquito As Integer, AutomaticoGlobal As Integer, Especie As Integer, Imprimir As Integer, CveSATConcepto As Integer, ctaImporteNegativoProv As Integer, contabiliza As Integer, CargoOAbono As Integer, cveConceptoContableB As Integer, CveCuentaB As Integer, - CveConceptoContablePasivo As Integer, Optional AplicaEfectivale As Integer = 0, Optional EsFormula As Integer = -1) As Integer + CveConceptoContablePasivo As Integer, Optional AplicaEfectivale As Integer = 0, Optional EsFormula As Integer = -1, Optional AplicaArt174 As Integer = 0) As Integer Dim Retorno As Integer = -1 DataAdapter("PA_Nom_ConceptosAdd") @@ -1544,6 +1544,7 @@ Public Class ClsNominas .Add("CveCuentaB", SqlDbType.Int).Value = CveCuentaB .Add("CveConceptoContablePasivo", SqlDbType.Int).Value = CveConceptoContablePasivo .Add("AplicaEfectivale", SqlDbType.Int).Value = AplicaEfectivale + .Add("AplicaArt174", SqlDbType.Int).Value = AplicaArt174 End With @@ -1571,7 +1572,7 @@ Public Class ClsNominas EsRetencion As Boolean, CveClasificacion As Integer, CveTipoGasto As Integer, TipoCalculo As Boolean, CveConceptoContable As Integer, CveCuenta As Integer, AplicaFiniquito As Integer, AutomaticoGlobal As Integer, Especie As Integer, Imprimir As Integer, CveSATConcepto As Integer, CveEmpresa As Integer, CveUsuario As Integer, ctaImporteNegativoProv As Integer, contabiliza As Integer, CargoOAbono As Integer, cveConceptoContableB As Integer, CveCuentaB As Integer, - CveConceptoContablePasivo As Integer, Optional AplicaEfectivale As Integer = 0, Optional EsFormula As Integer = -1) As Boolean + CveConceptoContablePasivo As Integer, Optional AplicaEfectivale As Integer = 0, Optional EsFormula As Integer = -1, Optional AplicaArt174 As Integer = 0) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Nom_ConceptosUpdate") @@ -1606,6 +1607,7 @@ Public Class ClsNominas .Add("CveCuentaB", SqlDbType.Int).Value = CveCuentaB .Add("CveConceptoContablePasivo", SqlDbType.Int).Value = CveConceptoContablePasivo .Add("AplicaEfectivale", SqlDbType.Int).Value = AplicaEfectivale + .Add("AplicaArt174", SqlDbType.Int).Value = AplicaArt174 End With Try diff --git a/Nomina/ConceptoNomina.aspx b/Nomina/ConceptoNomina.aspx index 5ba8b412b..60b6dd945 100644 --- a/Nomina/ConceptoNomina.aspx +++ b/Nomina/ConceptoNomina.aspx @@ -441,6 +441,10 @@
+ +
+ +
diff --git a/Nomina/ConceptoNomina.aspx.cs b/Nomina/ConceptoNomina.aspx.cs index 53608c96c..74f47d22e 100644 --- a/Nomina/ConceptoNomina.aspx.cs +++ b/Nomina/ConceptoNomina.aspx.cs @@ -370,6 +370,8 @@ public partial class Nomina_CatConcepto : ClsPaginas int IdCtaContableB = (DdlCtaContableB.DataValueField == "Id" ? DdlCtaContableB.SelectedValue.ToEntero() : 0); int CveCuentaB = (DdlCtaContableB.DataValueField == "Id" ? 0 : DdlCtaContableB.SelectedValue.ToEntero()); int AplicaEfectivale = chkAplicaEfectivale.Checked ? 1 : 0; + int AplicaArt174 = chkAplicaArt174.Checked ? 1 : 0; + int EsFormula = ChkEsFormula.Checked ? 1 : 0; ClsNominas ObjNomina = new ClsNominas(); ObjNomina.IniciaTransacSQL(); @@ -380,7 +382,7 @@ public partial class Nomina_CatConcepto : ClsPaginas { TieneError = !ObjNomina.UpdateConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, CveConcepto, retencion, CveClasificacion, CveTipoGasto, tipoCalculo, CveConceptoContable, CveCuenta, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, CveSATConcepto, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario, - ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB, CveCuentaB, CveConceptoContablePasivo, AplicaEfectivale, EsFormula); + ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB, CveCuentaB, CveConceptoContablePasivo, AplicaEfectivale, EsFormula, AplicaArt174); if (!TieneError) { @@ -412,7 +414,7 @@ public partial class Nomina_CatConcepto : ClsPaginas { CveConcepto = ObjNomina.AddConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, retencion, CveClasificacion, CveTipoGasto, tipoCalculo, CveConceptoContable, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, CveSATConcepto, - ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB, CveCuentaB, CveConceptoContablePasivo, AplicaEfectivale, EsFormula); + ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB, CveCuentaB, CveConceptoContablePasivo, AplicaEfectivale, EsFormula, AplicaArt174); @@ -513,6 +515,7 @@ public partial class Nomina_CatConcepto : ClsPaginas ChkSistema.Checked = drow["Sistema"].Equals("Sí"); ChkAutomaticoLiquidacion.Checked = drow["AplicaFiniquito"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); chkAplicaEfectivale.Checked = drow["AplicaEfectivale"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); + chkAplicaArt174.Checked = drow["AplicaArt174"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); ChkContabiliza.Checked = drow["Contabiliza"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); chkCtaImporteNegativoProv.Checked = drow["CtaImporteNegativoProv"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); ChkAutomaticoGlobal.Checked = drow["AutomaticoGlobal"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); @@ -686,5 +689,9 @@ public partial class Nomina_CatConcepto : ClsPaginas protected void chkAplicaEfectivale_CheckedChanged(object sender, EventArgs e) { + } + protected void chkAplicaArt174_CheckedChanged(object sender, EventArgs e) + { + } } \ No newline at end of file diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index 07a5da3e7..e53cdc05b 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -588,7 +588,7 @@ public partial class Nomina_Nomina2 : ClsPaginas DdlTipoPeriodo.SelectedIndex = 0; } } - private void cargaPeriodos(int tipo =0) + private void cargaPeriodos(int tipo = 0) { int tipoPeriodo = DdlTipoPeriodo.SelectedValue.ToEntero(); int ejercicio = DdlEjercicios.SelectedValue.ToEntero(); @@ -611,7 +611,7 @@ public partial class Nomina_Nomina2 : ClsPaginas DdlPeriodo.DataSource = dtPeriodos; DdlPeriodo.DataBind(); DdlPeriodo.Items.Insert(0, new ListItem("Seleccione", "-1")); - if(tipo==1 && dtPeriodos.Rows.Count > 0) + if (tipo == 1 && dtPeriodos.Rows.Count > 0) { DdlPeriodo.SelectedValue = dtPeriodos.Rows[0]["CvePeriodo"].ToString(); } @@ -4947,6 +4947,10 @@ public partial class Nomina_Nomina2 : ClsPaginas } #endregion + const string COL_SUELDO_MENSUAL = "Sueldo Mensual"; + const string COL_SUELDO_DIARIO = "Sueldo diario"; + const string COL_DIAS_PEN_PAGO = "Dias Pen Pago"; + const string INCAPACIDAD_PERM_FALTAS = "Incapacidad Permisos Faltas"; protected void LnkPersonalizarNomina_Click(object sender, EventArgs e) { @@ -4960,9 +4964,9 @@ public partial class Nomina_Nomina2 : ClsPaginas { addcoltopersonalizar("Codigo", "0", "Codigo", ""); addcoltopersonalizar("Nombre", "0", "Empleado", ""); - addcoltopersonalizar("Sueldo Mensual", "0", "", ""); - addcoltopersonalizar("Sueldo diario", "0", "", ""); - addcoltopersonalizar("Dias Pen Pago", "0", "", ""); + addcoltopersonalizar(COL_SUELDO_MENSUAL, "0", "0", ""); + addcoltopersonalizar(COL_SUELDO_DIARIO, "0", "0", ""); + addcoltopersonalizar(COL_DIAS_PEN_PAGO, "0", "0", ""); int pos = 4; foreach (DataRow row in dtConceptos.FiltraParametros("Tipo ='P' ").Rows) @@ -4975,7 +4979,7 @@ public partial class Nomina_Nomina2 : ClsPaginas } //addcoltopersonalizar("Percepciones", "1", "Percepciones", ""); - addcoltopersonalizar("Incapacidad Permisos Faltas", "0", "", ""); + addcoltopersonalizar(INCAPACIDAD_PERM_FALTAS, "0", "0", ""); foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' AND EsPadre = 1 AND EsFormula =0").Rows)// @@ -5127,11 +5131,20 @@ public partial class Nomina_Nomina2 : ClsPaginas ClosedXML.Excel.XLColor colororange = ClosedXML.Excel.XLColor.FromArgb(247, 150, 70); ClosedXML.Excel.XLColor colororangeblue = ClosedXML.Excel.XLColor.FromArgb(79, 129, 189); ClosedXML.Excel.IXLCell celda; + DataRow dtzrow = this.dtConceptos.FiltroPrimero("Codigo='D200'"); + string conceptoincpermfaltas = ""; + if (dtzrow != null) + { + conceptoincpermfaltas = string.Format("V_{0}", dtzrow["CveConcepto"]); + + + } DataTable dtConceptos = this.dtConceptos.FiltraParametros(""); DataTable dtFiltrado = dtConceptos.Clone(); // Clonar la estructura del DataTable bool colSueldoMensual = false; bool colSueldoDiario = false; bool coDiasPenPagol = false; + bool coIncPermFaltas = false; foreach (GridViewRow row in GvPersonalizarExcel.Rows) { @@ -5139,9 +5152,11 @@ public partial class Nomina_Nomina2 : ClsPaginas string columnaDB = row.DataKey("ColumnaDB").Replace("[", "").Replace("]", ""); // Suponiendo que la columna "ColumnaDB" está en la segunda celda (index 1) if (columnaDB == "0") { - if (columna == "Sueldo Mensual") { colSueldoMensual = true; } - if (columna == "Sueldo diario") { colSueldoDiario = true; } - if (columna == "Dias Pen Pago") { coDiasPenPagol = true; } + if (columna == COL_SUELDO_MENSUAL) { colSueldoMensual = true; } + if (columna == COL_SUELDO_DIARIO) { colSueldoDiario = true; } + if (columna == COL_DIAS_PEN_PAGO) { coDiasPenPagol = true; } + if (columna == INCAPACIDAD_PERM_FALTAS) { coIncPermFaltas = true; } + } string tipoDB = row.DataKey("TipoDB"); // Suponiendo que la columna "TipoDB" está en la cuarta celda (index 3) @@ -5237,10 +5252,13 @@ public partial class Nomina_Nomina2 : ClsPaginas iniciotipe = column; int finPercepciones = iniciotipe; + if (coIncPermFaltas) + { - column++; - TitleRange(libro, "Incapacidad", filainicio + 2, column, filainicio + 2, column, false, false, PercborderColor); - TitleRange(libro, "Perm. Faltas", filainicio + 3, column, filainicio + 3, column, false, false, PercborderColor); + column++; + TitleRange(libro, "Incapacidad", filainicio + 2, column, filainicio + 2, column, false, false, PercborderColor); + TitleRange(libro, "Perm. Faltas", filainicio + 3, column, filainicio + 3, column, false, false, PercborderColor); + } //column++; //TitleRange(libro, "Permisos", filainicio + 3, column, filainicio + 3, column, false, false, colororangeblue); @@ -5392,31 +5410,31 @@ public partial class Nomina_Nomina2 : ClsPaginas } oldsubproyecto = subproyecto; libro.Cell(Fila, column).Value = erow["Nombre"]; - - if (colSueldoMensual) - { - column++; - libro.Cell(Fila, column).Value = ""; - try - { - libro.Cell(Fila, column).Value = erow[string.Format("V_{0}", 6817)]; - libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; - } - catch (Exception) { } - } - if (colSueldoDiario) - { - column++; - libro.Cell(Fila, column).Value = erow["SalarioDiario"]; - libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + if (colSueldoMensual) + { + column++; + libro.Cell(Fila, column).Value = ""; + try + { + libro.Cell(Fila, column).Value = erow[string.Format("V_{0}", 6817)]; + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + } + catch (Exception) { } + } + if (colSueldoDiario) + { + + column++; + libro.Cell(Fila, column).Value = erow["SalarioDiario"]; + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; } if (coDiasPenPagol) { column++; - libro.Cell(Fila, column).Value = ""; - } - if (dtConceptos.FiltraParametros("Tipo ='P'").Rows.Count > 0) + libro.Cell(Fila, column).Value = ""; + } + if (dtConceptos.FiltraParametros("Tipo ='P'").Rows.Count > 0) { foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'P' ").Rows) { @@ -5453,10 +5471,28 @@ public partial class Nomina_Nomina2 : ClsPaginas } - //column++; - //Titlecell(libro, erow["DiasIncapacidad"], Fila, column, false, false, dedcborderColor); - column++; - Titlecell(libro, "", Fila, column, false, false, PercborderColor); + if (coIncPermFaltas) + { + + column++; + string valuex = ""; + if (conceptoincpermfaltas.Length > 0) + { + valuex = erow[conceptoincpermfaltas].ToString(); + if (newsubproyecto) + { + string valuez = dtempleados.SUM(conceptoincpermfaltas, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)).ToString(); + 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, valuez, Fila - 3, column, true, true, PercborderColor); + //libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); + } + } + Titlecell(libro, valuex, Fila, column, false, false, PercborderColor); + } //column++; //Titlecell(libro, erow["DiasFaltados"], Fila, column, false, false, dedcborderColor); @@ -7838,7 +7874,7 @@ public partial class Nomina_Nomina2 : ClsPaginas { ObjMovt.GetMovtoPermanente(UsuarioActual.CveEmpresa, SRCvePersonal); DataTable dt = ObjMovt.DtResultados; - if(estatus >= 0) + if (estatus >= 0) { dt = dt.FiltraParametros(string.Format("Estatus ={0}", estatus)); } diff --git a/RH/Personal.aspx b/RH/Personal.aspx index 6b892cc1b..6ed7f3a54 100644 --- a/RH/Personal.aspx +++ b/RH/Personal.aspx @@ -1694,84 +1694,6 @@
- @@ -6235,7 +6157,85 @@
+ + diff --git a/RH/Personal.aspx.vb b/RH/Personal.aspx.vb index bd787ed99..377aac657 100644 --- a/RH/Personal.aspx.vb +++ b/RH/Personal.aspx.vb @@ -1007,7 +1007,6 @@ Partial Class RH_Personal CargaGvBitacora() CarcaConceptosNomina() CargaFonacot() - CargaPersonalRefs() End If ValidaDeudorAcreedor() @@ -8314,7 +8313,7 @@ Partial Class RH_Personal End Sub - Protected Sub CargaPersonalRefs() + Protected Sub CargaPersonalCamposValoresGet() Dim ObjPers As New ClsNominas() ObjPers.PersonalCamposValoresGet(-1, CvePersonal) GVPersonalRefs.DataSource = ObjPers.DtResultados @@ -8338,7 +8337,7 @@ Partial Class RH_Personal Protected Sub LnkMostrarCamposValor_Click(sender As Object, e As EventArgs) ltlPerstitulo.Text = "Campos valores" LimpiaPersonalRefs() - + CargaPersonalCamposValoresGet() RegistraScript("$('#DModalPersonalRefs').modal()") BtnPersADD.Visible = False PanelMostrarpersonalcampos.Visible = True @@ -8362,6 +8361,11 @@ Partial Class RH_Personal Dim Continuar As Boolean = ObjPers.PersonalCamposValoresAddUp(cveReferencia, CvePersonal, valor) ObjPers.Dispose() If (Continuar) Then + BtnPersADD.Visible = False + PanelMostrarpersonalcampos.Visible = True + PanelADDpersonalcampos.Visible = False + + CargaPersonalCamposValoresGet() LimpiaPersonalRefs() UPModalPers.Update() Alert("El campo valor se ha agregado") @@ -8374,7 +8378,7 @@ Partial Class RH_Personal Dim Continuar As Boolean = ObjPers.PersonalCamposValoresRemove(CcveReferencia, CvePersonal) ObjPers.Dispose() If (Continuar) Then - CargaPersonalRefs() + CargaPersonalCamposValoresGet() Alert("El campo valor se ha eliminado") End If End Sub