Pendientes BDH
This commit is contained in:
@@ -1366,10 +1366,6 @@ Namespace Modelos
|
||||
|
||||
End If
|
||||
|
||||
If Not GuardarUsados(ObjVentas.IniciaTransacSQL, ObjVentas.CveVenta, ObjVentas, factura.TipoDocto) Then
|
||||
ErrorList.Add("Error al guardar usados")
|
||||
End If
|
||||
|
||||
|
||||
If ErrorList.Count = 0 AndAlso ObjVentas.CveVenta > 0 Then
|
||||
|
||||
@@ -1379,6 +1375,11 @@ Namespace Modelos
|
||||
factura.Timbre.Comprobante.Serie = ObjVentas.Serie
|
||||
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 DtVentasNC Is Nothing Then
|
||||
InicializaDTVentasNC()
|
||||
@@ -1909,30 +1910,31 @@ Namespace Modelos
|
||||
DtVentasNC.Rows.Add(Dr)
|
||||
End If
|
||||
End Sub
|
||||
Private Function GuardarUsados(SqlTransaccion As SqlClient.SqlTransaction, CveVenta As Integer, ByRef ObjVentas As ClsVentas, TipoDocto As String) As Boolean
|
||||
Private Function GuardarUsados(SqlTransaccion As SqlClient.SqlTransaction, ByRef ObjVentas As ClsVentas, factura As Modelos.Factura) As Boolean
|
||||
Dim Resultado As Boolean = True
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(533).ToEntero > 0 AndAlso TipoDocto.Contiene("Ing", "Ant", "Rem") Then
|
||||
Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero
|
||||
If UsuarioActual.Empresa.Funcionalidad(533).ToEntero > 0 AndAlso factura.TipoDocto.Contiene("Ing", "Rem") Then
|
||||
|
||||
Dim ObjAcum As New ClsAcumuladores(SqlTransaccion)
|
||||
If factura.TipoDocto = "Ing" AndAlso factura.Cliente.EsDistribuidor Then
|
||||
Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero
|
||||
|
||||
For Each drow As DataRow In DtDetalle.Rows
|
||||
If drow("CveTamaño").ToString.ToEntero > 0 And (CvePSPSA <> drow("CvePS").ToString.ToEntero) Then
|
||||
If ObjAcum.DistribuidorMovtosAdd(CveCliente, drow("Cantidad").ToString.ToEntero, drow("CveTamaño").ToString.ToEntero, 2, CveVenta, UsuarioActual.CveUsuario,
|
||||
UsuarioActual.CveEmpresa, 0D, "") Then
|
||||
Else
|
||||
Resultado = False
|
||||
Exit For
|
||||
Dim ObjAcum As New ClsAcumuladores(SqlTransaccion)
|
||||
|
||||
For Each drow As DataRow In factura.DtDetalle.Rows
|
||||
If drow("CveTamaño").ToString.ToEntero > 0 And (CvePSPSA <> drow("CvePS").ToString.ToEntero) Then
|
||||
If Not ObjAcum.DistribuidorMovtosAdd(CveCliente, drow("Cantidad").ToString.ToEntero, drow("CveTamaño").ToString.ToEntero, 2, CveVenta, UsuarioActual.CveUsuario,
|
||||
UsuarioActual.CveEmpresa, 0D, "") Then
|
||||
Resultado = False
|
||||
Exit For
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
Resultado = True
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
|
||||
If TipoDocto.Contiene("Rem") Then
|
||||
If DtRecepcionUsados IsNot Nothing Then
|
||||
For Each drow As DataRow In DtRecepcionUsados.Rows
|
||||
End If
|
||||
|
||||
If factura.TipoDocto.Contiene("Rem") Then
|
||||
If factura.DtRecepcionUsados IsNot Nothing Then
|
||||
For Each drow As DataRow In factura.DtRecepcionUsados.Rows
|
||||
If Not ObjVentas.AddVentaUsado(CveVenta, drow("CvePS").ToString.ToEntero, drow("Cantidad").ToString.ToDecimal, drow("PU").ToString.ToDecimal, drow("CveBCIUsado").ToString.ToEntero, drow("CveModeloAuto").ToString.ToEntero) Then
|
||||
Resultado = False
|
||||
Exit For
|
||||
@@ -9302,6 +9304,7 @@ Namespace Modelos
|
||||
Public Property ClaveSATMunicipio As String
|
||||
Public Property ClaveSATColonia As String
|
||||
Public Property ClaveSATCP As String
|
||||
Public Property EsDistribuidor As Boolean
|
||||
|
||||
End Class
|
||||
|
||||
|
||||
@@ -1275,23 +1275,23 @@ Partial Class PopUpVerFactura
|
||||
Dim FechaMovimiento As Date = ObjInventarios.FechaRegistro
|
||||
|
||||
Dim CveMovimientoRelacionado As Integer = -1
|
||||
Dim FolioRelacionado As String = ""
|
||||
Dim FolioRelacionado As String = ""
|
||||
Dim CveConceptoMovtoRelacionado As Integer = -1
|
||||
|
||||
'VERIFICA SI TIENE MOVIMIENTO VIRTUAL RELACIONADO
|
||||
If UsuarioActual.CveEmpresa = 140 AndAlso ObjInventarios.DtResultados.Rows.Count > 0 Then
|
||||
CveMovimientoRelacionado = ObjInventarios.DtResultados.Rows(0)("CveMtoRel").ToString().ToEntero()
|
||||
If CveConcepto.Contiene(3, 26) AndAlso ObjInventarios.DtResultados.FiltroPrimeroValor("CveMovimientoVirtual").ToEntero() > 0 Then
|
||||
FolioRelacionado = ObjInventarios.DtResultados.FiltroPrimeroValor("FolioVirtual")
|
||||
CveConceptoMovtoRelacionado = 37
|
||||
ElseIf CveConcepto = 37 Then
|
||||
FolioRelacionado = ObjInventarios.DtResultados.FiltroPrimeroValor("FolioRelacionado")
|
||||
CveConceptoMovtoRelacionado = 3
|
||||
If CveConcepto.Contiene(3, 26) AndAlso ObjInventarios.DtResultados.FiltroPrimeroValor("CveMovimientoVirtual").ToEntero() > 0 Then
|
||||
FolioRelacionado = ObjInventarios.DtResultados.FiltroPrimeroValor("FolioVirtual")
|
||||
CveConceptoMovtoRelacionado = 37
|
||||
ElseIf CveConcepto = 37 Then
|
||||
FolioRelacionado = ObjInventarios.DtResultados.FiltroPrimeroValor("FolioRelacionado")
|
||||
CveConceptoMovtoRelacionado = 3
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
Dim CantidadProductos As Decimal = 0
|
||||
Dim CantidadUsados As Decimal = 0
|
||||
|
||||
@@ -1567,8 +1567,8 @@ Partial Class PopUpVerFactura
|
||||
Dim concepto As String = ""
|
||||
If CveConcepto = 3 Then
|
||||
concepto = "SALIDA DE ALMACÉN"
|
||||
ElseIf CveConcepto = 37 Then
|
||||
concepto = "SALIDA VIRTUAL"
|
||||
ElseIf CveConcepto = 37 Then
|
||||
concepto = "SALIDA VIRTUAL"
|
||||
Else
|
||||
concepto = "SALIDA DE ALMACÉN POR RECONSTRUCCIÓN"
|
||||
End If
|
||||
@@ -1705,34 +1705,34 @@ Partial Class PopUpVerFactura
|
||||
|
||||
'ImprimirPDF(String.Format("Empresas/{0}/Formatos/Salidas.rdlc", 72), DtMovimientos, params, "ReporteSalidas", RDSName:="DsInventarios")
|
||||
ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/Salidas.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
ElseIf UsuarioActual.CveEmpresa = 140 Then
|
||||
|
||||
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
|
||||
If Imagen.Exists Then
|
||||
params.Add(New ReportParameter("LogoPath", logouri))
|
||||
Else
|
||||
params.Add(New ReportParameter("LogoPath", ""))
|
||||
End If
|
||||
|
||||
params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
|
||||
params.Add(New ReportParameter("Concepto", concepto))
|
||||
params.Add(New ReportParameter("Almacen", Almacen))
|
||||
params.Add(New ReportParameter("Fecha", Fecha))
|
||||
params.Add(New ReportParameter("FacturaProveedor", FolioVenta))
|
||||
params.Add(New ReportParameter("FacturadoA", If(DtMovimientos(0)("Nombre").ToString <> "", DtMovimientos(0)("Nombre").ToString, NombreCliente)))
|
||||
params.Add(New ReportParameter("Observaciones", Observaciones))
|
||||
params.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString("dd/MM/yyyy")))
|
||||
params.Add(New ReportParameter("Folio", Folio))
|
||||
params.Add(New ReportParameter("Descuentos", ""))
|
||||
params.Add(New ReportParameter("IVA", ""))
|
||||
params.Add(New ReportParameter("Total", ""))
|
||||
'params.Add(New ReportParameter("NombreEntrego", String.Format("ENTREGÓ{0}{1}", vbCrLf, Capturo)))
|
||||
params.Add(New ReportParameter("NombreRecibio", Recibio))
|
||||
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
||||
params.Add(New ReportParameter("CveConceptoMovRelacionado", CveConceptoMovRelacionado.ToString()))
|
||||
params.Add(New ReportParameter("FolioRelacionado", FolioRelacionado))
|
||||
|
||||
ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/Salidas.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
ElseIf UsuarioActual.CveEmpresa = 140 Then
|
||||
|
||||
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
|
||||
If Imagen.Exists Then
|
||||
params.Add(New ReportParameter("LogoPath", logouri))
|
||||
Else
|
||||
params.Add(New ReportParameter("LogoPath", ""))
|
||||
End If
|
||||
|
||||
params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
|
||||
params.Add(New ReportParameter("Concepto", concepto))
|
||||
params.Add(New ReportParameter("Almacen", Almacen))
|
||||
params.Add(New ReportParameter("Fecha", Fecha))
|
||||
params.Add(New ReportParameter("FacturaProveedor", FolioVenta))
|
||||
params.Add(New ReportParameter("FacturadoA", If(DtMovimientos(0)("Nombre").ToString <> "", DtMovimientos(0)("Nombre").ToString, NombreCliente)))
|
||||
params.Add(New ReportParameter("Observaciones", Observaciones))
|
||||
params.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString("dd/MM/yyyy")))
|
||||
params.Add(New ReportParameter("Folio", Folio))
|
||||
params.Add(New ReportParameter("Descuentos", ""))
|
||||
params.Add(New ReportParameter("IVA", ""))
|
||||
params.Add(New ReportParameter("Total", ""))
|
||||
'params.Add(New ReportParameter("NombreEntrego", String.Format("ENTREGÓ{0}{1}", vbCrLf, Capturo)))
|
||||
params.Add(New ReportParameter("NombreRecibio", Recibio))
|
||||
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
||||
params.Add(New ReportParameter("CveConceptoMovRelacionado", CveConceptoMovRelacionado.ToString()))
|
||||
params.Add(New ReportParameter("FolioRelacionado", FolioRelacionado))
|
||||
|
||||
ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/Salidas.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
Else
|
||||
params.Add(New ReportParameter("Folio", Folio))
|
||||
params.Add(New ReportParameter("Fecha", Fecha))
|
||||
@@ -2169,8 +2169,8 @@ Partial Class PopUpVerFactura
|
||||
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
||||
params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
|
||||
params.Add(New ReportParameter("CantidadProductos", CantidadProductos.ToString()))
|
||||
params.Add(New ReportParameter("CantidadUsados", CantidadUsados.ToString()))
|
||||
params.Add(New ReportParameter("CveConceptoMovRelacionado", CveConceptoMovRelacionado.ToString()))
|
||||
params.Add(New ReportParameter("CantidadUsados", CantidadUsados.ToString()))
|
||||
params.Add(New ReportParameter("CveConceptoMovRelacionado", CveConceptoMovRelacionado.ToString()))
|
||||
params.Add(New ReportParameter("FolioRelacionado", FolioRelacionado))
|
||||
Else
|
||||
params.Add(New ReportParameter("Observaciones", Observaciones)) 'TxtObservaciones.Text
|
||||
@@ -2516,19 +2516,19 @@ Partial Class PopUpVerFactura
|
||||
If (UsuarioActual.CveEmpresa = 72) Then
|
||||
params.Add(New ReportParameter("DomicilioFiscal", DomicilioFiscalCompu))
|
||||
End If
|
||||
ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/SalidasGarantia.rdlc", DtMovimientos, params, String.Format("SalidaGarantia{0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
'Else
|
||||
' params.Add(New ReportParameter("Folio", Folio))
|
||||
' params.Add(New ReportParameter("Fecha", Fecha))
|
||||
' params.Add(New ReportParameter("Almacen", Almacen))
|
||||
' params.Add(New ReportParameter("SubProyecto", SubProyecto))
|
||||
' params.Add(New ReportParameter("Observaciones", Observaciones))
|
||||
' params.Add(New ReportParameter("NombreEntrego", String.Format("ENTREGÓ{0}{1}", vbCrLf, Capturo)))
|
||||
' params.Add(New ReportParameter("NombreRecibio", String.Format("RECIBIÓ{0}{1}", vbCrLf, Recibio)))
|
||||
' ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/Salidas.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
'End If
|
||||
|
||||
|
||||
ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/SalidasGarantia.rdlc", DtMovimientos, params, String.Format("SalidaGarantia{0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
'Else
|
||||
' params.Add(New ReportParameter("Folio", Folio))
|
||||
' params.Add(New ReportParameter("Fecha", Fecha))
|
||||
' params.Add(New ReportParameter("Almacen", Almacen))
|
||||
' params.Add(New ReportParameter("SubProyecto", SubProyecto))
|
||||
' params.Add(New ReportParameter("Observaciones", Observaciones))
|
||||
' params.Add(New ReportParameter("NombreEntrego", String.Format("ENTREGÓ{0}{1}", vbCrLf, Capturo)))
|
||||
' params.Add(New ReportParameter("NombreRecibio", String.Format("RECIBIÓ{0}{1}", vbCrLf, Recibio)))
|
||||
' ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/Salidas.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
'End If
|
||||
|
||||
|
||||
Case 18 'D E V O L U C I O N D E L C L I E N T E
|
||||
Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/DevolucionCliente.rdlc", UsuarioActual.Empresa.Ruta))
|
||||
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
|
||||
@@ -2705,36 +2705,36 @@ Partial Class PopUpVerFactura
|
||||
ImprimirPDF(Archivo, DtMovimientos, params, String.Format("Salida por Prestamo - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
ElseIf CveConcepto = 22 Then
|
||||
ImprimirPDF(Archivo, DtMovimientos, params, String.Format("Entrada por Prestamo - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
End If
|
||||
|
||||
'Case 22 'ENTRADA POR PRESTAMO
|
||||
' Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
|
||||
' Dim params As New List(Of ReportParameter)
|
||||
|
||||
' Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
|
||||
' If Imagen.Exists Then
|
||||
' params.Add(New ReportParameter("LogoPath", logouri))
|
||||
' Else
|
||||
' params.Add(New ReportParameter("LogoPath", ""))
|
||||
' End If
|
||||
|
||||
' params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
|
||||
' params.Add(New ReportParameter("Concepto", "Entrada por Prestamo"))
|
||||
' params.Add(New ReportParameter("Almacen", Almacen))
|
||||
' params.Add(New ReportParameter("Fecha", Fecha))
|
||||
' params.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString("dd/MM/yyyy")))
|
||||
' params.Add(New ReportParameter("Folio", Folio))
|
||||
' params.Add(New ReportParameter("Descuentos", ""))
|
||||
' params.Add(New ReportParameter("IVA", ""))
|
||||
' params.Add(New ReportParameter("Total", ""))
|
||||
' 'params.Add(New ReportParameter("NombreEntrego", String.Format("ENTREGÓ{0}{1}", vbCrLf, Capturo)))
|
||||
' params.Add(New ReportParameter("NombreRecibio", String.Format("RECIBIÓ{0}{1}", vbCrLf, Recibio)))
|
||||
' params.Add(New ReportParameter("FacturadoA", NombreCliente))
|
||||
' If (UsuarioActual.CveEmpresa = 72) Then
|
||||
' params.Add(New ReportParameter("DomicilioFiscal", DomicilioFiscalCompu))
|
||||
' End If
|
||||
' ImprimirPDF("Empresas/Grales/Formatos/EntradaSalida.rdlc", DtMovimientos, params, String.Format("Entrada por Prestamo - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
|
||||
End If
|
||||
|
||||
'Case 22 'ENTRADA POR PRESTAMO
|
||||
' Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
|
||||
' Dim params As New List(Of ReportParameter)
|
||||
|
||||
' Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
|
||||
' If Imagen.Exists Then
|
||||
' params.Add(New ReportParameter("LogoPath", logouri))
|
||||
' Else
|
||||
' params.Add(New ReportParameter("LogoPath", ""))
|
||||
' End If
|
||||
|
||||
' params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
|
||||
' params.Add(New ReportParameter("Concepto", "Entrada por Prestamo"))
|
||||
' params.Add(New ReportParameter("Almacen", Almacen))
|
||||
' params.Add(New ReportParameter("Fecha", Fecha))
|
||||
' params.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString("dd/MM/yyyy")))
|
||||
' params.Add(New ReportParameter("Folio", Folio))
|
||||
' params.Add(New ReportParameter("Descuentos", ""))
|
||||
' params.Add(New ReportParameter("IVA", ""))
|
||||
' params.Add(New ReportParameter("Total", ""))
|
||||
' 'params.Add(New ReportParameter("NombreEntrego", String.Format("ENTREGÓ{0}{1}", vbCrLf, Capturo)))
|
||||
' params.Add(New ReportParameter("NombreRecibio", String.Format("RECIBIÓ{0}{1}", vbCrLf, Recibio)))
|
||||
' params.Add(New ReportParameter("FacturadoA", NombreCliente))
|
||||
' If (UsuarioActual.CveEmpresa = 72) Then
|
||||
' params.Add(New ReportParameter("DomicilioFiscal", DomicilioFiscalCompu))
|
||||
' End If
|
||||
' ImprimirPDF("Empresas/Grales/Formatos/EntradaSalida.rdlc", DtMovimientos, params, String.Format("Entrada por Prestamo - {0}", Folio.ToString), RDSName:="DsInventarios")
|
||||
|
||||
Case 24 'SALIDA POR RESGUARDO
|
||||
If DtMovimientos(0)("CveTipoAlmacen").ToString.ToEntero = 20 Or DtMovimientos(0)("CveTipoAlmacen").ToString.ToEntero = 19 Then
|
||||
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
|
||||
@@ -3217,11 +3217,11 @@ Partial Class PopUpVerFactura
|
||||
If CveConcepto = 2 Then
|
||||
ElseIf CveConcepto = 3 Then
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
#Region "OP = 'OC' - IMPRIME PDF OC"
|
||||
Private Sub ImprimePDFOC(CveOrdenCompra As Integer)
|
||||
Dim reporte As Byte() = NewGeneraBytesOC(CveOrdenCompra, ConBitacora:=(UsuarioActual.Empresa.Funcionalidad(119) = "1"))
|
||||
@@ -3576,7 +3576,7 @@ Partial Class PopUpVerFactura
|
||||
params.Add(New ReportParameter("RFC", dr("RFC").ToString))
|
||||
params.Add(New ReportParameter("Puesto", dr("Puesto").ToString))
|
||||
params.Add(New ReportParameter("PuestoEntrego", dr("PuestoEntrego").ToString))
|
||||
params.Add(New ReportParameter("Departamento", dr("Departamento").ToString))
|
||||
params.Add(New ReportParameter("Departamento", dr("Departamento").ToString))
|
||||
params.Add(New ReportParameter("DepartamentoEntrego", dr("DepartamentoEntrego").ToString))
|
||||
params.Add(New ReportParameter("Folio", dr("Folio").ToString))
|
||||
params.Add(New ReportParameter("Sucursal", dr("SubProyecto").ToString))
|
||||
|
||||
@@ -972,9 +972,12 @@ Partial Class Inventarios_RecepcionAlmacen
|
||||
CveAlmacenDevolucionProveedor = DtRecepcion.Rows(0)("CveAlmacenDevolucionProveedor").ToString.ToEntero
|
||||
|
||||
'SI ES MOTOBATERIA NO GENERA MOVIMIENTO VIRTUAL
|
||||
If UsuarioActual.Empresa.Funcionalidad(573) = "1" AndAlso (DtRecepcion.COUNT("CveTamaño", "CveTamaño > 0 AND CveTamaño <> 16") > 0 OrElse CargaSoloUsados) Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(573) = "1" AndAlso (DtRecepcion.COUNT("CveTamaño", "CveTamaño > 0 AND CveTamaño <> 16") > 0) Then
|
||||
RealizarMovimientoVirtual = True
|
||||
DivVirtualAdvertencia.Visible = True
|
||||
Else
|
||||
RealizarMovimientoVirtual = False
|
||||
DivVirtualAdvertencia.Visible = False
|
||||
End If
|
||||
|
||||
If TipoMovimiento = 2 AndAlso CveAlmacenDevolucionProveedor > 0 Then
|
||||
|
||||
@@ -378,7 +378,7 @@
|
||||
<i></i>
|
||||
</div>
|
||||
<div class="form-group form-md-line-input">
|
||||
<asp:TextBox ID="TxtCodigo" runat="server" CssClass="form-control" MaxLength="25"></asp:TextBox>
|
||||
<asp:TextBox ID="TxtCodigo" runat="server" OnTextChanged="TxtCodigo_TextChanged" AutoPostBack="true" CssClass="form-control" MaxLength="25"></asp:TextBox>
|
||||
<label for="<%= TxtCodigo.ClientID.ToString()%>">Código:</label>
|
||||
</div>
|
||||
<div class="form-group form-md-line-input">
|
||||
|
||||
@@ -845,6 +845,12 @@ Partial Class Clientes
|
||||
If Request("CveEmpresaCRM") IsNot Nothing AndAlso IsNumeric(Request("CveEmpresaCRM")) AndAlso Request("CveEmpresaCRM").ToEntero > 0 Then
|
||||
ViewState("CveEmpresaCRM") = Request("CveEmpresaCRM")
|
||||
CargaDatosCRM()
|
||||
End If
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then ' Funcionalidad Es Distribuidor
|
||||
DivEsDistribuidor.Visible = True
|
||||
DivCargoUsado.Visible = True
|
||||
DivBonificacionUsado.Visible = True
|
||||
End If
|
||||
|
||||
ChecaPermiteCredito()
|
||||
@@ -10190,6 +10196,18 @@ Partial Class Clientes
|
||||
GvPagosNoBancarios.DataBind()
|
||||
End If
|
||||
ObjBancos.Dispose()
|
||||
End Sub
|
||||
End Sub
|
||||
Protected Sub TxtCodigo_TextChanged(sender As Object, e As EventArgs)
|
||||
|
||||
If CveCliente <= 0 AndAlso UsuarioActual.CveEmpresa = 140 Then
|
||||
DdlTipoCliente.SelectedValueExist("1")
|
||||
ChkEsDistribuidor.Checked = True
|
||||
ChkCargoUsado.Checked = True
|
||||
ChkBonificacionUsado.Checked = True
|
||||
End If
|
||||
|
||||
UpDatos.Update()
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<%@ Page Title="Ventas - Facturación" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="PV.aspx.vb" Inherits="PV" EnableEventValidation="false"%>
|
||||
<%@ Page Title="Ventas - Facturación" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="PV.aspx.vb" Inherits="PV" EnableEventValidation="false" %>
|
||||
|
||||
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
|
||||
<%--Necesario para el modal que no se cierra--%>
|
||||
@@ -621,7 +621,7 @@
|
||||
<th runat="server" visible="false" id="nomostrar2"></th>
|
||||
</tr>
|
||||
</table>
|
||||
<asp:GridView ID="GvPS" GridLines="None" runat="server" data-tableheader="#tbps" ShowHeader="true" AutoGenerateColumns="False"
|
||||
<asp:GridView ID="GvPS" GridLines="None" runat="server" data-tableheader="#tbps" ShowHeader="true" AutoGenerateColumns="False"
|
||||
DataKeyNames="CveVentaDetalle,Consec,CvePS,Total, IEPS, CveClasificacion,CveUM,CveProyecto,CveSubProyecto,TipoDocto,PS,Obs,Cantidad,PU,Descuento,IVA,CantidadInventario,CantidadFacturadaRem,EsCargo" CssClass="table table-striped table-advance table-hover Widthall Sortable mysmallbtn ScrollAD" Style="min-width: 980px;">
|
||||
<Columns>
|
||||
<%--0--%>
|
||||
@@ -2374,25 +2374,25 @@
|
||||
<label for="<%= TxtLocalidadCliente.ClientID.ToString()%>">Localidad:</label>
|
||||
</div>
|
||||
</div>
|
||||
<div id="DivEstadoPaisCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
|
||||
|
||||
<div class="form-group form-md-line-input input-iconright col-xs-6">
|
||||
<asp:DropDownList ID="DdlSATPais" runat="server" CssClass="form-control input-sm select2me" OnSelectedIndexChanged="DdlSATPais_SelectedIndexChanged" AutoPostBack="true">
|
||||
<asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem>
|
||||
<asp:ListItem Value="MEX" Text="México" Selected="True"></asp:ListItem>
|
||||
<asp:ListItem Value="USA" Text="USA"></asp:ListItem>
|
||||
<asp:ListItem Value="CAN" Text="Canada"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
<div id="DivEstadoPaisCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
|
||||
|
||||
<asp:RequiredFieldValidator ID="RFVSATPais" runat="server" InitialValue="-1" ControlToValidate="DdlSATPais" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Pais''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
|
||||
<label for="<%= DdlSATPais.ClientID.ToString()%>">Pais:</label>
|
||||
<div class="form-group form-md-line-input input-iconright col-xs-6">
|
||||
<asp:DropDownList ID="DdlSATPais" runat="server" CssClass="form-control input-sm select2me" OnSelectedIndexChanged="DdlSATPais_SelectedIndexChanged" AutoPostBack="true">
|
||||
<asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem>
|
||||
<asp:ListItem Value="MEX" Text="México" Selected="True"></asp:ListItem>
|
||||
<asp:ListItem Value="USA" Text="USA"></asp:ListItem>
|
||||
<asp:ListItem Value="CAN" Text="Canada"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
|
||||
<asp:RequiredFieldValidator ID="RFVSATPais" runat="server" InitialValue="-1" ControlToValidate="DdlSATPais" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Pais''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
|
||||
<label for="<%= DdlSATPais.ClientID.ToString()%>">Pais:</label>
|
||||
</div>
|
||||
<div class="form-group form-md-line-input input-iconright col-xs-6">
|
||||
<asp:DropDownList ID="DdlEstadoSAT" DataTextField="NombreEstado" DataValueField="CveSATEstado" runat="server" CssClass="form-control input-sm select2me">
|
||||
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
<asp:RequiredFieldValidator ID="RfvDdlEstadoSAT" runat="server" InitialValue="-1" ControlToValidate="DdlEstadoSAT" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Estado''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
|
||||
<label for="<%= DdlEstadoSAT.ClientID.ToString()%>">Estado:</label>
|
||||
<asp:DropDownList ID="DdlEstadoSAT" DataTextField="NombreEstado" DataValueField="CveSATEstado" runat="server" CssClass="form-control input-sm select2me">
|
||||
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
<asp:RequiredFieldValidator ID="RfvDdlEstadoSAT" runat="server" InitialValue="-1" ControlToValidate="DdlEstadoSAT" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Estado''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
|
||||
<label for="<%= DdlEstadoSAT.ClientID.ToString()%>">Estado:</label>
|
||||
</div>
|
||||
</div>
|
||||
<div id="DivCorreoCuentaCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
|
||||
@@ -2571,7 +2571,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="DivAddVenta" class="modal ADS fade" role="dialog">
|
||||
<asp:UpdatePanel ID="UpModalVenta" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
@@ -2768,7 +2768,7 @@
|
||||
</div>
|
||||
<div class="col-md-6" align="right" id="divagregrarotrops" runat="server">
|
||||
<label>Agregar otro Producto:</label>
|
||||
<asp:CheckBox ID="ChkAgregar" runat="server" Checked="true" />
|
||||
<asp:CheckBox ID="ChkAgregar" runat="server" Checked="true" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
@@ -2960,16 +2960,19 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" style="margin-top: 17px;">
|
||||
<div class="col-md-2">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="form-group form-md-line-input input-iconright">
|
||||
<asp:TextBox ID="TxtPoliza" CssClass="form-control" runat="server" MaxLength="50"></asp:TextBox>
|
||||
<asp:TextBox ID="TxtPoliza" CssClass="form-control" runat="server" MaxLength="50" Width="100%"></asp:TextBox>
|
||||
<asp:RequiredFieldValidator ID="RFVPoliza" runat="server" ControlToValidate="TxtPoliza" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Póliza''</b> es incorrecto, por favor ingréselo correctamente." ValidationGroup="GrpAddVenta"></asp:RequiredFieldValidator>
|
||||
<%--<asp:RequiredFieldValidator ID="RFVPoliza" runat="server" ControlToValidate="TxtPoliza" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Poliza''</b> es necesario, por favor ingréselo." ValidationGroup="VGMAjuste"></asp:RequiredFieldValidator>--%>
|
||||
<%--<ajax:ValidatorCalloutExtender ID="VCEPoliza" runat="server" HighlightCssClass="vco" TargetControlID="RFVPoliza"></ajax:ValidatorCalloutExtender>--%>
|
||||
<label for="<%= TxtPoliza.ClientID.ToString()%>">Poliza:</label>
|
||||
<label for="<%= TxtPoliza.ClientID.ToString()%>">Póliza:</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
</div>
|
||||
<div class="row" style="margin-top: 17px;">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group form-md-line-input input-iconright">
|
||||
<asp:TextBox ID="TxtImporteAjuste" CssClass="form-control" runat="server" Enabled="false" MaxLength="50"></asp:TextBox>
|
||||
<asp:RequiredFieldValidator ID="RFVImporteAjuste" runat="server" ControlToValidate="TxtImporteAjuste" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Importe''</b> es necesario, por favor ingréselo." ValidationGroup="GrpAddVenta"></asp:RequiredFieldValidator>
|
||||
@@ -2978,7 +2981,7 @@
|
||||
<label for="<%= TxtImporteAjuste.ClientID.ToString()%>">Importe:</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="col-md-6">
|
||||
<asp:Button ID="BtnCalcularImporteAjuste" CssClass="btn green-haze btn-outline btn-circle btn-sm" OnClick="BtnCalcularImporteAjuste_Click" runat="server" Text="Recalcular" UseSubmitBehavior="false" />
|
||||
</div>
|
||||
</div>
|
||||
@@ -2991,7 +2994,7 @@
|
||||
<div class="modal-footer">
|
||||
<asp:UpdatePanel ID="UpAgregar" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<%-- <asp:Button ID="BtnCalculaMesesUso" Text="" OnClick="BtnCalculaMesesUso_Click" ClientIDMode="Static" Style="display: none;" runat="server" />--%>
|
||||
<%-- <asp:Button ID="BtnCalculaMesesUso" Text="" OnClick="BtnCalculaMesesUso_Click" ClientIDMode="Static" Style="display: none;" runat="server" />--%>
|
||||
<asp:Button ClientIDMode="Static" ID="LnkAgregarPS" OnClick="LnkAgregarPS_Click" runat="server" CssClass="btn btn-primary" Text="Agregar" ValidationGroup="GrpAddVenta" UseSubmitBehavior="false" />
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
|
||||
</ContentTemplate>
|
||||
@@ -3018,12 +3021,12 @@
|
||||
let regex = new RegExp("^[0-9]+$");
|
||||
arguments.IsValid = regex.test(arguments.Value);
|
||||
return;
|
||||
//MARCA MOTOBATERIAS
|
||||
//MARCA MOTOBATERIAS
|
||||
} else if ((CveMarca == "1090" || CveMarca == "1091") || CveClasificacion == "20517") {
|
||||
let regex = new RegExp("^[1X]");
|
||||
arguments.IsValid = regex.test(arguments.Value);
|
||||
return;
|
||||
//AUTOMOTRIZ-ACUMULADORES
|
||||
//AUTOMOTRIZ-ACUMULADORES
|
||||
} else {
|
||||
let regex = new RegExp("^[1X]|^[0-9][A-HJ-M][0-3][0-9][A-Z][ACEN][2-5]$");
|
||||
arguments.IsValid = regex.test(arguments.Value);
|
||||
@@ -3045,12 +3048,12 @@
|
||||
var regex = new RegExp("^\d{4}$|^[A-L][0-9][1-9A-Z][A-HJ-M]$");
|
||||
arguments.IsValid = regex.test(arguments.Value);
|
||||
return;
|
||||
//MARCA MOTOBATERIAS
|
||||
//MARCA MOTOBATERIAS
|
||||
} else if ((CveMarca == "1090" || CveMarca == "1091") || CveClasificacion == "20517") {
|
||||
var regex = new RegExp("^[A-L][0-9][1-9A-Z][A-HJ-M]$");
|
||||
arguments.IsValid = regex.test(arguments.Value);
|
||||
return;
|
||||
//AUTOMOTRIZ-ACUMULADORES
|
||||
//AUTOMOTRIZ-ACUMULADORES
|
||||
} else {
|
||||
var regex = new RegExp("^[X]|^[x]|[A-L][0-9][1-9A-Z][A-HJ-M]$");
|
||||
arguments.IsValid = regex.test(arguments.Value);
|
||||
|
||||
@@ -2306,6 +2306,10 @@ Partial Class PV
|
||||
DdlEstadoSAT.DataBind()
|
||||
DdlEstadoSAT.Items.Insert(0, New ListItem("Seleccione", "-1"))
|
||||
|
||||
If UsuarioActual.CveEmpresa = 140 AndAlso ClaveSATPais = "MEX" Then
|
||||
DdlEstadoSAT.SelectedValueExist("26")
|
||||
End If
|
||||
|
||||
End Sub
|
||||
Protected Sub DdlSATPais_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||
CargaEstados(DdlSATPais.SelectedValue)
|
||||
@@ -2768,6 +2772,18 @@ Partial Class PV
|
||||
DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString)
|
||||
End If
|
||||
|
||||
'SELECCIONA VENDEDOR DEL USUARIO CUANDO SEA VENTA NUEVA Y SIN CLIENTE
|
||||
If UsuarioActual.CveVendedor > 0 Then
|
||||
If CveVenta = -1 AndAlso Not DdlVendedor.SelectedValue.ToEntero() > 0 Then DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString())
|
||||
If DdlVendedor.SelectedValue.ToEntero() > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then
|
||||
DdlVendedor.Enabled = False
|
||||
End If
|
||||
'multiples vendedores visible
|
||||
If UsuarioActual.TienePermisoProceso(153) Then
|
||||
DdlVendedor.Enabled = True
|
||||
End If
|
||||
End If
|
||||
|
||||
End Sub
|
||||
Private Sub ObtenerFechaVencimientoCER()
|
||||
Try
|
||||
@@ -6174,6 +6190,46 @@ Partial Class PV
|
||||
CveTamanio = drPS("CveTamaño").ToString.ToEntero
|
||||
End If
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(404).ToEntero > 0 Then 'cuando el valor es 10.- secuencia Cliente/Sucursal, 20 - sucursal/cliente
|
||||
Dim TipoPrecioLista As Integer = UsuarioActual.Empresa.Funcionalidad(404).ToEntero
|
||||
' si es 10. primero el cliente
|
||||
Dim CvePrecioListaPS As Integer
|
||||
Dim PorcentajePrecio As Decimal = 0
|
||||
|
||||
If TipoPrecioLista = 10 Then
|
||||
CvePrecioListaPS = GlobalDTCliente(UsuarioActual.CveEmpresa, Estatus:=-1, CveCliente:=CveCliente).FiltroPrimeroValor("CvePrecioLista").ToEntero()
|
||||
If CvePrecioListaPS <= 0 Then
|
||||
CvePrecioListaPS = GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePrecioLista", "").ToEntero()
|
||||
End If
|
||||
Else
|
||||
CvePrecioListaPS = GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePrecioLista", "").ToEntero()
|
||||
If CvePrecioListaPS <= 0 Then
|
||||
CvePrecioListaPS = GlobalDTCliente(UsuarioActual.CveEmpresa, Estatus:=-1, CveCliente:=CveCliente).FiltroPrimeroValor("CvePrecioLista").ToEntero()
|
||||
End If
|
||||
End If
|
||||
|
||||
If CvePrecioListaPS > 0 Then
|
||||
Dim ObjPS As New ClsProductosServicios
|
||||
If ObjPS.GetPSPreciosLista(UsuarioActual.CveEmpresa, CvePrecioListaPS, CvePS:=CvePSParametro) Then
|
||||
PrecioSugerido = ObjPS.DtResultados.FiltroPrimeroValor("PrecioLista").ToDecimal
|
||||
PorcentajePrecio = ObjPS.DtResultados.FiltroPrimeroValor("Porcentaje").ToDecimal
|
||||
End If
|
||||
ObjPS.Dispose()
|
||||
End If
|
||||
|
||||
If PrecioSugerido = 0 Then
|
||||
Dim ObjInventarios As New ClsInventarios
|
||||
Dim CostoPS = ObjInventarios.GetCostoPS(CvePSParametro, TxtCantidad.Text.Trim.ToDouble, -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(CvePSParametro, TxtCantidad.Text.Trim.ToDouble, -1, "-1", TxtFecha.Text.ToDate, -1, CveTipoAlmacen:=1)
|
||||
ObjInventarios.Dispose()
|
||||
If CostoPS > 0 And PorcentajePrecio > 0 Then
|
||||
PrecioSugerido = ((PorcentajePrecio / 100) + 1) * CostoPS
|
||||
End If
|
||||
End If
|
||||
'CvePrecioLista = CvePrecioListaPS
|
||||
End If
|
||||
|
||||
TxtPUFactura.Text = PrecioSugerido.FormatoNumero(2)
|
||||
|
||||
If DTBCIUsados IsNot Nothing AndAlso CveTamanio > 0 Then
|
||||
|
||||
@@ -424,10 +424,10 @@
|
||||
</td>
|
||||
</tr>--%>
|
||||
<tr runat="server" id="trsucursalciente" visible="false">
|
||||
<td align="left" ><b>
|
||||
<td align="left"><b>
|
||||
<asp:Label ID="LblSucursal" runat="server" Text="Sucursal"></asp:Label>
|
||||
:</b></td>
|
||||
<td align="left" >
|
||||
<td align="left">
|
||||
<div class="row align-items-start">
|
||||
<div class="col-md-10">
|
||||
<asp:DropDownList ID="DdlSucursalCliente" runat="server" AutoPostBack="true" CssClass="form-control input-sm select2me" AppendDataBoundItems="true" DataTextField="SucursalCliente" DataValueField="CveClienteSucursal">
|
||||
@@ -438,11 +438,11 @@
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
<td align="left" >
|
||||
<td align="left">
|
||||
<b>
|
||||
<asp:Label ID="LtlTitleRFCSucursal" runat="server" Text=""></asp:Label></b>
|
||||
</td>
|
||||
<td align="left" >
|
||||
<td align="left">
|
||||
<asp:Label ID="LtlRFCSucursal" runat="server" Text=""></asp:Label>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -1575,7 +1575,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<asp:HiddenField ID="HdnTotalRNC" runat="server" ClientIDMode="Static" Value="0" />
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
@@ -4316,23 +4316,18 @@
|
||||
|
||||
<div class="portlet-title">
|
||||
<div class="caption font-green">
|
||||
<%--<i class="fa fa-users font-green"></i>--%>
|
||||
<span class="caption-subject bold uppercase">Bitacora</span>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<div class="btn-group">
|
||||
<%--<div class=" font-green" style="cursor: pointer;" runat="server" id="ImgAddObs" visible="false">
|
||||
<i class="fa fa-commenting font-green"></i>
|
||||
<span class="caption-subject bold">Agregar</span>
|
||||
</div>--%>
|
||||
<asp:HyperLink ID="ImgAddObs" CssClass="caption-subject bold" data-toggle="modal" data-target="#ModalBitacora" runat="server" Text=" <i class='fa fa-commenting font-green' style='font-weight: 700 !important;' ><span class='caption-subject bold'>Agregar</span></i>" Style="cursor: pointer;" ToolTip="Observaciones"></asp:HyperLink><br />
|
||||
<asp:HyperLink ID="HlEvento" CssClass="thickbox caption-subject bold" runat="server" Visible="false" Style="cursor: pointer; text-decoration: none;" ToolTip="Agendar"><i class='fa fa-calendar-plus-o font-green' style='font-weight: 700 !important;' ></i> <span class="caption-subject bold font-green">Agendar</span></asp:HyperLink><br />
|
||||
<asp:Literal ID="LtlTareaNueva" runat="server"></asp:Literal>
|
||||
<UserControl:TareaNueva runat="server" id="TareaNueva" />
|
||||
<script> function OnAddedTareaNueva() {
|
||||
$('.btnupEventoBitacora').click();
|
||||
}
|
||||
|
||||
<script>
|
||||
function OnAddedTareaNueva() {
|
||||
$('.btnupEventoBitacora').click();
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
@@ -6799,7 +6794,7 @@
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField>
|
||||
<ItemTemplate>
|
||||
<asp:TextBox ID="TxtImporte" CssClass="myvalue" runat="server" Width="75px" />
|
||||
<asp:TextBox ID="TxtImporte" CssClass="myvalue ImportesRNCCargo" runat="server" Width="75px" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
@@ -6876,23 +6871,24 @@
|
||||
</asp:GridView>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<table border="0" rules="none" class="well TextTab" style="float: right;" runat="server">
|
||||
<tr align="right">
|
||||
<td style="border: 1px none white"><b>Saldo Maximo Utilizable.:</b></td>
|
||||
<td>
|
||||
<asp:Label ID="LblSaldoMaximoBonificacion" ClientIDMode="Static" runat="server" Style="text-align: right;" Text="0.00"></asp:Label></td>
|
||||
<td align="right">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<table border="0" rules="none" class="well TextTab" style="float: right;" runat="server">
|
||||
<tr align="right">
|
||||
<td style="border: 1px none white"><b>Saldo Maximo Utilizable.:</b></td>
|
||||
<td>
|
||||
<asp:Label ID="LblSaldoMaximoBonificacion" ClientIDMode="Static" runat="server" Style="text-align: right;" Text="0.00"></asp:Label></td>
|
||||
<td align="right">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<asp:HiddenField ID="HdnSaldoMaximoUsados" runat="server" ClientIDMode="Static" Value="0" />
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button id="CancelarAplicarDescNC" type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
||||
@@ -7083,13 +7079,75 @@
|
||||
|
||||
}
|
||||
function CalculaSaldoRNCChk(TxtImporte, Saldo, Chk) {
|
||||
//ImportesRNCCargo
|
||||
if (Chk.checked) {
|
||||
TxtImporte.value = FormatoNumero(Saldo, 2);
|
||||
let SaldoMaximoUtilizable = ToDouble(HdnSaldoMaximoUsados.value)
|
||||
let ImportesAsignados = 0;
|
||||
|
||||
$('.ImportesRNCCargo').each(function () {
|
||||
if ($(this).context.id != TxtImporte.id) {
|
||||
ImportesAsignados += ToDouble($(this).val());
|
||||
}
|
||||
});
|
||||
let Importe = SaldoMaximoUtilizable - ImportesAsignados;
|
||||
|
||||
if (Importe > 0) {
|
||||
if (Saldo > Importe) {
|
||||
TxtImporte.value = FormatoNumero(Importe, 2);
|
||||
} else {
|
||||
TxtImporte.value = FormatoNumero(Saldo, 2);
|
||||
}
|
||||
} else {
|
||||
TxtImporte.value = "";
|
||||
Chk.checked = false;
|
||||
}
|
||||
|
||||
} else {
|
||||
TxtImporte.value = "";
|
||||
}
|
||||
}
|
||||
function LimitaSaldoRNCChk(TxtImporte, Saldo) {
|
||||
//var Importe = 0;
|
||||
|
||||
//if (TxtImporte.value.includes('.')) {
|
||||
// return;
|
||||
//}
|
||||
//if (TxtImporte.value.includes(',')) {
|
||||
// return;
|
||||
//}
|
||||
|
||||
//var regex = new RegExp("^\d*\.?\d*$");
|
||||
|
||||
//if (regex.test(TxtImporte.value.trim())) {
|
||||
// if (TxtImporte.value != '') {
|
||||
// Importe = parseFloat(TxtImporte.value);
|
||||
// }
|
||||
//let SaldoMaximoUtilizable = ToDouble(HdnSaldoMaximoUsados.value)
|
||||
//let ImportesAsignados = 0;
|
||||
//$('.ImportesRNCCargo').each(function () {
|
||||
// if ($(this).context.id != TxtImporte.id) {
|
||||
// ImportesAsignados += ToDouble($(this).val());
|
||||
// }
|
||||
//});
|
||||
|
||||
// let ImporteDiferencia = SaldoMaximoUtilizable - ImportesAsignados;
|
||||
|
||||
// if (ImporteDiferencia < 0) {
|
||||
// ImporteDiferencia = 0;
|
||||
// }
|
||||
// if (ImporteDiferencia > 0) {
|
||||
// if (ImporteDiferencia > Importe) {
|
||||
// TxtImporte.value = FormatoNumero(Importe, 2);
|
||||
// } else {
|
||||
// TxtImporte.value = FormatoNumero(ImporteDiferencia, 2);
|
||||
// }
|
||||
// } else {
|
||||
// TxtImporte.value = "";
|
||||
// }
|
||||
|
||||
//}
|
||||
|
||||
|
||||
var Importe = 0;
|
||||
|
||||
if (TxtImporte.value.includes('.')) {
|
||||
@@ -7106,8 +7164,17 @@
|
||||
Importe = parseFloat(TxtImporte.value);
|
||||
}
|
||||
|
||||
if (Importe > Saldo) {
|
||||
TxtImporte.value = FormatoNumero(Saldo, 2);
|
||||
let SaldoMaximoUtilizable = parseFloat(HdnSaldoMaximoUsados.value)
|
||||
let ImportesAsignados = 0;
|
||||
$('.ImportesRNCCargo').each(function () {
|
||||
if ($(this).context.id != TxtImporte.id) {
|
||||
ImportesAsignados += ToDouble($(this).val());
|
||||
}
|
||||
});
|
||||
let ImporteDiferencia = SaldoMaximoUtilizable - ImportesAsignados;
|
||||
|
||||
if (Importe > ImporteDiferencia) {
|
||||
TxtImporte.value = FormatoNumero(ImporteDiferencia, 2);
|
||||
} else {
|
||||
TxtImporte.value = FormatoNumero(Importe, 2);;
|
||||
}
|
||||
@@ -7542,6 +7609,7 @@
|
||||
var totalDebito = ToDouble($get("TxtImporteDebito").value);
|
||||
var totalCheque = ToDouble($get("TxtImporteCheque").value);
|
||||
var totalTransferencia = ToDouble($get("TxtImporteTransferencia").value);
|
||||
var totalRNC = ToDouble($get("HdnTotalRNC").value);
|
||||
|
||||
var TotalOtrosContado = 0;
|
||||
|
||||
@@ -7551,7 +7619,7 @@
|
||||
}
|
||||
} catch (e) { }
|
||||
|
||||
var total = totalEfectivo + totalCredito + totalDebito + totalCheque + totalTransferencia + TotalOtrosContado;
|
||||
var total = totalEfectivo + totalCredito + totalDebito + totalCheque + totalTransferencia + TotalOtrosContado + totalRNC;
|
||||
var totalVenta = ToDouble($get('TxtTotal').value);
|
||||
|
||||
if (total > totalVenta) {
|
||||
@@ -8099,23 +8167,23 @@
|
||||
function ConvertirPesos(ChkConvertirDoctoPesos) {
|
||||
//LIMPIA
|
||||
$('#<%= LtlTotalConvertido.ClientID %>').text('');
|
||||
$("#TrConversionPesosTexto").hide();
|
||||
$("#TrConversionPesosTexto").hide();
|
||||
|
||||
//CALCULA
|
||||
if (ChkConvertirDoctoPesos.checked) {
|
||||
ConvertirDllsPesos();
|
||||
}
|
||||
}
|
||||
|
||||
function ConvertirPesosDlls() {
|
||||
var totalPesos = FormatoNumero(ToDouble($get('TxtTotal').value) / ToDouble($get('TxtTipoCambioDlls').value), 2)
|
||||
$('#<%= LblDolaresConvertidos.ClientID %>').text(totalPesos);
|
||||
$("#TrConversionDolaresTexto").show();
|
||||
//CALCULA
|
||||
if (ChkConvertirDoctoPesos.checked) {
|
||||
ConvertirDllsPesos();
|
||||
}
|
||||
}
|
||||
|
||||
function ConvertirDolares(ChkConvertirDolares) {
|
||||
//LIMPIA
|
||||
$('#<%= LblDolaresConvertidos.ClientID %>').text('');
|
||||
function ConvertirPesosDlls() {
|
||||
var totalPesos = FormatoNumero(ToDouble($get('TxtTotal').value) / ToDouble($get('TxtTipoCambioDlls').value), 2)
|
||||
$('#<%= LblDolaresConvertidos.ClientID %>').text(totalPesos);
|
||||
$("#TrConversionDolaresTexto").show();
|
||||
}
|
||||
|
||||
function ConvertirDolares(ChkConvertirDolares) {
|
||||
//LIMPIA
|
||||
$('#<%= LblDolaresConvertidos.ClientID %>').text('');
|
||||
$("#TrConversionDolaresTexto").hide();
|
||||
|
||||
//CALCULA
|
||||
|
||||
@@ -3672,6 +3672,10 @@ Partial Class Ventas
|
||||
DdlEstadoSAT.DataBind()
|
||||
DdlEstadoSAT.Items.Insert(0, New ListItem("Seleccione", "-1"))
|
||||
|
||||
If UsuarioActual.CveEmpresa = 140 AndAlso ClaveSATPais = "MEX" Then
|
||||
DdlEstadoSAT.SelectedValueExist("26")
|
||||
End If
|
||||
|
||||
End Sub
|
||||
Protected Sub DdlSATPais_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||
CargaEstados(DdlSATPais.SelectedValue)
|
||||
@@ -8306,6 +8310,7 @@ Partial Class Ventas
|
||||
If ObjFolios.GetFolios(factura.TipoDocto, UsuarioActual.CveEmpresa) Then
|
||||
Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format(" CveSubProyecto = {0} And Estado = 'Activo'", DdlSubProyectoDatos.SelectedValue.ToEntero()))
|
||||
If DT.Rows.Count > 0 Then
|
||||
factura.Serie = DT.Rows(0)("Serie").ToString()
|
||||
factura.Folio = DT.Rows(0)("FActual").ToString().ToEntero()
|
||||
Else
|
||||
ProcesoCorrecto = False
|
||||
@@ -8493,6 +8498,11 @@ Partial Class Ventas
|
||||
ObjFactura.FacturarSucursal = (Me.FacturarSucursal AndAlso DdlSucursalCliente.SelectedValue.ToEntero() > 0 AndAlso (Me.ClienteSucursal IsNot Nothing AndAlso Not String.IsNullOrEmpty(Me.ClienteSucursal.RFC)))
|
||||
ObjFactura.VentaDesglosaIEPS = Me.VentaDesglosaIEPS
|
||||
'ObjFactura.RefDocto = TxtDocto.Text.Trim
|
||||
|
||||
If EsCreaApartirDe Then
|
||||
ViewState("EstablecioFolio") = False
|
||||
End If
|
||||
|
||||
'si es cancelacion, debe de conservar el folio actual
|
||||
If Not EsCancelacion Then ObjFactura.Folio = If(EstablecioFolio Or VistaPrevia Or (CveVenta > 0 And (NuevaFactura.Contiene(0, 2))), TxtFolio.Text.Trim.ToEntero(), -1)
|
||||
|
||||
@@ -10091,11 +10101,6 @@ Partial Class Ventas
|
||||
End If
|
||||
End If
|
||||
|
||||
If Not GuardarUsados(ObjVentas.IniciaTransacSQL, ObjVentas.CveVenta) Then
|
||||
ErrorList.Add("Error al guardar usados")
|
||||
End If
|
||||
|
||||
|
||||
If ErrorList.Count = 0 AndAlso ObjVentas.CveVenta > 0 Then
|
||||
|
||||
factura.CveVenta = ObjVentas.CveVenta
|
||||
@@ -10105,6 +10110,10 @@ Partial Class Ventas
|
||||
factura.Timbre.Comprobante.Serie = ObjVentas.Serie
|
||||
factura.Timbre.Comprobante.Folio = ObjVentas.Folio.ToString()
|
||||
|
||||
If Not GuardarUsados(ObjVentas.IniciaTransacSQL, factura) Then
|
||||
ErrorList.Add("Error al guardar usados")
|
||||
End If
|
||||
|
||||
If factura.TipoDocto = "Egs" AndAlso NuevaFactura = 1 Then
|
||||
If DtVentasNC Is Nothing Then
|
||||
InicializaDTVentasNC()
|
||||
@@ -16878,9 +16887,9 @@ Partial Class Ventas
|
||||
|
||||
Protected Sub BtnAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarSucursal.Click
|
||||
|
||||
Dim LT As String = "0"
|
||||
Dim LG As String = "0"
|
||||
|
||||
Dim LT As String = "0"
|
||||
Dim LG As String = "0"
|
||||
|
||||
If CveCliente > 0 Then
|
||||
Dim ObjCliente As New ClsClientes
|
||||
Try
|
||||
@@ -16925,13 +16934,13 @@ Partial Class Ventas
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al agregar la sucursal", ex)
|
||||
End Try
|
||||
ObjCliente.Dispose()
|
||||
|
||||
End If
|
||||
|
||||
UpCliente.Update()
|
||||
RegistraScript("hideDivAgregarSucursal();")
|
||||
|
||||
ObjCliente.Dispose()
|
||||
|
||||
End If
|
||||
|
||||
UpCliente.Update()
|
||||
RegistraScript("hideDivAgregarSucursal();")
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -23078,6 +23087,7 @@ Partial Class Ventas
|
||||
|
||||
Me.TmpDTRNCBonificacionesCliente = DtNC.FiltraParametros("TipoRNC = 2")
|
||||
Me.TmpDTRNCBonificacionesCliente.Columns.Add("ImporteBonificacion", GetType(Decimal))
|
||||
Me.TmpDTRNCBonificacionesCliente.Columns.Add("IVABonificacion", GetType(Decimal))
|
||||
Me.TmpDTRNCBonificacionesCliente.Columns.Add("CveVentaRNCCargo", GetType(Integer))
|
||||
|
||||
GvRemisionesNC.DataBind()
|
||||
@@ -23085,7 +23095,7 @@ Partial Class Ventas
|
||||
|
||||
If CveVentaUsado > 0 Then
|
||||
Dim FacUsado As New Modelos.Factura(UsuarioActual, CveVentaUsado, UsuarioActual.CveEmpresa)
|
||||
LtlSMU.Text = String.Format("{0:N2}", FacUsado.DtDetalle.SUM("Total", "EsCargo = True").ToDecimal())
|
||||
LtlSMU.Text = String.Format("{0:N2}", FacUsado.DtDetalle.SUM("Total", "EsCargo = True").ToDecimal() + FacUsado.DtDetalle.SUM("ImporteIVA", "EsCargo = True").ToDecimal())
|
||||
Else
|
||||
LtlSMU.Text = String.Format("{0:N2}", 0)
|
||||
End If
|
||||
@@ -23107,12 +23117,16 @@ Partial Class Ventas
|
||||
|
||||
Me.TmpDTRNCBonificacionesCliente = DtNC.FiltraParametros("TipoRNC = 2")
|
||||
Me.TmpDTRNCBonificacionesCliente.Columns.Add("ImporteBonificacion", GetType(Decimal))
|
||||
Me.TmpDTRNCBonificacionesCliente.Columns.Add("IVABonificacion", GetType(Decimal))
|
||||
Me.TmpDTRNCBonificacionesCliente.Columns.Add("CveVentaRNCCargo", GetType(Integer))
|
||||
|
||||
GvDescNCCargos.DataBind()
|
||||
GvDescNCBonificaciones.DataBind()
|
||||
|
||||
LblSaldoMaximoUsados.Text = String.Format("{0:N2}", Me.TmpDT.SUM("Total", "EsCargo = True").ToDecimal())
|
||||
Dim SaldoMaximoUsados As Decimal = Me.TmpDT.SUM("Total", "EsCargo = True").ToDecimal() + Me.TmpDT.SUM("ImporteIVA", "EsCargo = True").ToDecimal()
|
||||
|
||||
LblSaldoMaximoUsados.Text = String.Format("{0:N2}", SaldoMaximoUsados)
|
||||
HdnSaldoMaximoUsados.Value = SaldoMaximoUsados.ToString()
|
||||
|
||||
UpDescNC.Update()
|
||||
End Sub
|
||||
@@ -23125,28 +23139,52 @@ Partial Class Ventas
|
||||
TmpDTRNCBonificacionesSeleccionadas = Me.TmpDTRNCBonificacionesCliente.Clone()
|
||||
End If
|
||||
|
||||
Dim CveVentaBonificacion As Integer = -1
|
||||
Dim ImporteBonificacion As Decimal = 0
|
||||
Dim ListaBon As New List(Of VentasBonificaciones)
|
||||
Dim DtBon As DataTable = Nothing
|
||||
Dim SbFiltro As New StringBuilder()
|
||||
SbFiltro.Append("CveVenta IN(")
|
||||
Using ObjAcum As New ClsAcumuladores
|
||||
If ObjAcum.DistribuidorMovtosGet(CveCliente, UsuarioActual.CveEmpresa, CveVentaRNCCargo:=GvRow.DataKey("CveVenta").ToEntero()) Then
|
||||
Dim RowMovto As DataRow = ObjAcum.DtResultados.FiltroPrimero("")
|
||||
|
||||
CveVentaBonificacion = RowMovto("CveVentaBonificacion").ToString().ToEntero()
|
||||
ImporteBonificacion = RowMovto("ImporteBonificacion").ToString().ToDecimal()
|
||||
DtBon = ObjAcum.DtResultados.Copy()
|
||||
End If
|
||||
End Using
|
||||
|
||||
If CveVentaBonificacion > 0 Then
|
||||
Dim RowBonificacion As DataRow = Me.TmpDTRNCBonificacionesCliente.FiltroPrimero($"CveVenta = {CveVentaBonificacion}")
|
||||
RowBonificacion("ImporteBonificacion") = ImporteBonificacion
|
||||
RowBonificacion("CveVentaRNCCargo") = GvRow.DataKey("CveVenta").ToEntero()
|
||||
If DtBon IsNot Nothing Then
|
||||
Dim queryBonificacion = From dr In DtBon
|
||||
Group By CveVentaBonificacion = dr("CveVentaBonificacion").ToString().ToEntero
|
||||
Into x = Group
|
||||
Select New With {
|
||||
.CveVentaBonificacion = CveVentaBonificacion,
|
||||
.ImporteBonificacion = x.Sum(Function(s) s("ImporteBonificacion").ToString().ToDecimal),
|
||||
.IVABonificacion = x.Sum(Function(s) s("IVABonificacion").ToString().ToDecimal)
|
||||
}
|
||||
|
||||
If ChkAplicarRNC.Checked Then
|
||||
TmpDTRNCBonificacionesSeleccionadas.Rows.Add(RowBonificacion.ItemArray)
|
||||
Else
|
||||
Dim RowEliminar As DataRow = Me.TmpDTRNCBonificacionesSeleccionadas.Select($"CveVenta = {CveVentaBonificacion}").FirstOrDefault()
|
||||
TmpDTRNCBonificacionesSeleccionadas.Rows.Remove(RowEliminar)
|
||||
End If
|
||||
For Each bon In queryBonificacion
|
||||
SbFiltro.AppendFormat("'{0}',", bon.CveVentaBonificacion)
|
||||
ListaBon.Add(New VentasBonificaciones() With {.CveVentaRNCCargo = GvRow.DataKey("CveVenta").ToEntero(), .CveVentaBonificacion = bon.CveVentaBonificacion, .ImporteBonificacion = bon.ImporteBonificacion, .IVABonificacion = bon.IVABonificacion})
|
||||
Next
|
||||
SbFiltro.Remove(SbFiltro.Length - 1, 1)
|
||||
SbFiltro.Append(")")
|
||||
End If
|
||||
|
||||
If ListaBon.Count > 0 Then
|
||||
Dim Bonificaciones = Me.TmpDTRNCBonificacionesCliente.Select(SbFiltro.ToString())
|
||||
|
||||
For Each RowBonificacion As DataRow In Bonificaciones
|
||||
Dim RNCBonificacion = ListaBon.Where(Function(x) x.CveVentaBonificacion = RowBonificacion("CveVenta").ToString().ToEntero())
|
||||
|
||||
RowBonificacion("ImporteBonificacion") = RNCBonificacion.Sum(Function(x) x.ImporteBonificacion)
|
||||
RowBonificacion("IVABonificacion") = RNCBonificacion.Sum(Function(x) x.IVABonificacion)
|
||||
RowBonificacion("CveVentaRNCCargo") = GvRow.DataKey("CveVenta").ToEntero()
|
||||
|
||||
If ChkAplicarRNC.Checked Then
|
||||
TmpDTRNCBonificacionesSeleccionadas.Rows.Add(RowBonificacion.ItemArray)
|
||||
Else
|
||||
For Each RowEliminar In Me.TmpDTRNCBonificacionesSeleccionadas.Select(SbFiltro.ToString())
|
||||
RowEliminar.Delete()
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
@@ -23160,7 +23198,7 @@ Partial Class Ventas
|
||||
GvDescNCBonificaciones.DataSource = TmpDTRNCBonificacionesSeleccionadas
|
||||
GvDescNCBonificaciones.DataBind()
|
||||
|
||||
LblSaldoMaximoBonificacion.Text = String.Format("{0:N2}", Me.TmpDTRNCBonificacionesSeleccionadas.SUM("ImporteBonificacion").ToDecimal())
|
||||
LblSaldoMaximoBonificacion.Text = String.Format("{0:N2}", Me.TmpDTRNCBonificacionesSeleccionadas.SUM("ImporteBonificacion").ToDecimal() + Me.TmpDTRNCBonificacionesSeleccionadas.SUM("IVABonificacion").ToDecimal())
|
||||
|
||||
UpDescNC.Update()
|
||||
|
||||
@@ -23173,28 +23211,52 @@ Partial Class Ventas
|
||||
TmpDTRNCBonificacionesSeleccionadas = Me.TmpDTRNCBonificacionesCliente.Clone()
|
||||
End If
|
||||
|
||||
Dim CveVentaBonificacion As Integer = -1
|
||||
Dim ImporteBonificacion As Decimal = 0
|
||||
Dim ListaBon As New List(Of VentasBonificaciones)
|
||||
Dim DtBon As DataTable = Nothing
|
||||
Dim SbFiltro As New StringBuilder()
|
||||
SbFiltro.Append("CveVenta IN(")
|
||||
Using ObjAcum As New ClsAcumuladores
|
||||
If ObjAcum.DistribuidorMovtosGet(CveCliente, UsuarioActual.CveEmpresa, CveVentaRNCCargo:=GvRow.DataKey("CveVenta").ToEntero()) Then
|
||||
Dim RowMovto As DataRow = ObjAcum.DtResultados.FiltroPrimero("")
|
||||
|
||||
CveVentaBonificacion = RowMovto("CveVentaBonificacion").ToString().ToEntero()
|
||||
ImporteBonificacion = RowMovto("ImporteBonificacion").ToString().ToDecimal()
|
||||
DtBon = ObjAcum.DtResultados.Copy()
|
||||
End If
|
||||
End Using
|
||||
|
||||
If CveVentaBonificacion > 0 Then
|
||||
Dim RowBonificacion As DataRow = Me.TmpDTRNCBonificacionesCliente.FiltroPrimero($"CveVenta = {CveVentaBonificacion}")
|
||||
RowBonificacion("ImporteBonificacion") = ImporteBonificacion
|
||||
RowBonificacion("CveVentaRNCCargo") = GvRow.DataKey("CveVenta").ToEntero()
|
||||
If DtBon IsNot Nothing Then
|
||||
Dim queryBonificacion = From dr In DtBon
|
||||
Group By CveVentaBonificacion = dr("CveVentaBonificacion").ToString().ToEntero
|
||||
Into x = Group
|
||||
Select New With {
|
||||
.CveVentaBonificacion = CveVentaBonificacion,
|
||||
.ImporteBonificacion = x.Sum(Function(s) s("ImporteBonificacion").ToString().ToDecimal),
|
||||
.IVABonificacion = x.Sum(Function(s) s("IVABonificacion").ToString().ToDecimal)
|
||||
}
|
||||
|
||||
If ChkAplicarRNC.Checked Then
|
||||
TmpDTRNCBonificacionesSeleccionadas.Rows.Add(RowBonificacion.ItemArray)
|
||||
Else
|
||||
Dim RowEliminar As DataRow = Me.TmpDTRNCBonificacionesSeleccionadas.Select($"CveVenta = {CveVentaBonificacion}").FirstOrDefault()
|
||||
TmpDTRNCBonificacionesSeleccionadas.Rows.Remove(RowEliminar)
|
||||
End If
|
||||
For Each bon In queryBonificacion
|
||||
SbFiltro.AppendFormat("'{0}',", bon.CveVentaBonificacion)
|
||||
ListaBon.Add(New VentasBonificaciones() With {.CveVentaRNCCargo = GvRow.DataKey("CveVenta").ToEntero(), .CveVentaBonificacion = bon.CveVentaBonificacion, .ImporteBonificacion = bon.ImporteBonificacion, .IVABonificacion = bon.IVABonificacion})
|
||||
Next
|
||||
SbFiltro.Remove(SbFiltro.Length - 1, 1)
|
||||
SbFiltro.Append(")")
|
||||
End If
|
||||
|
||||
If ListaBon.Count > 0 Then
|
||||
Dim Bonificaciones = Me.TmpDTRNCBonificacionesCliente.Select(SbFiltro.ToString())
|
||||
|
||||
For Each RowBonificacion As DataRow In Bonificaciones
|
||||
Dim RNCBonificacion = ListaBon.Where(Function(x) x.CveVentaBonificacion = RowBonificacion("CveVenta").ToString().ToEntero())
|
||||
|
||||
RowBonificacion("ImporteBonificacion") = RNCBonificacion.Sum(Function(x) x.ImporteBonificacion)
|
||||
RowBonificacion("IVABonificacion") = RNCBonificacion.Sum(Function(x) x.IVABonificacion)
|
||||
RowBonificacion("CveVentaRNCCargo") = GvRow.DataKey("CveVenta").ToEntero()
|
||||
|
||||
If ChkAplicarRNC.Checked Then
|
||||
TmpDTRNCBonificacionesSeleccionadas.Rows.Add(RowBonificacion.ItemArray)
|
||||
Else
|
||||
For Each RowEliminar In Me.TmpDTRNCBonificacionesSeleccionadas.Select(SbFiltro.ToString())
|
||||
RowEliminar.Delete()
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
@@ -23208,7 +23270,7 @@ Partial Class Ventas
|
||||
GvRemisionesNCBon.DataSource = TmpDTRNCBonificacionesSeleccionadas
|
||||
GvRemisionesNCBon.DataBind()
|
||||
|
||||
LtlSMUBon.Text = String.Format("{0:N2}", Me.TmpDTRNCBonificacionesSeleccionadas.SUM("ImporteBonificacion").ToDecimal())
|
||||
LtlSMUBon.Text = String.Format("{0:N2}", Me.TmpDTRNCBonificacionesSeleccionadas.SUM("ImporteBonificacion").ToDecimal() + Me.TmpDTRNCBonificacionesSeleccionadas.SUM("IVABonificacion").ToDecimal())
|
||||
|
||||
UpModalRemisionesNC.Update()
|
||||
|
||||
@@ -23570,7 +23632,7 @@ Partial Class Ventas
|
||||
Dim UltimoRenglonRNC As Integer = 1
|
||||
For Each RowUsado As DataRow In RNC.DtDetalle.Rows
|
||||
|
||||
Dim PorcentajeUsado = (RowUsado("Total").ToString().ToDecimal() - RowUsado("Descuento").ToString().ToDecimal() + RowUsado("ImporteIVA").ToString().ToDecimal() + RowUsado("ImporteIEPS").ToString().ToDecimal() - RowUsado("ImporteRetIVA").ToString().ToDecimal() - RowUsado("ImporteRetISR").ToString().ToDecimal()) / RNC.Total
|
||||
Dim PorcentajeUsado = ((RowUsado("Total").ToString().ToDecimal() - RowUsado("Descuento").ToString().ToDecimal() + RowUsado("ImporteIVA").ToString().ToDecimal() + RowUsado("ImporteIEPS").ToString().ToDecimal() - RowUsado("ImporteRetIVA").ToString().ToDecimal() - RowUsado("ImporteRetISR").ToString().ToDecimal()) / RNC.Total) / ListaNC.Count
|
||||
Dim Obs = RowUsado("CodigoPS").ToString()
|
||||
|
||||
If Not String.IsNullOrEmpty(TxtNCObservaciones.Text.Trim()) Then
|
||||
@@ -23615,7 +23677,7 @@ Partial Class Ventas
|
||||
|
||||
For Each RowCargo As DataRow In RNCCargo.DtDetalle.Rows
|
||||
|
||||
Dim PorcentajeCargo = (RowCargo("Total").ToString().ToDecimal() - RowCargo("Descuento").ToString().ToDecimal() + RowCargo("ImporteIVA").ToString().ToDecimal() + RowCargo("ImporteIEPS").ToString().ToDecimal() - RowCargo("ImporteRetIVA").ToString().ToDecimal() - RowCargo("ImporteRetISR").ToString().ToDecimal()) / RNCCargo.Total
|
||||
Dim PorcentajeCargo = ((RowCargo("Total").ToString().ToDecimal() - RowCargo("Descuento").ToString().ToDecimal() + RowCargo("ImporteIVA").ToString().ToDecimal() + RowCargo("ImporteIEPS").ToString().ToDecimal() - RowCargo("ImporteRetIVA").ToString().ToDecimal() - RowCargo("ImporteRetISR").ToString().ToDecimal()) / RNCCargo.Total) / ListaNCBonificacion.Count
|
||||
|
||||
Dim Obs = RowCargo("CodigoPS").ToString()
|
||||
|
||||
@@ -26505,29 +26567,21 @@ Partial Class Ventas
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function GuardarUsados(SqlTransaccion As SqlClient.SqlTransaction, CveVenta As Integer) As Boolean
|
||||
Private Function GuardarUsados(SqlTransaccion As SqlClient.SqlTransaction, factura As Modelos.Factura) As Boolean
|
||||
Dim Resultado As Boolean = True
|
||||
|
||||
If ClienteEsDistribuidor Then
|
||||
'If UsuarioActual.Empresa.Funcionalidad(533).ToEntero() > 0 Then
|
||||
' Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero()
|
||||
|
||||
If ClienteEsDistribuidor AndAlso factura.TipoDocto.Contiene("Ing") Then
|
||||
Dim ObjAcum As New ClsAcumuladores(SqlTransaccion)
|
||||
|
||||
Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero
|
||||
|
||||
For Each drow As DataRow In TmpDT.Rows
|
||||
If drow("CveTamaño").ToString().ToEntero() > 0 Then
|
||||
Dim TempDTAcums = GlobalDTAcumTamaños.FiltraParametros("CvePSCargo = " & drow("CvePS").ToString())
|
||||
If TempDTAcums IsNot Nothing AndAlso TempDTAcums.Rows.Count > 0 Then
|
||||
If Not ObjAcum.DistribuidorMovtosAdd(CveCliente, drow("Cantidad").ToString().ToEntero(), drow("CveTamaño").ToString().ToEntero(), 2, CveVenta, UsuarioActual.CveUsuario,
|
||||
UsuarioActual.CveEmpresa, 0D, "") Then
|
||||
Resultado = False
|
||||
Exit For
|
||||
End If
|
||||
Else
|
||||
Resultado = True
|
||||
For Each drow As DataRow In factura.DtDetalle.Rows
|
||||
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, CveVenta, UsuarioActual.CveUsuario,
|
||||
UsuarioActual.CveEmpresa, 0D, "") Then
|
||||
Resultado = False
|
||||
Exit For
|
||||
End If
|
||||
TempDTAcums.Dispose()
|
||||
End If
|
||||
Next
|
||||
Else
|
||||
@@ -26645,81 +26699,96 @@ Partial Class Ventas
|
||||
RegistraScript("$('#ModalAplicarDescuentoNC').modal('show'); ")
|
||||
End Sub
|
||||
Protected Sub BtnAplicarDesc_Click(sender As Object, e As EventArgs)
|
||||
Dim CveSATNC = "84111506"
|
||||
Dim DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, SATClavePS:=CveSATNC, AplicaParaVenta:=1).Rows(0)
|
||||
Try
|
||||
Dim CveSATNC = "84111506"
|
||||
Dim DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, SATClavePS:=CveSATNC, AplicaParaVenta:=1).Rows(0)
|
||||
|
||||
If DrPS Is Nothing Then
|
||||
Alert("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.", TipoMensaje.MsgError)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
AplicaNCMasiva = True
|
||||
|
||||
If ListaNCDesc Is Nothing Then
|
||||
ListaNCDesc = New List(Of Modelos.Factura)
|
||||
Else
|
||||
ListaNCDesc.Clear()
|
||||
End If
|
||||
|
||||
If ListaNCBonificacion Is Nothing Then
|
||||
ListaNCBonificacion = New List(Of Modelos.Factura)
|
||||
Else
|
||||
ListaNCBonificacion.Clear()
|
||||
End If
|
||||
|
||||
Dim TotalRemNCAplicado As Decimal = 0
|
||||
For Each GvRow As GridViewRow In GvDescNCCargos.Rows
|
||||
If GvRow.RowType = DataControlRowType.DataRow Then
|
||||
If GvRow.FCCheckBox("ChkAplicar").Checked Then
|
||||
Dim RemNC As New Modelos.Factura(UsuarioActual, GvRow.DataKey("CveVenta").ToEntero(), UsuarioActual.CveEmpresa)
|
||||
RemNC.TotalRemNCAplicado = GvRow.FCTextBox("TxtImporte").Text.ToDecimal()
|
||||
TotalRemNCAplicado += RemNC.TotalRemNCAplicado
|
||||
|
||||
If RemNC.TotalRemNCAplicado <= 0 Then
|
||||
Alert($"Debe asignar un importe en la siguiente remisión: <b>{RemNC.SerieFolio}</b>", TipoMensaje.MsgAdvertencia)
|
||||
ListaNCDesc.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ListaNCDesc.Add(RemNC)
|
||||
End If
|
||||
If DrPS Is Nothing Then
|
||||
Alert("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.", TipoMensaje.MsgError)
|
||||
Exit Sub
|
||||
End If
|
||||
Next
|
||||
|
||||
Dim LimiteUsados As Decimal = Me.TmpDT.SUM("Total", "EsCargo = True").ToDecimal()
|
||||
AplicaNCMasiva = True
|
||||
|
||||
'VERIFICA EL LIMITE DE LOS USADOS
|
||||
If TotalRemNCAplicado > LimiteUsados Then
|
||||
Alert($"La suma de las remisiones de nota de crédito de tipo 'Cargo' no debe superar el total de Usados.<br/>Total RNC: {TotalRemNCAplicado:N2}.<br/>Total Usados: {LimiteUsados:N2}", TipoMensaje.MsgAdvertencia)
|
||||
ListaNCDesc.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
For Each GvRow As GridViewRow In GvDescNCBonificaciones.Rows
|
||||
If GvRow.RowType = DataControlRowType.DataRow Then
|
||||
If GvRow.FCCheckBox("ChkAplicar").Checked Then
|
||||
Dim RemNC As New Modelos.Factura(UsuarioActual, GvRow.DataKey("CveVenta").ToEntero(), UsuarioActual.CveEmpresa)
|
||||
RemNC.TotalRemNCAplicado = GvRow.FCTextBox("TxtImporte").Text.ToDecimal()
|
||||
RemNC.CveVentaRNCCargo = GvRow.DataKey("CveVentaRNCCargo").ToEntero()
|
||||
TotalRemNCAplicado += RemNC.TotalRemNCAplicado
|
||||
|
||||
If RemNC.TotalRemNCAplicado <= 0 Then
|
||||
Alert($"Debe asignar un importe en la siguiente remisión: <b>{RemNC.SerieFolio}</b>", TipoMensaje.MsgAdvertencia)
|
||||
ListaNCBonificacion.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ListaNCBonificacion.Add(RemNC)
|
||||
End If
|
||||
If ListaNCDesc Is Nothing Then
|
||||
ListaNCDesc = New List(Of Modelos.Factura)
|
||||
Else
|
||||
ListaNCDesc.Clear()
|
||||
End If
|
||||
Next
|
||||
|
||||
LblDescuentosRNC.Text = TotalRemNCAplicado.FormatoNumero
|
||||
LblTotalNC.Text = (TxtTotal.Text.ToDecimal() - TotalRemNCAplicado).FormatoNumero
|
||||
If ListaNCBonificacion Is Nothing Then
|
||||
ListaNCBonificacion = New List(Of Modelos.Factura)
|
||||
Else
|
||||
ListaNCBonificacion.Clear()
|
||||
End If
|
||||
|
||||
Dim CvePS = DrPS("CvePS").ToString().ToEntero()
|
||||
Dim TotalRemNCAplicado As Decimal = 0
|
||||
For Each GvRow As GridViewRow In GvDescNCCargos.Rows
|
||||
If GvRow.RowType = DataControlRowType.DataRow Then
|
||||
If GvRow.FCCheckBox("ChkAplicar").Checked Then
|
||||
Dim RemNC As New Modelos.Factura(UsuarioActual, GvRow.DataKey("CveVenta").ToEntero(), UsuarioActual.CveEmpresa)
|
||||
RemNC.TotalRemNCAplicado = GvRow.FCTextBox("TxtImporte").Text.ToDecimal()
|
||||
TotalRemNCAplicado += RemNC.TotalRemNCAplicado
|
||||
|
||||
If RemNC.TotalRemNCAplicado <= 0 Then
|
||||
Alert($"Debe asignar un importe en la siguiente remisión: <b>{RemNC.SerieFolio}</b>", TipoMensaje.MsgAdvertencia)
|
||||
ListaNCDesc.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ListaNCDesc.Add(RemNC)
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
Dim LimiteUsados As Decimal = LblSaldoMaximoUsados.Text.Trim().ToDecimal()
|
||||
|
||||
'VERIFICA EL LIMITE DE LOS USADOS
|
||||
If TotalRemNCAplicado > LimiteUsados Then
|
||||
Alert($"La suma de las remisiones de nota de crédito de tipo 'Cargo' no debe superar el total de Usados.<br/>Total RNC: {TotalRemNCAplicado:N2}.<br/>Total Usados: {LimiteUsados:N2}", TipoMensaje.MsgAdvertencia)
|
||||
ListaNCDesc.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
|
||||
For Each GvRow As GridViewRow In GvDescNCBonificaciones.Rows
|
||||
If GvRow.RowType = DataControlRowType.DataRow Then
|
||||
If GvRow.FCCheckBox("ChkAplicar").Checked Then
|
||||
Dim RemNC As New Modelos.Factura(UsuarioActual, GvRow.DataKey("CveVenta").ToEntero(), UsuarioActual.CveEmpresa)
|
||||
RemNC.TotalRemNCAplicado = GvRow.FCTextBox("TxtImporte").Text.ToDecimal()
|
||||
RemNC.CveVentaRNCCargo = GvRow.DataKey("CveVentaRNCCargo").ToEntero()
|
||||
TotalRemNCAplicado += RemNC.TotalRemNCAplicado
|
||||
|
||||
If RemNC.TotalRemNCAplicado <= 0 Then
|
||||
Alert($"Debe asignar un importe en la siguiente remisión: <b>{RemNC.SerieFolio}</b>", TipoMensaje.MsgAdvertencia)
|
||||
ListaNCBonificacion.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ListaNCBonificacion.Add(RemNC)
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
Dim LimiteBonficaciones As Decimal = LblSaldoMaximoBonificacion.Text.Trim().ToDecimal()
|
||||
|
||||
'VERIFICA EL LIMITE DE LOS USADOS
|
||||
If ListaNCBonificacion.Sum(Function(x) x.TotalRemNCAplicado) > LimiteBonficaciones Then
|
||||
Alert($"La suma de las remisiones de nota de crédito de tipo 'Cargo' no debe superar el total de Usados.<br/>Total RNC: {TotalRemNCAplicado:N2}.<br/>Total Usados: {LimiteUsados:N2}", TipoMensaje.MsgAdvertencia)
|
||||
ListaNCDesc.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
HdnTotalRNC.Value = TotalRemNCAplicado.ToString()
|
||||
LblDescuentosRNC.Text = TotalRemNCAplicado.FormatoNumero
|
||||
LblTotalNC.Text = (TxtTotal.Text.ToDecimal() - TotalRemNCAplicado).FormatoNumero
|
||||
|
||||
Dim CvePS = DrPS("CvePS").ToString().ToEntero()
|
||||
|
||||
AplicarNC(CvePS, True)
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al aplicar remisiones de nota de crédito", ex)
|
||||
End Try
|
||||
|
||||
AplicarNC(CvePS, True)
|
||||
|
||||
UpPS.Update()
|
||||
|
||||
@@ -27321,4 +27390,11 @@ Partial Class Ventas
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
Partial Class VentasBonificaciones
|
||||
Public CveVentaRNCCargo As Integer = -1
|
||||
Public CveVentaBonificacion As Integer = -1
|
||||
Public ImporteBonificacion As Decimal = 0
|
||||
Public IVABonificacion As Decimal = 0
|
||||
End Class
|
||||
End Class
|
||||
Reference in New Issue
Block a user