diff --git a/App_Code/ClsGenerales.vb b/App_Code/ClsGenerales.vb
index 04d56a648..36a2814a5 100644
--- a/App_Code/ClsGenerales.vb
+++ b/App_Code/ClsGenerales.vb
@@ -1,6 +1,7 @@
Option Strict On
Option Explicit On
+Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports Extensiones
@@ -4111,6 +4112,32 @@ Public Class ClsGenerales
#End Region
+
+ Public Function GetMediosTransporte(CveOrigen As Integer, Estatus As Boolean, CveEmpresa As Integer, CveTipoNomina As Integer, CveSubProyecto As Integer, Tipo As Integer, GPO As Integer) As Boolean
+
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_Agro_OrigenGet")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveOrigen", SqlDbType.Int).Value = CveOrigen
+ .Add("@Estatus", SqlDbType.Bit).Value = Estatus
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@CveTipoNomina", SqlDbType.Int).Value = CveTipoNomina
+ .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
+ .Add("@Tipo", SqlDbType.Int).Value = Tipo
+ .Add("@GPO", SqlDbType.Int).Value = GPO
+ End With
+
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError($"Ocurrió un error al obtener los medios de transporte.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+
+ Return Retorno
+ End Function
+
+
End Class
diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb
index d2f7e6a76..e08b9b811 100644
--- a/App_Code/ClsNominas.vb
+++ b/App_Code/ClsNominas.vb
@@ -3052,6 +3052,27 @@ Public Class ClsNominas
#End Region
+ Public Function GetAsistenciabetweendate(CveEmpresa As Integer, FechaInicio As DateTime, FechaFin As DateTime) As Boolean
+ Dim retorno As Boolean = False
+ Try
+ DTSet = New DataSet()
+ DataAdapter("PA_RH_AsistenciaBetweenDates", CommandType.StoredProcedure)
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@FechaInicio", SqlDbType.DateTime).Value = FechaInicio
+ .Add("@FechaFin", SqlDbType.DateTime).Value = FechaFin
+ End With
+ SqlAdapter.Fill(Data)
+ retorno = True
+ Catch sqEx As SqlException
+ retorno = False
+ OnError("Ocurrió un error al obtener la asistencia de nomina.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ Catch ex As Exception
+ retorno = False
+ OnError("Ocurrió un error al obtener la asistencia de nomina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+ Return retorno
+ End Function
Public Sub addParameters(varsql As String, sqltipe As SqlDbType, valor As Object)
SqlAdapter.SelectCommand.Parameters.Add(varsql, sqltipe).Value = valor
diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb
index 469a026bf..f7896eacb 100644
--- a/App_Code/ClsPaginas.vb
+++ b/App_Code/ClsPaginas.vb
@@ -1091,13 +1091,17 @@ Public Class ClsPaginas
' Application("GlobalDTSucursales") = value
' End Set
'End Property
- Property GlobalDTSATUsosCFDI(Optional EsPersonaFisica As Integer = -1) As DataTable
+ Property GlobalDTSATUsosCFDI(Optional EsPersonaFisica As Integer = -1, Optional RegimenFiscalReceptor As String = "-1") As DataTable
Get
If EsPersonaFisica <> -1 Then
- Dim Tipo As String = ""
- If EsPersonaFisica = 1 Then Tipo = "AplicaPersonaFisica = 1" Else Tipo = "AplicaPersonaMoral = 1"
+ Dim Tipo As New StringBuilder
+ If EsPersonaFisica = 1 Then Tipo.Append("AplicaPersonaFisica = 1") Else Tipo.Append("AplicaPersonaMoral = 1")
- Dim Dv As New DataView(DirectCast(Application("GlobalDTSATUsosCFDI"), DataTable), Tipo, " UsoCFDIDescripcion", DataViewRowState.CurrentRows)
+ If RegimenFiscalReceptor <> "-1" Then
+ Tipo.AppendFormat("AND RegimenFiscalReceptor LIKE '%{0}%'", RegimenFiscalReceptor)
+ End If
+
+ Dim Dv As New DataView(DirectCast(Application("GlobalDTSATUsosCFDI"), DataTable), Tipo.ToString(), " UsoCFDIDescripcion", DataViewRowState.CurrentRows)
GlobalDTSATUsosCFDI = Dv.ToTable
Dv.Dispose()
Else
diff --git a/App_Code/ClsRH.vb b/App_Code/ClsRH.vb
index 23b1710e4..67bf2bda2 100644
--- a/App_Code/ClsRH.vb
+++ b/App_Code/ClsRH.vb
@@ -7180,6 +7180,31 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo
#End Region
+
+ Public Function UpPersonalSupervisorMasiva(CveEmpresa As Integer, CveUsuario As Integer, registros As List(Of RequestUpSupervisorMasiva)) As Boolean
+ Dim Retorno As Boolean = False
+ Dim xmlProductos As System.Xml.Linq.XDocument = Nothing
+ If registros IsNot Nothing AndAlso registros.Count > 0 Then
+ xmlProductos = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("registros", From x In registros Select New System.Xml.Linq.XElement("registro", New System.Xml.Linq.XElement("CvePersonal", x.CvePersonal), New System.Xml.Linq.XElement("CveUsuario", x.CveUsuario), New System.Xml.Linq.XElement("CveCliente", x.CveCliente))))
+ End If
+ Data = New DataTable
+ SqlDataAdapter("PA_RH_PersonalSupervisorMasivaUP")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
+ .Add("@xmlRegistros", SqlDbType.Xml).Value = xmlProductos.ToString()
+ End With
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch Ex1 As SqlException
+ Me.OnError("Ocurrió un error al guardar los supervisores.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ Catch ex As Exception
+ OnError("Ocurrió un error al guardar los supervisores.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
+ End Try
+ Return Retorno
+ End Function
+
'Public msgsError As New StringBuilder()
'Public Sub OnError(Mensaje As String, Exeption As Exception, Optional InfoAdicional As String = "")
' GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", Mensaje, Exeption.ToString, vbCrLf, InfoAdicional))
@@ -7236,3 +7261,8 @@ Public Class RequestUpAsistenciaDetalle
Public Property CveSubProyecto As Integer
Public Property Motivo As String
End Class
+Public Class RequestUpSupervisorMasiva
+ Public Property CvePersonal As Integer
+ Public Property CveUsuario As Integer
+ Public Property CveCliente As Integer
+End Class
\ No newline at end of file
diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb
index 26432a79f..1e17d5ae3 100644
--- a/App_Code/ClsVentas.vb
+++ b/App_Code/ClsVentas.vb
@@ -745,7 +745,8 @@ Public Class ClsVentas
Public Function UpdateEstatusFactura(Estatus As Integer, FolioFiscal As String, SelloSAT As String, FechaCancelacion As DateTime, CveVenta As Integer,
Optional IdPolizaCancelacion As Integer = -1, Optional CvePAC As Integer = -1, Optional CveEstatusRefacturacion As Integer = 0,
Optional CveUsuarioCambiaEstatus As Integer = -1, Optional FechaCambioEstatus As String = "-1", Optional RFCReceptor As String = "-1",
- Optional CveMotivoCancelacion As Integer = -1, Optional MotivoCancelacion As String = "", Optional EstadoCancelacion As String = "") As Boolean
+ Optional CveMotivoCancelacion As Integer = -1, Optional MotivoCancelacion As String = "", Optional EstadoCancelacion As String = "",
+ Optional CveEstadoCancelacion As Integer = 0) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_VentasUpdateEstatus")
@@ -765,6 +766,7 @@ Public Class ClsVentas
.Add("@CveMotivoCancelacion", SqlDbType.Int).Value = CveMotivoCancelacion
.Add("@MotivoCancelacion", SqlDbType.VarChar).Value = MotivoCancelacion
.Add("@EstadoCancelacion", SqlDbType.VarChar).Value = EstadoCancelacion
+ .Add("@CveEstadoCancelacion", SqlDbType.TinyInt).Value = CveEstadoCancelacion
End With
Try
@@ -855,7 +857,7 @@ Public Class ClsVentas
Return Retorno
End Function
- Public Function UpdateCancelaVenta(CveVenta As Integer, FechaCancelacion As DateTime, SelloCancelacionSAT As String, CveEmpresa As Integer, Optional CvePAC As Integer = -1, Optional CveEstatusRefacturacion As Integer = 0, Optional EstadoCancelacion As String = "") As Boolean
+ Public Function UpdateCancelaVenta(CveVenta As Integer, FechaCancelacion As DateTime, SelloCancelacionSAT As String, CveEmpresa As Integer, Optional CvePAC As Integer = -1, Optional CveEstatusRefacturacion As Integer = 0, Optional EstadoCancelacion As String = "", Optional CveEstadoCancelacion As Integer = 0) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_VentasCancelacion")
@@ -868,6 +870,7 @@ Public Class ClsVentas
.Add("@CvePAC", SqlDbType.SmallInt).Value = CvePAC
.Add("@CveEstatusRefacturacion", SqlDbType.TinyInt).Value = CveEstatusRefacturacion
.Add("@EstadoCancelacion", SqlDbType.VarChar).Value = EstadoCancelacion
+ .Add("@CveEstadoCancelacion", SqlDbType.TinyInt).Value = CveEstadoCancelacion
.Add("@Cancelada", SqlDbType.SmallInt).Direction = ParameterDirection.Output
End With
diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb
index fcad20aec..087d8e134 100644
--- a/App_Code/Modelos.vb
+++ b/App_Code/Modelos.vb
@@ -4636,8 +4636,8 @@ Namespace Modelos
''' Cancela la factura para poder realizar la refacturacion
'''
'''
- Public Function CancelarPorRefacturacion(CveMotivoCancelacion As Integer, Motivo As String, Optional FolioSustitucion As String = "", Optional ValidarSAT As Boolean = False) As MCancelacionVentaMensaje
- Return CancelarVenta(Me, Me.UsuarioActual, EsRefacturacion:=True, CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=Motivo, FolioSustitucion:=FolioSustitucion, ValidarSAT:=ValidarSAT)
+ Public Function CancelarPorRefacturacion(CveMotivoCancelacion As Integer, Motivo As String, Optional FolioSustitucion As String = "", Optional ValidarSAT As Boolean = False, Optional CveEstadoCancelacion As Integer = 0) As MCancelacionVentaMensaje
+ Return CancelarVenta(Me, Me.UsuarioActual, EsRefacturacion:=True, CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=Motivo, FolioSustitucion:=FolioSustitucion, ValidarSAT:=ValidarSAT, CveEstadoCancelacion:=CveEstadoCancelacion)
End Function
'''
''' Cancela la factura y realiza las operaciones correspondientes
@@ -4645,15 +4645,15 @@ Namespace Modelos
'''
'''
'''
- Public Function CancelarFactura(RealizarDevolucionAlmacen As Boolean, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, Optional CveMotivoCancelacion As Integer = -1, Optional Motivo As String = "", Optional ValidarSAT As Boolean = True) As MCancelacionVentaMensaje
+ Public Function CancelarFactura(RealizarDevolucionAlmacen As Boolean, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, Optional CveMotivoCancelacion As Integer = -1, Optional Motivo As String = "", Optional ValidarSAT As Boolean = True, Optional CveEstadoCancelacion As Integer = 0) As MCancelacionVentaMensaje
'Comprobante emitido con errores sin relación
- Return CancelarVenta(Me, Me.UsuarioActual, RealizarDevolucionAlmacen:=RealizarDevolucionAlmacen, ListaRemisionesCancelar:=ListaRemisionesCancelar, CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=Motivo)
+ Return CancelarVenta(Me, Me.UsuarioActual, RealizarDevolucionAlmacen:=RealizarDevolucionAlmacen, ListaRemisionesCancelar:=ListaRemisionesCancelar, CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=Motivo, CveEstadoCancelacion:=CveEstadoCancelacion)
End Function
Private Function CancelarVenta(ObjFactura As Modelos.Factura, UsuarioActual As Usuario, Optional EsRefacturacion As Boolean = False, Optional RealizarDevolucionAlmacen As Boolean = False,
- Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, Optional CveEstatusFacturaAsignado As Integer = -1,
- Optional FechaCancelacion As String = "-1", Optional AcuseCancelacion As String = "",
- Optional CveMotivoCancelacion As Integer = -1, Optional MotivoCancelacion As String = "", Optional FolioSustitucion As String = "", Optional ValidarSAT As Boolean = True) As MCancelacionVentaMensaje
+ Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, Optional CveEstatusFacturaAsignado As Integer = -1, Optional FechaCancelacion As String = "-1",
+ Optional AcuseCancelacion As String = "", Optional CveMotivoCancelacion As Integer = -1, Optional MotivoCancelacion As String = "",
+ Optional FolioSustitucion As String = "", Optional ValidarSAT As Boolean = True, Optional CveEstadoCancelacion As Integer = 0) As MCancelacionVentaMensaje
Dim Retorno As New MCancelacionVentaMensaje()
Dim ErrorList As New List(Of String)
@@ -4801,6 +4801,7 @@ Namespace Modelos
Dim CveEstatusRefacturacion As Integer = If(ObjFactura.CveEstatusRefacturacion <= 0, 0, ObjFactura.CveEstatusRefacturacion)
+
If Not EsRefacturacion Then
CveEstatusRefacturacion = 0
End If
@@ -4828,7 +4829,7 @@ Namespace Modelos
Dim Continuar As Boolean = False
Dim ContinuarCancelacion As Boolean = False
Dim ObtenerAcuse As Boolean = False
- Dim RequiereAceptacion As Boolean = False
+ Dim RequiereAceptacion As Boolean = True
Dim Mensaje As String = ""
Dim CveSATMotivoCancelacion As Integer = -1
@@ -4845,6 +4846,14 @@ Namespace Modelos
CveEstatusFacturaAsignado = 23
End If
+ 'SI NO SE ASIGNA EL ESTATUS DE CANCELACION, TOMA EL GUARADO DE LA FACTURA
+ CveEstadoCancelacion = If(CveEstadoCancelacion <= 0, ObjFactura.CveEstadoCancelacion, CveEstadoCancelacion)
+
+ 'SI YA SE CONOCE EL ESTADO DE CANCELACION, NO LO VERIFICA ANTE EL SAT
+ If CveEstadoCancelacion > 0 Then
+ ValidarSAT = False
+ End If
+
If CveEstatusFacturaAsignado <= 0 Then
Try
If ObjFactura.FolioFiscal <> "" AndAlso (UsuarioActual.Empresa.FacturaProduccion OrElse UsuarioActual.CveEmpresa = 1) Then
@@ -4919,22 +4928,26 @@ Namespace Modelos
If Vigencia.EstatusCancelacion.ToUpper() = "EN PROCESO" Then
CveEstatus = 20
ContinuarCancelacion = False
+ RequiereAceptacion = True
ElseIf Vigencia.EsCancelable.ToUpper() = "CANCELABLE CON ACEPTACIÓN" Then
CveEstatus = 20
ContinuarCancelacion = True
RequiereAceptacion = True
ElseIf Vigencia.EsCancelable.ToUpper() = "CANCELABLE SIN ACEPTACIÓN" Then
ContinuarCancelacion = True
+ RequiereAceptacion = False
CveEstatus = 5
End If
Else
If Vigencia.EsCancelable.ToUpper() = "CANCELABLE SIN ACEPTACIÓN" Then
ContinuarCancelacion = True
+ RequiereAceptacion = False
CveEstatus = 5
Else
CveEstatus = 20
ContinuarCancelacion = False
+ RequiereAceptacion = True
CancelacionFecha = Now.Date
CancelacionAcuse = ""
End If
@@ -4951,10 +4964,19 @@ Namespace Modelos
CancelacionFecha = Now.Date
CancelacionAcuse = ""
- Dim diasTimbrado As Decimal = DateDiff(DateInterval.Day, ObjFactura.FechaCP, Now)
+ 'VERICA SI YA SE TIENE EL ESTADO DE CANCELACION, PARA SABER SI REQUIERE ACEPTACION
+ If CveEstadoCancelacion > 0 Then
+ If CveEstadoCancelacion = 1 Then
+ RequiereAceptacion = False
+ ElseIf CveEstadoCancelacion = 2 Then
+ RequiereAceptacion = True
+ End If
+ Else
+ Dim diasTimbrado As Decimal = DateDiff(DateInterval.Day, ObjFactura.FechaCP, Now)
- If ObjFactura.Total < 5000D OrElse diasTimbrado <= 3 OrElse ObjFactura.Cliente.RFC.Contiene("XAXX010101000", "XEXX010101000") Then
- RequiereAceptacion = False
+ If ObjFactura.Total < 1000D OrElse diasTimbrado <= 1 OrElse ObjFactura.Cliente.RFC.Contiene("XAXX010101000", "XEXX010101000") Then
+ RequiereAceptacion = False
+ End If
End If
End If
@@ -5596,13 +5618,14 @@ Namespace Modelos
If CveEstatus.Contiene(4, 5) Then
- If Not ObjVentas.UpdateCancelaVenta(CveVenta, CancelacionFecha, CancelacionAcuse, UsuarioActual.CveEmpresa, CvePACCancelacion, CveEstatusRefacturacion, EstadoCancelacion:=EstadoCancelacion) Then
+ If Not ObjVentas.UpdateCancelaVenta(CveVenta, CancelacionFecha, CancelacionAcuse, UsuarioActual.CveEmpresa, CvePACCancelacion, CveEstatusRefacturacion, EstadoCancelacion:=EstadoCancelacion, CveEstadoCancelacion:=CveEstadoCancelacion) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al guardar el estatus de cancelación."
End If
Else
If Not ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, CancelacionAcuse, CancelacionFecha, CveVenta, IDPoliza, CvePAC:=CvePACCancelacion, CveEstatusRefacturacion:=CveEstatusRefacturacion,
- CveUsuarioCambiaEstatus:=UsuarioActual.CveUsuario, FechaCambioEstatus:=Now.ToString("yyyy-MM-dd HH:mm:ss.mmm"), CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=MotivoCancelacion, EstadoCancelacion:=EstadoCancelacion) Then
+ CveUsuarioCambiaEstatus:=UsuarioActual.CveUsuario, FechaCambioEstatus:=Now.ToString("yyyy-MM-dd HH:mm:ss.mmm"), CveMotivoCancelacion:=CveMotivoCancelacion,
+ MotivoCancelacion:=MotivoCancelacion, EstadoCancelacion:=EstadoCancelacion, CveEstadoCancelacion:=CveEstadoCancelacion) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al guardar el estatus de cancelación."
End If
@@ -6257,6 +6280,7 @@ Namespace Modelos
Public Property RFCReceptor As String = ""
Public Property ServicioDomicilio As Boolean
Public Property CveEstatusRefacturacion As Integer = 0
+ Public Property CveEstadoCancelacion As Integer = 0
Public Property NuevaFactura As Integer
Public Property EnviarCorreo As Boolean = False
Public Property ErrorList As List(Of String)
diff --git a/Bancos/IE.aspx b/Bancos/IE.aspx
index 53cd7fdc2..bc6b90616 100644
--- a/Bancos/IE.aspx
+++ b/Bancos/IE.aspx
@@ -1370,9 +1370,9 @@
-
+
-
+
diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb
index 8290aef4f..f3eade517 100644
--- a/Bancos/IE.aspx.vb
+++ b/Bancos/IE.aspx.vb
@@ -4606,7 +4606,7 @@ Partial Class Bancos_IE
End If
- If Not ErrorCancelarComplemento Then
+ If CveMotivoCancelacion > 0 AndAlso CveSATMotivoCancelacion > 0 Then
Dim ObjCancelacion As New Timbrado
If EstatusSATCancelado(FolioFiscalCancelar, UsuarioActual.Empresa.RFC, RFCReceptorCancelar) Then
@@ -4621,7 +4621,7 @@ Partial Class Bancos_IE
Else
If ObjCancelacion.CFDICancelar(UsuarioActual.Empresa, FolioFiscalCancelar, 0, RFCReceptorCancelar, UsuarioActual.Empresa.RFC, CvePACCancelacion, CveSATMotivoCancelacion:=CveSATMotivoCancelacion) Then
- If Banc.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=ObjCancelacion.CancelacionFecha, SelloCancelacion:=ObjCancelacion.CancelacionAcuse) Then
+ If Banc.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=ObjCancelacion.CancelacionFecha, SelloCancelacion:=ObjCancelacion.CancelacionAcuse, CveSATMotivoCancelacion:=CveSATMotivoCancelacion) Then
CargaComplementosPago()
RegistraScript("$('#ModalCancelarComplemetno').modal('hide');")
ErrorCancelarComplemento = False
@@ -5902,16 +5902,20 @@ Partial Class Bancos_IE
e.Row.FCDropDownList("DdlMotivoCancelacion").DataBind()
e.Row.FCDropDownList("DdlMotivoCancelacion").Items.Insert(0, New ListItem("Seleccione Uno", "-1"))
+ If e.Row.DataKey("Estatus").ToEntero = 1 Then
+ e.Row.FCLiteral("LtlMotivoCancelacion").Visible = True
+ End If
+
Else
e.Row.FCLinkButton("LnkCancelarComplemetno").Visible = False
e.Row.FCDropDownList("DdlMotivoCancelacion").Visible = False
+
+ If e.Row.DataKey("Estatus").ToEntero = 2 Then
+ e.Row.FCLiteral("LtlMotivoCancelacion").Visible = True
+ End If
End If
- If e.Row.DataKey("Estatus").ToEntero = 2 Then
- e.Row.FCLiteral("LtlMotivoCancelacion").Visible = True
- Else
- e.Row.FCDropDownList("DdlMotivoCancelacion").Visible = False
- End If
+
ElseIf e.Row.DataKey("Tipo") = "Egs" Then
diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb
index df4a7914f..3f722b885 100644
--- a/Compras/PopUpVerFactura.aspx.vb
+++ b/Compras/PopUpVerFactura.aspx.vb
@@ -1016,7 +1016,7 @@ Partial Class PopUpVerFactura
Private Sub ImprimeFormatoCartaPorte(CveMovimiento As Integer)
If CveMovimiento > 0 Then
Dim ObjInv As New ClsInventarios
-
+
Dim SerieFolio As String = ""
Dim DomicilioSucursal As String = ""
Dim LugarFecha As String = ""
diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs
index f56d87ecc..77e8f2368 100644
--- a/Nomina/Nomina.aspx.cs
+++ b/Nomina/Nomina.aspx.cs
@@ -22,6 +22,28 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
get { return 5; }
}
+
+ private DateTime FechaInicioPeriodo
+ {
+ get
+ {
+ if (ViewState["FechaInicioPeriodo"] == null) { return DateTime.Now; }
+ else { return (DateTime)ViewState["FechaInicioPeriodo"]; }
+ }
+
+ set { ViewState["FechaInicioPeriodo"] = value; }
+ }
+ private DateTime FechaFinPeriodo
+ {
+ get
+ {
+ if (ViewState["FechaFinPeriodo"] == null) { return DateTime.Now.AddDays(1); }
+ else { return (DateTime)ViewState["FechaFinPeriodo"]; }
+ }
+
+ set { ViewState["FechaFinPeriodo"] = value; }
+ }
+
private DataTable dtNomConceptos
{
get
@@ -422,7 +444,6 @@ public partial class Nomina_Nomina2 : ClsPaginas
dtempleados = null;
dtConceptos = null;
DataTable dtPeriodo = new DataTable();
- DataTable dtasistencia = new DataTable();
LnkAutorizar.Visible = false;
Estatus = 5;
if (FiltCvePeriodo > 0)
@@ -438,6 +459,10 @@ public partial class Nomina_Nomina2 : ClsPaginas
int CvePrePolizaProvisionAsimilados = drow["CvePrePolizaAsimilables"].ToString().ToEntero();
int CvePrePolizaProrrateo = drow["CvePrePolizaProrrateo"].ToString().ToEntero();
+
+ FechaInicioPeriodo = (DateTime)dtPeriodo.Rows[0]["FechaInicio"];
+ FechaFinPeriodo = (DateTime)dtPeriodo.Rows[0]["FechaFin"];
+
//LnkConceptoEmpleado.Visible = (Estatus == 1);
LnkRegistrarProvision.Visible = (Estatus >= 2);//&& (CvePrePolizaProvision <= 0 || UsuarioActual.CveUsuario == 100);
LnkRegistrarProvision.Text = CvePrePolizaProvision <= 0 ? "Registrar provisión" : "Regenerar provisión";
@@ -466,7 +491,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
dtConceptos = objnom.DTSetResultados.Tables[0];
dtPeriodo = objnom.DTSetResultados.Tables[1];
- dtasistencia = objnom.DTSetResultados.Tables[2];
+ //dtasistencia = objnom.DTSetResultados.Tables[2];
CvePeriodoSeleccionado = FiltCvePeriodo;
continuar = true;
}
@@ -826,74 +851,87 @@ public partial class Nomina_Nomina2 : ClsPaginas
GvNominas.DataSource = null;
GvNominas.DataBind();
}
- if (cargaasistencia)
- {
- if (dtPeriodo != null && dtPeriodo.Rows.Count > 0)
- {
-
- DateTime FechaInicio = (DateTime)dtPeriodo.Rows[0]["FechaInicio"];
- DateTime FechaFin = (DateTime)dtPeriodo.Rows[0]["FechaFin"];
- StringBuilder gvasistencia = new StringBuilder();
- gvasistencia.Append("
");
- if (true)
- {
- DateTime fecha = FechaInicio;
-
- gvasistencia.Append("
");
- gvasistencia.Append("
Nombre
");
- while (fecha <= FechaFin)
- {
- gvasistencia.AppendFormat("
{0:dd/MM/yyyy}
", fecha);
- fecha = fecha.AddDays(1);
- }
- gvasistencia.Append("
");
- }
- string tipo = "";
- foreach (DataRow rempl in dtempleados.FiltraParametros("CvePersonal>0").Rows)
- {
- int CvePersonal = rempl["CvePersonal"].ToString().ToEntero();
- string nombre = rempl["Nombre"].ToString();
- string Codigo = rempl["Codigo"].ToString();
- DateTime fecha = FechaInicio; int HorasDobles, HorasTriples;
- gvasistencia.Append("
-
diff --git a/RH/ActualizacionMasiva.aspx.vb b/RH/ActualizacionMasiva.aspx.vb
index 5e946ba74..5c81bf818 100644
--- a/RH/ActualizacionMasiva.aspx.vb
+++ b/RH/ActualizacionMasiva.aspx.vb
@@ -12,7 +12,15 @@ Partial Class RH_ActualizacionMasiva
SetPermisos()
'DdlCliente.Attributes.Add("onclick", "CargaClientes();")
- CargaProyecto()
+ 'CargaProyecto()
+ CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, LblProyecto, LblSubProyeccto)
+ divddlproyeto.Visible = DdlProyecto.Visible
+ GvDatos.Columns(2).Visible = DdlProyecto.Visible
+ GvDatos.Columns(3).HeaderText = LblSubProyeccto.Text
+ GvDatos.DataSource = New DataTable()
+ GvDatos.DataBind()
+
+ GvDatos.CssClass = String.Format("{0} {1}", GvDatos.CssClass, If(DdlProyecto.Visible, "Columns4", ""))
CargaTurnos()
CargaSupervisores()
End If
@@ -70,16 +78,6 @@ Partial Class RH_ActualizacionMasiva
' DdlCliente.Attributes.Remove("onclick")
'End Sub
- Private Sub CargaProyecto()
- ViewState("DTProyectos") = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa)
-
- Dim Row As DataRow = DirectCast(ViewState("DTProyectos"), DataTable).NewRow()
- Row("CveProyecto") = -1 : Row("Proyecto") = "Sin Proyecto asignado"
- DirectCast(ViewState("DTProyectos"), DataTable).Rows.InsertAt(Row, 0)
-
- DdlProyecto.DataSource = GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, 1)
- DdlProyecto.DataBind()
- End Sub
Private Sub CargaSubProyecto()
ViewState("DTSubProyectos") = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
@@ -90,20 +88,18 @@ Partial Class RH_ActualizacionMasiva
End Sub
Private Sub CargaTurnos()
- ViewState("DTTurno") = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
- DdlTurno.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
+ ViewState("DTTurno") = GlobalDTTurno.FiltraParametros(String.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa))
+ DdlTurno.DataSource = GlobalDTTurno.FiltraParametros(String.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa))
DdlTurno.DataBind()
End Sub
Private Sub CargaSupervisores()
- ViewState("DTUsuarios") = GlobalDTUsuarios.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa & " AND EsSupervisorRH = 1 ")
+ ViewState("DTUsuarios") = GlobalDTUsuarios.FiltraParametros(String.Format("CveEmpresa = {0} AND EsSupervisorRH = 1 ", UsuarioActual.CveEmpresa))
Dim Row As DataRow = DirectCast(ViewState("DTUsuarios"), DataTable).NewRow()
Row("CveUsuario") = -1 : Row("Nombre") = "Sin Supervisor Asignado"
DirectCast(ViewState("DTUsuarios"), DataTable).Rows.InsertAt(Row, 0)
- 'DdlSupervisor.DataSource = GlobalDTUsuarios.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa & " AND EsSupervisorRH = 1 ")
- 'DdlSupervisor.DataBind()
End Sub
#End Region
@@ -113,9 +109,10 @@ Partial Class RH_ActualizacionMasiva
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
-
- Using ObjPersonal As New ClsRH
-
+ consultardata()
+ End Sub
+ Public Sub consultardata()
+ Using ObjPersonal As New ClsRH()
If ObjPersonal.GetPersonalMasivo(DdlTurno.SelectedValue.ToEntero, DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, -1, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = ObjPersonal.DtResultados
Else
@@ -123,7 +120,6 @@ Partial Class RH_ActualizacionMasiva
End If
End Using
-
GvDatos.DataBind()
UPDatos.Update()
End Sub
@@ -154,18 +150,21 @@ Partial Class RH_ActualizacionMasiva
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("Turno") = "" AndAlso e.Row.DBCampo("Nombre") = "" Then
- e.Row.FCLiteral("LtlNombre").Text = "Sub Proyecto: " & If(e.Row.DBCampo("SubProyecto") = String.Empty, "Sin Proyecto Asignado", e.Row.DBCampo("SubProyecto"))
- e.Row.Cells(0).ColumnSpan = 7
- For i As Integer = 1 To 6
+ e.Row.FCLiteral("LtlCodigo").Text = String.Format("{0}: {1}", LblSubProyeccto.Text, If(e.Row.DBCampo("SubProyecto") = String.Empty, "Sin Proyecto Asignado", e.Row.DBCampo("SubProyecto")))
+
+ e.Row.Cells(0).ColumnSpan = 11
+ For i As Integer = 1 To 10
e.Row.Cells(i).Visible = False
Next
+ e.Row.CssClass = "Titulos2"
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
ElseIf e.Row.DBCampo("Turno") <> "" AndAlso e.Row.DBCampo("Nombre") = "" Then
- e.Row.FCLiteral("LtlNombre").Text = "Turno: " & e.Row.DBCampo("Turno")
- e.Row.Cells(0).ColumnSpan = 7
- For i As Integer = 1 To 6
+ e.Row.FCLiteral("LtlCodigo").Text = String.Format("Turno: {0}", e.Row.DBCampo("Turno"))
+ e.Row.Cells(0).ColumnSpan = 11
+ For i As Integer = 1 To 10
e.Row.Cells(i).Visible = False
Next
+ e.Row.CssClass = "Titulos3"
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
Else
'If e.Row.DBCampo("CveProyecto") <> String.Empty Then e.Row.FCDropDownList("DdlGVProyecto").SelectedValue = e.Row.DBCampo("CveProyecto")
@@ -177,6 +176,14 @@ Partial Class RH_ActualizacionMasiva
e.Row.FCTextBox("TxtSalarioCotizado").Text = e.Row.FCTextBox("TxtSalarioCotizado").Text.Replace(",", "")
+ e.Row.FCDropDownList("DdlSupervisor").DataSource = DTUsuarios
+ e.Row.FCDropDownList("DdlSupervisor").DataBind()
+ e.Row.FCDropDownList("DdlSupervisor").Items.Insert(0, New ListItem("Sin Supervisor Asignado", "-1"))
+ e.Row.FCDropDownList("DdlSupervisor").SelectedValueExist(e.Row.DBCampo("CveSupervisor").ToString())
+
+ e.Row.FCDropDownLost("DdlClientes").SelectedValue = e.Row.DBCampo("CveCliente")
+ e.Row.FCDropDownLost("DdlClientes").SelectedText = e.Row.DBCampo("Cliente")
+
''Deshabilita todo
'e.Row.Cells(1).Enabled = True : e.Row.Cells(2).Enabled = True : e.Row.Cells(3).Enabled = True : e.Row.Cells(4).Enabled = True
'e.Row.Cells(5).Enabled = True : e.Row.Cells(6).Enabled = True : e.Row.Cells(7).Enabled = True
@@ -188,7 +195,7 @@ Partial Class RH_ActualizacionMasiva
End If
End Sub
- Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs) Handles BtnGuardar.Click
+ Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs)
'Dim ObjPersonal As New ClsRH
'ObjPersonal.IniciaTransacSQL()
@@ -309,7 +316,7 @@ Partial Class RH_ActualizacionMasiva
Response.BinaryWrite(memoryStream.ToArray())
Response.[End]()
Catch ex As Exception
- Alert("Ocurrio un error al generar el Formato de salario" & ex.ToString())
+ Alert(String.Format("Ocurrio un error al generar el Formato de salario {0}", ex.ToString()))
End Try
End Sub
Protected Sub LnkCargarSalarios_Click(sender As Object, e As EventArgs)
@@ -344,8 +351,7 @@ Partial Class RH_ActualizacionMasiva
DTEXcel = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, True).FiltraParametros(" LEN(Codigo)>0 ")
Catch ex As Exception
continuar = False
- stringError = "Ocurrio un Error al procesar el excel "
- String.Format("{0} " & vbCrLf & "{0}", stringError, ex.ToString()).GuardaLog()
+ String.Format("Ocurrio un Error al procesar el excel {0}{1}", vbCrLf, ex.ToString()).GuardaLog()
End Try
End If
If continuar Then
@@ -386,4 +392,30 @@ Partial Class RH_ActualizacionMasiva
End If
End Sub
+
+ Protected Sub BtnGuardarSupervisor_Click(sender As Object, e As EventArgs)
+ Dim CvePersonal As Integer = 0
+ Dim listpersonal As New List(Of RequestUpSupervisorMasiva)
+ For Each Row As GridViewRow In GvDatos.Rows
+ CvePersonal = Row.DataKey("CvePersonal").ToEntero()
+ If CvePersonal > 0 Then
+ listpersonal.Add(New RequestUpSupervisorMasiva() With {.CvePersonal = CvePersonal, .CveUsuario = Row.FCDropDownList("DdlSupervisor").SelectedValue.ToEntero(),
+ .CveCliente = Row.FCDropDownLost("DdlClientes").SelectedValue.ToEntero()})
+ End If
+ Next
+ Dim continuar As Boolean = False
+ Using ObjPersonal As ClsRH = New ClsRH()
+ ObjPersonal.IniciaTransacSQL()
+ If ObjPersonal.UpPersonalSupervisorMasiva(UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario, listpersonal) Then
+ ObjPersonal.Commit()
+ continuar = True
+ Alert("La información se guardó correctamente.", TipoMensaje.MsgInformacion)
+ Else
+ ObjPersonal.RollBack()
+ End If
+ End Using
+ If continuar Then
+ consultardata()
+ End If
+ End Sub
End Class
diff --git a/RH/CatPersonal.aspx b/RH/CatPersonal.aspx
index 8d69c7440..282a35657 100644
--- a/RH/CatPersonal.aspx
+++ b/RH/CatPersonal.aspx
@@ -1141,7 +1141,10 @@