This commit is contained in:
rrene
2020-11-24 20:21:36 -07:00
17 changed files with 1309 additions and 533 deletions

View File

@@ -952,6 +952,31 @@ Public Class ClsAcumuladores
Return Retorno Return Retorno
End Function End Function
Public Function GetMovimientosDistribuidorResumen(CveCliente As Integer, CveEmpresa As Integer, Optional FechaI As Date = MinFecha, Optional FechaF As Date = MaxFecha) As Boolean
Dim Retorno As Boolean = False
'Data = New DataTable
SqlDataAdapter("PA_Acum_DistribuidorMovtosResumenGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveCliente", SqlDbType.Int).Value = CveCliente
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@FechaI", SqlDbType.Date).Value = FechaI
.Add("@FechaF", SqlDbType.Date).Value = FechaF
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As SqlException
OnError("Ocurrió un error al consultar los movimientos. ", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function DistribuidorActualizarFacturados(CveMovto As Integer, CveEmpresa As Integer, Tipo As Integer, CveVenta As Integer) As Boolean Public Function DistribuidorActualizarFacturados(CveMovto As Integer, CveEmpresa As Integer, Tipo As Integer, CveVenta As Integer) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
'Data = New DataTable 'Data = New DataTable

View File

@@ -440,7 +440,7 @@ Public Class ClsCompras
Optional AF_Medida As Integer = -1, Optional AF_TipoMantenimiento As Integer = -1, Optional Referencia As String = "", Optional OtrosGastos As Decimal = 0, Optional AF_Medida As Integer = -1, Optional AF_TipoMantenimiento As Integer = -1, Optional Referencia As String = "", Optional OtrosGastos As Decimal = 0,
Optional RetIVA As Double = 0, Optional RetISR As Double = 0, Optional IEPSPS As Double = 0, Optional IEPSPSIVA As Double = 0, Optional RetIVA As Double = 0, Optional RetISR As Double = 0, Optional IEPSPS As Double = 0, Optional IEPSPSIVA As Double = 0,
Optional IVAPorcentaje As Double = 0, Optional RetIVAPorcentaje As Double = 0, Optional RetISRPorcentaje As Double = 0, Optional IEPSPSPorcentaje As Double = 0, Optional IEPSPSIVAPorcentaje As Double = 0, Optional IVAPorcentaje As Double = 0, Optional RetIVAPorcentaje As Double = 0, Optional RetISRPorcentaje As Double = 0, Optional IEPSPSPorcentaje As Double = 0, Optional IEPSPSIVAPorcentaje As Double = 0,
Optional NoDeducible As Boolean = False, Optional CveContratoDetalle As Integer = -1) As Boolean Optional NoDeducible As Boolean = False, Optional CveContratoDetalle As Integer = -1, Optional CveCultivoCuadroDetalle As Integer = -1) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
@@ -484,6 +484,7 @@ Public Class ClsCompras
.Add("@IEPSPSIVAPorcentaje", SqlDbType.Float).Value = IEPSPSIVAPorcentaje .Add("@IEPSPSIVAPorcentaje", SqlDbType.Float).Value = IEPSPSIVAPorcentaje
.Add("@NoDeducible", SqlDbType.Bit).Value = NoDeducible .Add("@NoDeducible", SqlDbType.Bit).Value = NoDeducible
.Add("@CveContratoDetalle", SqlDbType.Int).Value = CveContratoDetalle .Add("@CveContratoDetalle", SqlDbType.Int).Value = CveContratoDetalle
.Add("@CveCultivoCuadroDetalle", SqlDbType.Int).Value = CveCultivoCuadroDetalle
End With End With
Try Try
@@ -535,6 +536,7 @@ Public Class ClsCompras
.Add("@IEPSPSPorcentaje", SqlDbType.Float).Value = IEPSPSPorcentaje .Add("@IEPSPSPorcentaje", SqlDbType.Float).Value = IEPSPSPorcentaje
.Add("@IEPSPSIVAPorcentaje", SqlDbType.Float).Value = IEPSPSIVAPorcentaje .Add("@IEPSPSIVAPorcentaje", SqlDbType.Float).Value = IEPSPSIVAPorcentaje
.Add("@NoDeducible", SqlDbType.Bit).Value = NoDeducible .Add("@NoDeducible", SqlDbType.Bit).Value = NoDeducible
End With End With
Try Try

View File

@@ -146,6 +146,7 @@ Public Class ClsContratos
Public Property Ubicacion As String Public Property Ubicacion As String
Public Property Responsable As String Public Property Responsable As String
Public Property Lugar As String Public Property Lugar As String
Public Property LimiteDeGasto As Double
Public Property CveSubProyecto As Integer Public Property CveSubProyecto As Integer
Public Property SubProyectoContrato As String Public Property SubProyectoContrato As String
Public Property CveProyecto As Integer Public Property CveProyecto As Integer
@@ -292,6 +293,7 @@ Public Class ClsContratos
Me.CveVendedor = Data.Rows(0)("CveVendedor").ToString.ToEntero Me.CveVendedor = Data.Rows(0)("CveVendedor").ToString.ToEntero
Me.ImporteTotal = Data.Rows(0)("ImporteTotal").ToString.ToDecimal Me.ImporteTotal = Data.Rows(0)("ImporteTotal").ToString.ToDecimal
Me.Lugar = Data.Rows(0)("Lugar").ToString Me.Lugar = Data.Rows(0)("Lugar").ToString
Me.LimiteDeGasto = Data.Rows(0)("LimiteDeGasto").ToString.ToDouble
Observaciones = Data.Rows(0)("Observaciones").ToString Observaciones = Data.Rows(0)("Observaciones").ToString
CveDireccionEnvio = Data.Rows(0)("CveDireccionEnvio").ToString.ToEntero CveDireccionEnvio = Data.Rows(0)("CveDireccionEnvio").ToString.ToEntero
@@ -543,7 +545,7 @@ Public Class ClsContratos
Geom As String, CveContratoPadre As Integer, CveUsuario As Integer, CveEmpresa As Integer, EsPresupuestal As Boolean, Minimo As Double, Maximo As Double, Importe As Double, CveMoneda As Integer, ModalidadDetalle As Integer, Geom As String, CveContratoPadre As Integer, CveUsuario As Integer, CveEmpresa As Integer, EsPresupuestal As Boolean, Minimo As Double, Maximo As Double, Importe As Double, CveMoneda As Integer, ModalidadDetalle As Integer,
Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = 1, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1, Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = 1, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1,
Optional TipoGarantia As Integer = -1, Optional Folio As Integer = -1, Optional FechaVenc As Date = Nothing, Optional EstatusFianza As Integer = -1, Optional CvePeriodo As Integer = -1, Optional CveContratoPlantilla As Integer = -1, Optional CveCuentaEquipo As Integer = -1, Optional TipoGarantia As Integer = -1, Optional Folio As Integer = -1, Optional FechaVenc As Date = Nothing, Optional EstatusFianza As Integer = -1, Optional CvePeriodo As Integer = -1, Optional CveContratoPlantilla As Integer = -1, Optional CveCuentaEquipo As Integer = -1,
Optional CveVendedor As Integer = -1, Optional Observaciones As String = "", Optional CveDireccionEnvio As Integer = -1, Optional AplicaImpuestosLocales As Boolean = False, Optional CorreoNotificacionPedDev As String = "", Optional Lugar As String = "") As Integer Optional CveVendedor As Integer = -1, Optional Observaciones As String = "", Optional CveDireccionEnvio As Integer = -1, Optional AplicaImpuestosLocales As Boolean = False, Optional CorreoNotificacionPedDev As String = "", Optional Lugar As String = "", Optional LimiteDeGasto As Double = 0) As Integer
Dim Retorno As Integer = -1 Dim Retorno As Integer = -1
DataAdapter("PA_Con_ContratosObraAdd") DataAdapter("PA_Con_ContratosObraAdd")
@@ -595,6 +597,7 @@ Public Class ClsContratos
.Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = If(AplicaImpuestosLocales, 1, 0) .Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = If(AplicaImpuestosLocales, 1, 0)
.Add("@CorreoNotificacionPedDev", SqlDbType.VarChar).Value = CorreoNotificacionPedDev .Add("@CorreoNotificacionPedDev", SqlDbType.VarChar).Value = CorreoNotificacionPedDev
.Add("@Lugar", SqlDbType.VarChar).Value = Lugar .Add("@Lugar", SqlDbType.VarChar).Value = Lugar
.Add("@LimiteDeGasto", SqlDbType.Money).Value = LimiteDeGasto
.Add("@CveContrato", SqlDbType.Int).Direction = ParameterDirection.Output .Add("@CveContrato", SqlDbType.Int).Direction = ParameterDirection.Output
@@ -621,7 +624,7 @@ Public Class ClsContratos
CveContratoPadre As Integer, CveUsuario As Integer, CveEmpresa As Integer, EsPresupuestal As Boolean, Minimo As Double, Maximo As Double, Importe As Double, CveMoneda As Integer, ModalidadDetalle As Integer, CveContratoPadre As Integer, CveUsuario As Integer, CveEmpresa As Integer, EsPresupuestal As Boolean, Minimo As Double, Maximo As Double, Importe As Double, CveMoneda As Integer, ModalidadDetalle As Integer,
Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = 1.0, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1, Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = 1.0, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1,
Optional TipoGarantia As Integer = -1, Optional Folio As Integer = -1, Optional FechaVenc As Date = Nothing, Optional EstatusFianza As Integer = -1, Optional CveContratoPlantilla As Integer = -1, Optional CveCuentaEquipo As Integer = -1, Optional TipoGarantia As Integer = -1, Optional Folio As Integer = -1, Optional FechaVenc As Date = Nothing, Optional EstatusFianza As Integer = -1, Optional CveContratoPlantilla As Integer = -1, Optional CveCuentaEquipo As Integer = -1,
Optional CveVendedor As Integer = -1, Optional Observaciones As String = "", Optional CveDireccionEnvio As Integer = -1, Optional AplicaImpuestosLocales As Boolean = False, Optional CorreoNotificacionPedDev As String = "", Optional Lugar As String = "") As Boolean Optional CveVendedor As Integer = -1, Optional Observaciones As String = "", Optional CveDireccionEnvio As Integer = -1, Optional AplicaImpuestosLocales As Boolean = False, Optional CorreoNotificacionPedDev As String = "", Optional Lugar As String = "", Optional LimiteDeGasto As Double = 0) As Boolean
Dim Retorno = False Dim Retorno = False
DataAdapter("PA_Con_ContratosObraUpdate") DataAdapter("PA_Con_ContratosObraUpdate")
@@ -672,6 +675,7 @@ Public Class ClsContratos
.Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = If(AplicaImpuestosLocales, 1, 0) .Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = If(AplicaImpuestosLocales, 1, 0)
.Add("@CorreoNotificacionPedDev", SqlDbType.VarChar).Value = CorreoNotificacionPedDev .Add("@CorreoNotificacionPedDev", SqlDbType.VarChar).Value = CorreoNotificacionPedDev
.Add("@Lugar", SqlDbType.VarChar).Value = Lugar .Add("@Lugar", SqlDbType.VarChar).Value = Lugar
.Add("@LimiteDeGasto", SqlDbType.Money).Value = LimiteDeGasto
End With End With
@@ -824,6 +828,74 @@ Public Class ClsContratos
#End Region #End Region
#Region "GASTOS OBRA"
Public Function GetContratosObragGastosVeiculos(CveContrato As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno = False
DataAdapter("PA_Con_ContratosObraGastosVeiculosGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveContrato", SqlDbType.Int).Value = CveContrato
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al consultar los gastos de veiculos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function GetContratosObragGastosCompras(CveContrato As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno = False
DataAdapter("PA_Con_ContratosObraGastosComprasGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveContrato", SqlDbType.Int).Value = CveContrato
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al consultar los gastos de compra.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function GetContratosObragGastosNomina(CveContrato As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno = False
DataAdapter("PA_Con_ContratosObraGastosNominaGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveContrato", SqlDbType.Int).Value = CveContrato
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al consultar los gastos de nomina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
#End Region
#Region "C I C L O C O M E R C I A L" #Region "C I C L O C O M E R C I A L"
Public Function CicloComercialAdd(CveContrato As Integer, CveCotizacion As Integer, CveCliente As Integer, FueFacturado As Boolean, CveFactura As Integer, Estatus As Integer, CveEmpresa As Integer, FechaVenc As Date) As Boolean Public Function CicloComercialAdd(CveContrato As Integer, CveCotizacion As Integer, CveCliente As Integer, FueFacturado As Boolean, CveFactura As Integer, Estatus As Integer, CveEmpresa As Integer, FechaVenc As Date) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False

View File

@@ -3356,6 +3356,38 @@ Public Class ClsGenerales
#End Region #End Region
#Region "CULTIVOS"
Public Function GetCultivosCuadro(CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Agro_CultivosCuadroGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError($"Ocurrió un error al obtener los datos de cultivo.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
#End Region
#Region " IDisposable Support " #Region " IDisposable Support "
' 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

View File

@@ -3488,6 +3488,7 @@ Public Class ClsPaginas
End Set End Set
End Property End Property
Property GlobalDTAcumGarantiasMesesTipoUso(CveEmpresa As Integer, CveMarca As Integer) As DataTable Property GlobalDTAcumGarantiasMesesTipoUso(CveEmpresa As Integer, CveMarca As Integer) As DataTable
Get Get
Dim AppNombre As String = String.Format("GlobalDTAcumGarantiasMesesTipoUso-{0}", CveEmpresa) Dim AppNombre As String = String.Format("GlobalDTAcumGarantiasMesesTipoUso-{0}", CveEmpresa)
@@ -3516,6 +3517,41 @@ Public Class ClsPaginas
End Property End Property
Property GlobalDTCultivosCuadro(CveEmpresa As Integer) As DataTable
Get
Dim AppNombre As String = String.Format("GlobalDTCultivosCuadro-{0}", CveEmpresa)
If Application(AppNombre) Is Nothing Then
Dim ObjGenerales As New ClsGenerales()
If ObjGenerales.GetCultivosCuadro(CveEmpresa) Then Application(AppNombre) = ObjGenerales.DtResultados
ObjGenerales.Dispose()
End If
'If CveMarca <> -1 Then
' Dim Str As StringBuilder = New StringBuilder()
' If CveMarca <> -1 Then Str.AppendFormat("CveMarca = {0}", CveMarca)
' Dim Dv As New DataView(DirectCast(Application(AppNombre), DataTable), Str.ToString, "", DataViewRowState.CurrentRows)
' GlobalDTCultivosCuadro = Dv.ToTable
' Dv.Dispose()
'Else
'End If
GlobalDTCultivosCuadro = DirectCast(Application(AppNombre), DataTable)
End Get
Set(value As DataTable)
Dim AppNombre As String = String.Format("GlobalDTCultivosCuadro-{0}", CveEmpresa)
Application(AppNombre) = value
End Set
End Property
Property GlobalDTAcumTamaños() As DataTable Property GlobalDTAcumTamaños() As DataTable
Get Get
GlobalDTAcumTamaños = DirectCast(Application("GlobalDTAcumTamaños"), DataTable) GlobalDTAcumTamaños = DirectCast(Application("GlobalDTAcumTamaños"), DataTable)

View File

@@ -2680,6 +2680,7 @@ Partial Class Compras_Compras
TmpDT.Columns.Add("CveContrato", GetType(Integer)) TmpDT.Columns.Add("CveContrato", GetType(Integer))
TmpDT.Columns.Add("DifPSSat", GetType(Integer)) TmpDT.Columns.Add("DifPSSat", GetType(Integer))
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer)) TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
GvPS.DataSource = TmpDT GvPS.DataSource = TmpDT
@@ -5056,7 +5057,7 @@ Partial Class Compras_Compras
RetIVA:=Row("RetIVA").ToString.ToDouble, RetISR:=Row("RetISR").ToString.ToDouble, IEPSPS:=Row("IEPSPS").ToString.ToDouble, IEPSPSIVA:=Row("IEPSPSIVA").ToString.ToDouble, RetIVA:=Row("RetIVA").ToString.ToDouble, RetISR:=Row("RetISR").ToString.ToDouble, IEPSPS:=Row("IEPSPS").ToString.ToDouble, IEPSPSIVA:=Row("IEPSPSIVA").ToString.ToDouble,
IVAPorcentaje:=Row("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=Row("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=Row("RetISRPorcentaje").ToString.ToDouble, IVAPorcentaje:=Row("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=Row("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=Row("RetISRPorcentaje").ToString.ToDouble,
IEPSPSPorcentaje:=Row("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=Row("IEPSPSIVAPorcentaje").ToString.ToDouble, NoDeducible:=If((Row("NoDeducible").ToString().ToUpper().Contiene("TRUE", "1")) AndAlso EsNoDeducible, True, False), IEPSPSPorcentaje:=Row("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=Row("IEPSPSIVAPorcentaje").ToString.ToDouble, NoDeducible:=If((Row("NoDeducible").ToString().ToUpper().Contiene("TRUE", "1")) AndAlso EsNoDeducible, True, False),
CveContratoDetalle:=Row("CveContratoDetalle").ToString.ToEntero) Then CveContratoDetalle:=Row("CveContratoDetalle").ToString.ToEntero, CveCultivoCuadroDetalle:=Row("CveCultivoCuadroDetalle").ToString.ToEntero) Then
ErrorDetalles = True ErrorDetalles = True
Exit For Exit For
@@ -11264,6 +11265,7 @@ Partial Class Compras_Compras
TmpDT.Columns.Add("DifPSSat", GetType(Integer)) TmpDT.Columns.Add("DifPSSat", GetType(Integer))
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer)) TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
TmpDTOriginal = New DataTable TmpDTOriginal = New DataTable
TmpDTOriginal.Columns.Add("Consec", GetType(Integer)) TmpDTOriginal.Columns.Add("Consec", GetType(Integer))
@@ -11371,6 +11373,7 @@ Partial Class Compras_Compras
TmpDTOriginal.Columns.Add("Importe", GetType(Double)) TmpDTOriginal.Columns.Add("Importe", GetType(Double))
TmpDTOriginal.Columns.Add("CveContratoDetalle", GetType(Double)) TmpDTOriginal.Columns.Add("CveContratoDetalle", GetType(Double))
TmpDTOriginal.Columns.Add("CveCultivoCuadroDetalle", GetType(Double))
End Sub End Sub
@@ -15653,6 +15656,7 @@ Partial Class Compras_Compras
Dim CveTipoGasto As Integer = dr("CveTipoGastoObra").ToString.ToEntero Dim CveTipoGasto As Integer = dr("CveTipoGastoObra").ToString.ToEntero
Dim TipoGasto As String = dr("TipoGasto").ToString Dim TipoGasto As String = dr("TipoGasto").ToString
Dim CveContratoDetalle As Integer = dr("CveContratoDetalle").ToString.ToEntero Dim CveContratoDetalle As Integer = dr("CveContratoDetalle").ToString.ToEntero
Dim CveCultivoCuadroDetalle As Integer = dr("CveCultivoCuadroDetalle").ToString.ToEntero
'[IPP] PROVISIONAL PARA TIPO GASTO '[IPP] PROVISIONAL PARA TIPO GASTO
If GlobalDTTiposGastos(UsuarioActual.CveEmpresa) IsNot Nothing AndAlso GlobalDTTiposGastos(UsuarioActual.CveEmpresa).Rows.Count = 1 Then If GlobalDTTiposGastos(UsuarioActual.CveEmpresa) IsNot Nothing AndAlso GlobalDTTiposGastos(UsuarioActual.CveEmpresa).Rows.Count = 1 Then
@@ -15664,7 +15668,7 @@ Partial Class Compras_Compras
End If End If
AddPS(Cantidad, CveUM, UM, CveClasificacion, Clasificacion, CvePS, PS, CveTipoPS, CveSubProyectoContrato, SubProyecto, Proyecto, CveProyecto, Obs, PU, Total, IVA, RetIVA, RetISR, IEPSPS, IEPSPSIVA, Descuento, CveOrdenCompraDetalle, False, AddPS(Cantidad, CveUM, UM, CveClasificacion, Clasificacion, CvePS, PS, CveTipoPS, CveSubProyectoContrato, SubProyecto, Proyecto, CveProyecto, Obs, PU, Total, IVA, RetIVA, RetISR, IEPSPS, IEPSPSIVA, Descuento, CveOrdenCompraDetalle, False,
CantidadF:=CantidadF, EntregaDirecta:=EntregaDirecta, CveSATPS:=CveSATPS, CveTipoGasto:=CveTipoGasto, TipoGasto:=TipoGasto, CveContratoDetalle:=CveContratoDetalle) CantidadF:=CantidadF, EntregaDirecta:=EntregaDirecta, CveSATPS:=CveSATPS, CveTipoGasto:=CveTipoGasto, TipoGasto:=TipoGasto, CveContratoDetalle:=CveContratoDetalle, CveCultivoCuadroDetalle:=CveCultivoCuadroDetalle)
'CARGA PE 'CARGA PE
Index = TmpDT.Rows.Count - 1 Index = TmpDT.Rows.Count - 1
@@ -17903,7 +17907,7 @@ Partial Class Compras_Compras
Obs As String, PU As Double, Total As Double, IVA As Double, RetIVA As Double, RetISR As Double, IEPSPS As Double, IEPSPSIVA As Double, Descuento As Double, Optional CveOrdenCompraDetalle As Integer = -1, Optional TCalculaTotales As Boolean = True, Obs As String, PU As Double, Total As Double, IVA As Double, RetIVA As Double, RetISR As Double, IEPSPS As Double, IEPSPSIVA As Double, Descuento As Double, Optional CveOrdenCompraDetalle As Integer = -1, Optional TCalculaTotales As Boolean = True,
Optional PSCodigo As String = "-", Optional PSDescripcion As String = "-", Optional CantidadF As Double = -1, Optional EntregaDirecta As Integer = -1, Optional OtrosGastos As Double = 0, Optional PSCodigo As String = "-", Optional PSDescripcion As String = "-", Optional CantidadF As Double = -1, Optional EntregaDirecta As Integer = -1, Optional OtrosGastos As Double = 0,
Optional CveSATPS As Integer = -1, Optional CargaXml As Boolean = False, Optional CveTipoGasto As Integer = -1, Optional TipoGasto As String = "", Optional PorcentajeIVA As Double = 0, Optional CveSATPS As Integer = -1, Optional CargaXml As Boolean = False, Optional CveTipoGasto As Integer = -1, Optional TipoGasto As String = "", Optional PorcentajeIVA As Double = 0,
Optional PorcentajeIEPS As Double = 0, Optional PorcentajeRetIVA As Double = 0, Optional PorcentajeRetISR As Double = 0, Optional NoDeducible As Boolean = False, Optional CveContratoDetalle As Integer = -1) As Integer Optional PorcentajeIEPS As Double = 0, Optional PorcentajeRetIVA As Double = 0, Optional PorcentajeRetISR As Double = 0, Optional NoDeducible As Boolean = False, Optional CveContratoDetalle As Integer = -1, Optional CveCultivoCuadroDetalle As Integer = -1) As Integer
Dim Row As DataRow = Nothing Dim Row As DataRow = Nothing
@@ -18026,6 +18030,8 @@ Partial Class Compras_Compras
Row("CveContratoDetalle") = CveContratoDetalle Row("CveContratoDetalle") = CveContratoDetalle
Row("CveCultivoCuadroDetalle") = CveCultivoCuadroDetalle
If UsuarioActual.Empresa.UsaAC Then If UsuarioActual.Empresa.UsaAC Then
Row("CveProgramaOperativo") = DdlACGeneral1.SelectedValue.ToEntero Row("CveProgramaOperativo") = DdlACGeneral1.SelectedValue.ToEntero
Row("CveUnidadAdministrativa") = DdlACGeneral2.SelectedValue.ToEntero Row("CveUnidadAdministrativa") = DdlACGeneral2.SelectedValue.ToEntero

View File

@@ -17,7 +17,6 @@ Partial Class Contratos_CatContratosTipos
Dim Objeto As New ClsContratos Dim Objeto As New ClsContratos
If Objeto.GetContratosTipos(UsuarioActual.CveEmpresa) Then If Objeto.GetContratosTipos(UsuarioActual.CveEmpresa) Then
GvContratos.DataSource = Objeto.DtResultados GvContratos.DataSource = Objeto.DtResultados
GlobalDTContratosTipos(UsuarioActual.CveEmpresa) = Objeto.DtResultados
End If End If
GvContratos.DataBind() GvContratos.DataBind()
Objeto.Dispose() Objeto.Dispose()
@@ -40,9 +39,10 @@ Partial Class Contratos_CatContratosTipos
UpDatos.Update() UpDatos.Update()
End If End If
Objeto.Dispose() Objeto.Dispose()
RecargaGlobal()
Alert("El Contrato se agregó correctamente.", TipoMensaje.MsgInformacion) Alert("El Contrato se agregó correctamente.", TipoMensaje.MsgInformacion)
End Sub End Sub
@@ -72,6 +72,7 @@ Partial Class Contratos_CatContratosTipos
End If End If
GvContratos.EditIndex = -1 GvContratos.EditIndex = -1
CargaDatos() CargaDatos()
RecargaGlobal()
UpDatos.Update() UpDatos.Update()
End Sub End Sub
@@ -92,6 +93,10 @@ Partial Class Contratos_CatContratosTipos
Objeto.Dispose() Objeto.Dispose()
GvContratos.EditIndex = -1 GvContratos.EditIndex = -1
CargaDatos() CargaDatos()
RecargaGlobal()
End Sub
Private Sub RecargaGlobal()
GlobalDTContratosTipos(-1) = Nothing
End Sub End Sub

View File

@@ -97,6 +97,11 @@
<asp:LinkButton ID="LnkModalAddPresupuestoControl" Visible="false" runat="server" OnClick="LnkModalAddPresupuestoControl_Click"> <i class="fa fa-file-excel-o" style="font-weight:bold;"></i>Agregar Presupuesto Interno</asp:LinkButton> <asp:LinkButton ID="LnkModalAddPresupuestoControl" Visible="false" runat="server" OnClick="LnkModalAddPresupuestoControl_Click"> <i class="fa fa-file-excel-o" style="font-weight:bold;"></i>Agregar Presupuesto Interno</asp:LinkButton>
</li> </li>
<li>
<asp:LinkButton ID="LnkModalAddGastos" Visible="false" runat="server" OnClick="LnkModalAddGastos_Click"> <i class="fa fa-file-excel-o" style="font-weight:bold;"></i>Agregar Gasto</asp:LinkButton>
</li>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
@@ -570,10 +575,20 @@
<asp:TextBox ID="txtMaximo" runat="server" MaxLength="12" Width="150px"></asp:TextBox><ajax:FilteredTextBoxExtender ID="FilteredTextBoxExtender4" runat="server" TargetControlID="txtMaximo" FilterType="Custom, Numbers" ValidChars=",." BehaviorID="_content_SoloNumeros" /> <asp:TextBox ID="txtMaximo" runat="server" MaxLength="12" Width="150px"></asp:TextBox><ajax:FilteredTextBoxExtender ID="FilteredTextBoxExtender4" runat="server" TargetControlID="txtMaximo" FilterType="Custom, Numbers" ValidChars=",." BehaviorID="_content_SoloNumeros" />
</div> </div>
</div>--%> </div>--%>
<div class="row" runat="server">
<label class="col-md-2 truncate ">% Limite de Gastos:</label>
<div class="col-md-10">
<asp:TextBox ID="TxtLimiteGastos" runat="server" MaxLength="5" Width="150px"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FilteredTextBoxExtender3" runat="server" TargetControlID="TxtLimiteGastos" FilterType="Custom, Numbers" ValidChars=",." BehaviorID="_content_SoloNumeros" />
</div>
</div>
<div class="row" id="DvTotal" runat="server"> <div class="row" id="DvTotal" runat="server">
<label class="col-md-2 truncate ">Total:</label> <label class="col-md-2 truncate ">Total:</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtTotal" runat="server" MaxLength="12" Width="150px"></asp:TextBox><ajax:FilteredTextBoxExtender ID="FilteredTextBoxExtender8" runat="server" TargetControlID="TxtTotal" FilterType="Custom, Numbers" ValidChars=",." BehaviorID="_content_SoloNumeros" /> <asp:TextBox ID="TxtTotal" runat="server" MaxLength="12" Width="150px"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FilteredTextBoxExtender8" runat="server" TargetControlID="TxtTotal" FilterType="Custom, Numbers" ValidChars=",." BehaviorID="_content_SoloNumeros" />
</div> </div>
</div> </div>
@@ -1648,6 +1663,156 @@
</ajax:TabPanel> </ajax:TabPanel>
<ajax:TabPanel ID="TabGastos" HeaderText="Gastos" runat="server" Visible="false">
<ContentTemplate>
<asp:UpdatePanel runat="server" ID="UpGastos" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-12">
<table>
<tr>
<td>Contrato:</td><td><asp:Label runat="server" ID="LblGastoContrato" Font-Size="18px" Font-Bold="True" ></asp:Label></td>
<td>Gastos:</td><td><asp:Label runat="server" ID="LblGastoGastos" Font-Size="18px" Font-Bold="True" ></asp:Label></td>
<td>Nomina:</td><td><asp:Label runat="server" ID="LblGastoNomina" Font-Size="18px" Font-Bold="True" ></asp:Label></td>
<td>Indirectos:</td><td><asp:Label runat="server" ID="LblGastoIndirectos" Font-Size="18px" Font-Bold="True" ></asp:Label></td>
<td>%Gasto:</td><td><asp:Label runat="server" ID="LblGastoPorcentaje" Font-Size="18px" Font-Bold="True" ></asp:Label></td>
</tr>
</table>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="tools">
<a href="javascript;" data-idchekbox="C_chkexpand" class=" collapse" data-original-title="" title=""></a><span class="hidden">
<input type="checkbox" checked="checked"></span>
</div>
<div class="caption uppercase" style="position: relative;"><i class="fa fa-list"></i>vehículos</div>
</div>
<div class="portlet-body rowpadding">
<asp:GridView ID="GvGastosVeiculos" ClientIDMode="Static" ShowHeader="true" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron gastos de veiculos"
DataKeyNames="CveContratoGasto,ORDEN"
CssClass="table table-striped table-hover Widthall" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Descripcion" DataField="Observaciones" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Fecha" DataField="Fecha" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
<asp:BoundField HeaderText="Importe" DataField="Importe" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:N2}" />
<asp:BoundField HeaderText="Usuario" DataField="Nombre" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField ItemStyle-Width="25%" HeaderText="Acciones" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:LinkButton ID="LnkEliminarGasto" runat="server" OnClick="LnkEliminarGasto_Click" 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="¿Desea eliminar el gasto?" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</div>
<div class="col-md-6">
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="tools">
<a href="javascript;" data-idchekbox="C_chkexpand" class=" collapse" data-original-title="" title=""></a><span class="hidden">
<input type="checkbox" checked="checked"></span>
</div>
<div class="caption uppercase" style="position: relative;"><i class="fa fa-list"></i>Compras</div>
</div>
<div class="portlet-body rowpadding">
<asp:GridView ID="GvGastosCompras" ClientIDMode="Static" ShowHeader="true" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron gastos de compras."
DataKeyNames="CveContrato,ORDEN,CveCompra,Clasificacion,CveClasificacion"
CssClass="table table-striped table-hover Widthall" GridLines="None">
<Columns>
<asp:HyperLinkField HeaderText="Serie-Folio" DataTextField="SerieFolio" Target="_blank" ItemStyle-Width="30%" ItemStyle-CssClass="Texto Izquierda" DataNavigateUrlFields="CveCompra" DataNavigateUrlFormatString="/Compras/Compras.aspx?CveCompra={0}" />
<asp:BoundField HeaderText="Fecha" DataField="Fecha" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
<asp:BoundField HeaderText="Importe" DataField="Importe" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:N2}" />
<asp:BoundField HeaderText="Producto" DataField="PS" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Descripción" DataField="Observaciones" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left" />
</Columns>
</asp:GridView>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="tools">
<a href="javascript;" data-idchekbox="C_chkexpand" class=" collapse" data-original-title="" title=""></a><span class="hidden">
<input type="checkbox" checked="checked"></span>
</div>
<div class="caption uppercase" style="position: relative;"><i class="fa fa-list"></i>Nomina</div>
</div>
<div class="portlet-body rowpadding">
<asp:GridView ID="GvGastosNomina" ClientIDMode="Static" ShowHeader="true" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron datos de nomina."
DataKeyNames="CveContrato,CvePersonal,NombreCompleto"
CssClass="table table-striped table-hover Widthall" GridLines="None">
<Columns>
<asp:HyperLinkField HeaderText="Nombre" DataTextField="NombreCompleto" Target="_blank" ItemStyle-CssClass="Texto Izquierda" DataNavigateUrlFields="CvePersonal" DataNavigateUrlFormatString="/RH/Personal.aspx?CvePersonal={0}" />
<asp:BoundField HeaderText="Puesto" DataField="Puesto" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Importe" DataField="Importe" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:N2}" />
</Columns>
</asp:GridView>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabAvanveDocumento" runat="server" HeaderText="Avance Por Documento"> <ajax:TabPanel ID="TabAvanveDocumento" runat="server" HeaderText="Avance Por Documento">
<ContentTemplate> <ContentTemplate>
@@ -2039,7 +2204,11 @@
</ContentTemplate> </ContentTemplate>
</ajax:TabPanel> </ajax:TabPanel>
<ajax:TabPanel ID="TabAddendum" HeaderText="Addendum" runat="server" Visible="false">
<%-- <ajax:TabPanel ID="TabAddendum" HeaderText="Addendum" runat="server" Visible="false">
<ContentTemplate> <ContentTemplate>
<asp:GridView runat="server" ID="GvAddendum" GridLines="None" ShowHeader="true" AutoGenerateColumns="false" DataKeyNames="CveContrato" CssClass="table table-striped table-hover Widthall"> <asp:GridView runat="server" ID="GvAddendum" GridLines="None" ShowHeader="true" AutoGenerateColumns="false" DataKeyNames="CveContrato" CssClass="table table-striped table-hover Widthall">
<Columns> <Columns>
@@ -2050,7 +2219,7 @@
</Columns> </Columns>
</asp:GridView> </asp:GridView>
</ContentTemplate> </ContentTemplate>
</ajax:TabPanel> </ajax:TabPanel>--%>
<ajax:TabPanel ID="TabSistema" runat="server" HeaderText="Sistema"> <ajax:TabPanel ID="TabSistema" runat="server" HeaderText="Sistema">
<ContentTemplate> <ContentTemplate>
@@ -2761,9 +2930,6 @@
<%--Modal Carga Presupuesto--%> <%--Modal Carga Presupuesto--%>
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="UpModalCargaPresupuesto"> <asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="UpModalCargaPresupuesto">
<ContentTemplate> <ContentTemplate>
@@ -2808,6 +2974,49 @@
<%--MODAL CONTROL PRESUPUESTOS AGREGAR--%>
<div id="ModalControlAddGastoVeiculo" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalGastoVeiculos" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="Literal6" runat="server">Agregar gasto de veiculo</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtGastosDescripcion" runat="server" Width="100%" CssClass="form-control" MaxLength="150"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTxtGastosDescripcion" runat="server" ControlToValidate="TxtGastosDescripcion" 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="GrpModalGastos"></asp:RequiredFieldValidator>
<label for="<%= TxtGastosDescripcion.ClientID.ToString()%>">Descripción: </label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtGastosImporte" runat="server" CssClass="form-control" ></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FilTxtGastosImporte" runat="server" TargetControlID="TxtGastosImporte" FilterType="Custom, Numbers" ValidChars="." />
<asp:RequiredFieldValidator ID="RFVTxtGastosImporte" runat="server" ControlToValidate="TxtGastosImporte" 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="GrpModalGastos"> </asp:RequiredFieldValidator>
<label for="<%= TxtGastosImporte.ClientID.ToString()%>">Importe:</label>
</div>
</div>
<div class="modal-footer">
<asp:Button Text="Guardar" runat="server" ID="BtnModalAgreagrGasto" Width="100px" OnClick="BtnModalAgreagrGasto_Click" ValidationGroup="GrpModalGastos" class="btn btn-success" />
<button id="Button7" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<iframe id="my_iframe" style="display: none;"></iframe> <iframe id="my_iframe" style="display: none;"></iframe>

View File

@@ -409,6 +409,14 @@ Partial Class Contratos_ContratoObra
TabEstadoCuenta.Visible = True TabEstadoCuenta.Visible = True
If TxtLimiteGastos.Text.ToDecimal > 0 Then
TabGastos.Visible = True
LnkModalAddGastos.Visible = True
CargaGastos()
End If
Else Else
'Configuración de Modalidad Insert 'Configuración de Modalidad Insert
LblFechaCaptura.Text = Now.ToShortDateString() LblFechaCaptura.Text = Now.ToShortDateString()
@@ -745,8 +753,10 @@ Partial Class Contratos_ContratoObra
TxtPorIVA.Text = ObjContratos.PorIVA.ToString TxtPorIVA.Text = ObjContratos.PorIVA.ToString
TxtLimiteGastos.Text = ObjContratos.LimiteDeGasto.ToString
TxtTotal.Text = ObjContratos.Importe.FormatoNumero TxtTotal.Text = ObjContratos.Importe.FormatoNumero
DdlEstatus.SelectedValueExist(ObjContratos.CveContratosEstatus.ToString) DdlEstatus.SelectedValueExist(ObjContratos.CveContratosEstatus.ToString)
CargarFianzas() CargarFianzas()
@@ -819,14 +829,14 @@ Partial Class Contratos_ContratoObra
ObjContratos.Dispose() ObjContratos.Dispose()
End Sub End Sub
Private Sub CargaContratoAddendum() Private Sub CargaContratoAddendum()
Dim ObjContratos As New ClsContratos 'Dim ObjContratos As New ClsContratos
If ObjContratos.GetContratosAddendum(CveContrato) Then 'If ObjContratos.GetContratosAddendum(CveContrato) Then
If ObjContratos.DtResultados.Rows.Count > 0 Then ' If ObjContratos.DtResultados.Rows.Count > 0 Then
TabAddendum.Visible = True ' TabAddendum.Visible = True
GvAddendum.DataSource = ObjContratos.DtResultados ' GvAddendum.DataSource = ObjContratos.DtResultados
GvAddendum.DataBind() ' GvAddendum.DataBind()
End If ' End If
End If 'End If
End Sub End Sub
Private Sub CargaPresupuesto() Private Sub CargaPresupuesto()
Dim ObjContratos As New ClsContratos Dim ObjContratos As New ClsContratos
@@ -856,7 +866,7 @@ Partial Class Contratos_ContratoObra
LbTotalGeneral.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=2").SUM("Total").FormatoNumero() LbTotalGeneral.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=2").SUM("Total").FormatoNumero()
LbTotalGeneralInsumos.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=1").SUM("Total").FormatoNumero() LbTotalGeneralInsumos.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=1").SUM("Total").FormatoNumero()
LbTotalGeneralInt.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=1").SUM("Total").FormatoNumero() LbTotalGeneralInt.Text = TmpDT.FiltraParametros("CveTipoPresupuesto=1").SUM("Total").FormatoNumero()
LblImporte.Text = "$" & TmpDT.FiltraParametros("CveTipoPresupuesto=2").SUM("Total").FormatoNumero() 'LblImporte.Text = "$" & TmpDT.FiltraParametros("CveTipoPresupuesto=2").SUM("Total").FormatoNumero()
End If End If
End Sub End Sub
@@ -932,7 +942,7 @@ Partial Class Contratos_ContratoObra
TxtTipoCambio.Text.ToDouble, CveSucursalCliente:=DdlSucursalCliente.SelectedValue.ToEntero, CveAlmacenOrigen:=-1, CveAlmacenDestino:=-1, TxtTipoCambio.Text.ToDouble, CveSucursalCliente:=DdlSucursalCliente.SelectedValue.ToEntero, CveAlmacenOrigen:=-1, CveAlmacenDestino:=-1,
PorcentajeComision:=0, TipoGarantia:=-1, Folio:=0, FechaVenc:=Nothing, EstatusFianza:=1, PorcentajeComision:=0, TipoGarantia:=-1, Folio:=0, FechaVenc:=Nothing, EstatusFianza:=1,
CvePeriodo:=-1, CveCuentaEquipo:=-1, CveContratoPlantilla:=-1, CveVendedor:=-1, CvePeriodo:=-1, CveCuentaEquipo:=-1, CveContratoPlantilla:=-1, CveVendedor:=-1,
Observaciones:=TxtObservaciones.Text, CveDireccionEnvio:=-1, AplicaImpuestosLocales:=False, CorreoNotificacionPedDev:=TxtCorreoNotificacion.Text.Trim(), Lugar:=TxtLugar.Text.Trim) Observaciones:=TxtObservaciones.Text, CveDireccionEnvio:=-1, AplicaImpuestosLocales:=False, CorreoNotificacionPedDev:=TxtCorreoNotificacion.Text.Trim(), Lugar:=TxtLugar.Text.Trim, LimiteDeGasto:=TxtLimiteGastos.Text.ToDouble)
TieneError = Not GuardaFianzas(ObjContratos) TieneError = Not GuardaFianzas(ObjContratos)
@@ -995,7 +1005,7 @@ Partial Class Contratos_ContratoObra
CveAlmacenOrigen:=-1, CveAlmacenDestino:=-1, PorcentajeComision:=0, CveAlmacenOrigen:=-1, CveAlmacenDestino:=-1, PorcentajeComision:=0,
TipoGarantia:=-1, Folio:=-1, FechaVenc:=Nothing, EstatusFianza:=-1, CveContratoPlantilla:=-1, TipoGarantia:=-1, Folio:=-1, FechaVenc:=Nothing, EstatusFianza:=-1, CveContratoPlantilla:=-1,
CveCuentaEquipo:=-1, CveVendedor:=-1, Observaciones:=TxtObservaciones.Text, CveDireccionEnvio:=-1, AplicaImpuestosLocales:=False, CveCuentaEquipo:=-1, CveVendedor:=-1, Observaciones:=TxtObservaciones.Text, CveDireccionEnvio:=-1, AplicaImpuestosLocales:=False,
CorreoNotificacionPedDev:=TxtCorreoNotificacion.Text.Trim(), Lugar:=TxtLugar.Text.Trim) Then CorreoNotificacionPedDev:=TxtCorreoNotificacion.Text.Trim(), Lugar:=TxtLugar.Text.Trim, LimiteDeGasto:=TxtLimiteGastos.Text.ToDouble) Then
TieneError = Not GuardaFianzas(ObjContratos) TieneError = Not GuardaFianzas(ObjContratos)
@@ -3055,173 +3065,173 @@ Partial Class Contratos_ContratoObra
Return dataTable Return dataTable
End Function End Function
Private Sub CargarArchivo(Ruta As String, FileName As String, Tipo As String) 'Private Sub CargarArchivo(Ruta As String, FileName As String, Tipo As String)
Dim dt As New DataTable ' Dim dt As New DataTable
dt = ReadExcelFile(Ruta + FileName, True) ' dt = ReadExcelFile(Ruta + FileName, True)
Dim ErrorArchivo = False ' Dim ErrorArchivo = False
'Dim Conexion As Odbc.OdbcConnection = Nothing ' 'Dim Conexion As Odbc.OdbcConnection = Nothing
'Try ' 'Try
' Select Case Tipo ' ' Select Case Tipo
' Case "EXCEL" ' ' Case "EXCEL"
' Conexion = New Odbc.OdbcConnection("Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" + Ruta + FileName + ";") ' ' Conexion = New Odbc.OdbcConnection("Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" + Ruta + FileName + ";")
' Conexion.Open() ' ' Conexion.Open()
' Dim cmd = Conexion.CreateCommand() ' ' Dim cmd = Conexion.CreateCommand()
' cmd.CommandType = CommandType.Text ' ' cmd.CommandType = CommandType.Text
' cmd.CommandText = "SELECT * FROM [Hoja1$]" ' ' cmd.CommandText = "SELECT * FROM [Hoja1$]"
' Dim DataAdapter = New Odbc.OdbcDataAdapter(cmd) ' ' Dim DataAdapter = New Odbc.OdbcDataAdapter(cmd)
' DataAdapter.Fill(dt) ' ' DataAdapter.Fill(dt)
' Case Else ' ' Case Else
' Alert("El archivo no tiene el formato correcto", TipoMensaje.MsgError) ' ' Alert("El archivo no tiene el formato correcto", TipoMensaje.MsgError)
' ' Exit Sub
' ' End Select
' 'Catch ex As Exception
' ' ErrorArchivo = True
' ' OnError("Ocurrio un error al leer el archivo <br/>" & ex.Message, ex)
' 'End Try
' 'Conexion.Close()
' If Not ErrorArchivo AndAlso dt IsNot Nothing Then
' If Not dt.Columns(0).ColumnName = "OC Interna" Then
' Alert("El nombre de la primera columna debe ser 'OC Interna'. Favor de corregirlo", TipoMensaje.MsgError)
' Exit Sub ' Exit Sub
' End Select ' End If
'Catch ex As Exception ' If Not dt.Columns(1).ColumnName = "Cantidad" Then
' ErrorArchivo = True ' Alert("El nombre de la primera columna debe ser 'Cantidad'. Favor de corregirlo", TipoMensaje.MsgError)
' OnError("Ocurrio un error al leer el archivo <br/>" & ex.Message, ex) ' Exit Sub
'End Try ' End If
'Conexion.Close() ' If Not dt.Columns(2).ColumnName = "Clave Interna Cliente" Then
If Not ErrorArchivo AndAlso dt IsNot Nothing Then ' Alert("El nombre de la segunda columna debe ser 'Clave Interna'. Favor de corregirlo", TipoMensaje.MsgError)
If Not dt.Columns(0).ColumnName = "OC Interna" Then ' Exit Sub
Alert("El nombre de la primera columna debe ser 'OC Interna'. Favor de corregirlo", TipoMensaje.MsgError) ' End If
Exit Sub ' If Not dt.Columns(3).ColumnName = "Código" Then
End If ' Alert("El nombre de la tercera columna debe ser 'Código'. Favor de corregirlo", TipoMensaje.MsgError)
If Not dt.Columns(1).ColumnName = "Cantidad" Then ' Exit Sub
Alert("El nombre de la primera columna debe ser 'Cantidad'. Favor de corregirlo", TipoMensaje.MsgError) ' End If
Exit Sub ' If Not dt.Columns(4).ColumnName = "Código Barras" Then
End If ' Alert("El nombre de la cuarta columna debe ser 'Código Barras'. Favor de corregirlo", TipoMensaje.MsgError)
If Not dt.Columns(2).ColumnName = "Clave Interna Cliente" Then ' Exit Sub
Alert("El nombre de la segunda columna debe ser 'Clave Interna'. Favor de corregirlo", TipoMensaje.MsgError) ' End If
Exit Sub ' If Not dt.Columns(5).ColumnName = "Producto/Servicio" Then
End If ' Alert("El nombre de la quinta columna debe ser 'Producto/Servicio'. Favor de corregirlo", TipoMensaje.MsgError)
If Not dt.Columns(3).ColumnName = "Código" Then ' Exit Sub
Alert("El nombre de la tercera columna debe ser 'Código'. Favor de corregirlo", TipoMensaje.MsgError) ' End If
Exit Sub ' If Not dt.Columns(6).ColumnName = "UM" Then
End If ' Alert("El nombre de la sexta columna debe ser 'U.M'. Favor de corregirlo", TipoMensaje.MsgError)
If Not dt.Columns(4).ColumnName = "Código Barras" Then ' Exit Sub
Alert("El nombre de la cuarta columna debe ser 'Código Barras'. Favor de corregirlo", TipoMensaje.MsgError) ' End If
Exit Sub ' If Not dt.Columns(7).ColumnName = "Precio Unitario" Then
End If ' Alert("El nombre de la septima columna debe ser 'Precio Unitario'. Favor de corregirlo", TipoMensaje.MsgError)
If Not dt.Columns(5).ColumnName = "Producto/Servicio" Then ' Exit Sub
Alert("El nombre de la quinta columna debe ser 'Producto/Servicio'. Favor de corregirlo", TipoMensaje.MsgError) ' End If
Exit Sub
End If
If Not dt.Columns(6).ColumnName = "UM" Then
Alert("El nombre de la sexta columna debe ser 'U.M'. Favor de corregirlo", TipoMensaje.MsgError)
Exit Sub
End If
If Not dt.Columns(7).ColumnName = "Precio Unitario" Then
Alert("El nombre de la septima columna debe ser 'Precio Unitario'. Favor de corregirlo", TipoMensaje.MsgError)
Exit Sub
End If
dt.TableName = "Datos" ' dt.TableName = "Datos"
If Not ErrorArchivo Then ' If Not ErrorArchivo Then
NumRow = 1 ' NumRow = 1
Dim RowNoEncontrados As String = String.Empty ' Dim RowNoEncontrados As String = String.Empty
Dim NumAgregados As Integer = 0 ' Dim NumAgregados As Integer = 0
For Each Row As DataRow In dt.Rows ' For Each Row As DataRow In dt.Rows
Dim Cantidad As Integer = Row("Cantidad").ToString.ToEntero ' Dim Cantidad As Integer = Row("Cantidad").ToString.ToEntero
Dim Codigo As String = Row("Código").ToString.Trim.ToUpper ' Dim Codigo As String = Row("Código").ToString.Trim.ToUpper
Dim CodigoBarras As String = Row("Código Barras").ToString.Trim.ToUpper ' Dim CodigoBarras As String = Row("Código Barras").ToString.Trim.ToUpper
Dim UM As String = Row("UM").ToString ' Dim UM As String = Row("UM").ToString
Dim ClaveInterna As String = Row("Clave Interna Cliente").ToString.Trim.ToUpper ' Dim ClaveInterna As String = Row("Clave Interna Cliente").ToString.Trim.ToUpper
Dim OCInterna As String = Row("OC Interna").ToString.Trim.ToUpper ' Dim OCInterna As String = Row("OC Interna").ToString.Trim.ToUpper
Dim ProductoServicio As String = Row("Producto/Servicio").ToString.Trim.ToUpper ' Dim ProductoServicio As String = Row("Producto/Servicio").ToString.Trim.ToUpper
Dim PrecioUnitario As Double = Row("Precio Unitario").ToString.ToDouble ' Dim PrecioUnitario As Double = Row("Precio Unitario").ToString.ToDouble
Dim CvePS As Integer = 0 ' Dim CvePS As Integer = 0
Dim CveUM As Integer = 0 ' GlobalDTPS(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveUnidadMedida", $"CvePS = '{CvePS}'").ToString.ToEntero ' Dim CveUM As Integer = 0 ' GlobalDTPS(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveUnidadMedida", $"CvePS = '{CvePS}'").ToString.ToEntero
Dim CodigoPS As Integer = 0 ' Dim CodigoPS As Integer = 0
Dim Total As Double = (Cantidad * PrecioUnitario) ' Dim Total As Double = (Cantidad * PrecioUnitario)
NumRow = NumRow + 1 ' NumRow = NumRow + 1
If Codigo.Length > 0 Then ' If Codigo.Length > 0 Then
Dim StrArray() As String = GetPS("Codigo", Codigo).Split("|"c) ' Dim StrArray() As String = GetPS("Codigo", Codigo).Split("|"c)
If StrArray.Length > 0 Then ' If StrArray.Length > 0 Then
If CBool(StrArray(0)) = True Then ' If CBool(StrArray(0)) = True Then
CvePS = StrArray(1).ToEntero ' CvePS = StrArray(1).ToEntero
Else ' Else
RowNoEncontrados &= StrArray(1) & "<\BR>" ' RowNoEncontrados &= StrArray(1) & "<\BR>"
End If ' End If
End If ' End If
ElseIf CodigoBarras.Length > 0 Then ' ElseIf CodigoBarras.Length > 0 Then
Dim StrArray() As String = GetPS("CodigoBarras", CodigoBarras).Split("|"c) ' Dim StrArray() As String = GetPS("CodigoBarras", CodigoBarras).Split("|"c)
If StrArray.Length > 0 Then ' If StrArray.Length > 0 Then
If CBool(StrArray(0)) = True Then ' If CBool(StrArray(0)) = True Then
CvePS = StrArray(1).ToEntero ' CvePS = StrArray(1).ToEntero
Else ' Else
RowNoEncontrados &= StrArray(1) & "<\BR>" ' RowNoEncontrados &= StrArray(1) & "<\BR>"
End If ' End If
End If ' End If
ElseIf ProductoServicio.Length > 0 Then ' ElseIf ProductoServicio.Length > 0 Then
Dim StrArray() As String = GetPS("PS", ProductoServicio).Split("|"c) ' Dim StrArray() As String = GetPS("PS", ProductoServicio).Split("|"c)
If StrArray.Length > 0 Then ' If StrArray.Length > 0 Then
If CBool(StrArray(0)) = True Then ' If CBool(StrArray(0)) = True Then
CvePS = StrArray(1).ToEntero ' CvePS = StrArray(1).ToEntero
Else ' Else
RowNoEncontrados &= StrArray(1) & "<\BR>" ' RowNoEncontrados &= StrArray(1) & "<\BR>"
End If ' End If
End If ' End If
Else ' Else
RowNoEncontrados &= "<\BR>&nbsp;&nbsp;&nbsp;&nbsp;- En la fila " & NumRow & " no se especificó código, código de barras ó descripción." ' RowNoEncontrados &= "<\BR>&nbsp;&nbsp;&nbsp;&nbsp;- En la fila " & NumRow & " no se especificó código, código de barras ó descripción."
End If ' End If
CveUM = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveUnidadMedida", "").ToString.ToEntero ' CveUM = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveUnidadMedida", "").ToString.ToEntero
If TmpDT IsNot Nothing AndAlso CvePS > 0 Then ' If TmpDT IsNot Nothing AndAlso CvePS > 0 Then
Dim dr As DataRow = TmpDT.NewRow ' Dim dr As DataRow = TmpDT.NewRow
dr("Cantidad") = Cantidad ' dr("Cantidad") = Cantidad
dr("CantidadContratada") = Cantidad ' dr("CantidadContratada") = Cantidad
dr("CveUM") = CveUM ' dr("CveUM") = CveUM
dr("UM") = UM ' dr("UM") = UM
dr("CveClasificacion") = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveClasificacion", "").ToString.ToEntero ' dr("CveClasificacion") = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveClasificacion", "").ToString.ToEntero
dr("Clasificacion") = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = '{dr("CveClasificacion")}'").ToString ' dr("Clasificacion") = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = '{dr("CveClasificacion")}'").ToString
dr("CvePS") = CvePS ' dr("CvePS") = CvePS
dr("PS") = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=dr("CvePS").ToString.ToEntero).FiltroPrimeroValor("PS", "").ToString ' dr("PS") = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=dr("CvePS").ToString.ToEntero).FiltroPrimeroValor("PS", "").ToString
dr("CodigoPS") = dr("PS") ' dr("CodigoPS") = dr("PS")
dr("PU") = PrecioUnitario ' dr("PU") = PrecioUnitario
dr("Total") = Cantidad * PrecioUnitario ' dr("Total") = Cantidad * PrecioUnitario
dr("CveTipoPresupuesto") = 2 ' dr("CveTipoPresupuesto") = 2
dr("NoIdentificacion") = ClaveInterna ' dr("NoIdentificacion") = ClaveInterna
dr("OCInterna") = OCInterna ' dr("OCInterna") = OCInterna
dr("LimitarCantidad") = 0 ' dr("LimitarCantidad") = 0
If CvePS > 0 Then ' If CvePS > 0 Then
Dim ObjContratos As New ClsContratos ' Dim ObjContratos As New ClsContratos
If ObjContratos.AddContratosDetalle(CveContrato, dr("CvePS").ToString.ToEntero, dr("Cantidad").ToString.ToDouble, dr("PU").ToString.ToDouble, UsuarioActual.CveUsuario, dr("CveTipoPresupuesto").ToString.ToEntero, dr("NoIdentificacion").ToString, dr("LimitarCantidad").ToString.ToEntero = 1, dr("OCInterna").ToString) Then ' If ObjContratos.AddContratosDetalle(CveContrato, dr("CvePS").ToString.ToEntero, dr("Cantidad").ToString.ToDouble, dr("PU").ToString.ToDouble, UsuarioActual.CveUsuario, dr("CveTipoPresupuesto").ToString.ToEntero, dr("NoIdentificacion").ToString, dr("LimitarCantidad").ToString.ToEntero = 1, dr("OCInterna").ToString) Then
Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", dr("Cantidad"), dr("UM"), dr("PS"), dr("PU")) ' Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", dr("Cantidad"), dr("UM"), dr("PS"), dr("PU"))
guardarBitacora(msj) ' guardarBitacora(msj)
dr("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle") ' dr("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle")
TmpDT.Rows.Add(dr) ' TmpDT.Rows.Add(dr)
Dim TotalRow = dr("Total").ToString.ToDouble ' Dim TotalRow = dr("Total").ToString.ToDouble
CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2")) ' CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
LbTotalGeneral.Text = (LbTotalGeneral.Text.ToDouble + TotalRow).ToString.FormatoNumero ' LbTotalGeneral.Text = (LbTotalGeneral.Text.ToDouble + TotalRow).ToString.FormatoNumero
LblImporte.Text = LbTotalGeneral.Text ' LblImporte.Text = LbTotalGeneral.Text
Else ' Else
Alert("Ocurrio un error al agregar el detalle", TipoMensaje.MsgError) ' Alert("Ocurrio un error al agregar el detalle", TipoMensaje.MsgError)
End If ' End If
ObjContratos.Dispose() ' ObjContratos.Dispose()
End If ' End If
End If ' End If
Next ' Next
'Cargo el GridView ' 'Cargo el GridView
Gv.DataSource = TmpDT ' Gv.DataSource = TmpDT
Gv.DataBind() ' Gv.DataBind()
UpGV.Update() ' UpGV.Update()
If RowNoEncontrados.Length > 0 Then ' If RowNoEncontrados.Length > 0 Then
Alert("Los siguientes Productos o Servicios no se encontraron en la Base de Datos.<\BR>" & RowNoEncontrados, TipoMensaje.MsgAdvertencia) ' Alert("Los siguientes Productos o Servicios no se encontraron en la Base de Datos.<\BR>" & RowNoEncontrados, TipoMensaje.MsgAdvertencia)
Else ' Else
Alert("Se Cargaron " & NumRow & " Productos o Servicios correctamente.") ' Alert("Se Cargaron " & NumRow & " Productos o Servicios correctamente.")
End If ' End If
End If ' End If
End If ' End If
End Sub 'End Sub
Private Function GetPS(Opt As String, Valor As String) As String Private Function GetPS(Opt As String, Valor As String) As String
Dim StrReturn As String = String.Empty Dim StrReturn As String = String.Empty
@@ -3241,7 +3251,7 @@ Partial Class Contratos_ContratoObra
Dim file As Archivo = TxtExcel.getfiles().Archivos(0) Dim file As Archivo = TxtExcel.getfiles().Archivos(0)
Dim Directorio As String = AppDomain.CurrentDomain.BaseDirectory & file.patch Dim Directorio As String = AppDomain.CurrentDomain.BaseDirectory & file.patch
Dim Tipo As String = If(file.Extencion.Contiene("xlsx", "xlsx", "xlsm", "xlsb"), "EXCEL", "CSV") Dim Tipo As String = If(file.Extencion.Contiene("xlsx", "xlsx", "xlsm", "xlsb"), "EXCEL", "CSV")
CargarArchivo(Directorio, file.filename, Tipo) ' CargarArchivo(Directorio, file.filename, Tipo)
Else Else
Alert("No existe el archivo. Favor de subir un archivo excel a la plataforma.", TipoMensaje.MsgError) Alert("No existe el archivo. Favor de subir un archivo excel a la plataforma.", TipoMensaje.MsgError)
End If End If
@@ -4398,7 +4408,7 @@ Partial Class Contratos_ContratoObra
DTCargaPresupuesto = CargaPreSupuestoExcel() DTCargaPresupuesto = CargaPreSupuestoExcel()
If DTCargaPresupuesto.Rows.Count > 0 Then If DTCargaPresupuesto.Rows.Count > 0 Then
ProcesaDatosCargaPresupuesto(DTCargaPresupuesto) ' ProcesaDatosCargaPresupuesto(DTCargaPresupuesto)
Else Else
Alert("No se encintraron partidas en el documento", TipoMensaje.MsgAdvertencia) Alert("No se encintraron partidas en el documento", TipoMensaje.MsgAdvertencia)
End If End If
@@ -4452,179 +4462,179 @@ Partial Class Contratos_ContratoObra
End Function End Function
Private Sub ProcesaDatosCargaPresupuesto(DTPresupuesto As DataTable) 'Private Sub ProcesaDatosCargaPresupuesto(DTPresupuesto As DataTable)
Dim DTPS = New DataTable ' Dim DTPS = New DataTable
DTPS.Columns.Add("CveContratoDetalle", GetType(Integer)) ' DTPS.Columns.Add("CveContratoDetalle", GetType(Integer))
DTPS.Columns.Add("Cantidad", GetType(Double)) ' DTPS.Columns.Add("Cantidad", GetType(Double))
DTPS.Columns.Add("CantidadContratada", GetType(Double)) ' DTPS.Columns.Add("CantidadContratada", GetType(Double))
DTPS.Columns.Add("CveUM", GetType(Integer)) ' DTPS.Columns.Add("CveUM", GetType(Integer))
DTPS.Columns.Add("UM", GetType(String)) ' DTPS.Columns.Add("UM", GetType(String))
DTPS.Columns.Add("CveClasificacion", GetType(Integer)) ' DTPS.Columns.Add("CveClasificacion", GetType(Integer))
DTPS.Columns.Add("Clasificacion", GetType(String)) ' DTPS.Columns.Add("Clasificacion", GetType(String))
DTPS.Columns.Add("CvePS", GetType(Integer)) ' DTPS.Columns.Add("CvePS", GetType(Integer))
DTPS.Columns.Add("PS", GetType(String)) ' DTPS.Columns.Add("PS", GetType(String))
DTPS.Columns.Add("CodigoPS", GetType(String)) ' DTPS.Columns.Add("CodigoPS", GetType(String))
DTPS.Columns.Add("PU", GetType(Double)) ' DTPS.Columns.Add("PU", GetType(Double))
DTPS.Columns.Add("Total", GetType(Double)) ' DTPS.Columns.Add("Total", GetType(Double))
DTPS.Columns.Add("CveTipoPresupuesto", GetType(Integer)) ' DTPS.Columns.Add("CveTipoPresupuesto", GetType(Integer))
DTPS.Columns.Add("PermitirAvance", GetType(Integer)) ' DTPS.Columns.Add("PermitirAvance", GetType(Integer))
DTPS.Columns.Add("PermitirEstimacion", GetType(Integer)) ' DTPS.Columns.Add("PermitirEstimacion", GetType(Integer))
DTPS.Columns.Add("UsuarioAvance", GetType(Integer)) ' DTPS.Columns.Add("UsuarioAvance", GetType(Integer))
DTPS.Columns.Add("Cantidad_Original", GetType(Double)) ' DTPS.Columns.Add("Cantidad_Original", GetType(Double))
DTPS.Columns.Add("PU_Original", GetType(Double)) ' DTPS.Columns.Add("PU_Original", GetType(Double))
DTPS.Columns.Add("Total_Original", GetType(Double)) ' DTPS.Columns.Add("Total_Original", GetType(Double))
DTPS.Columns.Add("NoIdentificacion", GetType(String)) ' DTPS.Columns.Add("NoIdentificacion", GetType(String))
DTPS.Columns.Add("LimitarCantidad", GetType(Integer)) ' DTPS.Columns.Add("LimitarCantidad", GetType(Integer))
DTPS.Columns.Add("OCInterna", GetType(String)) ' DTPS.Columns.Add("OCInterna", GetType(String))
DTPS.Columns.Add("Observacion", GetType(String)) ' DTPS.Columns.Add("Observacion", GetType(String))
Dim RowNoEncontrados As String = "" ' Dim RowNoEncontrados As String = ""
For Each DrowPS As DataRow In DTPresupuesto.Rows ' For Each DrowPS As DataRow In DTPresupuesto.Rows
Dim StrArray() As String = GetPS("PS", DrowPS("PS").ToString).Split("|"c) ' Dim StrArray() As String = GetPS("PS", DrowPS("PS").ToString).Split("|"c)
Dim CvePS As Integer ' Dim CvePS As Integer
Dim CveUM As Integer ' Dim CveUM As Integer
If StrArray.Length > 0 Then ' If StrArray.Length > 0 Then
If CBool(StrArray(0)) = True Then ' If CBool(StrArray(0)) = True Then
CvePS = StrArray(1).ToEntero ' CvePS = StrArray(1).ToEntero
Else ' Else
RowNoEncontrados &= StrArray(1) & "<\BR>" ' RowNoEncontrados &= StrArray(1) & "<\BR>"
End If ' End If
End If ' End If
If CvePS > 0 And DrowPS("Cantidad").ToString.ToDouble > 0 Then ' If CvePS > 0 And DrowPS("Cantidad").ToString.ToDouble > 0 Then
CveUM = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveUnidadMedida", "").ToString.ToEntero ' CveUM = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveUnidadMedida", "").ToString.ToEntero
Dim Row As DataRow = DTPS.NewRow() ' Dim Row As DataRow = DTPS.NewRow()
Row("Cantidad") = DrowPS("Cantidad").ToString.ToDouble ' Row("Cantidad") = DrowPS("Cantidad").ToString.ToDouble
Row("CantidadContratada") = DrowPS("Cantidad").ToString.ToDouble ' Row("CantidadContratada") = DrowPS("Cantidad").ToString.ToDouble
Row("CveUM") = CveUM ' Row("CveUM") = CveUM
Row("UM") = "" ' Row("UM") = ""
Row("CveClasificacion") = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveClasificacion", "").ToString.ToEntero ' Row("CveClasificacion") = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimeroValor("CveClasificacion", "").ToString.ToEntero
Row("Clasificacion") = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = '{ Row("CveClasificacion").ToString }'").ToString ' Row("Clasificacion") = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = '{ Row("CveClasificacion").ToString }'").ToString
Row("CvePS") = CvePS ' Row("CvePS") = CvePS
Row("PS") = DrowPS("PS").ToString ' Row("PS") = DrowPS("PS").ToString
Row("CodigoPS") = DrowPS("PS").ToString ' Row("CodigoPS") = DrowPS("PS").ToString
Row("PU") = DrowPS("PU").ToString.ToDouble ' Row("PU") = DrowPS("PU").ToString.ToDouble
Row("Total") = DrowPS("Cantidad").ToString.ToDouble * DrowPS("PU").ToString.ToDouble ' Row("Total") = DrowPS("Cantidad").ToString.ToDouble * DrowPS("PU").ToString.ToDouble
Select Case TipoCargaPresupuesto ' Select Case TipoCargaPresupuesto
Case EnumTipoCargaPresupuesto.Ventas ' Case EnumTipoCargaPresupuesto.Ventas
Row("CveTipoPresupuesto") = 2 ' Row("CveTipoPresupuesto") = 2
Exit Select ' Exit Select
Case EnumTipoCargaPresupuesto.Control ' Case EnumTipoCargaPresupuesto.Control
Row("CveTipoPresupuesto") = 1 ' Row("CveTipoPresupuesto") = 1
Exit Select ' Exit Select
Case Else ' Case Else
Row("CveTipoPresupuesto") = 1 ' Row("CveTipoPresupuesto") = 1
End Select ' End Select
Row("NoIdentificacion") = "" ' Row("NoIdentificacion") = ""
Row("OCInterna") = "" ' Row("OCInterna") = ""
Row("LimitarCantidad") = 0 ' Row("LimitarCantidad") = 0
Row("Observacion") = "" ' Row("Observacion") = ""
DTPS.Rows.Add(Row) ' DTPS.Rows.Add(Row)
End If ' End If
Next ' Next
Dim ErrorProceso = False ' Dim ErrorProceso = False
Dim ObjContratos As New ClsContratos ' Dim ObjContratos As New ClsContratos
Dim TotalRow As Double = 0 ' Dim TotalRow As Double = 0
ObjContratos.IniciaTransacSQL() ' ObjContratos.IniciaTransacSQL()
For Each Row As DataRow In DTPS.Rows ' For Each Row As DataRow In DTPS.Rows
If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Convert.ToBoolean(Row("LimitarCantidad")), Row("OCInterna").ToString, Observacion:=Row("Observacion").ToString) Then ' If ObjContratos.AddContratosDetalle(CveContrato, Row("CvePS").ToString.ToEntero, Row("Cantidad").ToString.ToDouble, Row("PU").ToString.ToDouble, UsuarioActual.CveUsuario, Row("CveTipoPresupuesto").ToString.ToEntero, Row("NoIdentificacion").ToString, Convert.ToBoolean(Row("LimitarCantidad")), Row("OCInterna").ToString, Observacion:=Row("Observacion").ToString) Then
If Autorizado Then ' If Autorizado Then
Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", Row("Cantidad"), Row("UM"), Row("PS"), Row("PU")) ' Dim msj As String = String.Format("Se agregaron {0} {1} del producto {2} con un precio ${3}.", Row("Cantidad"), Row("UM"), Row("PS"), Row("PU"))
guardarBitacora(msj) ' guardarBitacora(msj)
End If ' End If
Dim NrowTmpDT As DataRow = TmpDT.NewRow ' Dim NrowTmpDT As DataRow = TmpDT.NewRow
NrowTmpDT("Cantidad") = Row("Cantidad") ' NrowTmpDT("Cantidad") = Row("Cantidad")
NrowTmpDT("CantidadContratada") = Row("CantidadContratada") ' NrowTmpDT("CantidadContratada") = Row("CantidadContratada")
NrowTmpDT("CveUM") = Row("CveUM") ' NrowTmpDT("CveUM") = Row("CveUM")
NrowTmpDT("UM") = Row("UM") ' NrowTmpDT("UM") = Row("UM")
NrowTmpDT("CveClasificacion") = Row("CveClasificacion") ' NrowTmpDT("CveClasificacion") = Row("CveClasificacion")
NrowTmpDT("Clasificacion") = Row("Clasificacion") ' NrowTmpDT("Clasificacion") = Row("Clasificacion")
NrowTmpDT("CvePS") = Row("CvePS") ' NrowTmpDT("CvePS") = Row("CvePS")
NrowTmpDT("PS") = Row("PS") ' NrowTmpDT("PS") = Row("PS")
NrowTmpDT("CodigoPS") = Row("CodigoPS") ' NrowTmpDT("CodigoPS") = Row("CodigoPS")
NrowTmpDT("PU") = Row("PU") ' NrowTmpDT("PU") = Row("PU")
NrowTmpDT("Total") = Row("Total") ' NrowTmpDT("Total") = Row("Total")
NrowTmpDT("CveTipoPresupuesto") = Row("CveTipoPresupuesto") ' NrowTmpDT("CveTipoPresupuesto") = Row("CveTipoPresupuesto")
NrowTmpDT("NoIdentificacion") = Row("NoIdentificacion") ' NrowTmpDT("NoIdentificacion") = Row("NoIdentificacion")
NrowTmpDT("OCInterna") = Row("OCInterna") ' NrowTmpDT("OCInterna") = Row("OCInterna")
NrowTmpDT("LimitarCantidad") = Row("LimitarCantidad") ' NrowTmpDT("LimitarCantidad") = Row("LimitarCantidad")
NrowTmpDT("Observacion") = Row("Observacion") ' NrowTmpDT("Observacion") = Row("Observacion")
NrowTmpDT("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle") ' NrowTmpDT("CveContratoDetalle") = ObjContratos.DtResultados.Rows(0)("CveContratoDetalle")
TmpDT.Rows.Add(NrowTmpDT) ' TmpDT.Rows.Add(NrowTmpDT)
TmpDT.AcceptChanges() ' TmpDT.AcceptChanges()
TotalRow = TotalRow + NrowTmpDT("Total").ToString.ToDouble ' TotalRow = TotalRow + NrowTmpDT("Total").ToString.ToDouble
Else ' Else
ErrorProceso = True ' ErrorProceso = True
Exit For ' Exit For
End If ' End If
Next ' Next
If ErrorProceso Then ' If ErrorProceso Then
ObjContratos.RollBack() ' ObjContratos.RollBack()
Alert("Se presento un error al cargar el presupuesto.", TipoMensaje.MsgError) ' Alert("Se presento un error al cargar el presupuesto.", TipoMensaje.MsgError)
Else ' Else
ObjContratos.Commit() ' ObjContratos.Commit()
Alert("Presupuesto Cargado correctamente") ' Alert("Presupuesto Cargado correctamente")
Select Case TipoCargaPresupuesto ' Select Case TipoCargaPresupuesto
Case EnumTipoCargaPresupuesto.Ventas ' Case EnumTipoCargaPresupuesto.Ventas
CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2")) ' CargaGVPresupuestos(TmpDT.FiltraParametros("CveTipoPresupuesto=2"))
UpGV.Update() ' UpGV.Update()
Exit Select ' Exit Select
Case EnumTipoCargaPresupuesto.Control ' Case EnumTipoCargaPresupuesto.Control
CargaGVPresupuestosInsumos(TmpDT.FiltraParametros("CveTipoPresupuesto=1")) ' CargaGVPresupuestosInsumos(TmpDT.FiltraParametros("CveTipoPresupuesto=1"))
UpGVInsumos.Update() ' UpGVInsumos.Update()
Exit Select ' Exit Select
Case Else ' Case Else
End Select ' End Select
LbTotalGeneral.Text = (LbTotalGeneral.Text.ToDouble + TotalRow).ToString.FormatoNumero ' LbTotalGeneral.Text = (LbTotalGeneral.Text.ToDouble + TotalRow).ToString.FormatoNumero
LblImporte.Text = LbTotalGeneral.Text ' LblImporte.Text = LbTotalGeneral.Text
UpGral.Update() ' UpGral.Update()
End If ' End If
ObjContratos.Dispose() ' ObjContratos.Dispose()
If RowNoEncontrados.Length > 0 Then ' If RowNoEncontrados.Length > 0 Then
Alert($"Productos no encontrados <br> {RowNoEncontrados} ") ' Alert($"Productos no encontrados <br> {RowNoEncontrados} ")
End If ' End If
End Sub 'End Sub
@@ -4689,6 +4699,165 @@ Partial Class Contratos_ContratoObra
End Sub End Sub
Private Sub CargaGastos()
Dim GastosCompras As Double = 0
Dim GastosVeiculos As Double = 0
Dim GatosNominas As Double = 0
Dim GastosProcentaje As Double = 0
Dim ObjContratos As New ClsContratos
If ObjContratos.GetContratosObragGastosVeiculos(CveContrato, UsuarioActual.CveEmpresa) Then
GvGastosVeiculos.DataSource = ObjContratos.DtResultados
GastosVeiculos = ObjContratos.DtResultados.SUM("Importe")
Else
GvGastosVeiculos.DataSource = Nothing
End If
If ObjContratos.GetContratosObragGastosCompras(CveContrato, UsuarioActual.CveEmpresa) Then
GvGastosCompras.DataSource = ObjContratos.DtResultados
GastosCompras = ObjContratos.DtResultados.SUM("Importe", "CveContrato > 0")
Else
GvGastosCompras.DataSource = Nothing
End If
If ObjContratos.GetContratosObragGastosNomina(CveContrato, UsuarioActual.CveEmpresa) Then
GvGastosNomina.DataSource = ObjContratos.DtResultados
GatosNominas = ObjContratos.DtResultados.SUM("Importe", "CveContrato > 0")
Else
GvGastosNomina.DataSource = Nothing
End If
ObjContratos.Dispose()
GvGastosVeiculos.DataBind()
GvGastosCompras.DataBind()
GvGastosNomina.DataBind()
LblGastoContrato.Text = LblImporte.Text
LblGastoNomina.Text = "$ " & GatosNominas.ToString("###,###,###.00")
LblGastoGastos.Text = "$ " & GastosCompras.ToString("###,###,###.00")
LblGastoIndirectos.Text = "$ " & GastosVeiculos.ToString("###,###,###.00")
UpGastos.Update()
GastosProcentaje = (GastosVeiculos + GatosNominas + GastosCompras) * 100 / (LblGastoContrato.Text.ToDecimal)
LblGastoPorcentaje.Text = GastosProcentaje.ToString("###.00") & " %"
End Sub
Private Sub GvGastosVeiculos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvGastosVeiculos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DataKey("ORDEN").ToEntero = 1 Then
e.Row.CssClass = "Totales"
e.Row.Cells(1).Text = "Total"
Dim LnkEliminarGasto As LinkButton = e.Row.FCLinkButton("LnkEliminarGasto")
LnkEliminarGasto.Visible = False
End If
End If
End Sub
Private Sub GvGastosCompras_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvGastosCompras.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DataKey("CveContrato").ToEntero > 0 Then
e.Row.CssClass = "Totales"
e.Row.Cells(1).Text = "Total"
ElseIf e.Row.DataKey("CveContrato").ToEntero = 0 And e.Row.DataKey("CveClasificacion").ToEntero > 0 And e.Row.DataKey("ORDEN").ToEntero = 1 Then
e.Row.CssClass = "SubTotales"
e.Row.Cells(0).Text = e.Row.DataKey("Clasificacion")
e.Row.Cells(0).Width = 250
End If
End If
End Sub
Private Sub GvGastosNomina_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvGastosNomina.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DataKey("CvePersonal").ToEntero = 0 Then
e.Row.CssClass = "Totales"
e.Row.Cells(1).Text = "Total"
End If
End If
End Sub
Protected Sub LnkModalAddGastos_Click(sender As Object, e As EventArgs)
RegistraScript("$('#ModalControlAddGastoVeiculo').modal('show');")
End Sub
Protected Sub LnkEliminarGasto_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
Dim CveContratoGasto As Integer = GvRow.DataKey("CveContratoGasto").ToString.ToEntero
Dim ObjContratos As New ClsContratos
Dim ErrorProceso As Boolean = True
If ObjContratos.RemoveContratoGasto(CveContratoGasto) Then
ErrorProceso = False
End If
If Not ErrorProceso Then
CargaGastos()
Alert("Gasto eliminado correctamente.")
End If
ObjContratos.Dispose()
End Sub
Protected Sub BtnModalAgreagrGasto_Click(sender As Object, e As EventArgs)
Dim ErrorProceso As Boolean = True
Dim ObjContratos As New ClsContratos
If ObjContratos.AddContratoGasto(CveContrato, TxtGastosDescripcion.Text, TxtGastosImporte.Text.ToDecimal, Now, UsuarioActual.CveUsuario) Then
ErrorProceso = False
End If
ObjContratos.Dispose()
If Not ErrorProceso Then
CargaGastos()
RegistraScript("$('#ModalControlAddGastoVeiculo').modal('hide');")
End If
End Sub
End Class End Class

View File

@@ -810,6 +810,14 @@
<asp:RequiredFieldValidator ID="RFVSubProyecto" runat="server" InitialValue="-1" ControlToValidate="DdlSubProyecto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''SubProyecto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpDetalleGuardar"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVSubProyecto" runat="server" InitialValue="-1" ControlToValidate="DdlSubProyecto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''SubProyecto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpDetalleGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCORFVSubProyecto" runat="server" HighlightCssClass="vco" TargetControlID="RFVSubProyecto" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCORFVSubProyecto" runat="server" HighlightCssClass="vco" TargetControlID="RFVSubProyecto" Width="300px"></ajax:ValidatorCalloutExtender>
<div runat="server" id="DVCultivosCuadro" visible ="false">
<asp:DropDownList ID="DdlCultivosCuadro" CssClass=" form-control input-sm select2me" runat="server" DataTextField="Cuadro" Style="width: 100%; max-width: 600px;"
DataValueField="CveCultivoCuadroDetalle" ValidationGroup="GrpDetalleGuardar">
<asp:ListItem Selected="true" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
</td> </td>
<td id="TdActivoFijo" runat="server"> <td id="TdActivoFijo" runat="server">
<asp:UpdatePanel ID="UPPNumEcon" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UPPNumEcon" runat="server" UpdateMode="Conditional">
@@ -875,7 +883,7 @@
<asp:GridView ID="GvD" runat="server" AutoGenerateColumns="False" GridLines=" none" BorderColor="Transparent" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" <asp:GridView ID="GvD" runat="server" AutoGenerateColumns="False" GridLines=" none" BorderColor="Transparent" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn"
DataKeyNames="SubProyecto, Cantidad, Importe, Descuento, CveOrdenCompra, CveUnidadMedida, CvePresupuestoEgreso, PS,CveClasificacion, CvePS, CveSubProyecto, CveActivoFijo, CodigoAF, TipoDato, Observacion, CveOrdenCompraDetalle,CveCompra,IVAPorcentaje,RetIVAPorcentaje,RetISRPorcentaje,IEPSPSPorcentaje,IEPSPSIVAPorcentaje,CantidadNoEditable" data-tableheader=".GVDHeader" ShowHeader="false" data-rows="0"> DataKeyNames="SubProyecto, Cantidad, Importe, Descuento, CveOrdenCompra, CveUnidadMedida, CvePresupuestoEgreso, PS,CveClasificacion, CvePS, CveSubProyecto, CveActivoFijo, CodigoAF, TipoDato, Observacion, CveOrdenCompraDetalle,CveCompra,IVAPorcentaje,RetIVAPorcentaje,RetISRPorcentaje,IEPSPSPorcentaje,IEPSPSIVAPorcentaje,CantidadNoEditable,CveCultivoCuadroDetalle" data-tableheader=".GVDHeader" ShowHeader="false" data-rows="0">
<Columns> <Columns>
<asp:TemplateField> <asp:TemplateField>
<EditItemTemplate> <EditItemTemplate>
@@ -932,17 +940,32 @@
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField> <asp:TemplateField>
<ItemTemplate> <ItemTemplate>
<asp:Literal ID="LtlSubProyecto" runat="server" Text='<%# String.Format("{0}<br/>{1}", Eval("Proyecto"), Eval("SubProyecto")) %>'></asp:Literal>
<asp:Literal ID="LtlSubProyecto" runat="server" Text='<%# String.Format("{0}<br/>{1}{2}", Eval("Proyecto"), Eval("SubProyecto"), If(Eval("CveCultivoCuadroDetalle").ToString.Length > 0, String.Format("<br/>{0}", Eval("Cuadro")), "")) %>'></asp:Literal>
</ItemTemplate> </ItemTemplate>
<EditItemTemplate> <EditItemTemplate>
<asp:DropDownList ID="DdlProyectoEdit" runat="server" Style="width: 100%" AppendDataBoundItems="true" AutoPostBack="true" CssClass=" form-control input-sm select2me" DataTextField="Proyecto" DataValueField="CveProyecto" ValidationGroup="grpEditar" OnSelectedIndexChanged="DdlProyectoEdit_SelectedIndexChanged"> <asp:DropDownList ID="DdlProyectoEdit" runat="server" Style="width: 100%" AppendDataBoundItems="true" AutoPostBack="true" CssClass=" form-control input-sm select2me" DataTextField="Proyecto" DataValueField="CveProyecto" ValidationGroup="grpEditar" OnSelectedIndexChanged="DdlProyectoEdit_SelectedIndexChanged">
<asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem> <asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:DropDownList ID="DdlSubProyectoEdit" Style="width: 100%" runat="server" AppendDataBoundItems="true" CssClass=" form-control input-sm select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" ValidationGroup="grpEditar"> <asp:DropDownList ID="DdlSubProyectoEdit" Style="width: 100%" runat="server" AppendDataBoundItems="true" CssClass=" form-control input-sm select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" ValidationGroup="grpEditar">
<asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem> <asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:DropDownList ID="DdlCultivosCuadroEdit" Visible="false" CssClass=" form-control input-sm select2me" runat="server" DataTextField="Cuadro" Style="width: 100%; max-width: 600px;"
DataValueField="CveCultivoCuadroDetalle" >
<asp:ListItem Selected="true" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ValidationGroup="grpEditar" ID="RFVSubProyecto" runat="server" InitialValue="-1" ControlToValidate="DdlSubProyectoEdit" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''SubProyecto''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ValidationGroup="grpEditar" ID="RFVSubProyecto" runat="server" InitialValue="-1" ControlToValidate="DdlSubProyectoEdit" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''SubProyecto''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCORFVSubProyecto" runat="server" HighlightCssClass="vco" TargetControlID="RFVSubProyecto" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCORFVSubProyecto" runat="server" HighlightCssClass="vco" TargetControlID="RFVSubProyecto" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate> </EditItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField> <asp:TemplateField>

View File

@@ -798,6 +798,14 @@ Partial Class OC
DdlSubProyectoContrato.DataBind() DdlSubProyectoContrato.DataBind()
DdlSubProyectoContrato.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlSubProyectoContrato.Items.Insert(0, New ListItem("Seleccione", "-1"))
If UsuarioActual.Empresa.Funcionalidad(590).ToString.ToEntero = 1 Then
DVCultivosCuadro.Visible = True
DdlCultivosCuadro.DataSource = GlobalDTCultivosCuadro(UsuarioActual.CveEmpresa)
DdlCultivosCuadro.DataBind()
DdlCultivosCuadro.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
End If
'SOLO SE MUESTRA CUANDO ES REGISTRO NUEVO 'SOLO SE MUESTRA CUANDO ES REGISTRO NUEVO
If Not CveOrdenCompra > 0 Then If Not CveOrdenCompra > 0 Then
If UsuarioActual.Empresa.EsComercializadora And Not CveCotizacion > 0 Then If UsuarioActual.Empresa.EsComercializadora And Not CveCotizacion > 0 Then
@@ -1085,6 +1093,8 @@ Partial Class OC
DtDetalle.Columns.Add("CveVentaDetalleCotizacion", GetType(Integer)) DtDetalle.Columns.Add("CveVentaDetalleCotizacion", GetType(Integer))
DtDetalle.Columns.Add("CveTipoGastoObra", GetType(Integer)) DtDetalle.Columns.Add("CveTipoGastoObra", GetType(Integer))
DtDetalle.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
DtDetalle.Columns.Add("Cuadro", GetType(String))
'DtDetalle.Columns.Add("CveOrdenCompraDetalle", GetType(Integer)) 'DtDetalle.Columns.Add("CveOrdenCompraDetalle", GetType(Integer))
@@ -2141,7 +2151,7 @@ Partial Class OC
CboUnidadMedida.SelectedValue.ToEntero, IvaPS, IEPSPS, IEPSPSIVA, DdlClasificacion.SelectedValue.ToEntero, CboUnidadMedida.SelectedItem.Text, DdlClasificacion.SelectedItem.Text, DdlProyecto.SelectedValue.ToEntero, Proyecto, CboUnidadMedida.SelectedValue.ToEntero, IvaPS, IEPSPS, IEPSPSIVA, DdlClasificacion.SelectedValue.ToEntero, CboUnidadMedida.SelectedItem.Text, DdlClasificacion.SelectedItem.Text, DdlProyecto.SelectedValue.ToEntero, Proyecto,
DdlSubProyecto.SelectedValue.ToEntero, SubProyecto, LblCodigo.Text, HdnCveActivoFijo.Value.ToEntero, 0, CveOrdenCompraDetalle, CveOrdenCompra, IdCuentaPorEjercer, DdlSubProyecto.SelectedValue.ToEntero, SubProyecto, LblCodigo.Text, HdnCveActivoFijo.Value.ToEntero, 0, CveOrdenCompraDetalle, CveOrdenCompra, IdCuentaPorEjercer,
IdCuentaComprometido, DdlACGeneral1.SelectedValue.ToEntero, DdlACGeneral2.SelectedValue.ToEntero, DdlACGeneral3.SelectedValue.ToEntero, DdlACGeneral4.SelectedValue.ToEntero, IdCuentaComprometido, DdlACGeneral1.SelectedValue.ToEntero, DdlACGeneral2.SelectedValue.ToEntero, DdlACGeneral3.SelectedValue.ToEntero, DdlACGeneral4.SelectedValue.ToEntero,
DdlACGeneral5.SelectedValue.ToEntero, RetIVA, RetISR) DdlACGeneral5.SelectedValue.ToEntero, RetIVA, RetISR, CveCultivoCuadroDetalle:=DdlCultivosCuadro.SelectedValue.ToEntero, Cuadro:=DdlCultivosCuadro.SelectedItem.Text)
TxtCant.Text = "" TxtCant.Text = ""
CboUnidadMedida.SelectedIndex = 0 CboUnidadMedida.SelectedIndex = 0
@@ -2171,7 +2181,8 @@ Partial Class OC
Private Sub AddPS(Cantidad As String, CvePS As Integer, PS As String, Observaciones As String, Importe As Double, Descuento As Double, Total As Double, CveUnidadMedida As Integer, IVAPS As Double, IEPSPS As Double, IEPSPSIVA As Double, CveClasificacion As Integer, Private Sub AddPS(Cantidad As String, CvePS As Integer, PS As String, Observaciones As String, Importe As Double, Descuento As Double, Total As Double, CveUnidadMedida As Integer, IVAPS As Double, IEPSPS As Double, IEPSPSIVA As Double, CveClasificacion As Integer,
UM As String, Clasificacion As String, CveProyecto As Integer, Proyecto As String, CveSubProyecto As Integer, SubProyecto As String, CodigoAF As String, CveActivoFijo As Integer, TipoDato As Integer, UM As String, Clasificacion As String, CveProyecto As Integer, Proyecto As String, CveSubProyecto As Integer, SubProyecto As String, CodigoAF As String, CveActivoFijo As Integer, TipoDato As Integer,
CveOrdenCompraDetalle As Integer, CveOrdenCompra As Integer, IdCuentaPorEjercer As Integer, IdCuentaComprometido As Integer, CveProgramaOperativo As Integer, CveUnidadAdministrativa As Integer, CveOrdenCompraDetalle As Integer, CveOrdenCompra As Integer, IdCuentaPorEjercer As Integer, IdCuentaComprometido As Integer, CveProgramaOperativo As Integer, CveUnidadAdministrativa As Integer,
CveFuenteFinanciamiento As Integer, CveTipoGasto As Integer, CveClasificacionOG As Integer, RetIVA As Double, RetISR As Double, Optional CveContratoDetalle As Integer = -1, Optional CveTipoGastoObra As Integer = -1) CveFuenteFinanciamiento As Integer, CveTipoGasto As Integer, CveClasificacionOG As Integer, RetIVA As Double, RetISR As Double, Optional CveContratoDetalle As Integer = -1, Optional CveTipoGastoObra As Integer = -1, Optional CveCultivoCuadroDetalle As Integer = -1,
Optional Cuadro As String = "")
If DtDetalle IsNot Nothing Then If DtDetalle IsNot Nothing Then
Dim dr As DataRow = DtDetalle.NewRow Dim dr As DataRow = DtDetalle.NewRow
@@ -2228,6 +2239,9 @@ Partial Class OC
dr("CveClasificacionOG") = CveClasificacionOG dr("CveClasificacionOG") = CveClasificacionOG
dr("CveContratoDetalle") = CveContratoDetalle dr("CveContratoDetalle") = CveContratoDetalle
dr("CveTipoGastoObra") = CveTipoGastoObra dr("CveTipoGastoObra") = CveTipoGastoObra
dr("CveCultivoCuadroDetalle") = CveCultivoCuadroDetalle
dr("Cuadro") = Cuadro
DtDetalle.Rows.Add(dr) DtDetalle.Rows.Add(dr)
@@ -2511,7 +2525,7 @@ Partial Class OC
IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble,
RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble,
RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble,
IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero) Then IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero, CveCultivoCuadroDetalle:=dr("CveCultivoCuadroDetalle").ToString.ToEntero) Then
TieneError = True TieneError = True
Exit For Exit For
End If End If
@@ -2589,7 +2603,7 @@ Partial Class OC
dr("Observacion").ToString, UsuarioActual.CveUsuario, CvePresupuestoEgreso:=dr("CvePresupuestoEgreso").ToString.ToEntero, pCveOrdenCompraPadre:=CveOrdenCompraPadre, Descuento:=dr("Descuento").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble, dr("Observacion").ToString, UsuarioActual.CveUsuario, CvePresupuestoEgreso:=dr("CvePresupuestoEgreso").ToString.ToEntero, pCveOrdenCompraPadre:=CveOrdenCompraPadre, Descuento:=dr("Descuento").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble,
IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero,
IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble,
IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveVentaDetalleCotizacion:=dr("CveVentaDetalleCotizacion").ToString().ToEntero(), CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero) Then IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveVentaDetalleCotizacion:=dr("CveVentaDetalleCotizacion").ToString().ToEntero(), CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero, CveCultivoCuadroDetalle:=dr("CveCultivoCuadroDetalle").ToString.ToEntero) Then
TieneError = True TieneError = True
Exit For Exit For
End If End If
@@ -2702,7 +2716,7 @@ Partial Class OC
'inserto los nuevos detalles 'inserto los nuevos detalles
If Not TieneError Then If Not TieneError Then
For Each dr As DataRow In DtDetalle.FiltraParametros("TipoDato = 0").Rows For Each dr As DataRow In DtDetalle.FiltraParametros("TipoDato = 0").Rows
If Not OC.AddOrdenCompraDetalle(CveOrdenCompra, dr("Cantidad").ToString.ToDouble(), dr("CveUnidadMedida").ToString.ToEntero, dr("CvePS").ToString.ToEntero, dr("Importe").ToString.ToDouble, dr("CveSubProyecto").ToString.ToEntero, dr("CveActivoFijo").ToString.ToEntero, dr("Observacion").ToString, UsuarioActual.CveUsuario, CvePresupuestoEgreso:=If(TipoOC = "REQ", -1, dr("CvePresupuestoEgreso").ToString.ToEntero), Descuento:=dr("Descuento").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero) Then If Not OC.AddOrdenCompraDetalle(CveOrdenCompra, dr("Cantidad").ToString.ToDouble(), dr("CveUnidadMedida").ToString.ToEntero, dr("CvePS").ToString.ToEntero, dr("Importe").ToString.ToDouble, dr("CveSubProyecto").ToString.ToEntero, dr("CveActivoFijo").ToString.ToEntero, dr("Observacion").ToString, UsuarioActual.CveUsuario, CvePresupuestoEgreso:=If(TipoOC = "REQ", -1, dr("CvePresupuestoEgreso").ToString.ToEntero), Descuento:=dr("Descuento").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero, CveCultivoCuadroDetalle:=dr("CveCultivoCuadroDetalle").ToString.ToEntero) Then
TieneError = True TieneError = True
Exit For Exit For
Else Else
@@ -3182,7 +3196,7 @@ Partial Class OC
CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble,
RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble,
IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble,
CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero) Then CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero, CveCultivoCuadroDetalle:=dr("CveCultivoCuadroDetalle").ToString.ToEntero) Then
HuboError = True HuboError = True
Exit For Exit For
End If End If
@@ -3223,7 +3237,7 @@ Partial Class OC
'CveOrdenCompra = objOrdenCompra.CveOrdenCompra 'CveOrdenCompra = objOrdenCompra.CveOrdenCompra
If Not HuboError Then If Not HuboError Then
For Each dr As DataRow In DtDetalle.Rows For Each dr As DataRow In DtDetalle.Rows
If Not objOrdenCompra.AddOrdenCompraDetalle(objOrdenCompra.CveOrdenCompra, dr("Cantidad").ToString.ToDouble(), dr("CveUnidadMedida").ToString.ToEntero, dr("CvePS").ToString.ToEntero, dr("Importe").ToString.ToDouble, dr("CveSubProyecto").ToString.ToEntero(), dr("CveActivoFijo").ToString.ToEntero, dr("Observacion").ToString, UsuarioActual.CveUsuario, CveOrdenCompra, CvePresupuestoEgreso:=dr("CvePresupuestoEgreso").ToString.ToEntero, Descuento:=dr("Descuento").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero) Then If Not objOrdenCompra.AddOrdenCompraDetalle(objOrdenCompra.CveOrdenCompra, dr("Cantidad").ToString.ToDouble(), dr("CveUnidadMedida").ToString.ToEntero, dr("CvePS").ToString.ToEntero, dr("Importe").ToString.ToDouble, dr("CveSubProyecto").ToString.ToEntero(), dr("CveActivoFijo").ToString.ToEntero, dr("Observacion").ToString, UsuarioActual.CveUsuario, CveOrdenCompra, CvePresupuestoEgreso:=dr("CvePresupuestoEgreso").ToString.ToEntero, Descuento:=dr("Descuento").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble, CveTipoGastoObra:=dr("CveTipoGastoObra").ToString.ToEntero, CveCultivoCuadroDetalle:=dr("CveCultivoCuadroDetalle").ToString.ToEntero) Then
HuboError = True HuboError = True
Exit For Exit For
End If End If
@@ -3729,6 +3743,18 @@ Partial Class OC
End If End If
End If End If
If UsuarioActual.Empresa.Funcionalidad(590).ToString.ToEntero = 1 Then
e.Row.FCDropDownList("DdlCultivosCuadroEdit").Visible = True
e.Row.FCDropDownList("DdlCultivosCuadroEdit").DataSource = GlobalDTCultivosCuadro(UsuarioActual.CveEmpresa)
e.Row.FCDropDownList("DdlCultivosCuadroEdit").DataBind()
e.Row.FCDropDownList("DdlCultivosCuadroEdit").Items.Insert(0, New ListItem("Seleccione uno", "-1"))
e.Row.FCDropDownList("DdlCultivosCuadroEdit").SelectedValueExist(e.Row.DBCampo("CveCultivoCuadroDetalle").ToEntero)
End If
e.Row.FCTextBox("LblEditCodigo").Attributes.Add("onkeyup", String.Format("EnterAFEdit(event,this,{0},{1});", e.Row.FCHiddenField("HdnCveActivoFijo").ClientID, e.Row.FCHiddenField("HdnCodigoAF").ClientID)) e.Row.FCTextBox("LblEditCodigo").Attributes.Add("onkeyup", String.Format("EnterAFEdit(event,this,{0},{1});", e.Row.FCHiddenField("HdnCveActivoFijo").ClientID, e.Row.FCHiddenField("HdnCodigoAF").ClientID))
e.Row.FCTextBox("LblEditCodigo").Attributes.Add("onblur", String.Format("AFBlurEdit(this,{0},{1});", e.Row.FCHiddenField("HdnCveActivoFijo").ClientID, e.Row.FCHiddenField("HdnCodigoAF").ClientID)) e.Row.FCTextBox("LblEditCodigo").Attributes.Add("onblur", String.Format("AFBlurEdit(this,{0},{1});", e.Row.FCHiddenField("HdnCveActivoFijo").ClientID, e.Row.FCHiddenField("HdnCodigoAF").ClientID))
e.Row.FCImage("ImgAF").Attributes.Add("onclick", String.Format("AbrirVentana('/AF/PopUpBuscarAF.aspx?OPCION=OCE&RI={0}',950,600,'N');", e.Row.RowIndex)) e.Row.FCImage("ImgAF").Attributes.Add("onclick", String.Format("AbrirVentana('/AF/PopUpBuscarAF.aspx?OPCION=OCE&RI={0}',950,600,'N');", e.Row.RowIndex))
@@ -3787,8 +3813,8 @@ Partial Class OC
End Sub End Sub
Protected Sub GvD_RowUpdating(sender As Object, e As GridViewUpdateEventArgs) Handles GvD.RowUpdating Protected Sub GvD_RowUpdating(sender As Object, e As GridViewUpdateEventArgs) Handles GvD.RowUpdating
Dim Cantidad, Importe, Descuento As Double Dim Cantidad, Importe, Descuento As Double
Dim CveUnidad, CveClasificacion, CveActivoFijo, CvePS, CveSubProyecto, CveProyecto As Integer Dim CveUnidad, CveClasificacion, CveActivoFijo, CvePS, CveSubProyecto, CveProyecto, CveCultivoCuadroDetalle As Integer
Dim Obs, UM, Clasificacion, Codigo, PS, SubProyecto, Proyecto As String Dim Obs, UM, Clasificacion, Codigo, PS, SubProyecto, Proyecto, Cuadro As String
Dim gvr As GridViewRow = GvD.Rows(e.RowIndex) Dim gvr As GridViewRow = GvD.Rows(e.RowIndex)
Cantidad = gvr.FCTextBox("TxtCantEdit").Text.Trim.ToDouble Cantidad = gvr.FCTextBox("TxtCantEdit").Text.Trim.ToDouble
@@ -3839,6 +3865,11 @@ Partial Class OC
CveSubProyecto = gvr.FCDropDownList("DdlSubProyectoEdit").SelectedValue.ToEntero CveSubProyecto = gvr.FCDropDownList("DdlSubProyectoEdit").SelectedValue.ToEntero
SubProyecto = gvr.FCDropDownList("DdlSubProyectoEdit").SelectedItem.Text SubProyecto = gvr.FCDropDownList("DdlSubProyectoEdit").SelectedItem.Text
CveCultivoCuadroDetalle = gvr.FCDropDownList("DdlCultivosCuadroEdit").SelectedValue.ToEntero
Cuadro = gvr.FCDropDownList("DdlCultivosCuadroEdit").SelectedItem.Text
If UsuarioActual.Empresa.Tipo_CentroCosto = 1 Or UsuarioActual.Empresa.Tipo_CentroCosto = 2 Then If UsuarioActual.Empresa.Tipo_CentroCosto = 1 Or UsuarioActual.Empresa.Tipo_CentroCosto = 2 Then
CveProyecto = -1 CveProyecto = -1
Proyecto = "Seleccione" Proyecto = "Seleccione"
@@ -3857,8 +3888,8 @@ Partial Class OC
CvePresupuesto = ObjCon.DtResultados.Rows(0)("CvePresupuesto").ToString.ToEntero CvePresupuesto = ObjCon.DtResultados.Rows(0)("CvePresupuesto").ToString.ToEntero
If CvePresupuesto > 0 Then If CvePresupuesto > 0 Then
If ObjCon.GetPresupuestosDetalle(CvePresupuesto, -1, UsuarioActual.CveEmpresa) Then If ObjCon.GetPresupuestosDetalle(CvePresupuesto, -1, UsuarioActual.CveEmpresa) Then
If ObjCon.DtResultados.FiltraParametros($"CveClasificacion = {CveClasificacion} AND Importe > 0").Rows.Count > 0 Then If ObjCon.DtResultados.FiltraParametros($"CveClasificacion = {CveClasificacion} And Importe > 0").Rows.Count > 0 Then
Autorizado = ObjCon.DtResultados.FiltraParametros($"CveClasificacion = {CveClasificacion} AND Importe > 0").Rows(0)("Importe").ToString.ToDouble Autorizado = ObjCon.DtResultados.FiltraParametros($"CveClasificacion = {CveClasificacion} And Importe > 0").Rows(0)("Importe").ToString.ToDouble
End If End If
End If End If
If ObjCon.GetPresupuestosRep(CvePresupuesto, -1, 1, $"01/09/{DateTime.Now.Year - 1}".ToDate, Now, UsuarioActual.CveEmpresa, CveProyecto, If ObjCon.GetPresupuestosRep(CvePresupuesto, -1, 1, $"01/09/{DateTime.Now.Year - 1}".ToDate, Now, UsuarioActual.CveEmpresa, CveProyecto,
@@ -3935,6 +3966,9 @@ Partial Class OC
dr(0)("CveActivoFijo") = CveActivoFijo dr(0)("CveActivoFijo") = CveActivoFijo
dr(0)("CodigoAF") = Codigo dr(0)("CodigoAF") = Codigo
dr(0)("CveCultivoCuadroDetalle") = CveCultivoCuadroDetalle
dr(0)("Cuadro") = Cuadro
'si el tipodato viene de la BD, entonces sufrió una actualización 'si el tipodato viene de la BD, entonces sufrió una actualización
If dr(0)("TipoDato").ToString.ToEntero = 2 Then dr(0)("TipoDato") = 1 If dr(0)("TipoDato").ToString.ToEntero = 2 Then dr(0)("TipoDato") = 1
DtDetalle.AcceptChanges() DtDetalle.AcceptChanges()
@@ -8361,7 +8395,7 @@ Partial Class OC
CveUnidadMedida, IvaPS, IEPSPS, IEPSPSIVA, CveClasificacion, UMAbreviatura, Clasificacion, CveProyecto, Proyecto, CveUnidadMedida, IvaPS, IEPSPS, IEPSPSIVA, CveClasificacion, UMAbreviatura, Clasificacion, CveProyecto, Proyecto,
CveSubProyecto, SubProyecto, Codigo, -1, 0, -1, -1, IdCuentaPorEjercer, CveSubProyecto, SubProyecto, Codigo, -1, 0, -1, -1, IdCuentaPorEjercer,
IdCuentaComprometido, -1, -1, -1, -1, IdCuentaComprometido, -1, -1, -1, -1,
-1, RetIVA, RetISR, CveContratoDetalle:=CveContratoDetalle, CveTipoGastoObra:=CveTipoGastoObra) -1, RetIVA, RetISR, CveContratoDetalle:=CveContratoDetalle, CveTipoGastoObra:=CveTipoGastoObra, CveCultivoCuadroDetalle:=-1, Cuadro:="")
ContratoObraAplciado = True ContratoObraAplciado = True

View File

@@ -742,7 +742,9 @@ Partial Class Sistemas_PopUpAddUsuario
GvModulosPermiso.DataSource = ObjProcesos.DtResultados.FiltraParametros($"CvePlataforma = 6") GvModulosPermiso.DataSource = ObjProcesos.DtResultados.FiltraParametros($"CvePlataforma = 6")
ElseIf UsuarioActual.Empresa.CvePlataforma = 1 And CveProveedor > 0 Then ElseIf UsuarioActual.Empresa.CvePlataforma = 1 And CveProveedor > 0 Then
GvModulosPermiso.DataSource = ObjProcesos.DtResultados.FiltraParametros($"CvePlataforma = 7") GvModulosPermiso.DataSource = ObjProcesos.DtResultados.FiltraParametros($"CvePlataforma = 7")
If CveUsuario > 0 Then
BtnDefaultPWD.Visible = True BtnDefaultPWD.Visible = True
End If
ElseIf UsuarioActual.Empresa.CvePlataforma = 3 Then ElseIf UsuarioActual.Empresa.CvePlataforma = 3 Then
GvModulosPermiso.DataSource = ObjProcesos.DtResultados.FiltraParametros("CveModulo = 433") GvModulosPermiso.DataSource = ObjProcesos.DtResultados.FiltraParametros("CveModulo = 433")
End If End If

View File

@@ -4188,7 +4188,7 @@
<asp:Label runat="server" ID="LblUsadosImpCargo"></asp:Label></td> <asp:Label runat="server" ID="LblUsadosImpCargo"></asp:Label></td>
<td style="text-align: right!important"> <td style="text-align: right!important">
<asp:Button runat="server" Visible="false" Height="34px" Width="180px" ID="LnkFacturaUsadosCargos" CssClass="btn btn-primary" Text="Generar NC Cargo" data-toggle="confirmation" data-popout="true" data-original-title="Comfirmar generación de nota de crédito de cargos" data-btn-ok-label="si" OnClick="LnkFacturaUsadosCargos_Click"></asp:Button> <asp:Button runat="server" Visible="false" Height="34px" Width="300px" ID="LnkFacturaUsadosCargos" CssClass="btn btn-primary" Text="Generar NC Cargo" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar generación de remisión de nota de crédito de cargos" data-btn-ok-label="si" OnClick="LnkFacturaUsadosCargos_Click"></asp:Button>
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -4197,7 +4197,7 @@
<asp:Label runat="server" ID="LblusadosImpBonificacion"></asp:Label></td> <asp:Label runat="server" ID="LblusadosImpBonificacion"></asp:Label></td>
<td style="text-align: right!important"> <td style="text-align: right!important">
<asp:Button runat="server" Height="34px" Width="180px" ID="LnkFacturaUsadosBonificacion" CssClass="btn btn-primary" Text="Generar NC Bonificación" data-toggle="confirmation" data-popout="true" data-original-title="Comfirmar generación de nota de crédito de bonificación" data-btn-ok-label="si" OnClick="LnkFacturaUsadosBonificacion_Click"></asp:Button> <asp:Button runat="server" Height="34px" Width="300px" ID="LnkFacturaUsadosBonificacion" CssClass="btn btn-primary" Text="Generar RNC de Bonificación" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar generación de remisión de nota de crédito de bonificación" data-btn-ok-label="si" OnClick="LnkFacturaUsadosBonificacion_Click"></asp:Button>
</td> </td>
</tr> </tr>
@@ -4210,6 +4210,31 @@
</div> </div>
</div> </div>
</div> </div>
<div class="col-md-6" id="DivSaldoUsados" runat="server">
<div class="portlet light xspadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Saldo de Cliente</span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
</div>
<div class="portlet-body form">
<asp:GridView ID="GvUsadosResumen" Width="100%" runat="server" GridLines="None"
CssClass="table table-striped table-advance table-hover ScrollAD " ShowHeader="True" EmptyDataText="No se encontraron resultados." ShowHeaderWhenEmpty="true"
AutoGenerateColumns="False" AllowPaging="False" ShowFooter="False">
<Columns>
<asp:BoundField DataField="SaldoCliente" HeaderText="" />
<asp:BoundField DataField="Puntos" HeaderText="Puntos" DataFormatString="{0:n}" ItemStyle-HorizontalAlign="Right" ControlStyle-BorderWidth="150px" />
<asp:BoundField DataField="Valor" HeaderText="Valor $" DataFormatString="{0:n}" ItemStyle-HorizontalAlign="Right" ControlStyle-BorderWidth="150px" />
</Columns>
</asp:GridView>
</div>
</div>
</div>
</div> </div>
@@ -4302,8 +4327,8 @@
<asp:BoundField DataField="EstadoBonificacion" HeaderText="F Bonificación" ItemStyle-HorizontalAlign="Center" />--%> <asp:BoundField DataField="EstadoBonificacion" HeaderText="F Bonificación" ItemStyle-HorizontalAlign="Center" />--%>
<asp:HyperLinkField DataTextField="SerieFolio" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Venta" /> <asp:HyperLinkField DataTextField="SerieFolio" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Venta" />
<asp:HyperLinkField DataTextField="SerieFolioNC" Target="_blank" DataNavigateUrlFields="CveVentaNC" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Notá de Credito" />
<asp:HyperLinkField DataTextField="SerieFolioBonificacion" Target="_blank" DataNavigateUrlFields="CveVentaBonificacion" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="V. Bonifi" /> <asp:HyperLinkField DataTextField="SerieFolioBonificacion" Target="_blank" DataNavigateUrlFields="CveVentaBonificacion" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" HeaderText="V. Bonifi" />
<asp:HyperLinkField DataTextField="Folio" Target="_blank" DataNavigateUrlFields="CveMovimiento" DataNavigateUrlFormatString="/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Movto" /> <asp:HyperLinkField DataTextField="Folio" Target="_blank" DataNavigateUrlFields="CveMovimiento" DataNavigateUrlFormatString="/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}" ItemStyle-HorizontalAlign="Left" HeaderText="Movto" />
<asp:BoundField DataField="FechaIng" HeaderText="Fecha" DataFormatString="{0:d}" ItemStyle-HorizontalAlign="Center" ControlStyle-BorderWidth="100px" /> <asp:BoundField DataField="FechaIng" HeaderText="Fecha" DataFormatString="{0:d}" ItemStyle-HorizontalAlign="Center" ControlStyle-BorderWidth="100px" />
@@ -4577,14 +4602,9 @@
<asp:HyperLink ID="ImgAddObs" CssClass="caption-subject bold" data-toggle="modal" data-target="#ModalBitacora" runat="server" Text=" <i class='fa fa-commenting font-green' style='font-weight: 700 !important;' ><span class='caption-subject bold'>Agregar</span></i>" Style="cursor: pointer;" ToolTip="Observaciones"></asp:HyperLink><br /> <asp:HyperLink ID="ImgAddObs" CssClass="caption-subject bold" data-toggle="modal" data-target="#ModalBitacora" runat="server" Text=" <i class='fa fa-commenting font-green' style='font-weight: 700 !important;' ><span class='caption-subject bold'>Agregar</span></i>" Style="cursor: pointer;" ToolTip="Observaciones"></asp:HyperLink><br />
<asp:HyperLink ID="HlEvento" CssClass="thickbox caption-subject bold" runat="server" Text=" <i class='fa fa-calendar-plus-o font-green' style='font-weight: 700 !important;' >Agendar</i>" Visible="false" Style="cursor: pointer;" ToolTip="Agendar"></asp:HyperLink><br /> <asp:HyperLink ID="HlEvento" CssClass="thickbox caption-subject bold" runat="server" Text=" <i class='fa fa-calendar-plus-o font-green' style='font-weight: 700 !important;' >Agendar</i>" Visible="false" Style="cursor: pointer;" ToolTip="Agendar"></asp:HyperLink><br />
<asp:Literal ID="LtlTareaNueva" runat="server"></asp:Literal> <asp:Literal ID="LtlTareaNueva" runat="server"></asp:Literal>
<UserControl:TareaNueva runat="server" id="TareaNueva" /> <UserControl:TareaNueva runat="server" ID="TareaNueva" />
<script> function OnAddedTareaNueva() { <script> function OnAddedTareaNueva() { $('.btnupEventoBitacora').click(); }</script>
$('.btnupEventoBitacora').click();
}
</script>
</div> </div>
</div> </div>
</div> </div>
<div class="portlet-body"> <div class="portlet-body">

View File

@@ -9161,6 +9161,11 @@ Partial Class Clientes
End If End If
If ObjAcum.GetMovimientosDistribuidorResumen(CveCliente, UsuarioActual.CveEmpresa, TxtFechaIUsados.Text.ToDate, TxtFechaFUsados.Text.ToDate) Then
GvUsadosResumen.DataSource = ObjAcum.DtResultados
End If
GvUsadosResumen.DataBind()
'LnkFacturaUsadosCargos.Visible = If(ImporteCargo > 0, True, False) 'LnkFacturaUsadosCargos.Visible = If(ImporteCargo > 0, True, False)
LnkFacturaUsadosBonificacion.Visible = If(ImporteBonificacion > 0, True, False) LnkFacturaUsadosBonificacion.Visible = If(ImporteBonificacion > 0, True, False)

View File

@@ -428,6 +428,7 @@ Partial Class Ventas_RepVentas
Dim FechaIRef As DateTime = FechaI.ToDateTime() Dim FechaIRef As DateTime = FechaI.ToDateTime()
Dim FechaFRef As DateTime = FechaF.ToDateTime() Dim FechaFRef As DateTime = FechaF.ToDateTime()
If e.Row.DBCampo("Mes").ToEntero() > 0 Then
Dim Anio As Integer = FechaFRef.Year Dim Anio As Integer = FechaFRef.Year
Dim Mes As Integer = e.Row.DBCampo("Mes").ToEntero() Dim Mes As Integer = e.Row.DBCampo("Mes").ToEntero()
Dim lastDayOfMonth = DateTime.DaysInMonth(Anio, Mes) Dim lastDayOfMonth = DateTime.DaysInMonth(Anio, Mes)
@@ -443,12 +444,19 @@ Partial Class Ventas_RepVentas
End If End If
FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy") FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy")
End If
Case 3 ' AÑO/MES Case 3 ' AÑO/MES
Dim FechaIRef As DateTime = FechaI.ToDateTime() Dim FechaIRef As DateTime = FechaI.ToDateTime()
Dim FechaFRef As DateTime = FechaF.ToDateTime() Dim FechaFRef As DateTime = FechaF.ToDateTime()
Dim Anio As Integer = e.Row.DBCampo("Anio").ToEntero() Dim separator As Char = "/".ToCharArray().FirstOrDefault()
Dim Mes As Integer = e.Row.DBCampo("Mes").ToEntero() Dim AnioMes = e.Row.DBCampo("AnioMes").Split(separator)
Dim Anio As Integer = AnioMes(0).ToEntero()
Dim Mes As Integer = AnioMes(1).ToEntero()
If Anio > 0 AndAlso Mes > 0 Then
Dim lastDayOfMonth = DateTime.DaysInMonth(Anio, Mes) Dim lastDayOfMonth = DateTime.DaysInMonth(Anio, Mes)
Dim Dia As Integer = FechaFRef.Day Dim Dia As Integer = FechaFRef.Day
@@ -462,6 +470,8 @@ Partial Class Ventas_RepVentas
End If End If
FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy") FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy")
End If
Case 4 ' FECHA Case 4 ' FECHA
FechaInicial = e.Row.DBCampo("Fecha").ToDateTime().ToString("dd/MM/yyyy") FechaInicial = e.Row.DBCampo("Fecha").ToDateTime().ToString("dd/MM/yyyy")
FechaFinal = e.Row.DBCampo("Fecha").ToDateTime().ToString("dd/MM/yyyy") FechaFinal = e.Row.DBCampo("Fecha").ToDateTime().ToString("dd/MM/yyyy")

View File

@@ -4343,7 +4343,7 @@
<asp:HyperLink ID="ImgAddObs" CssClass="caption-subject bold" data-toggle="modal" data-target="#ModalBitacora" runat="server" Text=" <i class='fa fa-commenting font-green' style='font-weight: 700 !important;' ><span class='caption-subject bold'>Agregar</span></i>" Style="cursor: pointer;" ToolTip="Observaciones"></asp:HyperLink><br /> <asp:HyperLink ID="ImgAddObs" CssClass="caption-subject bold" data-toggle="modal" data-target="#ModalBitacora" runat="server" Text=" <i class='fa fa-commenting font-green' style='font-weight: 700 !important;' ><span class='caption-subject bold'>Agregar</span></i>" Style="cursor: pointer;" ToolTip="Observaciones"></asp:HyperLink><br />
<asp:HyperLink ID="HlEvento" CssClass="thickbox caption-subject bold" runat="server" Visible="false" Style="cursor: pointer; text-decoration: none;" ToolTip="Agendar"><i class='fa fa-calendar-plus-o font-green' style='font-weight: 700 !important;' ></i> <span class="caption-subject bold font-green">Agendar</span></asp:HyperLink><br /> <asp:HyperLink ID="HlEvento" CssClass="thickbox caption-subject bold" runat="server" Visible="false" Style="cursor: pointer; text-decoration: none;" ToolTip="Agendar"><i class='fa fa-calendar-plus-o font-green' style='font-weight: 700 !important;' ></i> <span class="caption-subject bold font-green">Agendar</span></asp:HyperLink><br />
<asp:Literal ID="LtlTareaNueva" runat="server"></asp:Literal> <asp:Literal ID="LtlTareaNueva" runat="server"></asp:Literal>
<UserControl:TareaNueva runat="server" id="TareaNueva" /> <UserControl:TareaNueva runat="server" ID="TareaNueva" />
<script> <script>
function OnAddedTareaNueva() { function OnAddedTareaNueva() {
$('.btnupEventoBitacora').click(); $('.btnupEventoBitacora').click();
@@ -6427,6 +6427,17 @@
<h4 class="modal-title">Aplicar Devolución</h4> <h4 class="modal-title">Aplicar Devolución</h4>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div class="row" id="">
<div class="col-md-2">
<label>Aplicar % de Penalización</label>
</div>
<div class="col-md-4">
<asp:TextBox ID="TxtPorPenalizacion" runat="server" CssClass="form-control input-sm" Text="0" onkeyup="CalculaPenalizacionDevolucion(this);"></asp:TextBox>
<asp:RangeValidator ID="RFVPenalizacion" runat="server" Type="Integer" MinimumValue="0" MaximumValue="100" ErrorMessage="El campo <b>''Penalización''</b> es necesario, por favor ingréselo." ControlToValidate="TxtPorPenalizacion" Display="None"></asp:RangeValidator>
<ajax:FilteredTextBoxExtender ID="FTBPenalizacion" runat="server" TargetControlID="TxtPorPenalizacion" FilterType="Custom, Numbers" ValidChars=".," />
</div>
<div class="col-md-6"></div>
</div>
<div class="row" style="margin-bottom: 10px;"> <div class="row" style="margin-bottom: 10px;">
<div class="text-right col-md-offset-8 col-md-4"> <div class="text-right col-md-offset-8 col-md-4">
<input type="text" id="TxtBusquedaDevolucion" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusquedaDevolucion','{0}')", GvAplicaDevolucion.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" /> <input type="text" id="TxtBusquedaDevolucion" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusquedaDevolucion','{0}')", GvAplicaDevolucion.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
@@ -6469,7 +6480,7 @@
<asp:BoundField HeaderText="PU" DataField="PU" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" /> <asp:BoundField HeaderText="PU" DataField="PU" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:TemplateField HeaderText="PU Editado" Visible="false"> <asp:TemplateField HeaderText="PU Editado" Visible="false">
<ItemTemplate> <ItemTemplate>
<asp:TextBox ID="TxtPrecioEditado" runat="server" Text='<%#Eval("PU").ToString%>' MaxLength="12" Width="46px" Height="24px"></asp:TextBox> <asp:TextBox ID="TxtPrecioEditado" runat="server" Text='<%#Eval("PU").ToString%>' MaxLength="12" Width="90%" Height="24px" CssClass="ImporteDevolucion"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="SoloNumeros1Editado" runat="server" TargetControlID="TxtPrecioEditado" FilterType="Custom, Numbers" ValidChars=".," /> <ajax:FilteredTextBoxExtender ID="SoloNumeros1Editado" runat="server" TargetControlID="TxtPrecioEditado" FilterType="Custom, Numbers" ValidChars=".," />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
@@ -7340,6 +7351,17 @@
} }
} }
function CalculaPenalizacionDevolucion(TxtPenalizacion) {
const Porcentaje = ToDouble(TxtPenalizacion.value) / ToDouble(100);
if (Porcentaje <= 1) {
$('.ImporteDevolucion').each(function () {
const importe = ToDouble($(this).val());
const resta = importe * Porcentaje;
$(this).val(FormatoNumero((importe - resta), 2));
});
}
}
function displayToastr(x) { function displayToastr(x) {
toastr.options = { toastr.options = {

View File

@@ -5674,7 +5674,7 @@ Partial Class Ventas
LnkCotizaciones.Visible = False LnkCotizaciones.Visible = False
End If End If
UPCondicionesPago.Update() UPCondicionesPago.Update()
ElseIf UsuarioActual.CveEmpresa.Contiene(72, 119) AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "Cot", "PA") AndAlso CveVenta < 1 Then ElseIf UsuarioActual.CveEmpresa.Contiene(72, 80, 146, 119) AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "Cot", "PA") AndAlso CveVenta < 1 Then
RBLPago.SelectedValue = "1" RBLPago.SelectedValue = "1"
RBLPago_SelectedIndexChanged(Nothing, Nothing) RBLPago_SelectedIndexChanged(Nothing, Nothing)
UPCondicionesPago.Update() UPCondicionesPago.Update()
@@ -8088,6 +8088,22 @@ Partial Class Ventas
ObjFacturaDevolucion.FormaPago = 0 ObjFacturaDevolucion.FormaPago = 0
ObjFacturaDevolucion.TipoDocto = "Egs" ObjFacturaDevolucion.TipoDocto = "Egs"
If UsuarioActual.CveEmpresa = 140 Then
Dim ObjFolios As New ClsGralFolios()
Dim TipoDoctoConsulta As String = If(ObjFacturaDevolucion.TipoDocto = "Ant", "Ing", If(ObjFacturaDevolucion.TipoDocto = "PA", "Rem", ObjFacturaDevolucion.TipoDocto))
If ObjFolios.GetFolios(TipoDoctoConsulta, UsuarioActual.CveEmpresa) Then
Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format(" CveSubProyecto = {0} And Estado = 'Activo'", DdlSubProyectoDatos.SelectedValue))
If DT.Rows.Count > 0 Then
ObjFactura.Serie = DT.Rows(0)("Serie").ToString()
End If
DT.Dispose()
End If
ObjFolios.Dispose()
End If
ObjFacturaDevolucion.Fecha = Now ObjFacturaDevolucion.Fecha = Now
ObjFacturaDevolucion.Version = "3.3" ObjFacturaDevolucion.Version = "3.3"
@@ -8350,6 +8366,21 @@ Partial Class Ventas
ObjFacturaBonificacion.FormaPago = 0 ObjFacturaBonificacion.FormaPago = 0
ObjFacturaBonificacion.TipoDocto = "Egs" ObjFacturaBonificacion.TipoDocto = "Egs"
If UsuarioActual.CveEmpresa = 140 Then
Dim ObjFolios As New ClsGralFolios()
Dim TipoDoctoConsulta As String = If(ObjFacturaBonificacion.TipoDocto = "Ant", "Ing", If(ObjFacturaBonificacion.TipoDocto = "PA", "Rem", ObjFacturaBonificacion.TipoDocto))
If ObjFolios.GetFolios(TipoDoctoConsulta, UsuarioActual.CveEmpresa) Then
Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format(" CveSubProyecto = {0} And Estado = 'Activo'", DdlSubProyectoDatos.SelectedValue))
If DT.Rows.Count > 0 Then
ObjFactura.Serie = DT.Rows(0)("Serie").ToString()
End If
DT.Dispose()
End If
ObjFolios.Dispose()
End If
ObjFacturaBonificacion.Fecha = Now ObjFacturaBonificacion.Fecha = Now
ObjFacturaBonificacion.Version = "3.3" ObjFacturaBonificacion.Version = "3.3"
@@ -8763,6 +8794,23 @@ Partial Class Ventas
'ObjFactura.Folio = If(ExFolioFactura, FolioXML.ToEntero(), -1) 'ObjFactura.Folio = If(ExFolioFactura, FolioXML.ToEntero(), -1)
ObjFactura.Serie = If(VistaPrevia, "VistaPrevia", LblSerie.Text) ObjFactura.Serie = If(VistaPrevia, "VistaPrevia", LblSerie.Text)
If UsuarioActual.CveEmpresa = 140 Then
Dim ObjFolios As New ClsGralFolios()
Dim TipoDoctoConsulta As String = If(ObjFactura.TipoDocto = "Ant", "Ing", If(ObjFactura.TipoDocto = "PA", "Rem", ObjFactura.TipoDocto))
If ObjFolios.GetFolios(TipoDoctoConsulta, UsuarioActual.CveEmpresa) Then
Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format(" CveSubProyecto = {0} And Estado = 'Activo'", DdlSubProyectoDatos.SelectedValue))
If DT.Rows.Count > 0 Then
ObjFactura.Serie = DT.Rows(0)("Serie").ToString()
End If
DT.Dispose()
End If
ObjFolios.Dispose()
End If
ObjFactura.Fecha = New Date(TxtFecha.Text.Trim.ToDate.Year, TxtFecha.Text.Trim.ToDate.Month, TxtFecha.Text.Trim.ToDate.Day, Now.Hour, Now.Minute, Now.Second) ObjFactura.Fecha = New Date(TxtFecha.Text.Trim.ToDate.Year, TxtFecha.Text.Trim.ToDate.Month, TxtFecha.Text.Trim.ToDate.Day, Now.Hour, Now.Minute, Now.Second)
ObjFactura.CvePrePoliza = -1 ObjFactura.CvePrePoliza = -1
ObjFactura.CveMetodoPago = 0 'DdlMetodoPago.SelectedValue.ToEntero() ObjFactura.CveMetodoPago = 0 'DdlMetodoPago.SelectedValue.ToEntero()
@@ -9392,6 +9440,7 @@ Partial Class Ventas
'ObjFacturaDevolucion.RefDocto = TxtDocto.Text.Trim 'ObjFacturaDevolucion.RefDocto = TxtDocto.Text.Trim
'ObjFacturaDevolucion.Folio = If(ExFolioFactura, FolioXML.ToEntero(), -1) 'ObjFacturaDevolucion.Folio = If(ExFolioFactura, FolioXML.ToEntero(), -1)
ObjFacturaDevolucion.Serie = LblSerie.Text ObjFacturaDevolucion.Serie = LblSerie.Text
ObjFacturaDevolucion.Fecha = New Date(TxtFecha.Text.Trim.ToDate.Year, TxtFecha.Text.Trim.ToDate.Month, TxtFecha.Text.Trim.ToDate.Day, Now.Hour, Now.Minute, Now.Second) ObjFacturaDevolucion.Fecha = New Date(TxtFecha.Text.Trim.ToDate.Year, TxtFecha.Text.Trim.ToDate.Month, TxtFecha.Text.Trim.ToDate.Day, Now.Hour, Now.Minute, Now.Second)
ObjFacturaDevolucion.CvePrePoliza = -1 ObjFacturaDevolucion.CvePrePoliza = -1
ObjFacturaDevolucion.CveMetodoPago = 0 'DdlMetodoPago.SelectedValue.ToEntero() ObjFacturaDevolucion.CveMetodoPago = 0 'DdlMetodoPago.SelectedValue.ToEntero()
@@ -9406,6 +9455,22 @@ Partial Class Ventas
ObjFacturaDevolucion.FormaPago = 0 ObjFacturaDevolucion.FormaPago = 0
'ObjFacturaDevolucion.SerieFolio = String.Format("{0}-{1}", LblSerie.Text, TxtFolio.Text) 'ObjFacturaDevolucion.SerieFolio = String.Format("{0}-{1}", LblSerie.Text, TxtFolio.Text)
ObjFacturaDevolucion.TipoDocto = "Egs" ObjFacturaDevolucion.TipoDocto = "Egs"
If UsuarioActual.CveEmpresa = 140 Then
Dim ObjFolios As New ClsGralFolios()
Dim TipoDoctoConsulta As String = If(ObjFacturaDevolucion.TipoDocto = "Ant", "Ing", If(ObjFacturaDevolucion.TipoDocto = "PA", "Rem", ObjFacturaDevolucion.TipoDocto))
If ObjFolios.GetFolios(TipoDoctoConsulta, UsuarioActual.CveEmpresa) Then
Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format(" CveSubProyecto = {0} And Estado = 'Activo'", DdlSubProyectoDatos.SelectedValue))
If DT.Rows.Count > 0 Then
ObjFactura.Serie = DT.Rows(0)("Serie").ToString()
End If
DT.Dispose()
End If
ObjFolios.Dispose()
End If
ObjFacturaDevolucion.Fecha = Now ObjFacturaDevolucion.Fecha = Now
@@ -16060,7 +16125,7 @@ Partial Class Ventas
Dim Row As DataRow = Nothing Dim Row As DataRow = Nothing
Dim TotalCalculableImpuestos As Decimal = 0 Dim TotalCalculableImpuestos As Decimal = 0
Dim TotalCalculableImpuestosIVA As Decimal = 0 Dim TotalCalculableImpuestosIVA As Decimal = 0
PU = PU.RoundSQL(6) ' el precio unitario puede llevar hasta 6 decimales permitidos PU = PU.RoundAD(6) ' el precio unitario puede llevar hasta 6 decimales permitidos
Row = TmpDT.NewRow() Row = TmpDT.NewRow()
Row("CveProyecto") = CveProyecto Row("CveProyecto") = CveProyecto
@@ -16186,19 +16251,19 @@ Partial Class Ventas
Row("IVA") = Row("PorcentajeIVA") Row("IVA") = Row("PorcentajeIVA")
Row("ImporteIVA") = (Row("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales) Row("ImporteIVA") = (Row("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundAD(NumeroDecimales)
Row("ImporteRetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundSQL(NumeroDecimales) Row("ImporteRetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundAD(NumeroDecimales)
Row("ImporteRetISR") = (ClienteRetISR * TotalCalculableImpuestos).RoundSQL(NumeroDecimales) Row("ImporteRetISR") = (ClienteRetISR * TotalCalculableImpuestos).RoundAD(NumeroDecimales)
Row("PorcentajeRetIVA") = ClienteRetIVA Row("PorcentajeRetIVA") = ClienteRetIVA
Row("PorcentajeRetISR") = ClienteRetISR Row("PorcentajeRetISR") = ClienteRetISR
Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje") Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
Row("ImporteIEPS") = (DrPS("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos).RoundSQL(NumeroDecimales) Row("ImporteIEPS") = (DrPS("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos).RoundAD(NumeroDecimales)
Row("IEPS") = Row("ImporteIEPS") Row("IEPS") = Row("ImporteIEPS")
Row("Descuento") = (Descuento).RoundSQL(NumeroDecimales) Row("Descuento") = (Descuento).RoundAD(NumeroDecimales)
Row("TipoDescuento") = HdnTipoDescuento.Value Row("TipoDescuento") = HdnTipoDescuento.Value
Row("CvePromocionDetalle") = CvePromocionDetalle Row("CvePromocionDetalle") = CvePromocionDetalle
Row("Total") = (Cantidad * PU) Row("Total") = (Cantidad * PU)
Row("TotalImporte") = (Cantidad * PU).RoundSQL(NumeroDecimales) Row("TotalImporte") = (Cantidad * PU).RoundAD(NumeroDecimales)
'Row("AsientoContableVentas") = DrPS("AsientoContableVentas") 'Row("AsientoContableVentas") = DrPS("AsientoContableVentas")
' Row("IdCtaContVentas") = IdCtaContable ' Row("IdCtaContVentas") = IdCtaContable
@@ -19097,7 +19162,15 @@ Partial Class Ventas
If UsuarioActual.Empresa.Funcionalidad(589) = "1" Then If UsuarioActual.Empresa.Funcionalidad(589) = "1" Then
DdlMetodoPago33.SelectedValueExist("3") DdlMetodoPago33.SelectedValueExist("3")
DdlMetodoPago33.Enabled = False DdlMetodoPago33.Enabled = False
If UsuarioActual.CveEmpresa.Contiene(72, 80, 146) Then
DdlFormaPago33.Enabled = False
DdlFormaPago33.SelectedValueExist("20")
CargaFormaPago(DdlMetodoPago33.SelectedValue.ToEntero())
End If End If
End If
Case 2 'CONTADO Case 2 'CONTADO
If DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem") Or (UsuarioActual.Empresa.Funcionalidad(558).ToEntero() = 1 And DdlTipoComprobante.SelectedValue = "Cot") Then If DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem") Or (UsuarioActual.Empresa.Funcionalidad(558).ToEntero() = 1 And DdlTipoComprobante.SelectedValue = "Cot") Then
DivContado.Visible = True DivContado.Visible = True
@@ -19108,6 +19181,12 @@ Partial Class Ventas
If UsuarioActual.Empresa.Funcionalidad(589) = "1" Then If UsuarioActual.Empresa.Funcionalidad(589) = "1" Then
DdlMetodoPago33.SelectedValueExist("1") DdlMetodoPago33.SelectedValueExist("1")
DdlMetodoPago33.Enabled = False DdlMetodoPago33.Enabled = False
If UsuarioActual.CveEmpresa.Contiene(72, 80, 146) Then
DdlFormaPago33.Enabled = True
CargaFormaPago(DdlMetodoPago33.SelectedValue.ToEntero())
End If
End If End If
Case 3 ' TERMINAL Case 3 ' TERMINAL
DivTerminal.Visible = True DivTerminal.Visible = True
@@ -23515,11 +23594,20 @@ Partial Class Ventas
Dim SaldoMaximoUsados As Decimal = FacUsado.DtDetalle.SUM("Total", "EsCargo = True").ToDecimal() + FacUsado.DtDetalle.SUM("ImporteIVA", "EsCargo = True").ToDecimal() Dim SaldoMaximoUsados As Decimal = FacUsado.DtDetalle.SUM("Total", "EsCargo = True").ToDecimal() + FacUsado.DtDetalle.SUM("ImporteIVA", "EsCargo = True").ToDecimal()
HdnSaldoMaximoUsados.Value = SaldoMaximoUsados.ToString() HdnSaldoMaximoUsados.Value = SaldoMaximoUsados.ToString()
LtlSMU.Text = String.Format("{0:N2}", SaldoMaximoUsados) LtlSMU.Text = String.Format("{0:N2}", SaldoMaximoUsados)
Else
Dim ObjAcum As New ClsAcumuladores
If ObjAcum.GetMovimientosDistribuidorResumen(CveCliente, UsuarioActual.CveEmpresa) Then
Dim RowUsadosNC As DataRow = ObjAcum.DtResultados.Rows(2)
DivSMU.Visible = True
HdnSaldoMaximoUsados.Value = RowUsadosNC("Valor").ToString()
LtlSMU.Text = RowUsadosNC("Valor").ToString().ToDecimal().FormatoNumero(2)
Else Else
DivSMU.Visible = False DivSMU.Visible = False
HdnSaldoMaximoUsados.Value = "0" HdnSaldoMaximoUsados.Value = "0"
LtlSMU.Text = "0" LtlSMU.Text = "0"
End If End If
ObjAcum.Dispose()
End If
UpModalRemisionesNC.Update() UpModalRemisionesNC.Update()
UpDescNC.Update() UpDescNC.Update()
@@ -23966,7 +24054,15 @@ Partial Class Ventas
If UsuarioActual.CveEmpresa = 140 Then If UsuarioActual.CveEmpresa = 140 Then
CrearDTNCCargo(ListaNCDesc, DtImpuestos, TmpDTDescNC, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto) CrearDTNCCargo(ListaNCDesc, DtImpuestos, TmpDTDescNC, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto)
'EN LA NC DE BONIFICACION EL CONCEPTO DEBE SER SIEMPRE 'BONIFICACION POR USADO'
Dim DrPSBonificacion = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=360481).FiltroPrimero("")
If DrPSBonificacion IsNot Nothing Then
CrearDTNCBonificacion(ListaNCDesc, DtImpuestosBonificacion, TmpDTDescNC, DrPSBonificacion, CveProyecto, Proyecto, CveSubProyecto, SubProyecto)
Else
Alert("No se encontró el concepto de BONIFICACION POR USADO", TipoMensaje.MsgAdvertencia)
CrearDTNCBonificacion(ListaNCDesc, DtImpuestosBonificacion, TmpDTDescNC, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto) CrearDTNCBonificacion(ListaNCDesc, DtImpuestosBonificacion, TmpDTDescNC, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto)
End If
Else Else
For Each Dr As DataRow In DtImpuestos.Rows For Each Dr As DataRow In DtImpuestos.Rows
@@ -23998,7 +24094,14 @@ Partial Class Ventas
If UsuarioActual.CveEmpresa = 140 AndAlso ListaRemisionesNC.Count > 0 Then If UsuarioActual.CveEmpresa = 140 AndAlso ListaRemisionesNC.Count > 0 Then
CrearDTNCCargo(ListaRemisionesNC, DtImpuestos, TmpDT, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto) CrearDTNCCargo(ListaRemisionesNC, DtImpuestos, TmpDT, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto)
'EN LA NC DE BONIFICACION EL CONCEPTO DEBE SER SIEMPRE 'BONIFICACION POR USADO'
Dim DrPSBonificacion = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=360481).FiltroPrimero("")
If DrPSBonificacion IsNot Nothing Then
CrearDTNCBonificacion(ListaRemisionesNC, DtImpuestosBonificacion, TmpDT, DrPSBonificacion, CveProyecto, Proyecto, CveSubProyecto, SubProyecto)
Else
Alert("No se encontró el concepto de BONIFICACION POR USADO", TipoMensaje.MsgAdvertencia)
CrearDTNCBonificacion(ListaRemisionesNC, DtImpuestosBonificacion, TmpDT, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto) CrearDTNCBonificacion(ListaRemisionesNC, DtImpuestosBonificacion, TmpDT, DrPS, CveProyecto, Proyecto, CveSubProyecto, SubProyecto)
End If
Else Else
For Each Dr As DataRow In DtImpuestos.Rows For Each Dr As DataRow In DtImpuestos.Rows
@@ -24588,6 +24691,7 @@ Partial Class Ventas
e.Row.FCLabel("LblProyecto").Text = e.Row.FCLabel("LblSubProyecto").Text e.Row.FCLabel("LblProyecto").Text = e.Row.FCLabel("LblSubProyecto").Text
e.Row.FCLabel("LblProyecto").Style.Clear() e.Row.FCLabel("LblProyecto").Style.Clear()
e.Row.FCLabel("LblSubProyecto").Text = "" e.Row.FCLabel("LblSubProyecto").Text = ""
'e.Row.FCCheckBox("ChkAplicar").Attributes.Add("onclick", $"CalculaSaldoRNCChk({e.Row.FCTextBox("TxtImporte").ClientID},{e.Row.DBCampo("Saldo").ToDouble}, this);")
End If End If
End If End If
End Sub End Sub