From 9f23b56e0cede0266e1353895bb6e9b214b720fb Mon Sep 17 00:00:00 2001 From: rakcsle Date: Fri, 1 Mar 2024 17:14:16 -0700 Subject: [PATCH] Checador correcion dia de decanso y se agrega codigo de empleado --- RH/RepChecadorPreAsistencia.aspx | 5 +- RH/RepChecadorPreAsistencia.aspx.vb | 398 +++++++++++++++------------- Ventas/Ventas.aspx.vb | 23 +- 3 files changed, 232 insertions(+), 194 deletions(-) diff --git a/RH/RepChecadorPreAsistencia.aspx b/RH/RepChecadorPreAsistencia.aspx index 4e5443f3d..e20f1db0b 100644 --- a/RH/RepChecadorPreAsistencia.aspx +++ b/RH/RepChecadorPreAsistencia.aspx @@ -91,7 +91,6 @@
-
@@ -106,9 +105,9 @@ - + - + diff --git a/RH/RepChecadorPreAsistencia.aspx.vb b/RH/RepChecadorPreAsistencia.aspx.vb index a4d324905..685d93bec 100644 --- a/RH/RepChecadorPreAsistencia.aspx.vb +++ b/RH/RepChecadorPreAsistencia.aspx.vb @@ -327,7 +327,7 @@ Partial Class RH_RepChecadorPreAsistencia Resultados.Columns.Add("CvePersonal") Resultados.Columns.Add("NombreCompleto") - 'Resultados.Columns.Add("Codigo") + Resultados.Columns.Add("Codigo") Resultados.Columns.Add("CveSubProyecto") Resultados.Columns.Add("SalarioDiario") Resultados.Columns.Add("CveAsistenciasInasistencias") @@ -349,7 +349,7 @@ Partial Class RH_RepChecadorPreAsistencia Resultados.Columns.Add("TipoCorto") Resultados.Columns.Add("Sancion") - If DdlTurno.SelectedValue.ToEntero > 0 And DdlTipoPeriodo.SelectedValue.ToEntero > 0 And DdlRango.SelectedValue.ToEntero > 0 Then + If DdlTipoPeriodo.SelectedValue.ToEntero > 0 And DdlRango.SelectedValue.ToEntero > 0 Then Dim FiltroSubProyecto As String = "" Dim filtroturno = If(DdlTurno.SelectedValue = "-1", "", $"AND CveTurno = { DdlTurno.SelectedValue}") @@ -422,6 +422,10 @@ Partial Class RH_RepChecadorPreAsistencia Dim ContadorFaltas As Integer = 0 Dim registrosPersonal As DataTable = DTChecadorRegistros.FiltraParametros(" CvePersonal = " & dRow(0).ToString()) + Dim CveTurno As Integer = dRow("CveTurno").ToString.ToEntero + Dim DiaDescanso As Integer = GlobalDTTurno(UsuarioActual.CveEmpresa).FiltroPrimeroValor("DiaDescanso", $" CveTurno = {CveTurno} ").ToEntero - 1 'El -1 es por que en .net el domingo empieza 0 y en la sql en 1 + Dim Codigo As String = dRow("Codigo").ToString + If registrosPersonal.Rows.Count > 0 Then DTHorarioPersonal = DTHorarios.FiltraParametros(" CveChecadorHorario = " & registrosPersonal(0)("CveHorario").ToString() & "") Retardos = 0 @@ -431,7 +435,7 @@ Partial Class RH_RepChecadorPreAsistencia Dim ReRow As DataRow = Resultados.NewRow ReRow("CvePersonal") = dRow(0).ToString() ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() - 'ReRow("Codigo") = dRow("Codigo").ToString() + ReRow("Codigo") = Codigo ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() ReRow("CveAsistenciasInasistencias") = "-1" @@ -458,7 +462,7 @@ Partial Class RH_RepChecadorPreAsistencia Dim diaSemana As Integer = Fecha.DayOfWeek Dim Asistencia As Boolean = True - Dim Horario As DataTable = HorarioDiario(Fecha, DTHorarioPersonal) + Dim Horario As DataTable = HorarioDiario(Fecha, DTHorarioPersonal, DiaDescanso) Dim DiaLaboral As Boolean = Boolean.Parse(Horario(0)(0).ToString()) Dim HorarioEntrada As TimeSpan = TimeSpan.Parse(Horario(0)(1).ToString()) @@ -615,7 +619,7 @@ Partial Class RH_RepChecadorPreAsistencia ReRow("CvePersonal") = dRow(0).ToString() ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() - 'ReRow("Codigo") = dRow("Codigo").ToString() + ReRow("Codigo") = Codigo ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() @@ -651,7 +655,7 @@ Partial Class RH_RepChecadorPreAsistencia ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta End If - Dim Horario As DataTable = HorarioDiario(Fecha, DTHorarioPersonal) + Dim Horario As DataTable = HorarioDiario(Fecha, DTHorarioPersonal, DiaDescanso) Dim DiaLaboral As Boolean = Boolean.Parse(Horario(0)(0).ToString()) If Not DiaLaboral Then @@ -705,6 +709,8 @@ Partial Class RH_RepChecadorPreAsistencia Dim ContadorFaltas As Integer = 0 Dim registrosPersonal As DataTable = DTAsistenciasInasistenciasReg.FiltraParametros(" CvePersonal = " & dRow(0).ToString()) + + Dim Codigo As String = dRow("Codigo").ToString If registrosPersonal.Rows.Count > 0 Then For x As Integer = 1 To (DiasPeriodo) @@ -712,7 +718,7 @@ Partial Class RH_RepChecadorPreAsistencia Dim ReRow As DataRow = Resultados.NewRow ReRow("CvePersonal") = dRow(0).ToString() ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() - 'ReRow("Codigo") = dRow("Codigo").ToString() + ReRow("Codigo") = Codigo ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() @@ -765,7 +771,7 @@ Partial Class RH_RepChecadorPreAsistencia ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() - 'ReRow("Codigo") = dRow("Codigo").ToString() + ReRow("Codigo") = Codigo ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta ReRow("PorcentajePago") = "0" ReRow("Asistio") = "False" @@ -802,8 +808,8 @@ Partial Class RH_RepChecadorPreAsistencia DtResultados = Resultados dt.Columns.Add("CvePersonal") + dt.Columns.Add("Codigo") dt.Columns.Add("NombreCompleto") - 'dt.Columns.Add("Codigo") dt.Columns.Add("Fecha1") dt.Columns.Add("Fecha2") dt.Columns.Add("Fecha3") @@ -836,6 +842,7 @@ Partial Class RH_RepChecadorPreAsistencia dt.Columns.Add("Fecha30") dt.Columns.Add("Fecha31") + Dim DTFechas As DataTable Dim DTUPersonal As DataTable @@ -845,7 +852,7 @@ Partial Class RH_RepChecadorPreAsistencia Dim ColumN As Integer = (dt.Columns.Count) - 2 - For x As Integer = 3 To dt.Columns.Count + For x As Integer = 3 To dt.Columns.Count-1 GVRegDatos.Columns(x).HeaderText = "" GVRegDatos.Columns(x).Visible = False Next @@ -866,9 +873,9 @@ Partial Class RH_RepChecadorPreAsistencia Dim RRow As DataRow = dt.NewRow RRow("CvePersonal") = pRow("CvePersonal") RRow("NombreCompleto") = pRow("NombreCompleto") - 'RRow("Codigo") = pRow("Codigo") + RRow("Codigo") = pRow("Codigo") - ColumN = 2 + ColumN = 3 Dim ResumenDia As New DataTable Dim DTTempAsistencias As New DataTable @@ -970,170 +977,219 @@ Partial Class RH_RepChecadorPreAsistencia End Sub Private Sub ReprocesarTabla() - Dim dt As New DataTable - Dim DtPersonal As New DataTable - Dim DTAsistenciasInasistencias As New DataTable - Dim objRH As New ClsRH + If DdlTipoPeriodo.SelectedValue.ToEntero > 0 And DdlRango.SelectedValue.ToEntero > 0 Then - If objRH.GetPersonalAsistenciaRegistros(FechaInicioPeriodo, FechaFinPeriodo, UsuarioActual.CveEmpresa) Then - DTAsistenciasInasistencias = objRH.DtResultados - End If + Dim dt As New DataTable + Dim DtPersonal As New DataTable + Dim DTAsistenciasInasistencias As New DataTable - DtPersonal = GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros($" CveTipoPeriodo = { DdlTipoPeriodo.SelectedValue} AND CveEstado = 1 " & If(DdlTurno.SelectedValue = "-1", "", $" AND CveTurno = {DdlTurno.SelectedValue}")) - dt.Columns.Add("CvePersonal") - dt.Columns.Add("NombreCompleto") - 'dt.Columns.Add("Codigo") - dt.Columns.Add("Fecha1") - dt.Columns.Add("Fecha2") - dt.Columns.Add("Fecha3") - dt.Columns.Add("Fecha4") - dt.Columns.Add("Fecha5") - dt.Columns.Add("Fecha6") - dt.Columns.Add("Fecha7") - dt.Columns.Add("Fecha8") - dt.Columns.Add("Fecha9") - dt.Columns.Add("Fecha10") - dt.Columns.Add("Fecha11") - dt.Columns.Add("Fecha12") - dt.Columns.Add("Fecha13") - dt.Columns.Add("Fecha14") - dt.Columns.Add("Fecha15") - dt.Columns.Add("Fecha16") - dt.Columns.Add("Fecha17") - dt.Columns.Add("Fecha18") - dt.Columns.Add("Fecha19") - dt.Columns.Add("Fecha20") - dt.Columns.Add("Fecha21") - dt.Columns.Add("Fecha22") - dt.Columns.Add("Fecha23") - dt.Columns.Add("Fecha24") - dt.Columns.Add("Fecha25") - dt.Columns.Add("Fecha26") - dt.Columns.Add("Fecha27") - dt.Columns.Add("Fecha28") - dt.Columns.Add("Fecha29") - dt.Columns.Add("Fecha30") - dt.Columns.Add("Fecha31") + Dim objRH As New ClsRH - Dim DTFechas As DataTable - Dim DTUPersonal As DataTable - Dim DTVFechas As New DataView(DtResultados) - DTFechas = DTVFechas.ToTable(True, "Fecha") - DTUPersonal = DTVFechas.ToTable(True, {"CvePersonal", "NombreCompleto"}) + If objRH.GetPersonalAsistenciaRegistros(FechaInicioPeriodo, FechaFinPeriodo, UsuarioActual.CveEmpresa) Then + DTAsistenciasInasistencias = objRH.DtResultados + End If - Dim ColumN As Integer = (dt.Columns.Count) - 2 + DtPersonal = GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros($" CveTipoPeriodo = { DdlTipoPeriodo.SelectedValue} AND CveEstado = 1 " & If(DdlTurno.SelectedValue = "-1", "", $" AND CveTurno = {DdlTurno.SelectedValue}")) - For x As Integer = 3 To ColumN - 1 - GVRegDatos.Columns(x).HeaderText = "" - GVRegDatos.Columns(x).Visible = False - Next + dt.Columns.Add("CvePersonal") + dt.Columns.Add("NombreCompleto") + 'dt.Columns.Add("Codigo") + dt.Columns.Add("Fecha1") + dt.Columns.Add("Fecha2") + dt.Columns.Add("Fecha3") + dt.Columns.Add("Fecha4") + dt.Columns.Add("Fecha5") + dt.Columns.Add("Fecha6") + dt.Columns.Add("Fecha7") + dt.Columns.Add("Fecha8") + dt.Columns.Add("Fecha9") + dt.Columns.Add("Fecha10") + dt.Columns.Add("Fecha11") + dt.Columns.Add("Fecha12") + dt.Columns.Add("Fecha13") + dt.Columns.Add("Fecha14") + dt.Columns.Add("Fecha15") + dt.Columns.Add("Fecha16") + dt.Columns.Add("Fecha17") + dt.Columns.Add("Fecha18") + dt.Columns.Add("Fecha19") + dt.Columns.Add("Fecha20") + dt.Columns.Add("Fecha21") + dt.Columns.Add("Fecha22") + dt.Columns.Add("Fecha23") + dt.Columns.Add("Fecha24") + dt.Columns.Add("Fecha25") + dt.Columns.Add("Fecha26") + dt.Columns.Add("Fecha27") + dt.Columns.Add("Fecha28") + dt.Columns.Add("Fecha29") + dt.Columns.Add("Fecha30") + dt.Columns.Add("Fecha31") - ColumN = 3 - For Each drow As DataRow In DTFechas.Rows - GVRegDatos.Columns(ColumN).HeaderText = String.Format("
{1}
{0}
", drow(0).ToString().ToDate.ToString("dd/MM/yyyy"), ObtenerDiaSemana(drow(0).ToString().ToDate)) - GVRegDatos.Columns(ColumN).Visible = True - ColumN = ColumN + 1 - Next + Dim DTFechas As DataTable + Dim DTUPersonal As DataTable + Dim DTVFechas As New DataView(DtResultados) + DTFechas = DTVFechas.ToTable(True, "Fecha") + DTUPersonal = DTVFechas.ToTable(True, {"CvePersonal", "NombreCompleto"}) - For Each pRow As DataRow In DtPersonal.Rows + Dim ColumN As Integer = (dt.Columns.Count) - 2 - Dim RRow As DataRow = dt.NewRow - RRow("CvePersonal") = pRow("CvePersonal") - RRow("NombreCompleto") = pRow("NombreCompleto") - 'RRow("Codigo") = pRow("Codigo") + For x As Integer = 3 To ColumN - 1 + GVRegDatos.Columns(x).HeaderText = "" + GVRegDatos.Columns(x).Visible = False + Next - ColumN = 2 + ColumN = 3 For Each drow As DataRow In DTFechas.Rows + GVRegDatos.Columns(ColumN).HeaderText = String.Format("
{1}
{0}
", drow(0).ToString().ToDate.ToString("dd/MM/yyyy"), ObtenerDiaSemana(drow(0).ToString().ToDate)) + GVRegDatos.Columns(ColumN).Visible = True + ColumN = ColumN + 1 + Next - Dim filtro As String = " CvePersonal = " & pRow("CvePersonal").ToString() & " AND Fecha ='" & drow(0).ToString() & "' " - Dim ResumenDia As DataTable = DtResultados.FiltraParametros(" CvePersonal = " & pRow("CvePersonal").ToString() & " AND Fecha ='" & drow(0).ToString() & "' ") + For Each pRow As DataRow In DtPersonal.Rows - Dim DTTempAsistencias As DataTable = DTAsistenciasInasistencias.FiltraParametros(" CvePersonal = " & pRow("CvePersonal").ToString() & " AND Fecha ='" & drow(0).ToString() & "' ") - Dim TipoCorto As String = "" + Dim RRow As DataRow = dt.NewRow + RRow("CvePersonal") = pRow("CvePersonal") + RRow("NombreCompleto") = pRow("NombreCompleto") + 'RRow("Codigo") = pRow("Codigo") - If DTTempAsistencias.Rows.Count > 1 Then - TipoCorto = DTTempAsistencias(0)("TipoCorto").ToString() - End If + ColumN = 2 + For Each drow As DataRow In DTFechas.Rows - If TipoCorto <> "" Then + Dim filtro As String = " CvePersonal = " & pRow("CvePersonal").ToString() & " AND Fecha ='" & drow(0).ToString() & "' " + Dim ResumenDia As DataTable = DtResultados.FiltraParametros(" CvePersonal = " & pRow("CvePersonal").ToString() & " AND Fecha ='" & drow(0).ToString() & "' ") - If TipoCorto = "F" Then - RRow(ColumN) = "F" & "|" & filtro + Dim DTTempAsistencias As DataTable = DTAsistenciasInasistencias.FiltraParametros(" CvePersonal = " & pRow("CvePersonal").ToString() & " AND Fecha ='" & drow(0).ToString() & "' ") + Dim TipoCorto As String = "" + + If DTTempAsistencias.Rows.Count > 1 Then + TipoCorto = DTTempAsistencias(0)("TipoCorto").ToString() End If - If TipoCorto = "R" Then - RRow(ColumN) = "R" & "|" & filtro - Else - If TipoCorto = "A" Then - RRow(ColumN) = "A" & "|" & filtro + If TipoCorto <> "" Then + + If TipoCorto = "F" Then + RRow(ColumN) = "F" & "|" & filtro + End If + + If TipoCorto = "R" Then + RRow(ColumN) = "R" & "|" & filtro Else - If TipoCorto = "D" Then - RRow(ColumN) = "D" & "|" & filtro + If TipoCorto = "A" Then + RRow(ColumN) = "A" & "|" & filtro Else - - If TipoCorto = "V" Then - RRow(ColumN) = "V" & "|" & filtro + If TipoCorto = "D" Then + RRow(ColumN) = "D" & "|" & filtro Else - If TipoCorto = "I" Then - RRow(ColumN) = "I" & "|" & filtro - Else - If TipoCorto = "S" Then - RRow(ColumN) = "S" & "|" & filtro - End If + If TipoCorto = "V" Then + RRow(ColumN) = "V" & "|" & filtro + Else + If TipoCorto = "I" Then + RRow(ColumN) = "I" & "|" & filtro + Else + If TipoCorto = "S" Then + RRow(ColumN) = "S" & "|" & filtro + End If + + End If End If End If End If End If - End If - Else + Else - RRow(ColumN) = "-" + RRow(ColumN) = "-" - If ResumenDia(0)("TipoCorto").ToString() = "" Then + If ResumenDia(0)("TipoCorto").ToString() = "" Then - If ResumenDia(0)("Asistio").ToString() = "True" Then - RRow(ColumN) = "A|" & filtro - End If + If ResumenDia(0)("Asistio").ToString() = "True" Then + RRow(ColumN) = "A|" & filtro + End If - If ResumenDia(0)("DiaVacacion").ToString() = "True" Then - RRow(ColumN) = "V" & "|" & filtro - Else - If ResumenDia(0)("Asistio").ToString() = "False" Then - RRow(ColumN) = "F" & "|" & filtro + If ResumenDia(0)("DiaVacacion").ToString() = "True" Then + RRow(ColumN) = "V" & "|" & filtro Else - If ResumenDia(0)("Retraso").ToString() = "True" Then - RRow(ColumN) = "R" & "|" & filtro + If ResumenDia(0)("Asistio").ToString() = "False" Then + RRow(ColumN) = "F" & "|" & filtro Else - If ResumenDia(0)("FaltaRetraso").ToString() = "True" Then - RRow(ColumN) = "FR" & "|" & filtro - lblModalMensaje.Text = "Falta por retardo" + If ResumenDia(0)("Retraso").ToString() = "True" Then + RRow(ColumN) = "R" & "|" & filtro Else - If ResumenDia(0)("Descanso").ToString() = "True" Then - RRow(ColumN) = "D" & "|" & filtro + If ResumenDia(0)("FaltaRetraso").ToString() = "True" Then + RRow(ColumN) = "FR" & "|" & filtro + lblModalMensaje.Text = "Falta por retardo" Else - If ResumenDia(0)("Inconsistencia").ToString() = "True" Then - RRow(ColumN) = "IN" & "|" & filtro + If ResumenDia(0)("Descanso").ToString() = "True" Then + RRow(ColumN) = "D" & "|" & filtro + Else + If ResumenDia(0)("Inconsistencia").ToString() = "True" Then + RRow(ColumN) = "IN" & "|" & filtro - If ResumenDia(0)("Descanso").ToString() = "True" Then - RRow(ColumN) = "IND" & "|" & filtro + If ResumenDia(0)("Descanso").ToString() = "True" Then + RRow(ColumN) = "IND" & "|" & filtro + Else + + If ResumenDia(0)("TipoCorto").ToString() = "S" Then + RRow(ColumN) = "S" & "|" & filtro + + Else + If ResumenDia(0)("TipoCorto").ToString() = "M" Then + RRow(ColumN) = "M" & "|" & filtro + + End If + End If + + + End If + End If + End If + End If + End If + End If + End If + Else + + If ResumenDia(0)("TipoCorto").ToString() = "A" Then + RRow(ColumN) = "A" & "|" & filtro + End If + + If ResumenDia(0)("TipoCorto").ToString() = "V" Then + RRow(ColumN) = "V" & "|" & filtro + Else + If ResumenDia(0)("TipoCorto").ToString() = "F" Then + RRow(ColumN) = "F" & "|" & filtro + Else + + If ResumenDia(0)("TipoCorto").ToString() = "R" Then + RRow(ColumN) = "R" & "|" & filtro + Else + If TipoCorto = "FR" Then + RRow(ColumN) = "FR" & "|" & filtro + lblModalMensaje.Text = "Falta por retardo" + Else + If ResumenDia(0)("TipoCorto").ToString() = "D" Then + RRow(ColumN) = "D" & "|" & filtro + + End If + If ResumenDia(0)("TipoCorto").ToString() = "I" Then + RRow(ColumN) = "I" & "|" & filtro + Else + If ResumenDia(0)("TipoCorto").ToString() = "C" Then + RRow(ColumN) = "C" & "|" & filtro Else - If ResumenDia(0)("TipoCorto").ToString() = "S" Then RRow(ColumN) = "S" & "|" & filtro - Else If ResumenDia(0)("TipoCorto").ToString() = "M" Then RRow(ColumN) = "M" & "|" & filtro - End If End If - End If End If End If @@ -1141,62 +1197,21 @@ Partial Class RH_RepChecadorPreAsistencia End If End If End If - Else - If ResumenDia(0)("TipoCorto").ToString() = "A" Then - RRow(ColumN) = "A" & "|" & filtro - End If - - If ResumenDia(0)("TipoCorto").ToString() = "V" Then - RRow(ColumN) = "V" & "|" & filtro - Else - If ResumenDia(0)("TipoCorto").ToString() = "F" Then - RRow(ColumN) = "F" & "|" & filtro - Else - - If ResumenDia(0)("TipoCorto").ToString() = "R" Then - RRow(ColumN) = "R" & "|" & filtro - Else - If TipoCorto = "FR" Then - RRow(ColumN) = "FR" & "|" & filtro - lblModalMensaje.Text = "Falta por retardo" - Else - If ResumenDia(0)("TipoCorto").ToString() = "D" Then - RRow(ColumN) = "D" & "|" & filtro - - End If - If ResumenDia(0)("TipoCorto").ToString() = "I" Then - RRow(ColumN) = "I" & "|" & filtro - Else - If ResumenDia(0)("TipoCorto").ToString() = "C" Then - RRow(ColumN) = "C" & "|" & filtro - Else - If ResumenDia(0)("TipoCorto").ToString() = "S" Then - RRow(ColumN) = "S" & "|" & filtro - Else - If ResumenDia(0)("TipoCorto").ToString() = "M" Then - RRow(ColumN) = "M" & "|" & filtro - End If - End If - - End If - End If - End If - End If - End If - End If End If - - End If - ColumN = ColumN + 1 + ColumN = ColumN + 1 + Next + dt.Rows.Add(RRow) Next - dt.Rows.Add(RRow) - Next - Dim stopp As Integer = 0 - DtDatosTabla = dt + Dim stopp As Integer = 0 + DtDatosTabla = dt + + End If + + End Sub - Private Function HorarioDiario(Fecha As Date, DTHorarioPersonal As DataTable) As DataTable + Private Function HorarioDiario(Fecha As Date, DTHorarioPersonal As DataTable, DiaDescanso As Integer) As DataTable Dim respuesta As New DataTable respuesta.Columns.Add("TRABAJO", System.Type.GetType("System.Boolean")) @@ -1212,9 +1227,12 @@ Partial Class RH_RepChecadorPreAsistencia Dim diaSemana As Integer = Fecha.DayOfWeek + DiaDescanso = If(DiaDescanso > -1, DiaDescanso, 0) + Select Case diaSemana Case 0 - Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Domingo").ToString())) + Drow(0) = Boolean.Parse(If(IsNothing(drp), $"{(DiaDescanso <> diaSemana).ToString}", drp("Domingo").ToString())) + 'Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Domingo").ToString())) Drow(1) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("DomingoEntrada").ToString())) Drow(2) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("DomingoSalidaComida").ToString())) Drow(3) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("DomingoEntradaComida").ToString())) @@ -1222,42 +1240,48 @@ Partial Class RH_RepChecadorPreAsistencia Exit Select Case 1 - Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Lunes").ToString())) + Drow(0) = Boolean.Parse(If(IsNothing(drp), $"{(DiaDescanso <> diaSemana).ToString}", drp("Lunes").ToString())) + 'Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Lunes").ToString())) Drow(1) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("LunesEntrada").ToString())) Drow(2) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("LunesSalidaComida").ToString())) Drow(3) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("LunesEntradaComida").ToString())) Drow(4) = TimeSpan.Parse(If(IsNothing(drp), "09:00", drp("LunesSalida").ToString())) Exit Select Case 2 - Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Martes").ToString())) + Drow(0) = Boolean.Parse(If(IsNothing(drp), $"{(DiaDescanso <> diaSemana).ToString}", drp("Martes").ToString())) + 'Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Martes").ToString())) Drow(1) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("MartesEntrada").ToString())) Drow(2) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("MartesSalidaComida").ToString())) Drow(3) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("MartesEntradaComida").ToString())) Drow(4) = TimeSpan.Parse(If(IsNothing(drp), "09:00", drp("MartesSalida").ToString())) Exit Select Case 3 - Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Miercoles").ToString())) + Drow(0) = Boolean.Parse(If(IsNothing(drp), $"{(DiaDescanso <> diaSemana).ToString}", drp("Miercoles").ToString())) + 'Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Miercoles").ToString())) Drow(1) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("MiercolesEntrada").ToString())) Drow(2) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("MiercolesSalidaComida").ToString())) Drow(3) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("MiercolesEntradaComida").ToString())) Drow(4) = TimeSpan.Parse(If(IsNothing(drp), "09:00", drp("MiercolesSalida").ToString())) Exit Select Case 4 - Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Jueves").ToString())) + Drow(0) = Boolean.Parse(If(IsNothing(drp), $"{(DiaDescanso <> diaSemana).ToString}", drp("Jueves").ToString())) + 'Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Jueves").ToString())) Drow(1) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("JuevesEntrada").ToString())) Drow(2) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("JuevesSalidaComida").ToString())) Drow(3) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("JuevesEntradaComida").ToString())) Drow(4) = TimeSpan.Parse(If(IsNothing(drp), "09:00", drp("JuevesSalida").ToString())) Exit Select Case 5 - Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Viernes").ToString())) + Drow(0) = Boolean.Parse(If(IsNothing(drp), $"{(DiaDescanso <> diaSemana).ToString}", drp("Viernes").ToString())) + 'Drow(0) = Boolean.Parse(If(IsNothing(drp), "true", drp("Viernes").ToString())) Drow(1) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("ViernesEntrada").ToString())) Drow(2) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("ViernesSalidaComida").ToString())) Drow(3) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("ViernesEntradaComida").ToString())) Drow(4) = TimeSpan.Parse(If(IsNothing(drp), "09:00", drp("ViernesSalida").ToString())) Exit Select Case 6 - Drow(0) = Boolean.Parse(If(IsNothing(drp), "False", drp("Sabado").ToString())) + Drow(0) = Boolean.Parse(If(IsNothing(drp), $"{(DiaDescanso <> diaSemana).ToString}", drp("Sabado").ToString())) + 'Drow(0) = Boolean.Parse(If(IsNothing(drp), "False", drp("Sabado").ToString())) Drow(1) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("SabadoEntrada").ToString())) Drow(2) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("SabadoSalidaComida").ToString())) Drow(3) = TimeSpan.Parse(If(IsNothing(drp), "00:00", drp("SabadoEntradaComida").ToString())) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index ed75d8147..d7c1d5273 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -18127,15 +18127,30 @@ Partial Class Ventas End If ' NO VALIDA EXISTENCIAS NI COSTO - PERMISO PARA NO VALIDAR - If Not UsuarioActual.TienePermisoProceso(169) Then + If Not UsuarioActual.TienePermisoProceso(169) AndAlso RBLTipoVenta.SelectedValue.ToEntero <> 5 Then 'SOLO VALIDA EXISTENCIAS Y COSTO: SI USA INVENTARIOS, SOLO PRODUCTOS TIPO PRODUCTO, SOLO REMISIONES E INGRESOS If UsuarioActual.Empresa.UsaInventarios AndAlso CveTipoPS = 2 AndAlso (DdlTipoComprobante.SelectedValue.Contiene("Rem", "Ing", "PA") OrElse ((DdlTipoComprobante.SelectedValue.Contiene("Cot") And UsuarioActual.CveEmpresa.Contiene(119)) OrElse (DdlTipoComprobante.SelectedValue.Contiene("Ped") And UsuarioActual.CveEmpresa.Contiene(186)))) Then Dim ObjInventarios As New ClsInventarios Dim BuscarEnTabla As Boolean = If(UsuarioActual.Empresa.Funcionalidad(715) = "1", True, False) - Dim Existencia As Decimal = ObjInventarios.GetExistenciasPS(CvePS, CveUM, UsuarioActual.CveEmpresa, -1, FechaMovto:=DateTime.Today.AddDays(1).ToString("yyyy/MM/dd HH:mm"), CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), - CveVendedor:=DdlVendedor.SelectedValue.ToEntero(), CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), ExcluyeAdelantado:=1, PendientePorSurtir:=1, - RestringirAlmacenes:=1, ExcluyeApartados:=-1, BuscarEnTabla:=BuscarEnTabla) + + + Dim Existencia As Decimal = 0D + ''CveAlamcenFiltroDdl + + If RBLTipoVenta.SelectedValue.ToEntero = 6 Then + Existencia = ObjInventarios.GetExistenciasPS(CvePS, CveUM, UsuarioActual.CveEmpresa, CveAlamcenFiltroDdl, FechaMovto:=DateTime.Today.AddDays(1).ToString("yyyy/MM/dd HH:mm"), CveSubProyecto:=-1, + CveVendedor:=DdlVendedor.SelectedValue.ToEntero(), CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), ExcluyeAdelantado:=0, PendientePorSurtir:=1, + RestringirAlmacenes:=1, ExcluyeApartados:=-1, BuscarEnTabla:=BuscarEnTabla) + Else + Existencia = ObjInventarios.GetExistenciasPS(CvePS, CveUM, UsuarioActual.CveEmpresa, -1, FechaMovto:=DateTime.Today.AddDays(1).ToString("yyyy/MM/dd HH:mm"), CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), + CveVendedor:=DdlVendedor.SelectedValue.ToEntero(), CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), ExcluyeAdelantado:=1, PendientePorSurtir:=1, + RestringirAlmacenes:=1, ExcluyeApartados:=-1, BuscarEnTabla:=BuscarEnTabla) + End If + + + + Dim Costo As Decimal = ObjInventarios.GetCostoPS(CvePS, TxtCantidad.Text.Trim.ToDecimal, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveTipoAlmacen:=1) 'si el costo es cero, puede ser que no halla movimientos del producto, en esa sucursal. y se volverá a sacar sin especificar sucursal