From 2a6eff7f804da31ef922f3be36a67c942b8b91af Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 22 Feb 2022 17:39:09 -0700 Subject: [PATCH 1/8] E140. Editar condiciones comerciales por permiso --- Ventas/Clientes.aspx | 14 ++++---- Ventas/Clientes.aspx.vb | 73 +++++++++++++++++++++++++++++++++-------- 2 files changed, 66 insertions(+), 21 deletions(-) diff --git a/Ventas/Clientes.aspx b/Ventas/Clientes.aspx index 74bccf089..7fab86bab 100644 --- a/Ventas/Clientes.aspx +++ b/Ventas/Clientes.aspx @@ -6158,7 +6158,7 @@ - +
@@ -6226,7 +6226,7 @@ <%--table table-striped table-advance table-hover Widthall ScrollAD tabla_correcto grides Widthall mysmallbtn--%> - + @@ -6310,8 +6310,8 @@ - - + + @@ -6327,7 +6327,7 @@
@@ -6365,7 +6365,7 @@ Aplicado - +
@@ -6458,7 +6458,7 @@
diff --git a/Ventas/Clientes.aspx.vb b/Ventas/Clientes.aspx.vb index 9daf8def2..a0207adfd 100644 --- a/Ventas/Clientes.aspx.vb +++ b/Ventas/Clientes.aspx.vb @@ -1449,15 +1449,26 @@ Partial Class Clientes ' CargaGridRetenciones() ' CargaDocs() CargaCombos() - CargaDocumentacionCliente() - 'CargaMetodosPago33() - 'CargaFormaPago33() - 'CargaComboCFDI() - 'CargarPagosNoBancarios() - - If UsuarioActual.TienePermisoProceso(279) Then + CargaDocumentacionCliente() + 'CargaMetodosPago33() + 'CargaFormaPago33() + 'CargaComboCFDI() + 'CargarPagosNoBancarios() + + + + If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then LnkPorcentajeMarcas.Visible = True - LnkPorcentajePrecios.Visible = True + LnkPorcentajePrecios.Visible = True + + If UsuarioActual.TienePermisoProceso(279) Then + TrPreciosPP.Visible = True + TrAgregarPMarca.Visible = True + + BtnGuardarPorcentajesMarca.Visible = True + BtnGuardarPorcentajes.Visible = True + End If + End If @@ -1474,9 +1485,9 @@ Partial Class Clientes If ObjClientes.Pais = "" Then ObjClientes.Pais = "México" - If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso CveCliente > 0 Then - LnkAgregarVendedorSucursal.Visible = True - End If + 'If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso CveCliente > 0 Then + ' LnkAgregarVendedorSucursal.Visible = True + 'End If 'Campos para Modificación LtlCliente.Text = ObjClientes.Nombre @@ -1517,7 +1528,20 @@ Partial Class Clientes LblFechaCaptura.Text = ObjClientes.FechaIng.ToShortDateString() LblUsuarioCapturo.Text = ObjClientes.Usuario TxtNombreCorto.Text = ObjClientes.NombreCorto - DdlVendedor.SelectedValueExist(ObjClientes.Vendedor.ToString()) + + Dim CveVendedor = ObjClientes.Vendedor.ToEntero() + 'SI YA TIENE UN VALOR ASIGNADO SELECCIONA EL GUARDADO + If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then + Dim Vendedor = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=1).FiltroPrimeroValor("Vendedor", String.Format("CveVendedor = {0}", CveVendedor)) + 'SI NO ENCUENTRA BUSCA EN LOS VENDEDORES DEL PV + If String.IsNullOrEmpty(Vendedor) Then + Vendedor = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=4).FiltroPrimeroValor("Vendedor", String.Format("CveVendedor = {0}", CveVendedor)) + End If + DdlVendedor.SelectedValueExistInsert(CveVendedor, Vendedor) + Else + DdlVendedor.SelectedValueExist(CveVendedor) + End If + 'TxtVendedor.Text = ObjClientes.Vendedor TxtPlazoCobranza.Text = ObjClientes.PlazoCobranza.ToString() TxtPlazoCobranzaRemision.Text = ObjClientes.PlazoCobranzaRemision.ToString() @@ -8948,8 +8972,28 @@ Partial Class Clientes CargaDTPorcentajePrecios(DTPorcentajePrecios.FiltraParametros("Estatus <> 'D' ")) + End Sub + Protected Sub GvM_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvM.RowDataBound + If e.Row.RowType = DataControlRowType.DataRow Then + + If UsuarioActual.TienePermisoProceso(279) Then + e.Row.FCLinkButton("imgE").Visible = True + e.Row.FCLinkButton("lnkRemove").Visible = True + End If + + End If + End Sub + + Protected Sub GvP_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvP.RowDataBound + If e.Row.RowType = DataControlRowType.DataRow Then + + If UsuarioActual.TienePermisoProceso(279) Then + e.Row.FCLinkButton("imgE").Visible = True + e.Row.FCLinkButton("lnkRemove").Visible = True + End If + + End If End Sub - Protected Sub GvM_RowEditing(sender As Object, e As GridViewEditEventArgs) Handles GvM.RowEditing GvM.EditIndex = e.NewEditIndex @@ -10422,6 +10466,7 @@ Partial Class Clientes Alert("Los cambios se guardaron satisfactoriamente.") End Using - End Sub + End Sub + End Class From f210097e7837d884e3afbe8d08d61917118d1be7 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 22 Feb 2022 17:46:48 -0700 Subject: [PATCH 2/8] Correcion al verificar estatus de cancelacion --- App_Code/Modelos.vb | 4 ++-- Ventas/RepCancelacionesPorRespuesta.aspx.cs | 10 +++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb index 087d8e134..63b5f9f9f 100644 --- a/App_Code/Modelos.vb +++ b/App_Code/Modelos.vb @@ -4636,8 +4636,8 @@ Namespace Modelos ''' Cancela la factura para poder realizar la refacturacion ''' ''' - Public Function CancelarPorRefacturacion(CveMotivoCancelacion As Integer, Motivo As String, Optional FolioSustitucion As String = "", Optional ValidarSAT As Boolean = False, Optional CveEstadoCancelacion As Integer = 0) As MCancelacionVentaMensaje - Return CancelarVenta(Me, Me.UsuarioActual, EsRefacturacion:=True, CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=Motivo, FolioSustitucion:=FolioSustitucion, ValidarSAT:=ValidarSAT, CveEstadoCancelacion:=CveEstadoCancelacion) + Public Function CancelarPorRefacturacion(CveMotivoCancelacion As Integer, Motivo As String, Optional FolioSustitucion As String = "", Optional ValidarSAT As Boolean = False, Optional CveEstadoCancelacion As Integer = 0, Optional CveEstatusFacturaAsignado As Integer = -1) As MCancelacionVentaMensaje + Return CancelarVenta(Me, Me.UsuarioActual, EsRefacturacion:=True, CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=Motivo, FolioSustitucion:=FolioSustitucion, ValidarSAT:=ValidarSAT, CveEstadoCancelacion:=CveEstadoCancelacion, CveEstatusFacturaAsignado:=CveEstatusFacturaAsignado) End Function ''' ''' Cancela la factura y realiza las operaciones correspondientes diff --git a/Ventas/RepCancelacionesPorRespuesta.aspx.cs b/Ventas/RepCancelacionesPorRespuesta.aspx.cs index 8672f7241..4b60fe73a 100644 --- a/Ventas/RepCancelacionesPorRespuesta.aspx.cs +++ b/Ventas/RepCancelacionesPorRespuesta.aspx.cs @@ -406,7 +406,15 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas { factura.CveEstatusRefacturacion = CveEstatusRefacturacion; } - retorno = factura.CancelarPorRefacturacion(factura.CveMotivoCancelacion, factura.MotivoCancelacion, FolioSustitucion: FolioSustitucion); + + int CveEstatusFactura = -1; + //SI LA FACTURA YA ESTA CANCELADA, LA ASIGNA YA COMO CANCELADA + if (CveEstatus == 5) + { + CveEstatusFactura = CveEstatus; + } + + retorno = factura.CancelarPorRefacturacion(factura.CveMotivoCancelacion, factura.MotivoCancelacion, FolioSustitucion: FolioSustitucion, CveEstatusFacturaAsignado: CveEstatusFactura); } else { From 3d077b7f9ac91ba59f62cff04ed28c04a59d2689 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 22 Feb 2022 17:48:08 -0700 Subject: [PATCH 3/8] Motivos de cancelacion en complemento de pago --- Bancos/IE.aspx.vb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb index f3eade517..d49f7ade8 100644 --- a/Bancos/IE.aspx.vb +++ b/Bancos/IE.aspx.vb @@ -839,7 +839,7 @@ Partial Class Bancos_IE - DdlMotivoCancelacion.DataSource = GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa) + DdlMotivoCancelacion.DataSource = GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa).FiltraParametros("CveSATMotivoCancelacion IN (2,3)") DdlMotivoCancelacion.DataBind() DdlMotivoCancelacion.Items.Insert(0, New ListItem("Seleccione uno", "-1")) @@ -5898,7 +5898,7 @@ Partial Class Bancos_IE e.Row.FCLinkButton("LnkCancelarComplemetno").Visible = True e.Row.FCDropDownList("DdlMotivoCancelacion").Visible = True - e.Row.FCDropDownList("DdlMotivoCancelacion").DataSource = GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa) + e.Row.FCDropDownList("DdlMotivoCancelacion").DataSource = GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa).FiltraParametros("CveSATMotivoCancelacion IN (2,3)") e.Row.FCDropDownList("DdlMotivoCancelacion").DataBind() e.Row.FCDropDownList("DdlMotivoCancelacion").Items.Insert(0, New ListItem("Seleccione Uno", "-1")) From affdde2692dc7831ac91459ce61cfbb7304012b5 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Tue, 22 Feb 2022 17:49:00 -0700 Subject: [PATCH 4/8] IE eliminar bitacora se agrega fecha documento y observaciones, RegPrePolizas validacion cargo abono al cargar excel, rdlc ISR Recito --- Bancos/IE.aspx.vb | 6 +++++- Contabilidad/RegPrePolizaS.aspx.vb | 10 ++++++++++ Empresas/119/Formatos/RepIVAAcreditable.rpt | Bin 131072 -> 131072 bytes .../Grales/Formatos/RepIVAAcreditable.rpt | Bin 147456 -> 147456 bytes .../Grales/Formatos/RepIVAAcreditable2.rpt | Bin 126464 -> 131072 bytes 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb index f3eade517..08063ee14 100644 --- a/Bancos/IE.aspx.vb +++ b/Bancos/IE.aspx.vb @@ -5489,10 +5489,14 @@ Partial Class Bancos_IE Dim DescripcionAus As String = TxtDescripcion.Text - If DdlTipoTransaccion.SelectedItem.Text <> "Seleccione Tipo Movimiento" Then DescripcionAus = String.Format("{0} {1}", DescripcionAus, $"Movimiento:{DdlTipoTransaccion.SelectedItem.Text}") + If DdlTipoTransaccion.SelectedItem.Text <> "Seleccione Tipo Movimiento" Then DescripcionAus = String.Format("{0} {1}", DescripcionAus, $"Movimiento: {DdlTipoTransaccion.SelectedItem.Text}") + + DescripcionAus = $"{DescripcionAus}, Fecha Documento: {TxtFechaDocumento.Text} , Observaciones: {TxtObservaciones.Text} . " + If DdlCuenta.SelectedItem.Text <> "Seleccione" Then DescripcionAus = String.Format("{0} {1}", DescripcionAus, $"Cuenta:{DdlCuenta.SelectedItem.Text}") If TxtFolio.Text <> "" Then DescripcionAus = String.Format("{0} {1}", DescripcionAus, $"Número:{TxtFolio.Text}") If TxtImporte.Text <> "" AndAlso TxtImporte.Text <> "0" Then DescripcionAus = String.Format("{0} {1}", DescripcionAus, $"Importe:{TxtImporte.Text}") + If DdlCliente.Visible Then DescripcionAus = String.Format("{0} {1}", DescripcionAus, $"Páguese A:{DdlCliente.SelectedText}") ElseIf DdlProveedores.Visible Then diff --git a/Contabilidad/RegPrePolizaS.aspx.vb b/Contabilidad/RegPrePolizaS.aspx.vb index 7046abfe8..b0404e0a8 100644 --- a/Contabilidad/RegPrePolizaS.aspx.vb +++ b/Contabilidad/RegPrePolizaS.aspx.vb @@ -2468,8 +2468,16 @@ Partial Class ContabilidadC_RegPrePolizaS + + End If + If Row("Abono").ToString.ToDecimal > 0 And Row("Cargo").ToString.ToDecimal > 0 Then + Alert($"Se detecto un error en el registro {ContadorRegistros}, se tiene un valor en cargo({Row("Cargo").ToString.ToDecimal.ToString("###,###,###.00")}) y abono({Row("Abono").ToString.ToDecimal.ToString("###,###,###.00")})", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + + If CveConceptoContable = 30 AndAlso Row("TipoTransferencia").ToString = "" Then Alert($" El registro {ContadorRegistros} es movimiento bancario y no se especifica el tipo de transferencia , importe: {ImporteDocumento.ToString("###,###,###.00")}", TipoMensaje.MsgAdvertencia) @@ -2539,6 +2547,8 @@ Partial Class ContabilidadC_RegPrePolizaS Next + + TxtTotalCargos.Text = DtMovimientos.SUMD("Cargo").ToString.FormatoNumero TxtTotalAbonos.Text = DtMovimientos.SUMD("Abono").ToString.FormatoNumero diff --git a/Empresas/119/Formatos/RepIVAAcreditable.rpt b/Empresas/119/Formatos/RepIVAAcreditable.rpt index cad593981ac3350734a6c26b18f4ef0050ac3d1e..5caea88e177395c0844d9acdcc4be8569f92c939 100644 GIT binary patch delta 11628 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 delta 11520 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 diff --git a/Empresas/Grales/Formatos/RepIVAAcreditable.rpt b/Empresas/Grales/Formatos/RepIVAAcreditable.rpt index 5d6ac0536914061db54ec47dfd85b519ea089352..5d1de1b2fbd4facfa778387fa9419b0e26dbdf7d 100644 GIT binary patch delta 22287 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 D&xQFN delta 22152 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 diff --git a/Empresas/Grales/Formatos/RepIVAAcreditable2.rpt b/Empresas/Grales/Formatos/RepIVAAcreditable2.rpt index 33b2abbc9a613c6be02e52aa47ea8d94d334e22f..1101f58c17cb4d8017664d7bd94a7fab80be2879 100644 GIT binary patch delta 12337 zcmaL71yEg0&;|G&!GmjX4bHN$P8XYS0cTQyZP=lHI|`1-=eFp}H@{?||dfai}8_~CEw@9+Pzk01U}t56M0_MHRr zQhf9Pya3+cVgA*=yuW>Pdt<0f0!}jX$n?@Cc8J>{R| zu?)OZgJGlO4BW`04Bc7OaK7WT zX{aG>!9dvv5LOSrLB?-GTN((>?DFr>)F?p;gBzjNtlWN4Li2NF1Fk*;7iJIHqcE*q= z7k}D!Be{j9Mr)YYos8o@cQmb2s98Q$RDm75*^FJf+Dzu^#%NU=)ZA4{?C;8e{!C1R zrbivQQ#JN~COk89D%d@~D$i!Ka$FW`T6{Sq- z;aOnb_i#hLTMWU4E#ft-J?dNdN{SQ&62>8WFz0>hTX+ZG8Cn4;>38y$jdLh&?X98( zpfv?manCJYzAh8Z{pUzZ{a}3@NTaXZ?K-G`viRa>8(o|zE?$VlGRXl!!Kv$cx)+h9 z67b1;u7DJs(Zdzj)<4M&%lTwrHyXAF$jIxGfj(6sQPI!;&muThr^J7-T)VH-1s08%5{d`gzmVa z&gNq8?1W|>8&c7hPM-1`i*7ZPZqHtz;h*tI2CFH@NwC(dinbJ~84s*{DKqaZw6YA- zU`L}r)86!H>#68s)#JV03^ps3ZIQb0YtQl+_Gk;=VWBG{n_Nlc1?c;#B;P8aDK(J% zEtKxlmO-cM}QN+1Yiv?_=vs(Bmu%7HKGrP z{BU*v^M`-D{lkfW!}U-9Z~OuOnZQTO7`6cVNx2wr1g8@ZOU(*a5S0`EZ!(IH;wJ!r z@+zl&D^ur|iK0*R>#*?~UHAH0E+r=;vqSjWkb; z9)s$btS!5Y@-zuZNK~3M_0dHwRncsoKzGXT4ina<*y{=y)zytUU2n0*OB0}Wg=~}c z9A4sdCAMm?#{7{%YGPgCi@!aICP7I3)5}azm4N5>-|D60R5$H7R?XGv2gDT~pIWct znCJeOuuHEYA4Ou)F5RsjyjA|ybWY%h>&R*>$78g@bOg=d($|p6Kpf*dYLq6AW=C|d zSa1~X$xYs|5Qp^HzROp`(%g|%!BRuei8$Ju~waq^N z3xDc>IN4d3uE>%`bKm;m=GZ*TLf#X?I%dq^sXaiqoI|ERuRvURKT`OCSfMY2tg2>F4Js+DWAbE=eThW_TK>FP8p(+sTAlir58CsQ zGp`s8e0TR5Soz)JILu0jiUdRDQ%gD>Y$7ry<(uPh)alB+Sfd^POL$6-QZk;q3@}&)TMRB%uJHQ7@SsW(LRMi($o_n1j47RKp&Np zkCg|0MAtkJQcheh2ImR@>gSZ(vJ>#31CI1!cSD7r#4O?w!j}~8gWE9h;c#wI_3 zrMf68?CW-mhf=#nBLOO$=L;HHKd^G1j^#r-7iml(@lb>So1$=o)AzHDuidQQMC=N+ zuMkh`k#ViQU@8kiz(`U=+v5Cj-UPa(M#-Gvw)-DzsX<&92jEbt_N`eQ*)D!c4?pG3 zNav<+YU`M5LaT}PXjtJi!)RfOL1wMD{bsf)c$3qHb1>3d*>K43^MsRZ?gr*)J>~Bu zFQFyKw2A9lK^JeIDs?|IoThdHyN6Bmc0Y^jbjoIjEZX7H0L2X%W+((9=%tk7W$)!v zA^Pzx%>?!S>J$@%C7B?LV7GaeOd9d_my<`3($GeRa_-PCujYl!T(IgJW({GHIo@C< z^*#ahw)20d-Fq=ye8KyvV+bCEc~6kpY%*}HA=P(e2)ogA5O>br6;or!ttUibZrZ+x zYX97O6RXec>3t7>jBKwZmZF6=^F;>1pVqi~0aWKBn~Me>Yzjk`z^aJ zl`D1K`IxACD4e&q!J>{3zv^m^rT_<@tgG;VU{SEkhD z`k#;&;`!6om3UZ}bI@3@f!-}ESH&cPlDSE$_HmgQJ^Zy5zxFH{dcOtnHN4#S9K6t8 za>-7}v3x?^)P>+?gL~jlWvu^}VEw=|mvwh3*Qg@MAKPS;x-1MP_cVk=R|w#FcN~qj z$~cE&T%t1B@x#td<2f`V$*%i6@?&pwlt6R0Dpyd3Ax6eBIT=4Qd`)s?6rwLG&tsCI z^qcNneIVpJHNRilrfkXgWc9htJG!D(JX#sL6c#f2X1NMf_Rb}avkIl}E222cECeqUGMKxx@%tGgLo`7SNN-jfs4Oy$cnVJ3yz~)Y}kMmWp{CEJY>R zod=Ts`)%poEnu%mjuG!Yz?427dEG-)2l4f}2p27M-h48+YGgYGy2o`9U3vB(`6;)N z*WgjK05x>?(Va8s=>Vn-igL?{JSF8N6QrO0Q2rIsw6+VDHeKRx<^IoDdK{k|eNb)5 zG>RahO1BXc4~8-Q(3Q?73%^{aKj~=El5AVJI0y%@lrND&?1K$XMI`5cJ@&8MB(HXd z)EvevUC;u+Iu`jHNZfx3zHHeJFVyZ^M6RLaQrEWafyr}D)gN?^WXa@iD+gju|6=R3 zaIQV0+K5|xHJ8$v;DgLN>|jWXi&Fo&y{SXhj&|-$N5xZ7MQ|IGZ;gN1?hR* z$!97A2%-zyyfGtGS3;{e8oZNmmUGWN=)Fu9@@U@%k72YjYs$0<44}rT5lkrFKb%Sw zCl;2L(JZH)?agBmY4`gzjlPLqyJ40EZ7IGX{u(7%Br^9}nKPO@CF-TG=ULG$X=yiR zwnlmO)=xM>e?32Nd^$EA$r3HwH3%WZv=D33FLGsTTzMN%zw$Y(dS0!%6IYQZlw2OR zx=+Ld2apEbAu^wQyFT1`rDLg)Pv|gPrB{;sV>kbveb|uLw_p#t*-66WNSGYEiVf66 zM0*daO5^F=;UuVL&pYm?aw((fz{s6@1%YKKR%A+x`XridN|8ke49rQi35T8%;6#;* zD48)Nq-Mk1RvzX+OUL4F82qxsM$4wODNrF`<*zga;oT!%dfh_xLi`-G$5gNH<@Dni z3L}~KMyLa*!3!1vTyI{1QamS$U3`zrhBEay0)^=b$r|o{uN26)5WIcxctZR5+AGiB zmqYvg8lZfX-SAYYI^)Lok!+%hBPdRxX};%(%$~-w7E&NygGc`C3D#LoVf-`^Ze&0Q zOHJ`Og5(6j^UwsPDy=rsDp1^iS@4su?+DBWWB4R(4N}{>Xp$`KPhZF}rYiklXsH@9 zWv_dOYzr(CE+ibX?~bI{?Ik)e_$>pT~JY zCw8J>!s_?xFjGqibehM2(rwfexB7PRtA$y(3i#Dd5rjmfB_O;L2%9!f)LJmW83K}V zFN%nyv^lmVC$CwiRH$qyO#ad`SxvfcBD52d!)$R!m9Y4Sef-20G5)`4%8LYuZ-!ubCa+ zyh~EajUf{ynS^gFLp>r0r+z3Gic{J01WGY6VGNJtm}B;Zi@Qf)wht_j7!QJTj7uX9 zEjM7i1$x6d_-_@OF$BQFhykTpu5oV7x$3%>`ilH~PukiqLcH}COaBxviwBx6Gni*q zngn5Cb>R~u5Fye;DjTBr(O-6K%cQbzW_t)n1k+E6J-dyb z?V9f{boAN{J*f2d$cZ99(ivQ`Y&H)eZ@CFkOc9 zaJ~{#G4Iq&>V|}5GZQ}~*@$CH5O$aExLMWUzNMfhN#6uM!g_sWD4$6V3M~(5>d%61 z!S405oB&17n2I_ip`iLHC?+Ir{xWn1w){Z`Kpq}SKNGrl{c$WoA-O5e-nOYq#cfW)v&B&({$mjB6s(4>a-?}fpaA3&104`W-vZJw|x3PyL68-!) zxm;W~M7yVO5U5^SDFpF;7U#e0Bb$UIMAx<@6;0U3#C&JkZbGPQ5-W(D`+lJ8#7{tb zXBILmY4mpTNjEg~VQ%0P9C0OFPtnCOh-oT}Z*Xgt+d$)u36rCH zEIg#dFM~ykvQ`u$v!Bvmb17pbtBQC9t!t$nYq!T#HYo09hCK}9ts|m<4 z#n<85(%5W^H_;`@-xbM+#ru-@HqHWlfnfI6 zyU?lc6KW4y3(UU|fe+Z-jMnI*<*07S}Jy0vNPpcmWK!V31F9&SvFbht}|E{WI90~=|g_Z&m1 zEAgU$Dldq-(B96AS$>}eN^taH5O7%7JaoGgsa_ zGdqpZVV>SIv%+E=!x9zLmYp>df3p$Bh1Hw*3s)qAf~m3;8n`$rXOi=<$G3SfS;7?0 ze$+J9BjDgI!VET&tv!Sl1i#v`4<@O-x54RVl6n59*xEWVI^r(eCL)!&{t!xHtv`KsndO;e#wAKZ0BmdLS+%O*fU z9}d#;2oWO^qRM}u73Y`CBS#aV^hWPJuTi|AoC$sHgxRqQl?hwNjy}0x$|<|p+2!}+ z_f{>&x{2cqY^**CQDX@gjpW%3fIdkZ44G6%Yf+1hcF;&u_XVXrl;AmVG-k3v&uCJd z(|EMOyYk+`PGuZzgUw8lo)gY6B3)e@S=et=CW_*QE=Ki&O_ILY6gV%Z^+yNm;qSw3 z+wf#fSTb?*yZwzE*JZjeEH}U~Ki{xw_vmy$pJZF;eR1!lzdH^b+wO&3!jwP%{U}w5 z;}RfRZQUtYOUoa$zdTK=c6Fqk`+Q_@k!vE8ZT3s>Iz1}<3piqq4w+RD5=a7_56mev zpB8XB#+EX^l{8mjNi5M)?T24!nAiO|7&4q5y8hlk0f!(=Xtyeo9d5Wdb5GDj0+n}{ zQ_}J#ms!mC=C0Vtb7OV~x6|0?e^j_Qou{A@8d%wY&IJEZK09@!kaUvLK(lAN4FxjO1f-Wxmz4q^O2t(6I6AaQq z~q(3>WFDcV0Jm0v7LB#N7`Prv8?DMqvtu{TGRuSz^%qs_mFnzQ0VriUZpogm)_`fo{hGQAIS){h$pTOSNK+36GdKMs~24!M7ovdcIPI!e{gb+ z2FbukPcR7P8Dxc6PyVs=-h z&b?X=6FudZ;h$a=ZvWW#`YUEW9s7*H?aj-sM*$KSIf%YZ6wgm*zx`M3x_X8T>j%GAx!)CE1n-<*P)Qcx2GygHB(d_XmSB;4tu;5vxxnLP zBSWK{xg$ScHcAoZ_?@Ypxk``=USF1&ulF(GqK60Dj7A>s3MnMrqlD!_${oH4Au*iH6w&IQuR`azoeEZe z{6$j^_ATo%x*x$Nt^D;RGC4cYV|i=H_09(GJ}V=7g9SPMQ`KQKGjAaKC)Au~qg`Qx zPMN=0*=45(dz|bK3)yXRS|pD<3a*yhh0WoI{VIDaKP)+QV-#WW2BS|>hxd^r(KKNi zSegU3;Aig-e|ectm>e-=l?9mYt4M&a_Pgj1(W(?D%6!Z1K`$ziSuL-fmAS@t5i5pR z618H4IA7mSFKGG~g{m5{z0nQW|5(tMMeR67=QQeLdBFWVJXDF8`ZE}&owt{nh|8!H z?k{+0TX{a3-c7zaKq|&KrtwR(mFmH#bn{@vLsnWm2)69joD`Nu8_C8q=xqZG`+S3= zQ}V2@s|h$u9d^bgZX$K*wBHUXI?B~;8Mj?7R464es!GCs3xoX`TIvUHorHR(@pxGP z9ZJg8gjmfCy_1F;l8{cV35agRHJ5-$JpZKy@~Tw?NnLBb1lHj3VS_rRfl0AY$y(U! z%=i2+S^lB~Md+C-{56h-_h{h9@^b~4=WMvZoXwVyy$on0f;PzURK57P>;1H~+x7|kdg4`pZ1BCly%H=3oB}0Vns2mWEcKhFd1jSv?j%$q8}o5+egv5o>qs<3 za+(Xfsl;3mty6-Q%%!5>66=u?4$N;(LVLTY+fNN0Ucl60agWLS{B+s#W6gD5B%bIZ)+BmFP7F>PO(dYcW&@*sucfNj1;< z4#J^kgF*$B4$SS#a1+rUhLY2n+cA&P!qPi-sJ(;r!a`n!(n#I7<^$=P9&9V8MqDUKFz9lqb1Rgj&k|wi7$uKgmIJeg}jBnRi|jhjc&nhM{o+m z#8R&oH*WfKg?nJVR6YYL(kTjIAA=r~gG)MdXe1>l2v?Wu?ikJA;F29qnuNb1x&{z|dyoNZ4D)+p$Elkfg)#W5C6 z@}CfH@EOB2(0AEV!{VLPA9EW@hDw-Np=@P&XVROoJjB2;jR^L(^keN~&-v_ni}yRb zM@{rbfnvTGZZjO!6TDN~O5k%?NBi=h=?k4GM3Z^u-CBm?rrFL%Rz`i)$oz!T(;%f+ zWODSX09gkZI)lFAXPE=}R`dIYY~@4WaU6N1QVLP!xd^F>bU)-yno0UKD zB}7Dg_1-5DP+jIRz32<%M$ar|7mkHqZda8p88k5D1aV}UPJYXzO@-c2)}1r84aB@O zto$L2Q%ViAF)TBxIzowDd1qM~5XvM;ba8Hs27SZll|`3xd4zlUeb^)u*4)47;Y zCp3$x28m!9@mM?3IXCm>RWU1y#dl`nIjs-$f4bvQum&`LW0}uAJgd>@qtt+AEpO0t z)UF-Wpf*4FVQnoTs4i;vNHRH4Ixku{WC1sC?ywuat=}Ef%qBiHxf7e&O`d(xpZuq& zS!o$uk(d7R5ZCNHe`1H{{b^6O1+q!rgvpqYIZGyE(+pV^_2&|}_2llJT{7_EFEcVX zkJfEIrf0v(L(fTgiMr5(O&EW_T<~_hreGkwF<<>(hoU*xLMF?6Kh=e+_3|#fwIgOY zt)H%FSq z;UT@06wSf#r<;si$50W(ew|4+)@m!EPQ&IdHEzw%^L36{v2$6Dsf8uMhGZ{FB`#9n zs5hM=TSFM=N!RiR(~kHM{aj|h3>7v?>Fr@Zl0jEm04|!A3<8B89d;Scomo;fU-$w$ zIZ4p%W{d3SXyljCm#P4vwO*%3{m-JVVKp%>l*FG2RxxseQ`YA62pRA(i%RZ?xZE5G zNS?l+O^=4bdoN#p%FC+?UzYvH`e1uH}3`Ubic{$O7Th{;t>lU}S~*s-aGTP+4DYrTC2otfvoa z&mc(8%GEmg2ETqsPQTpG0l%@ZMS5>wuybH#Vhy8}c4MAqZ8F_O+y|%cP0=fzU&;52 zx!870g;X2`^t62cx5_*6H?|7*iaQpLaJ<3=4BM&Dae*ug$tW?p-b?zndEmFVQv1*J z?{)Sjbnp@G!B8Fu5g>>sS$WnoVLdtMpwR(4&DO^SDhB^JkJqh8D@mKaeSAr#fqb;t@9pj8hvnC z|FUX2B)N!A??b=!e<7i<1tZ|%KT(vfC%@|5!ix20pC|4iT{tw5roSxg$e_(H@Fu~1 z4m#$qFIt+FW%GJ;^8n$&v?=uzJRzAUZv+Ej}*T$pi>f-I45;_K>9F9vteEXzmi1y~acvDc3~F868*671|y}2mjzRw>};<3jMtRg~oPY zMNA+1*V+4!dup1}0yWWWw^B}K@e91W5CpE!5h=m$y>M-_l{d8G3#X5ObH#H@p5_}! z%Tlvj6NIL!(IxCVe5=2L#73Q0zsznU=DAfKg~EpwS16vh1t#Gd`B@ea)MJC$=<+FD zs?*s<$4d=+7E54A9$k(=1T5Gy!c}3GfpR8fZv9;O^f*t}NDzjmaTW5*WH;mH0-RNu zT>RtB(KG_CtjL9`nV$q4q7c=b&_D<@kj9X(U1;Rlav4~chrPv?H_g5?-YoWinG-(5 zWI@&ZM$^e74X#C&B5bFIMGhZ@AEYBq){JgfD+mMDeYu6BQ5c`FW*|x`*FDZIvSA?L zj^ap=e;-)7Oa5g=7U_U4Cet)Fa-vk4Q?IrzgZ)z9z_L8;1SfEIcdY8lhUwoKqM)~| zcOe>#ge_1IyurSF+Q~kvX{(T(S8|VK@GH!W@-MGIFxZWY$EJ-wJh3YQFJAEkDZmqkaA0kIlfJ6-6iuc+1apO;DiiO=7If`; zAyljoi|z!qYwO8RG2yaNbo5u|2vL`}zPim3bj_tCar3qm7Y>VQzM2|UUp!2sz795E zF5o(}AMn`G-O4hIVKrfE>wg0F2!SRe%nLnNCN~b}Yt85HhPrI5Kf7T=vJX0qFjGqb zmcb!w>>5O!`J;#^R8jB_i$i8m1x3S|1iCFJl|a&v%ykJ!Q?V@mn`sJci23?0Zg#Ah zrgKbf`C05^7pveU$Aabw)=wpz!YfT9VwHv~j=(g+k zm>E*tp$G3hX2HEr;kWN$fR+5eB$~~Rmtdi<-m?n#Jcs+6(kl!t{RZ8P?d(cMpNMVe z<-^{Vt(2L)$lPweD199-@l55TXNDGh8 z?*z~mO+NJ#6z1DwY^BSAKFMwAtmm|PMZrX0Aj;zxVsfRzVOP5D#a2)rWbUc)xbueU z=#q6dF z3NOs#jY_R{bSPENCC+CP_56j+jRQlH2V?5Ly!By%nnfvW*V??B&1S~&-~JdBJMH?) zAU2!H$bb~+Mo4p63EEQ>(a03=($7nbw8Fx5cVQ;lPUc4m1lJ!L+KgMG8Bi;Nc}>ms zt7NUJUAr{UnV`YS=qRq}vwRt7mpc?Ci~;-76r;N`5iu#0$8Cj)rRrL>xnLP%>%mfA zBbm6;_2M@Lx>|xz(dWsBDS^D7EPJ--yYe#$DHo^0D&t(3Rid*}7XlCS5|eIJ zczq|T{w!w#yS-!(6J;+)gwq3MyR3Ztl6A(3u{mP!54Y^s2{J0V{MV_iE)jl_0~UI2 zGi$1EwUzwNb|ik+L=K8w`d~(LcH$90>FCLycffD$T z2d|fNgFuMn34dRm!?p|o555&^mgpIm<28@H*k2FvCrh*DAFQMP@(L0cWEC~Mqy5G1 zQGEX5p(lDojh%(QQ4M1PplS$ODc|AGX>5+q2BfACA#*>vh&^(I;jd*mm& z1Lt`z1g}sdrhG6iuBbur8|$55J=+w0gKFYf*bp=YLqh&ER$~j2K}*wEJNYBcT}d(5 z97~VO83rScO~S}87o9dM-m(nt15CKw&c8InoSe8}v|3 znjl##XX=jwAgb7)G`OgvIHfLgcSiH<>*4Z7f3M_gc}bLNPIC`#+-8a_1mT81RSdQr zPx((hLgIZ|`U!gR5K*`c&XD-%t1uVBQwZRqeDL&i^@OQ0G<_YHWOcdD4?|yS5yYE4MT`10mw>CQRe{>{?-23%RhePgN?zs z`w0FqEvO&(`hovEIc6G&9}h_(fcW&kulq=TP&*0~`4F=IQ9B>$e$?kDSwoy42(&Zw~kYu=$7_KD4GzAFauU&eZyUhW^)b#tVLBfinMy9sWE!CBECg%!jJ> z%SS8wu?+K%g%SVXmi%7_KoYZII*>{ZQHhOY-~H(=%4TJx!*lq)pK=qPfg8> zsp&JHI=;Rzz8lc7%p}Jk|7XY`AV*&z=$C(det!O!Mg4O0TIFicI0$55)s)4923e(z z-3Ebfu)*%+^J9kjgp0KR4D{9AvKV|CQRSV-eCw5I07<=m?Q=GLZZ#-pTVPn%t~_b} z!GNi0Lz163yP&Lh7E_21zy0IDYnqji?4V)gP&L1}LD^zCxy#+tP>W=Nd3+|8$5Ynz z^$kY;!zCY(2}XzG_feTH*(1>40P`(xLDXM{1-GibAmjS z_f{I!Yjo1U*+g`N-l(e{6ZLnK)VNLK-~gTm0cJD=AJHHNRdzpcp*qi`$~jBx)WUc! z?hG~|qU$hR%r7(87Ozfc!$I$KPx2lnRS5rd3?W`PA`~;>wrDEx^K@q`rZlUE0)Yd9 zJY{Hou)u|%A^#|bI%-zkMV-sb=zhy{vw-u_)8j8w&*dCA3^RD1?g-SqO?N$_6mtHW z;FCS7u*qTzp+5qkUo_dpXR$$apluguoyMYmy=L0qv2GMuhL#>gJ^g^?BB{HynzK!U z4v+4&P+*hpi3sgyD_e2>8Co^u$7Kh0{u>;{wU~SNz@7QbtVq3jV}FXof8}am1xt79 zhT+i%Z9Zg*{G^HFLAzH_4(1(4n&B)b!-4gRDB$otT$u;Zdh63ro5_dt3_vS|MqwxX zIZoQIukswx?=US8pmC$c3F(1WxEid?6aV+soz%mollhaqSlt$hIG;^9h%Hr>(@burWQ%_It(l{eCd zePDZ6|1OS80tDpPZ+%6!E*~>2QzzdIH``oWVq1-(em$yuo@dR ztDFG`ExCfw{hns^3VIQIh=c<{i_OY*?u1mf>TV;5sxIRpOcZ{uH);JErTRaX+`r~! zaFJcV+%(k*^?b2Sc>fahg!>~cG06YT-lv58d4~d*5u4(>`f;-SmwOHW-|yJI4ai{ejvNn=K~qOEzN8pmce%6l>XUX z0UD!cy70oAJA*EX?@LUlDeSw=xBFB;tlWertX0 zelWWB$TZd+2YEC0yrjMbHSHD(=58X&hLnc~V4HxA%^Pu3mT{JaL@5P(iDLY)VjgSS zj%}U#sWNyOlAhO$z>4CLfJ{I8QbgeyN-#Gh4m;b@N<}h!^*-3Au%pXBreBP%{up`R z)B%3h*3GZwvPIfrZX;RY|M3!fsQ``ZKld^rm$ESA%Yir#8}+A*4Ss5;Oh-tGKmPy& z(6wUqKyr|AmKYjy%D2Wt8T&h&@NYU6!q59m#htOZjX!m1<5ik&M)@_#dsCXIhJT`rk+JiSku0MDW|^X`PNh#da{qV9ik&bTbJz_W~n!as-O46qw&7d%TNH< z?Ky0APv^J%D#=Ew_Nndlp(j1qJCrsu=3>S5o=T5AMEYKVm0GYMrr7MAa ziOHTk30&kv3BF*yTjQ&5dV$A<_Jw)*`xLbJ+Fze0eL)APwFFFr3OV?%Uw zgN-$BW&A>l=RiFI&q>8>FOfg4u1{5wsjMKOaG|H-a{`__Z+#@}#m}X)V?a;(uU^EWzR8;u)2n(h9ZD6nPV_D`OsRRxZRJyXNgu;KIe{gvYpp#9GPf1fHn3lAtJXU1v4NS*8kv;0 z8pAl(!!k6Go;##aU&o&R@jkm~(@&47;} z(m3#XSr!&R9UA|pRgTomX|?P3UsXA_0bARAM(#hQpGlzi5MpjYCv0p$?pz6SnM}j80?tM@pi5wy_-}$BDJ;2LbhIW_ag>qev#bjj>&=W& zXqGPYjq)Yv4TZgFl*>iB-%)>T*Ab$GV0&S)t~7XlUL}uR_2|LgC*~UEjO3>K%{znM z5Y=AD6*u3$QEYqIKVfJQCuT>msILuyWmEphdw4^TzIjO1+s%$={5ju{1;nVBPIz3I z-ilN7?Fkb!&ilLTr|Me9)B=GDstvn)B|dixxTwY+3Q%C4ybs;L| zZ40z+Sw+X%K|*!v+s}<&w6pK7k*wh~MTENroxKzwv*LPjJ~DW(t-_x@gZ<#82AN?D z{QI;)$s~m?Dr-&B;7zhu0FUYT5ucRwvAQKfq;7`n$P|;!cv3gz}f7|skt#7NN0jSPL;CMowxA0V1dV*$pvBe>i^?#3ON2*4>i^ zZlFTRcnL28&1YoJb(M$;Xldu|ewV;Uog9#V#!G-Lt$YJ2$F9i%AnkDH(i!R$SY|o? zp_kL$m5E#*O6l(B7R-TQpQNG6Tn676DNDflbtffwt#%w_g-~GB*&=E9+2jPi#JzWF zli4rO&v91qt@EPOZ@48VZ7ReG41R|#I|IkmTkM5s%Rc{7bWf3*h!G|UHZPEy@nHJk zRFx1%Ei7s+)D7~ zj((-7zbmiae@f>oi)?1#`Q)w#nfgOEG;2;YI{t>Iq`h3cRiP4--TE3GEkt^|x$>@mjYI zHqpvkEkzGKzy`~k8amJ4yB@DYoy-aTD8ye#+9+c-Sn~=sj8_2p2J*szv%3Ndw>~<6 zcDiRInhGa-TPiqe6W}J5J-K|wScEXd1jow@KF$n*Ha*B%8*M^0;r0(z0Vcy?E)rHe zVLC19q8FP8Dp)$_s3xy?S*^zn1f%%Dy3`@)^qx)=Xq;hj(BYE3-=2Jm*%xUDDMcz+ zVB8c>Y(Z>>xg)In=~yFM)Z-{U7^jae3Vm7JCdd}}bkveMJTci3&%X1{dpgq|AC($+ zjcSasn1Rp%%~4aUN4Sf;HB#)&08aSieLpCJ!bA@ zRu{Vo;O#+hpYbwFIrIGoPV#1x2L5v;hefEBLg_`d*4BOA-H3$WxvRN9)uj)bYn5L@ z{xU;nwHiAi)^3Y!?7W3*!Pe`sij4X4S-b?I7@D+Pg|B7o^{cO7y3RP)}n5jF9p zZiVD?vN3-*?%N{{64aGYrNx{wHYVxTWFkJ5Kbs2p-Jm20zLQnnm$lF*8}FR<98-?u ziQiM2mwk18qy80nuXkon*)ZEeGe=r01Pv}F*t&BfsY#rTa=>?_in=fR>{sP90Aq8c z!}*7AQGdq4UeFru*rAV-8SrTL)YMP0E=WE~qZN-m_+fObwfjsd-0-^Kf5cFoRdvDi4M&`ySMxW57mLZOWoqX{=Mh!2OHmxupYpzqeRPf_rgsxphkZ8!=;x>-3G{&dQf&oRk(7&LQ?as|Z zr26VQ(h8{yBi8w|t;C3e%-43)K%%_KXMlG0HZT&kZ_F+-qIi|N-9r@#u!@!mV4;J2 z!||pp!|CGRgnxCT(+wWr{bz%pgRc^{$}-rqh;7qDSStW=64r*gIl(lyX;DqMpt#v8 zBJ0`V4e2BGPrgJ2-Ap8JiH^YB))Nd^y108iy#YE3Cc{ zV$d}HK8EOYQYb&MxN{i`oCaeM(d=v>gSFKt5qux{wL~fX1ReaCUjA47m#%^6HcTYx z<+NJ8zD)1o+8X3?cL8FydkWFux>Q85VSP-A)eL89jRAI=|S*mbhKJs#g>VhZX{ZP9%rYa$WB>0!P;XKFuGJLSz~WR{2NrG zuVTXmR;szaw|4x2y;3$q1={)OeE2f%#3a0~0w@(qwL6yG^QK$2iuoQU<$CGYW~@#- z9@SCu%`0>FH~(!yg$nXN4lTh#u4R>Gaac(GW0$6~H|uL7U&JbRw71>i}?v)3momGj0DdY&>7UExjDSx`<4Oi?$T&#g&& zZTf7;H-)J`>rVXUl)Hnk&_Pbl$8ym!IrociElu%seBJqz1hn&HdnJU_$2u<77*5%X zb|@-e{33c!3&W011_Yu@UUG<#$eqgu7?BYP>gTL%3hT7Do87U@Z(G zoQLD^tvkpaK!Bm#-8PR76hQt3lx;(DFj&>FVlobiIfO5u&&8!4H(4;On>E+L847N*a zLzdd;s4xGkl$3#mn65pN{~rq}_OWw94-UhQZ2W6?SO6(ZW=Y@ZxI$)Xw1k#XyLpJX z2lCB66ljz7l<-`*@jijqMSrQU;C%BZ#^59eTT;iz5QBuWI8|^eVP=>QPKq4L7`2aE zWm-WK#F52uWW6u8FKp5Rs4p-SML=8lq7cpw1whxPTTrp_@H`hBVxA!jLPZ~Mw_(Vt z)#;@<*1k;=I=H?uBfVD0ySgVsay{YVg+BFXA@!x_I#jXrNX1zQmDMdxCA#^u(UlXs zukxIKqlc{^mhMmMa_@Pr&D0%mE>z_`5LTP)9Rkm9Ih_BFjfH?6QVZmRIIV|q2D<-< zaF*h~`;glL!|d!c+ARKwcW=b65`%NHUD)CryI~fe>zif+_Yb5&9c%+tOvxv{SeI@6 z327hi%{{fql7i)YuH{4{%cJJl$P&x;W>E;k7!gmo9qR@v<-XrVzE{9-Nk#5xNBz#7 zQUPp*ZMh*^i1s8ghY0vSutW9pJbX;iq#~V(LOet;R$kc{eG5F*amJR?Nb6bkPf_{p zVo~;=l5i?^mWx5n+5J~r(X%WU(Fnr+v3LGv@Q?WtKn@!V5GWL(Hf-`s!EYNkwBgh! zAZZwX)X@)zhgKl216=btM0ApWt9o}H-n{6A{F6#w>{#tvbq4SXJ!yh*a4vk)uoUcf zv3D$roh_eRM`Q-O-=FF(m#|s`yK_+g98scMZNah(8N1T!uvh8fz+H8@n<6s0hSKd+ zH_5_Er&}fS=?yh7U5&o#@R#C9 zO-&}A0j>G}W-L%PApMs%`%3@EFON3@vrL);wLz?b4*lOQzH|bR9-QRgbD+QDw_zbb zza_uSfdZhN$sY5dp78(46Z-$D9ADP#`*oH<FIexvfs*=D=)X`ZxCDzjm64Vs@U5od7&Chc45ogx#7~___Y~2p7_6B%Ewsw zRFg?(d6g;llmcvnwfFA+VY|ZrahUQ@i_QC-cGfuF-CTwLn|J~8dWA z1K`umMS@isJ*dP`M5?TJ%{t}@t}XF}T`H$7`Asv4aUlh01l>y<|43w!Xfg|b8mPM? zvwqiMXEz|`3wLx~S9QNplJ!|To$w`)HR)h({|n764Mjo7+?3oFknHq!?N?bUgX>em zZyp4KsdWhoWGgtK+XtBJZ3V3MdXXLT0lJJL(#}(*yCiVnXK937GeQK=o0ooj1!}NwlZ%3ZGB7JbN_wtM zPnUgoW%M~4B<$W^eDHx?D^8?0JgCsGew4)AUf-920^HDK0+@<`(R4%>HIN)~&yyNB zkYo_H06Y#EIEZ>j+?9KO&TOeV}FCPkwuu}*6 z=gxNjGFf5TXf&*fqA#hxG*kI6)h+P~dd&q`{`G1NB$b_XlHJC0NtbQjPW-+``v>Qrmg6<-Xsb2O~<=5urvVLuffQke+k?A{u~+M8BS zcWWdfcF*vtxy7;5N_*9li0l;nYYd)(F6d|Cwj#MQaHE{qfSY2qCPx8oeBZXS2?)Wt zhXz!LSdnIg8)Ha1*uxB?#clNJp1^G*PTP?)hK@ET=W2whCVZ9#gO6p{SoS=_n9k8IeUtd zwLc_{sVst9#Cy!-rV|t-9gbk|iTD13FOL=yx2PvyLiM`@j96|y5{?c}MnyYZ%if{Q zS`j9?)YRB7$UfgU3-}cKZu5tl1#dN-RD_ZW@o=jQF1pImd6bbj(#3ISTR)kS-0hoD zx&YnMl&yke4S`qXBMc)ZYsmqIj^A#&Pj~M*5>YceJ!BB>F&rf z4t}Q?DJWCaWqTqyOU+zlpmtOLEvan}_vFw@^y1^uX==hV0C06sV)1|8?|R*|H1aCbgXYk^LfF_^5R%fN zw~}HcSMOh@*JXiO{cyJCaa#Tq+?4uSkw|(CWx*EmdxlYItDDR0x~cz*^~Vua0FS@) zy{*JL>@`l!5CCKxS4m&K!%WgDhk?LkJ<8@PhRc>SZ!U&IN{4!I_|jCKKvrSuUZh(G zWC}LEN4Tg+iJb(SX2R`WADA53>v%;{3Bu5x9@6`A%a~Y*M1`e&`_iSbemZBcaLgO0 zTR?R4#rU)PB@XiLx|-@5N+HGzU9BJI*C>>;A^Cjsp{2_0_y)dp zWXYrZb555!mxph?jMtcOpb<@3v8`Se0V&8$rj$(LR}nYbm{;wazqN)VaH@t#YKx$# zElHkb1>}Z=3$AhS$~D^#;F*GcPd?+EJuxltth5Y}i|*H{~%0raMm zAPaOrn1QIo&f}lZ>e52vK8mwD!I|={JR<|QTsg*=!hmZ0V+)>PMVvj zoqNg0LtyS5HemS8vehx_M|6x-e6%PFIy4H0?4^$A8{; zhXaUUP^a!rd5>P#pVS`O7?27D8DLhaKeIXSu*P1l+)LV1vi>rI)m0IRRuNNl<6*A}R!qFxCj? zDJy+#U=g_}lQ@@+NSoki^$0k}>U3#VB5hJ7V_gQg$tzR({^G| z1o7fz3%W_(wkK}s7iRR&F=(|Ss|`IZkT*JfTaNFh5ys`PN@MVZ3qx{EYD7!OqJMs> zLrf}qUpG0`wIt0wNk3T&tC$kWi%JDe7BB4Ro*0g|69mMpc%ps|yhp$fLU<|Nc1h$2Y@iSTb`VluOQK#;y zw6lgkCjfXuw4=;#*ga8@m8mysht4FmgWOzUG_fsPHRnE_2X|Jm#|R>Ap!2^P!j^0D zKGkV1S0Y9T!DC^g@8ZWE3^#1eX#Cv&8KaI(Ka}&DP`6U8Y4?tBZ$ODN)? z9d?Z_2GqaJ@7I9pYadlCi#&ReO_6Kv2X;q-PO7bKpo)%cin4f4hEKk4+`!^8;^aV4 z{_1C;Ms`yYh@N0%K&-NrdnbjtW z0r8c3MLm?e>B)`+)ZM;iL?Lj8@zCs3)K+%`fNLLM7Fc|5*WUzV(G34cC(xns*{L?ZRf^uN2YmeENHvOiI`9Bh;av z8WscSe|S`pqJqo3TsMAt>Nbnl&klI+;}x(JjdM)z2=98dp1GebW_&W@)bk3;M42Vt7`s-<%K zFCGxp|s_Q&5uA-`DB+tkOB4rfA-s76jM!(H_1uP+rf1SmE9#^835y? zkI=%3EW5^CI)|jZl;{#=x#uK+7HnjEULU0wDKK(&Bvx`>{LfLlo5dOtjP_{l52Et>zsq;S#?99?Li_6-Nyh1NYIEoNtHWtqVJMV0=jyP?7JvDESwBPFM5ETwZ==aSIuZyQX z^mm(@;#I%7Uh$q{G2`uaUzc<3)Tzpa#R)fSacCLALx?RKd5Cl-aRxdx`K44Rh3E#E zMO1^1x*mlD)8+gP2~fyKVycI~wBS2Ds+3L%_sQo+DkD?>kp7ZoU3pPB8J`|6goA`8dwx#d+?4RWNh1Txui@pT*UROncjkPZm7R&Qdc^>E%EOL`pj%N5%^KUT0q;X z;;f>a_eLU=98PtZ%qbvcG`;1)&1qAfyr<7f&Fi2YDptcc2?BwFlwF^F(R0usNZ~nE zd7zsy`a`O)(jhy=+|E0Fa(-Hk#hRwR-m$0Cln{2`v%_MT$NaoUsAEH{{?Y#M3v#!A z$g#!B71JG;U{0&Kbwh&?&IK*PA{qI>bv-|yjg7hrl|UqNoN+&ufg|Gl8KsWM(PbEw zTua%p$)gcvR15IaIbsNJmtaEaSST0SW=kL^CvF6a2;_s08u{J!78!AZX=W_ao)Go$ zUb7FXzlD_gFq~{q!c>_73Yi4y^kMY3?OAL;85r1-nB~NnEAt1h9xV!c2xSt^ZmSFE zMpfwtgW-DL;FdcvuX1~_B@@ZXV7672M}x1C#R~8Y`vGK9U_1L>&GgUATkMrlD3*c^ zW-GENCr_NCDbtiGOZWM2Sh1tu-e_d%p1sdSsanwDi;HsM2a=@N;ML2bCh+qUQj*`* zvDnrUBT|Oa_!Z&85>LV}^&(O;=0$B0W6Ae|1dSSygKtG?ofKhcO`J&9*Xsh6h?QFd z8-wpyE`V*Y6uBNfD5fVy!EG(A|Y$LZk9LlSzAbux9t{EcS4Q0lQcy_$0g@3q3htUc!J5Au$-utkz+7(Nk2HgLeFRj zQ&f}pnE2X?K&kL9m%AF`Iejq39B+YDM_+u^ya5DiWe3D;G`!PF8CQEQ-HrsFbOdk` z5J?1)s_)+(Hrq)IU}gok0_$y+t~fo=b*~(LXaLL8xw!eoX{ZMG;*C%o*@cJaCV2P1 jdTFKG)w3VHQL?DO=6-Tt Date: Tue, 22 Feb 2022 17:53:22 -0700 Subject: [PATCH 5/8] Llamada a servicio de impresion de Stimultsoft --- App_Code/ClsPaginas.vb | 93 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 92 insertions(+), 1 deletion(-) diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index f7896eacb..a91192f13 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -16,6 +16,9 @@ Imports Stimulsoft.Report Imports System.Xml Imports System.Web.Http.ValueProviders Imports ADServerControl +Imports System.Net.Http +Imports Newtonsoft.Json +Imports Newtonsoft.Json.Linq 'NOTA AD TEAM @@ -7681,8 +7684,14 @@ Public Class ClsPaginas Dim Archivo As New System.IO.FileInfo(RutaFormato) If Archivo.Exists Then - + 'If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then + ' RutaFormato = RutaFormato.Replace(".rdlc", ".mrt") + ' retorno = StreamBytesStimulsoft("Facturas", RutaFormato, lrds, params, NombreArchivo:=NombreArchivo, Formato:="PDF") + 'Else + ' retorno = StreamPDF(RutaFormato, lrds, params, NombreArchivo, "PDF", MR:=Nothing) + 'End If retorno = StreamPDF(RutaFormato, lrds, params, NombreArchivo, "PDF", MR:=Nothing) + Dim ArchivoPDF As New System.IO.FileInfo(String.Format("{0}PDF\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, Vta.TipoDocto, Vta.SerieFolio)) If Guardar Then If Not ArchivoPDF.Exists Then @@ -7705,6 +7714,12 @@ Public Class ClsPaginas Else params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("RFC", UsuarioActual.Empresa.RFC)) + 'If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then + ' RutaFormato = RutaFormato.Replace(".rdlc", ".mrt") + ' retorno = StreamBytesStimulsoft("Facturas", RutaFormatoDefault, lrds, params, NombreArchivo:=NombreArchivo, Formato:="PDF") + 'Else + ' retorno = StreamPDF(RutaFormatoDefault, lrds, params, NombreArchivo, "PDF", MR:=Nothing) + 'End If retorno = StreamPDF(RutaFormatoDefault, lrds, params, NombreArchivo, "PDF", MR:=Nothing) End If Catch ex As Exception @@ -7713,6 +7728,82 @@ Public Class ClsPaginas Return retorno End Function + + Protected Function StreamBytesStimulsoft(Opcion As String, RutaReporte As String, DataSource As List(Of ReportDataSource), Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF") As Byte() + 'limpio ReportViwer + Dim sw As New System.Diagnostics.Stopwatch() + sw.Start() + Dim Bytes As Byte() = Nothing + + Dim CveUsuario As Integer = 0 + Dim CveEmpresa As Integer = 0 + Dim RutaEmpresa As String = "" + + If Context.Session("UsuarioSIG") IsNot Nothing Then + CveUsuario = UsuarioActual.CveUsuario + CveEmpresa = UsuarioActual.CveEmpresa + RutaEmpresa = UsuarioActual.Empresa.RutaArchivos + End If + + Dim bdir As String = If(RutaReporte.Contains("Empresas"), ModExtensiones.DirectorioBaseEmpresas, AppDomain.CurrentDomain.BaseDirectory) + + 'TOMAR LA RUTA BASE PARA EL DIRECTORIO DE LA EMPRESA + If Not String.IsNullOrEmpty(RutaEmpresa) AndAlso Not RutaReporte.Contains("Grales") AndAlso Not RutaReporte.Contains("Contabilidad/Reportes/") Then + bdir = RutaEmpresa.Replace($"{CveEmpresa}/", "") + End If + + RutaReporte.Replace("/", "\") + + If Not RutaReporte.ToUpper().StartsWith(bdir.ToUpper()) Then + RutaReporte = String.Format("{0}{1}", bdir, RutaReporte) + End If + + 'SITIO DE PRUEBA EN IIS + Dim Url = New Uri(String.Format("{0}{1}", "http://localhost:2202/", Opcion)) + + Try + Dim dataSourceArray As New JArray() + Dim paramsArray As New JArray() + + For Each rds As ReportDataSource In DataSource + dataSourceArray.Add(New JObject(New JProperty("Nombre", rds.Name), New JProperty("Valor", JArray.Parse(JsonConvert.SerializeObject(rds.Value))))) + Next + + For Each param As ReportParameter In Parametros + paramsArray.Add(New JObject(New JProperty("Nombre", param.Name), New JProperty("Valor", param.Values.Item(0)))) + Next + + Dim payload As New JObject( + New JProperty("formato", Formato), + New JProperty("ruta", RutaReporte), + New JProperty("parametros", paramsArray), + New JProperty("dataSource", dataSourceArray) + ) + + Dim data = New StringContent(payload.ToString(), Encoding.UTF8, "application/json") + + Using httpClient = New HttpClient() + Using request = New HttpRequestMessage(HttpMethod.Post, Url) + 'request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CVEUSUARIO=100", CveEmpresa, DateTime.UtcNow.Ticks))) + request.Content = New StringContent(payload.ToString(), Encoding.UTF8, "application/json") + Dim response = httpClient.SendAsync(request).Result + If response.StatusCode = Net.HttpStatusCode.OK Then + Bytes = response.Content.ReadAsByteArrayAsync().Result + End If + End Using + End Using + Catch ex As Exception + OnError("Ocurrió un error al descargar la factura", ex) + End Try + + sw.Stop() + + If sw.Elapsed.TotalSeconds > 5 Then + GuardaLog($"Reporte:{RutaReporte} | Tiempo Renderizado Milisegundos: {sw.ElapsedMilliseconds},Total Segundos: {sw.Elapsed.TotalSeconds} ") + End If + + Return Bytes + End Function Private Function ValorNodoXML(n As System.Xml.XmlNode, Campo As String, Optional Retorno As String = "") As String Dim o As System.Xml.XmlNode = n.Attributes.Cast(Of System.Xml.XmlAttribute)().SingleOrDefault(Function(a) String.Compare(a.Name, Campo, True) = 0) If o Is Nothing Then From d47321dfb8bd075e14b9574e6badcbeff8ad0d5f Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 22 Feb 2022 18:08:05 -0700 Subject: [PATCH 6/8] Correcion de folios de garantias --- Ventas/PV.aspx.vb | 47 ++++++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/Ventas/PV.aspx.vb b/Ventas/PV.aspx.vb index 8d4cb3db8..ed0629450 100644 --- a/Ventas/PV.aspx.vb +++ b/Ventas/PV.aspx.vb @@ -1560,7 +1560,7 @@ Partial Class PV End If DdlSubProyectoDatos.SelectedValueExistInsert(DbRowVenta("CveSubProyecto").ToString, DbRowVenta("SubProyecto").ToString) CargarAlmacenes() - + CargaFoliosGarantia() CargaClienteSucursal(DbRowVenta("CveClienteSucursal").ToString.ToEntero) @@ -2042,13 +2042,12 @@ Partial Class PV End If - 'GUARDA USADOS - If Not OcurrioError AndAlso Not ObjVentas.EliminarUsados(CveVenta) Then - OcurrioError = True - End If + If Not OcurrioError AndAlso TmpDTRecepcionUsados IsNot Nothing AndAlso TmpDTRecepcionUsados.Rows.Count > 0 Then + If Not OcurrioError AndAlso Not ObjVentas.EliminarUsados(CveVenta) Then + OcurrioError = True + End If - If Not OcurrioError AndAlso TmpDTRecepcionUsados IsNot Nothing Then For Each drow As DataRow In TmpDTRecepcionUsados.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 OcurrioError = True @@ -2057,12 +2056,12 @@ Partial Class PV Next End If - 'GUARDAR AJUSTES' - If Not OcurrioError AndAlso Not ObjAcum.EliminarGarantiasDetalle(CveVenta) Then - OcurrioError = True - End If - + 'GUARDAR AJUSTES If Not OcurrioError AndAlso TmpDTAjustes IsNot Nothing AndAlso TmpDTAjustes.Rows.Count > 0 Then + If Not OcurrioError AndAlso Not ObjAcum.EliminarGarantiasDetalle(CveVenta) Then + OcurrioError = True + End If + For Each Dr As DataRow In TmpDTAjustes.Rows If Not ObjAcum.AddGarantiasDetalle(Dr("CveVentaDetalle").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("CveFolioGarantia").ToString.ToEntero, Dr("CveTipoUso").ToString.ToEntero, Dr("CodigoEnsamble").ToString, Dr("CodigoLinea").ToString, Dr("CodigoInspeccion").ToString, Dr("CveTipoDefecto").ToString.ToEntero, Dr("CodigoTD").ToString, Dr("TipoComprobante").ToString.ToEntero, @@ -2075,11 +2074,12 @@ Partial Class PV End If 'GUARDAR POLIZA VIRTUAL - If Not OcurrioError AndAlso Not ObjAcum.EliminarPolizaVirtual(CveVenta) Then - OcurrioError = True - End If + If Not OcurrioError AndAlso TmpDTPolizaVirtual IsNot Nothing AndAlso TmpDTPolizaVirtual.Rows.Count > 0 Then + + If Not OcurrioError AndAlso Not ObjAcum.EliminarPolizaVirtual(CveVenta) Then + OcurrioError = True + End If - If Not OcurrioError AndAlso TmpDTPolizaVirtual IsNot Nothing Then For Each drow As DataRow In TmpDTPolizaVirtual.Rows If ObjAcum.AddPolizaVirtual(CveVenta, drow("CveVentaDetalle").ToString().ToEntero(), drow("CvePS").ToString.ToEntero, drow("Cantidad").ToString.ToDecimal, drow("PU").ToString.ToDecimal, drow("Descuento").ToString.ToDecimal, drow("Total").ToString.ToDecimal, drow("TipoServicio").ToString.ToEntero, drow("TipoPoliza").ToString.ToEntero, drow("CveModeloAuto").ToString.ToEntero, drow("AnioVehiculo").ToString.ToEntero, CBool(drow("TieneUsado").ToString), @@ -2711,6 +2711,8 @@ Partial Class PV UpParametros.Update() End If + CargaFoliosGarantia() + If ObjCliente.GetSucursales(CveCliente) Then DdlSucursalCliente.DataSource = ObjCliente.DtResultados If ObjCliente.DtResultados.Rows.Count > 0 Then @@ -3000,7 +3002,7 @@ Partial Class PV 'SELECCIONA VENDEDOR DEL USUARIO CUANDO SEA VENTA NUEVA Y SIN CLIENTE If UsuarioActual.CveVendedor > 0 Then If CveVenta <= 0 AndAlso Not DdlVendedor.SelectedValue.ToEntero() > 0 Then DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString()) - If DdlVendedor.SelectedValue.ToEntero() > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then + If Not UsuarioActual.TienePermisoProceso(161) Then DdlVendedor.Enabled = False End If 'multiples vendedores visible @@ -4395,11 +4397,17 @@ Partial Class PV End Sub Private Sub DdlSubProyectoDatos_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlSubProyectoDatos.SelectedIndexChanged CambiaSucursalGeneral() + CargaFoliosGarantia() + UpAjuste.Update() + UpModalVenta.Update() + End Sub + + Private Sub CargaFoliosGarantia() If UsuarioActual.Empresa.Funcionalidad(531).ToString = "1" Then Dim ObjAcum As New ClsAcumuladores - If ObjAcum.FoliosGarantiaGet(-1, UsuarioActual.CveEmpresa, Estatus:=1, Area:=1) Then - DdlFolioGarantia.DataSource = ObjAcum.DtResultados.FiltraParametros($"CveSubProyecto={DdlSubProyectoDatos.SelectedValue}") + If ObjAcum.FoliosGarantiaGet(-1, UsuarioActual.CveEmpresa, Estatus:=1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), Area:=1) Then + DdlFolioGarantia.DataSource = ObjAcum.DtResultados End If ObjAcum.Dispose() DdlFolioGarantia.DataBind() @@ -7045,6 +7053,7 @@ Partial Class PV DdlBCIAjuste.Items.Clear() If DTBCIUsados IsNot Nothing AndAlso CveTamanio > 0 Then + DdlBCIAjuste.SelectedValue = Nothing DdlBCIAjuste.DataSource = DTBCIUsados.FiltraParametros($"CveTamaño={CveTamanio}") DdlBCIAjuste.DataBind() DdlBCIAjuste.Items.Insert(0, New ListItem("Seleccione", "-1")) @@ -7295,7 +7304,7 @@ Partial Class PV Protected Sub ChkAjuste_CheckedChanged(sender As Object, e As EventArgs) If ChkAjuste.Checked Then - + CargaFoliosGarantia() 'For Each Gvr As GridViewRow In GvRecepcionUsados.Rows ' If Gvr.RowType = DataControlRowType.DataRow Then ' Gvr.FCTextBox("TxtCantidad").Text = "" From 6646123501c2ae96eb53a24a0824e176c86cb89d Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 22 Feb 2022 18:46:21 -0700 Subject: [PATCH 7/8] CveVentaDetalle en movimiento de usado --- Inventarios/RecepcionUsados.aspx.vb | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/Inventarios/RecepcionUsados.aspx.vb b/Inventarios/RecepcionUsados.aspx.vb index 668f6b8b2..a0f2533fa 100644 --- a/Inventarios/RecepcionUsados.aspx.vb +++ b/Inventarios/RecepcionUsados.aspx.vb @@ -589,6 +589,7 @@ Partial Class Inventarios_RecepcionUsados dt.Columns.Add("TotalExtranjero", Type.GetType("System.Double")) dt.Columns.Add("CveTamaño", Type.GetType("System.Int32")) dt.Columns.Add("Tamaño", Type.GetType("System.String")) + dt.Columns.Add("CveVentaDetalle", Type.GetType("System.Int32")) CargaGVM(dt) DtMovimientos = dt.Clone @@ -1048,7 +1049,8 @@ Partial Class Inventarios_RecepcionUsados Protected Sub AddNew(CvePS As Integer, PS As String, CveUM As Integer, UM As String, Cantidad As Double, PU As Double, Serie As String, CodigoAF As String, Codigo As String, - CveAF As String, Observaciones As String, Lote As String, CveSeccionAlmacen As Integer, SeccionAlmacen As String, Tamaño As String, CveTamaño As Integer) + CveAF As String, Observaciones As String, Lote As String, CveSeccionAlmacen As Integer, SeccionAlmacen As String, Tamaño As String, CveTamaño As Integer, + Optional CveVentaDetalle As Integer = -1) 'If DdlAlmacen.SelectedValue.ToEntero <= 0 Then Alert("Seleccione un almacen", TipoMensaje.MsgAdvertencia) : RegistraScript("playsonidito('142608__autistic-lucario__error.wav')") : DdlProducto2.SelectedText = "" : Exit Sub @@ -1116,6 +1118,7 @@ Partial Class Inventarios_RecepcionUsados registro.Item("CveTamaño") = CveTamaño registro.Item("Tamaño") = Tamaño + registro.Item("CveVentaDetalle") = CveVentaDetalle DtMovimientos.Rows.Add(registro) CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' ")) @@ -1281,7 +1284,7 @@ Partial Class Inventarios_RecepcionUsados ImporteConcepto = Dr("PU").ToString.ToDecimal End If - If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then + If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveVentaDetalle:=Dr("CveVentaDetalle").ToString().ToEntero(), CveUsuarioModifico:=UsuarioActual.CveUsuario) Then Mensaje = "Error al guardar los movimientos" ErrorMovInv = True Exit For @@ -2269,6 +2272,18 @@ Partial Class Inventarios_RecepcionUsados DtUsados = ObjVentas.DtResultados.Copy() End If + 'RELACIONA LA VENTA DETALLA DE LA REMISION + If DtUsados IsNot Nothing Then + DtUsados.Columns.Add(New DataColumn("CveVentaDetalle", GetType(Integer))) + For Each RowUsado As DataRow In DtUsados.Rows + Dim CveVentaDetalle As Integer = Me.ObjFactura.DtDetalle.FiltroPrimeroValor("CveVentaDetalle", $"EsCargo = 1 AND Cantidad = {RowUsado("Cantidad")} AND CvePS = {RowUsado("CvePS")}").ToEntero() + If CveVentaDetalle > 0 Then + RowUsado("CveVentaDetalle") = CveVentaDetalle + End If + Next + + End If + Dim RecepcionValida As Boolean = True If ObjVentas.GetVentasUsados(ObjFactura.CveVenta, ObjFactura.CveSubProyecto, ObjFactura.Fecha, UsuarioActual.CveEmpresa, ServicioDomicilio:=ObjFactura.ServicioDomicilio) Then @@ -2334,7 +2349,9 @@ Partial Class Inventarios_RecepcionUsados 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) + Dim CveVentaDetalle = RowUsado("CveVentaDetalle").ToString().ToEntero() + + AddNew(CvePS, PS, CveUM, UM, Cantidad, PU, "", "-1", "-1", "-1", "", "", DdlAlmacen.SelectedValue.ToEntero, DdlAlmacen.SelectedItem.Text, "", CveTamaño, CveVentaDetalle:=CveVentaDetalle) Next End If From 86c8a22a51548aa9ad16b253dc73df23955139c0 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 22 Feb 2022 18:47:33 -0700 Subject: [PATCH 8/8] E140. Carga de vendedores por sucursal --- Ventas/Ventas.aspx.vb | 231 +++++++++++++++++++++++++++++------------- 1 file changed, 161 insertions(+), 70 deletions(-) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 368aaca72..fa6e0c35e 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -1930,6 +1930,31 @@ Partial Class Ventas ViewState("CveVendedorCliente") = value End Set End Property + Private Property CveVendedorClienteSucursal As Integer + Get + Return If(IsNothing(ViewState("CveVendedorClienteSucursal")), -1, ViewState("CveVendedorClienteSucursal")).ToString().ToEntero + End Get + Set(value As Integer) + ViewState("CveVendedorClienteSucursal") = value + End Set + End Property + + Private Property CveVendedorContrato As Integer + Get + Return If(IsNothing(ViewState("CveVendedorContrato")), -1, ViewState("CveVendedorContrato")).ToString().ToEntero + End Get + Set(value As Integer) + ViewState("CveVendedorContrato") = value + End Set + End Property + Private Property CveVendedorEmpresaCRM As Integer + Get + Return If(IsNothing(ViewState("CveVendedorEmpresaCRM")), -1, ViewState("CveVendedorEmpresaCRM")).ToString().ToEntero + End Get + Set(value As Integer) + ViewState("CveVendedorEmpresaCRM") = value + End Set + End Property Private Property DiasCredito As Integer Get Return ViewState("DiasCredito").ToString().ToEntero() @@ -2203,6 +2228,9 @@ Partial Class Ventas ViewState("CvePrecioListaCliente") = 0 Me.CveVendedorVenta = -1 Me.CveVendedorCliente = -1 + Me.CveVendedorClienteSucursal = -1 + Me.CveVendedorContrato = -1 + Me.CveVendedorEmpresaCRM = -1 Me.EsGarantia = False idCuentaContabilizacion = 1 CveEmpresaCRM = 0 @@ -2883,16 +2911,16 @@ Partial Class Ventas If CveVenta < 1 Then CargaFolios() '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 + '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 If UsuarioActual.Empresa.Funcionalidad(301).ToEntero() > 0 Then TxtFecha.Enabled = False @@ -3632,6 +3660,8 @@ Partial Class Ventas NumeroContrato = DrContrato("NumeroContrato").ToString() DescripcionContrato = DrContrato("DescripcionContrato").ToString() NumeroLicitacion = DrContrato("NumeroLicitacion").ToString().Trim + + Me.CveVendedorContrato = DrContrato("CveVendedor").ToString().ToEntero() DdlVendedor.SelectedValueExist(DrContrato("CveVendedor")) If DrContrato("CveSucursalCliente").ToString().ToEntero() > 0 Then @@ -4702,14 +4732,14 @@ Partial Class Ventas Me.CveVendedorVenta = DbRowVenta("CveVendedor").ToString().ToEntero() 'SI YA TIENE UN VALOR ASIGNADO SELECCIONA EL GUARDADO - If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso Me.CveVenta > 0 AndAlso Me.CveVendedorVenta > 0 Then - Dim Vendedor = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=1).FiltroPrimeroValor("Vendedor", String.Format("CveVendedor = {0}", Me.CveVendedorVenta)) - 'SI NO ENCUENTRA BUSCA EN LOS VENDEDORES DEL PV - If String.IsNullOrEmpty(Vendedor) Then - Vendedor = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=4).FiltroPrimeroValor("Vendedor", String.Format("CveVendedor = {0}", Me.CveVendedorVenta)) - End If - DdlVendedor.SelectedValueExistInsert(Me.CveVendedorVenta, Vendedor) - End If + 'If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso Me.CveVenta > 0 AndAlso Me.CveVendedorVenta > 0 Then + ' Dim Vendedor = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=1).FiltroPrimeroValor("Vendedor", String.Format("CveVendedor = {0}", Me.CveVendedorVenta)) + ' 'SI NO ENCUENTRA BUSCA EN LOS VENDEDORES DEL PV + ' If String.IsNullOrEmpty(Vendedor) Then + ' Vendedor = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=4).FiltroPrimeroValor("Vendedor", String.Format("CveVendedor = {0}", Me.CveVendedorVenta)) + ' End If + ' DdlVendedor.SelectedValueExistInsert(Me.CveVendedorVenta, Vendedor) + 'End If If DdlFormaPago33.SelectedValue <> DbRowVenta("CveFormaPago33").ToString() And DbRowVenta("CveFormaPago33").ToString() <> "" Then 'sino está seleccionada la asginada la debe de cargar @@ -5546,6 +5576,13 @@ Partial Class Ventas 'TmpDT.Columns.Add("EntregaDirecta", GetType(Integer)) 'TmpDT.Columns.Add("CveMovimientoDetallePedido", GetType(Integer)) ''TmpDT.Columns.Add("CantidadFacturadaRem", GetType(Decimal)) + + ObjVentas.DtResultados.Columns.Add("TieneProntoPago", GetType(String)) + ObjVentas.DtResultados.Columns.Add("ImporteProntoPago", GetType(Decimal)) + + ObjVentas.DtResultados.Columns("TieneProntoPago").DefaultValue = "No" + ObjVentas.DtResultados.Columns("ImporteProntoPago").DefaultValue = 0 + GvPS.DataSource = ObjVentas.DtResultados GvPS.DataBind() End If @@ -5867,6 +5904,7 @@ Partial Class Ventas UpEmpresaCRM.Visible = True End If + Me.CveVendedorEmpresaCRM = ObjCRM.DtResultados.Rows(0)("CveVendedorAsignado").ToString().ToEntero() DdlVendedor.SelectedValueExist(ObjCRM.DtResultados.Rows(0)("CveVendedorAsignado").ToString()) DdlVendedor.Enabled = False @@ -6137,18 +6175,18 @@ Partial Class Ventas TxtFordGSDB.Text = ObjCliente.Ford_GSDB If ObjCliente.DtResultados(0)("CveVendedor").ToString().ToEntero() > 0 Then - DdlVendedor.SelectedValueExist(ObjCliente.DtResultados(0)("CveVendedor").ToString().ToEntero()) CveVendedorCliente = ObjCliente.DtResultados(0)("CveVendedor").ToString().ToEntero() End If 'SI EL CLIENTE NO TIENE VENDEDOR SELECCIONAMOS EL DEL USUARIO - If Not DdlVendedor.SelectedValue.ToEntero() > 0 Then - DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString()) - End If + 'If Not DdlVendedor.SelectedValue.ToEntero() > 0 Then + ' DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString()) + 'End If - If DdlVendedor.SelectedValue.ToEntero() > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then - DdlVendedor.Enabled = False - End If + 'If DdlVendedor.SelectedValue.ToEntero() > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then + ' DdlVendedor.Enabled = False + 'End If + CargaVendedores() UpFacturar.Update() @@ -6370,10 +6408,6 @@ Partial Class Ventas End If BloqueaCondiconesPago() DeshabilitarAplicarNotaDeCredito(LblRFC.Text) - - If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then - CargaVendedoresSubProyectos() - End If End Sub Private Sub CargaRelacionadasPendientes() @@ -6946,7 +6980,7 @@ Partial Class Ventas ViewState("CliPais") = ObjCliente.DtResultados.Rows(0)("Pais").ToString() ViewState("CliNoExt") = ObjCliente.DtResultados.Rows(0)("NoExt").ToString() ViewState("CliNoInt") = ObjCliente.DtResultados.Rows(0)("NoInt").ToString() - DdlVendedor.SelectedValueExist(ObjCliente.DtResultados.Rows(0)("CveVendedor").ToString()) + Me.CveVendedorClienteSucursal = ObjCliente.DtResultados.Rows(0)("CveVendedor").ToString().ToEntero() ViewState("CveClienteSucursal") = ObjCliente.DtResultados(0)("CveClienteSucursal").ToString() ViewState("CliCorreoCot") = ObjCliente.DtResultados.Rows(0)("CorreoCotizacion").ToString() @@ -7014,7 +7048,8 @@ Partial Class Ventas LblEstado.Text = ObjCliente.Estado LblCP.Text = ObjCliente.CP LblTelefono.Text = ObjCliente.Telefono - DdlVendedor.SelectedValueExist(ObjCliente.DtResultados.Rows(0)("CveVendedor").ToString()) + Me.CveVendedorClienteSucursal = -1 + Me.CveVendedorCliente = ObjCliente.DtResultados.Rows(0)("CveVendedor").ToString().ToEntero() ViewState("CliNoExt") = ObjCliente.NoExt ViewState("CliNoInt") = ObjCliente.NoInt PlazoCobranza = ObjCliente.PlazoCobranza @@ -7035,10 +7070,12 @@ Partial Class Ventas End If End If - 'SI LA SUCURSAL DEL CLIENTE NO TIENE VENDEDOR SELECCIONAMOS EL DEL USUARIO - If Not DdlVendedor.SelectedValue.ToEntero() > 0 Then - DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString()) - End If + ''SI LA SUCURSAL DEL CLIENTE NO TIENE VENDEDOR SELECCIONAMOS EL DEL USUARIO + 'If Not DdlVendedor.SelectedValue.ToEntero() > 0 Then + ' DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString()) + 'End If + + CargaVendedores() 'SI LA VENTA YA ESTA REGISTRADA NO DEBE HABILITAR ACCIONES If CveVenta <= 0 Then @@ -13634,7 +13671,7 @@ Partial Class Ventas Case 30 'PAGO - BANCOS - If DtPagos IsNot Nothing AndAlso DtPagos.Rows.Count > 0 Then + If DtPagos IsNot Nothing AndAlso DtPagos.Rows.Count > 0 AndAlso ObjFactura.TipoDocto <> "Rem" Then For Each DrPago As DataRow In DtPagos.Rows CveIEPago = -1 @@ -17004,9 +17041,7 @@ Partial Class Ventas End If ObjSubProyectos.Dispose() - If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then - CargaVendedoresSubProyectos() - End If + CargaVendedores() UpDetalle.Update() End Sub @@ -17189,43 +17224,93 @@ Partial Class Ventas UpParametros.Update() End Sub Private Sub CargaVendedores() + Dim CveVendedorActual As Integer = 0 - Dim CveVendedorActual = DdlVendedor.SelectedValue.ToEntero() - - If Not CveVendedorActual > 0 AndAlso Me.CveVendedorCliente > 0 Then - DdlVendedor.SelectedValueExist(Me.CveVendedorCliente) - CveVendedorActual = Me.CveVendedorCliente - End If + Dim EsVentaNueva As Boolean = (Me.CveVenta <= 0 OrElse Me.EsCreaApartirDe OrElse NuevaFactura = 1) DdlVendedor.Items.Clear() + DdlVendedor.SelectedValue = Nothing + + DdlVendedorSucursal.Items.Clear() + DdlVendedorSucursal.SelectedValue = Nothing + If UsuarioActual.Empresa.Funcionalidad(302) = "1" AndAlso DdlSubProyectoDatos.SelectedValue.ToEntero() > 0 Then - DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveSubProyecto = {0}", DdlSubProyectoDatos.SelectedValue)).FiltraParametros("VendedorTipo = 1") + DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("(CveSubProyecto IS NULL OR CveSubProyecto = {0})", DdlSubProyectoDatos.SelectedValue)).FiltraParametros("VendedorTipo = 1") Else DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltraParametros("VendedorTipo = 1") End If - DdlVendedor.SelectedValue = "0" - DdlVendedor.Items.Insert(0, New ListItem("Sin Asignar", "0")) - - If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then - CargaVendedoresSubProyectos() - End If - DdlVendedorSucursal.DataSource = DdlVendedor.DataSource DdlVendedor.DataBind() DdlVendedorSucursal.DataBind() - DdlVendedor.SelectedValueExist(CveVendedorActual) + DdlVendedor.Items.Insert(0, New ListItem("Sin Asignar")) + DdlVendedorSucursal.Items.Insert(0, New ListItem("Sin Asignar")) - If Not DdlVendedor.SelectedValue.ToEntero() > 0 Then - DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString()) + DdlVendedor.SelectedValueExist("0") + DdlVendedorSucursal.SelectedValueExist("0") + + 'SI NO ES VENTA ACTUAL + If EsVentaNueva Then + 'PRIMERO TOMA EL VENDEDOR DEL USUARIO + If UsuarioActual.CveVendedor > 0 Then + CveVendedorActual = UsuarioActual.CveVendedor + End If + 'DAR PREFERENCIA AL VENDEDOR ASIGNADO AL CLIENTE + If Me.CveVendedorCliente > 0 Then + CveVendedorActual = Me.CveVendedorCliente + End If + 'DAR PREFERENCIA AL VENDEDOR ASIGNADO LA SUCURSAL CLIENTE + If Me.CveVendedorClienteSucursal > 0 Then + CveVendedorActual = Me.CveVendedorClienteSucursal + End If + 'SI TIENE CONTRATO TOMA EL DEL CONTRATO + If Me.CveVendedorContrato > 0 Then + CveVendedorActual = Me.CveVendedorContrato + End If + 'SI ES EMPRESA CRM TOMA DE AQUI + If Me.CveVendedorEmpresaCRM > 0 Then + CveVendedorActual = Me.CveVendedorEmpresaCRM + End If + Else + 'SI ES VENTA EXISTENTE TOMA EL DE LA VENTA + If Me.CveVendedorVenta > 0 Then + CveVendedorActual = Me.CveVendedorVenta + End If End If - If DdlVendedor.SelectedValue.ToEntero() > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then - DdlVendedor.Enabled = False + If CveVendedorActual > 0 Then + Dim VendedorActual As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Vendedor", $"CveVendedor = {CveVendedorActual}") + 'SI NO ENCUENTRA BUSCA EN LOS VENDEDORES DEL PV + If String.IsNullOrEmpty(VendedorActual) Then + VendedorActual = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=4).FiltroPrimeroValor("Vendedor", String.Format("CveVendedor = {0}", CveVendedorActual)) + End If + + If String.IsNullOrEmpty(VendedorActual) Then + DdlVendedor.SelectedValueExist(CveVendedorActual) + Else + DdlVendedor.SelectedValueExistInsert(CveVendedorActual, VendedorActual) + End If End If + If UsuarioActual.CveEmpresa = 140 Then + If Not UsuarioActual.TienePermisoProceso(161) Then + DdlVendedor.Enabled = False + End If + Else + If DdlVendedor.SelectedValue.ToEntero() > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then + DdlVendedor.Enabled = False + End If + End If + + + 'multiples vendedores visible + If UsuarioActual.TienePermisoProceso(153) Then + DdlVendedor.Enabled = True + End If + + UPPVentas.Update() 'TxtCorreoNotificaciones.Text = GlobalDTUsuarios(UsuarioActual.CveUsuario).FiltroPrimeroValor("Correo") End Sub #End Region @@ -33644,23 +33729,29 @@ Partial Class Ventas UpModalSolicitud.Update() End Sub - Private Sub CargaVendedoresSubProyectos() + 'Private Sub CargaVendedoresSubProyectos() - Dim DtVendedoresSucursales = GlobalDTClientesVendedoresSubProyectos(UsuarioActual.CveEmpresa, CveCliente:=Me.CveCliente, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero()) + ' DdlVendedor.Items.Clear() + ' DdlVendedor.SelectedValue = Nothing - If DtVendedoresSucursales IsNot Nothing AndAlso DtVendedoresSucursales.Rows.Count > 0 Then - DdlVendedor.Items.Clear() - DdlVendedor.SelectedValue = Nothing + ' Dim DtVendedoresSucursales = GlobalDTClientesVendedoresSubProyectos(UsuarioActual.CveEmpresa, CveCliente:=Me.CveCliente, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero()) - DdlVendedor.DataSource = DtVendedoresSucursales - DdlVendedor.DataBind() - DdlVendedor.Items.Insert(0, New ListItem("Sin Asignar", "0")) + ' If DtVendedoresSucursales IsNot Nothing AndAlso DtVendedoresSucursales.Rows.Count > 0 Then + ' DdlVendedor.DataSource = DtVendedoresSucursales + ' DtVendedoresSucursales.Dispose() + ' Else + ' If UsuarioActual.Empresa.Funcionalidad(302) = "1" AndAlso DdlSubProyectoDatos.SelectedValue.ToEntero() > 0 Then + ' DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveSubProyecto = {0}", DdlSubProyectoDatos.SelectedValue)).FiltraParametros("VendedorTipo = 1") + ' Else + ' DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltraParametros("VendedorTipo = 1") + ' End If + ' End If - DtVendedoresSucursales.Dispose() - End If + ' DdlVendedor.DataBind() + ' DdlVendedor.Items.Insert(0, New ListItem("Sin Asignar", "0")) - UpParametros.Update() - End Sub + ' UpParametros.Update() + 'End Sub Public Class MAnticipoRelacionado Public Property CveVenta As Integer