Merge branch 'master' of http://oirigoyen@192.168.10.111:8383/SIG.git
This commit is contained in:
@@ -5551,7 +5551,6 @@ Public Class ClsContabilidad
|
|||||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||||
.Add("@TipoCambio", SqlDbType.Int).Value = TipoCambio
|
.Add("@TipoCambio", SqlDbType.Int).Value = TipoCambio
|
||||||
.Add("@TCEspecifico", SqlDbType.Float).Value = TCEspecifico
|
.Add("@TCEspecifico", SqlDbType.Float).Value = TCEspecifico
|
||||||
.Add("@Cuenta", SqlDbType.NVarChar).Value = Cuenta
|
|
||||||
End With
|
End With
|
||||||
Try
|
Try
|
||||||
SqlAdapter.Fill(Data)
|
SqlAdapter.Fill(Data)
|
||||||
|
|||||||
@@ -1075,7 +1075,7 @@ Public Class ClsPaginas
|
|||||||
|
|
||||||
End Get
|
End Get
|
||||||
Set(ByVal value As DataTable)
|
Set(ByVal value As DataTable)
|
||||||
Dim AppNombre As String = String.Format("GlobalDTSubProyectosUsuarios-{0}", CveEmpresa)
|
Dim AppNombre As String = String.Format("GlobalDTProyectosUsuarios-{0}", CveEmpresa)
|
||||||
Application(AppNombre) = value
|
Application(AppNombre) = value
|
||||||
End Set
|
End Set
|
||||||
End Property
|
End Property
|
||||||
@@ -6713,6 +6713,17 @@ Public Class ClsPaginas
|
|||||||
params.Add(New ReportParameter("ClienteDatoExtra1", DatosCliente))
|
params.Add(New ReportParameter("ClienteDatoExtra1", DatosCliente))
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'ECONOLLANTAS - AGREGAR QR DE DESCARGA
|
||||||
|
If UsuarioActual.CveEmpresa = 141 Then
|
||||||
|
Dim QRDescarga As String = ""
|
||||||
|
|
||||||
|
Dim cfdi As New RVCFDI33.GeneraCFDI()
|
||||||
|
Dim b As Byte() = cfdi.ConvertirQrCode($"http://econollantas.adssistemas.mx/Ashx/E141.ashx?P={Encripta($"File={Vta.SerieFolio}.pdf")}")
|
||||||
|
QRDescarga = Convert.ToBase64String(b)
|
||||||
|
|
||||||
|
params.Add(New ReportParameter("QRDescarga", QRDescarga))
|
||||||
|
End If
|
||||||
|
|
||||||
'INE COMPLEMENTOS
|
'INE COMPLEMENTOS
|
||||||
If UsuarioActual.CveEmpresa.Contiene(72, 1) Then
|
If UsuarioActual.CveEmpresa.Contiene(72, 1) Then
|
||||||
Dim INETipoProceso As String = ""
|
Dim INETipoProceso As String = ""
|
||||||
|
|||||||
@@ -551,6 +551,8 @@ Namespace Modelos
|
|||||||
Public Property SeTimbro As Boolean
|
Public Property SeTimbro As Boolean
|
||||||
Public Property SeTimbroNotaCredito As Boolean
|
Public Property SeTimbroNotaCredito As Boolean
|
||||||
Public Property CveEstatus As Integer
|
Public Property CveEstatus As Integer
|
||||||
|
Public Property CveMovimientoUsado As Integer
|
||||||
|
Public Property FolioUsado As String
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
Public Function RegenerarPrePolizas(Optional TransaccionCompartida As SqlClient.SqlTransaction = Nothing, Optional ObjACTransac As ClsContPAQi = Nothing) As Boolean
|
Public Function RegenerarPrePolizas(Optional TransaccionCompartida As SqlClient.SqlTransaction = Nothing, Optional ObjACTransac As ClsContPAQi = Nothing) As Boolean
|
||||||
@@ -707,7 +709,7 @@ Namespace Modelos
|
|||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
|
||||||
GuardarVenta(Me, ObjVentas, ObjConta, ObjInventario, ObjContr, DtDetalle, Me.CveNCaVincular, ObjContPaq, ObjBancos, ObjOS, ObjEventos, ObjCGame, ObjClientes, ObjAcum:=ObjAcum)
|
GuardarVenta(Me, ObjVentas, ObjConta, ObjInventario, ObjContr, DtDetalle, Me.CveNCaVincular, ObjContPaq, ObjBancos, ObjOS, ObjEventos, ObjCGame, ObjClientes, ObjAcum:=ObjAcum, Resp:=Retorno)
|
||||||
|
|
||||||
'SI ES REFACTURACION
|
'SI ES REFACTURACION
|
||||||
Dim ObjNC As List(Of Object) = Nothing
|
Dim ObjNC As List(Of Object) = Nothing
|
||||||
@@ -1341,7 +1343,7 @@ Namespace Modelos
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
Public Sub GuardarVenta(ByRef factura As Modelos.Factura, ByRef ObjVentas As ClsVentas, ByRef ObjConta As ClsContabilidad, ByRef ObjInventario As ClsInventarios, ByRef ObjContr As ClsContratos, ByRef TmpDTDetalle As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, Optional ByRef ObjOS As ClsOS = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, ByRef Optional ObjCGame As ClsCGame = Nothing, ByRef Optional ObjCliente As ClsClientes = Nothing, Optional EsNotaCredito As Boolean = False, Optional ObjAcum As ClsAcumuladores = Nothing)
|
Public Sub GuardarVenta(ByRef factura As Modelos.Factura, ByRef ObjVentas As ClsVentas, ByRef ObjConta As ClsContabilidad, ByRef ObjInventario As ClsInventarios, ByRef ObjContr As ClsContratos, ByRef TmpDTDetalle As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, Optional ByRef ObjOS As ClsOS = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, ByRef Optional ObjCGame As ClsCGame = Nothing, ByRef Optional ObjCliente As ClsClientes = Nothing, Optional EsNotaCredito As Boolean = False, Optional ObjAcum As ClsAcumuladores = Nothing, ByRef Optional Resp As MMensajeFactura = Nothing)
|
||||||
Dim Msgok As New StringBuilder
|
Dim Msgok As New StringBuilder
|
||||||
|
|
||||||
factura.CvePrePoliza = ObjConta.AddPrePolizas("Modelos/GuardarVentaM", factura.CvePlantillaPoliza, factura.TotalTC, factura.TotalTC, factura.CveMoneda, factura.Fecha, If(factura.CveEmpresaCRM > 0, factura.EmpresaCRM, factura.Cliente.Nombre), factura.CveUsuario, factura.CveEmpresa)
|
factura.CvePrePoliza = ObjConta.AddPrePolizas("Modelos/GuardarVentaM", factura.CvePlantillaPoliza, factura.TotalTC, factura.TotalTC, factura.CveMoneda, factura.Fecha, If(factura.CveEmpresaCRM > 0, factura.EmpresaCRM, factura.Cliente.Nombre), factura.CveUsuario, factura.CveEmpresa)
|
||||||
@@ -1375,11 +1377,6 @@ Namespace Modelos
|
|||||||
factura.Timbre.Comprobante.Serie = ObjVentas.Serie
|
factura.Timbre.Comprobante.Serie = ObjVentas.Serie
|
||||||
factura.Timbre.Comprobante.Folio = ObjVentas.Folio.ToString
|
factura.Timbre.Comprobante.Folio = ObjVentas.Folio.ToString
|
||||||
|
|
||||||
|
|
||||||
If Not GuardarUsados(ObjVentas.IniciaTransacSQL, ObjVentas, factura) Then
|
|
||||||
ErrorList.Add("Error al guardar usados")
|
|
||||||
End If
|
|
||||||
|
|
||||||
If factura.TipoDocto = "Egs" AndAlso NuevaFactura = 1 Then
|
If factura.TipoDocto = "Egs" AndAlso NuevaFactura = 1 Then
|
||||||
If DtVentasNC Is Nothing Then
|
If DtVentasNC Is Nothing Then
|
||||||
InicializaDTVentasNC()
|
InicializaDTVentasNC()
|
||||||
@@ -1452,6 +1449,11 @@ Namespace Modelos
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
'GUARDAR USADOS
|
||||||
|
If Not GuardarUsados(ObjAcum, ObjVentas, ObjInventario, factura, Resp) Then
|
||||||
|
ErrorList.Add("Error al guardar usados")
|
||||||
|
End If
|
||||||
|
|
||||||
'BONIFICACION USADOS
|
'BONIFICACION USADOS
|
||||||
If UsadosBonificacion IsNot Nothing AndAlso UsadosBonificacion.Count > 0 AndAlso TipoBonificacion > 0 Then
|
If UsadosBonificacion IsNot Nothing AndAlso UsadosBonificacion.Count > 0 AndAlso TipoBonificacion > 0 Then
|
||||||
For Each CveMovto In UsadosBonificacion
|
For Each CveMovto In UsadosBonificacion
|
||||||
@@ -1627,10 +1629,10 @@ Namespace Modelos
|
|||||||
|
|
||||||
If ErrorList.Count = 0 Then
|
If ErrorList.Count = 0 Then
|
||||||
'prepoliza
|
'prepoliza
|
||||||
GuardarVentaPrePolizas(factura, ObjConta, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos)
|
GuardarVentaPrePolizas(factura, ObjConta, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, ObjInventario:=ObjInventario)
|
||||||
If ErrorList.Count = 0 Then
|
If ErrorList.Count = 0 Then
|
||||||
'inventarios
|
'inventarios
|
||||||
GuardarVentaInventarios(factura, ObjInventario, ObjConta)
|
GuardarVentaInventarios(factura, ObjInventario, ObjConta, ObjVentas, ObjAcum)
|
||||||
|
|
||||||
'GuardaRecepcionUsados(factura, ObjInventario, ObjConta)
|
'GuardaRecepcionUsados(factura, ObjInventario, ObjConta)
|
||||||
|
|
||||||
@@ -1910,7 +1912,7 @@ Namespace Modelos
|
|||||||
DtVentasNC.Rows.Add(Dr)
|
DtVentasNC.Rows.Add(Dr)
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Function GuardarUsados(SqlTransaccion As SqlClient.SqlTransaction, ByRef ObjVentas As ClsVentas, factura As Modelos.Factura) As Boolean
|
Private Function GuardarUsados(ByRef ObjAcum As ClsAcumuladores, ByRef ObjVentas As ClsVentas, ByRef ObjInventario As ClsInventarios, factura As Modelos.Factura, ByRef Optional Resp As MMensajeFactura = Nothing) As Boolean
|
||||||
Dim Resultado As Boolean = True
|
Dim Resultado As Boolean = True
|
||||||
|
|
||||||
If UsuarioActual.Empresa.Funcionalidad(533).ToEntero > 0 AndAlso factura.TipoDocto.Contiene("Ing", "Rem") Then
|
If UsuarioActual.Empresa.Funcionalidad(533).ToEntero > 0 AndAlso factura.TipoDocto.Contiene("Ing", "Rem") Then
|
||||||
@@ -1918,8 +1920,6 @@ Namespace Modelos
|
|||||||
If factura.TipoDocto = "Ing" AndAlso factura.Cliente.EsDistribuidor Then
|
If factura.TipoDocto = "Ing" AndAlso factura.Cliente.EsDistribuidor Then
|
||||||
Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero
|
Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero
|
||||||
|
|
||||||
Dim ObjAcum As New ClsAcumuladores(SqlTransaccion)
|
|
||||||
|
|
||||||
For Each drow As DataRow In factura.DtDetalle.Rows
|
For Each drow As DataRow In factura.DtDetalle.Rows
|
||||||
If drow("CveTamaño").ToString.ToEntero > 0 And (CvePSPSA <> drow("CvePS").ToString.ToEntero) Then
|
If drow("CveTamaño").ToString.ToEntero > 0 And (CvePSPSA <> drow("CvePS").ToString.ToEntero) Then
|
||||||
If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, drow("Cantidad").ToString.ToEntero, drow("CveTamaño").ToString.ToEntero, 2, factura.CveVenta, UsuarioActual.CveUsuario,
|
If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, drow("Cantidad").ToString.ToEntero, drow("CveTamaño").ToString.ToEntero, 2, factura.CveVenta, UsuarioActual.CveUsuario,
|
||||||
@@ -1944,6 +1944,64 @@ Namespace Modelos
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'SI ES UNA RNC DE CARGO GENERA EL MOVIMIENTO DE ALMACEN AQUI
|
||||||
|
If factura.TipoDocto = "RNC" AndAlso factura.Num1 = 1 AndAlso factura.DtMovimientosUsados IsNot Nothing AndAlso ObjAcum IsNot Nothing Then
|
||||||
|
'Dim Mensaje As String = ""
|
||||||
|
Dim CveMovimiento = ObjInventario.AddMovimiento(factura.CveAlmacen, factura.CveConceptoMovimiento, 1, factura.Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, factura.CveVenta,
|
||||||
|
CveSubProyecto, CveActivoFijo:=-1, Guia:="", Observaciones:=factura.ObservacionesMovimiento, CvePersonal:=-1, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, Modulo:="RU/G")
|
||||||
|
If CveMovimiento <= 0 Then
|
||||||
|
'Mensaje = "Error al guardar los movimientos"
|
||||||
|
Resultado = False
|
||||||
|
Else
|
||||||
|
|
||||||
|
|
||||||
|
For Each Dr As DataRow In factura.DtMovimientosUsados.Rows
|
||||||
|
|
||||||
|
Dim ImporteConcepto As Decimal = 0
|
||||||
|
If factura.CveConceptoMovimiento = 42 AndAlso factura.CveMoneda = 2 Then
|
||||||
|
ImporteConcepto = Dr("PU").ToString.ToDecimal * GlobalTipoCambio(factura.Fecha).ToDecimal
|
||||||
|
Else
|
||||||
|
ImporteConcepto = Dr("PU").ToString.ToDecimal
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
|
||||||
|
'Mensaje = "Error al guardar los movimientos"
|
||||||
|
Resultado = False
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
|
||||||
|
If CveVenta > 0 AndAlso Not ObjVentas.UpdateVentaUsadoRecibido(CveVenta, Dr("CvePS").ToString.ToEntero, True, CveMovimiento) Then
|
||||||
|
'Mensaje = "Error al actualizar el recibo de los usados"
|
||||||
|
Resultado = False
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
|
||||||
|
'si es selectedvalue = 42, es entrada ,3 -salida
|
||||||
|
Dim CveConceptoUsados As Integer = If(factura.CveConceptoMovimiento = 42, 1, 2)
|
||||||
|
|
||||||
|
If factura.Cliente.EsDistribuidor AndAlso factura.CveConceptoMovimiento = 42 AndAlso Dr("CveTamaño").ToString.ToEntero > 0 Then
|
||||||
|
|
||||||
|
If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, Dr("Cantidad").ToString.ToEntero(), Dr("CveTamaño").ToString.ToEntero, CveConceptoUsados, CveVenta, UsuarioActual.CveUsuario,
|
||||||
|
UsuarioActual.CveEmpresa, 0, Dr("Observaciones").ToString, CveMovimiento:=CveMovimiento) Then
|
||||||
|
' Mensaje = "Error al guardar Movimientos de distribuidor"
|
||||||
|
Resultado = False
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
|
Resp.CveMovimientoUsado = CveMovimiento
|
||||||
|
|
||||||
|
If CveMovimiento > 0 Then
|
||||||
|
If ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa) Then
|
||||||
|
Resp.FolioUsado = ObjInventario.DtResultados.FiltroPrimeroValor("Folio")
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
Return Resultado
|
Return Resultado
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
@@ -1968,7 +2026,7 @@ Namespace Modelos
|
|||||||
Return Resultado
|
Return Resultado
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
Private Sub GuardarVentaPrePolizas(ByRef factura As Modelos.Factura, ByRef ObjConta As ClsContabilidad, TmpDTDetalleMovimientos As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing)
|
Private Sub GuardarVentaPrePolizas(ByRef factura As Modelos.Factura, ByRef ObjConta As ClsContabilidad, TmpDTDetalleMovimientos As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, ByRef Optional ObjInventario As ClsInventarios = Nothing)
|
||||||
|
|
||||||
Dim CveIE As Integer = -1
|
Dim CveIE As Integer = -1
|
||||||
Dim DT As DataTable = Nothing
|
Dim DT As DataTable = Nothing
|
||||||
@@ -1986,7 +2044,7 @@ Namespace Modelos
|
|||||||
'P R E P O L I Z A S
|
'P R E P O L I Z A S
|
||||||
If Me.TipoDocto <> "Cot" Then
|
If Me.TipoDocto <> "Cot" Then
|
||||||
If Me.CvePrePoliza > 0 Then
|
If Me.CvePrePoliza > 0 Then
|
||||||
If ProcesoPrepolizas(factura, ObjConta, CveIE, TmpDTDetalleMovimientos, objContPaqi, 1, ObjBancos, ObjVentas, ObjEventos:=ObjEventos) Then
|
If ProcesoPrepolizas(factura, ObjConta, CveIE, TmpDTDetalleMovimientos, objContPaqi, 1, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, ObjInventario:=ObjInventario) Then
|
||||||
ErrorList.Add("Ocurrió un error al agregar los Movimientos de la prepoliza.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
|
ErrorList.Add("Ocurrió un error al agregar los Movimientos de la prepoliza.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
@@ -1997,7 +2055,7 @@ Namespace Modelos
|
|||||||
Private Function ProcesoPrepolizas(ObjFactura As Factura, ByRef ObjConta As ClsContabilidad, CveIE As Integer, TmpDTDetalle As DataTable, ByRef objContPaqi As ClsContPAQi,
|
Private Function ProcesoPrepolizas(ObjFactura As Factura, ByRef ObjConta As ClsContabilidad, CveIE As Integer, TmpDTDetalle As DataTable, ByRef objContPaqi As ClsContPAQi,
|
||||||
Optional ValorMultiplicador As Integer = 1, ByRef Optional ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing,
|
Optional ValorMultiplicador As Integer = 1, ByRef Optional ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing,
|
||||||
Optional ByRef DtRemisionesRelacionadas As DataTable = Nothing, Optional SeCancelaRemisionProceso As Boolean = False, Optional CancelarRemisiones As Boolean = False, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing,
|
Optional ByRef DtRemisionesRelacionadas As DataTable = Nothing, Optional SeCancelaRemisionProceso As Boolean = False, Optional CancelarRemisiones As Boolean = False, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing,
|
||||||
Optional CveEstatusRefacturacion As Integer = 0) As Boolean
|
Optional CveEstatusRefacturacion As Integer = 0, Optional ByRef ObjInventario As ClsInventarios = Nothing) As Boolean
|
||||||
Dim ErrorPrepoliza As Boolean = False
|
Dim ErrorPrepoliza As Boolean = False
|
||||||
Try
|
Try
|
||||||
Dim DT As DataTable
|
Dim DT As DataTable
|
||||||
@@ -2177,12 +2235,48 @@ Namespace Modelos
|
|||||||
IdCtaContableCliente = IdCtaContable
|
IdCtaContableCliente = IdCtaContable
|
||||||
CveCuentaCliente = CveCuenta
|
CveCuentaCliente = CveCuenta
|
||||||
|
|
||||||
If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
Dim CveMovimiento As Integer = -1
|
||||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 278, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
Dim CveAlmacen As Integer = -1
|
||||||
|
|
||||||
|
If ObjInventario IsNot Nothing AndAlso ObjInventario.GetInv_Mov(ObjFactura.CveVenta, UsuarioActual.CveEmpresa) Then
|
||||||
|
CveMovimiento = ObjInventario.DtResultados.FiltroPrimeroValor("CveMovimiento", "CvePS IS NULL AND CveConcepto = 42").ToEntero()
|
||||||
|
CveAlmacen = ObjInventario.DtResultados.FiltroPrimeroValor("CveAlmacen", "CvePS IS NULL AND CveConcepto = 42").ToEntero()
|
||||||
|
End If
|
||||||
|
|
||||||
|
'VERIFICA SI TIENE MOVIMIENTO DE ENTRADA DE USADO
|
||||||
|
If CveMovimiento > 0 AndAlso CveAlmacen > 0 Then
|
||||||
|
|
||||||
|
If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then
|
||||||
|
Dim Importe68 As Decimal = ObjInventario.DtResultados.SUMD("Total").RoundSQL
|
||||||
|
|
||||||
|
Dim IdCtaContable68 = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen={CveAlmacen}").ToEntero
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, Importe68, Referencia, 68, Concepto, FechaMovimiento, IdCtaContable68, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=Importe68, Contabilizable:=False) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim Importe318 As Decimal = importeMovimiento - Importe68
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, Importe318, Referencia, 318, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=Importe318, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
Else
|
||||||
ErrorPrepoliza = True
|
ErrorPrepoliza = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
ErrorPrepoliza = True
|
If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 278, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
importeMovimiento = 0
|
importeMovimiento = 0
|
||||||
@@ -3487,7 +3581,7 @@ Namespace Modelos
|
|||||||
Return OcurrioError
|
Return OcurrioError
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Function GuardarVentaInventarios(ByRef factura As Modelos.Factura, ObjInventario As ClsInventarios, ObjConta As ClsContabilidad) As Boolean
|
Private Function GuardarVentaInventarios(ByRef factura As Modelos.Factura, ObjInventario As ClsInventarios, ObjConta As ClsContabilidad, ObjVentas As ClsVentas, ObjAcum As ClsAcumuladores) As Boolean
|
||||||
Dim OcurrioError As Boolean = False
|
Dim OcurrioError As Boolean = False
|
||||||
|
|
||||||
If UsuarioActual.Empresa.UsaInventarios AndAlso factura.TipoDocto.Contiene("Ing", "Egs", "Rem") Then
|
If UsuarioActual.Empresa.UsaInventarios AndAlso factura.TipoDocto.Contiene("Ing", "Egs", "Rem") Then
|
||||||
@@ -4311,7 +4405,7 @@ Namespace Modelos
|
|||||||
If CveEstatusFacturaAsignado <= 0 Then
|
If CveEstatusFacturaAsignado <= 0 Then
|
||||||
Try
|
Try
|
||||||
If ObjFactura.FolioFiscal <> "" Then
|
If ObjFactura.FolioFiscal <> "" Then
|
||||||
If ObjFactura.TipoDocto.Contiene("Ing", "Ant", "Dev", "Egs", "RNC") Then
|
If ObjFactura.TipoDocto.Contiene("Ing", "Ant", "Dev", "Egs") Then
|
||||||
|
|
||||||
Dim Vigencia = Timbrado.VerificarVigenciaSAT(FolioFiscal, UsuarioActual.Empresa.RFC, RFCReceptor, TotalT.ToString(), UsuarioActual.Empresa.FacturaProduccion)
|
Dim Vigencia = Timbrado.VerificarVigenciaSAT(FolioFiscal, UsuarioActual.Empresa.RFC, RFCReceptor, TotalT.ToString(), UsuarioActual.Empresa.FacturaProduccion)
|
||||||
|
|
||||||
@@ -4891,6 +4985,8 @@ Namespace Modelos
|
|||||||
CveEstatus = 12
|
CveEstatus = 12
|
||||||
Case "Com"
|
Case "Com"
|
||||||
CveEstatus = 9
|
CveEstatus = 9
|
||||||
|
Case "Cot"
|
||||||
|
CveEstatus = 10
|
||||||
Case "Ped", "DPe"
|
Case "Ped", "DPe"
|
||||||
CveEstatus = 14
|
CveEstatus = 14
|
||||||
End Select
|
End Select
|
||||||
@@ -5591,6 +5687,7 @@ Namespace Modelos
|
|||||||
Public Property FacturaMateriales As Integer
|
Public Property FacturaMateriales As Integer
|
||||||
Public Property TipoDescuento As Integer
|
Public Property TipoDescuento As Integer
|
||||||
Public Property SubProyectoPorcentajeIVA As Double
|
Public Property SubProyectoPorcentajeIVA As Double
|
||||||
|
Public Property PorcentajeIVA As Double
|
||||||
Public Property CveAlmacenOrigenContrato As Integer
|
Public Property CveAlmacenOrigenContrato As Integer
|
||||||
Public Property CveDevolucion As Integer
|
Public Property CveDevolucion As Integer
|
||||||
Public Property TotalOtrosConceptos As Decimal
|
Public Property TotalOtrosConceptos As Decimal
|
||||||
@@ -5604,6 +5701,9 @@ Namespace Modelos
|
|||||||
Public Property CveAnticipo As Integer
|
Public Property CveAnticipo As Integer
|
||||||
Public Property RemisionesLista As List(Of Integer)
|
Public Property RemisionesLista As List(Of Integer)
|
||||||
Public Property CveAlmacen As Integer
|
Public Property CveAlmacen As Integer
|
||||||
|
Public Property CveConceptoMovimiento As Integer
|
||||||
|
Public Property ObservacionesMovimiento As String
|
||||||
|
Public Property DtMovimientosUsados As DataTable
|
||||||
Public Property CveAlmacenDevolucion As Integer
|
Public Property CveAlmacenDevolucion As Integer
|
||||||
Public Property CveVenta As Integer
|
Public Property CveVenta As Integer
|
||||||
Public Property CveEmpresa As Integer
|
Public Property CveEmpresa As Integer
|
||||||
@@ -5982,14 +6082,16 @@ Namespace Modelos
|
|||||||
Public Property FemsaFactura As Modelos.FemsaFactura
|
Public Property FemsaFactura As Modelos.FemsaFactura
|
||||||
|
|
||||||
Public Sub SetSubProyecto()
|
Public Sub SetSubProyecto()
|
||||||
If CveSubProyecto > 0 Then
|
If CveSubProyecto > 0 AndAlso UsuarioActual IsNot Nothing Then
|
||||||
SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}"))
|
SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}"))
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Public Sub SetSubProyectoMatriz()
|
Public Sub SetSubProyectoMatriz()
|
||||||
Dim Row As Data.DataRow = GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1")
|
If UsuarioActual IsNot Nothing Then
|
||||||
If Not IsNothing(Row) Then
|
Dim Row As Data.DataRow = GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1")
|
||||||
SubProyectoMatriz = New Modelos.SubProyectoModel(Row)
|
If Not IsNothing(Row) Then
|
||||||
|
SubProyectoMatriz = New Modelos.SubProyectoModel(Row)
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Public Sub SetCliente()
|
Public Sub SetCliente()
|
||||||
@@ -6033,7 +6135,7 @@ Namespace Modelos
|
|||||||
End Sub
|
End Sub
|
||||||
Public Sub SetSubProyecto(obj As ClsPaginas)
|
Public Sub SetSubProyecto(obj As ClsPaginas)
|
||||||
If CveSubProyecto > 0 AndAlso Not IsNothing(obj) Then
|
If CveSubProyecto > 0 AndAlso Not IsNothing(obj) Then
|
||||||
SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}"))
|
SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveEmpresa:=obj.UsuarioActual.CveEmpresa).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}"))
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Public Sub SetSubProyectoMatriz(obj As ClsPaginas)
|
Public Sub SetSubProyectoMatriz(obj As ClsPaginas)
|
||||||
|
|||||||
135
Ashx/E141.ashx
Normal file
135
Ashx/E141.ashx
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
<%@ WebHandler Language="VB" Class="E141" %>
|
||||||
|
|
||||||
|
Imports System
|
||||||
|
Imports System.Web
|
||||||
|
Imports System.Data
|
||||||
|
Imports System.Net.Http
|
||||||
|
Imports Newtonsoft.Json
|
||||||
|
Imports Newtonsoft.Json.Linq
|
||||||
|
Imports Extensiones
|
||||||
|
Imports System.IO
|
||||||
|
|
||||||
|
Public Class E141 : Implements IHttpHandler
|
||||||
|
|
||||||
|
Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
|
||||||
|
Get
|
||||||
|
Return False
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
|
|
||||||
|
Private ReadOnly Property CveEmpresa As Integer = 141
|
||||||
|
|
||||||
|
Public ReadOnly Property EsProduccion As Boolean
|
||||||
|
Get
|
||||||
|
If IsNothing(System.Configuration.ConfigurationManager.AppSettings("EsProduccion")) Then
|
||||||
|
Return False
|
||||||
|
Else
|
||||||
|
Return (System.Configuration.ConfigurationManager.AppSettings("EsProduccion").ToString() = "1")
|
||||||
|
End If
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
|
|
||||||
|
Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
|
||||||
|
Dim retorno As String = "no se encontro la variable"
|
||||||
|
Try
|
||||||
|
Dim Params = If(context.Request("P") = Nothing, "", context.Request("P").ToString())
|
||||||
|
|
||||||
|
If Not String.IsNullOrEmpty(Params) Then
|
||||||
|
Dim UrlParametros As Hashtable = Parametros(Decripta(Params))
|
||||||
|
|
||||||
|
Dim File As String = UrlParametros("FILE").ToString()
|
||||||
|
If Not String.IsNullOrEmpty(File) Then
|
||||||
|
ImprimirbytesPDF(context, DescargarFactura(File), File)
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
retorno = ex.ToString()
|
||||||
|
ex.GuardaLog(ex.ToString())
|
||||||
|
context.Response.Write(retorno)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
'Private Function DescargarFactura(CveVenta As Integer) As Byte()
|
||||||
|
' Dim Url = New Uri(String.Format("{0}Compras/PopUpVerFactura.aspx?P={1}", ClsPaginas.UrlSitio, Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=0", CveVenta))))
|
||||||
|
' Dim File As Byte() = Nothing
|
||||||
|
' Try
|
||||||
|
' Using httpClient = New HttpClient()
|
||||||
|
' httpClient.Timeout = New TimeSpan(0, 15, 0)
|
||||||
|
' Using request = New HttpRequestMessage(HttpMethod.Get, Url)
|
||||||
|
' request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CVEUSUARIO=100", CveEmpresa, DateTime.UtcNow.Ticks)))
|
||||||
|
' Dim response = httpClient.SendAsync(request).Result
|
||||||
|
' If response.StatusCode = Net.HttpStatusCode.OK Then
|
||||||
|
' File = response.Content.ReadAsByteArrayAsync().Result
|
||||||
|
' End If
|
||||||
|
' End Using
|
||||||
|
' End Using
|
||||||
|
' Catch ex As Exception
|
||||||
|
' File = Nothing
|
||||||
|
' OnError("Ocurrió un error al descargar la factura", ex)
|
||||||
|
' End Try
|
||||||
|
|
||||||
|
' Return File
|
||||||
|
'End Function
|
||||||
|
|
||||||
|
Private Function DescargarFactura(FilePDF As String) As Byte()
|
||||||
|
Dim Url = New Uri(String.Format("{0}Compras/PopUpVerFactura.aspx?TipoDocto=Ing&File={1}&TipoArchivo=PDF", "http://localhost/", FilePDF))
|
||||||
|
Dim File As Byte() = Nothing
|
||||||
|
Try
|
||||||
|
Using httpClient = New HttpClient()
|
||||||
|
httpClient.Timeout = New TimeSpan(0, 1, 0)
|
||||||
|
Using request = New HttpRequestMessage(HttpMethod.Get, Url)
|
||||||
|
request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CVEUSUARIO=100", CveEmpresa, DateTime.UtcNow.Ticks)))
|
||||||
|
Dim response = httpClient.SendAsync(request).Result
|
||||||
|
If response.StatusCode = Net.HttpStatusCode.OK Then
|
||||||
|
File = response.Content.ReadAsByteArrayAsync().Result
|
||||||
|
End If
|
||||||
|
End Using
|
||||||
|
End Using
|
||||||
|
Catch ex As Exception
|
||||||
|
File = Nothing
|
||||||
|
OnError("Ocurrió un error al descargar la factura", ex)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
Return File
|
||||||
|
End Function
|
||||||
|
|
||||||
|
Public Sub ImprimirbytesPDF(ByVal context As HttpContext, bytes As Byte(), NombreArchivo As String)
|
||||||
|
'limpio ReportViwer
|
||||||
|
Dim mimeType As String = Nothing
|
||||||
|
Dim extension As String = Nothing
|
||||||
|
|
||||||
|
Try
|
||||||
|
|
||||||
|
bytes = bytes
|
||||||
|
context.Response.Buffer = True
|
||||||
|
context.Response.Clear()
|
||||||
|
context.Response.ContentType = mimeType
|
||||||
|
context.Response.AddHeader("content-disposition", String.Format("attachment; filename={0}", NombreArchivo))
|
||||||
|
context.Response.BinaryWrite(bytes) ' create the file
|
||||||
|
context.Response.Flush() ' send it to the client to download
|
||||||
|
context.Response.SuppressContent = True
|
||||||
|
context.ApplicationInstance.CompleteRequest()
|
||||||
|
context.Response.End()
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Function Parametros(Cadena As String) As Hashtable
|
||||||
|
Dim P1() As String = Cadena.Split("&"c)
|
||||||
|
Dim Tmp As String
|
||||||
|
Dim P2() As String
|
||||||
|
|
||||||
|
Dim URLParametros As New Hashtable
|
||||||
|
|
||||||
|
For Each Tmp In P1
|
||||||
|
P2 = Tmp.Replace("%26%", "&").Split("="c)
|
||||||
|
URLParametros.Add(P2(0).ToString.ToUpper, P2(1))
|
||||||
|
Next
|
||||||
|
Return URLParametros
|
||||||
|
End Function
|
||||||
|
|
||||||
|
End Class
|
||||||
@@ -344,7 +344,7 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt
|
|||||||
Dim DtDetalle As DataTable = Nothing
|
Dim DtDetalle As DataTable = Nothing
|
||||||
Dim objContratos As New ClsContratos
|
Dim objContratos As New ClsContratos
|
||||||
If objContratos.GetContratosDetalle(DR("CveContrato").ToString.ToEntero) Then
|
If objContratos.GetContratosDetalle(DR("CveContrato").ToString.ToEntero) Then
|
||||||
DtDetalle = objContratos.DtResultados
|
DtDetalle = objContratos.DtResultados.FiltraParametros("CveTipoPresupuesto=2")
|
||||||
Else
|
Else
|
||||||
DtDetalle = Nothing
|
DtDetalle = Nothing
|
||||||
End If
|
End If
|
||||||
|
|||||||
@@ -1657,19 +1657,18 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
importeMX = 0
|
importeMX = 0
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
|
ImporteMovimiento = gvr.DataKey("IVAPorPagar").ToDecimal * PorcentajePago
|
||||||
|
|
||||||
|
|
||||||
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento
|
importeMX = ImporteMovimiento
|
||||||
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
End If
|
End If
|
||||||
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
||||||
@@ -1723,19 +1722,18 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
importeMX = 0
|
importeMX = 0
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
|
ImporteMovimiento = gvr.DataKey("IVAPorPagar").ToDecimal * PorcentajePago
|
||||||
|
|
||||||
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento
|
importeMX = ImporteMovimiento
|
||||||
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
||||||
End If
|
End If
|
||||||
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
||||||
@@ -1760,9 +1758,9 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
IdCtaContable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0)
|
IdCtaContable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0)
|
||||||
|
|
||||||
'se registra el iva no acreditable
|
'se registra el iva no acreditable
|
||||||
If gvr.DataKey("IVANoDeducible").ToDecimal > 0 Then
|
If gvr.DataKey("IVAPorPagarNoDeducible").ToDecimal > 0 Then
|
||||||
|
|
||||||
Dim ImporteNOIVA As Decimal = gvr.DataKey("IVANoDeducible").ToDecimal * PorcentajePago
|
Dim ImporteNOIVA As Decimal = gvr.DataKey("IVAPorPagarNoDeducible").ToDecimal * PorcentajePago
|
||||||
|
|
||||||
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteNOIVA, Referencia, 280, ConceptoMovimiento, FechaMovimiento, IdCtaContableNoIVA, -1, CveIE, CveCompra:=gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedor, ImporteMX:=ImporteNOIVA, ImporteME:=If(TipoCambioPago = 1, 0, ImporteMovimiento), CveCuenta:=CveCuenta, TipoCambio:=TipoCambioGeneral, PorcentajeImpuesto:=PorcentajeImpuesto) Then
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteNOIVA, Referencia, 280, ConceptoMovimiento, FechaMovimiento, IdCtaContableNoIVA, -1, CveIE, CveCompra:=gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedor, ImporteMX:=ImporteNOIVA, ImporteME:=If(TipoCambioPago = 1, 0, ImporteMovimiento), CveCuenta:=CveCuenta, TipoCambio:=TipoCambioGeneral, PorcentajeImpuesto:=PorcentajeImpuesto) Then
|
||||||
MsgError = "No se pudo insertar la póliza"
|
MsgError = "No se pudo insertar la póliza"
|
||||||
@@ -1778,19 +1776,16 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
End If
|
End If
|
||||||
Case 25 'IEPS X Acreditar
|
Case 25 'IEPS X Acreditar
|
||||||
Dim TotalImporte As Decimal = gvr.FCTextBox("TxtAbonar").Text.ToDecimal
|
Dim TotalImporte As Decimal = gvr.FCTextBox("TxtAbonar").Text.ToDecimal
|
||||||
|
ImporteMovimiento = gvr.DataKey("IEPSPorPagar").ToDecimal * PorcentajePago
|
||||||
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento
|
importeMX = ImporteMovimiento
|
||||||
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
End If
|
End If
|
||||||
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
||||||
@@ -1806,19 +1801,16 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
End If
|
End If
|
||||||
Case 26 'IEPS Acreditable
|
Case 26 'IEPS Acreditable
|
||||||
Dim TotalImporte As Decimal = gvr.FCTextBox("TxtAbonar").Text.ToDecimal
|
Dim TotalImporte As Decimal = gvr.FCTextBox("TxtAbonar").Text.ToDecimal
|
||||||
|
ImporteMovimiento = gvr.DataKey("IEPSPorPagar").ToDecimal * PorcentajePago
|
||||||
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento
|
importeMX = ImporteMovimiento
|
||||||
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * tipoCambioCompra
|
importeMX = ImporteMovimiento * tipoCambioCompra
|
||||||
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then
|
||||||
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal
|
||||||
ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago)
|
|
||||||
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra)
|
||||||
End If
|
End If
|
||||||
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero)
|
||||||
|
|||||||
@@ -19,7 +19,8 @@ Partial Class Bancos_RepCxCCliente
|
|||||||
DdlMoneda.DataSource = GlobalDTMonedas()
|
DdlMoneda.DataSource = GlobalDTMonedas()
|
||||||
DdlMoneda.DataBind()
|
DdlMoneda.DataBind()
|
||||||
|
|
||||||
If UsuarioActual.CveEmpresa = 119 Then
|
Dim EsWS = If(UsuarioActual.Empresa.Funcionalidad(105) = "1" Or UsuarioActual.Empresa.Funcionalidad(141) = "1", True, False)
|
||||||
|
If EsWS Then
|
||||||
DdlClientesWS.setEsWebService(True)
|
DdlClientesWS.setEsWebService(True)
|
||||||
Else
|
Else
|
||||||
DdlClientesWS.setEsWebService(False)
|
DdlClientesWS.setEsWebService(False)
|
||||||
|
|||||||
@@ -826,7 +826,7 @@ Partial Class PopUpVerFactura
|
|||||||
params.Add(New ReportParameter("Chofer", Chofer))
|
params.Add(New ReportParameter("Chofer", Chofer))
|
||||||
params.Add(New ReportParameter("Placa", Placa))
|
params.Add(New ReportParameter("Placa", Placa))
|
||||||
params.Add(New ReportParameter("Recibio", Recibio))
|
params.Add(New ReportParameter("Recibio", Recibio))
|
||||||
params.Add(New ReportParameter("FechaEntrega", FechaEntrega.ToString()))
|
params.Add(New ReportParameter("FechaEntrega", FechaEntrega.ToDateTime().ToString("dd/MM/yyyy")))
|
||||||
params.Add(New ReportParameter("EspecifUnidad", EspecifUnidad))
|
params.Add(New ReportParameter("EspecifUnidad", EspecifUnidad))
|
||||||
params.Add(New ReportParameter("DireccionOrigen", SBDireccionO.ToString))
|
params.Add(New ReportParameter("DireccionOrigen", SBDireccionO.ToString))
|
||||||
params.Add(New ReportParameter("DireccionDestino", SBDireccionD.ToString))
|
params.Add(New ReportParameter("DireccionDestino", SBDireccionD.ToString))
|
||||||
@@ -3241,8 +3241,8 @@ Partial Class PopUpVerFactura
|
|||||||
|
|
||||||
params.Add(New ReportParameter("Direccion", Almacen))
|
params.Add(New ReportParameter("Direccion", Almacen))
|
||||||
params.Add(New ReportParameter("FechaConFormato", FechaConFormato))
|
params.Add(New ReportParameter("FechaConFormato", FechaConFormato))
|
||||||
params.Add(New ReportParameter("FechaInicial", Fecha))
|
'params.Add(New ReportParameter("FechaInicial", Fecha))
|
||||||
params.Add(New ReportParameter("FechaFinal", Today.ToString))
|
'params.Add(New ReportParameter("FechaFinal", Today.ToString("dd/MM/yyyy")))
|
||||||
params.Add(New ReportParameter("Sucursal", "Sucursal"))
|
params.Add(New ReportParameter("Sucursal", "Sucursal"))
|
||||||
params.Add(New ReportParameter("Cliente", NombreCliente))
|
params.Add(New ReportParameter("Cliente", NombreCliente))
|
||||||
|
|
||||||
|
|||||||
@@ -109,7 +109,7 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<label class="col-md-1 truncate">Num. Cuenta</label>
|
<label class="col-md-1 truncate">Num. Cuenta</label>
|
||||||
<div class="col-md-2">
|
<div class="col-md-2">
|
||||||
<asp:TextBox runat="server" ID="TxtCuenta" CssClass="form-control input-sm" />
|
<asp:DropDownList runat="server" ID="DdlCuenta" CssClass="select2me" Width="240px" DataTextField="NumCuentaMoneda" DataValueField="CveCuenta" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -66,6 +66,8 @@ public partial class Contabilidad_RepIVA : ClsPaginas
|
|||||||
|
|
||||||
LnkAccionesDIOT.Visible = true;
|
LnkAccionesDIOT.Visible = true;
|
||||||
|
|
||||||
|
DdlCuenta.DataSource = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:UsuarioActual.CveEmpresa, CveTipoCuenta:2);
|
||||||
|
DdlCuenta.DataBind();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Consulta()
|
public void Consulta()
|
||||||
@@ -73,27 +75,26 @@ public partial class Contabilidad_RepIVA : ClsPaginas
|
|||||||
if (TipoCambio == 3 && TxtEspecifico.Text != "") { TCEspecifico = TxtEspecifico.Text.ToDouble(); } else { TCEspecifico = -1; }
|
if (TipoCambio == 3 && TxtEspecifico.Text != "") { TCEspecifico = TxtEspecifico.Text.ToDouble(); } else { TCEspecifico = -1; }
|
||||||
int Conciliado = DdlTipoMovto.SelectedValue.ToEntero();
|
int Conciliado = DdlTipoMovto.SelectedValue.ToEntero();
|
||||||
LblMsgAcreditable.Text = ""; // lbl de mensajes de negativos
|
LblMsgAcreditable.Text = ""; // lbl de mensajes de negativos
|
||||||
string Cuenta = TxtCuenta.Text == "" ? "-1" : TxtCuenta.Text;
|
|
||||||
|
|
||||||
ClsContabilidad ObjCont = new ClsContabilidad();
|
ClsContabilidad ObjCont = new ClsContabilidad();
|
||||||
if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 1, UsuarioActual.CveUsuario, -1, Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico))
|
if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 1, UsuarioActual.CveUsuario, DdlCuenta.SelectedValue.ToEntero(), Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico))
|
||||||
{
|
{
|
||||||
GvT.DataSource = ObjCont.DtResultados;
|
GvT.DataSource = ObjCont.DtResultados;
|
||||||
DtIVATrasladado = ObjCont.DtResultados;
|
DtIVATrasladado = ObjCont.DtResultados;
|
||||||
if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 1, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 1, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
||||||
{
|
{
|
||||||
GvIEPSA.DataSource = ObjCont.DtResultados;
|
GvIEPSA.DataSource = ObjCont.DtResultados;
|
||||||
DtIEPSA = ObjCont.DtResultados;
|
DtIEPSA = ObjCont.DtResultados;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 2, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 2, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
||||||
{
|
{
|
||||||
GvIVAA.DataSource = ObjCont.DtResultados;
|
GvIVAA.DataSource = ObjCont.DtResultados;
|
||||||
DtIVAA = ObjCont.DtResultados;
|
DtIVAA = ObjCont.DtResultados;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 2, UsuarioActual.CveUsuario, -1, Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico))
|
if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 2, UsuarioActual.CveUsuario, DdlCuenta.SelectedValue.ToEntero(), Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico))
|
||||||
{
|
{
|
||||||
GvA.DataSource = ObjCont.DtResultados;
|
GvA.DataSource = ObjCont.DtResultados;
|
||||||
DtIVAAcreditable = ObjCont.DtResultados;
|
DtIVAAcreditable = ObjCont.DtResultados;
|
||||||
@@ -103,7 +104,7 @@ public partial class Contabilidad_RepIVA : ClsPaginas
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 3, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 3, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
||||||
{
|
{
|
||||||
GvIVA2.DataSource = ObjCont.DtResultados;
|
GvIVA2.DataSource = ObjCont.DtResultados;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1009,16 +1009,17 @@ Partial Class Contratos_Default
|
|||||||
ChkAplicaFacCiclica.Checked = CBool(ObjContratos.DtResultados.Rows(0)("FacturacionCicilica"))
|
ChkAplicaFacCiclica.Checked = CBool(ObjContratos.DtResultados.Rows(0)("FacturacionCicilica"))
|
||||||
|
|
||||||
If ChkAplicaFacCiclica.Checked Then
|
If ChkAplicaFacCiclica.Checked Then
|
||||||
CargaPeriodos()
|
|
||||||
|
|
||||||
ChkFacAutomatica.Checked = CBool(ObjContratos.DtResultados.Rows(0)("FacturacionCiclicaAutomatico"))
|
ChkFacAutomatica.Checked = CBool(ObjContratos.DtResultados.Rows(0)("FacturacionCiclicaAutomatico"))
|
||||||
|
|
||||||
DdlPeriodo.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("CvePeriodo"))
|
|
||||||
DdlPeriodo_SelectedIndexChanged(DdlPeriodo, EventArgs.Empty)
|
|
||||||
|
|
||||||
DdlDiaFact.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("DiaMesFacturacion").ToString())
|
DdlDiaFact.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("DiaMesFacturacion").ToString())
|
||||||
TxtObservaciones.Text = ObjContratos.DtResultados.Rows(0)("Observaciones").ToString
|
TxtObservaciones.Text = ObjContratos.DtResultados.Rows(0)("Observaciones").ToString
|
||||||
ChkAplicaFacCiclica_CheckedChanged(ChkAplicaFacCiclica, EventArgs.Empty)
|
ChkAplicaFacCiclica_CheckedChanged(ChkAplicaFacCiclica, EventArgs.Empty)
|
||||||
|
|
||||||
|
If ObjContratos.DtResultados.Rows(0)("CvePeriodo").ToString().ToEntero() > 0 Then
|
||||||
|
DdlPeriodo.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("CvePeriodo").ToString().ToEntero())
|
||||||
|
DdlPeriodo_SelectedIndexChanged(DdlPeriodo, EventArgs.Empty)
|
||||||
|
End If
|
||||||
|
UpFacCiclica.Update()
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
@@ -3558,6 +3559,8 @@ Partial Class Contratos_Default
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub CargaPeriodos()
|
Private Sub CargaPeriodos()
|
||||||
|
DdlPeriodo.Items.Clear()
|
||||||
|
|
||||||
Dim ObjContratos As New ClsContratos
|
Dim ObjContratos As New ClsContratos
|
||||||
If ObjContratos.GetPeriodos(-1, UsuarioActual.CveEmpresa) Then
|
If ObjContratos.GetPeriodos(-1, UsuarioActual.CveEmpresa) Then
|
||||||
DtPeriodo = ObjContratos.DtResultados
|
DtPeriodo = ObjContratos.DtResultados
|
||||||
@@ -3568,6 +3571,8 @@ Partial Class Contratos_Default
|
|||||||
ObjContratos.Dispose()
|
ObjContratos.Dispose()
|
||||||
|
|
||||||
DdlPeriodo.DataBind()
|
DdlPeriodo.DataBind()
|
||||||
|
DdlPeriodo.Items.Insert(0, New ListItem("Seleccione", "-1"))
|
||||||
|
|
||||||
UpGral.Update()
|
UpGral.Update()
|
||||||
End Sub
|
End Sub
|
||||||
Protected Sub DdlPeriodo_SelectedIndexChanged(sender As Object, e As EventArgs)
|
Protected Sub DdlPeriodo_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||||
@@ -4490,6 +4495,7 @@ Partial Class Contratos_Default
|
|||||||
Protected Sub ChkAplicaFacCiclica_CheckedChanged(sender As Object, e As EventArgs)
|
Protected Sub ChkAplicaFacCiclica_CheckedChanged(sender As Object, e As EventArgs)
|
||||||
DivFacCiclica.Visible = ChkAplicaFacCiclica.Checked
|
DivFacCiclica.Visible = ChkAplicaFacCiclica.Checked
|
||||||
DivCiclosComerciales.Visible = ChkAplicaFacCiclica.Checked
|
DivCiclosComerciales.Visible = ChkAplicaFacCiclica.Checked
|
||||||
|
CargaPeriodos()
|
||||||
|
|
||||||
UpFacCiclica.Update()
|
UpFacCiclica.Update()
|
||||||
End Sub
|
End Sub
|
||||||
|
|||||||
@@ -542,7 +542,7 @@ Partial Class Contratos_FacturacionMasiva
|
|||||||
|
|
||||||
Dim objContratos As New ClsContratos
|
Dim objContratos As New ClsContratos
|
||||||
If objContratos.GetContratosDetalle(DR("CveContrato").ToString.ToEntero) Then
|
If objContratos.GetContratosDetalle(DR("CveContrato").ToString.ToEntero) Then
|
||||||
DTDetalle = objContratos.DtResultados
|
DTDetalle = objContratos.DtResultados.FiltraParametros("CveTipoPresupuesto=2")
|
||||||
Else
|
Else
|
||||||
DTDetalle = Nothing
|
DTDetalle = Nothing
|
||||||
End If
|
End If
|
||||||
|
|||||||
@@ -361,7 +361,7 @@
|
|||||||
<Value>Sello Digital del CFDI:</Value>
|
<Value>Sello Digital del CFDI:</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>6.5pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
</TextRuns>
|
</TextRuns>
|
||||||
@@ -373,7 +373,7 @@
|
|||||||
<Value>=Parameters!SelloCFDI.Value</Value>
|
<Value>=Parameters!SelloCFDI.Value</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>6.5pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
<FontWeight>Normal</FontWeight>
|
<FontWeight>Normal</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -386,7 +386,7 @@
|
|||||||
<Value>Sello Digital del SAT:</Value>
|
<Value>Sello Digital del SAT:</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>6.5pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
<FontWeight>Normal</FontWeight>
|
<FontWeight>Normal</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -399,7 +399,7 @@
|
|||||||
<Value>=Parameters!SelloSAT.Value</Value>
|
<Value>=Parameters!SelloSAT.Value</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>6.5pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
<FontWeight>Normal</FontWeight>
|
<FontWeight>Normal</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -412,7 +412,7 @@
|
|||||||
<Value>Cadena Original del complemento de certificación digital del SAT:</Value>
|
<Value>Cadena Original del complemento de certificación digital del SAT:</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>6.5pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
<FontWeight>Normal</FontWeight>
|
<FontWeight>Normal</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -425,7 +425,7 @@
|
|||||||
<Value>=Parameters!CadenaOriginal.Value</Value>
|
<Value>=Parameters!CadenaOriginal.Value</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>6.5pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
<FontWeight>Normal</FontWeight>
|
<FontWeight>Normal</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -438,7 +438,7 @@
|
|||||||
<Value>RFC del Proveedor de Certificación: </Value>
|
<Value>RFC del Proveedor de Certificación: </Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>6.5pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
<FontWeight>Normal</FontWeight>
|
<FontWeight>Normal</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -451,7 +451,7 @@
|
|||||||
<Value>Este documento es una representación impresa de un CFDI</Value>
|
<Value>Este documento es una representación impresa de un CFDI</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
<FontSize>8pt</FontSize>
|
<FontSize>6pt</FontSize>
|
||||||
<FontWeight>Bold</FontWeight>
|
<FontWeight>Bold</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -479,7 +479,7 @@
|
|||||||
<KeepTogether>true</KeepTogether>
|
<KeepTogether>true</KeepTogether>
|
||||||
<Top>6.06618in</Top>
|
<Top>6.06618in</Top>
|
||||||
<Left>0.06752in</Left>
|
<Left>0.06752in</Left>
|
||||||
<Height>1.60919in</Height>
|
<Height>1.42169in</Height>
|
||||||
<Width>8.23953in</Width>
|
<Width>8.23953in</Width>
|
||||||
<Style>
|
<Style>
|
||||||
<Border>
|
<Border>
|
||||||
@@ -2257,8 +2257,8 @@
|
|||||||
<Source>Embedded</Source>
|
<Source>Embedded</Source>
|
||||||
<Value>ID3</Value>
|
<Value>ID3</Value>
|
||||||
<Sizing>FitProportional</Sizing>
|
<Sizing>FitProportional</Sizing>
|
||||||
<Top>11.63749cm</Top>
|
<Top>21.4598cm</Top>
|
||||||
<Left>15.78306cm</Left>
|
<Left>0.28014cm</Left>
|
||||||
<Height>0.93046cm</Height>
|
<Height>0.93046cm</Height>
|
||||||
<Width>5.37042cm</Width>
|
<Width>5.37042cm</Width>
|
||||||
<ZIndex>17</ZIndex>
|
<ZIndex>17</ZIndex>
|
||||||
@@ -2275,10 +2275,10 @@
|
|||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>DESCARGA NUESTRA APLICACIÓN</Value>
|
<Value>DESCARGA NUESTRA NUEVA APLICACIÓN</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontFamily>CALIbri</FontFamily>
|
<FontFamily>CALIbri</FontFamily>
|
||||||
<FontSize>9pt</FontSize>
|
<FontSize>12pt</FontSize>
|
||||||
<FontWeight>Bold</FontWeight>
|
<FontWeight>Bold</FontWeight>
|
||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
@@ -2289,10 +2289,10 @@
|
|||||||
</Paragraph>
|
</Paragraph>
|
||||||
</Paragraphs>
|
</Paragraphs>
|
||||||
<rd:DefaultName>Textbox60</rd:DefaultName>
|
<rd:DefaultName>Textbox60</rd:DefaultName>
|
||||||
<Top>11.08689cm</Top>
|
<Top>19.12502cm</Top>
|
||||||
<Left>15.67443cm</Left>
|
<Left>0.28014cm</Left>
|
||||||
<Height>0.50299cm</Height>
|
<Height>0.6882cm</Height>
|
||||||
<Width>5.42547cm</Width>
|
<Width>20.71217cm</Width>
|
||||||
<ZIndex>18</ZIndex>
|
<ZIndex>18</ZIndex>
|
||||||
<Style>
|
<Style>
|
||||||
<Border>
|
<Border>
|
||||||
@@ -2512,7 +2512,7 @@
|
|||||||
<Top>12.76838cm</Top>
|
<Top>12.76838cm</Top>
|
||||||
<Left>0.16383cm</Left>
|
<Left>0.16383cm</Left>
|
||||||
<Height>2.44366cm</Height>
|
<Height>2.44366cm</Height>
|
||||||
<Width>15.5106cm</Width>
|
<Width>15.51057cm</Width>
|
||||||
<ZIndex>20</ZIndex>
|
<ZIndex>20</ZIndex>
|
||||||
<Style>
|
<Style>
|
||||||
<Border>
|
<Border>
|
||||||
@@ -2995,21 +2995,6 @@
|
|||||||
<PaddingBottom>2pt</PaddingBottom>
|
<PaddingBottom>2pt</PaddingBottom>
|
||||||
</Style>
|
</Style>
|
||||||
</Textbox>
|
</Textbox>
|
||||||
<Image Name="Image3">
|
|
||||||
<Source>Embedded</Source>
|
|
||||||
<Value>ECONO_Marcas</Value>
|
|
||||||
<Sizing>FitProportional</Sizing>
|
|
||||||
<Top>11.08689cm</Top>
|
|
||||||
<Left>0.22108cm</Left>
|
|
||||||
<Height>1.5cm</Height>
|
|
||||||
<Width>15.34658cm</Width>
|
|
||||||
<ZIndex>34</ZIndex>
|
|
||||||
<Style>
|
|
||||||
<Border>
|
|
||||||
<Style>None</Style>
|
|
||||||
</Border>
|
|
||||||
</Style>
|
|
||||||
</Image>
|
|
||||||
<Textbox Name="Textbox47">
|
<Textbox Name="Textbox47">
|
||||||
<CanGrow>true</CanGrow>
|
<CanGrow>true</CanGrow>
|
||||||
<CanShrink>true</CanShrink>
|
<CanShrink>true</CanShrink>
|
||||||
@@ -3018,7 +3003,7 @@
|
|||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>< ** Toda corrección de los datos del comprobante debera efectuarse a más tardar tres dias despues de su expedición. ** ></Value>
|
<Value>< ** Toda corrección de los datos del comprobante debera efectuarse a más tardar tres dias despues de su expedición. ** > </Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontStyle>Normal</FontStyle>
|
<FontStyle>Normal</FontStyle>
|
||||||
<FontFamily>calibri</FontFamily>
|
<FontFamily>calibri</FontFamily>
|
||||||
@@ -3037,7 +3022,7 @@
|
|||||||
<Left>0.19008cm</Left>
|
<Left>0.19008cm</Left>
|
||||||
<Height>0.40655cm</Height>
|
<Height>0.40655cm</Height>
|
||||||
<Width>12.88812cm</Width>
|
<Width>12.88812cm</Width>
|
||||||
<ZIndex>35</ZIndex>
|
<ZIndex>34</ZIndex>
|
||||||
<Style>
|
<Style>
|
||||||
<Border>
|
<Border>
|
||||||
<Style>None</Style>
|
<Style>None</Style>
|
||||||
@@ -3048,14 +3033,341 @@
|
|||||||
<PaddingBottom>2pt</PaddingBottom>
|
<PaddingBottom>2pt</PaddingBottom>
|
||||||
</Style>
|
</Style>
|
||||||
</Textbox>
|
</Textbox>
|
||||||
|
<Image Name="QRCodeDescarga">
|
||||||
|
<Source>Database</Source>
|
||||||
|
<Value>=System.Convert.FromBase64String(Parameters!QRDescarga.Value)</Value>
|
||||||
|
<MIMEType>image/png</MIMEType>
|
||||||
|
<Sizing>FitProportional</Sizing>
|
||||||
|
<Top>8.0685in</Top>
|
||||||
|
<Left>6.67743in</Left>
|
||||||
|
<Height>0.6035in</Height>
|
||||||
|
<Width>0.78275in</Width>
|
||||||
|
<ZIndex>35</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
</Style>
|
||||||
|
</Image>
|
||||||
|
<Textbox Name="Textbox61">
|
||||||
|
<CanGrow>true</CanGrow>
|
||||||
|
<KeepTogether>true</KeepTogether>
|
||||||
|
<Paragraphs>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value>Puedes encontrarla en Appstore o Google play </Value>
|
||||||
|
<Style>
|
||||||
|
<FontStyle>Normal</FontStyle>
|
||||||
|
<FontFamily>Calibri</FontFamily>
|
||||||
|
<FontSize>9pt</FontSize>
|
||||||
|
<FontWeight>Normal</FontWeight>
|
||||||
|
<TextDecoration>None</TextDecoration>
|
||||||
|
<Color>#000000</Color>
|
||||||
|
</Style>
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style>
|
||||||
|
<TextAlign>Center</TextAlign>
|
||||||
|
</Style>
|
||||||
|
</Paragraph>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value>como Econollantas:</Value>
|
||||||
|
<Style>
|
||||||
|
<FontStyle>Normal</FontStyle>
|
||||||
|
<FontFamily>Calibri</FontFamily>
|
||||||
|
<FontSize>9pt</FontSize>
|
||||||
|
<FontWeight>Normal</FontWeight>
|
||||||
|
<TextDecoration>None</TextDecoration>
|
||||||
|
<Color>#000000</Color>
|
||||||
|
</Style>
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style>
|
||||||
|
<TextAlign>Center</TextAlign>
|
||||||
|
</Style>
|
||||||
|
</Paragraph>
|
||||||
|
</Paragraphs>
|
||||||
|
<rd:DefaultName>Textbox60</rd:DefaultName>
|
||||||
|
<Top>19.5698cm</Top>
|
||||||
|
<Left>0.28014cm</Left>
|
||||||
|
<Height>1.49135cm</Height>
|
||||||
|
<Width>5.37042cm</Width>
|
||||||
|
<ZIndex>36</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
|
<PaddingRight>2pt</PaddingRight>
|
||||||
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
<PaddingBottom>2pt</PaddingBottom>
|
||||||
|
</Style>
|
||||||
|
</Textbox>
|
||||||
|
<Textbox Name="Textbox13">
|
||||||
|
<CanGrow>true</CanGrow>
|
||||||
|
<KeepTogether>true</KeepTogether>
|
||||||
|
<Paragraphs>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value />
|
||||||
|
<Style />
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style />
|
||||||
|
</Paragraph>
|
||||||
|
</Paragraphs>
|
||||||
|
<rd:DefaultName>Textbox5</rd:DefaultName>
|
||||||
|
<Top>19.10915cm</Top>
|
||||||
|
<Left>0.14007cm</Left>
|
||||||
|
<Height>0.05496cm</Height>
|
||||||
|
<Width>20.88652cm</Width>
|
||||||
|
<ZIndex>37</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
<BackgroundColor>Black</BackgroundColor>
|
||||||
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
|
<PaddingRight>2pt</PaddingRight>
|
||||||
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
<PaddingBottom>2pt</PaddingBottom>
|
||||||
|
</Style>
|
||||||
|
</Textbox>
|
||||||
|
<Textbox Name="Textbox14">
|
||||||
|
<CanGrow>true</CanGrow>
|
||||||
|
<KeepTogether>true</KeepTogether>
|
||||||
|
<Paragraphs>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value />
|
||||||
|
<Style />
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style />
|
||||||
|
</Paragraph>
|
||||||
|
</Paragraphs>
|
||||||
|
<rd:DefaultName>Textbox5</rd:DefaultName>
|
||||||
|
<Top>22.48903cm</Top>
|
||||||
|
<Left>0.28014cm</Left>
|
||||||
|
<Height>0.05496cm</Height>
|
||||||
|
<Width>20.88652cm</Width>
|
||||||
|
<ZIndex>38</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
<BackgroundColor>Black</BackgroundColor>
|
||||||
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
|
<PaddingRight>2pt</PaddingRight>
|
||||||
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
<PaddingBottom>2pt</PaddingBottom>
|
||||||
|
</Style>
|
||||||
|
</Textbox>
|
||||||
|
<Textbox Name="Textbox62">
|
||||||
|
<CanGrow>true</CanGrow>
|
||||||
|
<KeepTogether>true</KeepTogether>
|
||||||
|
<Paragraphs>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value>Con tu aplicación el beneficio más</Value>
|
||||||
|
<Style>
|
||||||
|
<FontStyle>Normal</FontStyle>
|
||||||
|
<FontFamily>Calibri</FontFamily>
|
||||||
|
<FontSize>9pt</FontSize>
|
||||||
|
<FontWeight>Normal</FontWeight>
|
||||||
|
<TextDecoration>None</TextDecoration>
|
||||||
|
<Color>#000000</Color>
|
||||||
|
</Style>
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style>
|
||||||
|
<TextAlign>Center</TextAlign>
|
||||||
|
</Style>
|
||||||
|
</Paragraph>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value>importante es poder escanear el código QR de tu póliza y siempre traerla contigo para </Value>
|
||||||
|
<Style>
|
||||||
|
<FontStyle>Normal</FontStyle>
|
||||||
|
<FontFamily>Calibri</FontFamily>
|
||||||
|
<FontSize>9pt</FontSize>
|
||||||
|
<FontWeight>Normal</FontWeight>
|
||||||
|
<TextDecoration>None</TextDecoration>
|
||||||
|
<Color>#000000</Color>
|
||||||
|
</Style>
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style>
|
||||||
|
<TextAlign>Center</TextAlign>
|
||||||
|
</Style>
|
||||||
|
</Paragraph>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value>atenderte</Value>
|
||||||
|
<Style>
|
||||||
|
<FontStyle>Normal</FontStyle>
|
||||||
|
<FontFamily>Calibri</FontFamily>
|
||||||
|
<FontSize>9pt</FontSize>
|
||||||
|
<FontWeight>Normal</FontWeight>
|
||||||
|
<TextDecoration>None</TextDecoration>
|
||||||
|
<Color>#000000</Color>
|
||||||
|
</Style>
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style>
|
||||||
|
<TextAlign>Center</TextAlign>
|
||||||
|
</Style>
|
||||||
|
</Paragraph>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value>MÁS RÁPIDO Y MEJOR.</Value>
|
||||||
|
<Style>
|
||||||
|
<FontStyle>Normal</FontStyle>
|
||||||
|
<FontFamily>Calibri</FontFamily>
|
||||||
|
<FontSize>9pt</FontSize>
|
||||||
|
<FontWeight>Normal</FontWeight>
|
||||||
|
<TextDecoration>None</TextDecoration>
|
||||||
|
<Color>#000000</Color>
|
||||||
|
</Style>
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style>
|
||||||
|
<TextAlign>Center</TextAlign>
|
||||||
|
</Style>
|
||||||
|
</Paragraph>
|
||||||
|
</Paragraphs>
|
||||||
|
<rd:DefaultName>Textbox60</rd:DefaultName>
|
||||||
|
<Top>19.5698cm</Top>
|
||||||
|
<Left>7.45145cm</Left>
|
||||||
|
<Height>2.45709cm</Height>
|
||||||
|
<Width>6.56105cm</Width>
|
||||||
|
<ZIndex>39</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
|
<PaddingRight>2pt</PaddingRight>
|
||||||
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
<PaddingBottom>2pt</PaddingBottom>
|
||||||
|
</Style>
|
||||||
|
</Textbox>
|
||||||
|
<Textbox Name="Textbox63">
|
||||||
|
<CanGrow>true</CanGrow>
|
||||||
|
<KeepTogether>true</KeepTogether>
|
||||||
|
<Paragraphs>
|
||||||
|
<Paragraph>
|
||||||
|
<TextRuns>
|
||||||
|
<TextRun>
|
||||||
|
<Value>Una vez descargada la App utiliza la podrás agregar tu póliza escaneando el código QR</Value>
|
||||||
|
<Style>
|
||||||
|
<FontStyle>Normal</FontStyle>
|
||||||
|
<FontFamily>Calibri</FontFamily>
|
||||||
|
<FontSize>9pt</FontSize>
|
||||||
|
<FontWeight>Normal</FontWeight>
|
||||||
|
<TextDecoration>None</TextDecoration>
|
||||||
|
<Color>#000000</Color>
|
||||||
|
</Style>
|
||||||
|
</TextRun>
|
||||||
|
</TextRuns>
|
||||||
|
<Style>
|
||||||
|
<TextAlign>Center</TextAlign>
|
||||||
|
</Style>
|
||||||
|
</Paragraph>
|
||||||
|
</Paragraphs>
|
||||||
|
<rd:DefaultName>Textbox60</rd:DefaultName>
|
||||||
|
<Top>19.56002cm</Top>
|
||||||
|
<Left>14.67145cm</Left>
|
||||||
|
<Height>1.46939cm</Height>
|
||||||
|
<Width>6.32076cm</Width>
|
||||||
|
<ZIndex>40</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
|
<PaddingRight>2pt</PaddingRight>
|
||||||
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
<PaddingBottom>2pt</PaddingBottom>
|
||||||
|
</Style>
|
||||||
|
</Textbox>
|
||||||
|
<Image Name="ImgRockblade">
|
||||||
|
<Source>Embedded</Source>
|
||||||
|
<Value>rockblade</Value>
|
||||||
|
<Sizing>FitProportional</Sizing>
|
||||||
|
<Top>11.19428cm</Top>
|
||||||
|
<Left>5.58835cm</Left>
|
||||||
|
<Height>0.86918cm</Height>
|
||||||
|
<Width>4.08628cm</Width>
|
||||||
|
<ZIndex>41</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
</Style>
|
||||||
|
</Image>
|
||||||
|
<Image Name="ImgYokohama">
|
||||||
|
<Source>Embedded</Source>
|
||||||
|
<Value>yokohama2</Value>
|
||||||
|
<Sizing>FitProportional</Sizing>
|
||||||
|
<Top>11.33186cm</Top>
|
||||||
|
<Left>0.58737cm</Left>
|
||||||
|
<Height>0.65751cm</Height>
|
||||||
|
<Width>4.35272cm</Width>
|
||||||
|
<ZIndex>42</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
</Style>
|
||||||
|
</Image>
|
||||||
|
<Image Name="ImgMaster">
|
||||||
|
<Source>Embedded</Source>
|
||||||
|
<Value>mastercraft</Value>
|
||||||
|
<Sizing>FitProportional</Sizing>
|
||||||
|
<Top>11.30011cm</Top>
|
||||||
|
<Left>17.06617cm</Left>
|
||||||
|
<Height>0.93972cm</Height>
|
||||||
|
<Width>3.99634cm</Width>
|
||||||
|
<ZIndex>43</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
</Style>
|
||||||
|
</Image>
|
||||||
|
<Image Name="ImgCooper">
|
||||||
|
<Source>Embedded</Source>
|
||||||
|
<Value>coopertires</Value>
|
||||||
|
<Sizing>FitProportional</Sizing>
|
||||||
|
<Top>11.33186cm</Top>
|
||||||
|
<Left>10.33489cm</Left>
|
||||||
|
<Height>0.65751cm</Height>
|
||||||
|
<Width>6.09184cm</Width>
|
||||||
|
<ZIndex>44</ZIndex>
|
||||||
|
<Style>
|
||||||
|
<Border>
|
||||||
|
<Style>None</Style>
|
||||||
|
</Border>
|
||||||
|
</Style>
|
||||||
|
</Image>
|
||||||
</ReportItems>
|
</ReportItems>
|
||||||
<Height>19.49544cm</Height>
|
<Height>22.57045cm</Height>
|
||||||
<Style />
|
<Style />
|
||||||
</Body>
|
</Body>
|
||||||
<Width>21.16666cm</Width>
|
<Width>21.16666cm</Width>
|
||||||
<Page>
|
<Page>
|
||||||
<PageFooter>
|
<PageFooter>
|
||||||
<Height>0.52388cm</Height>
|
<Height>0.52387cm</Height>
|
||||||
<PrintOnFirstPage>true</PrintOnFirstPage>
|
<PrintOnFirstPage>true</PrintOnFirstPage>
|
||||||
<PrintOnLastPage>true</PrintOnLastPage>
|
<PrintOnLastPage>true</PrintOnLastPage>
|
||||||
<ReportItems>
|
<ReportItems>
|
||||||
@@ -3114,7 +3426,7 @@
|
|||||||
</Style>
|
</Style>
|
||||||
</TextRun>
|
</TextRun>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>=Today</Value>
|
<Value>=Now.ToString("dd/MM/yyyy hh:mm tt")</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontSize>8pt</FontSize>
|
<FontSize>8pt</FontSize>
|
||||||
</Style>
|
</Style>
|
||||||
@@ -3759,6 +4071,12 @@
|
|||||||
<AllowBlank>true</AllowBlank>
|
<AllowBlank>true</AllowBlank>
|
||||||
<Prompt>ReportParameter1</Prompt>
|
<Prompt>ReportParameter1</Prompt>
|
||||||
</ReportParameter>
|
</ReportParameter>
|
||||||
|
<ReportParameter Name="QRDescarga">
|
||||||
|
<DataType>String</DataType>
|
||||||
|
<Nullable>true</Nullable>
|
||||||
|
<AllowBlank>true</AllowBlank>
|
||||||
|
<Prompt>ReportParameter1</Prompt>
|
||||||
|
</ReportParameter>
|
||||||
</ReportParameters>
|
</ReportParameters>
|
||||||
<EmbeddedImages>
|
<EmbeddedImages>
|
||||||
<EmbeddedImage Name="ID2">
|
<EmbeddedImage Name="ID2">
|
||||||
@@ -3872,6 +4190,72 @@ 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</ImageData>
|
ZbZ/X7cBU4+7u0dOTra0TUEJ8KrLy8vp+zSlSDlms2W1MTc318rKqmYFgLe3j4eHR0FBfnV1TbMlAEx6Hh7uOp0jXPlz5yxKBp4xdAJLZUAYeHh4ZmZeXlrtqoiJ6YS9KC4uvmI/YI/s7e3Lykqx73RZZ8ke/QNaWh0OjadXci5P39B+8idqGJ6eXpYrHQ0dgQLr6uoqKmzNUJqTEwq8XBqyQDV17dolKUm+wJ3lLaXyhdpsgJKhC8dJoHtt1qQODAyCBL14MVPabhkcIzQJGhjiOT+/oJVupJZODftoWX0O/YnOSU5OojEcDuffCxc5HA6Hw+FwOBwOp13Bb1fjcDgcDofD4XA47QoucjgcDofD4XA4HE67goscDofD4XA4HA6H067gIofD4XA4HA6Hw+G0K7jI4XA4HA6Hw+FwOO0KLnI4HA6Hw+FwOBxOu4KLHA6Hw+FwOBwOh9Ou4CKHw+FwOBwOh8PhtCu4yOFwOBwOh8PhcDjtCi5yOBwOh8PhcDgcTruCixwOh8PhcDgcDofTruAih8PhcDgcDofD4bQruMjhcDgcDofD4XA47QoucjgcDofD4XA4HE67goscDofD4XA4HA6H067gIofD4XA4HA6Hw+G0K7jI4XA4HA6Hw+FwOO0KLnI4HA6Hw+FwOBxOu4KLHA6Hw+FwOBwOh9Ou4CKHw+FwOBwOh8PhtCu4yOFwOBwOh8PhcDjtCi5yOBwOh8PhcDgcTruCixwOh8PhcDgcDofTruAih8PhcDgcDofD4bQruMjhcDgcDofD4XA47QoucjgcDofD4XA4HE67goscDofD4XA4HA6H067gIofD4XA4HA6Hw+G0IwTh/wkiAUDA4LaQAAAAAElFTkSuQmCC</ImageData>
|
||||||
</EmbeddedImage>
|
</EmbeddedImage>
|
||||||
|
<EmbeddedImage Name="coopertires">
|
||||||
|
<MIMEType>image/png</MIMEType>
|
||||||
|
<ImageData>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</ImageData>
|
||||||
|
</EmbeddedImage>
|
||||||
|
<EmbeddedImage Name="mastercraft">
|
||||||
|
<MIMEType>image/png</MIMEType>
|
||||||
|
<ImageData>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</ImageData>
|
||||||
|
</EmbeddedImage>
|
||||||
|
<EmbeddedImage Name="rockblade">
|
||||||
|
<MIMEType>image/png</MIMEType>
|
||||||
|
<ImageData>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</ImageData>
|
||||||
|
</EmbeddedImage>
|
||||||
|
<EmbeddedImage Name="yokohama2">
|
||||||
|
<MIMEType>image/png</MIMEType>
|
||||||
|
<ImageData>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</ImageData>
|
||||||
|
</EmbeddedImage>
|
||||||
</EmbeddedImages>
|
</EmbeddedImages>
|
||||||
<Language>es-MX</Language>
|
<Language>es-MX</Language>
|
||||||
<ConsumeContainerWhitespace>true</ConsumeContainerWhitespace>
|
<ConsumeContainerWhitespace>true</ConsumeContainerWhitespace>
|
||||||
|
|||||||
@@ -394,6 +394,14 @@ Partial Class Inventarios_RecepcionAlmacen
|
|||||||
ViewState("RealizarMovimientoVirtual") = Value
|
ViewState("RealizarMovimientoVirtual") = Value
|
||||||
End Set
|
End Set
|
||||||
End Property
|
End Property
|
||||||
|
Private Property SumarImporteUsados As Boolean
|
||||||
|
Get
|
||||||
|
Return If(IsNothing(ViewState("SumarImporteUsados")), False, CBool(ViewState("SumarImporteUsados")))
|
||||||
|
End Get
|
||||||
|
Set
|
||||||
|
ViewState("SumarImporteUsados") = Value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
@@ -847,6 +855,7 @@ Partial Class Inventarios_RecepcionAlmacen
|
|||||||
CveAlmacenDevolucionProveedor = -1
|
CveAlmacenDevolucionProveedor = -1
|
||||||
RealizarTraspasoAlmacenDevolucion = False
|
RealizarTraspasoAlmacenDevolucion = False
|
||||||
RealizarMovimientoVirtual = False
|
RealizarMovimientoVirtual = False
|
||||||
|
SumarImporteUsados = False
|
||||||
BtnGuardar.Enabled = True
|
BtnGuardar.Enabled = True
|
||||||
CargaAlmacenes(-1)
|
CargaAlmacenes(-1)
|
||||||
|
|
||||||
@@ -900,6 +909,7 @@ Partial Class Inventarios_RecepcionAlmacen
|
|||||||
|
|
||||||
RealizarTraspasoAlmacenDevolucion = False
|
RealizarTraspasoAlmacenDevolucion = False
|
||||||
RealizarMovimientoVirtual = False
|
RealizarMovimientoVirtual = False
|
||||||
|
SumarImporteUsados = False
|
||||||
CveAlmacenDevolucionProveedor = -1
|
CveAlmacenDevolucionProveedor = -1
|
||||||
|
|
||||||
Dim ObjCompras As New ClsCompras
|
Dim ObjCompras As New ClsCompras
|
||||||
@@ -956,9 +966,11 @@ Partial Class Inventarios_RecepcionAlmacen
|
|||||||
'SI LA COMPRA TIENE PRODUCTOS Y USADOS SOLO MOSTRAR LOS PRODUCTOS
|
'SI LA COMPRA TIENE PRODUCTOS Y USADOS SOLO MOSTRAR LOS PRODUCTOS
|
||||||
If NumProductos > 0 AndAlso NumUsados > 0 Then
|
If NumProductos > 0 AndAlso NumUsados > 0 Then
|
||||||
DtRecepcion = ObjInventario.DtResultados.FiltraParametros("EsUsado = False")
|
DtRecepcion = ObjInventario.DtResultados.FiltraParametros("EsUsado = False")
|
||||||
|
SumarImporteUsados = True
|
||||||
'SI LA COMPRA TIENE PUROS USADOS, MOSTRAR LOS USADOS Y CARGAR LOS ALMACENES
|
'SI LA COMPRA TIENE PUROS USADOS, MOSTRAR LOS USADOS Y CARGAR LOS ALMACENES
|
||||||
ElseIf NumProductos = 0 AndAlso NumUsados > 0 Then
|
ElseIf NumProductos = 0 AndAlso NumUsados > 0 Then
|
||||||
CargaSoloUsados = True
|
CargaSoloUsados = True
|
||||||
|
SumarImporteUsados = True
|
||||||
DtRecepcion = ObjInventario.DtResultados.Copy()
|
DtRecepcion = ObjInventario.DtResultados.Copy()
|
||||||
If UsuarioActual.CveRol = 1 Then
|
If UsuarioActual.CveRol = 1 Then
|
||||||
CargaAlmacenes(-1, "22,24", CveTipoCompra)
|
CargaAlmacenes(-1, "22,24", CveTipoCompra)
|
||||||
@@ -966,6 +978,7 @@ Partial Class Inventarios_RecepcionAlmacen
|
|||||||
CargaAlmacenes(DtRecepcion.Rows(0)("CveSubProyecto").ToString.ToEntero, "22", CveTipoCompra)
|
CargaAlmacenes(DtRecepcion.Rows(0)("CveSubProyecto").ToString.ToEntero, "22", CveTipoCompra)
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
|
SumarImporteUsados = False
|
||||||
DtRecepcion = ObjInventario.DtResultados.Copy()
|
DtRecepcion = ObjInventario.DtResultados.Copy()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -2704,8 +2717,11 @@ Partial Class Inventarios_RecepcionAlmacen
|
|||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
If ObjInventario.GetMovimientosDetalle(CveMovimientoVirtual, UsuarioActual.CveEmpresa) Then
|
|
||||||
ImporteIngresoAdicional = ObjInventario.DtResultados.SUMD("TotalOriginal")
|
If SumarImporteUsados Then
|
||||||
|
If ObjInventario.GetMovimientosDetalle(CveMovimientoVirtual, UsuarioActual.CveEmpresa) Then
|
||||||
|
ImporteIngresoAdicional = ObjInventario.DtResultados.SUMD("TotalOriginal")
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
|
|||||||
@@ -1052,10 +1052,11 @@ Partial Class Inventarios_RecepcionUsados
|
|||||||
Protected Sub Guardar(Optional GenerarRNC As Boolean = False)
|
Protected Sub Guardar(Optional GenerarRNC As Boolean = False)
|
||||||
If GvM.Rows.Count > 0 Then
|
If GvM.Rows.Count > 0 Then
|
||||||
Dim Msg As New StringBuilder()
|
Dim Msg As New StringBuilder()
|
||||||
|
Dim Resp As Modelos.Factura.MMensajeFactura = Nothing
|
||||||
Dim ObjInventario As New ClsInventarios
|
Dim ObjInventario As New ClsInventarios
|
||||||
Dim ObjAcum As New ClsAcumuladores(ObjInventario.IniciaTransacSQL())
|
Dim ObjAcum As New ClsAcumuladores(ObjInventario.IniciaTransacSQL())
|
||||||
Dim ObjVentas As New ClsVentas(ObjInventario.IniciaTransacSQL())
|
Dim ObjVentas As New ClsVentas(ObjInventario.IniciaTransacSQL())
|
||||||
|
Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL())
|
||||||
|
|
||||||
Dim ErrorMovInv As Boolean = False
|
Dim ErrorMovInv As Boolean = False
|
||||||
Dim ErrorAC As Boolean = False
|
Dim ErrorAC As Boolean = False
|
||||||
@@ -1089,93 +1090,116 @@ Partial Class Inventarios_RecepcionUsados
|
|||||||
CveVenta = -1
|
CveVenta = -1
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
If Not ErrorMovInv AndAlso GenerarRNC AndAlso ObjRemisionNC IsNot Nothing Then
|
If Not ErrorMovInv AndAlso GenerarRNC AndAlso ObjRemisionNC IsNot Nothing Then
|
||||||
|
|
||||||
CargaDTDetalleRNC()
|
CargaDTDetalleRNC()
|
||||||
|
|
||||||
Dim Resp = ObjRemisionNC.EmitirFactura(False, ObjInventario.IniciaTransacSQL)
|
Resp = ObjRemisionNC.EmitirFactura(False, ObjInventario.IniciaTransacSQL)
|
||||||
For Each mensaje2 As String In Resp.Mensajes
|
'For Each mensaje2 As String In Resp.Mensajes
|
||||||
Msg.AppendFormat("<br>{0}", mensaje2)
|
' Msg.AppendFormat("<br>{0}", mensaje2)
|
||||||
Next
|
'Next
|
||||||
If Resp.TieneError Then ErrorMovInv = True
|
If Resp.TieneError Then ErrorMovInv = True
|
||||||
Alert(Msg.ToString, If(Resp.CveVenta > 0, TipoMensaje.MsgInformacion, TipoMensaje.MsgAdvertencia))
|
'Alert(Msg.ToString, If(Resp.CveVenta > 0, TipoMensaje.MsgInformacion, TipoMensaje.MsgAdvertencia))
|
||||||
CveVenta = Resp.CveVenta
|
CveVenta = Resp.CveVenta
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
CveMovimiento = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, CveConcepto, 1, Fecha, tFolio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta,
|
Dim Mensaje As String = ""
|
||||||
|
Dim FolioInv As String = ""
|
||||||
|
|
||||||
|
If GenerarRNC Then
|
||||||
|
CveMovimiento = Resp.CveMovimientoUsado
|
||||||
|
FolioInv = Resp.FolioUsado
|
||||||
|
Else
|
||||||
|
|
||||||
|
CveMovimiento = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, CveConcepto, 1, Fecha, tFolio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta,
|
||||||
CveSubProyecto, ActivoFijo, Guia:=TxtGuia.Text, Observaciones:=TxtObservaciones.Text, CvePersonal:=DdlPersonal.SelectedValue.ToEntero,
|
CveSubProyecto, ActivoFijo, Guia:=TxtGuia.Text, Observaciones:=TxtObservaciones.Text, CvePersonal:=DdlPersonal.SelectedValue.ToEntero,
|
||||||
Recibio:=TxtResponsable.Text.Trim, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, DepartamentoEntrega:=TxtDepartamentoEntrega.Text,
|
Recibio:=TxtResponsable.Text.Trim, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, DepartamentoEntrega:=TxtDepartamentoEntrega.Text,
|
||||||
PedidoContrato:=TxtPedidoContrato.Text, CveProveedor:=tCveProveedor, Modulo:="RU/G")
|
PedidoContrato:=TxtPedidoContrato.Text, CveProveedor:=tCveProveedor, Modulo:="RU/G")
|
||||||
If CveMovimiento <= 0 Then
|
If CveMovimiento <= 0 Then
|
||||||
Alert("No se pudo almacenar el movimiento correctamente", TipoMensaje.MsgError)
|
Mensaje = "Error al guardar los movimientos"
|
||||||
RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
|
ErrorMovInv = True
|
||||||
ObjInventario.RollBack() 'deshace lo insertado
|
Else
|
||||||
Else
|
FolioInv = ObjInventario.Folio.ToString()
|
||||||
Dim Mensaje As String = ""
|
|
||||||
|
|
||||||
|
For Each Dr As DataRow In DtMovimientos.Rows
|
||||||
|
|
||||||
|
If CveConcepto = 42 AndAlso DdlMoneda.SelectedValue.ToEntero = 2 Then
|
||||||
|
ImporteConcepto = Dr("PU").ToString.ToDecimal * GlobalTipoCambio(TxtFecha.Text.ToDate).ToDecimal
|
||||||
|
Else
|
||||||
|
ImporteConcepto = Dr("PU").ToString.ToDecimal
|
||||||
|
End If
|
||||||
|
|
||||||
For Each Dr As DataRow In DtMovimientos.Rows
|
If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
|
||||||
|
Mensaje = "Error al guardar los movimientos"
|
||||||
If CveConcepto = 42 AndAlso DdlMoneda.SelectedValue.ToEntero = 2 Then
|
|
||||||
ImporteConcepto = Dr("PU").ToString.ToDecimal * GlobalTipoCambio(TxtFecha.Text.ToDate).ToDecimal
|
|
||||||
Else
|
|
||||||
ImporteConcepto = Dr("PU").ToString.ToDecimal
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
|
|
||||||
Mensaje = "Error al guardar los movimientos"
|
|
||||||
ErrorMovInv = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
|
|
||||||
If CveVenta > 0 AndAlso Not ObjVentas.UpdateVentaUsadoRecibido(CveVenta, Dr("CvePS").ToString.ToEntero, True, CveMovimiento) Then
|
|
||||||
Mensaje = "Error al actualizar el recibo de los usados"
|
|
||||||
ErrorMovInv = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
'si es selectedvalue = 42, es entrada ,3 -salida
|
|
||||||
Dim CveConceptoUsados As Integer = If(RBLOpcion.SelectedValue.ToEntero = 42, 1, 2)
|
|
||||||
|
|
||||||
If EsDistribuidor AndAlso RBLOpcion.SelectedValue.ToEntero = 42 AndAlso Dr("CveTamaño").ToString.ToEntero > 0 Then
|
|
||||||
|
|
||||||
If Not ObjAcum.DistribuidorMovtosAdd(DdlClientes.SelectedValue.ToEntero, Dr("Cantidad").ToString.ToEntero(), Dr("CveTamaño").ToString.ToEntero, CveConceptoUsados, CveVenta, UsuarioActual.CveUsuario,
|
|
||||||
UsuarioActual.CveEmpresa, 0, Dr("Observaciones").ToString, CveMovimiento:=CveMovimiento) Then
|
|
||||||
Mensaje = "Error al guardar Movimientos de distribuidor"
|
|
||||||
ErrorMovInv = True
|
ErrorMovInv = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
If CveVenta > 0 AndAlso Not ObjVentas.UpdateVentaUsadoRecibido(CveVenta, Dr("CvePS").ToString.ToEntero, True, CveMovimiento) Then
|
||||||
Next
|
Mensaje = "Error al actualizar el recibo de los usados"
|
||||||
|
ErrorMovInv = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
|
||||||
If Not ErrorMovInv Then
|
'si es selectedvalue = 42, es entrada ,3 -salida
|
||||||
|
Dim CveConceptoUsados As Integer = If(RBLOpcion.SelectedValue.ToEntero = 42, 1, 2)
|
||||||
|
|
||||||
|
If EsDistribuidor AndAlso RBLOpcion.SelectedValue.ToEntero = 42 AndAlso Dr("CveTamaño").ToString.ToEntero > 0 Then
|
||||||
|
|
||||||
Msg.AppendFormat("<br/>El Movimiento se registro con el Folio: <b><a href='/Inventarios/EntradasSalidas.aspx?CveMovimiento={1}'>{0}</a></b>", ObjInventario.Folio, CveMovimiento)
|
If Not ObjAcum.DistribuidorMovtosAdd(DdlClientes.SelectedValue.ToEntero, Dr("Cantidad").ToString.ToEntero(), Dr("CveTamaño").ToString.ToEntero, CveConceptoUsados, CveVenta, UsuarioActual.CveUsuario,
|
||||||
Msg.AppendFormat("<br/><br/> <a class=""Texto"" target='_blank' href=""/Compras/PopUpVerFactura.aspx?P={0}"">Imprimir Movimiento</a> ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimiento)))
|
UsuarioActual.CveEmpresa, 0, Dr("Observaciones").ToString, CveMovimiento:=CveMovimiento) Then
|
||||||
|
Mensaje = "Error al guardar Movimientos de distribuidor"
|
||||||
|
ErrorMovInv = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
|
||||||
If IDPoliza > 0 Then Msg = Msg.AppendFormat("<br/><br/> <a class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}"">Ver Póliza</a>", IDPoliza)
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
ObjInventario.Commit() ' aplica los movimientos insertados
|
'GENERA LA PREPOLIZA DE ALMACEN VS EL CONCEPTO DE RNC
|
||||||
|
'If Not ErrorMovInv Then
|
||||||
|
' ErrorMovInv = Not GeneraPrePoliza(CveMovimiento, ObjInventario, ObjConta, True)
|
||||||
|
'End If
|
||||||
|
|
||||||
'Limpia Valores cuando inserta de campos especiales
|
|
||||||
If UsuarioActual.CveEmpresa = 66 Then
|
|
||||||
DdlSubProyecto.SelectedValueExist("-1")
|
|
||||||
End If
|
|
||||||
|
|
||||||
' EnvioCorreo()
|
|
||||||
|
|
||||||
CargaPendientesRecibir()
|
|
||||||
UPDatos.Update()
|
|
||||||
|
|
||||||
Else
|
|
||||||
ObjInventario.RollBack() 'deshace lo insertado
|
|
||||||
CveMovimiento = 0
|
|
||||||
Alert("ocurrió un Error al registrar los movimientos", TipoMensaje.MsgError)
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If Not ErrorMovInv Then
|
||||||
|
If Resp IsNot Nothing Then
|
||||||
|
For Each mensaje2 As String In Resp.Mensajes
|
||||||
|
Msg.AppendFormat("<br>{0}", mensaje2)
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not ErrorMovInv Then
|
||||||
|
|
||||||
|
Msg.AppendFormat("<br/>El Movimiento se registro con el Folio: <b><a href='/Inventarios/EntradasSalidas.aspx?CveMovimiento={1}' target='_blank'>{0}</a></b>", FolioInv, CveMovimiento)
|
||||||
|
Msg.AppendFormat("<br/><br/> <a class=""Texto"" target='_blank' href=""/Compras/PopUpVerFactura.aspx?P={0}"">Imprimir Movimiento</a> ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimiento)))
|
||||||
|
|
||||||
|
If IDPoliza > 0 Then Msg = Msg.AppendFormat("<br/><br/> <a class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}"">Ver Póliza</a>", IDPoliza)
|
||||||
|
|
||||||
|
ObjInventario.Commit() ' aplica los movimientos insertados
|
||||||
|
|
||||||
|
'Limpia Valores cuando inserta de campos especiales
|
||||||
|
If UsuarioActual.CveEmpresa = 66 Then
|
||||||
|
DdlSubProyecto.SelectedValueExist("-1")
|
||||||
|
End If
|
||||||
|
|
||||||
|
' EnvioCorreo()
|
||||||
|
|
||||||
|
CargaPendientesRecibir()
|
||||||
|
UPDatos.Update()
|
||||||
|
|
||||||
|
Else
|
||||||
|
ObjInventario.RollBack() 'deshace lo insertado
|
||||||
|
CveMovimiento = 0
|
||||||
|
Alert("ocurrió un Error al registrar los movimientos", TipoMensaje.MsgError)
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
ObjInventario.RollBack() 'deshace lo insertado
|
ObjInventario.RollBack() 'deshace lo insertado
|
||||||
@@ -1202,6 +1226,94 @@ Partial Class Inventarios_RecepcionUsados
|
|||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Function GeneraPrePoliza(CveMovimiento As Integer, ByRef ObjInventario As ClsInventarios, ByRef ObjConta As ClsContabilidad, EsContabilizable As Boolean) As Boolean
|
||||||
|
Dim Correcto As Boolean = True
|
||||||
|
Try
|
||||||
|
Dim DtCostos As DataTable = Nothing
|
||||||
|
Dim ValorInventario As Decimal = 0
|
||||||
|
Dim ValorInventarioME As Decimal = 0
|
||||||
|
|
||||||
|
|
||||||
|
ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa)
|
||||||
|
Dim CveVenta As Integer = ObjInventario.CveVenta
|
||||||
|
Dim CveAlmacen As Integer = ObjInventario.CveAlmacen
|
||||||
|
Dim SerieFolio As String = ObjInventario.DtResultados.Rows(0)("SerieFolioVenta").ToString
|
||||||
|
Dim MovAlmacen As Boolean = True
|
||||||
|
Dim CveConcepto As Integer = ObjInventario.DtResultados.Rows(0)("CveConcepto").ToString().ToEntero()
|
||||||
|
Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & CveConcepto).ToEntero
|
||||||
|
If OrigenMov = 1 Then MovAlmacen = False Else MovAlmacen = True
|
||||||
|
|
||||||
|
If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then
|
||||||
|
DtCostos = ObjInventario.DtResultados
|
||||||
|
Dim tmpCostos As DataTable = DtCostos.FiltraParametros("", "", {"CveClasificacion"})
|
||||||
|
Dim IdCtaContable As Integer = 0
|
||||||
|
Dim ConceptoPoliza As String = String.Format("{0}-{1}", "Salida de Almacen", SerieFolio)
|
||||||
|
|
||||||
|
If tmpCostos.Rows.Count > 0 Then
|
||||||
|
Dim Concepto As String = ConceptoPoliza
|
||||||
|
Dim CvePrePoliza = ObjConta.AddPrePolizas("Inv_EntradaSalida", 74, DtCostos.SUM("Total"), DtCostos.SUM("Total"), 1, TxtFecha.Text.ToDate, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
|
||||||
|
Dim tCveSubProyecto = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen={CveAlmacen}").ToEntero
|
||||||
|
Dim tCveConcepto As Integer = 278
|
||||||
|
|
||||||
|
For Each RowInv As DataRow In tmpCostos.Rows
|
||||||
|
ValorInventario = DtCostos.SUM("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").ToString.ToDecimal.RoundSQL
|
||||||
|
If tCveConcepto = 69 Then
|
||||||
|
IdCtaContable = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, Concepto, tCveConcepto, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, CveSubProyecto:=tCveSubProyecto, Contabilizable:=EsContabilizable) Then
|
||||||
|
Correcto = False
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
IdCtaContable = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen={CveAlmacen}").ToEntero
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, DtCostos.SUMD("Total").RoundSQL, Concepto, 68, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total").RoundSQL, Contabilizable:=EsContabilizable) Then
|
||||||
|
Correcto = False
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
|
||||||
|
If ObjConta.ValorPolizaDescuadre > 0 Then
|
||||||
|
GuardaLogAD($"Inventarios/RecepcionAlmacen-PPCompOC | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
|
||||||
|
Correcto = False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
'CONTABILIZAR - SIMPLIFICAR
|
||||||
|
If Correcto Then
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(220) <> "" Then
|
||||||
|
If Not ObjConta.PrePolizaSimplificacion(CvePrePoliza, UsuarioActual.CveEmpresa) Then
|
||||||
|
Correcto = False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
'If UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
|
||||||
|
' If ObjContaContPAQ Is Nothing Then
|
||||||
|
' ObjContaContPAQ = New ClsContPAQi(UsuarioActual.Empresa)
|
||||||
|
' ObjContaContPAQ.IniciaTransacSQL()
|
||||||
|
' End If
|
||||||
|
|
||||||
|
' If Not ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, ObjConta:=ObjContaContPAQ) Then
|
||||||
|
' Retorno = False
|
||||||
|
' End If
|
||||||
|
'End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
Correcto = False
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
Correcto = False
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
OnError("Ocurrió un error al guadar la prepoliza", ex)
|
||||||
|
Correcto = False
|
||||||
|
End Try
|
||||||
|
|
||||||
|
Return Correcto
|
||||||
|
End Function
|
||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
#Region " ADD INVENTARIO INICIAL "
|
#Region " ADD INVENTARIO INICIAL "
|
||||||
@@ -2451,6 +2563,12 @@ Partial Class Inventarios_RecepcionUsados
|
|||||||
ObjRemisionNC.IEPS = ImporteIEPS
|
ObjRemisionNC.IEPS = ImporteIEPS
|
||||||
ObjRemisionNC.Total = Total
|
ObjRemisionNC.Total = Total
|
||||||
ObjRemisionNC.TotalOtrosConceptos = 0
|
ObjRemisionNC.TotalOtrosConceptos = 0
|
||||||
|
|
||||||
|
|
||||||
|
ObjRemisionNC.DtMovimientosUsados = DtMovimientos
|
||||||
|
ObjRemisionNC.CveAlmacen = DdlAlmacen.SelectedValue.ToEntero()
|
||||||
|
ObjRemisionNC.ObservacionesMovimiento = TxtObservaciones.Text
|
||||||
|
ObjRemisionNC.CveConceptoMovimiento = CveConcepto
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Protected Sub CargaTamaños()
|
Protected Sub CargaTamaños()
|
||||||
|
|||||||
@@ -794,201 +794,176 @@ Partial Class Sistemas_UsuarioDetalle
|
|||||||
Dim TieneError = False
|
Dim TieneError = False
|
||||||
Dim EsNuevoUsuario As Boolean = False
|
Dim EsNuevoUsuario As Boolean = False
|
||||||
|
|
||||||
|
Try
|
||||||
'Cargo la ultima empresa consultada en asignaciones
|
'Cargo la ultima empresa consultada en asignaciones
|
||||||
Dim DtValida = DtAsignacionesMultiEmpresa.FiltraParametros(String.Format("CveEmpresa = {0}", CveEmpresaAnterior))
|
Dim DtValida = DtAsignacionesMultiEmpresa.FiltraParametros(String.Format("CveEmpresa = {0}", CveEmpresaAnterior))
|
||||||
If DtValida.Rows.Count > 0 Then
|
If DtValida.Rows.Count > 0 Then
|
||||||
Dim dr = DtAsignacionesMultiEmpresa.Select(String.Format("CveEmpresa = {0}", CveEmpresaAnterior))
|
Dim dr = DtAsignacionesMultiEmpresa.Select(String.Format("CveEmpresa = {0}", CveEmpresaAnterior))
|
||||||
dr(0)("CveEmpresa") = CveEmpresaAnterior
|
dr(0)("CveEmpresa") = CveEmpresaAnterior
|
||||||
dr(0)("CvePersonal") = DdlPersonal.SelectedValue.ToEntero
|
dr(0)("CvePersonal") = DdlPersonal.SelectedValue.ToEntero
|
||||||
dr(0)("CveVendedor") = DdlVendedor.SelectedValue.ToEntero
|
dr(0)("CveVendedor") = DdlVendedor.SelectedValue.ToEntero
|
||||||
dr(0)("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero
|
dr(0)("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero
|
||||||
dr(0)("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero
|
dr(0)("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero
|
||||||
dr(0)("CveTipoDocumento") = DdlTipoDocumento.SelectedValue
|
dr(0)("CveTipoDocumento") = DdlTipoDocumento.SelectedValue
|
||||||
dr(0).AcceptChanges()
|
dr(0).AcceptChanges()
|
||||||
Else
|
Else
|
||||||
Dim Row As DataRow = Nothing
|
Dim Row As DataRow = Nothing
|
||||||
Row = DtAsignacionesMultiEmpresa.NewRow()
|
Row = DtAsignacionesMultiEmpresa.NewRow()
|
||||||
Row("CveEmpresa") = CveEmpresaAnterior
|
Row("CveEmpresa") = CveEmpresaAnterior
|
||||||
Row("CvePersonal") = DdlPersonal.SelectedValue.ToEntero
|
Row("CvePersonal") = DdlPersonal.SelectedValue.ToEntero
|
||||||
Row("CveVendedor") = DdlVendedor.SelectedValue.ToEntero
|
Row("CveVendedor") = DdlVendedor.SelectedValue.ToEntero
|
||||||
Row("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero
|
Row("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero
|
||||||
Row("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero
|
Row("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero
|
||||||
Row("CveTipoDocumento") = DdlTipoDocumento.SelectedValue
|
Row("CveTipoDocumento") = DdlTipoDocumento.SelectedValue
|
||||||
DtAsignacionesMultiEmpresa.Rows.Add(Row)
|
DtAsignacionesMultiEmpresa.Rows.Add(Row)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
'REGISTRA O ACTUALIZA LOS DATOS GENERALES DEL USUARIO
|
'REGISTRA O ACTUALIZA LOS DATOS GENERALES DEL USUARIO
|
||||||
If CveUsuario = -1 Then
|
|
||||||
CveUsuario = ObjUsuarios.AddUsuario(TxtUsuario.Text.Trim, Encripta(ContraseñaPredeterminada), TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, UsuarioActual.CveUsuario, DdlEmpresa.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, CveAlmacenAsignado:=DdlAlmacenGeneral.SelectedValue.ToEntero, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble)
|
|
||||||
EsNuevoUsuario = True
|
|
||||||
If CveUsuario = -1 Then
|
If CveUsuario = -1 Then
|
||||||
TieneError = True
|
CveUsuario = ObjUsuarios.AddUsuario(TxtUsuario.Text.Trim, Encripta(ContraseñaPredeterminada), TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, UsuarioActual.CveUsuario, DdlEmpresa.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, CveAlmacenAsignado:=DdlAlmacenGeneral.SelectedValue.ToEntero, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble)
|
||||||
End If
|
EsNuevoUsuario = True
|
||||||
|
If CveUsuario = -1 Then
|
||||||
For Each Row As DataRow In DtAsignacionesMultiEmpresa.Rows
|
|
||||||
If Not ObjUsuarios.AddUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveTipoDocumento").ToString, Row("CveEmpresa").ToString.ToEntero, CveUsuario) Then
|
|
||||||
TieneError = True
|
TieneError = True
|
||||||
End If
|
End If
|
||||||
Next
|
|
||||||
Else
|
|
||||||
If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble) Then
|
|
||||||
TieneError = True
|
|
||||||
End If
|
|
||||||
|
|
||||||
For Each Row As DataRow In DtAsignacionesMultiEmpresa.Rows
|
For Each Row As DataRow In DtAsignacionesMultiEmpresa.FiltraParametros("CveEmpresa > 0").Rows
|
||||||
If Not ObjUsuarios.UpdateUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveEmpresa").ToString.ToEntero, Row("CveTipoDocumento").ToString, CveUsuario, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
|
If Not ObjUsuarios.AddUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveTipoDocumento").ToString, Row("CveEmpresa").ToString.ToEntero, CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
Else
|
||||||
|
If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
End If
|
End If
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA ACCESO MODULOS
|
For Each Row As DataRow In DtAsignacionesMultiEmpresa.FiltraParametros("CveEmpresa > 0").Rows
|
||||||
If Not TieneError Then
|
If Not ObjUsuarios.UpdateUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveEmpresa").ToString.ToEntero, Row("CveTipoDocumento").ToString, CveUsuario, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
|
||||||
For Each Row As GridViewRow In GvModulosAcceso.Rows
|
|
||||||
'Nota, permitir, tiene 3 valores, ''(Vacio), no se ha estipulado, '0' que se denego, '1' permitido(aplicado solo cuando no viene del rol
|
|
||||||
If Row.DataKey("CveModuloAcceso") <> "" Then
|
|
||||||
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkDenegar").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkDenegar").Checked = False Then
|
|
||||||
If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Not Row.FCCheckBox("ChkDenegar").Checked, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkPermitir").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkPermitir").Checked = False Then
|
|
||||||
If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Row.FCCheckBox("ChkPermitir").Checked, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA PERMISO MODULOS
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each Row As GridViewRow In GvModulosPermiso.Rows
|
|
||||||
|
|
||||||
If Row.DataKey("CveProcesoAcceso") <> "" Then
|
|
||||||
'checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados
|
|
||||||
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkD").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkD").Checked = False Then
|
|
||||||
If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
'permisos que el rol, no le está otorgando, y serán únicos para el usuario
|
|
||||||
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkP").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkP").Checked = False Then
|
|
||||||
If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
''checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados
|
|
||||||
'If Row.DataKey("CveProcesoAcceso") <> "" Then
|
|
||||||
' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked) Then
|
|
||||||
' TieneError = True
|
|
||||||
' Exit For
|
|
||||||
' End If
|
|
||||||
'Else
|
|
||||||
' 'permisos que el rol, no le está otorgando, y serán únicos para el usuario
|
|
||||||
' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked) Then
|
|
||||||
' TieneError = True
|
|
||||||
' Exit For
|
|
||||||
' End If
|
|
||||||
'End If
|
|
||||||
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
'Agregar Indicadores
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each Row As GridViewRow In GvIndicadores.Rows
|
|
||||||
|
|
||||||
If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") <> "" And Row.FCCheckBox("chkIndicador").Checked = False Then
|
|
||||||
If Not Indicador.RemoveIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
|
||||||
End If
|
End If
|
||||||
End If
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") = "" Then
|
'GUARDA ACCESO MODULOS
|
||||||
If Row.FCCheckBox("chkIndicador").Checked Then
|
If Not TieneError Then
|
||||||
If Not Indicador.AddIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then
|
For Each Row As GridViewRow In GvModulosAcceso.Rows
|
||||||
|
'Nota, permitir, tiene 3 valores, ''(Vacio), no se ha estipulado, '0' que se denego, '1' permitido(aplicado solo cuando no viene del rol
|
||||||
|
If Row.DataKey("CveModuloAcceso") <> "" Then
|
||||||
|
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkDenegar").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkDenegar").Checked = False Then
|
||||||
|
If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Not Row.FCCheckBox("ChkDenegar").Checked, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkPermitir").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkPermitir").Checked = False Then
|
||||||
|
If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Row.FCCheckBox("ChkPermitir").Checked, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
|
'GUARDA PERMISO MODULOS
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each Row As GridViewRow In GvModulosPermiso.Rows
|
||||||
|
|
||||||
|
If Row.DataKey("CveProcesoAcceso") <> "" Then
|
||||||
|
'checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados
|
||||||
|
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkD").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkD").Checked = False Then
|
||||||
|
If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
'permisos que el rol, no le está otorgando, y serán únicos para el usuario
|
||||||
|
If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkP").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkP").Checked = False Then
|
||||||
|
If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
''checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados
|
||||||
|
'If Row.DataKey("CveProcesoAcceso") <> "" Then
|
||||||
|
' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked) Then
|
||||||
|
' TieneError = True
|
||||||
|
' Exit For
|
||||||
|
' End If
|
||||||
|
'Else
|
||||||
|
' 'permisos que el rol, no le está otorgando, y serán únicos para el usuario
|
||||||
|
' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked) Then
|
||||||
|
' TieneError = True
|
||||||
|
' Exit For
|
||||||
|
' End If
|
||||||
|
'End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
'Agregar Indicadores
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each Row As GridViewRow In GvIndicadores.Rows
|
||||||
|
|
||||||
|
If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") <> "" And Row.FCCheckBox("chkIndicador").Checked = False Then
|
||||||
|
If Not Indicador.RemoveIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") = "" Then
|
||||||
|
If Row.FCCheckBox("chkIndicador").Checked Then
|
||||||
'GUARDA ACCESO EMPRESAS
|
If Not Indicador.AddIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then
|
||||||
If Not TieneError Then
|
TieneError = True
|
||||||
For Each dr As DataRow In DtEmpresasUsuario.FiltraParametros("Accion IN (1,2)").Rows
|
Exit For
|
||||||
If dr("Accion").ToString = "1" Then
|
End If
|
||||||
If Not ObjUsuarios.AddUsuariosEmpresas(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
End If
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
Next
|
||||||
If Not ObjUsuarios.RemoveEmpresasAcceso(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
End If
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA SUBPROYECTOS
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each dr As DataRow In DtSubProyectos.FiltraParametros("Accion IN (1,2,4)").Rows
|
'GUARDA ACCESO EMPRESAS
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DtEmpresasUsuario.FiltraParametros("Accion IN (1,2)").Rows
|
||||||
If dr("Accion").ToString = "1" Then
|
If dr("Accion").ToString = "1" Then
|
||||||
If Not ObjUsuarios.AddSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
If Not ObjUsuarios.AddUsuariosEmpresas(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
If Not ObjUsuarios.RemoveSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
If Not ObjUsuarios.RemoveEmpresasAcceso(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf dr("Accion").ToString = "4" Then
|
|
||||||
If Not ObjUsuarios.UpdateSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, dr("ViejoCveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
Next
|
||||||
Next
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA ESTATUS DE OC
|
'GUARDA SUBPROYECTOS
|
||||||
If Not TieneError Then
|
If Not TieneError Then
|
||||||
If DTEstatusOC IsNot Nothing AndAlso DTEstatusOC.Rows.Count > 0 Then
|
For Each dr As DataRow In DtSubProyectos.FiltraParametros("Accion IN (1,2,4)").Rows
|
||||||
For Each dr As DataRow In DTEstatusOC.FiltraParametros("Accion IN (1,2,4)").Rows
|
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
If dr("Accion").ToString = "1" Then
|
If dr("Accion").ToString = "1" Then
|
||||||
If Not ObjUsuarios.AddEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then
|
If Not ObjUsuarios.AddSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
If Not ObjUsuarios.RemoveEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then
|
If Not ObjUsuarios.RemoveSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "4" Then
|
ElseIf dr("Accion").ToString = "4" Then
|
||||||
If Not ObjUsuarios.UpdateEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero, dr("ViejoCveEstatus").ToString.ToEntero) Then
|
If Not ObjUsuarios.UpdateSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, dr("ViejoCveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
@@ -997,19 +972,161 @@ Partial Class Sistemas_UsuarioDetalle
|
|||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
'GUARDA ESTATUS DE OC
|
||||||
'GUARDA CLASIFICACIONES
|
If Not TieneError Then
|
||||||
If Not TieneError Then
|
If DTEstatusOC IsNot Nothing AndAlso DTEstatusOC.Rows.Count > 0 Then
|
||||||
If DtClasificaciones IsNot Nothing AndAlso DtClasificaciones.Rows.Count > 0 Then
|
For Each dr As DataRow In DTEstatusOC.FiltraParametros("Accion IN (1,2,4)").Rows
|
||||||
For Each dr As DataRow In DtClasificaciones.FiltraParametros("Accion IN (1,2,4)").Rows
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
|
If dr("Accion").ToString = "1" Then
|
||||||
|
If Not ObjUsuarios.AddEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
|
If Not ObjUsuarios.RemoveEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "4" Then
|
||||||
|
If Not ObjUsuarios.UpdateEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero, dr("ViejoCveEstatus").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
'GUARDA CLASIFICACIONES
|
||||||
|
If Not TieneError Then
|
||||||
|
If DtClasificaciones IsNot Nothing AndAlso DtClasificaciones.Rows.Count > 0 Then
|
||||||
|
For Each dr As DataRow In DtClasificaciones.FiltraParametros("Accion IN (1,2,4)").Rows
|
||||||
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
|
If dr("Accion").ToString = "1" Then
|
||||||
|
If Not ObjUsuarios.AddUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
|
If Not ObjUsuarios.RemoveUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
'GUARDA ALMACENES
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DtAlmacenes.FiltraParametros("Accion IN (1,2,4)").Rows
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
If dr("Accion").ToString = "1" Then
|
If dr("Accion").ToString = "1" Then
|
||||||
If Not ObjUsuarios.AddUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveUsuario) Then
|
If Not ObjUsuarios.AddAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
If Not ObjUsuarios.RemoveUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
If Not ObjUsuarios.RemoveAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "4" Then
|
||||||
|
If Not ObjUsuarios.UpdateAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, dr("ViejoCveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
'Guarda Estatus de Ordenes de Compra
|
||||||
|
If Not TieneError Then
|
||||||
|
GuardaEstatusProyectosREQ(ObjOC, TieneError)
|
||||||
|
GuardaEstatusProyectoOC(ObjOC, TieneError)
|
||||||
|
End If
|
||||||
|
|
||||||
|
''Guarda Estatus de Ordenes de Servicio
|
||||||
|
'If Not TieneError Then
|
||||||
|
' GuardaEstatusOS(ObjOS, TieneError)
|
||||||
|
'End If
|
||||||
|
|
||||||
|
|
||||||
|
'GUARDA CUENTAS BANCARIAS
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DtCuentasBancarias.FiltraParametros("Accion IN (1,2)").Rows
|
||||||
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
|
If dr("Accion").ToString = "1" Then
|
||||||
|
If Not ObjBancos.AddBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
|
If Not ObjBancos.RemoveBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
'GUARDAMOS RESTRICCIONES DE ACCESO
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DtRestricciones.FiltraParametros("Accion IN (1,2,4)").Rows
|
||||||
|
If dr("Accion").ToString = "1" Then
|
||||||
|
If Not ObjUsuarios.UsuariosRestriccionesAccesoAdd(CveUsuario, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
|
If Not ObjUsuarios.UsuariosRestriccionesAccesoRemove(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "4" Then
|
||||||
|
If Not ObjUsuarios.UsuariosRestriccionesAccesoUpdate(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
ObjUsuarios.UsuariosRestriccioneXMacUpdate(CveUsuario)
|
||||||
|
'CLONAR USUARIO
|
||||||
|
If Not TieneError Then
|
||||||
|
If EsNuevoUsuario Then
|
||||||
|
If Not ClonarUsuario(DdlUsuarioClonar.SelectedValue.ToEntero, ObjUsuarios) Then
|
||||||
|
TieneError = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
''''''''''''''''''''''''GUARDA ASIGNAR''''''''''''''''''''''''
|
||||||
|
|
||||||
|
'GUARDA ROLES
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DTRolesAsignar.FiltraParametros("Accion IN (1,2)").Rows
|
||||||
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
|
If dr("Accion").ToString = "1" Then
|
||||||
|
If Not ObjUsuarios.AddRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
|
If Not ObjUsuarios.RemoveRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
@@ -1017,260 +1134,148 @@ Partial Class Sistemas_UsuarioDetalle
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
|
'GUARDA ALMACENES
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DtAlmacenesAsignar.FiltraParametros("Accion IN (1,2)").Rows
|
||||||
'GUARDA ALMACENES
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
If Not TieneError Then
|
If dr("Accion").ToString = "1" Then
|
||||||
For Each dr As DataRow In DtAlmacenes.FiltraParametros("Accion IN (1,2,4)").Rows
|
If Not ObjUsuarios.AddAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
TieneError = True
|
||||||
If dr("Accion").ToString = "1" Then
|
Exit For
|
||||||
If Not ObjUsuarios.AddAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
End If
|
||||||
TieneError = True
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
Exit For
|
If Not ObjUsuarios.RemoveAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then
|
||||||
End If
|
TieneError = True
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
Exit For
|
||||||
If Not ObjUsuarios.RemoveAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
End If
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf dr("Accion").ToString = "4" Then
|
|
||||||
If Not ObjUsuarios.UpdateAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, dr("ViejoCveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
Next
|
||||||
Next
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
'Guarda Estatus de Ordenes de Compra
|
|
||||||
If Not TieneError Then
|
|
||||||
GuardaEstatusProyectosREQ(ObjOC, TieneError)
|
|
||||||
GuardaEstatusProyectoOC(ObjOC, TieneError)
|
|
||||||
End If
|
|
||||||
|
|
||||||
''Guarda Estatus de Ordenes de Servicio
|
|
||||||
'If Not TieneError Then
|
|
||||||
' GuardaEstatusOS(ObjOS, TieneError)
|
|
||||||
'End If
|
|
||||||
|
|
||||||
|
|
||||||
'GUARDA CUENTAS BANCARIAS
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each dr As DataRow In DtCuentasBancarias.FiltraParametros("Accion IN (1,2)").Rows
|
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
|
||||||
If dr("Accion").ToString = "1" Then
|
|
||||||
If Not ObjBancos.AddBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
|
||||||
If Not ObjBancos.RemoveBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
'GUARDAMOS RESTRICCIONES DE ACCESO
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each dr As DataRow In DtRestricciones.FiltraParametros("Accion IN (1,2,4)").Rows
|
|
||||||
If dr("Accion").ToString = "1" Then
|
|
||||||
If Not ObjUsuarios.UsuariosRestriccionesAccesoAdd(CveUsuario, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
|
||||||
If Not ObjUsuarios.UsuariosRestriccionesAccesoRemove(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf dr("Accion").ToString = "4" Then
|
|
||||||
If Not ObjUsuarios.UsuariosRestriccionesAccesoUpdate(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
ObjUsuarios.UsuariosRestriccioneXMacUpdate(CveUsuario)
|
|
||||||
'CLONAR USUARIO
|
|
||||||
If Not TieneError Then
|
|
||||||
If EsNuevoUsuario Then
|
|
||||||
If Not ClonarUsuario(DdlUsuarioClonar.SelectedValue.ToEntero, ObjUsuarios) Then
|
|
||||||
TieneError = True
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
|
'GUARDA SUBPROYECTOS
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DtSubProyectosAsignar.FiltraParametros("Accion IN (1,2,4)").Rows
|
||||||
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
|
If dr("Accion").ToString = "1" Then
|
||||||
|
If Not ObjUsuarios.AddSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
|
If Not ObjUsuarios.RemoveSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
|
'GUARDA CUENTAS BANCARIAS
|
||||||
|
If Not TieneError Then
|
||||||
|
For Each dr As DataRow In DtCuentasBancariasAsignar.FiltraParametros("Accion IN (1,2)").Rows
|
||||||
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
|
If dr("Accion").ToString = "1" Then
|
||||||
|
If Not ObjUsuarios.AddCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
ElseIf dr("Accion").ToString = "2" Then
|
||||||
|
If Not ObjUsuarios.RemoveCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then
|
||||||
|
TieneError = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
''''''''''''''''''''''''GUARDA ASIGNAR''''''''''''''''''''''''
|
'GUARDA MODULOS
|
||||||
|
If Not TieneError Then
|
||||||
'GUARDA ROLES
|
For Each Row As GridViewRow In GvModulosAsignar.Rows
|
||||||
If Not TieneError Then
|
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
||||||
For Each dr As DataRow In DTRolesAsignar.FiltraParametros("Accion IN (1,2)").Rows
|
If Not ObjUsuarios.RemoveModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
|
||||||
If dr("Accion").ToString = "1" Then
|
|
||||||
If Not ObjUsuarios.AddRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then
|
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
||||||
If Not ObjUsuarios.RemoveRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then
|
If Not ObjUsuarios.AddModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
Next
|
||||||
Next
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA ALMACENES
|
'GUARDA PERMISOS
|
||||||
If Not TieneError Then
|
If Not TieneError Then
|
||||||
For Each dr As DataRow In DtAlmacenesAsignar.FiltraParametros("Accion IN (1,2)").Rows
|
For Each Row As GridViewRow In GvPermisosAsignar.Rows
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
||||||
If dr("Accion").ToString = "1" Then
|
If Not ObjUsuarios.RemovePermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then
|
||||||
If Not ObjUsuarios.AddAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then
|
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
||||||
If Not ObjUsuarios.RemoveAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then
|
If Not ObjUsuarios.AddPermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
Next
|
||||||
Next
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA SUBPROYECTOS
|
'GUARDA INDICADORES
|
||||||
If Not TieneError Then
|
If Not TieneError Then
|
||||||
For Each dr As DataRow In DtSubProyectosAsignar.FiltraParametros("Accion IN (1,2,4)").Rows
|
For Each Row As GridViewRow In GvIndicadoresAsignar.Rows
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
||||||
If dr("Accion").ToString = "1" Then
|
If Not ObjUsuarios.RemoveIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then
|
||||||
If Not ObjUsuarios.AddSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then
|
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
||||||
If Not ObjUsuarios.RemoveSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then
|
If Not ObjUsuarios.AddIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
Next
|
||||||
Next
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA CUENTAS BANCARIAS
|
'GUARDA EMPRESAS
|
||||||
If Not TieneError Then
|
If Not TieneError Then
|
||||||
For Each dr As DataRow In DtCuentasBancariasAsignar.FiltraParametros("Accion IN (1,2)").Rows
|
For Each Row As GridViewRow In GvEmpresasAsignar.Rows
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
||||||
If dr("Accion").ToString = "1" Then
|
If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then
|
||||||
If Not ObjUsuarios.AddCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then
|
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
ElseIf dr("Accion").ToString = "2" Then
|
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
||||||
If Not ObjUsuarios.RemoveCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then
|
If Not ObjUsuarios.AddEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
Next
|
||||||
Next
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA MODULOS
|
'ELIMINA YA AGREGADOS EMPRESAS
|
||||||
If Not TieneError Then
|
If Not TieneError Then
|
||||||
For Each Row As GridViewRow In GvModulosAsignar.Rows
|
For Each dr As DataRow In DTEmpresasAsignar.FiltraParametros("TienePermiso IN (-2)").Rows
|
||||||
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
||||||
If Not ObjUsuarios.RemoveModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then
|
If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, dr("CveEmpresa").ToString.ToEntero) Then
|
||||||
TieneError = True
|
TieneError = True
|
||||||
Exit For
|
Exit For
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
Next
|
||||||
If Not ObjUsuarios.AddModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then
|
End If
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA PERMISOS
|
Catch ex As Exception
|
||||||
If Not TieneError Then
|
TieneError = True
|
||||||
For Each Row As GridViewRow In GvPermisosAsignar.Rows
|
OnError("Ocurrió un error al guardar el usuario", ex)
|
||||||
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
End Try
|
||||||
If Not ObjUsuarios.RemovePermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
|
||||||
If Not ObjUsuarios.AddPermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA INDICADORES
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each Row As GridViewRow In GvIndicadoresAsignar.Rows
|
|
||||||
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
|
||||||
If Not ObjUsuarios.RemoveIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
|
||||||
If Not ObjUsuarios.AddIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
'GUARDA EMPRESAS
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each Row As GridViewRow In GvEmpresasAsignar.Rows
|
|
||||||
If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then
|
|
||||||
If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then
|
|
||||||
If Not ObjUsuarios.AddEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
'ELIMINA YA AGREGADOS EMPRESAS
|
|
||||||
If Not TieneError Then
|
|
||||||
For Each dr As DataRow In DTEmpresasAsignar.FiltraParametros("TienePermiso IN (-2)").Rows
|
|
||||||
If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then
|
|
||||||
If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, dr("CveEmpresa").ToString.ToEntero) Then
|
|
||||||
TieneError = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
If Not TieneError Then
|
If Not TieneError Then
|
||||||
@@ -1287,6 +1292,11 @@ Partial Class Sistemas_UsuarioDetalle
|
|||||||
|
|
||||||
|
|
||||||
ObjUsuarios.Dispose()
|
ObjUsuarios.Dispose()
|
||||||
|
ObjSubProyectos.Dispose()
|
||||||
|
ObjOC.Dispose()
|
||||||
|
ObjOS.Dispose()
|
||||||
|
Indicador.Dispose()
|
||||||
|
ObjBancos.Dispose()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub RecargaGlobales(TieneError As Boolean, ObjSubProyectos As ClsSubProyectos, ObjBancos As ClsBancos, ObjOC As ClsOC, ObjUsuarios As ClsSisUsuarios)
|
Private Sub RecargaGlobales(TieneError As Boolean, ObjSubProyectos As ClsSubProyectos, ObjBancos As ClsBancos, ObjOC As ClsOC, ObjUsuarios As ClsSisUsuarios)
|
||||||
|
|||||||
@@ -2707,7 +2707,7 @@
|
|||||||
<div class="col-md-12" visible="false">
|
<div class="col-md-12" visible="false">
|
||||||
<asp:GridView ID="GvRecepcionUsados" runat="server" GridLines="None" ShowHeaderWhenEmpty="true" CssClass="table table-hover table-striped ScrollAD mysmallbtn"
|
<asp:GridView ID="GvRecepcionUsados" runat="server" GridLines="None" ShowHeaderWhenEmpty="true" CssClass="table table-hover table-striped ScrollAD mysmallbtn"
|
||||||
data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False" data-height="100"
|
data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False" data-height="100"
|
||||||
DataKeyNames="CvePSCargo,CveUM,Cargo,CveTamaño">
|
DataKeyNames="CvePSCargo,CveUM,Cargo,CveTamaño,CodigoPS">
|
||||||
<Columns>
|
<Columns>
|
||||||
<asp:BoundField DataField="CodigoPS" HeaderText="Tamaño" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="35%" />
|
<asp:BoundField DataField="CodigoPS" HeaderText="Tamaño" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="35%" />
|
||||||
<asp:TemplateField HeaderText="Cantidad" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="20%">
|
<asp:TemplateField HeaderText="Cantidad" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="20%">
|
||||||
|
|||||||
@@ -4657,7 +4657,28 @@ Partial Class PV
|
|||||||
DdlPSIndexChange(DdlPS.SelectedValue.ToEntero, DdlPS)
|
DdlPSIndexChange(DdlPS.SelectedValue.ToEntero, DdlPS)
|
||||||
DdlUnidadMedida.SelectedValueExist(GvRow.DataKey("CveUM"))
|
DdlUnidadMedida.SelectedValueExist(GvRow.DataKey("CveUM"))
|
||||||
TxtCantidad.Text = GvRow.DataKey("Cantidad")
|
TxtCantidad.Text = GvRow.DataKey("Cantidad")
|
||||||
TxtObsPS.Text = GvRow.DataKey("Obs")
|
|
||||||
|
'Dim TotalCargos As Decimal = 0
|
||||||
|
'Dim StrTamanios As New StringBuilder()
|
||||||
|
'StrTamanios.Append("Se recibierón los siguientes usados:")
|
||||||
|
|
||||||
|
'For Each Gvr As GridViewRow In GvRecepcionUsados.Rows
|
||||||
|
' If Gvr.RowType = DataControlRowType.DataRow Then
|
||||||
|
' If Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal > 0 Then
|
||||||
|
' TotalCargos += Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal * Gvr.DataKey("Cargo").ToDecimal
|
||||||
|
' StrTamanios.AppendFormat("{0},", Gvr.DataKey("CodigoPS"))
|
||||||
|
' End If
|
||||||
|
' End If
|
||||||
|
'Next
|
||||||
|
|
||||||
|
'If TotalCargos > 0 Then
|
||||||
|
' StrTamanios.Remove(StrTamanios.Length - 1, 1)
|
||||||
|
'Else
|
||||||
|
' StrTamanios.Clear()
|
||||||
|
'End If
|
||||||
|
|
||||||
|
TxtObsPS.Text = GvRow.DataKey("Obs") '.Replace(StrTamanios.ToString(), "")
|
||||||
|
|
||||||
TxtPrecio.Text = GvRow.DataKey("PU")
|
TxtPrecio.Text = GvRow.DataKey("PU")
|
||||||
TxtDescuento.Text = GvRow.DataKey("Descuento")
|
TxtDescuento.Text = GvRow.DataKey("Descuento")
|
||||||
LblTotalPS.Text = GvRow.DataKey("Total")
|
LblTotalPS.Text = GvRow.DataKey("Total")
|
||||||
@@ -6681,12 +6702,16 @@ Partial Class PV
|
|||||||
|
|
||||||
Dim TotalCargos As Decimal = 0
|
Dim TotalCargos As Decimal = 0
|
||||||
Dim TotalCantidad As Decimal = 0
|
Dim TotalCantidad As Decimal = 0
|
||||||
|
Dim StrTamanios As New StringBuilder()
|
||||||
|
StrTamanios.Append("Se recibierón los siguientes usados:")
|
||||||
|
|
||||||
For Each Gvr As GridViewRow In Gv.Rows
|
For Each Gvr As GridViewRow In Gv.Rows
|
||||||
If Gvr.RowType = DataControlRowType.DataRow Then
|
If Gvr.RowType = DataControlRowType.DataRow Then
|
||||||
|
|
||||||
If Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal > 0 Then
|
If Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal > 0 Then
|
||||||
TotalCargos += Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal * Gvr.DataKey("Cargo").ToDecimal
|
TotalCargos += Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal * Gvr.DataKey("Cargo").ToDecimal
|
||||||
TotalCantidad += Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal
|
TotalCantidad += Gvr.FCTextBox("TxtCantidad").Text.ToString.ToDecimal
|
||||||
|
StrTamanios.AppendFormat("{0},", Gvr.DataKey("CodigoPS"))
|
||||||
|
|
||||||
Dim Row As DataRow = TmpDTRecepcionUsados.NewRow()
|
Dim Row As DataRow = TmpDTRecepcionUsados.NewRow()
|
||||||
Row("CvePS") = Gvr.DataKey("CvePSCargo").ToEntero
|
Row("CvePS") = Gvr.DataKey("CvePSCargo").ToEntero
|
||||||
@@ -6703,9 +6728,15 @@ Partial Class PV
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
If TotalCargos > 0 Then
|
||||||
|
StrTamanios.Remove(StrTamanios.Length - 1, 1)
|
||||||
|
Else
|
||||||
|
StrTamanios.Clear()
|
||||||
|
End If
|
||||||
|
|
||||||
Dim StrCargos As New StringBuilder
|
Dim StrCargos As New StringBuilder
|
||||||
For Each CvePSCargo As Integer In ListaPSCargo
|
For Each CvePSCargo As Integer In ListaPSCargo
|
||||||
StrCargos.AppendFormat("{0},", CvePSCargo)
|
StrCargos.AppendFormat(" {0},", CvePSCargo)
|
||||||
Next
|
Next
|
||||||
StrCargos.Remove(StrCargos.Length - 1, 1)
|
StrCargos.Remove(StrCargos.Length - 1, 1)
|
||||||
|
|
||||||
@@ -6720,28 +6751,38 @@ Partial Class PV
|
|||||||
For Each Dr As DataRow In TmpDT.FiltraParametros($"EsCargo = True AND EliminarDB = False AND CvePS IN ({StrCargos})").Rows
|
For Each Dr As DataRow In TmpDT.FiltraParametros($"EsCargo = True AND EliminarDB = False AND CvePS IN ({StrCargos})").Rows
|
||||||
|
|
||||||
Dim TotalAnterior As Decimal = Dr("Cantidad").ToString.ToDecimal * Dr("PU").ToString.ToDecimal
|
Dim TotalAnterior As Decimal = Dr("Cantidad").ToString.ToDecimal * Dr("PU").ToString.ToDecimal
|
||||||
Dim PUActual As Decimal = (TotalAnterior - TotalCargos) / Dr("Cantidad").ToString.ToDecimal
|
'Dim PUActual As Decimal = (TotalAnterior - TotalCargos) / Dr("Cantidad").ToString.ToDecimal
|
||||||
Dim Descuento As Decimal = Dr("Descuento").ToString.ToDecimal
|
Dim DescuentoCargo As Decimal = (TotalCargos / Dr("Cantidad").ToString.ToDecimal)
|
||||||
Dim TotalCalculableImpuestos As Decimal = (Dr("Cantidad").ToString.ToDecimal * (PUActual)) - Descuento
|
|
||||||
TotalCargos -= TotalAnterior
|
|
||||||
|
|
||||||
If PUActual <= 0 Then
|
|
||||||
Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
|
||||||
TmpDT.Rows.Remove(drt(0))
|
|
||||||
Else
|
|
||||||
Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
|
||||||
Dim drr As DataRow = drt(0)
|
|
||||||
drr("PU") = PUActual
|
|
||||||
drr("ImporteIVA") = Math.Round(Dr("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("ImporteIEPS") = Math.Round(Dr("PorcentajeIEPS").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("IEPS") = Dr("ImporteIEPS")
|
|
||||||
drr("Total") = (Dr("Cantidad").ToString.ToDecimal * PUActual)
|
|
||||||
drr("TotalImporte") = Math.Round(Dr("Cantidad").ToString.ToDecimal * PUActual, NumeroDecimales)
|
|
||||||
|
|
||||||
|
If DescuentoCargo > (TotalAnterior - Dr("Descuento").ToString.ToDecimal()) Then
|
||||||
|
DescuentoCargo = (TotalAnterior - Dr("Descuento").ToString.ToDecimal())
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Dim Descuento As Decimal = Dr("Descuento").ToString.ToDecimal + DescuentoCargo
|
||||||
|
Dim TotalCalculableImpuestos As Decimal = (Dr("Cantidad").ToString.ToDecimal * (Dr("PU").ToString.ToDecimal)) - Descuento
|
||||||
|
TotalCargos -= DescuentoCargo
|
||||||
|
|
||||||
|
'If PUActual <= 0 Then
|
||||||
|
' Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
||||||
|
' TmpDT.Rows.Remove(drt(0))
|
||||||
|
'Else
|
||||||
|
|
||||||
|
|
||||||
|
'End If
|
||||||
|
|
||||||
|
Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
||||||
|
Dim drr As DataRow = drt(0)
|
||||||
|
'drr("PU") = PUActual
|
||||||
|
drr("ImporteIVA") = Math.Round(Dr("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("ImporteIEPS") = Math.Round(Dr("PorcentajeIEPS").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("IEPS") = Dr("ImporteIEPS")
|
||||||
|
drr("Descuento") = Descuento
|
||||||
|
drr("Obs") = StrTamanios.ToString() + Dr("Obs").ToString()
|
||||||
|
'drr("Total") = (Dr("Cantidad").ToString.ToDecimal * PUActual)
|
||||||
|
'drr("TotalImporte") = Math.Round(Dr("Cantidad").ToString.ToDecimal * PUActual, NumeroDecimales)
|
||||||
|
|
||||||
If TotalCargos <= 0 Then
|
If TotalCargos <= 0 Then
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
@@ -6752,27 +6793,47 @@ Partial Class PV
|
|||||||
For Each Dr As DataRow In TmpDT.FiltraParametros($"EsCargo = False AND EliminarDB = False AND CvePS={CvePS}").Rows
|
For Each Dr As DataRow In TmpDT.FiltraParametros($"EsCargo = False AND EliminarDB = False AND CvePS={CvePS}").Rows
|
||||||
|
|
||||||
Dim PUAnterior As Decimal = Dr("Cantidad").ToString.ToDecimal * Dr("PU").ToString.ToDecimal
|
Dim PUAnterior As Decimal = Dr("Cantidad").ToString.ToDecimal * Dr("PU").ToString.ToDecimal
|
||||||
Dim PUActual As Decimal = PUAnterior - (TotalCargos / Dr("Cantidad").ToString.ToDecimal)
|
Dim DescuentoCargo As Decimal = (TotalCargos / Dr("Cantidad").ToString.ToDecimal)
|
||||||
Dim Descuento As Decimal = Dr("Descuento").ToString.ToDecimal
|
|
||||||
Dim TotalCalculableImpuestos As Decimal = (Dr("Cantidad").ToString.ToDecimal * (PUActual)) - Descuento
|
|
||||||
TotalCargos += -(TotalCargos / Dr("Cantidad").ToString.ToDecimal)
|
|
||||||
|
|
||||||
If PUActual <= 0 Then
|
If DescuentoCargo > (PUAnterior - Dr("Descuento").ToString.ToDecimal()) Then
|
||||||
Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
DescuentoCargo = (PUAnterior - Dr("Descuento").ToString.ToDecimal())
|
||||||
TmpDT.Rows.Remove(drt(0))
|
|
||||||
Else
|
|
||||||
Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
|
||||||
Dim drr As DataRow = drt(0)
|
|
||||||
drr("PU") = PUActual
|
|
||||||
drr("ImporteIVA") = Math.Round(Dr("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("ImporteIEPS") = Math.Round(Dr("PorcentajeIEPS").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
drr("IEPS") = Dr("ImporteIEPS")
|
|
||||||
drr("Total") = (Dr("Cantidad").ToString.ToDecimal * PUActual)
|
|
||||||
drr("TotalImporte") = Math.Round(Dr("Cantidad").ToString.ToDecimal * PUActual, NumeroDecimales)
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'Dim PUActual As Decimal = PUAnterior - DescuentoCargo
|
||||||
|
Dim Descuento As Decimal = Dr("Descuento").ToString.ToDecimal + DescuentoCargo
|
||||||
|
|
||||||
|
Dim TotalCalculableImpuestos As Decimal = (Dr("Cantidad").ToString.ToDecimal * (PUAnterior)) - Descuento
|
||||||
|
TotalCargos += -DescuentoCargo
|
||||||
|
|
||||||
|
Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
||||||
|
Dim drr As DataRow = drt(0)
|
||||||
|
|
||||||
|
drr("ImporteIVA") = Math.Round(Dr("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("ImporteIEPS") = Math.Round(Dr("PorcentajeIEPS").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
drr("IEPS") = Dr("ImporteIEPS")
|
||||||
|
drr("Descuento") = Descuento
|
||||||
|
'drr("Obs") = StrTamanios.ToString() + Dr("Obs").ToString()
|
||||||
|
'drr("Total") = (Dr("Cantidad").ToString.ToDecimal * PUActual)
|
||||||
|
'drr("TotalImporte") = Math.Round(Dr("Cantidad").ToString.ToDecimal * PUActual, NumeroDecimales)
|
||||||
|
|
||||||
|
'If PUActual <= 0 Then
|
||||||
|
' Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
||||||
|
' TmpDT.Rows.Remove(drt(0))
|
||||||
|
'Else
|
||||||
|
' Dim drt As DataRow() = TmpDT.Select("Consec = " & Dr("Consec").ToString)
|
||||||
|
' Dim drr As DataRow = drt(0)
|
||||||
|
' 'drr("PU") = PUActual
|
||||||
|
' drr("ImporteIVA") = Math.Round(Dr("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
' drr("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
' drr("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
' drr("ImporteIEPS") = Math.Round(Dr("PorcentajeIEPS").ToString.ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
' drr("IEPS") = Dr("ImporteIEPS")
|
||||||
|
' 'drr("Total") = (Dr("Cantidad").ToString.ToDecimal * PUActual)
|
||||||
|
' 'drr("TotalImporte") = Math.Round(Dr("Cantidad").ToString.ToDecimal * PUActual, NumeroDecimales)
|
||||||
|
'End If
|
||||||
|
|
||||||
If TotalCargos <= 0 Then
|
If TotalCargos <= 0 Then
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
|
|||||||
@@ -245,7 +245,7 @@
|
|||||||
<asp:HyperLink ID="HLOrdenServicio" Target="_blank" runat="server" Visible="false"> <i class="fa fa-plus"></i> Genera O. S.</asp:HyperLink>
|
<asp:HyperLink ID="HLOrdenServicio" Target="_blank" runat="server" Visible="false"> <i class="fa fa-plus"></i> Genera O. S.</asp:HyperLink>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<asp:LinkButton ID="LkCotizacionAutorizar" Target="_blank" runat="server" Visible="false"> <i class="fa fa-check"></i> Autorizar Cotización</asp:LinkButton>
|
<asp:LinkButton ID="LkCotizacionAutorizar" runat="server" Visible="false"> <i class="fa fa-check"></i> Autorizar Cotización</asp:LinkButton>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li id="LiBuscarPrecio" runat="server" visible="false">
|
<li id="LiBuscarPrecio" runat="server" visible="false">
|
||||||
@@ -7099,8 +7099,13 @@
|
|||||||
TxtImporte.value = FormatoNumero(Saldo, 2);
|
TxtImporte.value = FormatoNumero(Saldo, 2);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
TxtImporte.value = "";
|
if (SaldoMaximoUtilizable > 0) {
|
||||||
Chk.checked = false;
|
TxtImporte.value = "";
|
||||||
|
Chk.checked = false;
|
||||||
|
} else {
|
||||||
|
TxtImporte.value = FormatoNumero(Saldo, 2);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -2167,7 +2167,7 @@ Partial Class Ventas
|
|||||||
DdlSubProyectoDatos.Enabled = False
|
DdlSubProyectoDatos.Enabled = False
|
||||||
BtnEmitirImprimir.Visible = False
|
BtnEmitirImprimir.Visible = False
|
||||||
BtnCrearApartirDe.Visible = True
|
BtnCrearApartirDe.Visible = True
|
||||||
If UsuarioActual.TienePermisoProceso(302) AndAlso DdlTipoComprobante.SelectedValue <> "Cot" Then BtnEditar.Visible = True
|
If UsuarioActual.TienePermisoProceso(302) AndAlso DdlTipoComprobante.SelectedValue = "Ing" Then BtnEditar.Visible = True
|
||||||
'DdlEstatus.Enabled = True
|
'DdlEstatus.Enabled = True
|
||||||
|
|
||||||
DivFechaAnticipoCliente.Visible = True
|
DivFechaAnticipoCliente.Visible = True
|
||||||
@@ -2222,7 +2222,13 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
If UsuarioActual.TienePermisoProceso(269) AndAlso Not DevolucionAlmacen = 2 Then
|
If UsuarioActual.TienePermisoProceso(269) AndAlso Not DevolucionAlmacen = 2 Then
|
||||||
DivDevAlm.Visible = True
|
Dim ObjInventario As New ClsInventarios
|
||||||
|
If ObjInventario.GetInv_Mov(CveVenta, UsuarioActual.CveEmpresa) Then
|
||||||
|
If ObjInventario.DtResultados.Rows.Count > 0 Then
|
||||||
|
DivDevAlm.Visible = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
ObjInventario.Dispose()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
@@ -3791,6 +3797,17 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Dim TipoEstatus As Integer = GlobalDTEstatusFactura().FiltroPrimeroValor("TipoEstatus", $"CveEstatusFactura = {CveEstatus}").ToEntero()
|
||||||
|
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(135) = "1" AndAlso DdlTipoComprobante.SelectedValue.Contiene("Cot") AndAlso TipoEstatus = 5 Then
|
||||||
|
If UsuarioActual.TienePermisoProceso(159) Then
|
||||||
|
Dim TienePermiso As String = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, -1).FiltroPrimeroValor("CveSubProyecto", String.Format("CveSubProyecto = {0}", DbRowVenta("CveSubProyecto")))
|
||||||
|
If TienePermiso <> "" Then
|
||||||
|
LbCancelarDocumento.Visible = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
'CargaDetalle
|
'CargaDetalle
|
||||||
If ObjVentas.GetVentaDetalle(CveVenta) Then
|
If ObjVentas.GetVentaDetalle(CveVenta) Then
|
||||||
TmpDT = ObjVentas.DtResultados
|
TmpDT = ObjVentas.DtResultados
|
||||||
@@ -3885,17 +3902,26 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
'Verifico si tiene la funcionalidad (135)
|
|
||||||
If UsuarioActual.Empresa.Funcionalidad(135) = "1" Then
|
If UsuarioActual.Empresa.Funcionalidad(135) = "1" Then
|
||||||
'Reviso cuales son los supervisores
|
'Reviso cuales son los supervisores
|
||||||
Dim Objeto As New ClsVtaVendedores
|
Dim Objeto As New ClsVtaVendedores
|
||||||
|
|
||||||
If Objeto.GetVendedores(UsuarioActual.CveEmpresa) Then
|
If Objeto.GetVendedores(UsuarioActual.CveEmpresa) Then
|
||||||
Dim DTVendedores As New DataTable
|
Dim DTVendedores As New DataTable
|
||||||
DTVendedores = Objeto.DtResultados.FiltraParametros(String.Format("CveVendedor = {0}", DbRowVenta("CveVendedor").ToString())).FiltraParametros(String.Format("CveSupervisor = {0}", UsuarioActual.CveVendedor))
|
If DbRowVenta("CveVendedor").ToString().ToEntero() > 0 AndAlso UsuarioActual.CveVendedor > 0 Then
|
||||||
|
DTVendedores = Objeto.DtResultados.FiltraParametros(String.Format("CveVendedor = {0}", DbRowVenta("CveVendedor").ToString())).FiltraParametros(String.Format("CveSupervisor = {0}", UsuarioActual.CveVendedor))
|
||||||
|
End If
|
||||||
|
|
||||||
'Verifico si es su supervisor asignado
|
'Verifico si es su supervisor asignado
|
||||||
If DTVendedores.Rows.Count > 0 Then
|
If DTVendedores.Rows.Count > 0 Then
|
||||||
LkCotizacionAutorizar.Visible = True
|
LkCotizacionAutorizar.Visible = True
|
||||||
|
|
||||||
|
If TipoEstatus = 2 Then
|
||||||
|
LkCotizacionAutorizar.Visible = False
|
||||||
|
ElseIf TipoEstatus = 2 Then
|
||||||
|
LkCotizacionAutorizar.Visible = False
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
DTVendedores.Dispose()
|
DTVendedores.Dispose()
|
||||||
End If
|
End If
|
||||||
@@ -4651,6 +4677,41 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
GvOCRelacionadas.DataBind()
|
GvOCRelacionadas.DataBind()
|
||||||
|
|
||||||
|
|
||||||
|
'Verifico si tiene la funcionalidad (135)
|
||||||
|
If DdlTipoComprobante.SelectedValue = "Cot" AndAlso UsuarioActual.Empresa.Funcionalidad(135) = "1" Then
|
||||||
|
'Reviso cuales son los supervisores
|
||||||
|
Dim ObjVendedores As New ClsVtaVendedores
|
||||||
|
|
||||||
|
If ObjVendedores.GetVendedores(UsuarioActual.CveEmpresa) Then
|
||||||
|
Dim DTVendedores As New DataTable
|
||||||
|
If DbRowVenta("CveVendedor").ToString().ToEntero() > 0 AndAlso UsuarioActual.CveVendedor > 0 Then
|
||||||
|
DTVendedores = ObjVendedores.DtResultados.FiltraParametros(String.Format("CveVendedor = {0}", DbRowVenta("CveVendedor").ToString())).FiltraParametros(String.Format("CveSupervisor = {0}", UsuarioActual.CveVendedor))
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Verifico si es su supervisor asignado
|
||||||
|
If DTVendedores.Rows.Count > 0 Then
|
||||||
|
If GlobalDTEstatusFactura().FiltroPrimeroValor("TipoEstatus", $"CveEstatusFactura = {Me.CveEstatus}").ToEntero() = 2 Then
|
||||||
|
BtnsFacturar.Visible = True
|
||||||
|
BtnGenerarRemision.Visible = True
|
||||||
|
Else
|
||||||
|
BtnsFacturar.Visible = False
|
||||||
|
BtnGenerarRemision.Visible = False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
DTVendedores.Dispose()
|
||||||
|
End If
|
||||||
|
ObjVendedores.Dispose()
|
||||||
|
End If
|
||||||
|
|
||||||
|
If DdlTipoComprobante.SelectedValue = "Cot" Then
|
||||||
|
If GlobalDTEstatusFactura().FiltroPrimeroValor("TipoEstatus", $"CveEstatusFactura = {Me.CveEstatus}").ToEntero() = 5 Then
|
||||||
|
BtnsFacturar.Visible = False
|
||||||
|
BtnGenerarRemision.Visible = False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
UpPS.Update()
|
UpPS.Update()
|
||||||
UpContado.Update()
|
UpContado.Update()
|
||||||
UpEstatus.Update()
|
UpEstatus.Update()
|
||||||
@@ -10413,7 +10474,7 @@ Partial Class Ventas
|
|||||||
|
|
||||||
If ErrorList.Count = 0 Then
|
If ErrorList.Count = 0 Then
|
||||||
'prepoliza
|
'prepoliza
|
||||||
GuardarVentaPrePolizas(ObjConta, factura, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento)
|
GuardarVentaPrePolizas(ObjConta, factura, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento, ObjInventario:=ObjInventario)
|
||||||
If ErrorList.Count = 0 Then
|
If ErrorList.Count = 0 Then
|
||||||
|
|
||||||
'INVENTARIOS
|
'INVENTARIOS
|
||||||
@@ -10448,7 +10509,7 @@ Partial Class Ventas
|
|||||||
Private Sub GuardarVentaPrePolizas(ByRef ObjConta As ClsContabilidad, factura As Modelos.Factura, TmpDTDetalleMovimientos As DataTable, CveNCaVincular As Integer,
|
Private Sub GuardarVentaPrePolizas(ByRef ObjConta As ClsContabilidad, factura As Modelos.Factura, TmpDTDetalleMovimientos As DataTable, CveNCaVincular As Integer,
|
||||||
ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing,
|
ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing,
|
||||||
ByRef Optional ObjEventos As ClsOIEventos = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False,
|
ByRef Optional ObjEventos As ClsOIEventos = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False,
|
||||||
Optional ValorMultiplicador As Integer = 1, Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing)
|
Optional ValorMultiplicador As Integer = 1, Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing, Optional ObjInventario As ClsInventarios = Nothing)
|
||||||
|
|
||||||
Dim CveIE As Integer = -1
|
Dim CveIE As Integer = -1
|
||||||
Dim DT As DataTable = Nothing
|
Dim DT As DataTable = Nothing
|
||||||
@@ -10467,7 +10528,7 @@ Partial Class Ventas
|
|||||||
If DdlTipoComprobante.SelectedValue <> "Cot" Then
|
If DdlTipoComprobante.SelectedValue <> "Cot" Then
|
||||||
If factura.CvePrePoliza > 0 Then
|
If factura.CvePrePoliza > 0 Then
|
||||||
|
|
||||||
If ProcesoPrepolizas(ObjConta, factura, CveIE, TmpDTDetalleMovimientos, objContPaqi, ValorMultiplicador, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento) Then
|
If ProcesoPrepolizas(ObjConta, factura, CveIE, TmpDTDetalleMovimientos, objContPaqi, ValorMultiplicador, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento, ObjInventario:=ObjInventario) Then
|
||||||
ErrorList.Add("Ocurrió un error al agregar los Movimientos de la prepoliza.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
|
ErrorList.Add("Ocurrió un error al agregar los Movimientos de la prepoliza.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -10478,7 +10539,8 @@ Partial Class Ventas
|
|||||||
End Sub
|
End Sub
|
||||||
Private Function ProcesoPrepolizas(ByRef ObjConta As ClsContabilidad, ObjFactura As Modelos.Factura, CveIE As Integer, TmpDTDetalle As DataTable, ByRef objContPaqi As ClsContPAQi,
|
Private Function ProcesoPrepolizas(ByRef ObjConta As ClsContabilidad, ObjFactura As Modelos.Factura, CveIE As Integer, TmpDTDetalle As DataTable, ByRef objContPaqi As ClsContPAQi,
|
||||||
Optional ValorMultiplicador As Integer = 1, ByRef Optional ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing,
|
Optional ValorMultiplicador As Integer = 1, ByRef Optional ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing,
|
||||||
ByRef Optional ObjEventos As ClsOIEventos = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False, Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing) As Boolean
|
ByRef Optional ObjEventos As ClsOIEventos = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False,
|
||||||
|
Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing, Optional ObjInventario As ClsInventarios = Nothing) As Boolean
|
||||||
Try
|
Try
|
||||||
Dim DT As DataTable
|
Dim DT As DataTable
|
||||||
Dim CvePlantilaPoliza As Integer
|
Dim CvePlantilaPoliza As Integer
|
||||||
@@ -11313,12 +11375,43 @@ Partial Class Ventas
|
|||||||
IdCtaContableCliente = IdCtaContable
|
IdCtaContableCliente = IdCtaContable
|
||||||
CveCuentaCliente = CveCuenta
|
CveCuentaCliente = CveCuenta
|
||||||
|
|
||||||
If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
Dim CveMovimiento As Integer = -1
|
||||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 278, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
Dim CveAlmacen As Integer = -1
|
||||||
|
|
||||||
|
If ObjInventario IsNot Nothing AndAlso ObjInventario.GetInv_Mov(ObjRNC.CveVenta, UsuarioActual.CveEmpresa) Then
|
||||||
|
CveMovimiento = ObjInventario.DtResultados.FiltroPrimeroValor("CveMovimiento", "CvePS IS NULL AND CveConcepto = 42").ToEntero()
|
||||||
|
CveAlmacen = ObjInventario.DtResultados.FiltroPrimeroValor("CveAlmacen", "CvePS IS NULL AND CveConcepto = 42").ToEntero()
|
||||||
|
End If
|
||||||
|
|
||||||
|
'VERIFICA SI TIENE MOVIMIENTO DE ENTRADA DE USADO
|
||||||
|
If CveMovimiento > 0 AndAlso CveAlmacen > 0 Then
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
ErrorPrepoliza = True
|
ErrorPrepoliza = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Dim SubTotalCalculado As Decimal = (importeMovimiento / (1D + ObjRNC.PorcentajeIVA)).ToDecimal
|
||||||
|
|
||||||
|
Dim Importe318 As Decimal = (SubTotalCalculado * ObjRNC.PorcentajeIVA).RoundSQL(2).ToDecimal()
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, Importe318, Referencia, 318, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=Importe318, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, SubTotalCalculado, Referencia, 150, Concepto, ObjFactura.Fecha, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, CveClasificacion:=ObjRNC.DtDetalle.MAX("CveClasificacion").ToEntero(), CveSubProyecto:=ObjRNC.CveSubProyecto, ImporteMX:=SubTotalCalculado, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), TipoCambio:=tipoCambio, CveCuenta:=CveCuenta, Contabilizable:=False) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
Else
|
||||||
|
ViewState("SeGuardoPrePoliza") = True
|
||||||
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
ErrorPrepoliza = True
|
If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 278, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
importeMovimiento = 0
|
importeMovimiento = 0
|
||||||
@@ -12717,15 +12810,15 @@ Partial Class Ventas
|
|||||||
|
|
||||||
'TIMBRADO NUEVO
|
'TIMBRADO NUEVO
|
||||||
Try
|
Try
|
||||||
|
If CveVenta > 0 Then
|
||||||
|
ObjFactura = New Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa, EsCancelacion:=False)
|
||||||
|
End If
|
||||||
|
|
||||||
pdf = PdfFactura(ObjFactura)
|
pdf = PdfFactura(ObjFactura)
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgError)
|
Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgError)
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
If CveVenta > 0 Then
|
|
||||||
ObjFactura = New Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa, EsCancelacion:=False)
|
|
||||||
End If
|
|
||||||
|
|
||||||
LocalSerieFolio = ObjFactura.SerieFolio
|
LocalSerieFolio = ObjFactura.SerieFolio
|
||||||
LocalTipoDocto = ObjFactura.TipoDocto
|
LocalTipoDocto = ObjFactura.TipoDocto
|
||||||
|
|
||||||
@@ -15773,305 +15866,309 @@ Partial Class Ventas
|
|||||||
Optional RegeneraIEPS As Boolean = True, Optional CveVentaDetallePedido2 As Integer = 0, Optional SeActualiza As Boolean = False, Optional CvePromocionDetalle As Integer = -1, Optional EsCargo As Boolean = False) As Boolean
|
Optional RegeneraIEPS As Boolean = True, Optional CveVentaDetallePedido2 As Integer = 0, Optional SeActualiza As Boolean = False, Optional CvePromocionDetalle As Integer = -1, Optional EsCargo As Boolean = False) As Boolean
|
||||||
|
|
||||||
Dim Retorno As Boolean = False
|
Dim Retorno As Boolean = False
|
||||||
If Not CvePS > 0 Then
|
Try
|
||||||
Alert("Ocurrió un error al cargar la información del producto a agregar. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgError)
|
If Not CvePS > 0 Then
|
||||||
Return False
|
Alert("Ocurrió un error al cargar la información del producto a agregar. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgError)
|
||||||
End If
|
|
||||||
|
|
||||||
If (Obs.Length + PS.Length > 1000) AndAlso DdlTipoComprobante.SelectedValue <> "Cot" Then
|
|
||||||
Alert(String.Format("El Nombre y observación del producto tiene longitud de {0} caracteres y excede los 1000 caracteres permitidos.", Obs.Length + PS.Length), TipoMensaje.MsgAdvertencia)
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
|
|
||||||
'VALIDA CONCEPTOS EN CERO - YA SE VALIDA ANTES CON FUNCIONALIDAD - A MIRAS DE ELIMINAR - IPP 28 AGOSTO 2017
|
|
||||||
If Not DdlTipoComprobante.SelectedValue.Contiene("Ped", "Ant") Then
|
|
||||||
If UsuarioActual.CveEmpresa.Contiene(72, 80) AndAlso CveOrdenCompraDetalle = 0 Then ' si viene de una oc, se permiten valores en cero
|
|
||||||
If Cantidad * PU <= 0 Then
|
|
||||||
If Not DdlTipoComprobante.SelectedValue = "DPe" Then
|
|
||||||
Alert("El importe del concepto debe ser mayor a cero. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
Dim Row As DataRow = Nothing
|
|
||||||
Dim TotalCalculableImpuestos As Decimal = 0
|
|
||||||
Dim TotalCalculableImpuestosIVA As Decimal = 0
|
|
||||||
PU = PU.RoundSQL(6) ' el precio unitario puede llevar hasta 6 decimales permitidos
|
|
||||||
|
|
||||||
Row = TmpDT.NewRow()
|
|
||||||
Row("CveProyecto") = CveProyecto
|
|
||||||
Row("Proyecto") = Proyecto
|
|
||||||
Row("CveSubProyecto") = CveSubProyecto
|
|
||||||
Row("SubProyecto") = SubProyecto
|
|
||||||
Row("Serie") = Serie
|
|
||||||
Row("TiempoEntrega") = TiempoEntrega
|
|
||||||
Row("Orden") = TmpDT.Rows.Count + 1
|
|
||||||
Row("Cantidad") = Cantidad
|
|
||||||
Row("CveUM") = CveUM
|
|
||||||
Row("UM") = UM
|
|
||||||
Row("CveClasificacion") = CveClasificacion
|
|
||||||
Row("Clasificacion") = Clasificacion
|
|
||||||
Row("CvePS") = CvePS
|
|
||||||
Row("Obs") = Obs
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Dim DrPS As DataRow = Nothing
|
|
||||||
|
|
||||||
DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("") ' Estado = -1
|
|
||||||
|
|
||||||
If DrPS Is Nothing Then
|
|
||||||
Alert("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.", TipoMensaje.MsgError)
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
|
|
||||||
If (DrPS("SATClaveUnidadMedida").ToString() = "" Or DrPS("SATClavePS").ToString() = "") Then
|
|
||||||
'VALIDA CLAVESAT
|
|
||||||
If Not DdlTipoComprobante.SelectedValue.Contiene("Ped", "PeC") Then 'DOCUMENTOS DONDE NO SE VALIDA
|
|
||||||
If DrPS("SATClavePS").ToString() = "" Then
|
|
||||||
MensajeCveSAT.AppendFormat("<b>{0}-{1}</b>: Sin producto SAT<br/>", DrPS("Codigo").ToString(), DrPS("PS").ToString())
|
|
||||||
Return False
|
|
||||||
ElseIf DrPS("SATClaveUnidadMedida").ToString() = "" Then
|
|
||||||
MensajeCveSAT.AppendFormat("<b>{0}-{1}</b>: Sin Unidad Medida SAT<br/>", DrPS("Codigo").ToString(), DrPS("PS").ToString())
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
|
|
||||||
If UsuarioActual.CveEmpresa = 72 AndAlso DrPS("SATClavePS").ToString() = "01010101" Then
|
|
||||||
MensajeCveSAT.AppendFormat("<b>{0}-{1}</b>: El producto/servicio no existe en el catálogo del SAT<br/>", DrPS("Codigo").ToString(), DrPS("PS").ToString())
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
'verifica si tiene ventaminima
|
|
||||||
If Cantidad > 0 AndAlso DrPS("VentaMinima").ToString().ToDecimal > 0 Then
|
|
||||||
'verifico que la cantidad sea multiplo de venta minima, es decir ventaminima =5, solo puede vender 5,10,15...
|
|
||||||
If Cantidad Mod DrPS("VentaMinima").ToString().ToDecimal <> 0 Then
|
|
||||||
Alert(String.Format("El producto se vende solo en cantidades de {0}", DrPS("VentaMinima").ToString()))
|
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
'VERIFICA SI EN LA FACTURA PADRE SE DESGLOSO EL IEPS
|
If (Obs.Length + PS.Length > 1000) AndAlso DdlTipoComprobante.SelectedValue <> "Cot" Then
|
||||||
Dim FacturaDesglosoIEPS As Boolean = ((CveDevolucion > 0 AndAlso NuevaFactura = 1) AndAlso (Me.ObjFacturaNC IsNot Nothing AndAlso Not Me.ObjFacturaNC.VentaDesglosaIEPS))
|
Alert(String.Format("El Nombre y observación del producto tiene longitud de {0} caracteres y excede los 1000 caracteres permitidos.", Obs.Length + PS.Length), TipoMensaje.MsgAdvertencia)
|
||||||
|
Return False
|
||||||
If Not ClienteDesglosaIEPS Then
|
|
||||||
If Not RegeneraIEPS AndAlso Not FacturaDesglosoIEPS Then
|
|
||||||
PU = PU * (1 + DrPS("IEPSPorcentaje").ToString().ToDecimal)
|
|
||||||
VentaDesglosaIEPS = True
|
|
||||||
End If
|
End If
|
||||||
DrPS("IEPSPorcentaje") = 0
|
|
||||||
End If
|
|
||||||
'SI YA SE DESGLOSO EL IEPS SE GUARDA LA BANDERA EN ESTA FACTURA
|
|
||||||
If FacturaDesglosoIEPS Then
|
|
||||||
VentaDesglosaIEPS = True
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
'VALIDA CONCEPTOS EN CERO - YA SE VALIDA ANTES CON FUNCIONALIDAD - A MIRAS DE ELIMINAR - IPP 28 AGOSTO 2017
|
||||||
TotalCalculableImpuestos = (Cantidad * (PU)) - Descuento
|
If Not DdlTipoComprobante.SelectedValue.Contiene("Ped", "Ant") Then
|
||||||
TotalCalculableImpuestosIVA = TotalCalculableImpuestos * (1 + DrPS("IEPSPorcentaje").ToString().ToDecimal)
|
If UsuarioActual.CveEmpresa.Contiene(72, 80) AndAlso CveOrdenCompraDetalle = 0 Then ' si viene de una oc, se permiten valores en cero
|
||||||
|
If Cantidad * PU <= 0 Then
|
||||||
Row("PU") = PU
|
If Not DdlTipoComprobante.SelectedValue = "DPe" Then
|
||||||
Row("Codigo") = DrPS("Codigo")
|
Alert("El importe del concepto debe ser mayor a cero. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
|
||||||
Row("NoIdentificacion") = DrPS("Codigo")
|
Return False
|
||||||
Row("ClaveSATFraccionArancelaria") = DrPS("ClaveSATFraccionArancelaria")
|
End If
|
||||||
Row("ClaveSATUnidadAduana") = DrPS("ClaveSATUnidadAduana")
|
End If
|
||||||
Row("ClaveSATFraccionArancelariaDescripcion") = DrPS("ClaveSATFraccionArancelariaDescripcion")
|
End If
|
||||||
Row("ClaveSATUnidadAduanaDescripcion") = DrPS("ClaveSATUnidadAduanaDescripcion")
|
|
||||||
If Modalidad = "U" Then
|
|
||||||
Row("Consec") = Index
|
|
||||||
Else
|
|
||||||
Row("Consec") = TmpDT.Rows.Count + 1
|
|
||||||
End If
|
|
||||||
|
|
||||||
Row("PS") = DrPS("PS")
|
|
||||||
Row("CodigoPS") = DrPS("PSCodigo").ToString()
|
|
||||||
Row("CveTipoPS") = DrPS("CveTipoPS")
|
|
||||||
Row("CveTipoInvPS") = DrPS("Inv_CveMetodoInventario")
|
|
||||||
Row("CveTamaño") = DrPS("CveTamaño")
|
|
||||||
|
|
||||||
If CveClasificacion <= 0 Then Row("CveClasificacion") = DrPS("CveClasificacion")
|
|
||||||
If Clasificacion = "" Then Row("Clasificacion") = DrPS("Clasificacion")
|
|
||||||
|
|
||||||
If DrPS("IVA").ToString().Contiene("-1", "") Then
|
|
||||||
Row("PorcentajeIVA") = PorcentajeIVA
|
|
||||||
Else
|
|
||||||
Row("PorcentajeIVA") = DrPS("IVA")
|
|
||||||
End If
|
|
||||||
|
|
||||||
Dim ClienteRetIVA = Me.ClienteRetIVA
|
|
||||||
|
|
||||||
If ClienteRetIVA <= 0 Then
|
|
||||||
If CBool(DrPS("EsOutSourcing").ToString()) Then
|
|
||||||
ClienteRetIVA = 0.06D
|
|
||||||
DdlTipoRetencion.SelectedValueExist("4")
|
|
||||||
ElseIf DdlTipoRetencion.SelectedValue.Contiene("1", "2") Then
|
|
||||||
ClienteRetIVA = 0.106667D
|
|
||||||
ElseIf DdlTipoRetencion.SelectedValue.Contiene("3") Then
|
|
||||||
ClienteRetIVA = 0.04D
|
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
LblRetIVA.Text = (ClienteRetIVA * 100).FormatoNumero
|
Dim Row As DataRow = Nothing
|
||||||
TrRetIVA.Style.Add("display", "")
|
Dim TotalCalculableImpuestos As Decimal = 0
|
||||||
DdlTipoRetencion.Visible = True
|
Dim TotalCalculableImpuestosIVA As Decimal = 0
|
||||||
|
PU = PU.RoundSQL(6) ' el precio unitario puede llevar hasta 6 decimales permitidos
|
||||||
|
|
||||||
|
Row = TmpDT.NewRow()
|
||||||
|
Row("CveProyecto") = CveProyecto
|
||||||
|
Row("Proyecto") = Proyecto
|
||||||
|
Row("CveSubProyecto") = CveSubProyecto
|
||||||
|
Row("SubProyecto") = SubProyecto
|
||||||
|
Row("Serie") = Serie
|
||||||
|
Row("TiempoEntrega") = TiempoEntrega
|
||||||
|
Row("Orden") = TmpDT.Rows.Count + 1
|
||||||
|
Row("Cantidad") = Cantidad
|
||||||
|
Row("CveUM") = CveUM
|
||||||
|
Row("UM") = UM
|
||||||
|
Row("CveClasificacion") = CveClasificacion
|
||||||
|
Row("Clasificacion") = Clasificacion
|
||||||
|
Row("CvePS") = CvePS
|
||||||
|
Row("Obs") = Obs
|
||||||
|
|
||||||
|
|
||||||
Row("IVA") = Row("PorcentajeIVA")
|
Dim DrPS As DataRow = Nothing
|
||||||
Row("ImporteIVA") = (Row("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales)
|
|
||||||
Row("ImporteRetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
|
||||||
Row("ImporteRetISR") = (ClienteRetISR * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
|
||||||
Row("PorcentajeRetIVA") = ClienteRetIVA
|
|
||||||
Row("PorcentajeRetISR") = ClienteRetISR
|
|
||||||
Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
|
|
||||||
Row("ImporteIEPS") = (DrPS("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
|
||||||
Row("IEPS") = Row("ImporteIEPS")
|
|
||||||
Row("Descuento") = (Descuento).RoundSQL(NumeroDecimales)
|
|
||||||
Row("TipoDescuento") = HdnTipoDescuento.Value
|
|
||||||
Row("CvePromocionDetalle") = CvePromocionDetalle
|
|
||||||
Row("Total") = (Cantidad * PU)
|
|
||||||
Row("TotalImporte") = (Cantidad * PU).RoundSQL(NumeroDecimales)
|
|
||||||
|
|
||||||
'Row("AsientoContableVentas") = DrPS("AsientoContableVentas")
|
DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("") ' Estado = -1
|
||||||
' Row("IdCtaContVentas") = IdCtaContable
|
|
||||||
' Row("AplicaParaConcepto") = AplicaParaConcepto
|
|
||||||
|
|
||||||
Row("SATClaveProdServ") = DrPS("SATClavePS")
|
If DrPS Is Nothing Then
|
||||||
Row("SATClaveUM") = DrPS("SATClaveUnidadMedida")
|
Alert("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.", TipoMensaje.MsgError)
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
If UsuarioActual.Empresa.UsaAC Then
|
If (DrPS("SATClaveUnidadMedida").ToString() = "" Or DrPS("SATClavePS").ToString() = "") Then
|
||||||
Row("CvePresupuestoIngreso") = Me.DdlFuenteRecaudacion.SelectedValue
|
'VALIDA CLAVESAT
|
||||||
End If
|
If Not DdlTipoComprobante.SelectedValue.Contiene("Ped", "PeC") Then 'DOCUMENTOS DONDE NO SE VALIDA
|
||||||
|
If DrPS("SATClavePS").ToString() = "" Then
|
||||||
|
MensajeCveSAT.AppendFormat("<b>{0}-{1}</b>: Sin producto SAT<br/>", DrPS("Codigo").ToString(), DrPS("PS").ToString())
|
||||||
|
Return False
|
||||||
|
ElseIf DrPS("SATClaveUnidadMedida").ToString() = "" Then
|
||||||
|
MensajeCveSAT.AppendFormat("<b>{0}-{1}</b>: Sin Unidad Medida SAT<br/>", DrPS("Codigo").ToString(), DrPS("PS").ToString())
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
Row("EntregaDirecta") = EntregaDirecta
|
If UsuarioActual.CveEmpresa = 72 AndAlso DrPS("SATClavePS").ToString() = "01010101" Then
|
||||||
'Contratos
|
MensajeCveSAT.AppendFormat("<b>{0}-{1}</b>: El producto/servicio no existe en el catálogo del SAT<br/>", DrPS("Codigo").ToString(), DrPS("PS").ToString())
|
||||||
Row("CveContratoDetalle") = CveContratoDetalle
|
|
||||||
Row("CveVentaDetalle") = CveVentaDetalle
|
|
||||||
Row("CveMovimientoDetallePedido") = CveMovimientoDetallePedido
|
|
||||||
Row("CveOrdenCompraDetalle") = CveOrdenCompraDetalle
|
|
||||||
Row("CveVentaDetalleRemision") = CveVentaDetalleRemision
|
|
||||||
Row("CveVentaDetalleCotizacion") = CveVentaDetalleCotizacion
|
|
||||||
Row("CveVentaDetallePedido2") = CveVentaDetallePedido2
|
|
||||||
Row("CuentaPredial") = CuentaPredial
|
|
||||||
Row("EsOutSourcing") = DrPS("EsOutSourcing")
|
|
||||||
Row("EsCargo") = EsCargo
|
|
||||||
|
|
||||||
If UsuarioActual.CveEmpresa = 119 Then
|
|
||||||
If Not RemisionesLista.Count > 0 Then 'SI VIENE DE REMISION NO SE CONSIDERA
|
|
||||||
|
|
||||||
'MONEDA DIFERENTE DEL PS AL PRIMER PS AGREGADO
|
|
||||||
If DdlMoneda.Enabled = False And CveVenta < 0 And TmpDT.Rows.Count > 0 Then
|
|
||||||
If DdlMoneda.SelectedValue <> DrPS("CveMoneda").ToString() Then
|
|
||||||
Alert($"La moneda base del producto: <b>{DrPS("PSCodigo").ToString()}</b> es diferente a la moneda del documento.", TipoMensaje.MsgAdvertencia)
|
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
'ACTIVA PRODUCTOS DE LA MISMA MONEDA
|
'verifica si tiene ventaminima
|
||||||
If TmpDT.Rows.Count = 0 And CveVenta < 0 Then
|
If Cantidad > 0 AndAlso DrPS("VentaMinima").ToString().ToDecimal > 0 Then
|
||||||
DdlMoneda.SelectedValueExist(DrPS("CveMoneda").ToString())
|
'verifico que la cantidad sea multiplo de venta minima, es decir ventaminima =5, solo puede vender 5,10,15...
|
||||||
CambiaMoneda()
|
If Cantidad Mod DrPS("VentaMinima").ToString().ToDecimal <> 0 Then
|
||||||
DdlMoneda.Enabled = False
|
Alert(String.Format("El producto se vende solo en cantidades de {0}", DrPS("VentaMinima").ToString()))
|
||||||
|
Return False
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
|
'VERIFICA SI EN LA FACTURA PADRE SE DESGLOSO EL IEPS
|
||||||
|
Dim FacturaDesglosoIEPS As Boolean = ((CveDevolucion > 0 AndAlso NuevaFactura = 1) AndAlso (Me.ObjFacturaNC IsNot Nothing AndAlso Not Me.ObjFacturaNC.VentaDesglosaIEPS))
|
||||||
|
|
||||||
|
If Not ClienteDesglosaIEPS Then
|
||||||
|
If Not RegeneraIEPS AndAlso Not FacturaDesglosoIEPS Then
|
||||||
|
PU = PU * (1 + DrPS("IEPSPorcentaje").ToString().ToDecimal)
|
||||||
|
VentaDesglosaIEPS = True
|
||||||
|
End If
|
||||||
|
DrPS("IEPSPorcentaje") = 0
|
||||||
|
End If
|
||||||
|
'SI YA SE DESGLOSO EL IEPS SE GUARDA LA BANDERA EN ESTA FACTURA
|
||||||
|
If FacturaDesglosoIEPS Then
|
||||||
|
VentaDesglosaIEPS = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
'RECARGAR GV
|
TotalCalculableImpuestos = (Cantidad * (PU)) - Descuento
|
||||||
TmpDT.Rows.Add(Row)
|
TotalCalculableImpuestosIVA = TotalCalculableImpuestos * (1 + DrPS("IEPSPorcentaje").ToString().ToDecimal)
|
||||||
|
|
||||||
|
Row("PU") = PU
|
||||||
|
Row("Codigo") = DrPS("Codigo")
|
||||||
|
Row("NoIdentificacion") = DrPS("Codigo")
|
||||||
|
Row("ClaveSATFraccionArancelaria") = DrPS("ClaveSATFraccionArancelaria")
|
||||||
|
Row("ClaveSATUnidadAduana") = DrPS("ClaveSATUnidadAduana")
|
||||||
|
Row("ClaveSATFraccionArancelariaDescripcion") = DrPS("ClaveSATFraccionArancelariaDescripcion")
|
||||||
|
Row("ClaveSATUnidadAduanaDescripcion") = DrPS("ClaveSATUnidadAduanaDescripcion")
|
||||||
|
If Modalidad = "U" Then
|
||||||
|
Row("Consec") = Index
|
||||||
|
Else
|
||||||
|
Row("Consec") = TmpDT.Rows.Count + 1
|
||||||
|
End If
|
||||||
|
|
||||||
|
Row("PS") = DrPS("PS")
|
||||||
|
Row("CodigoPS") = DrPS("PSCodigo").ToString()
|
||||||
|
Row("CveTipoPS") = DrPS("CveTipoPS")
|
||||||
|
Row("CveTipoInvPS") = DrPS("Inv_CveMetodoInventario")
|
||||||
|
Row("CveTamaño") = DrPS("CveTamaño")
|
||||||
|
|
||||||
|
If CveClasificacion <= 0 Then Row("CveClasificacion") = DrPS("CveClasificacion")
|
||||||
|
If Clasificacion = "" Then Row("Clasificacion") = DrPS("Clasificacion")
|
||||||
|
|
||||||
|
If DrPS("IVA").ToString().Contiene("-1", "") Then
|
||||||
|
Row("PorcentajeIVA") = PorcentajeIVA
|
||||||
|
Else
|
||||||
|
Row("PorcentajeIVA") = DrPS("IVA")
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim ClienteRetIVA = Me.ClienteRetIVA
|
||||||
|
|
||||||
|
If ClienteRetIVA <= 0 Then
|
||||||
|
If CBool(DrPS("EsOutSourcing").ToString()) Then
|
||||||
|
ClienteRetIVA = 0.06D
|
||||||
|
DdlTipoRetencion.SelectedValueExist("4")
|
||||||
|
ElseIf DdlTipoRetencion.SelectedValue.Contiene("1", "2") Then
|
||||||
|
ClienteRetIVA = 0.106667D
|
||||||
|
ElseIf DdlTipoRetencion.SelectedValue.Contiene("3") Then
|
||||||
|
ClienteRetIVA = 0.04D
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
LblRetIVA.Text = (ClienteRetIVA * 100).FormatoNumero
|
||||||
|
TrRetIVA.Style.Add("display", "")
|
||||||
|
DdlTipoRetencion.Visible = True
|
||||||
|
|
||||||
|
|
||||||
'AGREGA PS ADICIONAL
|
Row("IVA") = Row("PorcentajeIVA")
|
||||||
If UsuarioActual.Empresa.Funcionalidad(561).ToString() = "1" AndAlso Not UsuarioActual.TienePermisoProceso(285) AndAlso GlobalDTPSAdicionales(CvePS, UsuarioActual.CveEmpresa).Rows.Count > 0 AndAlso Not SeActualiza Then
|
Row("ImporteIVA") = (Row("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales)
|
||||||
|
Row("ImporteRetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
||||||
|
Row("ImporteRetISR") = (ClienteRetISR * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
||||||
|
Row("PorcentajeRetIVA") = ClienteRetIVA
|
||||||
|
Row("PorcentajeRetISR") = ClienteRetISR
|
||||||
|
Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
|
||||||
|
Row("ImporteIEPS") = (DrPS("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
||||||
|
Row("IEPS") = Row("ImporteIEPS")
|
||||||
|
Row("Descuento") = (Descuento).RoundSQL(NumeroDecimales)
|
||||||
|
Row("TipoDescuento") = HdnTipoDescuento.Value
|
||||||
|
Row("CvePromocionDetalle") = CvePromocionDetalle
|
||||||
|
Row("Total") = (Cantidad * PU)
|
||||||
|
Row("TotalImporte") = (Cantidad * PU).RoundSQL(NumeroDecimales)
|
||||||
|
|
||||||
For Each Dr As DataRow In GlobalDTPSAdicionales(CvePS, UsuarioActual.CveEmpresa).Rows
|
'Row("AsientoContableVentas") = DrPS("AsientoContableVentas")
|
||||||
Dim CvePSAdicional As Integer = Dr("CvePSAdicional").ToString().ToEntero()
|
' Row("IdCtaContVentas") = IdCtaContable
|
||||||
Dim DrPoliza As DataRow = TmpDT.NewRow()
|
' Row("AplicaParaConcepto") = AplicaParaConcepto
|
||||||
DrPoliza.ItemArray = Row.ItemArray
|
|
||||||
Dim DrPSAdicional = GlobalDTPS(UsuarioActual.CveEmpresa, CvePSAdicional).Rows(0)
|
|
||||||
If DrPSAdicional IsNot Nothing Then
|
|
||||||
DrPoliza("CvePS") = CvePSAdicional
|
|
||||||
DrPoliza("PS") = DrPSAdicional("PS").ToString()
|
|
||||||
DrPoliza("CveUM") = DrPSAdicional("CveUM").ToString().ToEntero()
|
|
||||||
DrPoliza("UM") = DrPSAdicional("UnidadMedida").ToString()
|
|
||||||
DrPoliza("CveClasificacion") = DrPSAdicional("CveClasificacion").ToString().ToEntero()
|
|
||||||
DrPoliza("Clasificacion") = DrPSAdicional("Clasificacion").ToString()
|
|
||||||
DrPoliza("CodigoPS") = DrPSAdicional("PSCodigo").ToString()
|
|
||||||
DrPoliza("CveTipoPS") = DrPSAdicional("CveTipoPS")
|
|
||||||
DrPoliza("CveTipoInvPS") = DrPSAdicional("Inv_CveMetodoInventario")
|
|
||||||
DrPoliza("NoIdentificacion") = DrPSAdicional("Codigo")
|
|
||||||
If Modalidad = "U" Then
|
|
||||||
DrPoliza("Consec") = Index
|
|
||||||
Else
|
|
||||||
DrPoliza("Consec") = TmpDT.Rows.Count + 1
|
|
||||||
End If
|
|
||||||
Row("Orden") = TmpDT.Rows.Count + 1
|
|
||||||
DrPoliza("Cantidad") = If(Dr("Cantidad").ToString().ToDecimal > 0, Dr("Cantidad").ToString().ToDecimal, Cantidad)
|
|
||||||
PU = 0
|
|
||||||
|
|
||||||
Dim PrecioSugerido As Decimal = 0
|
Row("SATClaveProdServ") = DrPS("SATClavePS")
|
||||||
'Dim CvePrecioListaPS = GlobalDTCliente(UsuarioActual.CveEmpresa, -1).FiltroPrimeroValor("CvePrecioLista", $"CveCliente = {CveCliente}").ToEntero()
|
Row("SATClaveUM") = DrPS("SATClaveUnidadMedida")
|
||||||
If CvePrecioLista > 0 Then
|
|
||||||
Dim ObjPS As New ClsProductosServicios
|
|
||||||
If ObjPS.GetPSPreciosLista(UsuarioActual.CveEmpresa, CvePrecioLista, CvePS:=CvePSAdicional) Then
|
|
||||||
|
|
||||||
PrecioSugerido = ObjPS.DtResultados.FiltroPrimeroValor("PrecioLista").ToDecimal
|
If UsuarioActual.Empresa.UsaAC Then
|
||||||
If PrecioSugerido = 0 Then
|
Row("CvePresupuestoIngreso") = Me.DdlFuenteRecaudacion.SelectedValue
|
||||||
Dim ObjInventarios As New ClsInventarios
|
End If
|
||||||
Dim CostoPS = ObjInventarios.GetCostoPS(CvePSAdicional, DrPoliza("Cantidad").ToString().ToDecimal, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveTipoAlmacen:=1)
|
|
||||||
|
|
||||||
'si el costo es cero, puede ser que no halla movimientos del producto, en esa sucursal. y se volverá a sacar sin especificar sucursal
|
Row("EntregaDirecta") = EntregaDirecta
|
||||||
If CostoPS = 0 Then CostoPS = ObjInventarios.GetCostoPS(CvePSAdicional, DrPoliza("Cantidad").ToString().ToDecimal, -1, "-1", TxtFecha.Text.ToDate, -1, CveTipoAlmacen:=1)
|
'Contratos
|
||||||
|
Row("CveContratoDetalle") = CveContratoDetalle
|
||||||
|
Row("CveVentaDetalle") = CveVentaDetalle
|
||||||
|
Row("CveMovimientoDetallePedido") = CveMovimientoDetallePedido
|
||||||
|
Row("CveOrdenCompraDetalle") = CveOrdenCompraDetalle
|
||||||
|
Row("CveVentaDetalleRemision") = CveVentaDetalleRemision
|
||||||
|
Row("CveVentaDetalleCotizacion") = CveVentaDetalleCotizacion
|
||||||
|
Row("CveVentaDetallePedido2") = CveVentaDetallePedido2
|
||||||
|
Row("CuentaPredial") = CuentaPredial
|
||||||
|
Row("EsOutSourcing") = DrPS("EsOutSourcing")
|
||||||
|
Row("EsCargo") = EsCargo
|
||||||
|
|
||||||
ObjInventarios.Dispose()
|
If UsuarioActual.CveEmpresa = 119 Then
|
||||||
Dim PorcentajePrecio = ObjPS.DtResultados.FiltroPrimeroValor("Porcentaje").ToDecimal
|
If Not RemisionesLista.Count > 0 Then 'SI VIENE DE REMISION NO SE CONSIDERA
|
||||||
If CostoPS > 0 And PorcentajePrecio > 0 Then
|
|
||||||
PrecioSugerido = ((PorcentajePrecio / 100) + 1) * CostoPS
|
'MONEDA DIFERENTE DEL PS AL PRIMER PS AGREGADO
|
||||||
End If
|
If DdlMoneda.Enabled = False And CveVenta < 0 And TmpDT.Rows.Count > 0 Then
|
||||||
End If
|
If DdlMoneda.SelectedValue <> DrPS("CveMoneda").ToString() Then
|
||||||
ObjPS.Dispose()
|
Alert($"La moneda base del producto: <b>{DrPS("PSCodigo").ToString()}</b> es diferente a la moneda del documento.", TipoMensaje.MsgAdvertencia)
|
||||||
|
Return False
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'ACTIVA PRODUCTOS DE LA MISMA MONEDA
|
||||||
If PrecioSugerido > 0 Then
|
If TmpDT.Rows.Count = 0 And CveVenta < 0 Then
|
||||||
PU = PrecioSugerido
|
DdlMoneda.SelectedValueExist(DrPS("CveMoneda").ToString())
|
||||||
|
CambiaMoneda()
|
||||||
|
DdlMoneda.Enabled = False
|
||||||
End If
|
End If
|
||||||
PU = Math.Round(PU, 6)
|
|
||||||
DrPoliza("PU") = PU
|
|
||||||
TotalCalculableImpuestos = (DrPoliza("Cantidad").ToString().ToDecimal * (PU))
|
|
||||||
|
|
||||||
If DrPSAdicional("IVA").ToString().Contiene("-1", "") Then
|
|
||||||
DrPoliza("PorcentajeIVA") = PorcentajeIVA
|
|
||||||
Else
|
|
||||||
DrPoliza("PorcentajeIVA") = DrPSAdicional("IVA")
|
|
||||||
End If
|
|
||||||
DrPoliza("IVA") = DrPoliza("PorcentajeIVA")
|
|
||||||
DrPoliza("ImporteIVA") = Math.Round(DrPoliza("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
DrPoliza("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
DrPoliza("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
DrPoliza("PorcentajeRetIVA") = ClienteRetIVA
|
|
||||||
DrPoliza("PorcentajeRetISR") = ClienteRetISR
|
|
||||||
DrPoliza("PorcentajeIEPS") = DrPSAdicional("IEPSPorcentaje")
|
|
||||||
DrPoliza("ImporteIEPS") = Math.Round(DrPSAdicional("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
|
||||||
DrPoliza("IEPS") = DrPoliza("ImporteIEPS")
|
|
||||||
DrPoliza("Descuento") = 0 ' Descuento
|
|
||||||
DrPoliza("TipoDescuento") = HdnTipoDescuento.Value
|
|
||||||
DrPoliza("Total") = (DrPoliza("Cantidad").ToString().ToDecimal * PU)
|
|
||||||
DrPoliza("TotalImporte") = Math.Round(DrPoliza("Cantidad").ToString().ToDecimal * PU, NumeroDecimales)
|
|
||||||
DrPoliza("SATClaveProdServ") = DrPSAdicional("SATClavePS")
|
|
||||||
DrPoliza("SATClaveUM") = DrPSAdicional("SATClaveUnidadMedida")
|
|
||||||
|
|
||||||
TmpDT.Rows.Add(DrPoliza)
|
|
||||||
End If
|
End If
|
||||||
Next
|
End If
|
||||||
|
|
||||||
|
'RECARGAR GV
|
||||||
|
TmpDT.Rows.Add(Row)
|
||||||
|
|
||||||
|
|
||||||
End If
|
'AGREGA PS ADICIONAL
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(561).ToString() = "1" AndAlso Not UsuarioActual.TienePermisoProceso(285) AndAlso GlobalDTPSAdicionales(CvePS, UsuarioActual.CveEmpresa).Rows.Count > 0 AndAlso Not SeActualiza Then
|
||||||
|
|
||||||
|
For Each Dr As DataRow In GlobalDTPSAdicionales(CvePS, UsuarioActual.CveEmpresa).Rows
|
||||||
|
Dim CvePSAdicional As Integer = Dr("CvePSAdicional").ToString().ToEntero()
|
||||||
|
Dim DrPoliza As DataRow = TmpDT.NewRow()
|
||||||
|
DrPoliza.ItemArray = Row.ItemArray
|
||||||
|
Dim DrPSAdicional = GlobalDTPS(UsuarioActual.CveEmpresa, CvePSAdicional).Rows(0)
|
||||||
|
If DrPSAdicional IsNot Nothing Then
|
||||||
|
DrPoliza("CvePS") = CvePSAdicional
|
||||||
|
DrPoliza("PS") = DrPSAdicional("PS").ToString()
|
||||||
|
DrPoliza("CveUM") = DrPSAdicional("CveUM").ToString().ToEntero()
|
||||||
|
DrPoliza("UM") = DrPSAdicional("UnidadMedida").ToString()
|
||||||
|
DrPoliza("CveClasificacion") = DrPSAdicional("CveClasificacion").ToString().ToEntero()
|
||||||
|
DrPoliza("Clasificacion") = DrPSAdicional("Clasificacion").ToString()
|
||||||
|
DrPoliza("CodigoPS") = DrPSAdicional("PSCodigo").ToString()
|
||||||
|
DrPoliza("CveTipoPS") = DrPSAdicional("CveTipoPS")
|
||||||
|
DrPoliza("CveTipoInvPS") = DrPSAdicional("Inv_CveMetodoInventario")
|
||||||
|
DrPoliza("NoIdentificacion") = DrPSAdicional("Codigo")
|
||||||
|
If Modalidad = "U" Then
|
||||||
|
DrPoliza("Consec") = Index
|
||||||
|
Else
|
||||||
|
DrPoliza("Consec") = TmpDT.Rows.Count + 1
|
||||||
|
End If
|
||||||
|
Row("Orden") = TmpDT.Rows.Count + 1
|
||||||
|
DrPoliza("Cantidad") = If(Dr("Cantidad").ToString().ToDecimal > 0, Dr("Cantidad").ToString().ToDecimal, Cantidad)
|
||||||
|
PU = 0
|
||||||
|
|
||||||
|
Dim PrecioSugerido As Decimal = 0
|
||||||
|
'Dim CvePrecioListaPS = GlobalDTCliente(UsuarioActual.CveEmpresa, -1).FiltroPrimeroValor("CvePrecioLista", $"CveCliente = {CveCliente}").ToEntero()
|
||||||
|
If CvePrecioLista > 0 Then
|
||||||
|
Dim ObjPS As New ClsProductosServicios
|
||||||
|
If ObjPS.GetPSPreciosLista(UsuarioActual.CveEmpresa, CvePrecioLista, CvePS:=CvePSAdicional) Then
|
||||||
|
|
||||||
|
PrecioSugerido = ObjPS.DtResultados.FiltroPrimeroValor("PrecioLista").ToDecimal
|
||||||
|
If PrecioSugerido = 0 Then
|
||||||
|
Dim ObjInventarios As New ClsInventarios
|
||||||
|
Dim CostoPS = ObjInventarios.GetCostoPS(CvePSAdicional, DrPoliza("Cantidad").ToString().ToDecimal, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveTipoAlmacen:=1)
|
||||||
|
|
||||||
|
'si el costo es cero, puede ser que no halla movimientos del producto, en esa sucursal. y se volverá a sacar sin especificar sucursal
|
||||||
|
If CostoPS = 0 Then CostoPS = ObjInventarios.GetCostoPS(CvePSAdicional, DrPoliza("Cantidad").ToString().ToDecimal, -1, "-1", TxtFecha.Text.ToDate, -1, CveTipoAlmacen:=1)
|
||||||
|
|
||||||
|
ObjInventarios.Dispose()
|
||||||
|
Dim PorcentajePrecio = ObjPS.DtResultados.FiltroPrimeroValor("Porcentaje").ToDecimal
|
||||||
|
If CostoPS > 0 And PorcentajePrecio > 0 Then
|
||||||
|
PrecioSugerido = ((PorcentajePrecio / 100) + 1) * CostoPS
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
ObjPS.Dispose()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If PrecioSugerido > 0 Then
|
||||||
|
PU = PrecioSugerido
|
||||||
|
End If
|
||||||
|
PU = Math.Round(PU, 6)
|
||||||
|
DrPoliza("PU") = PU
|
||||||
|
TotalCalculableImpuestos = (DrPoliza("Cantidad").ToString().ToDecimal * (PU))
|
||||||
|
|
||||||
|
If DrPSAdicional("IVA").ToString().Contiene("-1", "") Then
|
||||||
|
DrPoliza("PorcentajeIVA") = PorcentajeIVA
|
||||||
|
Else
|
||||||
|
DrPoliza("PorcentajeIVA") = DrPSAdicional("IVA")
|
||||||
|
End If
|
||||||
|
DrPoliza("IVA") = DrPoliza("PorcentajeIVA")
|
||||||
|
DrPoliza("ImporteIVA") = Math.Round(DrPoliza("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
DrPoliza("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
DrPoliza("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
DrPoliza("PorcentajeRetIVA") = ClienteRetIVA
|
||||||
|
DrPoliza("PorcentajeRetISR") = ClienteRetISR
|
||||||
|
DrPoliza("PorcentajeIEPS") = DrPSAdicional("IEPSPorcentaje")
|
||||||
|
DrPoliza("ImporteIEPS") = Math.Round(DrPSAdicional("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos, NumeroDecimales)
|
||||||
|
DrPoliza("IEPS") = DrPoliza("ImporteIEPS")
|
||||||
|
DrPoliza("Descuento") = 0 ' Descuento
|
||||||
|
DrPoliza("TipoDescuento") = HdnTipoDescuento.Value
|
||||||
|
DrPoliza("Total") = (DrPoliza("Cantidad").ToString().ToDecimal * PU)
|
||||||
|
DrPoliza("TotalImporte") = Math.Round(DrPoliza("Cantidad").ToString().ToDecimal * PU, NumeroDecimales)
|
||||||
|
DrPoliza("SATClaveProdServ") = DrPSAdicional("SATClavePS")
|
||||||
|
DrPoliza("SATClaveUM") = DrPSAdicional("SATClaveUnidadMedida")
|
||||||
|
|
||||||
|
TmpDT.Rows.Add(DrPoliza)
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Retorno = True
|
||||||
|
Catch ex As Exception
|
||||||
|
Retorno = False
|
||||||
|
OnError("Ocurrió un error al agregar el producto/servicio", ex)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
|
||||||
Retorno = True
|
|
||||||
Return Retorno
|
Return Retorno
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
@@ -19542,8 +19639,19 @@ Partial Class Ventas
|
|||||||
LBDevolucionAlmacen.ToolTip = "¿Está seguro de Solicitar la Devolución de Almacén?"
|
LBDevolucionAlmacen.ToolTip = "¿Está seguro de Solicitar la Devolución de Almacén?"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If VentaSaldoAlmacen < 0 Then
|
||||||
|
If DevolucionAlmacen = 0 Then
|
||||||
|
LBAplicaDevolucion.Visible = True
|
||||||
|
ElseIf DevolucionAlmacen.Contiene(1, 2) Then
|
||||||
|
LBAplicaDevolucion.Visible = False
|
||||||
|
End If
|
||||||
|
ElseIf VentaSaldoAlmacen >= 0 Then
|
||||||
|
LBAplicaDevolucion.Visible = False
|
||||||
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
UpnTools.Update()
|
||||||
'UpInvDev.Update()
|
'UpInvDev.Update()
|
||||||
End Sub
|
End Sub
|
||||||
Protected Sub LBDevolucionAlmacen_Click(sender As Object, e As EventArgs)
|
Protected Sub LBDevolucionAlmacen_Click(sender As Object, e As EventArgs)
|
||||||
@@ -19571,8 +19679,9 @@ Partial Class Ventas
|
|||||||
ObjVentas.Dispose()
|
ObjVentas.Dispose()
|
||||||
|
|
||||||
Me.DevolucionAlmacen = EstatusDevolucion
|
Me.DevolucionAlmacen = EstatusDevolucion
|
||||||
|
|
||||||
InicializaDevolucionAlmacen()
|
InicializaDevolucionAlmacen()
|
||||||
UpnTools.Update()
|
'UpnTools.Update()
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -20243,8 +20352,21 @@ Partial Class Ventas
|
|||||||
End Sub
|
End Sub
|
||||||
Private Sub LkCotizacionAutorizar_Click(sender As Object, e As EventArgs) Handles LkCotizacionAutorizar.Click
|
Private Sub LkCotizacionAutorizar_Click(sender As Object, e As EventArgs) Handles LkCotizacionAutorizar.Click
|
||||||
EsSupervisor = True
|
EsSupervisor = True
|
||||||
GeneraPDFCotizacion(True)
|
Dim ActualizoEstatus As Boolean = False
|
||||||
Alert("La cotización ha sido enviada al correo de nuestro cliente:" & Mail)
|
|
||||||
|
Dim ObjVentas As New ClsVentas
|
||||||
|
If ObjVentas.UpdateEstatusFactura(8, FolioFiscal, "", Now, CveVenta) Then
|
||||||
|
ActualizoEstatus = True
|
||||||
|
End If
|
||||||
|
ObjVentas.Dispose()
|
||||||
|
|
||||||
|
If ActualizoEstatus Then
|
||||||
|
'GeneraPDFCotizacion(True)
|
||||||
|
Alert("La cotización ha sido enviada al correo de nuestro cliente:" & Mail)
|
||||||
|
Else
|
||||||
|
Alert("No se pudo autorizar la cotización", TipoMensaje.MsgError)
|
||||||
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user