From 009aa37880d284690c3bd3e87e9c9df194aeae92 Mon Sep 17 00:00:00 2001 From: rrene Date: Thu, 3 Feb 2022 07:14:18 -0700 Subject: [PATCH 01/20] =?UTF-8?q?--=20cambio=20en=20plantilla=20de=20p?= =?UTF-8?q?=C3=B3liza=20de=20devoluciones=20de=20efectivo=20de=20compras?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bancos/IE.aspx.vb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb index e8f7cfcc6..431c75456 100644 --- a/Bancos/IE.aspx.vb +++ b/Bancos/IE.aspx.vb @@ -2614,7 +2614,7 @@ Partial Class Bancos_IE End If End If If Opcion = "DevDinC" Then - CvePlantillaPoliza = 2 + CvePlantillaPoliza = 40 End If 'Cuando es Egreso sin factura, se registra una compra tipo anticipo @@ -3068,6 +3068,7 @@ Partial Class Bancos_IE Dim ImporteAplicarMN = 0.0D Dim ImporteAplicarME = 0.0D Dim ReferenciaAplicar = ObjIE.Folio + Dim CveSubProyecto As Integer = GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveSubProyecto).FiltroPrimeroValor("CveSubProyecto").ToEntero Dim ConceptoAplicar = $"Devolución de Proveedor {PagueseA} {TxtImporte.Text} NC:{SerieFolioDeCDin}" @@ -3398,7 +3399,7 @@ Partial Class Bancos_IE End If - If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoIE, Impo, ReferenciaAplicar, CveConcIE, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=Impo, ImporteME:=0, TipoCambio:=TCDocumento) Then + If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoIE, Impo, ReferenciaAplicar, CveConcIE, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=Impo, ImporteME:=0, TipoCambio:=TCDocumento, CveSubProyecto:=CveSubProyecto) Then MsgError = "Ocurrió un error al registrar el asiento de pago de devolución" Exit Select End If From 042f068011919f188be8483a14095d2955485f09 Mon Sep 17 00:00:00 2001 From: rrene Date: Thu, 3 Feb 2022 22:03:27 -0700 Subject: [PATCH 02/20] - filtros --- App_Code/ClsVentas.vb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index 2daceca7c..a77e04cf8 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -1664,7 +1664,7 @@ Public Class ClsVentas Optional TipoDocto As String = "-1", Optional GPO As Integer = -1, Optional CveMoneda As Integer = -1, Optional TipoCambio As Integer = -1, Optional TCEspecifico As Double = 0, Optional CveClienteClasificacion As Integer = -1, Optional CveProveedorCompra As Integer = -1, Optional CveMarca As Integer = -1, Optional CveClasificacionDetalle As Integer = -1, Optional TipoCliente As Integer = -1, Optional ModalidadContable As Boolean = False, - Optional EsGarantia As Integer = -1, Optional CveCondicionesPago As Integer = -1, Optional EsDistribuidor As Integer = -1) As Boolean + Optional EsGarantia As Integer = -1, Optional MostrarLitraje As Boolean = False, Optional CveCondicionesPago As Integer = -1, Optional EsDistribuidor As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Vta_GetRepPSDetalle") @@ -1696,6 +1696,7 @@ Public Class ClsVentas .Add("@CveProveedorCompra", SqlDbType.Int).Value = CveProveedorCompra .Add("@CveMarca", SqlDbType.Int).Value = CveMarca .Add("@CveClasificacionDetalle", SqlDbType.Int).Value = CveClasificacionDetalle + .Add("@MostrarLitraje", SqlDbType.Bit).Value = MostrarLitraje .Add("@TipoCliente", SqlDbType.Int).Value = TipoCliente .Add("@ModalidadContable", SqlDbType.Bit).Value = ModalidadContable .Add("@EsGarantia", SqlDbType.Int).Value = EsGarantia From 427c7e89d3e4bf4b9599e5cf387f60a9d3c0d11d Mon Sep 17 00:00:00 2001 From: rrene Date: Thu, 3 Feb 2022 22:05:39 -0700 Subject: [PATCH 03/20] =?UTF-8?q?--=20importe=20de=20devoluci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Compras/Compras.aspx.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 291b351fa..a0881a490 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -6899,7 +6899,7 @@ Partial Class Compras_Compras Dim IdCtaContable69 As Integer = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {CveClasificacion69}").ToString.ToEntero - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaDevolucion, Referencia, 69, Concepto, FechaMovimiento, IdCtaContable69, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza, CveSubProyecto:=CveSubProyecto69, CveClasificacion:=CveClasificacion69) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaDevolucion, Referencia, 69, Concepto, FechaMovimiento, IdCtaContable69, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteMX:=DiferenciaDevolucion, ImporteME:=If(tipoCambioActual = 1, 0, DiferenciaDevolucion), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza, CveSubProyecto:=CveSubProyecto69, CveClasificacion:=CveClasificacion69) Then ErrorPrepoliza = True End If End If From 1bd86ed80f0bb1ed8c4314fae8b944e511d08671 Mon Sep 17 00:00:00 2001 From: rrene Date: Thu, 3 Feb 2022 22:07:11 -0700 Subject: [PATCH 04/20] -- mejora en columnas --- Inventarios/RepExistenciasCostos.aspx | 2 +- Inventarios/RepExistenciasCostos.aspx.vb | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Inventarios/RepExistenciasCostos.aspx b/Inventarios/RepExistenciasCostos.aspx index 865f278ec..5df327151 100644 --- a/Inventarios/RepExistenciasCostos.aspx +++ b/Inventarios/RepExistenciasCostos.aspx @@ -132,7 +132,7 @@ - + diff --git a/Inventarios/RepExistenciasCostos.aspx.vb b/Inventarios/RepExistenciasCostos.aspx.vb index ad3a4570a..219b6d67b 100644 --- a/Inventarios/RepExistenciasCostos.aspx.vb +++ b/Inventarios/RepExistenciasCostos.aspx.vb @@ -129,6 +129,8 @@ Partial Class Inventarios_RepExistenciasCostos DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1) DdlAlmacen.DataBind() DdlAlmacen.Items.Insert(0, New ListItem("Todos", "-1")) + DdlAlmacen.SelectedValueExist(UsuarioActual.CveAlmacen) + If Not IsNothing(Request("CveAlmacen")) Then If DdlAlmacen.Items.FindByValue(Request("CveAlmacen").ToString) Is Nothing Then Dim CveAlmacen = Request("CveAlmacen").ToString From f5920cfea1b9e49b95be22253fe60cea9864ec75 Mon Sep 17 00:00:00 2001 From: rrene Date: Thu, 3 Feb 2022 22:51:43 -0700 Subject: [PATCH 05/20] -- filtros --- Ventas/RepProductosServicios.aspx | 37 +++++++++++---------- Ventas/RepProductosServicios.aspx.vb | 3 +- Ventas/RepProductosServiciosDetalle.aspx | 19 +++++++---- Ventas/RepProductosServiciosDetalle.aspx.vb | 10 +++++- 4 files changed, 43 insertions(+), 26 deletions(-) diff --git a/Ventas/RepProductosServicios.aspx b/Ventas/RepProductosServicios.aspx index 10c47da75..ba350812e 100644 --- a/Ventas/RepProductosServicios.aspx +++ b/Ventas/RepProductosServicios.aspx @@ -215,15 +215,7 @@ - - -
- - - - - -
+
@@ -297,6 +289,14 @@
+
+ +
+ + + + +
@@ -306,13 +306,7 @@
- - -
- -
- - +
@@ -338,18 +332,25 @@
- -
+ +
+ +
+ +
+
+
+
diff --git a/Ventas/RepProductosServicios.aspx.vb b/Ventas/RepProductosServicios.aspx.vb index 53ba3b7b7..997ee6925 100644 --- a/Ventas/RepProductosServicios.aspx.vb +++ b/Ventas/RepProductosServicios.aspx.vb @@ -63,11 +63,12 @@ Partial Class Ventas_RepProductosServicios SetValues() If UsuarioActual.Empresa.Funcionalidad(531).ToEntero = 1 Then - LblLitraje.Visible = True DvLitraje.Visible = True 'garantia divgarantia1.Visible = True divgarantia2.Visible = True + divdistribuidor1.Visible = True + divdistribuidor2.Visible = True End If End If diff --git a/Ventas/RepProductosServiciosDetalle.aspx b/Ventas/RepProductosServiciosDetalle.aspx index 46ba8f989..aca9dc857 100644 --- a/Ventas/RepProductosServiciosDetalle.aspx +++ b/Ventas/RepProductosServiciosDetalle.aspx @@ -323,7 +323,10 @@ -
+
+ Garantía?: +
+
@@ -331,18 +334,22 @@
- -
+ +
- -
- +
+
+
+
+
+ +
diff --git a/Ventas/RepProductosServiciosDetalle.aspx.vb b/Ventas/RepProductosServiciosDetalle.aspx.vb index 993345dec..c2238d933 100644 --- a/Ventas/RepProductosServiciosDetalle.aspx.vb +++ b/Ventas/RepProductosServiciosDetalle.aspx.vb @@ -384,6 +384,14 @@ Partial Class Ventas_RepProductosServiciosDetalle txtFechaI.Text = If(Mes <> "-1", String.Format("01/{0}/0001", Mes), txtFechaI.Text) + If UsuarioActual.Empresa.Funcionalidad(531).ToEntero = 1 Then + DvLitraje.Visible = True + 'garantia + divgarantia1.Visible = True + divgarantia2.Visible = True + divdistribuidor1.Visible = True + divdistribuidor2.Visible = True + End If If FechaEjec <> "-1" Then TxtFechaIEjec.Text = FechaEjec @@ -468,7 +476,7 @@ Partial Class Ventas_RepProductosServiciosDetalle UsuarioActual.CveEmpresa, CveUsuarioConsulta:=UsuarioActual.CveUsuario, TipoDocto:=TipoComprobante, GPO:=DdlGrupo.SelectedValue.ToEntero, CveMoneda:=CveMoneda, TipoCambio:=TipoCambio, TCEspecifico:=TCEspecifico, CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, CveProveedorCompra:=CveProveedorCompra, CveMarca:=DdlMarcaPSDes.SelectedValue.ToEntero, CveClasificacionDetalle:=DdlTipoPSDes.SelectedValue.ToEntero(), TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero, - ModalidadContable:=Not ChkLecturaAdmin.Checked, CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero, EsDistribuidor:=DdlDistribuidor.SelectedValue.ToEntero) Then + ModalidadContable:=Not ChkLecturaAdmin.Checked, MostrarLitraje:=ChkLitraje.Checked, EsGarantia:=DdlGarantia.SelectedValue.ToEntero, CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero, EsDistribuidor:=DdlDistribuidor.SelectedValue.ToEntero) Then GvDatos.DataSource = ObjVentas.DtResultados TmpDT = ObjVentas.DtResultados Else From 796a7172461e1ace2062aa3bf6d7f5f3772979cb Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 15:07:53 -0700 Subject: [PATCH 06/20] -- cambio en alerta --- App_Code/ClsVentas.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index a77e04cf8..a4ee14e02 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -3123,7 +3123,7 @@ Public Class ClsVentas Else If showalert Then - Alert("No se encontraron cancelaciones pendientes", ModExtensiones.TipoMensaje.MsgError) + Alert("No se encontraron cancelaciones pendientes", ModExtensiones.TipoMensaje.MsgAdvertencia) End If End If Else From 18ce978eb16b2dac63ba6af7eb83c99d847077fb Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 15:08:19 -0700 Subject: [PATCH 07/20] =?UTF-8?q?actualizaci=C3=B3n=20de=20librer=C3=ADa?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App_Code/Timbrado.vb | 2 +- Bin/GoCfdi.dll | Bin 473088 -> 487936 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb index 2f98c6f49..95cad2ac0 100644 --- a/App_Code/Timbrado.vb +++ b/App_Code/Timbrado.vb @@ -3920,7 +3920,7 @@ Public Class Timbrado #Region "Timbra" If ArchivoGenerado Then - cfdi.TimbrarCfdi(UsuarioServicio, ClaveServicio, UrlServicio, TimbraProduccion) + cfdi.TimbrarCfdi(UsuarioServicio, ClaveServicio, TimbraProduccion) sw.Stop() swTiempo.AppendFormat("Timbrado: ({0}) {1} ", sw.ElapsedMilliseconds - swmili, sw.ElapsedMilliseconds) diff --git a/Bin/GoCfdi.dll b/Bin/GoCfdi.dll index 927dddc9b0d29f11739d5b37ddf4059a76c9d49c..6f700aebb1f367f60df5353109496457ac8ba84c 100644 GIT binary patch literal 487936 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§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 delta 116676 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 HMUMXg6Y76Y From 5abf0da35b4e73678b0662402ab4cbbf0ecabf8f Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 15:08:55 -0700 Subject: [PATCH 08/20] parametros extras hacia detalle --- Ventas/RepProductosServicios.aspx.vb | 14 +++++++++----- Ventas/RepProductosServiciosDetalle.aspx.vb | 11 ++++++++++- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/Ventas/RepProductosServicios.aspx.vb b/Ventas/RepProductosServicios.aspx.vb index 997ee6925..f7a31600e 100644 --- a/Ventas/RepProductosServicios.aspx.vb +++ b/Ventas/RepProductosServicios.aspx.vb @@ -368,11 +368,15 @@ Partial Class Ventas_RepProductosServicios FechaIEjec = If(IsDate(TxtFechaIEjec.Text.Trim()), TxtFechaIEjec.Text.Trim(), "-1") FechaFEjec = If(IsDate(TxtFechaFEjec.Text.Trim()), TxtFechaFEjec.Text.Trim(), "-1") - Dim Liga = String.Format("/Ventas/RepProductosServiciosDetalle.aspx?CveProyecto={0}&CveSubProyecto={1}&CveCategoria={2}&CveClasificacion={3}&CvePS={4}&CveCliente={5}&CveSubProyectoEjecucion={6}&CveVendedor={7}&CveUsuario={8}&CveEstatus={9}&Anio={10}&Mes={11}&AnioMes={12}&Fecha={13}&AnioEjec={14}&MesEjec={15}&AnioMesEjec={16}&FechaEjec={17}&FechaI={18}&FechaF={19}&FechaEI={20}&FechaEF={21}&TipoDocto={22}&Grupo={23}&CveMoneda={24}&TipoCambio={25}&TCEspecifico={26}&CveClienteClasificacion={27}&CveProveedorCompra={28}&CveMarca={29}&CveClasificacionDetalle={30}&TipoCliente={31}&ModalidadContable={32}", - e.Row.DBCampo("CveProyecto"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveCategoria"), e.Row.DBCampo("CveClasificacion"), e.Row.DBCampo("CvePS"), - e.Row.DBCampo("CveCliente"), e.Row.DBCampo("CveSubProyectoEjecucion"), e.Row.DBCampo("Vendedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveEstatusFactura"), - e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("AnioEjec"), e.Row.DBCampo("MesEjec"), e.Row.DBCampo("AnioMesEjec"), e.Row.DBCampo("FechaEjec"), - FechaI, FechaF, FechaIEjec, FechaFEjec, e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("CveGpo"), e.Row.DBCampo("CveMoneda"), e.Row.DBCampo("TipoCambio"), e.Row.DBCampo("TCEspecifico"), e.Row.DBCampo("CveClienteClasificacion"), e.Row.DBCampo("CveProveedorCompra"), cveMarca, CveClasificacionDetalle, If(DdlGrupo.SelectedValue.ToEntero = 23, e.Row.DBCampo("TipoCliente"), DdlTipoCliente.SelectedValue), If(Not ChkLecturaAdmin.Checked, 1, 0)) + Dim Liga = String.Format("/Ventas/RepProductosServiciosDetalle.aspx?CveProyecto={0}&CveSubProyecto={1}&CveCategoria={2}&CveClasificacion={3}&CvePS={4}&CveCliente={5}&CveSubProyectoEjecucion={6}&CveVendedor={7}&CveUsuario={8}&CveEstatus={9}&Anio={10}&Mes={11}&AnioMes={12}&Fecha={13}&AnioEjec={14}&MesEjec={15}&AnioMesEjec={16}&FechaEjec={17}&FechaI={18}&FechaF={19} + &FechaEI={20}&FechaEF={21}&TipoDocto={22}&Grupo={23}&CveMoneda={24}&TipoCambio={25}&TCEspecifico={26}&CveClienteClasificacion={27}&CveProveedorCompra={28}&CveMarca={29}&CveClasificacionDetalle={30} + &TipoCliente={31}&ModalidadContable={32}&EsGarantia={33}&CveCondicionesPago={34}&MostrarLitraje={35}&EsDistribuidor={36}", + e.Row.DBCampo("CveProyecto"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveCategoria"), e.Row.DBCampo("CveClasificacion"), e.Row.DBCampo("CvePS"), + e.Row.DBCampo("CveCliente"), e.Row.DBCampo("CveSubProyectoEjecucion"), e.Row.DBCampo("Vendedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveEstatusFactura"), + e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("AnioEjec"), e.Row.DBCampo("MesEjec"), e.Row.DBCampo("AnioMesEjec"), e.Row.DBCampo("FechaEjec"), + FechaI, FechaF, FechaIEjec, FechaFEjec, e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("CveGpo"), e.Row.DBCampo("CveMoneda"), e.Row.DBCampo("TipoCambio"), e.Row.DBCampo("TCEspecifico"), e.Row.DBCampo("CveClienteClasificacion"), e.Row.DBCampo("CveProveedorCompra"), cveMarca, + CveClasificacionDetalle, If(DdlGrupo.SelectedValue.ToEntero = 23, e.Row.DBCampo("TipoCliente"), DdlTipoCliente.SelectedValue), If(Not ChkLecturaAdmin.Checked, 1, 0), + e.Row.DBCampo("EsGarantia"), e.Row.DBCampo("CveCondicionesPago"), IIf(e.Row.DBCampo("MostrarLitraje") = "True", 1, 0), e.Row.DBCampo("EsDistribuidor")) e.Row.FCLiteral("LtlGrupo").Text = String.Format("{2}", Css, Liga, e.Row.DBCampo("Gpo")) diff --git a/Ventas/RepProductosServiciosDetalle.aspx.vb b/Ventas/RepProductosServiciosDetalle.aspx.vb index c2238d933..48888726d 100644 --- a/Ventas/RepProductosServiciosDetalle.aspx.vb +++ b/Ventas/RepProductosServiciosDetalle.aspx.vb @@ -316,6 +316,11 @@ Partial Class Ventas_RepProductosServiciosDetalle CveMarca = If(Request("CveMarca") IsNot Nothing AndAlso Request("CveMarca").ToEntero() > 0, Request("CveMarca").ToEntero(), -1).ToString.ToEntero CveClasificacionDetalle = If(Request("CveClasificacionDetalle") IsNot Nothing AndAlso Request("CveClasificacionDetalle").ToEntero() > 0, Request("CveClasificacionDetalle").ToEntero(), -1).ToString.ToEntero + DdlGarantia.SelectedValueExist(If(Request("EsGarantia") IsNot Nothing AndAlso Request("EsGarantia").ToEntero() > 0, Request("EsGarantia").ToEntero(), -1).ToString) + DdlCondicionesPago.SelectedValueExist(If(Request("CveCondicionesPago") IsNot Nothing AndAlso Request("CveCondicionesPago").ToEntero() > 0, Request("CveCondicionesPago").ToEntero(), -1).ToString) + DdlDistribuidor.SelectedValueExist(If(Request("EsDistribuidor") IsNot Nothing AndAlso Request("EsDistribuidor").ToEntero() > 0, Request("EsDistribuidor").ToEntero(), -1).ToString) + ChkLitraje.Checked = Request("MostrarLitraje") IsNot Nothing AndAlso Request("MostrarLitraje").ToEntero() > 0 + TipoCliente = If(Request("TipoCliente") IsNot Nothing, Request("TipoCliente").ToString, "-1").ToString.ToEntero DdlTipoCliente.SelectedValueExist(TipoCliente) @@ -324,7 +329,11 @@ Partial Class Ventas_RepProductosServiciosDetalle txtFechaI.Text = Fecha txtFechaF.Text = Fecha End If - + + If FechaI <> "-1" Then + txtFechaI.Text = FechaI + End If + If FechaF <> "-1" Then txtFechaF.Text = FechaF End If From 2f31f785c2fac46cbe287912c1d6e58e1dc18cf7 Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 15:09:14 -0700 Subject: [PATCH 09/20] limpieza de comentarios --- Inventarios/TraspasoAlmacen.aspx.vb | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/Inventarios/TraspasoAlmacen.aspx.vb b/Inventarios/TraspasoAlmacen.aspx.vb index a35765415..db965ef7c 100644 --- a/Inventarios/TraspasoAlmacen.aspx.vb +++ b/Inventarios/TraspasoAlmacen.aspx.vb @@ -644,15 +644,6 @@ Partial Class Inventarios_TraspasoAlmacen Dim tSerie As String = If(TxtnSerie.Visible, TxtnSerie.Text, "-1") - 'If UsuarioActual.CveEmpresa = 140 Then - ' Dim CveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen = {DdlAlmacenOrigen.SelectedValue}").ToEntero - - ' If Not CveSubProyecto.Contiene(11791, 11793, 11993, 11994, 11794, 11797, 11795, 12010, 12011) Then - ' tSerie = "-1" - ' End If - - 'End If - Dim Valido = ValidaExistencia(Cantidad, CveProducto, DdlUnidad.SelectedValue.ToEntero, DdlSeccionAlmacen.SelectedValue.ToEntero, tSerie, tLote, tCaducidad) If Valido Then @@ -1476,16 +1467,6 @@ Partial Class Inventarios_TraspasoAlmacen Dim AplicaSerie As Boolean = CBool(drP("AplicaSerie")) - ''codigo temporal - 'If UsuarioActual.CveEmpresa = 140 Then - ' Dim CveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen = {DdlAlmacenOrigen.SelectedValue}").ToEntero - - ' If Not CveSubProyecto.Contiene(11793, 11993, 11794, 11795, 12010, 12011) Then - ' AplicaSerie = False - ' End If - - 'End If - ThSerie.Visible = AplicaSerie TdSerie.Visible = AplicaSerie TxtnSerie.Visible = AplicaSerie From b4793aac90bd300c461ce35c83147d7de8ed487c Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 15:12:29 -0700 Subject: [PATCH 10/20] =?UTF-8?q?--=20cambio=20en=20fluctuaci=C3=B3n=20cam?= =?UTF-8?q?biaria=20mensual?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bancos/PopIEVentas.aspx.vb | 2 +- Bancos/ProveedoresAbonar.aspx.vb | 2 +- Ventas/ClientesAbonar.aspx.vb | 24 ++++-------------------- Ventas/Ventas.aspx.vb | 4 ++-- 4 files changed, 8 insertions(+), 24 deletions(-) diff --git a/Bancos/PopIEVentas.aspx.vb b/Bancos/PopIEVentas.aspx.vb index fd05105d7..de7391935 100644 --- a/Bancos/PopIEVentas.aspx.vb +++ b/Bancos/PopIEVentas.aspx.vb @@ -1523,7 +1523,7 @@ Partial Class Bancos_PopIEVentas Dim UltimaFluctuacion As MTipoCambioFluctuacion = GlobalTipoCambioUltimaFluctuacion(tFecha) If UsuarioActual.Empresa.Funcionalidad(703) = "1" AndAlso UltimaFluctuacion IsNot Nothing Then - If UltimaFluctuacion.FechaFluctuacion < tFecha Then + If UltimaFluctuacion.FechaFluctuacion <= tFecha Then FechaUltimaFluctuacion = UltimaFluctuacion.FechaFluctuacion TipoCambioFluctuacion = UltimaFluctuacion.TCFluctuacion End If diff --git a/Bancos/ProveedoresAbonar.aspx.vb b/Bancos/ProveedoresAbonar.aspx.vb index 1ba70513e..dc8dcf979 100644 --- a/Bancos/ProveedoresAbonar.aspx.vb +++ b/Bancos/ProveedoresAbonar.aspx.vb @@ -929,7 +929,7 @@ Partial Class Bancos_ProveedoresAbonar Dim UltimaFluctuacion As MTipoCambioFluctuacion = GlobalTipoCambioUltimaFluctuacion(tFecha) If UsuarioActual.Empresa.Funcionalidad(703) = "1" AndAlso UltimaFluctuacion IsNot Nothing Then - If UltimaFluctuacion.FechaFluctuacion < tFecha Then + If UltimaFluctuacion.FechaFluctuacion <= tFecha Then FechaUltimaFluctuacion = UltimaFluctuacion.FechaFluctuacion TipoCambioFluctuacion = UltimaFluctuacion.TCFluctuacion End If diff --git a/Ventas/ClientesAbonar.aspx.vb b/Ventas/ClientesAbonar.aspx.vb index 08500af56..bba882c29 100644 --- a/Ventas/ClientesAbonar.aspx.vb +++ b/Ventas/ClientesAbonar.aspx.vb @@ -623,11 +623,9 @@ Partial Class Ventas_ClientesAbonar If RblTipoPago.SelectedValue = "1" Then - Dim ValFechaDocumento As Boolean = False - Dim FoliosFechasValFechaDocumento As New StringBuilder - - FoliosFechasValFechaDocumento.AppendLine("Se seleccionaron facturas con fecha de mes superior al mes del pago:
") + Dim FoliosFechasValFechaDocumento As New StringBuilder + FoliosFechasValFechaDocumento.AppendLine("Se seleccionaron facturas con fecha de mes superior al mes del pago:
") For Each gvRowVal As GridViewRow In GvCxC.Rows @@ -813,26 +811,12 @@ Partial Class Ventas_ClientesAbonar Dim UltimaFluctuacion As MTipoCambioFluctuacion = GlobalTipoCambioUltimaFluctuacion(tFecha) If UsuarioActual.Empresa.Funcionalidad(703) = "1" AndAlso UltimaFluctuacion IsNot Nothing Then - If UltimaFluctuacion.FechaFluctuacion < tFecha Then + If UltimaFluctuacion.FechaFluctuacion <= tFecha Then FechaUltimaFluctuacion = UltimaFluctuacion.FechaFluctuacion TipoCambioFluctuacion = UltimaFluctuacion.TCFluctuacion End If End If - 'If ObjIE.GetFluctuacionesBitacora(UsuarioActual.CveEmpresa) Then - ' If ObjIE.DtResultados.Rows.Count > 0 Then - ' Dim tFecha As Date = TxtFechaDocumento.Text.ToDate - ' Dim Fecha As String = String.Format("{0}/{1}/{2}", tFecha.Year, tFecha.Month, tFecha.Day) - ' Dim drr As DataRow = ObjIE.DtResultados.FiltroPrimero("Fecha < #" & Fecha & "#", "Fecha DESC") - - ' If drr IsNot Nothing Then - ' FechaUltimaFluctuacion = drr("Fecha").ToString.ToDate - ' TipoCambioFluctuacion = drr("TipoCambio").ToString.ToDecimal - ' End If - - ' End If - 'End If - If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then dtConceptos = ObjMov.DtResultados End If @@ -2586,7 +2570,7 @@ Partial Class Ventas_ClientesAbonar Dim UltimaFluctuacion As MTipoCambioFluctuacion = GlobalTipoCambioUltimaFluctuacion(tFecha) If UsuarioActual.Empresa.Funcionalidad(703) = "1" AndAlso UltimaFluctuacion IsNot Nothing Then - If UltimaFluctuacion.FechaFluctuacion < tFecha Then + If UltimaFluctuacion.FechaFluctuacion <= tFecha Then FechaUltimaFluctuacion = UltimaFluctuacion.FechaFluctuacion TipoCambioFluctuacion = UltimaFluctuacion.TCFluctuacion End If diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 67a10764b..d9564f00f 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -14861,7 +14861,7 @@ Partial Class Ventas Dim UltimaFluctuacion As MTipoCambioFluctuacion = GlobalTipoCambioUltimaFluctuacion(tFecha) If UsuarioActual.Empresa.Funcionalidad(703) = "1" AndAlso UltimaFluctuacion IsNot Nothing Then - If UltimaFluctuacion.FechaFluctuacion < tFecha Then + If UltimaFluctuacion.FechaFluctuacion <= tFecha Then FechaUltimaFluctuacion = UltimaFluctuacion.FechaFluctuacion TipoCambioFluctuacion = UltimaFluctuacion.TCFluctuacion End If @@ -25426,7 +25426,7 @@ Partial Class Ventas Dim UltimaFluctuacion As MTipoCambioFluctuacion = GlobalTipoCambioUltimaFluctuacion(tFecha) If UsuarioActual.Empresa.Funcionalidad(703) = "1" AndAlso UltimaFluctuacion IsNot Nothing Then - If UltimaFluctuacion.FechaFluctuacion < tFecha Then + If UltimaFluctuacion.FechaFluctuacion <= tFecha Then FechaUltimaFluctuacion = UltimaFluctuacion.FechaFluctuacion TipoCambioFluctuacion = UltimaFluctuacion.TCFluctuacion End If From ef355a746326e6736f227cc9743d60d51e2abc62 Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 15:23:06 -0700 Subject: [PATCH 11/20] =?UTF-8?q?--=20asignaci=C3=B3n=20de=20variables?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Inventarios/RecepcionAlmacen.aspx.vb | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Inventarios/RecepcionAlmacen.aspx.vb b/Inventarios/RecepcionAlmacen.aspx.vb index af21343d2..7f5d10e5c 100644 --- a/Inventarios/RecepcionAlmacen.aspx.vb +++ b/Inventarios/RecepcionAlmacen.aspx.vb @@ -4874,10 +4874,9 @@ Partial Class Inventarios_RecepcionAlmacen Dim Cantidad As Double = RowExcel("Cantidad").ToString().ToDecimal() Dim Serie As String = RowExcel("Serie").ToString() - Dim Lote As String '= RowExcel("Lote").ToString() - Dim FechaCaducidad As Date '= If(RowExcel("FechaCaducidad").ToString = "", MinFecha, RowExcel("FechaCaducidad").ToString.ToDate) - Dim Observaciones As String '= If(dt.Columns.Contains("Observaciones"), RowExcel("Observaciones").ToString, "").ToString - + Dim Lote As String = "" '= RowExcel("Lote").ToString() + Dim FechaCaducidad As Date = MinFecha '= If(RowExcel("FechaCaducidad").ToString = "", MinFecha, RowExcel("FechaCaducidad").ToString.ToDate) + Dim Observaciones As String = "" '= If(dt.Columns.Contains("Observaciones"), RowExcel("Observaciones").ToString, "").ToString Dim Valido As Boolean = True From a0cf38795e77899ce11c657547c92f0207f88cde Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 22:26:14 -0700 Subject: [PATCH 12/20] =?UTF-8?q?--=20filtro=20en=20recuperaci=C3=B3n=20--?= =?UTF-8?q?=20filtro=20en=20ventas,=20que=20sea=20opcional=20filtrar=20por?= =?UTF-8?q?=20almacen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App_Code/ClsMovimientos.vb | 4 +++- App_Code/ClsVentas.vb | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/App_Code/ClsMovimientos.vb b/App_Code/ClsMovimientos.vb index aae731e67..f08a19c90 100644 --- a/App_Code/ClsMovimientos.vb +++ b/App_Code/ClsMovimientos.vb @@ -1504,7 +1504,8 @@ Public Class ClsMovimientos Optional CveBanco As Integer = -1, Optional CveCuenta As Integer = -1, Optional TipoCambio As Integer = -1, Optional TCEspecifico As Double = 0, Optional CveClienteClasificacion As Integer = -1, Optional EsDistribuidor As Integer = -1, Optional FechaAplicadoI As Date = MinFecha, Optional FechaAplicadoF As Date = MaxFecha, - Optional FechaRegistroIEI As Date = MinFecha, Optional FechaRegistroIEF As Date = MaxFecha) As Boolean + Optional FechaRegistroIEI As Date = MinFecha, Optional FechaRegistroIEF As Date = MaxFecha, + Optional CveCondicionesPago As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Vta_RepRecuperacion") With SqlAdapter.SelectCommand.Parameters @@ -1528,6 +1529,7 @@ Public Class ClsMovimientos .Add("@TCEspecifico", SqlDbType.Float).Value = TCEspecifico .Add("@CveClienteClasificacion", SqlDbType.Int).Value = CveClienteClasificacion .Add("@EsDistribuidor", SqlDbType.Int).Value = EsDistribuidor + .Add("@CveCondicionesPago", SqlDbType.Int).Value = CveCondicionesPago .Add("@FechaAplicadoI", SqlDbType.Date).Value = FechaAplicadoI.ToShortDateString .Add("@FechaAplicadoF", SqlDbType.Date).Value = FechaAplicadoF.ToShortDateString diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index a4ee14e02..e76d91458 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -144,13 +144,14 @@ Public Class ClsVentas End Sub #End Region - Public Function GetVenta(CveVenta As Integer, CveEmpresa As Integer) As Boolean + Public Function GetVenta(CveVenta As Integer, CveEmpresa As Integer, Optional VerificaAlmacen As Boolean = True) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_VentasGet") With SqlAdapter.SelectCommand.Parameters .Add("@CveVenta", SqlDbType.Int).Value = CveVenta .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@VerificaAlmacen", SqlDbType.Bit).Value = If(VerificaAlmacen, 1, 0) End With Try From 5eb07cb80275ebec9b408e569e629ff31d1a2bbd Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 4 Feb 2022 22:44:29 -0700 Subject: [PATCH 13/20] -- fltro de condiciones de pago --- Ventas/RepRecuperacion.aspx | 8 ++++++++ Ventas/RepRecuperacion.aspx.vb | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Ventas/RepRecuperacion.aspx b/Ventas/RepRecuperacion.aspx index 93c5824ac..0c1243e8e 100644 --- a/Ventas/RepRecuperacion.aspx +++ b/Ventas/RepRecuperacion.aspx @@ -242,6 +242,14 @@ +
Condiciones de Pago
+
+ + + + + +
diff --git a/Ventas/RepRecuperacion.aspx.vb b/Ventas/RepRecuperacion.aspx.vb index 517c491bc..eff509902 100644 --- a/Ventas/RepRecuperacion.aspx.vb +++ b/Ventas/RepRecuperacion.aspx.vb @@ -138,7 +138,7 @@ Partial Class Ventas_RepRecuperacion If ObjMovtos.GetRepRecuperacion(txtFechaI.Text.ToDate, txtFechaF.Text.ToDate, DdlClientes.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, DdlUsuario.SelectedValue.ToEntero, -1, "-1", UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, DdlResponsable.SelectedValue.ToEntero, DdlTipoDocto.SelectedValue.ToString, CveBanco:=DdlBanco.SelectedValue.ToEntero, CveCuenta:=DdlCuentaBancaria.SelectedValue.ToEntero, EstatusCliente:=DdlEstatusCliente.SelectedValue.ToEntero, CveUsuarioConsulta:=UsuarioActual.CveUsuario, TipoCambio:=RblTipoCambio.SelectedValue.ToEntero, TCEspecifico:=TCEspecifico, CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, - EsDistribuidor:=DdlDistribuidor.SelectedValue.ToEntero(), FechaAplicadoI:=FechaAplicadoI, FechaAplicadoF:=FechaAplicadoF, FechaRegistroIEI:=FechaRegistroIEI, FechaRegistroIEF:=FechaRegistroIEF) Then + EsDistribuidor:=DdlDistribuidor.SelectedValue.ToEntero(), FechaAplicadoI:=FechaAplicadoI, FechaAplicadoF:=FechaAplicadoF, FechaRegistroIEI:=FechaRegistroIEI, FechaRegistroIEF:=FechaRegistroIEF, CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero) Then GvDatos.DataSource = ObjMovtos.DtResultados DtDatos = ObjMovtos.DtResultados Else From 996b834e42596d52cbf97de7a018627675231faf Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 5 Feb 2022 12:00:14 -0700 Subject: [PATCH 14/20] Cambios en sabana de ventas --- Acumuladores/EntradasUsadosResumenRep.aspx.vb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Acumuladores/EntradasUsadosResumenRep.aspx.vb b/Acumuladores/EntradasUsadosResumenRep.aspx.vb index 6a4077447..fb134f4fb 100644 --- a/Acumuladores/EntradasUsadosResumenRep.aspx.vb +++ b/Acumuladores/EntradasUsadosResumenRep.aspx.vb @@ -117,7 +117,7 @@ Partial Class Acumuladores_RepEntradasUsados SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) Dim workbook As New ExcelFile() - Dim worksheet = workbook.Worksheets.Add("Sabana de ventas") + Dim worksheet = workbook.Worksheets.Add("DATOS") worksheet.InsertDataTable(dt, New InsertDataTableOptions() With { .ColumnHeaders = True, @@ -129,6 +129,10 @@ Partial Class Acumuladores_RepEntradasUsados Dim columnCount = worksheet.CalculateMaxUsedColumns() For i = 0 To columnCount + 'COLUMNA DE FECHA + If i = 1 Then + worksheet.Columns(i).Style.NumberFormat = "dd/MM/yyyy" + End If worksheet.Columns(i).AutoFit(1, worksheet.Rows(0), worksheet.Rows(worksheet.Rows.Count - 1)) Next From 7c11af2a6a5bc5795abb7c9b1e09c48045ea5517 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 5 Feb 2022 12:00:40 -0700 Subject: [PATCH 15/20] Correcion en garantias pendientes --- App_Code/ClsVentas.vb | 372 +++++++++++++++++++++--------------------- 1 file changed, 186 insertions(+), 186 deletions(-) diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index 1ca94d92f..79e01ee58 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -1754,7 +1754,7 @@ Public Class ClsVentas End With Try - Dataset = New DataSet() + Dataset = New DataSet() SqlAdapter.Fill(Dataset) Retorno = True Catch ex As Exception @@ -3903,48 +3903,48 @@ Public Class ClsVentas Return Retorno End Function - Public Function GetRepComisionesServec(CveVendedor As Integer, FechaI As Date, FechaF As Date, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_ReporteComisionesServecGet") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor - .Add("@FechaI", SqlDbType.Date).Value = FechaI - .Add("@FechaF", SqlDbType.Date).Value = FechaF - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener el Reporte de Comisiones.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno + Public Function GetRepComisionesServec(CveVendedor As Integer, FechaI As Date, FechaF As Date, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_ReporteComisionesServecGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + .Add("@FechaI", SqlDbType.Date).Value = FechaI + .Add("@FechaF", SqlDbType.Date).Value = FechaF + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener el Reporte de Comisiones.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno End Function - Public Function GetRepComisionesServecDetalle(CveVendedor As Integer, FechaI As Date, FechaF As Date, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_ReporteComisionesServecDetalleGet") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor - .Add("@FechaI", SqlDbType.Date).Value = FechaI - .Add("@FechaF", SqlDbType.Date).Value = FechaF - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener el Reporte de Comisiones Detalle.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno + Public Function GetRepComisionesServecDetalle(CveVendedor As Integer, FechaI As Date, FechaF As Date, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_ReporteComisionesServecDetalleGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + .Add("@FechaI", SqlDbType.Date).Value = FechaI + .Add("@FechaF", SqlDbType.Date).Value = FechaF + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener el Reporte de Comisiones Detalle.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno End Function #End Region @@ -4984,19 +4984,19 @@ Public Class ClsVentas Return retorno End Function - Public Function GetVentasNoEnviadas(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_VentasNoEnviadas") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener las ventas no enviadas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + Public Function GetVentasNoEnviadas(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_VentasNoEnviadas") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener las ventas no enviadas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function #Region "Conciliación emitidas SAT" @@ -5084,7 +5084,7 @@ Public Class ClsVentas Return Retorno End Function - Public Function GetVentasGarantiaPendiente(CveVenta As Integer, CveSubProyecto As Integer, Fecha As DateTime, CveEmpresa As Integer, Optional ServicioDomicilio As Boolean = False) As Boolean + Public Function GetVentasGarantiaPendiente(CveVenta As Integer, Fecha As DateTime, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Vta_VentasGarantiasPendienteGet", CommandType.StoredProcedure) @@ -5144,24 +5144,24 @@ Public Class ClsVentas Return Retorno End Function - Public Function AddVentaDetalleRNCFacturada(CveVentaDetalleRNC As Integer, CveVentaDetalle As Integer, CantidadFacturada As Decimal) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_VentaDetalleRNCFacturadaAdd") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveVentaDetalleRNC", SqlDbType.Int).Value = CveVentaDetalleRNC - .Add("@CveVentaDetalle", SqlDbType.Int).Value = CveVentaDetalle - .Add("@CantidadFacturada", SqlDbType.Float).Value = CantidadFacturada - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al agregar lo facturado de la RNC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno + Public Function AddVentaDetalleRNCFacturada(CveVentaDetalleRNC As Integer, CveVentaDetalle As Integer, CantidadFacturada As Decimal) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_VentaDetalleRNCFacturadaAdd") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveVentaDetalleRNC", SqlDbType.Int).Value = CveVentaDetalleRNC + .Add("@CveVentaDetalle", SqlDbType.Int).Value = CveVentaDetalle + .Add("@CantidadFacturada", SqlDbType.Float).Value = CantidadFacturada + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al agregar lo facturado de la RNC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno End Function Public Function GetRNCRelacionadas(CveVenta As Integer) As Boolean Dim Retorno As Boolean = False @@ -5269,140 +5269,140 @@ Public Class ClsVentas #End Region - Public Function AddAutorizacionLimite(CveEmpresa As Integer, CveCliente As Integer, CveVendedor As Integer, Importe As Decimal, CveEstatus As Integer, CveUsuario As Integer, TipoAutorizacion As Integer, TipoDocumento As String, Optional DiasVencidos As Integer = 0) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_AutorizacionLimitesAdd") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@CveCliente", SqlDbType.Int).Value = CveCliente - .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor - .Add("@Importe", SqlDbType.Money).Value = Importe + Public Function AddAutorizacionLimite(CveEmpresa As Integer, CveCliente As Integer, CveVendedor As Integer, Importe As Decimal, CveEstatus As Integer, CveUsuario As Integer, TipoAutorizacion As Integer, TipoDocumento As String, Optional DiasVencidos As Integer = 0) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_AutorizacionLimitesAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + .Add("@Importe", SqlDbType.Money).Value = Importe .Add("@CveEstatus", SqlDbType.Int).Value = CveEstatus - .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario .Add("@TipoAutorizacion", SqlDbType.Int).Value = TipoAutorizacion - .Add("@TipoDocumento", SqlDbType.VarChar).Value = TipoDocumento - .Add("@DiasVencidos", SqlDbType.Int).Value = DiasVencidos - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + .Add("@TipoDocumento", SqlDbType.VarChar).Value = TipoDocumento + .Add("@DiasVencidos", SqlDbType.Int).Value = DiasVencidos + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function - Public Function GetAutorizacionLimite(CveEmpresa As Integer, CveCliente As Integer, CveVendedor As Integer, TipoDocumento As String, Optional CveEstatus As Integer = -1, Optional FechaI As DateTime = MinFecha, Optional FechaF As DateTime = MaxFecha) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_AutorizacionLimitesGet") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@CveCliente", SqlDbType.Int).Value = CveCliente - .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor - .Add("@CveEstatus", SqlDbType.Int).Value = CveEstatus - .Add("@TipoDocumento", SqlDbType.VarChar).Value = TipoDocumento - .Add("@FechaI", SqlDbType.Date).Value = FechaI - .Add("@FechaF", SqlDbType.Date).Value = FechaF - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + Public Function GetAutorizacionLimite(CveEmpresa As Integer, CveCliente As Integer, CveVendedor As Integer, TipoDocumento As String, Optional CveEstatus As Integer = -1, Optional FechaI As DateTime = MinFecha, Optional FechaF As DateTime = MaxFecha) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_AutorizacionLimitesGet") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + .Add("@CveEstatus", SqlDbType.Int).Value = CveEstatus + .Add("@TipoDocumento", SqlDbType.VarChar).Value = TipoDocumento + .Add("@FechaI", SqlDbType.Date).Value = FechaI + .Add("@FechaF", SqlDbType.Date).Value = FechaF + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function - Public Function UpdateAutorizacionLimite(CveAutorizacion As Integer, CveCliente As Integer, CveVenta As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_AutorizacionlimitesEstatusUpdate") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveAutorizacion", SqlDbType.Int).Value = CveAutorizacion - .Add("@CveCliente", SqlDbType.Int).Value = CveCliente - .Add("@CveVenta", SqlDbType.Int).Value = CveVenta - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al actualizar los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + Public Function UpdateAutorizacionLimite(CveAutorizacion As Integer, CveCliente As Integer, CveVenta As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_AutorizacionlimitesEstatusUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveAutorizacion", SqlDbType.Int).Value = CveAutorizacion + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@CveVenta", SqlDbType.Int).Value = CveVenta + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function - Public Function RemoveAutorizacionLimite(CveAutorizacion As Integer, CveCliente As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_AutorizacionLimitesRemove") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveAutorizacion", SqlDbType.Int).Value = CveAutorizacion - .Add("@CveCliente", SqlDbType.Int).Value = CveCliente - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al eliminar los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + Public Function RemoveAutorizacionLimite(CveAutorizacion As Integer, CveCliente As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_AutorizacionLimitesRemove") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveAutorizacion", SqlDbType.Int).Value = CveAutorizacion + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar los limites.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function #Region "C L I E N T E S V E N D E D O R E S S U B P R O Y E C T O S" - Public Function GetClientesVendedoresSubProyectos(CveCliente As Integer, CveVendedor As Integer, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_ClientesVendedoresSubProyectosGet") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveCliente", SqlDbType.Int).Value = CveCliente - .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + Public Function GetClientesVendedoresSubProyectos(CveCliente As Integer, CveVendedor As Integer, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_ClientesVendedoresSubProyectosGet") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener los vendedores.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener los vendedores.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function - Public Function AddClientesVendedoresSubProyectos(CveCliente As Integer, CveVendedor As Integer, CveSubProyecto As Integer, CveUsuario As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_ClientesVendedoresSubProyectosAdd") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveCliente", SqlDbType.Int).Value = CveCliente - .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor - .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto - .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al agregar el vendedor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + Public Function AddClientesVendedoresSubProyectos(CveCliente As Integer, CveVendedor As Integer, CveSubProyecto As Integer, CveUsuario As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_ClientesVendedoresSubProyectosAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al agregar el vendedor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function - Public Function RemoveClientesVendedoresSubProyectos(CveCliente As Integer, CveVendedor As Integer, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Vta_ClientesVendedoresSubProyectosRemove") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveCliente", SqlDbType.Int).Value = CveCliente - .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor + Public Function RemoveClientesVendedoresSubProyectos(CveCliente As Integer, CveVendedor As Integer, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_ClientesVendedoresSubProyectosRemove") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al eliminar el vendedor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return Retorno + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar el vendedor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function #End Region From 5518444db5c5e751d2679cb12259e7b8166c9f0a Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 5 Feb 2022 12:02:02 -0700 Subject: [PATCH 16/20] Correcion en surtir garantias --- Inventarios/EntregaAlmacen.aspx.vb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Inventarios/EntregaAlmacen.aspx.vb b/Inventarios/EntregaAlmacen.aspx.vb index b5ca68e64..78376bdd2 100644 --- a/Inventarios/EntregaAlmacen.aspx.vb +++ b/Inventarios/EntregaAlmacen.aspx.vb @@ -2306,7 +2306,7 @@ Partial Class Inventarios_EntregaAlmacen ' COMIENZA: GARANTIAS If Not ErrorMovInv AndAlso TipoDocto.Contiene("Ing", "Rem") AndAlso UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso TipoMovimiento = 1 Then - Dim CveAlmacenGarantia As Integer = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 6).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={CveSubProyecto}").ToEntero() + Dim CveAlmacenGarantia As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveTipoAlmacen:=6).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={CveSubProyecto}").ToEntero() Dim DtGarantias As DataTable = Nothing If ObjAcumuladores.GetGarantiasDetalle(CveVentaSurtir) Then @@ -2314,7 +2314,7 @@ Partial Class Inventarios_EntregaAlmacen End If If DtGarantias IsNot Nothing AndAlso DtGarantias.Rows.Count > 0 AndAlso CveAlmacenGarantia > 0 Then - CveMovimientoGarantia = ObjInventario.AddMovimiento(CveAlmacenGarantia, 2, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaSurtir, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, Modulo:="RE/G5") + CveMovimientoGarantia = ObjInventario.AddMovimiento(CveAlmacenGarantia, 2, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaSurtir, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, Modulo:="EA/G5") FolioGarantia = ObjInventario.Folio For Each RowGarantia As DataRow In DtGarantias.Rows @@ -2916,7 +2916,8 @@ Partial Class Inventarios_EntregaAlmacen Msg.AppendFormat("

Se agregó una guía de paquetería interna") End If - If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso TipoDocto = "Rem" Then + 'SI NO ES GARANTIA MANDA A RECIBIR AL USADO + If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso TipoDocto = "Rem" AndAlso CveMovimientoGarantia <= 0 Then Msg.AppendFormat("

Recibir Usado: Ir a Recepción de Usados", CveVentaSurtir) End If From 415c7de32b01169afd8aaad0c5d54ce9fff4f132 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 5 Feb 2022 12:02:52 -0700 Subject: [PATCH 17/20] Limpieza al surtir remision desde liga --- Inventarios/RecepcionUsados.aspx.vb | 210 ++++++++++++++++++---------- 1 file changed, 139 insertions(+), 71 deletions(-) diff --git a/Inventarios/RecepcionUsados.aspx.vb b/Inventarios/RecepcionUsados.aspx.vb index 9dfc42521..668f6b8b2 100644 --- a/Inventarios/RecepcionUsados.aspx.vb +++ b/Inventarios/RecepcionUsados.aspx.vb @@ -240,6 +240,15 @@ Partial Class Inventarios_RecepcionUsados ViewState("CveRemisionRecibida") = value End Set End Property + + Private Property CargoRemisionDesdeURL As Boolean + Get + Return CBool(IfNull(ViewState("CargoRemisionDesdeURL"), False, CBool(ViewState("CargoRemisionDesdeURL")))) + End Get + Set(value As Boolean) + ViewState("CargoRemisionDesdeURL") = value + End Set + End Property Private Property EsDistribuidor As Boolean Get Return CBool(IfNull(ViewState("EsDistribuidor"), False, CBool(ViewState("EsDistribuidor")))) @@ -348,6 +357,7 @@ Partial Class Inventarios_RecepcionUsados Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not IsPostBack Then + CargoRemisionDesdeURL = False CargaInicial() CargaRemisionFromURL() GeneraRNCFromURL() @@ -431,6 +441,7 @@ Partial Class Inventarios_RecepcionUsados Dim CveRemision As Integer = IfNull(Request("CveRemision"), "-1").ToString().ToEntero() If CveRemision > 0 Then + Me.CargoRemisionDesdeURL = True Me.CveRemisionRecibida = CveRemision RecibirRemision() End If @@ -591,14 +602,7 @@ Partial Class Inventarios_RecepcionUsados DdlMoneda.DataSource = GlobalDTMonedas DdlMoneda.DataBind() - Dim dtt As DataTable = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros("CveTipoAlmacen IN (22)") 'GlobalDTAlmacen(UsuarioActual.CveEmpresa) - - 'Llenar el dropdownlist de almacén - DdlAlmacen.DataSource = dtt - - 'DdlAlmacen.Items.Insert(0, New ListItem("Seleccione", "-1")) - 'DdlAlmacen.SelectedValue = "-1" - DdlAlmacen.DataBind() + CargaAlmacen() If IsNothing(Request("CveMovimiento")) Then DdlAlmacen.SelectedValueExist(UsuarioActual.CveAlmacen) @@ -607,6 +611,33 @@ Partial Class Inventarios_RecepcionUsados CargaPS() End Sub + + Private Sub CargaAlmacen(Optional CveSubProyecto As Integer = -1, Optional TipoAlmacen As Integer = 22) + DdlAlmacen.Items.Clear() + 'Llenar el dropdownlist de almacén + Dim dt As DataTable = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoAlmacen:=TipoAlmacen) + + If CveSubProyecto > 0 Then + dt = dt.FiltraParametros($"CveSubProyecto = {CveSubProyecto}") + End If + + DdlAlmacen.DataSource = dt + DdlAlmacen.DataBind() + + If Not DdlAlmacen.Items.Contains(New ListItem("Seleccione", "-1")) Then + DdlAlmacen.Items.Insert(0, New ListItem("Seleccione", "-1")) + End If + + If CveSubProyecto > 0 Then + Dim CveAlmacen As Integer = dt.FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto = {CveSubProyecto}").ToEntero() + If CveAlmacen > 0 Then + DdlAlmacen.SelectedValueExist(CveAlmacen) + End If + End If + + dt.Dispose() + + End Sub Private Sub CargaPS() Dim ObjAcum As New ClsAcumuladores Dim lista As New List(Of String) @@ -723,6 +754,8 @@ Partial Class Inventarios_RecepcionUsados ObjFactura = Nothing End If + DivRemisionRecibida.Visible = False + If ObjRemisionNC IsNot Nothing Then ObjRemisionNC.Dispose() ObjRemisionNC = Nothing @@ -753,9 +786,7 @@ Partial Class Inventarios_RecepcionUsados DivRegistro.Visible = False DivTipoCambio.Visible = False - If Not DdlAlmacen.Items.Contains(New ListItem("Seleccione", "-1")) Then - DdlAlmacen.Items.Add(New ListItem("Seleccione", "-1")) - End If + CargaAlmacen() DdlAlmacen.SelectedValue = "-1" If Not EsConsumoInterno Then @@ -785,6 +816,7 @@ Partial Class Inventarios_RecepcionUsados 'CargaInicial() + UpGenerales.Update() UpRegistroTipoCambio.Update() UPDatos.Update() End Sub @@ -1162,7 +1194,7 @@ Partial Class Inventarios_RecepcionUsados Guardar(True) End Sub - Protected Sub Guardar(Optional GenerarRNC As Boolean = False) + Protected Sub Guardar(Optional GenerarRNC As Boolean = False, Optional RecargarPagina As Boolean = False) If GvM.Rows.Count > 0 Then Dim Msg As New StringBuilder() Dim Resp As Modelos.Factura.MMensajeFactura = Nothing @@ -1350,7 +1382,13 @@ Partial Class Inventarios_RecepcionUsados ObjVentas.Dispose() If Not ErrorMovInv Then - Alert(Msg.ToString, TipoMensaje.MsgInformacion) + Dim Liga As String = "" + + If RecargarPagina Then + Liga = "document.location.href=""/Inventarios/RecepcionUsados.aspx"";" + End If + + Alert(Msg.ToString, TipoMensaje.MsgInformacion, JSBtnAceptar:=Liga, ShowCloseButton:=False) End If Else @@ -2206,19 +2244,6 @@ Partial Class Inventarios_RecepcionUsados Private Sub RecibirRemision() DtMovimientos.Rows.Clear() - Dim DtUsados As DataTable = Nothing - Dim CveCliente As Integer = -1 - - Dim ObjVentas As New ClsVentas - If ObjVentas.GetVenta(CveRemisionRecibida, UsuarioActual.CveEmpresa) AndAlso ObjVentas.DtResultados.Rows.Count > 0 Then - EsDistribuidor = CBool(ObjVentas.DtResultados.Rows(0)("EsDistribuidor").ToString()) - CveCliente = ObjVentas.DtResultados.Rows(0)("CveCliente").ToString().ToEntero() - - DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveCliente = {0}", CveCliente)) - DdlClientes.DataBind() - DdlClientes.SelectedValueExist(CveCliente) - End If - If Me.ObjFactura IsNot Nothing Then Me.ObjFactura.Dispose() Me.ObjFactura = Nothing @@ -2226,54 +2251,95 @@ Partial Class Inventarios_RecepcionUsados Me.ObjFactura = New Modelos.Factura(UsuarioActual, CveRemisionRecibida, UsuarioActual.CveEmpresa, DirectorioServidor:=ModExtensiones.DirectorioBaseEmpresas) - TxtRemisionRecibida.Text = Me.ObjFactura.SerieFolio - DivRemisionRecibida.Visible = True + If Me.ObjFactura IsNot Nothing Then - 'SI ES DISTRIBUIDOR VAMOS A GENERAR LA REMISION DE NOTA DE CREDITO - If EsDistribuidor Then - DivCliente.Visible = True - DdlClientes.SelectedValueExist(CveCliente) - DdlClientes_SelectedIndexChanged(DdlClientes, EventArgs.Empty) + TxtRemisionRecibida.Text = Me.ObjFactura.SerieFolio + DivRemisionRecibida.Visible = True - If Me.ObjRemisionNC IsNot Nothing Then - Me.ObjRemisionNC.Dispose() - Me.ObjRemisionNC = Nothing + Dim DtUsados As DataTable = Nothing + Dim CveCliente As Integer = -1 + + Dim ObjVentas As New ClsVentas + If ObjVentas.GetVenta(CveRemisionRecibida, UsuarioActual.CveEmpresa) AndAlso ObjVentas.DtResultados.Rows.Count > 0 Then + EsDistribuidor = CBool(ObjVentas.DtResultados.Rows(0)("EsDistribuidor").ToString()) + CveCliente = ObjVentas.DtResultados.Rows(0)("CveCliente").ToString().ToEntero() End If - If Me.ObjFactura IsNot Nothing Then - 'CreaRemisionNC(ObjFactura.CveCliente, ObjFactura.CveSubProyecto, ObjFactura.CveMoneda) - DivTotal.Visible = True + If ObjVentas.GetVentasUsadosDetalle(CveRemisionRecibida) Then + DtUsados = ObjVentas.DtResultados.Copy() + End If + + Dim RecepcionValida As Boolean = True + + If ObjVentas.GetVentasUsados(ObjFactura.CveVenta, ObjFactura.CveSubProyecto, ObjFactura.Fecha, UsuarioActual.CveEmpresa, ServicioDomicilio:=ObjFactura.ServicioDomicilio) Then + If ObjVentas.DtResultados.Rows.Count = 0 Then + RecepcionValida = False + End If + End If + ObjVentas.Dispose() + + If Not RecepcionValida Then + Dim Liga As String = "" + If CargoRemisionDesdeURL Then + Liga = "document.location.href=""/Inventarios/RecepcionUsados.aspx"";" + End If + + Alert("La recepción del usado ya se realizó", TipoMensaje.MsgAdvertencia, JSBtnAceptar:=Liga, ShowCloseButton:=False) + Exit Sub + End If + + If ObjFactura.CveSubProyecto > 0 Then + CargaAlmacen(CveSubProyecto:=ObjFactura.CveSubProyecto) + End If + + If CveCliente > 0 Then + DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveCliente = {0}", CveCliente)) + DdlClientes.DataBind() + DdlClientes.SelectedValueExist(CveCliente) + End If + + 'SI ES DISTRIBUIDOR VAMOS A GENERAR LA REMISION DE NOTA DE CREDITO + If EsDistribuidor Then + DivCliente.Visible = True + DdlClientes.SelectedValueExist(CveCliente) + DdlClientes_SelectedIndexChanged(DdlClientes, EventArgs.Empty) + + If Me.ObjRemisionNC IsNot Nothing Then + Me.ObjRemisionNC.Dispose() + Me.ObjRemisionNC = Nothing + End If + + If Me.ObjFactura IsNot Nothing Then + 'CreaRemisionNC(ObjFactura.CveCliente, ObjFactura.CveSubProyecto, ObjFactura.CveMoneda) + DivTotal.Visible = True + End If + Else + 'DivCliente.Visible = False + 'DivFactura.Visible = False + End If + + If DtUsados IsNot Nothing Then + + 'DivRecepcionApartado.Visible = True + + For Each RowUsado As DataRow In DtUsados.Rows + Dim CvePS = RowUsado("CvePS").ToString().ToEntero() + + Dim RowPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS).Rows(0) + Dim CveTamaño As Integer = RowPS("CveTamaño").ToString().ToEntero() + + Dim PS As String = RowPS("PS").ToString() + Dim CveUM As Integer = RowPS("CveUnidadMedida").ToString().ToEntero() + Dim UM As String = RowPS("UnidadMedida").ToString() + Dim Cantidad As Double = RowUsado("Cantidad").ToString().ToEntero() + Dim PU As Double = RowUsado("PU").ToString().ToDouble() + + AddNew(CvePS, PS, CveUM, UM, Cantidad, PU, "", "-1", "-1", "-1", "", "", DdlAlmacen.SelectedValue.ToEntero, DdlAlmacen.SelectedItem.Text, "", CveTamaño) + + Next End If Else - 'DivCliente.Visible = False - 'DivFactura.Visible = False - End If - - If ObjVentas.GetVentasUsadosDetalle(CveRemisionRecibida) Then - DtUsados = ObjVentas.DtResultados.Copy() - End If - - ObjVentas.Dispose() - - If DtUsados IsNot Nothing Then - - 'DivRecepcionApartado.Visible = True - - For Each RowUsado As DataRow In DtUsados.Rows - Dim CvePS = RowUsado("CvePS").ToString().ToEntero() - - Dim RowPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS).Rows(0) - Dim CveTamaño As Integer = RowPS("CveTamaño").ToString().ToEntero() - - Dim PS As String = RowPS("PS").ToString() - Dim CveUM As Integer = RowPS("CveUnidadMedida").ToString().ToEntero() - Dim UM As String = RowPS("UnidadMedida").ToString() - Dim Cantidad As Double = RowUsado("Cantidad").ToString().ToEntero() - Dim PU As Double = RowUsado("PU").ToString().ToDouble() - - AddNew(CvePS, PS, CveUM, UM, Cantidad, PU, "", "-1", "-1", "-1", "", "", DdlAlmacen.SelectedValue.ToEntero, DdlAlmacen.SelectedItem.Text, "", CveTamaño) - - Next + Alert("No se pudo recibir la remisión", TipoMensaje.MsgAdvertencia) End If UpGenerales.Update() @@ -2801,8 +2867,9 @@ Partial Class Inventarios_RecepcionUsados If DdlClientes.SelectedValue <> "-1" Then CargaAjuste() DivAjuste.Visible = True + DivRecepcionUsados.Visible = False 'Llenar el dropdownlist de almacén - DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 6) + CargaAlmacen(TipoAlmacen:=6) CargarDescuento() LnkAgregarUsado.Visible = False UppAcciones.Update() @@ -2812,8 +2879,9 @@ Partial Class Inventarios_RecepcionUsados End If Else DivAjuste.Visible = False + DivRecepcionUsados.Visible = True 'Llenar el dropdownlist de almacén - DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 22) + CargaAlmacen(TipoAlmacen:=22) LnkAgregarUsado.Visible = True UppAcciones.Update() End If @@ -3384,7 +3452,7 @@ Partial Class Inventarios_RecepcionUsados Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)) Dim logouri = String.Format("{0}//{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) - Dim DtDatos As New DataTable + Dim DtDatos As New DataTable Dim params As New List(Of ReportParameter) From 6ebf5b81c51dea497238bce328765b14cdcfaaa2 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 5 Feb 2022 12:04:20 -0700 Subject: [PATCH 18/20] Autorizaciones, SI EL LIMITE ES 0, PERMITE AUTORIZAR --- Ventas/CatAutorizacionLimites.aspx.vb | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/Ventas/CatAutorizacionLimites.aspx.vb b/Ventas/CatAutorizacionLimites.aspx.vb index 4c8091996..3458e3e8e 100644 --- a/Ventas/CatAutorizacionLimites.aspx.vb +++ b/Ventas/CatAutorizacionLimites.aspx.vb @@ -196,19 +196,22 @@ Partial Class Ventas_CatAutorizacionLimites Dim SaldoCliente = gvRow.DataKey("Saldo").ToDecimal() Dim LimiteCredito = gvRow.DataKey("LimiteCredito").ToDecimal() + 'SI EL LIMITE ES 0, PERMITE AUTORIZAR + If LimiteCredito > 0 Then + Dim PorcentajeMaximoAutorizar As Decimal = 0.1 - Dim PorcentajeMaximoAutorizar As Decimal = 0.1 + If UsuarioActual.PorcentajeMaximoAutorizacion > 0 Then + PorcentajeMaximoAutorizar = (UsuarioActual.PorcentajeMaximoAutorizacion / 100) + End If - If UsuarioActual.PorcentajeMaximoAutorizacion > 0 Then - PorcentajeMaximoAutorizar = (UsuarioActual.PorcentajeMaximoAutorizacion / 100) + Dim ImporteMaximoAutorizar As Decimal = ((LimiteCredito * (1D + PorcentajeMaximoAutorizar)) - SaldoCliente).RoundSQL(2) + + If Importe > ImporteMaximoAutorizar Then + Alert($"No se puede autorizar, el importe máximo a autorizar es de {ImporteMaximoAutorizar:N2}", TipoMensaje.MsgAdvertencia) + Exit Sub + End If End If - Dim ImporteMaximoAutorizar As Decimal = ((LimiteCredito * (1D + PorcentajeMaximoAutorizar)) - SaldoCliente).RoundSQL(2) - - If Importe > ImporteMaximoAutorizar Then - Alert($"No se puede autorizar, el importe máximo a autorizar es de {ImporteMaximoAutorizar:N2}", TipoMensaje.MsgAdvertencia) - Exit Sub - End If 'AUTORIZACION POR DIAS VENCIDOS ElseIf TipoAutorizacion = 2 Then From be776be04e67dce873ca264a6d4bef7e98a21f7f Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 5 Feb 2022 12:07:32 -0700 Subject: [PATCH 19/20] Validacion de remisiones con garantia, correcion al amortizar una factura existente --- Ventas/Ventas.aspx.vb | 106 ++++++++++++++++++++++++++++-------------- 1 file changed, 71 insertions(+), 35 deletions(-) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 1d3e82ccf..4d42a9454 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -3219,7 +3219,7 @@ Partial Class Ventas If ObjPVenta.DtResultados.Rows.Count > 0 Then CveCorte = ObjPVenta.CveCorte - Dim FechaICorte = ObjPVenta.FechaInicial.Date'.AddDays(-5) + Dim FechaICorte = ObjPVenta.FechaInicial.Date '.AddDays(-5) If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso FechaICorte < Now.Date Then DebeCerrarCorte = True LblMotivoBloqueo.Text = $"Existe un corte del día {FechaICorte.ToString("dd/MM/yyyy")}. Favor de cerrarlo para iniciar un nuevo corte." @@ -4254,16 +4254,8 @@ Partial Class Ventas Dim DbRowVenta As DataRow = ObjVentas.DtResultados.Rows(0) Dim CveCliente As Integer = DbRowVenta("CveCliente").ToString().ToEntero() HdnCveVenta.Value = CveVenta.ToString() - Dim DtUsadosPendientes As DataTable = Nothing - If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then - Dim ObjUsados As New ClsVentas - - If ObjUsados.GetVentasUsados(CveVenta, -1, DbRowVenta("Fecha").ToString().ToDateTime, UsuarioActual.CveEmpresa) Then - DtUsadosPendientes = ObjUsados.DtResultados - End If - ObjUsados.Dispose() - End If + Me.EsGarantia = CBool(DbRowVenta("EsGarantia")) RFCReceptorVenta = DbRowVenta("RFCReceptor").ToString() 'Adjuntar archivo @@ -4284,7 +4276,7 @@ Partial Class Ventas ViewState("CveSubProyectoVenta") = DbRowVenta("CveSubProyecto").ToString().ToEntero() - Me.EsGarantia = CBool(DbRowVenta("EsGarantia")) + Me.CveEstatusFacturaPadre = DbRowVenta("CveEstatusFacturaPadre").ToString().ToEntero() 'CargaEncabezado @@ -5198,13 +5190,47 @@ Partial Class Ventas End If 'Si es Empresa de Acumuladores - If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then - 'Si ya se surtió y recibió - If (DbRowVenta("SaldoAlmacen").ToString().ToDecimal > 0 And (DtUsadosPendientes Is Nothing Or DtUsadosPendientes.Rows.Count = 0)) OrElse (TmpDT.MAX("CveTipoPS") = "1") Then - BtnsFacturar.Visible = True - Else - BtnsFacturar.Visible = False + If CveVenta > 0 AndAlso UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso DbRowVenta("TipoDocto").ToString() = "Rem" AndAlso (GlobalDTEstatusFactura().FiltroPrimeroValor("TipoEstatus", $"CveEstatusFactura = {Me.CveEstatus}").ToEntero() <> 5) Then + + BtnsFacturar.Visible = False + + Dim DtUsadosPendientes As DataTable = Nothing + Dim DtGarantiasPendientes As DataTable = Nothing + + Dim ObjUsados As New ClsVentas + + If ObjUsados.GetVentasUsados(CveVenta, -1, DbRowVenta("Fecha").ToString().ToDateTime, UsuarioActual.CveEmpresa) Then + DtUsadosPendientes = ObjUsados.DtResultados.Copy() End If + + If ObjUsados.GetVentasGarantiaPendiente(CveVenta, Now, UsuarioActual.CveEmpresa) Then + DtGarantiasPendientes = ObjUsados.DtResultados.Copy() + End If + + 'If ObjUsados.GetVentasGarantiaPendiente(CveVenta, -1, Now, UsuarioActual.CveEmpresa) Then + ' DtGarantiasPendientes = ObjUsados.DtResultados.Copy() + 'End If + ObjUsados.Dispose() + + 'Si ya se surtió y recibió + If DbRowVenta("SaldoAlmacen").ToString().ToDecimal > 0 OrElse TmpDT.MAX("CveTipoPS") = "1" Then + BtnsFacturar.Visible = True + End If + + 'VERIFICA SI TIENE USADOS O GARANTIAS PENDIENTES + If BtnsFacturar.Visible Then + If (Not EsGarantia AndAlso (DtUsadosPendientes IsNot Nothing AndAlso DtUsadosPendientes.Rows.Count > 0)) Then + BtnsFacturar.Visible = False + Alert("Tiene usados pendiente de recibir", TipoMensaje.MsgAdvertencia) + End If + + If (EsGarantia AndAlso (DtGarantiasPendientes IsNot Nothing AndAlso DtGarantiasPendientes.Rows.Count > 0)) Then + Alert("Tiene garantías pendientes de recibir", TipoMensaje.MsgAdvertencia) + BtnsFacturar.Visible = False + End If + End If + + LBFacturarAnticipo.Visible = UsuarioActual.TienePermisoProceso(274) End If @@ -5335,6 +5361,14 @@ Partial Class Ventas End If End If + If DdlTipoComprobante.SelectedValue = "Rem" Then + If GlobalDTEstatusFactura().FiltroPrimeroValor("TipoEstatus", $"CveEstatusFactura = {Me.CveEstatus}").ToEntero() = 5 Then + BtnsFacturar.Visible = False + BtnEmitirImprimir.Visible = False + BtnPermisoEditarRemision.Visible = False + End If + End If + UpPS.Update() UpContado.Update() UpEstatus.Update() @@ -6713,19 +6747,21 @@ Partial Class Ventas Else 'VERIFICAR RESTRICCIONES DEL CLIENTE - If DdlTipoComprobante.SelectedValue = "Cot" AndAlso CveVenta > 0 AndAlso RBLPago.SelectedValue = "2" Then - Dim Vta As New ClsVentas - Dim Opcion As Integer = Vta.ObtenerClienteLimitesVenta(CveCliente, UsuarioActual.CveEmpresa) - Dim OpcionMsg As String = String.Format("El Cliente se encuentra bloqueado por la siguiente razón:

{0}", Vta.SerieVenta) - Vta.Dispose() - If Opcion > 0 Then - Alert(OpcionMsg, TipoMensaje.MsgAdvertencia) - BtnsFacturar.Visible = False - BtnGenerarRemision.Visible = False + If Not UsuarioActual.Empresa.Funcionalidad(702).ToEntero() > 0 Then + If DdlTipoComprobante.SelectedValue = "Cot" AndAlso CveVenta > 0 AndAlso RBLPago.SelectedValue = "2" Then + Dim Vta As New ClsVentas + Dim Opcion As Integer = Vta.ObtenerClienteLimitesVenta(CveCliente, UsuarioActual.CveEmpresa) + Dim OpcionMsg As String = String.Format("El Cliente se encuentra bloqueado por la siguiente razón:

{0}", Vta.SerieVenta) + Vta.Dispose() + If Opcion > 0 Then + Alert(OpcionMsg, TipoMensaje.MsgAdvertencia) + BtnsFacturar.Visible = False + BtnGenerarRemision.Visible = False + End If End If - End If + End If UPPCreditoDisponible.Update() @@ -11504,7 +11540,7 @@ Partial Class Ventas DdlTipoComprobante.Enabled = False End If - TAB.ActiveTab = TabGenerales + Tab.ActiveTab = TabGenerales TabGenerales.Enabled = True Updatetabs.Update() UPObservaciones.Update() @@ -11570,7 +11606,7 @@ Partial Class Ventas ContratoDetalles.Visible = False UPEstimaciones.Update() - TAB.ActiveTab = TabGenerales + Tab.ActiveTab = TabGenerales TabGenerales.Enabled = True Updatetabs.Update() End If @@ -15342,7 +15378,7 @@ Partial Class Ventas ErrorConta = True End If - If Not ErrorConta AndAlso Not ObjConta.PrePolizaSimplificacion(ObjFactura.CvePrePoliza, UsuarioActual.CveEmpresa) Then + If Not ErrorConta AndAlso Not ObjConta.PrePolizaSimplificacion(CvePrepoliza, UsuarioActual.CveEmpresa) Then Alert("No se pudo simplificar los movimientos", TipoMensaje.MsgError) End If @@ -16507,7 +16543,7 @@ Partial Class Ventas If objcompras.GetCompraDetallealmacen(0, DdlNCFactura.SelectedValue.ToEntero()) Then GvInvNC.DataSource = objcompras.DtResultados If objcompras.DtResultados.Rows.Count > 0 Then - TAB.ActiveTabIndex = 1 + Tab.ActiveTabIndex = 1 Updatetabs.Update() End If Else @@ -16787,7 +16823,7 @@ Partial Class Ventas End If UpParametros.Update() - TAB.ActiveTab = TabGenerales + Tab.ActiveTab = TabGenerales Else Alert("La empresa no contiene un producto asignado a la estimació", TipoMensaje.MsgInformacion) End If @@ -23621,7 +23657,7 @@ Partial Class Ventas DdlContratosModal.Items.Insert(0, New ListItem("Seleccione", "0")) UPEstimaciones.Update() - TAB.ActiveTab = TabE + Tab.ActiveTab = TabE TabGenerales.Enabled = False Updatetabs.Update() @@ -29911,7 +29947,7 @@ Partial Class Ventas ContratoDetalles.Visible = False UPEstimaciones.Update() - TAB.ActiveTab = TabGenerales + Tab.ActiveTab = TabGenerales TabGenerales.Enabled = True Updatetabs.Update() @@ -30472,7 +30508,7 @@ Partial Class Ventas DdlMonedaModalPedido2.DataBind() DdlMonedaModalPedido2.Items.Insert(0, New ListItem("Todas", "-1")) - TAB.ActiveTab = TabGenerales + Tab.ActiveTab = TabGenerales TabGenerales.Enabled = True Updatetabs.Update() From 008dd3381c8f6f9f6802d881a3e2ae28e4fe6856 Mon Sep 17 00:00:00 2001 From: rrene Date: Sat, 5 Feb 2022 12:09:10 -0700 Subject: [PATCH 20/20] =?UTF-8?q?--=20al=20obtner=20la=20venta,=20que=20no?= =?UTF-8?q?=20valide=20almacen,=20para=20generaci=C3=B3n=20de=20pdf?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Compras/PopUpVerFactura.aspx.vb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index 11c6901a0..221b694d8 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -952,7 +952,7 @@ Partial Class PopUpVerFactura Dim EnvioContacto As String = "" Dim EnvioDireccion As String = "" Dim Guia As String = "" - If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa) Then + If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa, False) Then If ObjVentas.DtResultados.Rows.Count > 0 Then SerieFolio = ObjVentas.DtResultados.Rows(0)("SerieFolio").ToString PedidoContrato = ObjVentas.DtResultados.Rows(0)("PedidoContrato").ToString @@ -1838,7 +1838,7 @@ Partial Class PopUpVerFactura TmpDTImpuestosIVAIEPS.Columns.Add("Importe", GetType(Double)) TmpDTImpuestosIVAIEPS.Columns.Add("Orden", GetType(Integer)) - If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa) AndAlso ObjVentas.DtResultados.Rows.Count > 0 Then + If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa, False) AndAlso ObjVentas.DtResultados.Rows.Count > 0 Then Dim dtVentas As DataTable = ObjVentas.DtResultados ' se rellenan los campos de la factura @@ -4849,7 +4849,7 @@ Partial Class PopUpVerFactura Dim drv As DataRow = Nothing Dim ObjVentas As New ClsVentas - If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa) AndAlso ObjVentas.DtResultados IsNot Nothing AndAlso ObjVentas.DtResultados.Rows.Count > 0 Then + If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa, False) AndAlso ObjVentas.DtResultados IsNot Nothing AndAlso ObjVentas.DtResultados.Rows.Count > 0 Then drv = ObjVentas.DtResultados.FiltroPrimero("") End If ObjVentas.Dispose()