This commit is contained in:
2019-09-04 18:46:44 -07:00
51 changed files with 4880 additions and 408 deletions

1
.gitignore vendored
View File

@@ -6,6 +6,7 @@ Log.txt
LogMail.txt LogMail.txt
LogTimbrado.txt LogTimbrado.txt
[Mm]enu/ [Mm]enu/
[Mm]anuales/
[Tt]emp/ [Tt]emp/
[Ee]mpresas/ [Ee]mpresas/
# User-specific files # User-specific files

View File

@@ -873,6 +873,53 @@ Public Class ClsCRM
End Try End Try
Return Retorno Return Retorno
End Function End Function
Public Function AddAcercamientosGastos(CveAcercamiento As Integer, Descripcion As String, Importe As Decimal, CveUsuario As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_CRM_AcercamientosGastosAdd")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveAcercamiento", SqlDbType.Int).Value = CveAcercamiento
.Add("@Descripcion", SqlDbType.VarChar).Value = Descripcion
.Add("@Importe", SqlDbType.Money).Value = Importe
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al agregar los Gastos del Acercamiento.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function UpdateAcercamientosGastos(CveAcercamientoGasto As Integer, Descripcion As String, Importe As Decimal) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_CRM_AcercamientosGastosUpdate")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveAcercamientoGasto", SqlDbType.Int).Value = CveAcercamientoGasto
.Add("@Descripcion", SqlDbType.VarChar).Value = Descripcion
.Add("@Importe", SqlDbType.Money).Value = Importe
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al actualizar los Gastos del Acercamiento.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function RemoveAcercamientosGastos(CveAcercamientoGasto As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_CRM_AcercamientosGastosRemove")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveAcercamientoGasto", SqlDbType.Int).Value = CveAcercamientoGasto
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al eliminar los Gastos del Acercamiento.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
#End Region #End Region

View File

@@ -89,7 +89,7 @@ Public Class ClsContPAQi
Catch ex As Exception Catch ex As Exception
Me.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) Me.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex)
End Try End Try
ConexionAdd() 'ConexionAdd()
End Sub End Sub
Private Sub SetTimeOut(Optional Tiempo As Integer = 30) Private Sub SetTimeOut(Optional Tiempo As Integer = 30)
SqlCommand.CommandTimeout = Tiempo SqlCommand.CommandTimeout = Tiempo
@@ -9960,34 +9960,45 @@ Public Class ClsContPAQi
Public Function FNC_GetCounter() As Boolean Public Function FNC_GetCounter() As Boolean
Dim Retorno = False Dim Retorno = False
StrSQL.Clear() 'StrSQL.Clear()
StrSQL.Append(" IF OBJECT_ID ('FNC_GetCounter') IS NOT NULL DROP FUNCTION FNC_GetCounter") 'StrSQL.Append(" IF OBJECT_ID ('FNC_GetCounter') IS NOT NULL DROP FUNCTION FNC_GetCounter")
SqlDataAdapter(StrSQL.ToString, CommandType.Text) 'SqlDataAdapter(StrSQL.ToString, CommandType.Text)
Try 'Try
SqlAdapter.SelectCommand.ExecuteNonQuery() ' SqlAdapter.SelectCommand.ExecuteNonQuery()
Catch ex As Exception 'Catch ex As Exception
Me.OnError("Ocurrió un error al eliminar la funcion FNC_GetCounter", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) ' Me.OnError("Ocurrió un error al eliminar la funcion FNC_GetCounter", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try 'End Try
StrSQL.Clear() StrSQL.Clear()
StrSQL.Append(" CREATE FUNCTION [dbo].[FNC_GetCounter] ") 'StrSQL.Append(" CREATE FUNCTION [dbo].[FNC_GetCounter] ")
StrSQL.Append(" ( ") 'StrSQL.Append(" ( ")
StrSQL.Append(" @TipoCounter VARCHAR(200) ") 'StrSQL.Append(" @TipoCounter VARCHAR(200) ")
StrSQL.Append(" ) ") 'StrSQL.Append(" ) ")
StrSQL.Append(" RETURNS INT ") 'StrSQL.Append(" RETURNS INT ")
StrSQL.Append(" AS ") 'StrSQL.Append(" AS ")
StrSQL.Append(" BEGIN ") 'StrSQL.Append(" BEGIN ")
StrSQL.Append(" ") 'StrSQL.Append(" ")
StrSQL.Append(" DECLARE @Id INT; ") 'StrSQL.Append(" DECLARE @Id INT; ")
StrSQL.Append(" ") 'StrSQL.Append(" ")
StrSQL.Append(" SELECT @Id = C.Next ") 'StrSQL.Append(" SELECT @Id = C.Next ")
StrSQL.Append(" FROM Counters C ") 'StrSQL.Append(" FROM Counters C ")
StrSQL.Append(" WHERE C.Name = @TipoCounter; ") 'StrSQL.Append(" WHERE C.Name = @TipoCounter; ")
StrSQL.Append(" ") 'StrSQL.Append(" ")
StrSQL.Append(" RETURN @Id; ") 'StrSQL.Append(" RETURN @Id; ")
StrSQL.Append(" END; ") 'StrSQL.Append(" END; ")
StrSQL.AppendLine(" IF NOT EXISTS (SELECT 1 FROM sys.objects WHERE type = 'FN' AND name = 'FNC_GetCounter')")
StrSQL.AppendLine(" BEGIN")
StrSQL.AppendLine(" DECLARE @sql NVARCHAR(MAX);")
StrSQL.AppendLine(" SET @sql = N'CREATE FUNCTION [dbo].[FNC_GetCounter] ")
StrSQL.AppendLine(" (@TipoCounter VARCHAR(200))")
StrSQL.AppendLine(" RETURNS INT AS ")
StrSQL.AppendLine(" BEGIN ")
StrSQL.AppendLine(" DECLARE @Id INT;SELECT @Id = C.Next FROM Counters C WHERE C.Name = @TipoCounter;RETURN @Id; ")
StrSQL.AppendLine(" END;';")
StrSQL.AppendLine(" EXEC sp_executesql @sql;")
StrSQL.AppendLine(" END")
@@ -11200,7 +11211,7 @@ Public Class ClsContPAQi
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose() 'ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -4663,6 +4663,55 @@ Public Class ClsInventarios
End Try End Try
Return Retorno Return Retorno
End Function End Function
Public Function AddProductosServiciosAlmacenSeccion(CvePS As Integer, CveAlmacen As Integer, CveAlmacenSeccion As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Inv_ProductosServiciosAlmacenSeccionAdd")
With SqlAdapter.SelectCommand.Parameters
.Add("@CvePS", SqlDbType.Int).Value = CvePS
.Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen
.Add("@CveAlmacenSeccion", SqlDbType.Int).Value = CveAlmacenSeccion
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al agregar el ps de la seccion de almacen", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function GetProductosServiciosAlmacenSeccion(CvePS As Integer, CveAlmacen As Integer, CveAlmacenSeccion As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Inv_ProductosServiciosAlmacenSeccionGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CvePS", SqlDbType.Int).Value = CvePS
.Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen
.Add("@CveAlmacenSeccion", SqlDbType.Int).Value = CveAlmacenSeccion
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el ps de la seccion de almacen", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function RemoveProductosServiciosAlmacenSeccion(CvePSAlmacenSeccion As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Inv_ProductosServiciosAlmacenSeccionRemove")
With SqlAdapter.SelectCommand.Parameters
.Add("@CvePSAlmacenSeccion", SqlDbType.Int).Value = CvePSAlmacenSeccion
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al eliminar el ps de la seccion de almacen", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
#End Region #End Region

View File

@@ -13,7 +13,13 @@ Public Class ClsNominas
Private SqlTransacc As SqlTransaction Private SqlTransacc As SqlTransaction
Private Data As DataTable Private Data As DataTable
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'REGISTRAR CONEXIONES ABIERTAS Protected DTSet As DataSet
Public ReadOnly Property DTSetResultados() As DataSet
Get
Return DTSet
End Get
End Property 'REGISTRAR CONEXIONES ABIERTAS
Private CveConexion As Integer = 0 Private CveConexion As Integer = 0
#End Region #End Region
@@ -764,6 +770,20 @@ Public Class ClsNominas
#End Region #End Region
#Region "ClsNominasConceptos" #Region "ClsNominasConceptos"
Public Function GetNom_Refencias() As Boolean
Dim retorno As Boolean = False
DataAdapter("SELECT CveNomReferencia,CveNomReferenciaPadre,Nivel,Texto,Campo,Tipo,IIF(EsUltimo=0,0,1) EsUltimo FROM [dbo].[Nom_Referencia] WHERE Estatus =1 ORDER BY Nivel ASC,CveNomReferencia ", CommandType.Text)
Try
SqlAdapter.Fill(Data)
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el o los conceptos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return retorno
End Function
Public Function GetConceptos(CveEmpresa As Integer, Optional CveTipo As String = "-1", Optional CveEstado As Integer = -1, Optional CveTipoGasto As Integer = -1, Optional CveConcepto As Integer = -1) As Boolean Public Function GetConceptos(CveEmpresa As Integer, Optional CveTipo As String = "-1", Optional CveEstado As Integer = -1, Optional CveTipoGasto As Integer = -1, Optional CveConcepto As Integer = -1) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Nom_ConceptosGet") DataAdapter("PA_Nom_ConceptosGet")
@@ -1755,6 +1775,59 @@ Public Class ClsNominas
End Function End Function
#End Region #End Region
Public Function AddUPNom_NominasDetalles(CveNomina As Integer, CvePeriodo As Integer, CvePersonal As Integer, CveConcepto As Integer, Importe As Decimal, ImporteGravado As Decimal, ImporteExento As Decimal, CveUsuario As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Nom_NominasDetallesAddUP")
With SqlAdapter.SelectCommand.Parameters
.Add("CveNomina", SqlDbType.Int).Value = CveNomina
.Add("CvePeriodo", SqlDbType.Int).Value = CvePeriodo
.Add("CvePersonal", SqlDbType.Int).Value = CvePersonal
.Add("CveConcepto", SqlDbType.Int).Value = CveConcepto
.Add("Importe", SqlDbType.Float).Value = Importe
.Add("ImporteGravado", SqlDbType.Float).Value = ImporteGravado
.Add("ImporteExento", SqlDbType.Float).Value = ImporteExento
.Add("CveUsuario", SqlDbType.Int).Value = CveUsuario
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch Ex1 As SqlException
Me.OnError("Ocurrió un error al Guardar el Movimiento de Nomina.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function GetNominaEmpleado(CveProyecto As Integer, CveSubProyecto As Integer, CveTurno As Integer, CvePeriodo As Integer, CveEmpresa As Integer, Agrupador As Integer) As Boolean
Dim retorno As Boolean = False
Try
DataAdapter("PA_Nom_NominaEmpleado", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveProyecto", SqlDbType.Int).Value = CveProyecto
.Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
.Add("@CveTurno", SqlDbType.Int).Value = CveTurno
.Add("@CvePeriodo", SqlDbType.Int).Value = CvePeriodo
.Add("@Agrupador", SqlDbType.VarChar).Value = Agrupador
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
SqlAdapter.Fill(DTSet)
retorno = True
Catch sqEx As SqlException
retorno = False
OnError("Ocurrió un error al Realizar el calculo de utilidades.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Catch ex As Exception
retorno = False
OnError("Ocurrió un error al Realizar el calculo de utilidades.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return retorno
End Function
#Region "IDisposable Support" #Region "IDisposable Support"
' IDisposable ' IDisposable
Protected Overridable Sub Dispose(ByVal disposing As Boolean) Protected Overridable Sub Dispose(ByVal disposing As Boolean)

View File

@@ -16,7 +16,8 @@ Public Class ClsOC
Private Data As DataTable Private Data As DataTable
'Atributos de la clase 'Atributos de la clase
Private disposedValue As Boolean = False Private disposedValue As Boolean = False
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -167,7 +168,7 @@ Public Class ClsOC
SqlCommand = New SqlCommand("", SqlConexion) SqlCommand = New SqlCommand("", SqlConexion)
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
StrSQL = New StringBuilder StrSQL = New StringBuilder
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlAdapter.SelectCommand With SqlAdapter.SelectCommand
@@ -178,6 +179,45 @@ Public Class ClsOC
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
Try
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlCommand With SqlCommand
.Parameters.Clear() .Parameters.Clear()
@@ -2481,6 +2521,7 @@ Public Class ClsOC
disposedValue = True disposedValue = True
End Sub End Sub
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -16,6 +16,8 @@ Public Class ClsOIEventos
Private SqlCommand As SqlCommand Private SqlCommand As SqlCommand
Private Data As DataTable Private Data As DataTable
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -109,7 +111,7 @@ Public Class ClsOIEventos
SqlCommand = New SqlCommand("", SqlConexion) SqlCommand = New SqlCommand("", SqlConexion)
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlAdapter.SelectCommand With SqlAdapter.SelectCommand
@@ -120,6 +122,45 @@ Public Class ClsOIEventos
Data = New DataTable Data = New DataTable
If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
Try
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Sub IniciaTransacSQL() Public Sub IniciaTransacSQL()
SqlTransacc = SqlConexion.BeginTransaction() SqlTransacc = SqlConexion.BeginTransaction()
End Sub End Sub
@@ -1339,6 +1380,7 @@ Public Class ClsOIEventos
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -15,6 +15,8 @@ Public Class ClsOS
Private Data As DataTable Private Data As DataTable
'Atributos de la clase 'Atributos de la clase
Private disposedValue As Boolean = False Private disposedValue As Boolean = False
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -98,7 +100,7 @@ Public Class ClsOS
SqlCommand = New SqlCommand("", SqlConexion) SqlCommand = New SqlCommand("", SqlConexion)
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
StrSQL = New StringBuilder StrSQL = New StringBuilder
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlAdapter.SelectCommand With SqlAdapter.SelectCommand
@@ -109,6 +111,45 @@ Public Class ClsOS
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlCommand With SqlCommand
.Parameters.Clear() .Parameters.Clear()
@@ -1632,6 +1673,7 @@ Public Class ClsOS
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -21,6 +21,8 @@ Public Class ClsPV
'Atributos de la clase 'Atributos de la clase
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -64,7 +66,7 @@ Public Class ClsPV
End If End If
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure)
@@ -76,7 +78,44 @@ Public Class ClsPV
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
'Reporte de Ventas 'Reporte de Ventas
Public Function GetRepPVVentas(FechaI As String, FechaF As String, FechaIEjec As String, FechaFEjec As String, CveCliente As Integer, CveSubProyecto As Integer, CveSubProyectoEjecucion As Integer, Public Function GetRepPVVentas(FechaI As String, FechaF As String, FechaIEjec As String, FechaFEjec As String, CveCliente As Integer, CveSubProyecto As Integer, CveSubProyectoEjecucion As Integer,
@@ -193,6 +232,7 @@ Public Class ClsPV
' This code added by Visual Basic to correctly implement the disposable pattern. ' This code added by Visual Basic to correctly implement the disposable pattern.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above. ' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above.
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -21,6 +21,8 @@ Public Class ClsPresupuestos
'Atributos de la clase 'Atributos de la clase
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -64,7 +66,7 @@ Public Class ClsPresupuestos
End If End If
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -78,7 +80,45 @@ Public Class ClsPresupuestos
End Sub End Sub
#End Region #End Region
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
#Region "P R E S U P U E S T O S - P R O D U C T O S - D E T A L L E S" #Region "P R E S U P U E S T O S - P R O D U C T O S - D E T A L L E S"
Public Function GetPresupuestosDetalleProductos(CvePresupuestoDetalle As Integer) As Boolean Public Function GetPresupuestosDetalleProductos(CvePresupuestoDetalle As Integer) As Boolean
@@ -732,6 +772,7 @@ Public Class ClsPresupuestos
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -18,6 +18,9 @@ Public Class ClsProductosServicios
Private SqlTransacc As SqlTransaction Private SqlTransacc As SqlTransaction
Private Data As DataTable Private Data As DataTable
Private disposedValue As Boolean = False Private disposedValue As Boolean = False
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -113,7 +116,7 @@ Public Class ClsProductosServicios
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex)
End Try End Try
ConexionAdd()
End Sub End Sub
@@ -145,7 +148,7 @@ Public Class ClsProductosServicios
End If End If
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlAdapter.SelectCommand With SqlAdapter.SelectCommand
@@ -156,6 +159,45 @@ Public Class ClsProductosServicios
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Function GetPS(CvePS As Integer, CveClasificacion As Integer, CveEmpresa As Integer, Optional Codigo As String = "-1", Optional Codigo2 As String = "-1", Optional CodigoBarras As String = "-1", Optional PS As String = "-1", Optional EsPaquete As Integer = -1, Optional CveSubProyecto As Integer = -1, Optional pAplicaParaVenta As Integer = -1, Optional pEstado As Integer = -1, Optional CveClasificacionCosto As Integer = -1, Optional CveTipoPS As Integer = -1, Optional CveCompuesto As Integer = -1, Optional SATClavePS As String = "-1") As Boolean Public Function GetPS(CvePS As Integer, CveClasificacion As Integer, CveEmpresa As Integer, Optional Codigo As String = "-1", Optional Codigo2 As String = "-1", Optional CodigoBarras As String = "-1", Optional PS As String = "-1", Optional EsPaquete As Integer = -1, Optional CveSubProyecto As Integer = -1, Optional pAplicaParaVenta As Integer = -1, Optional pEstado As Integer = -1, Optional CveClasificacionCosto As Integer = -1, Optional CveTipoPS As Integer = -1, Optional CveCompuesto As Integer = -1, Optional SATClavePS As String = "-1") As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False

View File

@@ -17,6 +17,8 @@ Public Class ClsProsEncuestas
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
Private StrSQL As StringBuilder Private StrSQL As StringBuilder
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -48,7 +50,7 @@ Public Class ClsProsEncuestas
End If End If
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -60,7 +62,44 @@ Public Class ClsProsEncuestas
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Function IniciaTransacSQL() As SqlTransaction Public Function IniciaTransacSQL() As SqlTransaction
If SqlTransacc Is Nothing Then SqlTransacc = SqlConexion.BeginTransaction() If SqlTransacc Is Nothing Then SqlTransacc = SqlConexion.BeginTransaction()
Return SqlTransacc Return SqlTransacc
@@ -752,6 +791,7 @@ Public Class ClsProsEncuestas
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -16,6 +16,8 @@ Public Class ClsProspectos
Private Data As DataTable Private Data As DataTable
Private StrSQL As StringBuilder Private StrSQL As StringBuilder
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -161,7 +163,7 @@ Public Class ClsProspectos
End If End If
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -173,6 +175,44 @@ Public Class ClsProspectos
Data = New DataTable Data = New DataTable
If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
#Region "Prospectos" #Region "Prospectos"
Public Function GetNext() As Boolean Public Function GetNext() As Boolean
@@ -4591,6 +4631,7 @@ Public Class ClsProspectos
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -23,6 +23,8 @@ Public Class ClsProyectos
'Atributos de la clase 'Atributos de la clase
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -55,7 +57,7 @@ Public Class ClsProyectos
SqlCommand = New SqlCommand("", SqlConexion) SqlCommand = New SqlCommand("", SqlConexion)
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlAdapter.SelectCommand With SqlAdapter.SelectCommand
@@ -66,6 +68,44 @@ Public Class ClsProyectos
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlCommand With SqlCommand
.Parameters.Clear() .Parameters.Clear()
@@ -210,6 +250,7 @@ Public Class ClsProyectos
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -18,6 +18,8 @@ Public Class ClsPruebasJJMQ
Private StrSQL As StringBuilder Private StrSQL As StringBuilder
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -47,6 +49,7 @@ Public Class ClsPruebasJJMQ
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
StrSQL = New StringBuilder StrSQL = New StringBuilder
ConexionAdd()
End Sub End Sub
Private Sub SqlDataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub SqlDataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -58,7 +61,44 @@ Public Class ClsPruebasJJMQ
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
SqlDataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
SqlDataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Private Sub SqlDataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub SqlDataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlCommand With SqlCommand
.Parameters.Clear() .Parameters.Clear()
@@ -134,6 +174,7 @@ Public Class ClsPruebasJJMQ
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -20,6 +20,8 @@ Public Class ClsPuntoVenta
'Atributos de la clase 'Atributos de la clase
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -84,7 +86,7 @@ Public Class ClsPuntoVenta
End If End If
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure)
@@ -96,7 +98,44 @@ Public Class ClsPuntoVenta
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Function GetVta_CortesDetalles(CveCorte As Integer) As Boolean Public Function GetVta_CortesDetalles(CveCorte As Integer) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
@@ -390,6 +429,7 @@ Public Class ClsPuntoVenta
' This code added by Visual Basic to correctly implement the disposable pattern. ' This code added by Visual Basic to correctly implement the disposable pattern.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above. ' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above.
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -81,14 +81,14 @@ Public Class ClsRH
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo 'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = HttpContext.Current.Request.Url.AbsolutePath.ToString
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
Try Try
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception Catch ex As Exception
@@ -102,7 +102,7 @@ Public Class ClsRH
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text) DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try Try
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)

View File

@@ -17,6 +17,8 @@ Public Class ClsRMA
Private SqlTransacc As SqlTransaction Private SqlTransacc As SqlTransaction
Private Data As DataTable Private Data As DataTable
Private disposedValue As Boolean = False Private disposedValue As Boolean = False
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -56,7 +58,7 @@ Public Class ClsRMA
End If End If
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure)
With SqlAdapter.SelectCommand With SqlAdapter.SelectCommand
@@ -67,7 +69,44 @@ Public Class ClsRMA
Data = New DataTable Data = New DataTable
If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Private Sub DataCommand(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataCommand(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure)
With SqlCommand With SqlCommand
.Parameters.Clear() .Parameters.Clear()
@@ -181,6 +220,7 @@ Public Class ClsRMA
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -30,6 +30,8 @@ Public Class ClsSAT
Private disposedValue As Boolean = False Private disposedValue As Boolean = False
Private ContListado69B As Integer = 0 Private ContListado69B As Integer = 0
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -78,7 +80,7 @@ Public Class ClsSAT
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
'ConexionAdd() ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(ByVal pStrSQL As String, Optional ByVal TipoComando As CommandType = CommandType.StoredProcedure)
@@ -90,7 +92,44 @@ Public Class ClsSAT
Data = New DataTable Data = New DataTable
If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If SqlTransacc IsNot Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Function ActualizarListado69B(Ruta As String) As Boolean Public Function ActualizarListado69B(Ruta As String) As Boolean
Dim respusta As Boolean = False Dim respusta As Boolean = False
@@ -337,6 +376,7 @@ Public Class ClsSAT
' This code added by Visual Basic to correctly implement the disposable pattern. ' This code added by Visual Basic to correctly implement the disposable pattern.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above. ' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above.
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -15,6 +15,8 @@ Public Class ClsSCTLicencias
Private SqlCommand As SqlCommand Private SqlCommand As SqlCommand
Private Data As DataTable Private Data As DataTable
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -53,7 +55,7 @@ Public Class ClsSCTLicencias
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex)
End Try End Try
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -64,7 +66,44 @@ Public Class ClsSCTLicencias
End With End With
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
#Region "L I C E N C I A S " #Region "L I C E N C I A S "
@@ -226,6 +265,7 @@ Public Class ClsSCTLicencias
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -14,6 +14,8 @@ Public Class ClsSeguimiento
Private SqlAdapter As SqlDataAdapter Private SqlAdapter As SqlDataAdapter
Private Data As DataTable Private Data As DataTable
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -34,7 +36,7 @@ Public Class ClsSeguimiento
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex)
End Try End Try
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -45,7 +47,44 @@ Public Class ClsSeguimiento
End With End With
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
#Region " S E G U I M I E N T O " #Region " S E G U I M I E N T O "
@@ -144,6 +183,7 @@ Public Class ClsSeguimiento
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -54,6 +54,8 @@ Public Class ClsSisEmpresas
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -221,6 +223,7 @@ Public Class ClsSisEmpresas
SqlCommand = New SqlCommand("", SqlConexion) SqlCommand = New SqlCommand("", SqlConexion)
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -232,6 +235,44 @@ Public Class ClsSisEmpresas
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlCommand With SqlCommand
.Parameters.Clear() .Parameters.Clear()
@@ -1836,6 +1877,7 @@ Public Class ClsSisEmpresas
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose ( que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose ( que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -45,6 +45,8 @@ Public Class ClsSisNotificaciones
Private _ClavesNotificaciones As Dictionary(Of String, List(Of Integer)) Private _ClavesNotificaciones As Dictionary(Of String, List(Of Integer))
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "P R O P I E D A D E S" #Region "P R O P I E D A D E S"
@@ -92,7 +94,7 @@ Public Class ClsSisNotificaciones
'Inicializamos las propiedades necesarias 'Inicializamos las propiedades necesarias
_ClavesNotificaciones = New Dictionary(Of String, List(Of Integer)) _ClavesNotificaciones = New Dictionary(Of String, List(Of Integer))
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -103,7 +105,44 @@ Public Class ClsSisNotificaciones
End With End With
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
#Region "N O T I F I C A C I O N E S" #Region "N O T I F I C A C I O N E S"
Public Sub DispararNotificacion(CveNotificacion As Integer, CvesFiltro As List(Of Object), CveEmpresa As Integer) Public Sub DispararNotificacion(CveNotificacion As Integer, CvesFiltro As List(Of Object), CveEmpresa As Integer)
@@ -2046,6 +2085,7 @@ Public Class ClsSisNotificaciones
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -25,6 +25,8 @@ Public Class ClsSisParametros
Private _NombreUsuario As String Private _NombreUsuario As String
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -82,7 +84,7 @@ Public Class ClsSisParametros
Catch ex As Exception Catch ex As Exception
Me.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) Me.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex)
End Try End Try
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -93,7 +95,44 @@ Public Class ClsSisParametros
End With End With
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Function GetParametros() As Boolean Public Function GetParametros() As Boolean
Dim OnError As Boolean = False Dim OnError As Boolean = False
@@ -234,6 +273,7 @@ Public Class ClsSisParametros
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -23,6 +23,8 @@ Public Class ClsSisProcesos
Private _NombreUsuario As String Private _NombreUsuario As String
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -74,7 +76,7 @@ Public Class ClsSisProcesos
Catch ex As Exception Catch ex As Exception
Me.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) Me.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex)
End Try End Try
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -85,7 +87,44 @@ Public Class ClsSisProcesos
End With End With
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Function GetProcesos(CveProceso As Integer) As Boolean Public Function GetProcesos(CveProceso As Integer) As Boolean
Dim OnError As Boolean = False Dim OnError As Boolean = False
@@ -194,6 +233,7 @@ Public Class ClsSisProcesos
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -18,6 +18,8 @@ Public Class ClsSisRoles
Private Data As DataTable Private Data As DataTable
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
Private _CveRol As Integer Private _CveRol As Integer
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
#Region "Propiedades" #Region "Propiedades"
@@ -51,7 +53,7 @@ Public Class ClsSisRoles
SqlCommand = New SqlCommand("", SqlConexion) SqlCommand = New SqlCommand("", SqlConexion)
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
StrSQL = New StringBuilder StrSQL = New StringBuilder
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
@@ -63,7 +65,44 @@ Public Class ClsSisRoles
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Public Function IniciaTransacSQL() As SqlTransaction Public Function IniciaTransacSQL() As SqlTransaction
If SqlTransacc Is Nothing Then SqlTransacc = SqlConexion.BeginTransaction() If SqlTransacc Is Nothing Then SqlTransacc = SqlConexion.BeginTransaction()
Return SqlTransacc Return SqlTransacc
@@ -312,6 +351,7 @@ Public Class ClsSisRoles
' Visual Basic agregó este código para implementar correctamente el modelo descartable. ' Visual Basic agregó este código para implementar correctamente el modelo descartable.
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean). ' No cambie este código. Coloque el código de limpieza en Dispose (ByVal que se dispone como Boolean).
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -22,6 +22,8 @@ Public Class ClsSisUsuarios
'Atributos de la clase 'Atributos de la clase
Private disposedValue As Boolean = False ' Para detectar llamadas redundantes Private disposedValue As Boolean = False ' Para detectar llamadas redundantes
'PARA REGISTRAR CONEXION
Private CveConexion As Integer = 0
#End Region #End Region
@@ -80,7 +82,7 @@ Public Class ClsSisUsuarios
SqlCommand = New SqlCommand("", SqlConexion) SqlCommand = New SqlCommand("", SqlConexion)
SqlAdapter = New SqlDataAdapter("", SqlConexion) SqlAdapter = New SqlDataAdapter("", SqlConexion)
ConexionAdd()
End Sub End Sub
Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlAdapter.SelectCommand With SqlAdapter.SelectCommand
@@ -91,6 +93,44 @@ Public Class ClsSisUsuarios
If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc
Data = New DataTable Data = New DataTable
End Sub End Sub
#Region "Conexiones"
Private Sub ConexionAdd()
If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
Try
'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
Private Sub ConexionClose()
If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then
DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text)
CveConexion = 0
Try
SqlAdapter.Fill(Data)
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
End If
End Sub
#End Region
Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure)
With SqlCommand With SqlCommand
.Parameters.Clear() .Parameters.Clear()
@@ -2633,6 +2673,7 @@ Public Class ClsSisUsuarios
Me.disposedValue = True Me.disposedValue = True
End Sub End Sub
Public Sub Dispose() Implements IDisposable.Dispose Public Sub Dispose() Implements IDisposable.Dispose
ConexionClose()
Dispose(True) Dispose(True)
GC.SuppressFinalize(Me) GC.SuppressFinalize(Me)
End Sub End Sub

View File

@@ -1,4 +1,4 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="IE.aspx.vb" Inherits="Bancos_IE" %> <%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="IE.aspx.vb" Inherits="Bancos_IE" ValidateRequest="false" %>

View File

@@ -718,8 +718,8 @@
<div class="btn-group"> <div class="btn-group">
<asp:UpdatePanel ID="UpAddCotizacion" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpAddCotizacion" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:HyperLink ID="HplAgregarCotizacion" Visible="true" Target="_blank" runat="server" data-toggle="tooltip" title="Agregar Cotizacion" class="btn btn-circle btn-sm btn-default"><i class="fa fa-plus"></i></asp:HyperLink> <asp:HyperLink ID="HplAgregarCotizacion" Visible="true" Target="_blank" runat="server" data-toggle="tooltip" title="Agregar Cotizacion" class="btn btn-circle btn-sm btn-default"><i class="fa fa-plus"></i></asp:HyperLink>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
</div> </div>
@@ -736,7 +736,7 @@
EmptyDataRowStyle-HorizontalAlign="Center" ToolTip="Listado de Cotizaciones" CssClass="table table-striped table-advance table-hover ScrollAD Widthall mysmallbtn" AlternatingRowStyle-BorderStyle="None" EmptyDataRowStyle-HorizontalAlign="Center" ToolTip="Listado de Cotizaciones" CssClass="table table-striped table-advance table-hover ScrollAD Widthall mysmallbtn" AlternatingRowStyle-BorderStyle="None"
GridLines="None" BorderColor="#D3D3D3" BorderWidth="1" AutoGenerateColumns="false" OnRowDataBound="GvCotizacion_RowDataBound"> GridLines="None" BorderColor="#D3D3D3" BorderWidth="1" AutoGenerateColumns="false" OnRowDataBound="GvCotizacion_RowDataBound">
<Columns> <Columns>
<asp:HyperLinkField DataTextField="SerieFolio" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Serie Folio" /> <asp:HyperLinkField DataTextField="SerieFolio" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Serie Folio" />
<asp:BoundField DataField="Fecha" HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" /> <asp:BoundField DataField="Fecha" HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
<asp:BoundField DataField="Total" ItemStyle-HorizontalAlign="Right" HeaderText="Total" DataFormatString="{0:N2}" /> <asp:BoundField DataField="Total" ItemStyle-HorizontalAlign="Right" HeaderText="Total" DataFormatString="{0:N2}" />
@@ -767,15 +767,15 @@
<i class="icon-pin font-green"></i> <i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">GASTOS </span> <span class="caption-subject bold uppercase">GASTOS </span>
</div> </div>
<%-- <div class="actions"> <div class="actions">
<div class="btn-group"> <div class="btn-group">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpAddGastos" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:HyperLink ID="HyperLink2" Visible="true" Target="_blank" runat="server" data-toggle="tooltip" title="Agregar Cotizacion" class="btn btn-circle btn-sm btn-default"><i class="fa fa-plus"></i></asp:HyperLink> <asp:LinkButton ID="LbAddGastos" Visible="true" runat="server" data-toggle="tooltip" title="Agregar Gasto" OnClick="LbAddGastos_Click" class="btn btn-circle btn-sm btn-default"><i class="fa fa-plus"></i></asp:LinkButton>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
</div>--%> </div>
</div> </div>
<div class="portlet-body"> <div class="portlet-body">
<div runat="server" id="Div3" visible="false" class="row" style="margin-right: 10px; margin-top: 0px; margin-bottom: 5px;" align="right"> <div runat="server" id="Div3" visible="false" class="row" style="margin-right: 10px; margin-top: 0px; margin-bottom: 5px;" align="right">
@@ -785,15 +785,43 @@
<div runat="server" id="Div4" style="padding: 0 10px 10px 10px;"> <div runat="server" id="Div4" style="padding: 0 10px 10px 10px;">
<asp:UpdatePanel runat="server" ID="UpGastos" UpdateMode="Conditional"> <asp:UpdatePanel runat="server" ID="UpGastos" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:GridView ID="GvGastos" runat="server" EmptyDataText="Aún no se han registrado Gastos" <asp:GridView ID="GvGastos" runat="server" EmptyDataText="Aún no se han registrado Gastos" DataKeyNames="CveAcercamientoGasto,Descripcion,Importe"
EmptyDataRowStyle-HorizontalAlign="Center" ToolTip="Listado de Cotizaciones" CssClass="table table-striped table-advance table-hover ScrollAD Widthall mysmallbtn" AlternatingRowStyle-BorderStyle="None" EmptyDataRowStyle-HorizontalAlign="Center" ToolTip="Listado de Cotizaciones" CssClass="table table-striped table-advance table-hover ScrollAD Widthall mysmallbtn" AlternatingRowStyle-BorderStyle="None"
GridLines="None" BorderColor="#D3D3D3" BorderWidth="1" AutoGenerateColumns="false" > GridLines="None" BorderColor="#D3D3D3" BorderWidth="1" AutoGenerateColumns="false" OnRowDataBound="GvGastos_RowDataBound">
<Columns> <Columns>
<%--<asp:HyperLinkField DataTextField="SerieFolio" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Serie Folio" />--%> <%--<asp:HyperLinkField DataTextField="SerieFolio" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Serie Folio" />--%>
<asp:BoundField DataField="Descripcion" HeaderText="Descripción" ItemStyle-HorizontalAlign="Left" /> <asp:TemplateField HeaderText="Descripción" ItemStyle-HorizontalAlign="Left">
<asp:BoundField DataField="Importe" ItemStyle-HorizontalAlign="Right" HeaderText="Importe" DataFormatString="{0:N2}" /> <ItemTemplate>
<asp:BoundField DataField="Usuario" HeaderText="Usuario" ItemStyle-HorizontalAlign="Left" /> <asp:Label ID="lblDescripcion" runat="server" Text='<%# Eval("Descripcion")%>'> </asp:Label>
<asp:BoundField DataField="FechaIng" HeaderText="Fecha" ItemStyle-HorizontalAlign="Left" DataFormatString="{0:d}" /> </ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:Label ID="lblImporte" runat="server" Text='<%# Eval("Importe","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblUsuario" runat="server" Text='<%# Eval("Usuario")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblFechaIng" runat="server" Text='<%# Eval("FechaIng","{0:d}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="ImgE_Click" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="imgD_Click" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns> </Columns>
</asp:GridView> </asp:GridView>
</ContentTemplate> </ContentTemplate>
@@ -1176,6 +1204,44 @@
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
<%-- FIN MODAL VER UBICACION --%>
<%-- MODAL AGREGAR GASTO--%>
<div id="DivAgregarGasto" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalGastos" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalGasto" runat="server">Agregar Gasto</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDescripcionGasto" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtDescripcionCosto" runat="server" ControlToValidate="TxtDescripcionGasto" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGasto"></asp:RequiredFieldValidator>
<label for="<%= TxtDescripcionGasto.ClientID.ToString()%>">Descripción:</label>
<i></i>
</div>
<br />
<div class="form-group form-md-line-input input-iconright" style="width: 170px!important">
<asp:TextBox ID="TxtImporteGasto" CssClass="form-control " Width="150px" runat="server" MaxLength="10" CausesValidation="true" Style="text-align: right!important" OnKeyup="FormatoMoneda(this);"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvImporteCosto" runat="server" ControlToValidate="TxtImporteGasto" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Importe''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGasto"></asp:RequiredFieldValidator>
<label for="<%= TxtImporteGasto.ClientID.ToString()%>">Importe:</label>
<i></i>
</div>
<br />
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarGastoModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpGasto" OnClick="BtnAgregarGastoModal_Click" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<%-- FIN MODAL AGREGAR GASTO --%>
</asp:Content> </asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server"> <asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script src="/Metronic/assets/global/plugins/dropzone/dropzone.js"></script> <script src="/Metronic/assets/global/plugins/dropzone/dropzone.js"></script>

View File

@@ -210,6 +210,30 @@ public partial class CRM_Acercamiento : ClsPaginas
{ {
return ModExtensiones.Encripta(param); return ModExtensiones.Encripta(param);
} }
private Boolean Actualizar
{
get
{
return (Boolean)ViewState["Actualizar"];
}
set
{
ViewState["Actualizar"] = value;
}
}
private int CveAcercamientoGasto
{
get
{
return ViewState["CveAcercamientoGasto"].ToString().ToEntero();
}
set
{
ViewState["CveAcercamientoGasto"] = value;
}
}
#endregion #endregion
protected void Page_Load(object sender, EventArgs e) protected void Page_Load(object sender, EventArgs e)
@@ -531,7 +555,7 @@ public partial class CRM_Acercamiento : ClsPaginas
} }
//AUTOGUARDADO DE CAMBIO DE ETAPA //AUTOGUARDADO DE CAMBIO DE ETAPA
if (DTEtapasProceso.FiltroPrimeroValor("CveTipoEtapa", String.Format("CveEtapaProceso = {0}", DdlEtapaProceso.SelectedValue.ToEntero())).Contiene("1","2","3")) if (DTEtapasProceso.FiltroPrimeroValor("CveTipoEtapa", String.Format("CveEtapaProceso = {0}", DdlEtapaProceso.SelectedValue.ToEntero())).Contiene("1", "2", "3"))
GuardarCambioEtapa(); GuardarCambioEtapa();
} }
#endregion #endregion
@@ -1419,7 +1443,7 @@ public partial class CRM_Acercamiento : ClsPaginas
if (TieneError) if (TieneError)
{ {
ObjCRM.RollBack(); ObjCRM.RollBack();
Alert("El archivo el eliminó correctamente.",ModExtensiones.TipoMensaje.MsgError); Alert("El archivo el eliminó correctamente.", ModExtensiones.TipoMensaje.MsgError);
} }
else else
{ {
@@ -1493,5 +1517,113 @@ public partial class CRM_Acercamiento : ClsPaginas
GvGastos.DataBind(); GvGastos.DataBind();
UpGastos.Update(); UpGastos.Update();
} }
protected void LbAddGastos_Click(object sender, EventArgs e)
{
LtlTituloModalGasto.Text = "Agregar Gasto";
BtnAgregarGastoModal.Text = "Agregar";
UpModalGastos.Update();
TxtDescripcionGasto.Text = "";
TxtImporteGasto.Text = "";
Actualizar = false;
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarGasto"));
}
protected void BtnAgregarGastoModal_Click(object sender, EventArgs e)
{
ClsCRM ObjCRM = new ClsCRM();
if(!Actualizar)
{
if (ObjCRM.AddAcercamientosGastos(CveAcercamiento, TxtDescripcionGasto.Text, TxtImporteGasto.Text.ToDecimal(), UsuarioActual.CveUsuario))
{
CargaGastos();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarGasto"), "jsHideModalFolioGarantia");
Alert("Gasto Agregado Correctamente", ModExtensiones.TipoMensaje.MsgInformacion);
}
else
{
Alert("Ocurrió un error al guardar el Gasto", ModExtensiones.TipoMensaje.MsgError);
}
}
else
{
if (ObjCRM.UpdateAcercamientosGastos(CveAcercamientoGasto, TxtDescripcionGasto.Text, TxtImporteGasto.Text.ToDecimal()))
{
CargaGastos();
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarGasto"), "jsHideModalFolioGarantia");
Alert("Gasto Actualizado Correctamente", ModExtensiones.TipoMensaje.MsgInformacion);
}
else
{
Alert("Ocurrió un error al actualizar el Gasto", ModExtensiones.TipoMensaje.MsgError);
}
}
Actualizar = false;
CveAcercamientoGasto = -1;
ObjCRM.Dispose();
}
protected void GvGastos_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.DBCampo("CveAcercamiento").ToEntero() < 1)
{
e.Row.CssClass = "Totales";
e.Row.Cells[0].Text = "Total";
e.Row.FCLinkButton("ImgE").Visible = false;
e.Row.FCLinkButton("imgD").Visible = false;
}
}
}
protected void ImgE_Click(object sender, EventArgs e)
{
GridViewRow GvRow = (GridViewRow)((LinkButton)sender).NamingContainer;
LtlTituloModalGasto.Text = "Editar Gasto";
BtnAgregarGastoModal.Text = "Actualizar";
Actualizar = true;
CveAcercamientoGasto = GvRow.DataKey("CveAcercamientoGasto").ToEntero();
TxtDescripcionGasto.Text = GvRow.DataKey("Descripcion");
TxtImporteGasto.Text = GvRow.DataKey("Importe");
UpModalGastos.Update();
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarGasto"));
}
protected void imgD_Click(object sender, EventArgs e)
{
ClsCRM ObjCRM = new ClsCRM();
GridViewRow GvRow = (GridViewRow)((LinkButton)sender).NamingContainer;
CveAcercamientoGasto = GvRow.DataKey("CveAcercamientoGasto").ToEntero();
if (ObjCRM.RemoveAcercamientosGastos(CveAcercamientoGasto))
{
CargaGastos();
Alert("Gasto eliminado Correctamente", ModExtensiones.TipoMensaje.MsgInformacion);
}
else
{
Alert("Ocurrió un error al eliminar el Gasto", ModExtensiones.TipoMensaje.MsgError);
}
ObjCRM.Dispose();
CveAcercamientoGasto = -1;
}
#endregion #endregion
} }

View File

@@ -1126,9 +1126,9 @@ Partial Class Compras_Compras
CveCuentaBancaria = 0 CveCuentaBancaria = 0
End If End If
If UsuarioActual.TienePermisoProceso(259) Then 'If UsuarioActual.TienePermisoProceso(259) Then
DivEsNoDeducible.Visible = True DivEsNoDeducible.Visible = True
End If 'End If
If UsuarioActual.Empresa.Funcionalidad(125) = "1" Then 'Seleccionar a quien se abona la Prepoliza If UsuarioActual.Empresa.Funcionalidad(125) = "1" Then 'Seleccionar a quien se abona la Prepoliza
'ddlCargoPrePoliza.Visible = True 'ddlCargoPrePoliza.Visible = True
@@ -4642,6 +4642,18 @@ Partial Class Compras_Compras
If Not ErrorAC Then If Not ErrorAC Then
Dim AutoConta As Boolean = UsuarioActual.Empresa.Funcionalidad(200) = "1"
If UsuarioActual.CveEmpresa = 119 AndAlso (DdlPersonalReembolso.SelectedValue.ToEntero > 0 Or DdlCuentaCajaChicaReembolso.SelectedValue.ToEntero > 0) Then
AutoConta = False
End If
If (AutoConta Or UsuarioActual.Empresa.UsaAC) And ObjContaAC Is Nothing Then
ObjContaAC = New ClsContPAQi(UsuarioActual.Empresa)
ObjContaAC.IniciaTransacSQL()
End If
''EMPIEZA: INSERTA DETALLES DE LA COMPRA ''EMPIEZA: INSERTA DETALLES DE LA COMPRA
Dim indiceTR = 0 Dim indiceTR = 0
Dim Cont As Integer = 0 Dim Cont As Integer = 0
@@ -4747,7 +4759,7 @@ Partial Class Compras_Compras
'verifica si fue vinculada con una OC, y si fue la opción de entrega por adelantado, que si hubo cambios de precios 'verifica si fue vinculada con una OC, y si fue la opción de entrega por adelantado, que si hubo cambios de precios
If DdlOCVinculaInv.SelectedValue.ToEntero.Contiene(176, 205) Then If DdlOCVinculaInv.SelectedValue.ToEntero.Contiene(176, 205) Then
If Not AjustarPrePolizaVinculacionOC(ObjOC, ObjEventos, ObjInventario, ObjConta) Then If Not AjustarPrePolizaVinculacionOC(ObjOC, ObjEventos, ObjInventario, ObjConta, ObjContaAC) Then
ErrorPrepoliza = True ErrorPrepoliza = True
End If End If
End If End If
@@ -5218,16 +5230,7 @@ Partial Class Compras_Compras
IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
End If End If
Dim AutoConta As Boolean = UsuarioActual.Empresa.Funcionalidad(200) = "1"
If UsuarioActual.CveEmpresa = 119 AndAlso (DdlPersonalReembolso.SelectedValue.ToEntero > 0 Or DdlCuentaCajaChicaReembolso.SelectedValue.ToEntero > 0) Then
AutoConta = False
End If
If (AutoConta Or UsuarioActual.Empresa.UsaAC) And ObjContaAC Is Nothing Then
ObjContaAC = New ClsContPAQi(UsuarioActual.Empresa)
ObjContaAC.IniciaTransacSQL()
End If
'********************** Variables '********************** '********************** Variables '**********************
@@ -6207,23 +6210,24 @@ Partial Class Compras_Compras
Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}" Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}"
'Conta ContPAQ If importeMovimiento > 0 Or TxtTotal.Text.ToDecimal = 0 Then
If IdCtaContable = 0 Then 'Conta ContPAQ
CuentasContablesInvalidas.Append("<br>" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", 68))("ConceptoContable").ToString) If IdCtaContable = 0 Then
idCuentaContabilizacion = 0 CuentasContablesInvalidas.Append("<br>" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", 68))("ConceptoContable").ToString)
End If idCuentaContabilizacion = 0
'Conta SIG End If
If CveCuenta = 0 Then 'Conta SIG
CuentasContablesInvalidasSIG.Append("<br>" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", 68))("ConceptoContable").ToString) If CveCuenta = 0 Then
CveCuentaContabilizacion = 0 CuentasContablesInvalidasSIG.Append("<br>" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", 68))("ConceptoContable").ToString)
End If CveCuentaContabilizacion = 0
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContabilizacionNC, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
ErrorPrepoliza = True
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContabilizacionNC, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
ErrorPrepoliza = True
End If End If
Dim ContienePSNeteoBonif As Boolean = False Dim ContienePSNeteoBonif As Boolean = False
For Each Dr As DataRow In TmpDT.Rows For Each Dr As DataRow In TmpDT.Rows
If Dr("CveClasificacion").ToString.ToEntero.Contiene(20319) Then 'clasificación de Bonificación, no se incluirá en el neteo If Dr("CveClasificacion").ToString.ToEntero.Contiene(20319) Then 'clasificación de Bonificación, no se incluirá en el neteo
@@ -18466,7 +18470,7 @@ Partial Class Compras_Compras
#End Region #End Region
Private Function AjustarPrePolizaVinculacionOC(ByRef OC As ClsOC, ByRef OCBitacora As ClsOIEventos, ByRef ObjInventarios As ClsInventarios, ByRef ObjConta As ClsContabilidad) As Boolean Private Function AjustarPrePolizaVinculacionOC(ByRef OC As ClsOC, ByRef OCBitacora As ClsOIEventos, ByRef ObjInventarios As ClsInventarios, ByRef ObjConta As ClsContabilidad, ByRef ObjAC As ClsContPAQi) As Boolean
'VARIABLES 'VARIABLES
Dim CveProveedorSucursal As Integer = -1 Dim CveProveedorSucursal As Integer = -1
@@ -18686,6 +18690,12 @@ Partial Class Compras_Compras
Retorno = False Retorno = False
End If End If
End If End If
If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso ObjAC IsNot Nothing Then
If Not ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, ObjConta:=ObjAC) Then
Retorno = False
End If
End If
End If End If
End If End If
Next Next

File diff suppressed because one or more lines are too long

BIN
Metronic/descarga.pdf Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data; using System.Data;
using System.Linq; using System.Linq;
using System.Text;
using System.Web; using System.Web;
using System.Web.UI; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.WebControls;
@@ -53,10 +54,124 @@ public partial class Nomina_CatConcepto : ClsPaginas
{ {
if (!IsPostBack) if (!IsPostBack)
{ {
tree_Tables();
InicializaDatos(); InicializaDatos();
} }
} }
#region Arboles conceptos
DataTable dtrefrencias;
StringBuilder strKeys;
StringBuilder strKeys2;
StringBuilder strKeys3;
public void tree_Tables()
{
ClsNominas objnom = new ClsNominas();
strKeys = new StringBuilder();
strKeys2 = new StringBuilder();
strKeys3 = new StringBuilder();
StringBuilder tablaarbol = new StringBuilder();
objnom.GetNom_Refencias();
dtrefrencias = objnom.DtResultados;
objnom.Dispose();
strKeys.Append("{");
int tipo = 1;
#region tablas
tablaarbol.AppendLine("<ul id=\"tree_1\">");
foreach (DataRow row in dtrefrencias.FiltraParametros($"Nivel=0 AND Tipo ={tipo}").Rows)
{
AddchildtoEnd(ref tablaarbol, row, " ", " ", tipo);
}
tablaarbol.AppendLine("</ul>");
LtlArbolTabla.Text = tablaarbol.ToString();
#endregion
#region Formulas
tablaarbol.Clear();
tipo = 2;
tablaarbol.AppendLine("<ul id=\"tree_2\">");
foreach (DataRow row in dtrefrencias.FiltraParametros($"Nivel=0 AND Tipo ={tipo}").Rows)
{
AddchildtoEnd(ref tablaarbol, row, " ", " ", tipo);
}
tablaarbol.AppendLine("</ul>");
LtlArbolFormulas.Text = tablaarbol.ToString();
#endregion
#region Funciones
tablaarbol.Clear();
tipo = 3;
tablaarbol.AppendLine("<ul id=\"tree_3\">");
foreach (DataRow row in dtrefrencias.FiltraParametros($"Nivel=0 AND Tipo ={tipo}").Rows)
{
AddchildtoEnd(ref tablaarbol, row, " ", " ", tipo);
}
tablaarbol.AppendLine("</ul>");
LtlArbolFunciones.Text = tablaarbol.ToString();
#endregion
if (strKeys.Length > 2)
{
strKeys.Remove(1, 1);
}
strKeys.Append("}");
LtlKeys.Text = string.Format(" MycurrentT ={0} ; strKeys2='{1}'; strKeys3='{2}'; ", strKeys.ToString(), strKeys2.ToString(), strKeys3.ToString());
UpTablas.Update();
//TxtMycurrentT.Text = strKeys.ToString();
//TxtstrKeys2.Text = strKeys2.ToString();
//TxtstrKeys3.Text = strKeys3.ToString();
}
public void AddchildtoEnd(ref StringBuilder tablaarbol, DataRow item, string identacion, string identacion2, int tipo)
{
string identacion3 = string.Format("{0}{1}", identacion, identacion2);
DataTable dt = dtrefrencias.FiltraParametros($"CveNomReferenciaPadre={item["CveNomReferencia"].ToString().ToEntero()} AND Nivel= {(item["Nivel"].ToString().ToEntero() + 1)} AND Tipo ={tipo}");
string data_jstree = "";
if (dt.Rows.Count == 0)
{
data_jstree = "data-jstree='{ \"icon\" : \"fa fa-file icon-state-info \" }'";
}
tablaarbol.AppendLine(string.Format("{0}<li {1}>", identacion, data_jstree));
tablaarbol.AppendLine("");
tablaarbol.Append(identacion3);
if (item["EsUltimo"].ToString() == "1")
{
tablaarbol.Append("<a href=\"javascript:addtextFormula('").Append(item["Campo"]).Append("');\"> ");
string campo = item["Campo"].ToString();
if (tipo < 3)
{
strKeys2.Append(string.Format(" {0}", campo));
}
else
{
string[] scampos = campo.Split('(');
campo = "";
if (scampos.Length > 0)
{
campo = scampos[0].Trim();
}
strKeys3.Append(string.Format(" {0}", campo));
}
strKeys.Append(string.Format(",'{0}':[]", campo));
}
tablaarbol.Append(item["Texto"]);
if (item["EsUltimo"].ToString() == "1") { tablaarbol.Append("</a>"); }
tablaarbol.AppendLine("");
if (dt.Rows.Count > 0)
{
tablaarbol.AppendLine(string.Format("{0}<ul>", identacion3));
foreach (DataRow row in dt.Rows)
{
AddchildtoEnd(ref tablaarbol, row, identacion3, identacion2, tipo);
}
tablaarbol.AppendLine(string.Format("{0}</ul>", identacion3));
}
tablaarbol.AppendLine(string.Format("{0}</li>", identacion));
}
#endregion
protected void InicializaDatos() protected void InicializaDatos()
{ {
if (Request["CveConcepto"] != null && !Request["CveConcepto"].ToString().Equals("") && Request["CveConcepto"].ToEntero() > 0) if (Request["CveConcepto"] != null && !Request["CveConcepto"].ToString().Equals("") && Request["CveConcepto"].ToEntero() > 0)
@@ -260,7 +375,7 @@ public partial class Nomina_CatConcepto : ClsPaginas
TxtCodigo.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Codigo"); TxtCodigo.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Codigo");
TxtConcepto.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Concepto"); TxtConcepto.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Concepto");
DdlTipo.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("Tipo")); DdlTipo.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("Tipo"));
TxtFormula.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Formula"); TxtFormulaTotal.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Formula");
if (ObjNomina.DtResultados.FiltroPrimeroValor("EsRetencion").Equals("1")) ChkRetencion.Checked = true; if (ObjNomina.DtResultados.FiltroPrimeroValor("EsRetencion").Equals("1")) ChkRetencion.Checked = true;
if (ObjNomina.DtResultados.FiltroPrimeroValor("TipoCalculo").Equals("True")) ChkTipoCalculo.Checked = true; if (ObjNomina.DtResultados.FiltroPrimeroValor("TipoCalculo").Equals("True")) ChkTipoCalculo.Checked = true;
DdlConceptoPadre.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("CveConceptoPadre")); DdlConceptoPadre.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("CveConceptoPadre"));
@@ -307,4 +422,26 @@ public partial class Nomina_CatConcepto : ClsPaginas
Alert("Ocurrio un error al eliminar el concepto de nómina", ModExtensiones.TipoMensaje.MsgError); Alert("Ocurrio un error al eliminar el concepto de nómina", ModExtensiones.TipoMensaje.MsgError);
} }
} }
protected void LnkActualizarFormula_Click(object sender, EventArgs e)
{
tree_Tables();
string tipo = "Total";
if (TabsFormulas.ActiveTab == tabFormulaTotal)
{
tipo = "Total";
}
if (TabsFormulas.ActiveTab == tabFormulaGravada)
{
tipo = "Gravada";
}
LtlTituloFormula.Text = $"Actualizar Formula {tipo}";
RegistraScript("$('#ModalDivFormula').modal()");
UpModalFormulas.Update();
}
protected void BtnUpFormula_Click(object sender, EventArgs e)
{
}
} }

179
Nomina/ConceptoNominaB.aspx Normal file
View File

@@ -0,0 +1,179 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="ConceptoNominaB.aspx.cs" Inherits="Nomina_CatConceptob" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" Runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
<asp:Literal ID="LtlTitulo" runat="server" Text="Conceptos de Nómina"></asp:Literal>&nbsp;<asp:Literal ID="LtlContrato" runat="server"></asp:Literal>
</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 UpdateMode="Conditional" ID="UpGral" runat="server">
<ContentTemplate>
<div runat="server" id="DivContent" visible="True" style="min-height: 500px">
<ajax:TabContainer ID="Tab" runat="server" Width="100%" CssClass="tabBodyOverride" ActiveTabIndex="0">
<ajax:TabPanel ID="TabInformacionGeneral" runat="server" HeaderText="Información General">
<ContentTemplate>
<div class="row">
<div class="col-md-7">
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="caption uppercase" style="position: relative;"><i class="fa fa-info-circle"></i>Datos del Concepto</div>
</div>
<div class="portlet-body rowpadding" >
<div class="row">
<label class="col-md-2 truncate" style="width: 130px;">Código:</label>
<div class="col-md-6">
<asp:TextBox ID="TxtCodigo" runat="server" Width="100%"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCodigo" runat="server" ControlToValidate="TxtCodigo" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Código''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECodigo" runat="server" HighlightCssClass="vco" TargetControlID="RFVCodigo" Width="300px" BehaviorID="VCECodigo"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<label class="col-md-2 truncate" style="width: 130px;">Concepto:</label>
<div class="col-md-6">
<asp:TextBox ID="TxtConcepto" runat="server" MaxLength="70" Width="100%"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVConcepto" runat="server" ControlToValidate="TxtConcepto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Concepto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEConcepto" runat="server" HighlightCssClass="vco" TargetControlID="RFVConcepto" Width="300px" BehaviorID="VCEConcepto"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<label class="col-md-2 truncate" style="width: 130px;">Tipo:</label>
<div class="col-md-6">
<asp:DropDownList ID="DdlTipo" runat="server" AppendDataBoundItems="True" DataTextField="TipoGasto" DataValueField="TipoGasto" Class="form-control input-sm select2me" Width="200px" ValidationGroup="GrpGuardar"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVTipo" runat="server" ControlToValidate="DdlTipo" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCETipo" runat="server" HighlightCssClass="vco" TargetControlID="RFVTipo" Width="300px" BehaviorID="VCETipo"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<label class="col-md-2 truncate" style="width: 130px;">Fórmula:</label>
<div class="col-md-6">
<asp:TextBox ID="TxtFormula" runat="server" MaxLength="70" Width="100%"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVFormula" runat="server" ControlToValidate="TxtFormula" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fórmula''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEFormula" runat="server" HighlightCssClass="vco" TargetControlID="RFVFormula" Width="300px" BehaviorID="VCEFormula"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<label class="col-md-2 truncate " style="width: 130px;">Retención:</label>
<div class="col-md-6">
<asp:CheckBox ID="ChkRetencion" runat="server" />
</div>
</div>
<div class="row">
<label class="col-md-2 truncate " style="width: 130px;">Tipo de cálculo:</label>
<div class="col-md-6">
<asp:CheckBox ID="ChkTipoCalculo" runat="server" checked ="true"/>
</div>
</div>
<div class="row">
<label class="col-md-2 truncate" style="width: 130px;">Concepto padre:</label>
<div class="col-md-6">
<asp:DropDownList ID="DdlConceptoPadre" runat="server" AppendDataBoundItems="True" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="200px" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="row">
<label class="col-md-2 truncate" style="width: 130px;">Concepto contable:</label>
<div class="col-md-6">
<asp:DropDownList ID="DdlConceptoContable" runat="server" AppendDataBoundItems="True" DataTextField="ConceptoContable" DataValueField="CveConceptoContable" Class="form-control input-sm select2me" Width="200px" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-5">
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="UpProyecto">
<ContentTemplate>
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="caption uppercase" style="position: relative;"><i class="fa fa-info-circle"></i>ESTATUS</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<label class="col-md-4 truncate">Estado:</label>
<div class="col-md-8">
<asp:CheckBox ID="ChkEstado" runat="server"/>
</div>
</div>
<div class="row">
<label class="col-md-4 truncate">Sistema:</label>
<div class="col-md-8">
<asp:CheckBox ID="ChkSistema" runat="server"/>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div class="row">
<div class="col-md-7">
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="caption uppercase" style="position: relative;"><i class="fa fa-info-circle"></i>INFORMACIÓN</div>
</div>
<div class="row">
<label class="col-md-2 truncate" style="width: 130px;">Clasificación:</label>
<div class="col-md-6">
<asp:DropDownList ID="DdlClasificacion" runat="server" AppendDataBoundItems="True" DataTextField="Clasificacion" DataValueField="CveClasificacion" Class="form-control input-sm select2me" Width="200px" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div id="Div3" runat="server" class="row">
<label class="col-md-2 truncate" style="width: 130px;">Tipo de gasto:</label>
<div class="col-md-6">
<asp:DropDownList ID="DdlTipoGasto" runat="server" AppendDataBoundItems="True" DataTextField="TipoGasto" DataValueField="CveTipoGasto" Class="form-control input-sm select2me" Width="200px" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div id="Div4" runat="server" class="row">
<label class="col-md-2 truncate" style="width: 130px;">Cuenta contable:</label>
<div class="col-md-6">
<asp:DropDownList ID="DdlCtaContable" runat="server" AppendDataBoundItems="True" DataTextField="CtaCodigo" DataValueField="Id" Class="form-control input-sm select2me" Width="200px" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
</div>
</div>
</div>
</div>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
</div>
<div style="text-align: center; padding-top: 20px;">
<asp:UpdatePanel ID="UpGuardar" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" ValidationGroup="GrpGuardar" CssClass="btn btn-primary" Visible="true" OnClick="BtnGuardar_Click" />
<asp:Button ID="BtnEliminar" runat="server" Text="Eliminar" Visible="false" CssClass="btn btn-danger" data-toggle="confirmation" data-popout="true" data-original-title="Esta seguro de eliminar el Contrato?" data-btn-ok-label="si" OnClick="BtnEliminar_Click" />
<%--<asp:ValidationSummary ID="VS" runat="server" DisplayMode="BulletList" ShowSummary="true" ValidationGroup="GrpGuardar" />--%>
<asp:Button ID="BtnCancelar" CssClass="btn btn-default" runat="server" Text="Cancelar" OnClientClick="javascript:window.location.href='/Nomina/CatConceptos.aspx';return false" />
&nbsp;
</ContentTemplate>
</asp:UpdatePanel>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

View File

@@ -0,0 +1,310 @@
using Extensiones;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Nomina_CatConceptoB : ClsPaginas
{
#region "Propiedades"
private DataTable DTCuentas
{
get
{
return (DataTable)ViewState["DTCuentas"];
}
set
{
ViewState["DTCuentas"] = value;
}
}
private Boolean EsEditar
{
get
{
return (Boolean)ViewState["EsEditar"];
}
set
{
ViewState["EsEditar"] = value;
}
}
private int CveConcepto
{
get
{
return ViewState["CveConcepto"].ToEntero();
}
set
{
ViewState["CveConcepto"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
InicializaDatos();
}
}
protected void InicializaDatos()
{
if (Request["CveConcepto"] != null && !Request["CveConcepto"].ToString().Equals("") && Request["CveConcepto"].ToEntero() > 0)
{
ViewState["CveConcepto"] = Request["CveConcepto"];
EsEditar = true;
BtnGuardar.Text = "Guardar cambios";
BtnEliminar.Visible = true;
ChkTipoCalculo.Checked = false;
}
else
{
ViewState["CveConcepto"] = -1;
EsEditar = false;
}
CargaTipo();
CargaConceptoPadre();
CargaConceptoContable();
CargaClasificacion();
CargaTipoGasto();
CargaCtaContable();
CargaDatos();
}
protected void CargaTipo()
{
DdlTipo.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlTipo.Items.Insert(1, new ListItem("Percepciones", "P"));
DdlTipo.Items.Insert(2, new ListItem("Deducciones", "D"));
DdlTipo.Items.Insert(3, new ListItem("Obligaciones", "O"));
DdlTipo.SelectedValueExist("-1");
}
protected void CargaConceptoPadre()
{
DdlConceptoPadre.DataSource = get_GlobalDTNomConceptos(UsuarioActual.CveEmpresa);
DdlConceptoPadre.DataBind();
DdlConceptoPadre.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlConceptoPadre.SelectedValueExist("-1");
}
protected void CargaConceptoContable()
{
DdlConceptoContable.DataSource = get_GlobalDTContaConceptosContables(-1);
DdlConceptoContable.DataBind();
DdlConceptoContable.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlConceptoContable.SelectedValueExist("-1");
}
protected void CargaClasificacion()
{
DdlClasificacion.DataSource = get_GlobalDTClasificaciones(UsuarioActual.CveEmpresa);
DdlClasificacion.DataBind();
DdlClasificacion.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlClasificacion.SelectedValueExist("-1");
}
protected void CargaTipoGasto()
{
DdlTipoGasto.DataSource = get_GlobalDTTiposGastos(UsuarioActual.CveEmpresa);
DdlTipoGasto.DataBind();
DdlTipoGasto.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlTipoGasto.SelectedValueExist("-1");
}
protected void CargaCtaContable()
{
if(UsuarioActual.Empresa.UsaContabilidad)
{
ClsContPAQi ObjConta = new ClsContPAQi(UsuarioActual.Empresa);
if (ObjConta.GetCuentas(-1, "-1", 1))
{
DdlCtaContable.DataSource = ObjConta.DtResultados;
DdlCtaContable.DataBind();
}
DdlCtaContable.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlCtaContable.SelectedValueExist("-1");
}
}
protected void BtnGuardar_Click(object sender, EventArgs e)
{
String codigo = TxtCodigo.Text;
String concepto = TxtConcepto.Text;
String tipo = DdlTipo.SelectedValue;
String formula = TxtFormula.Text;
if (!ValidaFormula(formula).Equals(""))
{
Alert("Fórmula no válida. Favor de ingresar una correcta.", ModExtensiones.TipoMensaje.MsgError);
}
else
{
bool retencion;
if (ChkRetencion.Checked) retencion = true;
else retencion = false;
bool tipoCalculo;
if (ChkTipoCalculo.Checked) tipoCalculo = true;
else tipoCalculo = false;
int CveConceptoPadre = DdlConceptoPadre.SelectedValue.ToEntero();
int CveConceptoContable = DdlConceptoContable.SelectedValue.ToEntero();
bool estado;
if (ChkEstado.Checked) estado = true;
else estado = false;
bool sistema;
if (ChkSistema.Checked) sistema = true;
else sistema = false;
int CveClasificacion = DdlClasificacion.SelectedValue.ToEntero();
int CveTipoGasto = DdlTipoGasto.SelectedValue.ToEntero();
int IdCtaContable = DdlCtaContable.SelectedValue.ToEntero();
ClsNominas ObjNomina = new ClsNominas();
ObjNomina.IniciaTransacSQL();
bool TieneError = false;
if (EsEditar)
{
TieneError = !ObjNomina.UpdateConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, CveConcepto, retencion, CveClasificacion, IdCtaContable, CveTipoGasto, tipoCalculo, CveConceptoContable);
if (TieneError)
{
ObjNomina.RollBack();
}
else
{
ObjNomina.Commit();
Alert("El concepto de nómina fue actualizado correctamente.", ModExtensiones.TipoMensaje.MsgInformacion, $"document.location.href=\"/Nomina/ConceptoNomina.aspx?CveConcepto={CveConcepto}\"");
}
}
else
{
CveConcepto = ObjNomina.AddConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, retencion, CveClasificacion, IdCtaContable, CveTipoGasto, tipoCalculo, CveConceptoContable);
if (CveConcepto == -1)
{
ObjNomina.RollBack();
}
else
{
ObjNomina.Commit();
Alert("El concepto de nómina fue creado correctamente.", ModExtensiones.TipoMensaje.MsgInformacion, $"document.location.href=\"/Nomina/ConceptoNomina.aspx?CveConcepto={CveConcepto}\"");
}
}
ObjNomina.Dispose();
CargaDatos();
}
}
private string ValidaFormula(string Formula)
{
string retorno = "Error en Fórmula";
try
{
FormulaEvaluator.Expression exp;
foreach (DataRow dr in GlobalDTNomConceptosFunciones.Rows)
{
exp = new FormulaEvaluator.Expression(String.Format("{0}:=1", dr["Funcion"]));
exp.Eval();
}
exp = new FormulaEvaluator.Expression(Formula);
if (exp.Errors.Count > 0)
{
retorno = exp.Errors[0].Message;
}
Object val = exp.Eval();
if (exp.Errors.Count == 0)
{
retorno = "";
}
else
{
retorno = exp.Errors[0].Message;
}
}
catch (Exception e) {
Alert(e.Message,ModExtensiones.TipoMensaje.MsgError);
}
return retorno;
}
protected void CargaDatos()
{
if(CveConcepto > 0)
{
ClsNominas ObjNomina = new ClsNominas();
if (ObjNomina.GetConceptos(UsuarioActual.CveEmpresa, CveConcepto: CveConcepto) && ObjNomina.DtResultados.Rows.Count > 0)
{
TxtCodigo.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Codigo");
TxtConcepto.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Concepto");
DdlTipo.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("Tipo"));
TxtFormula.Text = ObjNomina.DtResultados.FiltroPrimeroValor("Formula");
if (ObjNomina.DtResultados.FiltroPrimeroValor("EsRetencion").Equals("1")) ChkRetencion.Checked = true;
if (ObjNomina.DtResultados.FiltroPrimeroValor("TipoCalculo").Equals("True")) ChkTipoCalculo.Checked = true;
DdlConceptoPadre.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("CveConceptoPadre"));
DdlConceptoContable.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("CveConceptoContable"));
if (ObjNomina.DtResultados.FiltroPrimeroValor("Estado").Equals("Activo")) ChkEstado.Checked = true;
if (ObjNomina.DtResultados.FiltroPrimeroValor("Sistema").Equals("Sí")) ChkSistema.Checked = true;
DdlClasificacion.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("CveClasificacion"));
DdlTipoGasto.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("CveTipoGasto"));
DdlCtaContable.SelectedValueExist(ObjNomina.DtResultados.FiltroPrimeroValor("IdCtaContable"));
}
ObjNomina.Dispose();
} else
{
TxtCodigo.Text = "";
TxtConcepto.Text = "";
DdlTipo.SelectedValueExist("-1");
TxtFormula.Text = "";
ChkRetencion.Checked = false;
DdlConceptoPadre.SelectedValueExist("-1");
DdlConceptoContable.SelectedValueExist("-1");
ChkEstado.Checked = false;
ChkSistema.Checked = false;
DdlClasificacion.SelectedValueExist("-1");
DdlTipoGasto.SelectedValueExist("-1");
DdlCtaContable.SelectedValueExist("-1");
}
}
protected void BtnEliminar_Click(object sender, EventArgs e)
{
ClsNominas ObjNomina = new ClsNominas();
if (ObjNomina.RemoveConcepto(CveConcepto, UsuarioActual.CveEmpresa))
{
Response.Redirect("./CatConceptos.aspx");
}
else
{
Alert("Ocurrio un error al eliminar el concepto de nómina", ModExtensiones.TipoMensaje.MsgError);
}
}
}

221
Nomina/Nomina2.aspx Normal file
View File

@@ -0,0 +1,221 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Nomina2.aspx.cs" Inherits="Nomina_Nomina2" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Nominas
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAccciones" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:HyperLink ID="HypModalNomina" data-target="#DModalNominas" data-toggle="modal" runat="server">Cargar Nomina</asp:HyperLink></li>
</ContentTemplate>
</asp:UpdatePanel>
</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">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">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>
<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>
</asp:DropDownList>
</div>
<div class="col-md-4">
<asp:LinkButton ID="LnkConsultar" OnClick="LnkConsultar_Click" runat="server" Text="Mostrar" Visible="False" class="btn btn-primary" />
<asp:Button ID="BtnAutorizar" runat="server" Text="Autorizar" Visible="False" class="btn btn-primary" />
<asp:Button ID="BtnGeneraPDF" runat="server" Text="PDF" Visible="False" class="btn btn-primary" />
<asp:Button ID="BtnEmitir" runat="server" Text="Timbrar" Visible="False" class="btn btn-primary" />
<asp:Button ID="BtnActualizaNomina" runat="server" Text="Act Nomina" Visible="False" class="btn btn-primary" />
<a style="display: none;" href="/Coolings.docx">Recibos</a>
</div>
</div>
</div>
</div>
<div class="portlet-body">
<div class="row">
<label class="col-md-1 ">Agrupador:</label>
<div class="col-md-1">
<asp:DropDownList ID="DdlAgrupador" runat="server" Style="width: 100% !important;" CssClass="select2me">
<asp:ListItem Text="Empresa" Value="1"></asp:ListItem>
<asp:ListItem Text="Turno" Value="2"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1">Proyecto: </label>
<div 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>
<label class="col-md-1 ">SubProyecto:</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>
<label class="col-md-1 ">Turno:</label>
<div class="col-md-2" style="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 ">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>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendario" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="TxtFechaPago" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="TxtFechaPago" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:CompareValidator ID="cvFechaI" runat="server" ControlToValidate="TxtFechaPago" Display="None" ErrorMessage="El campo <b>''Fecha Pago''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="vcoCvFI" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="rfvFechaI" runat="server" ControlToValidate="TxtFechaPago" Display="None" ErrorMessage="El campo <b>''Fecha Pago''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="vcoFfvFI" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<ajax:TabContainer ID="Tab" runat="server" Width="100%" AutoPostBack="True">
<ajax:TabPanel ID="TabNominas" runat="server" HeaderText="Nominas">
<ContentTemplate>
<div class="portlet light xspadding bordered " id="pnldl">
<div class="portlet-title">
<div class="caption ">
<i class="icon-pin font-yellow-gold"></i>
<span class="caption-subject font-yellow-gold bold uppercase">Nomina</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
<div style="float: right;">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="FiltrarTabla('TxtBusqueda','GvNominas')" style="display: inline-block; margin-right: -20px; width: 150px;">
<a href="javascript:;" onclick="FiltrarTabla('TxtBusqueda','GvNominas')" style="margin-top: -3px;" class="btn btn-circle btn-sm font-bold yellow-gold"><i class="icon-magnifier" style="font-weight: bold;"></i></a>
</div>
</div>
<div class="portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom ">
<asp:GridView ID="GvNominas" ClientIDMode="Static" runat="server" DataKeyNames="CvePeriodo,CvePersonal,CveNomina,SeTimbro,SerieFolio,Nombre,Correo" AutoGenerateColumns="False" OnRowDataBound="GvNominas_RowDataBound"
CssClass="table table-striped table-advance table-hover mysmallbtn ScrollAD Widthall" Style="text-align: center;" GridLines="None" EnableViewState="false"
data-rows="2">
<Columns>
<asp:TemplateField>
<HeaderTemplate></HeaderTemplate>
<ItemTemplate>
<asp:LinkButton ID="LnkSobreRecibo" OnClick="LnkSobreRecibo_Click" runat="server"><i class='fa fa-list-alt'></i></asp:LinkButton>
</ItemTemplate>
<ItemStyle Width="20px" HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Nombre</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNombre" runat="server"></asp:Literal>
</ItemTemplate>
<ItemStyle Width="350px" HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<div style="width: 70px; text-align: right;">
<asp:LinkButton runat="server" ID="LnkTimbrar" CssClass="btn btn-circle btn-sm blue mysmallbtn" Text="<i class='fa fa-bell'></i>" OnClick="LnkTimbrar_Click" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea Timbrar?" data-btn-ok-label="si" />
<asp:LinkButton runat="server" ID="ImgDelete" CssClass="btn btn-circle btn-sm red mysmallbtn" Text="<i class='icon-trash'></i>" OnClick="ImgDelete_Click" CommandArgument='<%# Eval("CveNomina") %>' Visible='<%# (Eval("CveNomina").ToString() != "" && Eval("SeTimbro").ToString() == "False"? true :false)%>' OnClientClick="javascript:return confirm('¿Está seguro que desea eliminar la nómina?');" />
<asp:LinkButton runat="server" ID="LnkCancelar" CssClass="btn btn-circle btn-sm red mysmallbtn" Text="<i class='fas fa-ban'></i>" OnClick="LnkCancelar_Click" CommandArgument='<%# Eval("CveNomina") %>' Visible='<%# (Eval("CveNomina").ToString() != "" && PermisoCancelarEmitido && Eval("SeTimbro").ToString() == "True"? true :false)%>' OnClientClick="javascript:return confirm('¿Está seguro que desea cancelar la nómina?');" />
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="Titulos"></HeaderStyle>
<AlternatingRowStyle CssClass="TextoAlterno"></AlternatingRowStyle>
<RowStyle CssClass="Texto"></RowStyle>
</asp:GridView>
</div>
</div>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DModalNominas" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpCargarNomina" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" runat="server" style="text-align: left">Cargar Nomina de excel</h4>
</div>
<div class="modal-body">
-recuerda Solo editar de las tercer fila en adelante.<br />
-No se debe editar el nombre de la hoja 'Nomina'.<br />
-la columna para referenciar al emplado es la primer columna 'Codigo', la columna empleado es solo es informativa.<br />
-si desea agregar un empleado que no se encuentre en la lista solo debe de ingresar fila y el codigo del empleado.<br />
-si no desea insertar un concepto puede borrar la columna.<br />
-no se debe borrar la columna codigo.<br />
<asp:TextBox ID="TxtArchivoNomina" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="LnkFormatoEmpleados" OnClick="LnkFormatoEmpleados_Click" Visible="false" CssClass="btn btn-succes" runat="server">Formato</asp:LinkButton>
<asp:LinkButton ID="LnkFormato" OnClick="LnkFormato_Click" CssClass="btn btn-success" runat="server">Formato</asp:LinkButton>
<asp:LinkButton ID="LnkCargarNomina" OnClick="LnkCargarNomina_Click" CssClass="btn btn-primary" runat="server">cargar y autorizar</asp:LinkButton>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkFormatoEmpleados" />
<asp:PostBackTrigger ControlID="LnkFormato" />
</Triggers>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

674
Nomina/Nomina2.aspx.cs Normal file
View File

@@ -0,0 +1,674 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
using System.Data;
using System.Text;
public partial class Nomina_Nomina2 : ClsPaginas
{
#region Propiedades
private DataTable dtPeriodos
{
get
{
if (ViewState["dtPeriodos"] == null) { return null; }
else { return (DataTable)ViewState["dtPeriodos"]; }
}
set { ViewState["dtPeriodos"] = value; }
}
private DataTable dtConceptos
{
get
{
if (ViewState["dtConceptos"] == null) { return null; }
else { return (DataTable)ViewState["dtConceptos"]; }
}
set { ViewState["dtConceptos"] = value; }
}
private DataTable dtempleados
{
get
{
if (ViewState["dtempleados"] == null) { return null; }
else { return (DataTable)ViewState["dtempleados"]; }
}
set { ViewState["dtempleados"] = value; }
}
protected bool PermisoCancelarEmitido
{
get
{
if (ViewState["PermisoCancelarEmitido"] == null) { return false; }
else { return (bool)ViewState["PermisoCancelarEmitido"]; }
}
set { ViewState["PermisoCancelarEmitido"] = value; }
}
protected bool PermisoAutorizar
{
get
{
if (ViewState["PermisoAutorizar"] == null) { return false; }
else { return (bool)ViewState["PermisoAutorizar"]; }
}
set { ViewState["PermisoAutorizar"] = value; }
}
protected bool PermisoEmitir
{
get
{
if (ViewState["PermisoEmitir"] == null) { return false; }
else { return (bool)ViewState["PermisoEmitir"]; }
}
set { ViewState["PermisoEmitir"] = value; }
}
protected int CvePeriodoSeleccionado
{
get
{
if (ViewState["CvePeriodoSeleccionado"] == null) { return 0; }
else { return ViewState["CvePeriodoSeleccionado"].ToString().ToEntero(); }
}
set { ViewState["CvePeriodoSeleccionado"] = value; }
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
cargaEjercicios();
CargaTiposPeriodo();
cargaPeriodos();
//Permisos
if (UsuarioActual.TienePermisoProceso(82))
{
PermisoAutorizar = true;
}
else
{
PermisoAutorizar = false;
}
if (UsuarioActual.TienePermisoProceso(83))
{
PermisoEmitir = true;
PermisoCancelarEmitido = true;
}
else
{
PermisoEmitir = false;
PermisoCancelarEmitido = false;
}
}
}
#region Filtros
private void cargaEjercicios()
{
int EjercicioActual = UsuarioActual.Empresa.EjercicioActual;
DataTable dtejercicio = null;
using (ClsNominas objnom = new ClsNominas())
{
if (objnom.GetEjercicios(UsuarioActual.CveEmpresa))
{
dtejercicio = objnom.DtResultados;
}
}
DdlEjercicios.DataSource = dtejercicio;
DdlEjercicios.DataBind();
if ((dtejercicio != null) && dtejercicio.Rows.Count > 0)
{
if (dtejercicio.COUNT("Ejercicio", string.Format("Ejercicio={0}", EjercicioActual)) == 0)
{
DdlEjercicios.Items.Insert(0, new ListItem(EjercicioActual.ToString(), EjercicioActual.ToString()));
}
if (dtejercicio.COUNT("Ejercicio", string.Format("Ejercicio={0}", (EjercicioActual - 1))) == 0)
{
DdlEjercicios.Items.Insert(1, new ListItem((EjercicioActual - 1).ToString(), (EjercicioActual - 1).ToString()));
}
}
else
{
DdlEjercicios.Items.Add(new ListItem(EjercicioActual.ToString(), EjercicioActual.ToString()));
DdlEjercicios.Items.Add(new ListItem((EjercicioActual - 1).ToString(), (EjercicioActual - 1).ToString()));
}
if (DdlEjercicios.Items.Count > 0)
{
DdlEjercicios.SelectedIndex = 0;
}
}
private void CargaTiposPeriodo()
{
DdlTipoPeriodo.DataSource = GlobalDTTipoPeriodo.FiltraParametros("Estatus = 'Activo'");
DdlTipoPeriodo.DataBind();
DdlTipoPeriodo.Items.Insert(0, new ListItem("Seleccione", "-1"));
if (DdlTipoPeriodo.Items.Count > 0)
{
DdlTipoPeriodo.SelectedIndex = 0;
}
}
private void cargaPeriodos()
{
int tipoPeriodo = DdlTipoPeriodo.SelectedValue.ToEntero();
int ejercicio = DdlEjercicios.SelectedValue.ToEntero();
dtPeriodos = null;
if (DdlTipoPeriodo.SelectedValue.ToEntero() > 0)
{
using (ClsNominas objperiodos = new ClsNominas())
{
if (objperiodos.GetPeriodos(tipoPeriodo, UsuarioActual.CveEmpresa, ejercicio, -1, -1))
{
dtPeriodos = objperiodos.DtResultados.FiltraParametros("Estatus IN (1,2,3,4,5)");
}
}
}
DdlPeriodo.DataSource = dtPeriodos;
DdlPeriodo.DataBind();
DdlPeriodo.Items.Insert(0, new ListItem("Seleccione", "-1"));
muestraPeriodo();
}
protected void DdlEjercicios_SelectedIndexChanged(object sender, EventArgs e)
{
cargaPeriodos();
}
protected void DdlTipoPeriodo_SelectedIndexChanged(object sender, EventArgs e)
{
cargaPeriodos();
}
protected void DdlPeriodo_SelectedIndexChanged(object sender, EventArgs e)
{
muestraPeriodo();
}
private void muestraPeriodo()
{
int CvePeriodo = DdlPeriodo.SelectedValue.ToEntero();
LnkConsultar.Visible = (CvePeriodo > 0);
UPFiltros.Update();
UpDatos.Update();
}
#endregion
#region Datos
protected void LnkConsultar_Click(object sender, EventArgs e)
{
bool continuar = false;
int CveProyecto = DdlProyecto.SelectedValue.ToEntero();
int CveSubProyecto = DdlSubProyecto.SelectedValue.ToEntero();
int CveTurno = DdlTurno.SelectedValue.ToEntero();
int CvePeriodo = DdlPeriodo.SelectedValue.ToEntero();
int CveEmpresa = UsuarioActual.CveEmpresa;
int Agrupador = DdlAgrupador.SelectedValue.ToEntero();
CvePeriodoSeleccionado = 0;
dtempleados = null;
dtConceptos = null;
using (ClsNominas objnom = new ClsNominas())
{
if (objnom.GetNominaEmpleado(CveProyecto, CveSubProyecto, CveTurno, CvePeriodo, CveEmpresa, Agrupador) && objnom.DTSetResultados.Tables.Count > 1)
{
dtempleados = objnom.DTSetResultados.Tables[0];
dtConceptos = objnom.DTSetResultados.Tables[1];
CvePeriodoSeleccionado = CvePeriodo;
continuar = true;
}
}
#region CargaGrid
if (continuar)
{
string ctipo = "P";
while (GvNominas.Columns.Count > 3)
{
GvNominas.Columns.RemoveAt(2);
}
int CurrentColumn = GvNominas.Columns.Count - 1;
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo IN ('P','D','O') AND EsPadre = 1 ").Rows)
{
int CveConcepto = row["CveConcepto"].ToString().ToEntero();
string Concepto = row["Concepto"].ToString();
string Tipo = row["Tipo"].ToString();
if (Tipo != ctipo)
{
if (ctipo == "P")
{
BoundField field = new BoundField();
field.HeaderText = "Percepciones";
field.DataField = "SumaPercepciones";
field.DataFormatString = "{0:N2}";
field.ItemStyle.Width = Unit.Pixel(120);
field.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
field.ItemStyle.BackColor = System.Drawing.Color.LightGray;
GvNominas.Columns.Insert(CurrentColumn++, field);
if (Tipo != "D")
{
field = new BoundField();
field.HeaderText = "Deducciones";
field.DataField = "SumaDeducciones";
field.DataFormatString = "{0:N2}";
field.ItemStyle.Width = Unit.Pixel(120);
field.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
field.ItemStyle.BackColor = System.Drawing.Color.LightGray;
GvNominas.Columns.Insert(CurrentColumn++, field);
field = new BoundField();
field.HeaderText = "Total";
field.DataField = "Total";
field.DataFormatString = "{0:N2}";
field.ItemStyle.Width = Unit.Pixel(120);
field.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
field.ItemStyle.BackColor = System.Drawing.Color.LightGray;
GvNominas.Columns.Insert(CurrentColumn++, field);
}
}
else if (ctipo == "D")
{
BoundField field = new BoundField();
field.HeaderText = "Deducciones";
field.DataField = "SumaDeducciones";
field.DataFormatString = "{0:N2}";
field.ItemStyle.Width = Unit.Pixel(120);
field.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
field.ItemStyle.BackColor = System.Drawing.Color.LightGray;
GvNominas.Columns.Insert(CurrentColumn++, field);
field = new BoundField();
field.HeaderText = "Total";
field.DataField = "Total";
field.DataFormatString = "{0:N2}";
field.ItemStyle.Width = Unit.Pixel(120);
field.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
field.ItemStyle.BackColor = System.Drawing.Color.LightGray;
GvNominas.Columns.Insert(CurrentColumn++, field);
}
ctipo = Tipo;
}
if (dtempleados.SUM(string.Format("[{0}]", CveConcepto)) > 0)
{
BoundField field = new BoundField();
field.HeaderText = Concepto;
field.DataField = CveConcepto.ToString();
field.DataFormatString = "{0:N2}";
field.ItemStyle.Width = Unit.Pixel(80);
GvNominas.Columns.Insert(CurrentColumn++, field);
}
}
BoundField field2 = new BoundField();
field2.HeaderText = "Obligaciones";
field2.DataField = "SumaObligaciones";
field2.DataFormatString = "{0:N2}";
field2.ItemStyle.Width = Unit.Pixel(120);
field2.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
field2.ItemStyle.BackColor = System.Drawing.Color.LightGray;
GvNominas.Columns.Insert(CurrentColumn++, field2);
GvNominas.DataSource = dtempleados;
GvNominas.DataBind();
}
else
{
GvNominas.DataSource = null;
GvNominas.DataBind();
}
#endregion
UpDatos.Update();
}
protected void GvNominas_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Literal LtlNombre = e.Row.FCLiteral("LtlNombre");
LinkButton LnkTimbrar = (LinkButton)e.Row.FindControl("LnkTimbrar");
int cvePersonal = e.Row.DataKey("CvePersonal").ToEntero();
int CvePeriodo = e.Row.DataKey("CvePeriodo").ToEntero();
int CveNomina = e.Row.DataKey("CveNomina").ToEntero();
string SeTimbro = e.Row.DBCampo("SeTimbro").ToString();
string Nombre = e.Row.DBCampo("Nombre").ToString();
string Turno = e.Row.DBCampo("Turno").ToString();
string SubProyecto = e.Row.DBCampo("SubProyecto").ToString();
LnkTimbrar.Visible = false;
if (cvePersonal > 0)
{
LtlNombre.Text = String.Format("<a class=\"Texto\" href=\"/RH/Personal.aspx?CvePersonal={0}\">{1}</a>", cvePersonal, Nombre);
if (CveNomina > 0)
{
if (SeTimbro == "False")
{
LnkTimbrar.Visible = true;
e.Row.CssClass = "info";
}
else
{
e.Row.CssClass = "success";
}
}
}
else
{
LtlNombre.Text = "Total General";
if (Turno.Length == 0 && SubProyecto.Length > 0)
{
LtlNombre.Text = String.Format("<b>Sub Proyecto: {0}<b>", SubProyecto);
}
else if (Turno.Length > 0)
{
LtlNombre.Text = String.Format("<b>Turno: {0}<b>", SubProyecto);
}
else
{
e.Row.CssClass = "SubTotales";
}
e.Row.FindControl("LnkSobreRecibo").Visible = false;
}
}
}
#endregion
#region SobreRecibo
protected void LnkSobreRecibo_Click(object sender, EventArgs e)
{
}
#endregion
protected void LnkTimbrar_Click(object sender, EventArgs e)
{
}
protected void ImgDelete_Click(object sender, EventArgs e)
{
}
protected void LnkCancelar_Click(object sender, EventArgs e)
{
}
protected void LnkCargarNomina_Click(object sender, EventArgs e)
{
List<Archivo> Filesgral = TxtArchivoNomina.getfiles().Archivos;
bool continuar = Filesgral.Count > 0;
string stringError = "";
Archivo fileItem = continuar ? Filesgral[0] : null;
if (continuar)
{
string FileExtension = fileItem.Extencion.ToUpper();
if (FileExtension == "XLS" | FileExtension == "XLSX" | FileExtension == "CSV")
{
}
else
{
continuar = false;
stringError = "No se inserto un archivo de tipo Excel";
}
}
DataTable DTEXcel = new DataTable();
if (continuar)
{
try
{
using (System.Data.Odbc.OdbcConnection conn = new System.Data.Odbc.OdbcConnection("Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" + fileItem.FileUrl))
{
conn.Open();
string exceltableName = "Nomina";
DataTable tables = conn.GetSchema("Tables");
if (tables.FiltraParametros(string.Format("TABLE_NAME LIKE'%{0}%'", exceltableName)).Rows.Count == 0)
{
continuar = false;
stringError = "El documento no contiene la hoja nomina";
}
else
{
exceltableName = tables.FiltroPrimero(string.Format("TABLE_NAME LIKE'%{0}%'", exceltableName))["TABLE_NAME"].ToString();
}
if (continuar)
{
using (System.Data.Odbc.OdbcCommand cmd = conn.CreateCommand())
{
cmd.CommandType = CommandType.Text;
cmd.CommandText = $"SELECT * FROM [{exceltableName}] WHERE LEN(Codigo)>0 AND Codigo <> 'Codigo'";
using (System.Data.Odbc.OdbcDataAdapter da = new System.Data.Odbc.OdbcDataAdapter(cmd))
{
da.Fill(DTEXcel);
}
}
}
}
}
catch (Exception ex)
{
continuar = false;
stringError = "Ocurrio un Error al procesar el excel ";
string.Format(stringError, ex.ToString()).GuardaLog();
}
}
if (continuar && DTEXcel.Rows.Count == 0)
{
continuar = false;
stringError = "No se encontraron cambios";
}
StringBuilder str = new StringBuilder();
bool rollback = false;
if (continuar)
{
int CveMoneda = 1;
List<int> lConceptos = new List<int>();
foreach (DataColumn item in DTEXcel.Columns)
{
if (item.ColumnName.ToEntero() > 0)
{
lConceptos.Add(item.ColumnName.ToEntero());
}
}
using (ClsRH objpersonal = new ClsRH())
{
using (ClsNominas objNomina = new ClsNominas())
{
foreach (DataRow row in DTEXcel.Rows)
{
string Codigo = row["Codigo"].ToString();
int CvePersonal = 0;
int CveNomina = 0;
double SubTotal = 0;
double Total = 0;
int CveMetodoPago = 0;
if (Codigo != "-1" && objpersonal.GetPersonal(-1, Codigo, "-1", "-1", "-1", -1, -1, -1, -1, -1, -1, -1, 2, -1, -1, "-1", -1, -1, -1, -1, -1, -1, "-1", "-1", "-1", "-1", UsuarioActual.CveEmpresa) &&
objpersonal.DtResultados.Rows.Count == 1)
{
CvePersonal = objpersonal.CvePersonal;
CveMetodoPago = objpersonal.CveMetodoPago;
}
else
{
str.AppendLine(string.Format("No se encontro el codigo {0}<br>", Codigo));
}
if (CvePersonal > 0)
{
if (objNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodoSeleccionado, -1, UsuarioActual.CveEmpresa))
{
if (objNomina.DtResultados.Rows.Count > 0)
{
CveNomina = objNomina.CveNomina;
}
else
{
if (objNomina.AddNom_Nominas(-1, 1, CvePersonal, CvePeriodoSeleccionado, SubTotal, 0, 0, Total, CveMoneda, 1, CveMetodoPago, DateTime.Now, "Deducciones nómina",
"", "", "", "", 0, 0, 0, new DateTime(), new DateTime(), new DateTime(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
{
CveNomina = objNomina.CveNomina;
}
else
{
rollback = true;
}
}
}
else
{
rollback = true;
}
}
if (CveNomina > 0)
{
foreach (int CveConcepto in lConceptos)
{
decimal Importe = 0;
decimal ImporteGravado = 0;
decimal ImporteExento = 0;
Importe = row[CveConcepto.ToString()].ToString().ToDecimal();
try
{
ImporteExento = row[string.Format("E{0}",CveConcepto)].ToString().ToDecimal();
}
catch (Exception) { }
ImporteGravado = Importe - ImporteExento;
objNomina.AddUPNom_NominasDetalles(objNomina.CveNomina, CvePeriodoSeleccionado, CvePersonal, CveConcepto, Importe, ImporteGravado, ImporteExento,UsuarioActual.CveUsuario);
}
}
}
}
}
}
if (!continuar)
{
Alert(stringError, ModExtensiones.TipoMensaje.MsgAdvertencia);
}
else
{
Alert("La información se a actualizado satisfactoriamente");
}
}
protected void LnkFormatoEmpleados_Click(object sender, EventArgs e)
{
}
protected void LnkFormato_Click(object sender, EventArgs e)
{
try
{
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
var libro = wb.AddWorksheet("Nomina");
int column = 1;
libro.Row(1).Hide();
libro.Cell(1, column).Value = "Codigo";
libro.Cell(2, column).Value = "Codigo";
column++;
libro.Cell(1, column).Value = "Empleado";
libro.Cell(2, column).Value = "Empleado";
libro.Column(column).Width = 35;
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo IN ('P','D','O') AND EsPadre = 1 ").Rows)
{
column++;
string CveConcepto = row["CveConcepto"].ToString();
string Concepto = row["Concepto"].ToString();
libro.Cell(1, column).Value = CveConcepto;
libro.Cell(2, column).Value = Concepto;
libro.Column(column).Width = 15;
column++;
CveConcepto = string.Format("E{0}", row["CveConcepto"]);
Concepto = string.Format("Exento {0}", row["Concepto"]);
libro.Cell(1, column).Value = CveConcepto;
libro.Cell(2, column).Value = Concepto;
libro.Column(column).Width = 15;
}
libro.Row(1).CellsUsed().Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Row(2).CellsUsed().Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Row(1).CellsUsed().Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
libro.Row(2).CellsUsed().Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
//libro.Row(1).Cell(13).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(247, 150, 70));
//libro.Row(1).Cell(14).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(0, 176, 240));
//libro.Row(1).Cell(15).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(177, 160, 199));
int Fila = 2;
foreach (DataRow erow in dtempleados.FiltraParametros("CvePersonal>0").Rows)
{
Fila++;
column = 1;
libro.Cell(Fila, column).Value = erow["Codigo"];
column++;
libro.Cell(Fila, column).Value = erow["Nombre"];
foreach (DataRow row in dtConceptos.FiltraParametros("Tipo IN ('P','D','O') AND EsPadre = 1 ").Rows)
{
column++;
string Concepto = row["CveConcepto"].ToString();
libro.Cell(Fila, column).Value = erow[Concepto];
column++;
Concepto = string.Format("{0}-E", row["CveConcepto"]);
libro.Cell(Fila, column).Value = erow[Concepto];
}
}
//libro.Row(2).SetAutoFilter();
System.IO.Stream fs = new System.IO.MemoryStream();
wb.SaveAs(fs);
fs.Position = 0;
System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
using (System.IO.Stream input = fs)
{
input.CopyTo(memoryStream);
}
memoryStream.Position = 0;
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", string.Format("attachment;filename={0}.xlsx", "FormatoCargaNominas"));
Response.BinaryWrite(memoryStream.ToArray());
Response.End();
}
catch (Exception ex)
{
Alert("Ocurrio un error al generar el Formato de nominas" + ex.ToString());
}
}
}

View File

@@ -2249,7 +2249,7 @@ Partial Class OC
Dim ObjConta As New ClsContabilidad(OC.IniciaTransacSQL()) Dim ObjConta As New ClsContabilidad(OC.IniciaTransacSQL())
Dim Conta As ClsContPAQi = Nothing Dim Conta As ClsContPAQi = Nothing
If UsuarioActual.Empresa.UsaAC AndAlso VerificaPresupuesto Then If (UsuarioActual.Empresa.UsaAC AndAlso VerificaPresupuesto) Or UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
Conta = New ClsContPAQi(UsuarioActual.Empresa) Conta = New ClsContPAQi(UsuarioActual.Empresa)
Conta.IniciaTransacSQL() Conta.IniciaTransacSQL()
End If End If
@@ -2647,6 +2647,13 @@ Partial Class OC
End If End If
End If End If
If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso Conta IsNot Nothing Then
If Not ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, ObjConta:=Conta) Then
TieneError = False
End If
End If
End If End If
End If End If
Next Next

View File

@@ -379,7 +379,6 @@ Partial Class RH_MiPerfil
DTConsumos = Nothing DTConsumos = Nothing
CargaEstados(1) CargaEstados(1)
CargaSuperioresOrganigrama() CargaSuperioresOrganigrama()
CargaPermisos()
CargaPermisosReemplazos() CargaPermisosReemplazos()
CargaConceptos() CargaConceptos()
CargaDatosPersonal() CargaDatosPersonal()
@@ -388,6 +387,7 @@ Partial Class RH_MiPerfil
If clave > 0 Then If clave > 0 Then
ViewState("CvePersonal") = clave ViewState("CvePersonal") = clave
CargaDatos() CargaDatos()
CargaPermisos()
LtlTitulo.Text = "Consulta de Personal:" LtlTitulo.Text = "Consulta de Personal:"
If UsuarioActual.CveRol = 1 Then If UsuarioActual.CveRol = 1 Then
ImgImprimirExpediente.Visible = True ImgImprimirExpediente.Visible = True

687
SigAyuda.aspx Normal file
View File

@@ -0,0 +1,687 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="SigAyuda.aspx.vb" Inherits="Metronic_SigAyuda" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
<link href="/Metronic/assets/global/css/components4.min.css" rel="stylesheet" id="style_components" type="text/css" />
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.fa-file-pdf-o{
color: #e43a45;
}
.fa-file-word-o{
color: #337ab7;
}
.fa-3 {
font-size: 1.5em;
}
.tabbable-custom .tabs-left.nav-tabs > li {
background-color: #f7f7f7;
}
.tabbable-custom .tabs-left.nav-tabs > li.active {
background-color: #FFF;
}
.tabbable-custom .tabs-left.nav-tabs > li:hover {
background-color: #fff;
/*border-top: 3px solid #F3565D;*/
}
.tabbable-custom .tabs-left.nav-tabs > li.active > a:hover {
border-right: none;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Ayuda
</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">
<%-- <div class="col-md-2 col-sm-3 ">
<div class="tabbable-custom">
<ul class="nav nav-tabs tabs-left">
<li class="active">
<asp:HyperLink ID="tabOrdenes_de_compra" NavigateUrl="#dtabOrdenes_de_compra" runat="server" data-toggle="tab">Ordenes de compra</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="tabCompras" NavigateUrl="#dtabCompras" runat="server" data-toggle="tab">Compras</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="tabBancos" NavigateUrl="#dtabBancos" runat="server" data-toggle="tab">Bancos</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="tabContabilidad" NavigateUrl="#dtabContabilidad" runat="server" data-toggle="tab">Contabilidad</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="tabVentas" NavigateUrl="#dtabVentas" runat="server" data-toggle="tab">Ventas</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="tabRecursos_Humanos" NavigateUrl="#dtabRecursos_Humanos" runat="server" data-toggle="tab">Recursos Humanos</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="tabActivos_Fijos" NavigateUrl="#dtabActivos_Fijos" runat="server" data-toggle="tab">Activos Fijos</asp:HyperLink>
</li>
<li>
<asp:HyperLink ID="tabInventarios" NavigateUrl="#dtabInventarios" runat="server" data-toggle="tab">Inventarios</asp:HyperLink>
</li>
</ul>
</div>
</div>
<div class="col-md-10 col-sm-9 ">--%>
<div class="mt-element-list">
<%--Titulo--%>
<div class="mt-list-head list-todo red">
<div class="list-head-title-container">
<h3 class="list-title">Menu Ayuda</h3>
</div>
<a href="javascript:;">
<%--<div class="list-count pull-right red-mint">
<i class="fa fa-question-circle"></i>
</div>--%>
</a>
</div>
<%-- Ordenes de compra --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class="fa fa-tags"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskOC" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Ordenes de compra</div>
<div class="badge badge-default pull-right bold">1</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskOC">
<ul>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Ordenes de Compra/Manual Ordenes de Compra.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Manual Ordenes de Compra
</h4>
</div>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%-- Compras --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class="fa fa-shopping-cart"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskCompras" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Compras</div>
<div class="badge badge-default pull-right bold">5</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskCompras">
<ul>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Compras/Catalogo de proveedores.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Catalogo de proveedores
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Compras/eFacturas y Proveedores.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">eFacturas y Proveedores
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Compras/Manual Proveedores Pagos .pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Manual Proveedores Pagos
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Compras/Manual Registro de factura.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Manual Registro de factura
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Compras/Recepción de Complementos de Pago.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Recepción de Complementos de Pago
</h4>
</div>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%-- Bancos --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class="fa fa-university"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskBancos" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Bancos</div>
<div class="badge badge-default pull-right bold">6</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskBancos">
<ul>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Bancos/Cancelacion de complementos de pago.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Cancelacion de complementos de pago
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Bancos/Manual Cuentas Bancarias.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Manual Cuentas Bancarias
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-word-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Bancos/Procedimiento de caja chica.docx');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Procedimiento de caja chica
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-word-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Bancos/Procedimiento para actualizar gestor de cobranza.docx');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Procedimiento para actualizar gestor de cobranza
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-word-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Bancos/Surtir mercancía de contado.docx');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Surtir mercancía de contado
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-word-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Bancos/Uso de cajas chicas y Cortes en Punto de Venta.docx');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Uso de cajas chicas y Cortes en Punto de Venta
</h4>
</div>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%-- Contabilidad --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class="icon-calculator"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskContabilidad" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Contabilidad</div>
<div class="badge badge-default pull-right bold">0</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskContabilidad">
<ul>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%-- Ventas --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class="fa fa-money"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskVentas" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Ventas</div>
<div class="badge badge-default pull-right bold">2</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskVentas">
<ul>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Ventas/Procesos de Ventas.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Procesos de Ventas
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Ventas/Reportes de Ventas.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Reportes de Ventas
</h4>
</div>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%-- Recursos Humanos --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class="fa fa-users"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskRH" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Recursos Humanos</div>
<div class="badge badge-default pull-right bold">4</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskRH">
<ul>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/RH/Manual RH.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Manual RH
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-word-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/RH/Registro y asignación de uniformes.docx');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Registro y asignación de uniformes
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-word-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/RH/Solicitud de permisos.docx');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Solicitud de permisos
</h4>
</div>
</li>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-word-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/RH/Viaticos.docx');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Viaticos
</h4>
</div>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%-- Activos Fijos --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class=" fa fa-building"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskAF" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Activos Fijos</div>
<div class="badge badge-default pull-right bold">1</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskAF">
<ul>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Activos Fijos/Manual Activo Fijo.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Manual Activo Fijo
</h4>
</div>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%-- Inventarios --%>
<div class="mt-list-container list-todo">
<div class="list-todo-line"></div>
<ul>
<li class="mt-list-item">
<div class="list-todo-icon bg-white">
<i class="fa fa-dropbox"></i>
</div>
<div class="list-todo-item grey">
<a class="list-toggle-container font-white" data-toggle="collapse" href="#taskInventarios" aria-expanded="false">
<div class="list-toggle done uppercase">
<div class="list-toggle-title bold">Inventarios</div>
<div class="badge badge-default pull-right bold">1</div>
</div>
</a>
<div class="task-list panel-collapse collapse " id="taskInventarios">
<ul>
<li class="task-list-item done">
<div class="task-icon">
<a href="javascript:;">
<i class="fa fa-file-pdf-o fa-3"></i>
</a>
</div>
<div class="task-status">
<a class="done" href="javascript:downFile('Manuales/Inventarios/Manual recepcion de Almacen.pdf');">
<i class="fa fa-download fa-3"></i>
</a>
</div>
<div class="task-content">
<h4 class="uppercase bold">Manual recepcion de Almacen
</h4>
</div>
</li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<%--</div>
<div class="tab-content">
<div class="tab-pane active" id="dtabOrdenes_de_compra">
<h4>Ordenes de compra</h4>
<a onclick="">Descarga el manual de ordenes de compra aquí</a>
</div>
<div class="tab-pane " id="dtabCompras">
<h4>Compras</h4>
<a onclick="downFile('Manuales/Compras/Catalogo de proveedores.pdf')">Descarga el Catalogo de proveedores aquí</a>
<a onclick="downFile('Manuales/Compras/eFacturas y Proveedores.pdf')">Descarga eFacturas y Proveedores aquí</a>
<a onclick="downFile('Manuales/Compras/Manual Proveedores Pagos .pdf')">Descarga el manual de proveedores pagos aquí</a>
<a onclick="downFile('Manuales/Compras/Manual Registro de factura.pdf')">Descarga el manual de registro de factura aquí</a>
<a onclick="downFile('Manuales/Compras/Recepción de Complementos de Pago.pdf')">Descarga el manual de recepción complementos de Pago aquí</a>
</div>
<div class="tab-pane " id="dtabBancos">
<h4>Bancos</h4>
<a onclick="downFile('Manuales/Bancos/Cancelacion de complementos de pago.pdf')">Descarga el manual de cancelacion de complementos de pago aquí</a>
<a onclick="downFile('Manuales/Bancos/Manual Cuentas Bancarias.pdf')">Descarga el manual de cuentas bancarias aquí</a>
<a onclick="downFile('Manuales/Bancos/Procedimiento de caja chica.docx')">Descarga el procedimiento de caja chica aquí</a>
<a onclick="downFile('Manuales/Bancos/Procedimiento para actualizar gestor de cobranza.docx')">Descarga el procedimiento para actualizar gestor de cobranza aquí</a>
<a onclick="downFile('Manuales/Bancos/Surtir mercancía de contado.docx')">Descarga el manual de surtir mercancía de contado aquí</a>
<a onclick="downFile('Manuales/Bancos/Uso de cajas chicas y Cortes en Punto de Venta.docx')">Descarga el manual de uso de cajas chicas y cortes en punto de venta aquí</a>
</div>
<div class="tab-pane " id="dtabContabilidad">
<h4>Contabilidad</h4>
<a onclick="downFile('Manuales/.pdf')">Descarga el manual aquí</a>
</div>
<div class="tab-pane " id="dtabVentas">
<h4>Ventas</h4>
<a onclick="downFile('Manuales/Ventas/Procesos de Ventas.pdf')">Descarga el manual de procesos de Ventas aquí</a>
<a onclick="downFile('Manuales/Ventas/Reportes de Ventas.pdf')">Descarga el manual de reportes de ventas aquí</a>
</div>
<div class="tab-pane " id="dtabRecursos_Humanos">
<h4>Recursos Humanos</h4>
<a onclick="downFile('Manuales/RH/Manual RH.pdf')">Descarga el manual de RH aquí</a>
<a onclick="downFile('Manuales/RH/Registro y asignación de uniformes.docx')">Descarga el manual de registro y asignación de uniformes aquí</a>
<a onclick="downFile('Manuales/RH/Solicitud de permisos.docx')">Descarga el manual de solicitud de permisos aquí</a>
<a onclick="downFile('Manuales/RH/Viaticos.docx')">Descarga el manual de viaticos aquí</a>
</div>
<div class="tab-pane " id="dtabActivos_Fijos">
<h4>Activos Fijos</h4>
<a onclick="downFile('Manuales/Activos Fijos/Manual Activo Fijo.pdf')">Descarga el manual de activo fijo aquí</a>
</div>
<div class="tab-pane " id="dtabInventarios">
<h4>Inventarios</h4>
<a onclick="downFile('Manuales/Inventarios/Manual recepcion de Almacen.pdf')">Descarga el manual de recepcion de Almacen aquí</a>
</div>
</div>--%>
</div>
<asp:TextBox ID="TxtDocto" CssClass="hidden TxtDocto" runat="server"></asp:TextBox>
<asp:Button ID="btnDownload" OnClick="btnDownload_Click" runat="server" UseSubmitBehavior="false" CssClass="hidden btnDownload" Text="dowm" />
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function downFile(file) {
$('.TxtDocto').val(file);
$('.btnDownload').click();
}
</script>
</asp:Content>

32
SigAyuda.aspx.vb Normal file
View File

@@ -0,0 +1,32 @@

Partial Class Metronic_SigAyuda
Inherits System.Web.UI.Page
Protected Sub btnDownload_Click(sender As Object, e As EventArgs)
Try
Dim docto As String = TxtDocto.Text.Replace("/", "\")
Dim path As String = $"{AppDomain.CurrentDomain.BaseDirectory}{docto}"
Dim file As New System.IO.FileInfo(path)
Dim mimeType As String = "text/plain"
Try
mimeType = MimeMapping.GetMimeMapping(path)
Catch ex As Exception
End Try
'Response.Write(path)
Response.Clear()
Response.ClearHeaders()
Response.ClearContent()
Response.AddHeader("Content-Disposition", $"attachment; filename= {Uri.EscapeDataString(file.Name)}")
Response.AddHeader("Content-Length", file.Length.ToString())
Response.ContentType = mimeType
Response.Flush()
Response.TransmitFile(file.FullName)
Response.End()
Catch ex As Exception
'GuardaLog($"GenerateFile: {ex.ToString()}")
End Try
End Sub
End Class

View File

@@ -58,6 +58,8 @@
<asp:DropDownList ID="DdlCtaContableClientes" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px"> <asp:DropDownList ID="DdlCtaContableClientes" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px">
<asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCtaCliente" runat="server" ControlToValidate="DdlCtaContableClientes" InitialValue="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />La cuenta del <b>''Cliente''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECtaCliente" runat="server" HighlightCssClass="vco" TargetControlID="RFVCtaCliente" Width="300px"></ajax:ValidatorCalloutExtender>
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -69,9 +71,11 @@
</asp:RadioButtonList> </asp:RadioButtonList>
</td> </td>
<td> <td>
<asp:DropDownList ID="DropDownList1" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px"> <asp:DropDownList ID="DdlCtaContableProveedores" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px">
<asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCtaProveedor" runat="server" ControlToValidate="DdlCtaContableProveedores" InitialValue="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />La cuenta del <b>''Proveedor''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECtaProveedor" runat="server" HighlightCssClass="vco" TargetControlID="RFVCtaProveedor" Width="300px"></ajax:ValidatorCalloutExtender>
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -83,9 +87,11 @@
</asp:RadioButtonList> </asp:RadioButtonList>
</td> </td>
<td> <td>
<asp:DropDownList ID="DropDownList2" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px"> <asp:DropDownList ID="DdlCtaContableDeudores" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px">
<asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCtaDeudor" runat="server" ControlToValidate="DdlCtaContableDeudores" InitialValue="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />La cuenta del <b>''Deudor''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECtaDeudor" runat="server" HighlightCssClass="vco" TargetControlID="RFVCtaDeudor" Width="300px"></ajax:ValidatorCalloutExtender>
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -97,9 +103,11 @@
</asp:RadioButtonList> </asp:RadioButtonList>
</td> </td>
<td> <td>
<asp:DropDownList ID="DropDownList3" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px"> <asp:DropDownList ID="DdlCtaContableAlmacen" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px">
<asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCtaAlmacen" runat="server" ControlToValidate="DdlCtaContableAlmacen" InitialValue="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />La cuenta de <b>''Almacén''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECtaAlmacen" runat="server" HighlightCssClass="vco" TargetControlID="RFVCtaAlmacen" Width="300px"></ajax:ValidatorCalloutExtender>
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -111,27 +119,13 @@
</asp:RadioButtonList> </asp:RadioButtonList>
</td> </td>
<td> <td>
<asp:DropDownList ID="DropDownList4" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px"> <asp:DropDownList ID="DdlCtaContableCosto" class="select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" DataValueField="Id" Width="200px">
<asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="0"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCtaCosto" runat="server" ControlToValidate="DdlCtaContableCosto" InitialValue="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />La cuenta de <b>''Costo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECtaCosto" runat="server" HighlightCssClass="vco" TargetControlID="RFVCtaCosto" Width="300px"></ajax:ValidatorCalloutExtender>
</td> </td>
</tr> </tr>
<%-- <tr>
<td>Clave de Empresa:</td>
<td>
<asp:TextBox ID="TxtCveEmpresa" runat="server" MaxLength="50" Width="60px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCveEmpresa" runat="server" ControlToValidate="TxtCveEmpresa" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''CveEmpresa de la Empresa''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECveEmpresa" runat="server" HighlightCssClass="vco" TargetControlID="RFVCveEmpresa" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Razón Social:</td>
<td>
<asp:TextBox ID="TxtEmpresa" runat="server" MaxLength="50" Width="350px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVEmpresa" runat="server" ControlToValidate="TxtEmpresa" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre de la Empresa''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEEmpresa" runat="server" HighlightCssClass="vco" TargetControlID="RFVEmpresa" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
</tr>--%>
</table> </table>
</div> </div>
</div> </div>

View File

@@ -17,134 +17,146 @@ Partial Class Sistemas_ConfiguracionEmpresa
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then If Not IsPostBack Then
CargaCuentasClientesSIG() CargaCuentasClientesSIG(DdlCtaContableClientes)
CargaCuentasClientesSIG(DdlCtaContableProveedores)
CargaCuentasClientesSIG(DdlCtaContableDeudores)
CargaCuentasClientesSIG(DdlCtaContableAlmacen)
CargaCuentasClientesSIG(DdlCtaContableCosto)
End If End If
End Sub End Sub
#Region "Carga Cuentas" #Region "Carga Cuentas"
Private Sub CargaCuentasClientesSIG() Private Sub CargaCuentasClientesSIG(ddl As DropDownList)
Dim ObjContabilidad As New ClsContabilidad Dim ObjContabilidad As New ClsContabilidad
If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
DdlCtaContableClientes.Items.Clear() ddl.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ddl.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados ddl.DataSource = ObjContabilidad.DtResultados
DdlCtaContableClientes.DataBind() ddl.DataBind()
End If End If
ObjContabilidad.Dispose() ObjContabilidad.Dispose()
End Sub End Sub
Private Sub CargaCuentasClientesCompaq() Private Sub CargaCuentasClientesCompaq(ddl As DropDownList)
Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa) Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa)
If ObjCompaq.GetCuentas(-1, "-1", 1) Then If ObjCompaq.GetCuentas(-1, "-1", 1) Then
DdlCtaContableClientes.Items.Clear() ddl.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ddl.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados ddl.DataSource = ObjCompaq.DtResultados
DdlCtaContableClientes.DataBind() ddl.DataBind()
End If End If
ObjCompaq.Dispose() ObjCompaq.Dispose()
End Sub End Sub
Private Sub CargaCuentasProveedoresSIG() 'Private Sub CargaCuentasProveedoresSIG()
Dim ObjContabilidad As New ClsContabilidad ' Dim ObjContabilidad As New ClsContabilidad
If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then ' If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados ' DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjContabilidad.Dispose() ' ObjContabilidad.Dispose()
End Sub 'End Sub
Private Sub CargaCuentasProveedoresCompaq() 'Private Sub CargaCuentasProveedoresCompaq()
Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa) ' Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa)
If ObjCompaq.GetCuentas(-1, "-1", 1) Then ' If ObjCompaq.GetCuentas(-1, "-1", 1) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados ' DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjCompaq.Dispose() ' ObjCompaq.Dispose()
End Sub 'End Sub
Private Sub CargaCuentasDeudoresSIG() 'Private Sub CargaCuentasDeudoresSIG()
Dim ObjContabilidad As New ClsContabilidad ' Dim ObjContabilidad As New ClsContabilidad
If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then ' If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados ' DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjContabilidad.Dispose() ' ObjContabilidad.Dispose()
End Sub 'End Sub
Private Sub CargaCuentassDeudoresCompaq() 'Private Sub CargaCuentassDeudoresCompaq()
Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa) ' Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa)
If ObjCompaq.GetCuentas(-1, "-1", 1) Then ' If ObjCompaq.GetCuentas(-1, "-1", 1) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados ' DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjCompaq.Dispose() ' ObjCompaq.Dispose()
End Sub 'End Sub
Private Sub CargaCuentasAlmacenSIG() 'Private Sub CargaCuentasAlmacenSIG()
Dim ObjContabilidad As New ClsContabilidad ' Dim ObjContabilidad As New ClsContabilidad
If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then ' If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados ' DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjContabilidad.Dispose() ' ObjContabilidad.Dispose()
End Sub 'End Sub
Private Sub CargaCuentasAlmacenCompaq() 'Private Sub CargaCuentasAlmacenCompaq()
Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa) ' Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa)
If ObjCompaq.GetCuentas(-1, "-1", 1) Then ' If ObjCompaq.GetCuentas(-1, "-1", 1) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados ' DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjCompaq.Dispose() ' ObjCompaq.Dispose()
End Sub 'End Sub
Private Sub CargaCuentasCostoSIG() 'Private Sub CargaCuentasCostoSIG()
Dim ObjContabilidad As New ClsContabilidad ' Dim ObjContabilidad As New ClsContabilidad
If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then ' If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados ' DdlCtaContableClientes.DataSource = ObjContabilidad.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjContabilidad.Dispose() ' ObjContabilidad.Dispose()
End Sub 'End Sub
Private Sub CargaCuentasCostoCompaq() 'Private Sub CargaCuentasCostoCompaq()
Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa) ' Dim ObjCompaq As New ClsContPAQi(UsuarioActual.Empresa)
If ObjCompaq.GetCuentas(-1, "-1", 1) Then ' If ObjCompaq.GetCuentas(-1, "-1", 1) Then
DdlCtaContableClientes.Items.Clear() ' DdlCtaContableClientes.Items.Clear()
DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0")) ' DdlCtaContableClientes.Items.Add(New ListItem("Seleccione", "0"))
DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados ' DdlCtaContableClientes.DataSource = ObjCompaq.DtResultados
DdlCtaContableClientes.DataBind() ' DdlCtaContableClientes.DataBind()
End If ' End If
ObjCompaq.Dispose() ' ObjCompaq.Dispose()
End Sub 'End Sub
#End Region #End Region
Protected Sub RblTipo_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RblTipo.SelectedIndexChanged Protected Sub RblTipo_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RblTipo.SelectedIndexChanged
If RblTipo.SelectedValue = "SIG" Then If RblTipo.SelectedValue = "SIG" Then
DvServidorConta.Visible = False DvServidorConta.Visible = False
CargaCuentasClientesSIG() CargaCuentasClientesSIG(DdlCtaContableClientes)
CargaCuentasClientesSIG(DdlCtaContableProveedores)
CargaCuentasClientesSIG(DdlCtaContableDeudores)
CargaCuentasClientesSIG(DdlCtaContableAlmacen)
CargaCuentasClientesSIG(DdlCtaContableCosto)
Else Else
DvServidorConta.Visible = True DvServidorConta.Visible = True
CargaCuentasClientesCompaq() CargaCuentasClientesCompaq(DdlCtaContableClientes)
CargaCuentasClientesCompaq(DdlCtaContableProveedores)
CargaCuentasClientesCompaq(DdlCtaContableDeudores)
CargaCuentasClientesCompaq(DdlCtaContableAlmacen)
CargaCuentasClientesCompaq(DdlCtaContableCosto)
End If End If
End Sub End Sub
@@ -152,7 +164,7 @@ Partial Class Sistemas_ConfiguracionEmpresa
Dim ObjEmpresas As New ClsSisEmpresas Dim ObjEmpresas As New ClsSisEmpresas
ObjEmpresas.IniciaTransacSQL() ObjEmpresas.IniciaTransacSQL()
Alert("sdfsz")

View File

@@ -1193,11 +1193,22 @@
<ajax:FilteredTextBoxExtender ID="FBEImporteContado" runat="server" TargetControlID="TxtImporteContado" FilterType="Custom, Numbers" ValidChars=".," /> <ajax:FilteredTextBoxExtender ID="FBEImporteContado" runat="server" TargetControlID="TxtImporteContado" FilterType="Custom, Numbers" ValidChars=".," />
<asp:CompareValidator ID="CVImporteContado" runat="server" ControlToValidate="TxtImporteContado" Display="None" ErrorMessage="Importe excedido." Operator="LessThanEqual" Type="Double" ValidationGroup="GrpAgregarPago"></asp:CompareValidator> <%--<asp:CompareValidator ID="CVImporteContado" runat="server" ControlToValidate="TxtImporteContado" Display="None" ErrorMessage="Importe excedido." Operator="LessThanEqual" Type="Double" ValidationGroup="GrpAgregarPago"></asp:CompareValidator>--%>
<ajax:ValidatorCalloutExtender ID="VCEImporteContado" runat="server" HighlightCssClass="vco" TargetControlID="CVImporteContado" Width="300px"></ajax:ValidatorCalloutExtender> <%--<ajax:ValidatorCalloutExtender ID="VCEImporteContado" runat="server" HighlightCssClass="vco" TargetControlID="CVImporteContado" Width="300px"></ajax:ValidatorCalloutExtender>--%>
<br></br> <br></br>
</div> </div>
</div> </div>
<div class="row">
<div class="col-md-6">
</div>
<label class="col-md-2">Cambio:</label>
<div class="col-md-4 input-icon">
<i style="margin: 0px;">$</i>
<asp:TextBox ID="TxtCambio" CssClass="form-control input-sm " Enabled="false" runat="server" MaxLength="12" Width="100px" ClientIDMode="Static" Style="text-align: right;"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FTBECambio" runat="server" TargetControlID="TxtCambio" FilterType="Custom, Numbers" ValidChars=".," />
<br></br>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@@ -3180,7 +3191,17 @@
var totalTransferencia = ToDouble($get("TxtImporteTransferencia").value); var totalTransferencia = ToDouble($get("TxtImporteTransferencia").value);
var total = totalEfectivo + totalCredito + totalDebito + totalCheque + totalTransferencia; var total = totalEfectivo + totalCredito + totalDebito + totalCheque + totalTransferencia;
var totalVenta = ToDouble($get('TxtTotal').value);
if (totalEfectivo > totalVenta) {
$get("TxtCambio").value = FormatoNumero(totalEfectivo - totalVenta);
} else {
$get("TxtCambio").value = "0.00";
}
$get("TxtImporteContado").value = total; $get("TxtImporteContado").value = total;
} }
// **************************************************************************************************************************************************************************** // ****************************************************************************************************************************************************************************
@@ -3491,9 +3512,17 @@
$('#divAgregarCliente').modal(); $('#divAgregarCliente').modal();
} }
function hideDivEC() { function hideDivEC() {
$('#divAgregarCliente').modal('hide'); $('#divAgregarCliente').modal('hide');
} }
function CambiaAjuste(txt, txtajuste) {
Recalcula();
if (txtajuste != null) {
txtajuste.value = ToDouble(txt.value)
}
}
</script> </script>
</asp:Content> </asp:Content>

View File

@@ -1032,8 +1032,8 @@ Partial Class PV
TxtFecha.Text = Now.ToShortDateString() TxtFecha.Text = Now.ToShortDateString()
LblUsuario.Text = UsuarioActual.Usuario LblUsuario.Text = UsuarioActual.Usuario
TxtPrecio.Attributes.Add("onKeyUp ", "Recalcula();")
TxtCantidad.Attributes.Add("onKeyUp ", "Recalcula();") TxtCantidad.Attributes.Add("onKeyUp ", "Recalcula();")
TxtPrecio.Attributes.Add("onKeyUp ", "Recalcula();")
ImgDescPU.Attributes.Add("onclick", "javascript:$('#ModalDescuento').modal(); $get('LblTitulo1').style.display = ''; $get('LblTitulo2').style.display = 'none'; $get('LblTituloTipo1').style.display = ''; $get('LblTituloTipo2').style.display = 'none'; $get('HdnTipoDescuento').value = '0'; $get('LblPrecio1').style.display = ''; $get('LblTotalPS1').style.display = 'none'; $get('LblSubTotal1').style.display = 'none'; $get('LblAmort').style.display = 'none'; $get('BtnAplicarDescP').style.display = ''; $get('BtnAplicarDescG').style.display = 'none'; $get('TrMotivoDescuento').style.display = '';") ImgDescPU.Attributes.Add("onclick", "javascript:$('#ModalDescuento').modal(); $get('LblTitulo1').style.display = ''; $get('LblTitulo2').style.display = 'none'; $get('LblTituloTipo1').style.display = ''; $get('LblTituloTipo2').style.display = 'none'; $get('HdnTipoDescuento').value = '0'; $get('LblPrecio1').style.display = ''; $get('LblTotalPS1').style.display = 'none'; $get('LblSubTotal1').style.display = 'none'; $get('LblAmort').style.display = 'none'; $get('BtnAplicarDescP').style.display = ''; $get('BtnAplicarDescG').style.display = 'none'; $get('TrMotivoDescuento').style.display = '';")
'ImgDescConcepto.Attributes.Add("onclick", "javascript:$('#ModalDescuento').modal(); $get('LblTitulo1').style.display = ''; $get('LblTitulo2').style.display = 'none'; $get('LblTituloTipo1').style.display = ''; $get('LblTituloTipo2').style.display = 'none'; $get('HdnTipoDescuento').value = '1'; $get('LblPrecio1').style.display = 'none'; $get('LblTotalPS1').style.display = ''; $get('LblSubTotal1').style.display = 'none'; $get('LblAmort').style.display = 'none'; $get('BtnAplicarDescP').style.display = ''; $get('BtnAplicarDescG').style.display = 'none'; $get('TrMotivoDescuento').style.display = '';") 'ImgDescConcepto.Attributes.Add("onclick", "javascript:$('#ModalDescuento').modal(); $get('LblTitulo1').style.display = ''; $get('LblTitulo2').style.display = 'none'; $get('LblTituloTipo1').style.display = ''; $get('LblTituloTipo2').style.display = 'none'; $get('HdnTipoDescuento').value = '1'; $get('LblPrecio1').style.display = 'none'; $get('LblTotalPS1').style.display = ''; $get('LblSubTotal1').style.display = 'none'; $get('LblAmort').style.display = 'none'; $get('BtnAplicarDescP').style.display = ''; $get('BtnAplicarDescG').style.display = 'none'; $get('TrMotivoDescuento').style.display = '';")
ImgDescTotal.Attributes.Add("onclick", "javascript:$('#ModalDescuento').modal(); $get('LblTitulo1').style.display = ''; $get('LblTitulo2').style.display = 'none'; $get('LblTituloTipo1').style.display = ''; $get('LblTituloTipo2').style.display = 'none'; $get('HdnTipoDescuento').value = '2'; $get('LblPrecio1').style.display = 'none'; $get('LblTotalPS1').style.display = 'none'; $get('LblSubTotal1').style.display = ''; $get('LblAmort').style.display = 'none'; $get('BtnAplicarDescP').style.display = 'none'; $get('BtnAplicarDescG').style.display = ''; $get('TrMotivoDescuento').style.display = '';") ImgDescTotal.Attributes.Add("onclick", "javascript:$('#ModalDescuento').modal(); $get('LblTitulo1').style.display = ''; $get('LblTitulo2').style.display = 'none'; $get('LblTituloTipo1').style.display = ''; $get('LblTituloTipo2').style.display = 'none'; $get('HdnTipoDescuento').value = '2'; $get('LblPrecio1').style.display = 'none'; $get('LblTotalPS1').style.display = 'none'; $get('LblSubTotal1').style.display = ''; $get('LblAmort').style.display = 'none'; $get('BtnAplicarDescP').style.display = 'none'; $get('BtnAplicarDescG').style.display = ''; $get('TrMotivoDescuento').style.display = '';")
@@ -1476,7 +1476,7 @@ Partial Class PV
HdnIVAOriginal.Value = TxtIVA.Text HdnIVAOriginal.Value = TxtIVA.Text
'JJMQ 20160506: Se agrego para la validacion de pago de contado. 'JJMQ 20160506: Se agrego para la validacion de pago de contado.
CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "")
If DdlVendedor.SelectedValue.ToEntero > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then If DdlVendedor.SelectedValue.ToEntero > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then
DdlVendedor.Enabled = False DdlVendedor.Enabled = False
@@ -1967,7 +1967,7 @@ Partial Class PV
Alert("Eliminado Correctamente.", TipoMensaje.MsgInformacion) Alert("Eliminado Correctamente.", TipoMensaje.MsgInformacion)
'JJMQ 20160506: Se agrego para la validacion de pago de contado. 'JJMQ 20160506: Se agrego para la validacion de pago de contado.
CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "")
UpContado.Update() UpContado.Update()
End Sub End Sub
@@ -3085,7 +3085,7 @@ Partial Class PV
End If End If
'JJMQ 20160506: Se agrego para la validacion de pago de contado. 'JJMQ 20160506: Se agrego para la validacion de pago de contado.
CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "")
UpContado.Update() UpContado.Update()
Else Else
@@ -3903,7 +3903,7 @@ Partial Class PV
HdnIVAOriginal.Value = TxtIVA.Text HdnIVAOriginal.Value = TxtIVA.Text
'JJMQ 20160506: Se agrego para la validacion de pago de contado. 'JJMQ 20160506: Se agrego para la validacion de pago de contado.
CVImporteContado.ValueToCompare = Total.ToString 'CVImporteContado.ValueToCompare = Total.ToString
Dim view As DataView = New DataView(TmpDT) Dim view As DataView = New DataView(TmpDT)
view.Sort = "Consec" view.Sort = "Consec"
@@ -4264,6 +4264,7 @@ Partial Class PV
TxtImporteCheque.Text = "0.00" TxtImporteCheque.Text = "0.00"
TxtImporteTransferencia.Text = "0.00" TxtImporteTransferencia.Text = "0.00"
TxtImporteContado.Text = "0.00" TxtImporteContado.Text = "0.00"
TxtCambio.Text = "0.00"
End Sub End Sub
Private Sub LimpiaEscondeContado() Private Sub LimpiaEscondeContado()
'LIMPIA 'LIMPIA
@@ -4336,7 +4337,7 @@ Partial Class PV
'JJMQ 20160506: Validacion para no pagar de mas a peticion de I.P. 'JJMQ 20160506: Validacion para no pagar de mas a peticion de I.P.
Dim abonado = DtPagos.SUM("Importe") Dim abonado = DtPagos.SUM("Importe")
Dim saldo = TxtTotal.Text.Replace(",", "").ToDouble - abonado Dim saldo = TxtTotal.Text.Replace(",", "").ToDouble - abonado
CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString 'CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString
CargaGridContado() CargaGridContado()
UpContado.Update() UpContado.Update()
@@ -4350,7 +4351,7 @@ Partial Class PV
If total <= 0 Then Alert("No se ha ingresado importe", TipoMensaje.MsgAdvertencia) : Exit Sub If total <= 0 Then Alert("No se ha ingresado importe", TipoMensaje.MsgAdvertencia) : Exit Sub
If DtPagos.SUM("Importe").ToString.ToDecimal + total > TxtTotal.Text.ToDecimal Then If (DtPagos.SUM("Importe").ToString.ToDecimal + total - TxtCambio.Text.ToDecimal) > TxtTotal.Text.ToDecimal Then
Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor rectifique.", TipoMensaje.MsgAdvertencia) Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor rectifique.", TipoMensaje.MsgAdvertencia)
Exit Sub Exit Sub
End If End If
@@ -4363,7 +4364,7 @@ Partial Class PV
DrEfectivo("TipoMovimiento") = "Pago en Efectivo" DrEfectivo("TipoMovimiento") = "Pago en Efectivo"
DrEfectivo("CveCuenta") = DdlCuentaEfectivo.SelectedValue DrEfectivo("CveCuenta") = DdlCuentaEfectivo.SelectedValue
DrEfectivo("Cuenta") = DdlCuentaEfectivo.SelectedItem.Text DrEfectivo("Cuenta") = DdlCuentaEfectivo.SelectedItem.Text
DrEfectivo("Importe") = TxtImporteEfectivo.Text DrEfectivo("Importe") = TxtImporteEfectivo.Text.ToDecimal - TxtCambio.Text.ToDecimal
DrEfectivo("Folio") = CargaFolioContado(DdlCuentaEfectivo.SelectedValue.ToEntero, 6) DrEfectivo("Folio") = CargaFolioContado(DdlCuentaEfectivo.SelectedValue.ToEntero, 6)
DrEfectivo("Observaciones") = "" DrEfectivo("Observaciones") = ""
DrEfectivo("Tipo") = "Caja Chica" DrEfectivo("Tipo") = "Caja Chica"
@@ -4456,7 +4457,7 @@ Partial Class PV
'JJMQ 20160506: Validacion para no pagar de mas a peticion de I.P. 'JJMQ 20160506: Validacion para no pagar de mas a peticion de I.P.
abonado = DtPagos.SUM("Importe") abonado = DtPagos.SUM("Importe")
saldo = TxtTotal.Text.Replace(",", "").ToDouble - abonado saldo = TxtTotal.Text.Replace(",", "").ToDouble - abonado
CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString 'CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString
CargaGridContado() CargaGridContado()
UpContado.Update() UpContado.Update()
@@ -4873,7 +4874,7 @@ Partial Class PV
Dim ObjVenta As New ClsVentas Dim ObjVenta As New ClsVentas
If ObjVenta.GetVentas(UsuarioActual.CveEmpresa, "Ing", "-1", -1, "-1", CveCliente, -1, -1, -1, "-1", "-1", "-1", CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then If ObjVenta.GetVentas(UsuarioActual.CveEmpresa, "Ing", "-1", -1, "-1", CveCliente, -1, -1, -1, "-1", "-1", "-1", CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then
DdlFacturas.DataSource = ObjVenta.DtResultados DdlFacturas.DataSource = ObjVenta.DtResultados
DdlFacturas.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlFacturas.Items.Insert(0, New ListItem("Sin Factura", "-1"))
End If End If
ObjVenta.Dispose() ObjVenta.Dispose()
DdlFacturas.DataBind() DdlFacturas.DataBind()
@@ -4888,7 +4889,7 @@ Partial Class PV
End If End If
DdlFacturas.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlFacturas.Items.Insert(0, New ListItem("Sin Factura", "-1"))
DdlTipoUso.DataSource = GlobalDTAcumTiposUso.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}") DdlTipoUso.DataSource = GlobalDTAcumTiposUso.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}")
DdlTipoUso.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlTipoUso.Items.Insert(0, New ListItem("Seleccione", "-1"))
@@ -4920,7 +4921,7 @@ Partial Class PV
DtPUFacturas.Rows.Clear() DtPUFacturas.Rows.Clear()
If DdlFacturas.SelectedValue.ToEntero > 0 Then If DdlFacturas.SelectedValue.ToEntero > 0 Then
TxtPUFactura.Enabled = False 'TxtPUFactura.Enabled = False
Dim ObjVenta As New ClsVentas Dim ObjVenta As New ClsVentas
If ObjVenta.GetVentaDetalle(DdlFacturas.SelectedValue.ToEntero) Then If ObjVenta.GetVentaDetalle(DdlFacturas.SelectedValue.ToEntero) Then
DdlPSAjuste.DataSource = ObjVenta.DtResultados DdlPSAjuste.DataSource = ObjVenta.DtResultados
@@ -4929,8 +4930,8 @@ Partial Class PV
End If End If
ObjVenta.Dispose() ObjVenta.Dispose()
Else Else
TxtPUFactura.Enabled = True 'TxtPUFactura.Enabled = True
TxtPUFactura.Text = "" 'TxtPUFactura.Text = ""
DdlPSAjuste.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa) DdlPSAjuste.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa)
End If End If
DdlPSAjuste.DataBind() DdlPSAjuste.DataBind()
@@ -4944,11 +4945,13 @@ Partial Class PV
LimpiaAjuste() LimpiaAjuste()
If TmpDTAjustes IsNot Nothing AndAlso TmpDTAjustes.FiltraParametros($"ConsecutivoVenta = {ConsecutivoVenta}").Rows.Count > 0 Then If TmpDTAjustes IsNot Nothing AndAlso TmpDTAjustes.FiltraParametros($"ConsecutivoVenta = {ConsecutivoVenta}").Rows.Count > 0 Then
ModalidadAjuste = "U" ModalidadAjuste = "U"
TxtPrecio.Attributes.Add("onKeyUp", $"CambiaAjuste(this,{TxtPUFactura.ClientID});")
ChkAjuste.Checked = True ChkAjuste.Checked = True
DivAjuste.Visible = True DivAjuste.Visible = True
CargaAjusteDetalle() CargaAjusteDetalle()
Else Else
ModalidadAjuste = "A" ModalidadAjuste = "A"
TxtPrecio.Attributes.Add("onKeyUp ", "Recalcula();")
End If End If
End Sub End Sub
@@ -4958,6 +4961,7 @@ Partial Class PV
TxtCodEnsamble.Text = "" TxtCodEnsamble.Text = ""
DdlTipoUso.SelectedIndex = -1 DdlTipoUso.SelectedIndex = -1
TxtCodLinea.Text = "" TxtCodLinea.Text = ""
TxtPUFactura.Text = ""
TxtFechaAjuste.Text = Now.ToShortDateString TxtFechaAjuste.Text = Now.ToShortDateString
CEEFechaAjuste.EndDate = Now CEEFechaAjuste.EndDate = Now
TxtCodInspeccion.Text = "" TxtCodInspeccion.Text = ""
@@ -5023,11 +5027,11 @@ Partial Class PV
End If End If
Contador += 1 Contador += 1
Next Next
TxtPUFactura.Text = PUFactura.FormatoNumero(2) 'TxtPUFactura.Text = PUFactura.FormatoNumero(2)
End If End If
If Not DdlPSAjuste.SelectedValue.ToEntero > 0 AndAlso DdlFacturas.SelectedValue.ToEntero > 0 Then If Not DdlPSAjuste.SelectedValue.ToEntero > 0 AndAlso DdlFacturas.SelectedValue.ToEntero > 0 Then
TxtPUFactura.Text = "" 'TxtPUFactura.Text = ""
End If End If
CalculaPorcentajeAjuste() CalculaPorcentajeAjuste()
@@ -5115,6 +5119,9 @@ Partial Class PV
'End Function 'End Function
Private Sub GuardaAjuste() Private Sub GuardaAjuste()
TxtPUFactura.Text = TxtPrecio.Text
UpAjuste.Update()
Dim CargoAnterior As Double = 0 Dim CargoAnterior As Double = 0
Dim CargoActual As Double = 0 Dim CargoActual As Double = 0
If ModalidadAjuste = "A" Then If ModalidadAjuste = "A" Then
@@ -5222,9 +5229,12 @@ Partial Class PV
DivAjuste.Attributes.Add("class", "col-md-6") DivAjuste.Attributes.Add("class", "col-md-6")
DivDatosVenta.Attributes.Remove("class") DivDatosVenta.Attributes.Remove("class")
DivDatosVenta.Attributes.Add("class", "col-md-6") DivDatosVenta.Attributes.Add("class", "col-md-6")
TxtPrecio.Attributes.Add("onKeyUp", $"CambiaAjuste(this,{TxtPUFactura.ClientID});")
TxtPUFactura.Text = TxtPrecio.Text
Else Else
DivAjuste.Visible = False DivAjuste.Visible = False
TxtCantidad.Enabled = True TxtCantidad.Enabled = True
TxtPrecio.Attributes.Add("onKeyUp ", "Recalcula();")
DivModalVenta.Attributes.Remove("class") DivModalVenta.Attributes.Remove("class")
DivModalVenta.Attributes.Add("class", "modal-dialog") DivModalVenta.Attributes.Add("class", "modal-dialog")
DivAjuste.Attributes.Remove("class") DivAjuste.Attributes.Remove("class")

View File

@@ -140,7 +140,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="row"> <div class="row DIVTIPO">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group form-md-line-input input-iconright" id="DivDdlTipo" runat="server" visible="false"> <div class="form-group form-md-line-input input-iconright" id="DivDdlTipo" runat="server" visible="false">
<asp:DropDownList ID="DdlTipoPSDes" CssClass="form-control input-sm select2me " Width="70%" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="ClasificacionDetalle" DataValueField="CveClasificacionDetalle" Enabled="true"> <asp:DropDownList ID="DdlTipoPSDes" CssClass="form-control input-sm select2me " Width="70%" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="ClasificacionDetalle" DataValueField="CveClasificacionDetalle" Enabled="true">
@@ -201,7 +201,7 @@
</asp:DropDownList> </asp:DropDownList>
<label for="<%= DdlUsoClasificacion.ClientID.ToString()%>">Uso Clasificación:</label> <label for="<%= DdlUsoClasificacion.ClientID.ToString()%>">Uso Clasificación:</label>
</div> </div>
<div class="form-group form-md-line-input input-iconright" id="DivDdlClasificacion" runat="server"> <div class="form-group form-md-line-input input-iconright DIVCLASIFICACIONCONTABLE" id="DivDdlClasificacion" runat="server">
<asp:DropDownList ID="DdlClasificacion" CssClass="form-control input-sm select2me" OnSelectedIndexChanged="DdlClasificacion_SelectedIndexChanged" AutoPostBack="true" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Width="350px"> <asp:DropDownList ID="DdlClasificacion" CssClass="form-control input-sm select2me" OnSelectedIndexChanged="DdlClasificacion_SelectedIndexChanged" AutoPostBack="true" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Width="350px">
</asp:DropDownList> </asp:DropDownList>
<label for="<%= DdlClasificacion.ClientID.ToString()%>">Clasificación Contable:</label> <label for="<%= DdlClasificacion.ClientID.ToString()%>">Clasificación Contable:</label>
@@ -210,13 +210,7 @@
<i></i> <i></i>
</div> </div>
<div class="form-group form-md-line-input input-iconright" id="DivClasificacionDetalle" runat="server" visible="false">
<asp:DropDownList ID="DropDownList1" CssClass="form-control input-sm select2me " Width="70%" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="ClasificacionDetalle" DataValueField="CveClasificacionDetalle" Enabled="true">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<label for="<%= DdlTipoPSDes.ClientID.ToString()%>">Tipo:</label>
<asp:LinkButton ID="LinkButton1" runat="server" OnClick="BtnAddClasificacionDetalle_Click" CssClass="btn btn-default btn-circle btn-xs " data-toggle="tooltip" title="Registrar un Tipo"><i class='fa fa-plus' style="color:black" ></i></asp:LinkButton>
</div>
<div class="form-group form-md-line-input input-iconright" id="DvTamanio" runat="server" visible="false"> <div class="form-group form-md-line-input input-iconright" id="DvTamanio" runat="server" visible="false">
<asp:DropDownList ID="DdlTamanio" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="Tamaño" DataValueField="CveTamaño" Width="350px"> <asp:DropDownList ID="DdlTamanio" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="Tamaño" DataValueField="CveTamaño" Width="350px">
@@ -554,10 +548,12 @@
<label class="col-md-4">¿Aplica IEPS?</label> <label class="col-md-4">¿Aplica IEPS?</label>
<div class="col-md-1"> <div class="col-md-1">
<asp:CheckBox ID="ChkAplicaIeps" CssClass="" AutoPostBack="true" data-size="small" runat="server" Text=" " /></td> <asp:CheckBox ID="ChkAplicaIeps" CssClass="" AutoPostBack="true" data-size="small" runat="server" Text=" " /></td>
</div> </div>
<label class="col-md-4">¿Graba en IVA?</label> <label class="col-md-4">¿Graba en IVA?</label>
<div class="col-md-1"> <div class="col-md-1">
<asp:CheckBox ID="ChkIepsIVA" CssClass="" Enabled="false" data-size="small" runat="server" Text=" " /></td> <asp:CheckBox ID="ChkIepsIVA" CssClass="" Enabled="false" data-size="small" runat="server" Text=" " /></td>
</div> </div>
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
@@ -721,6 +717,7 @@
<div class="col-md-6" style="text-align: left"> <div class="col-md-6" style="text-align: left">
<input id="ChkSeleccionarTodos" type="checkbox" title="Seleccionar Todos" onclick="SeleccionarTodosChkGvSucursa()" />Seleccionar Todos <input id="ChkSeleccionarTodos" type="checkbox" title="Seleccionar Todos" onclick="SeleccionarTodosChkGvSucursa()" />Seleccionar Todos
</div> </div>
<div class="col-md-6" style="text-align: right"> <div class="col-md-6" style="text-align: right">
<label>Aplicar precio minimo</label> <label>Aplicar precio minimo</label>
@@ -938,8 +935,47 @@
</div> </div>
</div> </div>
</div> </div>
<br />
<div class="row">
<asp:UpdatePanel ID="UpSeccionAlmacen" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="col-md-12" id="DivSeccionAlmacen" runat="server" visible="false">
<div class="portlet xspadding light bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-briefcase font-green"></i>
<span class="caption-subject bold uppercase">Secciones de Almacen</span>
</div>
<div class="actions">
<div class="btn-group">
<asp:LinkButton ID="LnkSeccionAlmacenAdd" OnClick="LnkSeccionAlmacenAdd_Click" runat="server" data-toggle="tooltip" data-placement="right" title="Agregar Seccion de Almacen" CssClass="btn btn-circle btn-default" Text="<i class='fa fa-plus'></i> Agregar"></asp:LinkButton>
</div>
</div>
</div>
<div class="portlet-body">
<asp:GridView ID="GvSeccionAlmacen" runat="server" AutoGenerateColumns="False" DataKeyNames="CvePSAlmacenSeccion,CvePS,CveAlmacen,CveAlmacenSeccion" EmptyDataText="No se encontraron Productos/Servicios Adicionales" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" GridLines="None">
<Columns>
<asp:BoundField DataField="Almacen" HeaderText="Almacen" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="AlmacenSeccion" HeaderText="Sección Almacen" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Editar">
<ItemTemplate>
<asp:LinkButton ID="LnkEditarSeccionAlmacen" runat="server" AlternateText="Editar" CausesValidation="False" OnClick="LnkEditarSeccionAlmacen_Click" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Eliminar">
<ItemTemplate>
<asp:LinkButton ID="LnkRemoveSeccionAlmacen" runat="server" AlternateText="Eliminar" CausesValidation="False" OnClick="LnkRemoveSeccionAlmacen_Click" CssClass="btn btn-circle btn-xs red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div> </div>
</div>
</ContentTemplate> </ContentTemplate>
</ajax:TabPanel> </ajax:TabPanel>
@@ -1011,25 +1047,29 @@
<th width="20%"> <th width="20%">
<asp:LinkButton ID="LbCaracteristica1" runat="server" CausesValidation="false" Text="" CommandArgument="Caracteristica1;1" OnClick="LbOrden_Click"> <asp:LinkButton ID="LbCaracteristica1" runat="server" CausesValidation="false" Text="" CommandArgument="Caracteristica1;1" OnClick="LbOrden_Click">
Característica Característica
<asp:Literal ID="ImgCaracteristica1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
<asp:Literal ID="ImgCaracteristica1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton> </asp:LinkButton>
</th> </th>
<th width="20%"> <th width="20%">
<asp:LinkButton ID="LbOpcion1" runat="server" CausesValidation="false" Text="" CommandArgument="Opcion1;1" OnClick="LbOrden_Click"> <asp:LinkButton ID="LbOpcion1" runat="server" CausesValidation="false" Text="" CommandArgument="Opcion1;1" OnClick="LbOrden_Click">
Opción Opción
<asp:Literal ID="ImgOpcion1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
<asp:Literal ID="ImgOpcion1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton> </asp:LinkButton>
</th> </th>
<th width="20%"> <th width="20%">
<asp:LinkButton ID="LbFechaIng1" runat="server" CausesValidation="false" Text="" CommandArgument="FechaIng1;1" OnClick="LbOrden_Click"> <asp:LinkButton ID="LbFechaIng1" runat="server" CausesValidation="false" Text="" CommandArgument="FechaIng1;1" OnClick="LbOrden_Click">
Fecha Ing. Fecha Ing.
<asp:Literal ID="ImgFechaIng1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
<asp:Literal ID="ImgFechaIng1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton> </asp:LinkButton>
</th> </th>
<th width="20%"> <th width="20%">
<asp:LinkButton ID="LbUsuario1" runat="server" CausesValidation="false" Text="" CommandArgument="Usuario1;1" OnClick="LbOrden_Click"> <asp:LinkButton ID="LbUsuario1" runat="server" CausesValidation="false" Text="" CommandArgument="Usuario1;1" OnClick="LbOrden_Click">
Usuario Usuario
<asp:Literal ID="ImgUsuario1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
<asp:Literal ID="ImgUsuario1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton> </asp:LinkButton>
</th> </th>
@@ -1670,6 +1710,7 @@
<div> <div>
<p> <p>
El producto seleccionado en el recuadro de arriba sera unificado en el producto actual El producto seleccionado en el recuadro de arriba sera unificado en el producto actual
<b> <b>
<asp:Literal Text="" ID="LtProductoUnificar" runat="server" /></b> <asp:Literal Text="" ID="LtProductoUnificar" runat="server" /></b>
</p> </p>
@@ -1901,6 +1942,7 @@
<div id="DivTipoCla" runat="server"> <div id="DivTipoCla" runat="server">
<p> <p>
Tipo de Clasificación: Tipo de Clasificación:
</p> </p>
<asp:RadioButtonList ID="RblTipoClasificación" runat="server" CssClass="rbl" RepeatDirection="Vertical" RepeatLayout="Table"> <asp:RadioButtonList ID="RblTipoClasificación" runat="server" CssClass="rbl" RepeatDirection="Vertical" RepeatLayout="Table">
<asp:ListItem Text="Todas" Value="-1" Selected="True"></asp:ListItem> <asp:ListItem Text="Todas" Value="-1" Selected="True"></asp:ListItem>
@@ -1910,6 +1952,7 @@
</asp:RadioButtonList> </asp:RadioButtonList>
<asp:LinkButton ID="BtnTipoCla" OnClick="BtnTipoCla_Click" runat="server" CssClass="btn btn-success" Text="Aceptar" /> <asp:LinkButton ID="BtnTipoCla" OnClick="BtnTipoCla_Click" runat="server" CssClass="btn btn-success" Text="Aceptar" />
&nbsp; &nbsp;
</div> </div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
@@ -1978,6 +2021,46 @@
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
</div> </div>
<%-- MODAL PS ADICIONALES --%>
<div id="DivAddSeccionAlmacen" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpModalSeccionAlmacen" class="modal-content rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" id="h4SccionAlmacen">Sección Almacen</h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlAlmacen" Width="50%" runat="server" CssClass="form-control select2me" DataValueField="CveAlmacen" DataTextField="Almacen"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvAlmacen" runat="server" ControlToValidate="DdlAlmacen" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Almacen''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpModalSeccionAlmacen"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VceAlmacen" runat="server" HighlightCssClass="vco" TargetControlID="RfvAlmacen"></ajax:ValidatorCalloutExtender>
<label for="<%= DdlAlmacen.ClientID.ToString()%>">Almacen:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlSeccionAlmacen" Width="50%" runat="server" CssClass="form-control select2me" DataValueField="CveSeccion" DataTextField="Seccion"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvSeccionAlmacen" runat="server" ControlToValidate="DdlSeccionAlmacen" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Sección Almacen''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpModalSeccionAlmacen"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VceSeccionAlmacen" runat="server" HighlightCssClass="vco" TargetControlID="RfvSeccionAlmacen"></ajax:ValidatorCalloutExtender>
<label for="<%= DdlSeccionAlmacen.ClientID.ToString()%>">Sección Almacen:</label>
</div>
<div class="modal-footer" style="display: block">
<asp:UpdatePanel ID="UpFooterSeccionAlmacen" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnAddSeccionAlmacen" runat="server" OnClick="BtnAddSeccionAlmacen_Click" CssClass="btn btn-success" Text="Agregar" ValidationGroup="GrpModalSeccionAlmacen"></asp:Button>
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<asp:Literal ID="LtlScripts" runat="server"></asp:Literal>
<%-- FIN MODAL PS ADICIONALES --%> <%-- FIN MODAL PS ADICIONALES --%>
</asp:Content> </asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server"> <asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
@@ -2154,7 +2237,9 @@
var initcarusel2 = initcarusel; var initcarusel2 = initcarusel;
function ADSReady() {
setPoscicion();
}
//TERMINA: ECOMMERCE //TERMINA: ECOMMERCE

View File

@@ -97,6 +97,15 @@ Partial Class ProductosyServicios
ViewState("CvePSAdicional") = value ViewState("CvePSAdicional") = value
End Set End Set
End Property End Property
Public Property DtSeccionAlmacen() As DataTable
Get
Return CType(ViewState("DtSeccionAlmacen"), DataTable)
End Get
Set(value As DataTable)
ViewState("DtSeccionAlmacen") = value
End Set
End Property
#End Region #End Region
@@ -137,6 +146,7 @@ Partial Class ProductosyServicios
CargarAlias() CargarAlias()
CargaExistencias() CargaExistencias()
CargaGvSeccionAlmacen()
Else Else
'Configuración de Modalidad Insert 'Configuración de Modalidad Insert
RegistraScript("$('#C_Tab_TabPaquetes_tab').css('display' , 'none')") RegistraScript("$('#C_Tab_TabPaquetes_tab').css('display' , 'none')")
@@ -216,7 +226,7 @@ Partial Class ProductosyServicios
'DivDatos.Attributes("class") = "col-md-12" 'DivDatos.Attributes("class") = "col-md-12"
DivDdlTipo.Visible = True DivDdlTipo.Visible = True
DdlTipoPSDes.Attributes.Add("onChange", "CreaDescripcionPS();") 'DdlTipoPSDes.Attributes.Add("onChange", "CreaDescripcionPS();")
End If End If
@@ -235,16 +245,11 @@ Partial Class ProductosyServicios
If ddlMetodos.SelectedValue.ToEntero = 5 And Not UsuarioActual.TienePermisoProceso(255) Then If ddlMetodos.SelectedValue.ToEntero = 5 And Not UsuarioActual.TienePermisoProceso(255) Then
ddlMetodos.Enabled = False ddlMetodos.Enabled = False
End If End If
Dim posiciontipo As String = If(UsuarioActual.Empresa.Funcionalidad(558).ToString = "1", "$('.DIVCLASIFICACIONCONTABLE').after( $('.DIVTIPO') );", "")
LtlScripts.Text = $"<script>function setPoscicion(){{{posiciontipo}}}</script>"
If Not CvePS > 0 Then MuestraPanel(True) If Not CvePS > 0 Then MuestraPanel(True)
End If End If
End Sub End Sub
@@ -280,6 +285,11 @@ Partial Class ProductosyServicios
CargaDdlFraccionArancelaria() CargaDdlFraccionArancelaria()
CveSATPS = -1 CveSATPS = -1
CargaCombosSeccionAlmacen()
DivSeccionAlmacen.Visible = UsuarioActual.Empresa.Funcionalidad(563).ToString = "1"
CreaDtSeccionAlmacen()
If UsuarioActual.Empresa.UsaContabilidad Then If UsuarioActual.Empresa.UsaContabilidad Then
CargaCuentasContables() CargaCuentasContables()
If Not (Request("CvePS") IsNot Nothing AndAlso IsNumeric(Request("CvePS")) AndAlso Request("CvePS").ToEntero > 0) Then DivUsoClasificacion.Visible = True If Not (Request("CvePS") IsNot Nothing AndAlso IsNumeric(Request("CvePS")) AndAlso Request("CvePS").ToEntero > 0) Then DivUsoClasificacion.Visible = True
@@ -2467,4 +2477,71 @@ Partial Class ProductosyServicios
DdlCategoriaToxicidad.SelectedValue = "000" DdlCategoriaToxicidad.SelectedValue = "000"
End If End If
End Sub End Sub
#Region "SECCION ALMACEN"
Private Sub CreaDtSeccionAlmacen()
DtSeccionAlmacen = New DataTable
DtSeccionAlmacen.Columns.Add("CvePSAlmacenSeccion", GetType(Integer))
DtSeccionAlmacen.Columns.Add("CvePS", GetType(Integer))
DtSeccionAlmacen.Columns.Add("CveAlmacen", GetType(Integer))
DtSeccionAlmacen.Columns.Add("Almacen", GetType(String))
DtSeccionAlmacen.Columns.Add("CveAlmacenSeccion", GetType(Integer))
DtSeccionAlmacen.Columns.Add("AlmacenSeccion", GetType(String))
End Sub
Private Sub CargaGvSeccionAlmacen()
Dim ObjInv As New ClsInventarios
If ObjInv.GetProductosServiciosAlmacenSeccion(CvePS, -1, -1) Then
GvSeccionAlmacen.DataSource = ObjInv.DtResultados
DtSeccionAlmacen = ObjInv.DtResultados
End If
ObjInv.Dispose()
GvSeccionAlmacen.DataBind()
UpSeccionAlmacen.Update()
End Sub
Private Sub CargaCombosSeccionAlmacen()
DdlAlmacen.DataSource = GlobalDTAlmacen(UsuarioActual.CveAlmacen)
DdlAlmacen.Items.Add(New ListItem("Seleccione", "-1"))
DdlAlmacen.DataBind()
DdlSeccionAlmacen.DataSource = GlobalDTSeccionAlmacen(UsuarioActual.CveAlmacen)
DdlSeccionAlmacen.Items.Add(New ListItem("Seleccione", "-1"))
DdlSeccionAlmacen.DataBind()
End Sub
Protected Sub LnkSeccionAlmacenAdd_Click(sender As Object, e As EventArgs)
DdlAlmacen.SelectedIndex = 0
DdlSeccionAlmacen.SelectedIndex = 0
RegistraScript("$('#DivAddSeccionAlmacen').modal();")
UpModalSeccionAlmacen.Update()
End Sub
Protected Sub LnkEditarSeccionAlmacen_Click(sender As Object, e As EventArgs)
Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
DdlAlmacen.SelectedValueExist(gvRow.DataKey("CvAlmacen"))
DdlSeccionAlmacen.SelectedValueExist(gvRow.DataKey("CveAlmacenSeccion"))
RegistraScript("$('#DivAddSeccionAlmacen').modal();")
UpModalSeccionAlmacen.Update()
End Sub
Protected Sub LnkRemoveSeccionAlmacen_Click(sender As Object, e As EventArgs)
Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
If gvRow.DataKey("CvePSAlmacenSeccion").ToEntero > 0 Then
DtSeccionAlmacen.Rows(gvRow.RowIndex)("CvePS") = -1
Else
DtSeccionAlmacen.Rows(gvRow.RowIndex.ToEntero).Delete()
End If
DtSeccionAlmacen.AcceptChanges()
GvSeccionAlmacen.DataSource = DtSeccionAlmacen
GvSeccionAlmacen.DataBind()
End Sub
Protected Sub BtnAddSeccionAlmacen_Click(sender As Object, e As EventArgs)
End Sub
#End Region
End Class End Class

View File

@@ -132,7 +132,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
CancelacionFecha = xmlAcuse.SelectSingleNode("Acuse").Attributes["Fecha"].Value.ToDate(); CancelacionFecha = xmlAcuse.SelectSingleNode("Acuse").Attributes["Fecha"].Value.ToDate();
} }
var FueCancelado = CancelarDocumento(CveVenta, CveEstatus, CveCliente, Folio, uuid, CancelacionAcuse, CancelacionFecha, TipoDocto, total.ToDouble(), UsuarioActual.Empresa.CvePAC).Mensaje; // var FueCancelado = CancelarDocumento(CveVenta, CveEstatus, CveCliente, Folio, uuid, CancelacionAcuse, CancelacionFecha, TipoDocto, total.ToDouble(), UsuarioActual.Empresa.CvePAC).Mensaje;
sb.AppendFormat("{0} <br/>", FueCancelado); sb.AppendFormat("{0} <br/>", FueCancelado);
if (CveEstatus.Contiene(4, 5) && EsRefacturacion) if (CveEstatus.Contiene(4, 5) && EsRefacturacion)
@@ -170,12 +170,13 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
return sb.ToString(); return sb.ToString();
} }
private Modelos.Factura.MCancelacionVentaMensaje CancelarDocumento(int CveVenta, int CveEstatus, int CveCliente, string Folio, string FolioFiscal, string CancelacionAcuse, DateTime CancelacionFecha, string TipoComprobante, double Total, int CvePACCancelacion)
{ //private Modelos.Factura.MCancelacionVentaMensaje CancelarDocumento(int CveVenta, int CveEstatus, int CveCliente, string Folio, string FolioFiscal, string CancelacionAcuse, DateTime CancelacionFecha, string TipoComprobante, double Total, int CvePACCancelacion)
var factura = new Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa); //{
var retorno = factura.EjecutarCancelacionPendiente(CveEstatus, CancelacionFecha, CancelacionAcuse); // //var factura = new Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa);
return retorno; // //var retorno = factura.EjecutarCancelacionPendiente(CveEstatus, CancelacionFecha, CancelacionAcuse);
} // return retorno;
//}
private int GenerarPolizaAC(ClsContPAQi ObjAC, int CveVenta, string Folio, int CveCliente, string TipoComprobante, DateTime Fecha, bool CancelacionIngreso = false) private int GenerarPolizaAC(ClsContPAQi ObjAC, int CveVenta, string Folio, int CveCliente, string TipoComprobante, DateTime Fecha, bool CancelacionIngreso = false)
{ {

View File

@@ -15679,7 +15679,6 @@ Partial Class Ventas
Row("Descuento") = Math.Round(Row("Descuento").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales) Row("Descuento") = Math.Round(Row("Descuento").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales)
Row("ImporteIEPS") = Math.Round(Row("ImporteIEPS").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales) Row("ImporteIEPS") = Math.Round(Row("ImporteIEPS").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales)
Row("ImporteIVA") = Math.Round(Row("ImporteIVA").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales) Row("ImporteIVA") = Math.Round(Row("ImporteIVA").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales)
Row("ImporteIEPS") = Math.Round(Row("ImporteIEPS").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales)
Row("ImporteRetIVA") = Math.Round(Row("ImporteRetIVA").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales) Row("ImporteRetIVA") = Math.Round(Row("ImporteRetIVA").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales)
Row("ImporteRetISR") = Math.Round(Row("ImporteRetISR").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales) Row("ImporteRetISR") = Math.Round(Row("ImporteRetISR").ToString.ToDecimal * TxtTipoCambio.Text.Trim.ToDecimal, NumeroDecimales)
Next Next