From 7d74166280182c69f4dab98596df028a9f26da81 Mon Sep 17 00:00:00 2001 From: Raul Pimienta Date: Mon, 4 Nov 2019 21:10:07 -0700 Subject: [PATCH 01/12] Dolares en tipo de cambio del pago --- Ventas/RepRecuperacion.aspx | 2 +- Ventas/RepRecuperacionDetalle.aspx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Ventas/RepRecuperacion.aspx b/Ventas/RepRecuperacion.aspx index c2a2a59ad..906d0f35a 100644 --- a/Ventas/RepRecuperacion.aspx +++ b/Ventas/RepRecuperacion.aspx @@ -207,7 +207,7 @@ - +
diff --git a/Ventas/RepRecuperacionDetalle.aspx b/Ventas/RepRecuperacionDetalle.aspx index 453619689..6d0e2e6fd 100644 --- a/Ventas/RepRecuperacionDetalle.aspx +++ b/Ventas/RepRecuperacionDetalle.aspx @@ -219,7 +219,7 @@ - +
From 06c98f6c9b35ac280fcb6624620d0cca00a43b1c Mon Sep 17 00:00:00 2001 From: janeth arvizu Date: Tue, 5 Nov 2019 10:43:42 -0700 Subject: [PATCH 02/12] Especifica feria/cambio --- Ventas/PV.aspx | 4 +- Ventas/Ventas.aspx | 92 +++++++++++++++++++++++++--------------------- 2 files changed, 52 insertions(+), 44 deletions(-) diff --git a/Ventas/PV.aspx b/Ventas/PV.aspx index 5075a5c9c..266060f25 100644 --- a/Ventas/PV.aspx +++ b/Ventas/PV.aspx @@ -3273,8 +3273,8 @@ var totalVenta = ToDouble($get('TxtTotal').value); - if (totalEfectivo > totalVenta) { - $get("TxtCambio").value = FormatoNumero(totalEfectivo - totalVenta); + if (total > totalVenta) { + $get("TxtCambio").value = FormatoNumero(total - totalVenta); } else { $get("TxtCambio").value = "0.00"; } diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx index f8ac7c2d6..fcf1ed714 100644 --- a/Ventas/Ventas.aspx +++ b/Ventas/Ventas.aspx @@ -2952,26 +2952,24 @@
-
+
-
+
MSI 3M 6M 9M 12M - + <%-- --%> - -
-
+
@@ -3004,8 +3002,8 @@
- -
+ +
@@ -3022,11 +3020,11 @@
-
+
- + Otros Credito Debito @@ -3040,12 +3038,12 @@
-
- +
+
- +
Meses @@ -3053,13 +3051,13 @@ 6M 9M 12M - +
- +
@@ -3077,9 +3075,20 @@

+
+
+
+ +
+ $ + + +

+
+
- + @@ -3434,7 +3443,7 @@
- +
@@ -5763,7 +5772,7 @@
-
+
@@ -5812,13 +5821,13 @@
- +
$ - +
@@ -5841,7 +5850,7 @@
@@ -5954,7 +5963,7 @@ " style="display: inline-block; margin-right: -20px; width: 150px;" /> " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info">
-
+
@@ -6370,8 +6379,7 @@ $get('TxtTotalGv').value = FormatoNumero(TotalImportes, 2); $get('TxtNCImporte').value = FormatoNumero(total, 2); - if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') - { + if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') { CompararNC(); } @@ -6400,8 +6408,7 @@ TxtImporte.value = ""; } - if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') - { + if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') { CompararNC(); } } @@ -6413,13 +6420,12 @@ TxtImporte.value = ""; } - if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') - { + if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') { CompararNC(); } } - function LimitaCantidadRNCMasivo(TxtImporte,Saldo, Chk) { + function LimitaCantidadRNCMasivo(TxtImporte, Saldo, Chk) { var ImporteNuevo = TxtImporte.value; Chk.checked = true; @@ -6432,8 +6438,7 @@ TxtImporte.value = FormatoNumero(ImporteNuevo, 2); } - if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') - { + if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') { CompararNC(); } } @@ -6476,8 +6481,7 @@ TxtTotal.value = FormatoNumero(TotalConPorcentaje, 2); - if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') - { + if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') { CompararNC(); } } @@ -6812,15 +6816,20 @@ var TotalOtrosContado = 0; - try{ + try { if ($('#DdlOtroFormaPago').val() != "-1") { TotalOtrosContado = ToDouble($get("TxtImporteOtrosContado").value); - } - } catch (e) {} - - + } + } catch (e) { } var total = totalEfectivo + totalCredito + totalDebito + totalCheque + totalTransferencia + TotalOtrosContado; + var totalVenta = ToDouble($get('TxtTotal').value); + + if (total > totalVenta) { + $get("TxtCambio").value = FormatoNumero(total - totalVenta); + } else { + $get("TxtCambio").value = "0.00"; + } $get("TxtImporteContado").value = total; } @@ -7431,7 +7440,7 @@ } } - + function showDivEC() { $('#<%= TxtRFCCliente.ClientID %>').val(''); $('#<%= TxtNombreCliente.ClientID %>').val(''); @@ -7463,7 +7472,7 @@ document.getElementById('<%= TxtNCImporte.ClientID %>').style.border = "2px solid #04B431"; document.getElementById('<%= TxtImportesRemisionesNC.ClientID %>').style.color = ""; document.getElementById('<%= TxtNCImporte.ClientID %>').style.color = ""; - + } else { @@ -7475,8 +7484,7 @@ } function CerrarModalRemNC() { - if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') - { + if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1') { CompararNC(); } $('#ModalAplicarRemisionesNC').modal('hide'); From aa5706fbcb12e33cd4885a0408eea85fbb399292 Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Tue, 5 Nov 2019 13:44:20 -0700 Subject: [PATCH 03/12] modificacion en el formulario de materiales al solicitar en la orden de servicio ERROR: al volver a guardar los materiales con la modal se volveran a guardar los materiales ya solicitados --- OS/OrdenesServicios.aspx | 12 +--- OS/OrdenesServicios.aspx.vb | 111 ++++++++++++++++++++++++------------ 2 files changed, 77 insertions(+), 46 deletions(-) diff --git a/OS/OrdenesServicios.aspx b/OS/OrdenesServicios.aspx index 610f5a755..c55ad3159 100644 --- a/OS/OrdenesServicios.aspx +++ b/OS/OrdenesServicios.aspx @@ -659,16 +659,8 @@ - - - - - - - - - - + + diff --git a/OS/OrdenesServicios.aspx.vb b/OS/OrdenesServicios.aspx.vb index 79365770f..5797aae3b 100644 --- a/OS/OrdenesServicios.aspx.vb +++ b/OS/OrdenesServicios.aspx.vb @@ -286,8 +286,8 @@ Partial Class OS_OrdenesServicios CargaTiposOrden() CargaTecnico() CargaPS(-1, DdlPSDetalle) - CargaPsMateriales(-1, DdlPS) - CargaClasificaciones() + CargaPsMateriales() + 'CargaClasificaciones() CargaPSCaracteristicasOpciones() CargaCuentasCaracteristicas() CargaAlmacen() @@ -499,8 +499,19 @@ Partial Class OS_OrdenesServicios 'End If If TipoEstatus = 3 Then - DisableAll() + 'DisableAll() + 'If SeFacturara = "True" Then + ' HplFacturar.Visible = True + ' If ObjOS.CveCotizacion > 0 Then + ' HplFacturar.NavigateUrl = String.Format("/Ventas/Ventas.aspx?CveVenta={0}", ObjOS.CveCotizacion) + ' Else + ' HplFacturar.NavigateUrl = String.Format("/Ventas/Ventas.aspx?CveOS={0}", CveOS) + ' End If + 'End If + + ElseIf TipoEstatus = 4 Then + 'DisableAll() If SeFacturara = "True" Then HplFacturar.Visible = True If ObjOS.CveCotizacion > 0 Then @@ -509,9 +520,6 @@ Partial Class OS_OrdenesServicios HplFacturar.NavigateUrl = String.Format("/Ventas/Ventas.aspx?CveOS={0}", CveOS) End If End If - - ElseIf TipoEstatus = 4 Then - DisableAll() End If DivCliente.Attributes.Add("class", "col-md-8") @@ -707,12 +715,27 @@ Partial Class OS_OrdenesServicios Objeto.Items.Insert(0, New ListItem("*** Actualizar listado de Productos o Servicios ***", "-2")) Objeto.Items.Insert(0, New ListItem("Seleccione el Servicio", "-1")) End Sub - Private Sub CargaPsMateriales(CveClasificacion As Integer, Objeto As DropDownList) - Objeto.Items.Clear() - Objeto.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=CveClasificacion, Estatus:=1) - Objeto.DataBind() - Objeto.Items.Insert(0, New ListItem("*** Actualizar listado de Productos o Servicios ***", "-2")) - Objeto.Items.Insert(0, New ListItem("Seleccione el Producto", "-1")) + Private Sub CargaPsMateriales() + 'Objeto.Items.Clear() + 'Objeto.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=CveClasificacion, Estatus:=1) + 'Objeto.DataBind() + 'Objeto.Items.Insert(0, New ListItem("*** Actualizar listado de Productos o Servicios ***", "-2")) + 'Objeto.Items.Insert(0, New ListItem("Seleccione el Producto", "-1")) + 'Carga Productos + + DdlPS.setEsWebService(UsuarioActual.Empresa.Funcionalidad(105) = "1") + + If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then + 'DdlPS.ddlWS.Attributes.Add("data-cveclasificacion", DdlClasificacion.SelectedValue) + DdlPS.SelectedText = "" + DdlPS.SelectedValue = "-1" + Else + DdlPS.ddl.Items.Clear() + 'DdlPS.ddl.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=DdlClasificacion.SelectedValue.ToEntero) + DdlPS.ddl.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa) + DdlPS.ddl.DataBind() + DdlPS.ddl.Items.Insert(0, New ListItem("Seleccione el Producto", "-1")) + End If End Sub Private Sub CargaCliente(CveCliente As Integer, Optional Estatus As Integer = 1) Dim ObjCliente As New ClsClientes() @@ -847,11 +870,11 @@ Partial Class OS_OrdenesServicios GvPS.DataSource = TmpDT GvPS.DataBind() End Sub - Private Sub CargaClasificaciones() - DdlClasificacion.DataSource = GlobalDTClasificaciones.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) - DdlClasificacion.DataBind() - '' DdlClasificacion.Items.Insert(0, New ListItem("Seleccione la Clasificación", "-1")) - End Sub + 'Private Sub CargaClasificaciones() + ' DdlClasificacion.DataSource = GlobalDTClasificaciones.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) + ' DdlClasificacion.DataBind() + ' '' DdlClasificacion.Items.Insert(0, New ListItem("Seleccione la Clasificación", "-1")) + 'End Sub Private Sub CargaFolios(CveSub As Integer) Dim ObjFolios As New ClsGralFolios() If ObjFolios.GetFolios() Then @@ -2101,13 +2124,13 @@ Partial Class OS_OrdenesServicios UpAddMateriales.Update() RegistraScript(String.Format("$('#{0}').modal();", "DivGvMateriales")) End Sub - Private Sub DdlClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlClasificacion.SelectedIndexChanged - CargaPsMateriales(DdlClasificacion.SelectedValue.ToEntero, DdlPS) - UpAddMateriales.Update() - End Sub - Private Sub DdlPS_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlPS.SelectedIndexChanged + 'Private Sub DdlClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlClasificacion.SelectedIndexChanged + ' CargaPsMateriales() + ' UpAddMateriales.Update() + 'End Sub + Private Sub DdlPS_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlPS.selectedindexchange If CveCliente > 0 OrElse DdlPS.SelectedValue = "-2" Then - If DdlPS.SelectedIndex > 1 Then + If DdlPS.SelectedValue.ToEntero > 1 Then Dim drPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("") If drPS IsNot Nothing Then @@ -2116,25 +2139,31 @@ Partial Class OS_OrdenesServicios DdlUnidadMedidaM.DataBind() DdlUnidadMedidaM.SelectedValueExist(drPS("CveUnidadMedida").ToString) - If DdlClasificacion.SelectedIndex = 0 Then - If drPS("CveClasificacion").ToString IsNot Nothing Then - DdlClasificacion.SelectedValueExist(drPS("CveClasificacion").ToString) - Else + 'If DdlClasificacion.SelectedIndex = 0 Then + ' If drPS("CveClasificacion").ToString IsNot Nothing Then + ' DdlClasificacion.SelectedValueExist(drPS("CveClasificacion").ToString) + ' Else - Alert("El Productos/Servicio no tiene asignada una Clasificación.") - End If - End If + ' Alert("El Productos/Servicio no tiene asignada una Clasificación.") + ' End If + 'End If End If End If End If End Sub Private Sub LbAgregarMaterial_Click(sender As Object, e As EventArgs) Handles LbAgregarMaterial.Click + Dim ObjPS As New ClsProductosServicios + Dim Clasificacion As String = "" + Dim CveClasificacion As Integer + If ObjPS.GetPS(DdlPS.SelectedValue.ToEntero, -1, UsuarioActual.CveEmpresa) Then + Clasificacion = ObjPS.DtResultados.Rows(0)("Clasificacion").ToString + CveClasificacion = ObjPS.CveClasificacion + End If Dim Consecutivo As Integer = TmpDTMaterialesDetalle.Rows.Count + 1 - AddMaterial(CveOsDetalle, DdlClasificacion.SelectedValue.ToEntero, TxtCantidadM.Text.ToEntero, DdlClasificacion.SelectedItem.Text, DdlPS.SelectedValue.ToEntero, DdlPS.SelectedItem.Text, DdlUnidadMedidaM.SelectedValue.ToEntero, DdlUnidadMedidaM.SelectedItem.Text, Consecutivo) + AddMaterial(CveOsDetalle, CveClasificacion, TxtCantidadM.Text.ToEntero, Clasificacion, + DdlPS.SelectedValue.ToEntero, DdlPS.SelectedText, DdlUnidadMedidaM.SelectedValue.ToEntero, DdlUnidadMedidaM.SelectedItem.Text, Consecutivo) TxtCantidadM.Text = "" - DdlClasificacion.SelectedIndex = 0 - CargaClasificaciones() - CargaPsMateriales(-1, DdlPS) + CargaPsMateriales() End Sub Private Sub AddMaterial(CveOSDetalle As Integer, CveClasificacion As Integer, Cantidad As Integer, Clasificacion As String, CvePS As Integer, PS As String, CveUM As Integer, UM As String, Consecutivo As Integer) @@ -2188,6 +2217,8 @@ Partial Class OS_OrdenesServicios End Sub Private Sub BtnGuardarMateriales_Click(sender As Object, e As EventArgs) Handles BtnGuardarMateriales.Click 'VALIDA ALMACEN ORIGEN Y DESTINO + Dim ErrorEncontrado As New StringBuilder + If DdlAlmacenOrigen.SelectedValue = DdlAlmacenDestino.SelectedValue Then Alert("No se puede realizar un traspaso entre el mismo almacén.", TipoMensaje.MsgAdvertencia) Exit Sub @@ -2235,16 +2266,25 @@ Partial Class OS_OrdenesServicios End If If Not TieneError Then + Dim ObjOS As New ClsOS For Each Row As DataRow In TmpDTMaterialesDetalle.Rows Dim CveUM As Integer = Row("CveUM").ToString.ToEntero Dim CvePS As Integer = Row("CvePS").ToString.ToEntero Dim Cantidad As Integer = Row("Cantidad").ToString.ToEntero + Dim CveClasificacion As Integer = Row("CveClasificacion").ToString.ToEntero + If Not ObjOS.AddUpdateDetalleMateriales(-1, CveOsDetalle, Cantidad, CveUM, CveClasificacion, CvePS, True) Then + TieneError = True + ErrorEncontrado.AppendFormat("Ocurrió un Error al agregar los materiales.
") + Exit For + End If If Not ObjInventario.AddTrasladoSolicitudDetalle(CveTraspasoSolicitud, Cantidad, CveUM, CvePS, 0, "", -1) Then + ErrorEncontrado.AppendFormat("Ocurrió un Error al guardar el traspaso.") TieneError = True Exit For End If Next + ObjOS.Dispose() End If @@ -2259,7 +2299,7 @@ Partial Class OS_OrdenesServicios Alert($"El Traspaso se guardó correctamente con el folio #: {Folio}.", TipoMensaje.MsgInformacion, $"document.location.href=""/Inventarios/TrasladoSolicitud.aspx?CveTraspasoSolicitud={CveTraspasoSolicitud}""") Else ObjInventario.RollBack() - Alert("Ocurrió un Error al guardar el traspaso.", TipoMensaje.MsgError) + Alert(ErrorEncontrado.ToString, TipoMensaje.MsgError) End If ObjInventario.Dispose() @@ -2430,7 +2470,6 @@ Partial Class OS_OrdenesServicios TmpDTSolicitarMaterial.Columns.Add("UM", GetType(String)) End Sub Public Sub CargaAlmacen() - Dim tablaAuxiliar As DataTable = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1) DdlAlmacenOrigen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros("CveTipoAlmacen IN (1)") 'GlobalDTAlmacen(UsuarioActual.CveEmpresa) DdlAlmacenOrigen.DataBind() DdlAlmacenOrigen.Items.Insert(0, New ListItem("Seleccione", "-1")) From 3f5ec13536d26162677f533379928d0f052712f8 Mon Sep 17 00:00:00 2001 From: janeth arvizu Date: Tue, 5 Nov 2019 14:31:55 -0700 Subject: [PATCH 04/12] Especificar feria/cambio --- Ventas/Ventas.aspx | 4 ++-- Ventas/Ventas.aspx.vb | 42 +++++++++++++++++++++++++----------------- 2 files changed, 27 insertions(+), 19 deletions(-) diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx index fcf1ed714..564021c75 100644 --- a/Ventas/Ventas.aspx +++ b/Ventas/Ventas.aspx @@ -3070,8 +3070,8 @@ - - +<%-- + --%>

diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 587fc5346..7b9a65473 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -3383,7 +3383,7 @@ Partial Class Ventas GvPS.DataBind() 'JJMQ 20160506: Se agrego para la validacion de pago de contado. - CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") + 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") UpContado.Update() UpPS.Update() @@ -4102,7 +4102,7 @@ Partial Class Ventas CalculaTotalesVenta(False) 'JJMQ 20160506: Se agrego para la validacion de pago de contado. - CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") + 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") 'CARGA ANTICIPOS If Not (CveRemision > 0 Or CveCotizacion > 0) Then @@ -4333,7 +4333,7 @@ Partial Class Ventas HdnSubTotalDescuestos.Value = (TxtSubTotal.Text.Replace(",", "").ToDouble - LblDescuentos.Text.Replace(",", "").ToDouble - LblAmortizacion.Text.Trim.Replace(",", "").ToDouble - TxtRetISR.Text.Replace(",", "").ToDouble).FormatoNumero(2) 'JJMQ 20160506: Se agrego para la validacion de pago de contado. - CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") + 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") If DdlVendedor.SelectedValue.ToEntero > 0 AndAlso Not UsuarioActual.TienePermisoProceso(161) Then DdlVendedor.Enabled = False @@ -5865,7 +5865,7 @@ Partial Class Ventas 'JJMQ 20160506: Se agrego para la validacion de pago de contado. - CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") + 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") UpPS.Update() UpContado.Update() @@ -5888,7 +5888,7 @@ Partial Class Ventas Alert("Eliminado Correctamente.", TipoMensaje.MsgInformacion) 'JJMQ 20160506: Se agrego para la validacion de pago de contado. - CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") + 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") UpContado.Update() End Sub @@ -6997,6 +6997,10 @@ Partial Class Ventas MensajeAlert.AppendFormat("

Se generó una Nota de crédito Folio: {0} amortizando el anticipo
", ObjFacturaDevolucion.Folio) End If + If RBLPago.SelectedValue.ToEntero = 2 And TxtCambio.Text.ToDecimal > 0 Then + MensajeAlert.AppendFormat("

Su cambio es de ${0}
", TxtCambio.Text.ToDecimal.FormatoNumero(2)) + End If + 'MUESTA ALERT OK ' si es elrol 1165-Ventas,EMp:80, o la empresa 119, recarga ventas, para seguir registrando-. Dim Liga = If(UsuarioActual.CveRol = 1165 Or UsuarioActual.CveEmpresa = 119, "document.location.href=""/Ventas/Ventas.aspx?CveVenta=-1"";", If(CveEmpresaCRM > 0, $"document.location.href=""/CRM/EmpresaCRM.aspx?CveEmpresaCRM={CveEmpresaCRM}"";", $"document.location.href=""/Ventas/Clientes.aspx?CveCliente={CveCliente}&Opt=3"";")) @@ -10300,6 +10304,10 @@ Partial Class Ventas Exit For End If + If DrPago("CveTipoMovimiento").ToString.ToEntero = 8 Then '13 + DrPago("Importe") = DrPago("Importe").ToString.ToDecimal - TxtCambio.Text.ToDecimal + End If + CveIEPago = ObjBancos.AddBancos_IE(DrPago("CveCuenta").ToString.ToEntero, DrPago("CveTipoMovimiento").ToString.ToEntero, Fecha, FolioIE.ToString, String.Format("PAGO: {0}", TxtFolio.Text), DrPago("Importe").ToString.ToDouble, DdlMoneda.SelectedValue.ToEntero, tipoCambio, DrPago("Observaciones").ToString, "", False, False, -1, ObjFactura.CvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCorte:=CveCorte, MesesSinIntereses:=DrPago("MesesSinIntereses").ToString.ToEntero) If CveIEPago > 0 Then @@ -10816,7 +10824,7 @@ Partial Class Ventas ViewState("FolioFiscal") = drv("FolioFiscal").ToString 'JJMQ 20160506: Se agrego para la validacion de pago de contado. - CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") + 'CVImporteContado.ValueToCompare = TxtTotal.Text.Replace(",", "") UpContado.Update() If factura.CveCliente > 0 Then @@ -14613,7 +14621,7 @@ Partial Class Ventas HdnIVAOriginal.Value = TxtIVA.Text 'JJMQ 20160506: Se agrego para la validacion de pago de contado. - CVImporteContado.ValueToCompare = Total.ToString + 'CVImporteContado.ValueToCompare = Total.ToString If MensajeCveSAT IsNot Nothing AndAlso MensajeCveSAT.ToString.Length > 0 Then Alert($"Los siguientes conceptos hace falta especificar clave SAT

{MensajeCveSAT.ToString}", TipoMensaje.MsgAdvertencia) @@ -16442,7 +16450,7 @@ Partial Class Ventas 'JJMQ 20160506: Validacion para no pagar de mas a peticion de I.P. Dim abonado = DtPagos.SUM("Importe") Dim saldo = TxtTotal.Text.Replace(",", "").ToDouble - abonado - CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString + 'CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString CargaGridContado() UpContado.Update() @@ -16456,10 +16464,10 @@ Partial Class Ventas If total <= 0 Then Alert("No se ha ingresado importe", TipoMensaje.MsgAdvertencia) : Exit Sub - If DtPagos.SUM("Importe").ToString.ToDecimal + total > TxtTotal.Text.ToDecimal Then - Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor rectifique.", TipoMensaje.MsgAdvertencia) - Exit Sub - End If + 'If DtPagos.SUM("Importe").ToString.ToDecimal + total > TxtTotal.Text.ToDecimal Then + ' Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor rectifique.", TipoMensaje.MsgAdvertencia) + ' Exit Sub + 'End If 'Pago en Efectivo If TxtImporteEfectivo.Text.ToDecimal > 0 Then @@ -16654,7 +16662,7 @@ Partial Class Ventas 'JJMQ 20160506: Validacion para no pagar de mas a peticion de I.P. abonado = DtPagos.SUM("Importe") saldo = TxtTotal.Text.Replace(",", "").ToDouble - abonado - CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString + 'CVImporteContado.ValueToCompare = (saldo.FormatoNumero(2).ToDouble).ToString CargaGridContado() UpContado.Update() @@ -16671,10 +16679,10 @@ Partial Class Ventas Retorno = True End If - If DtPagos.SUM("Importe").ToString.ToDecimal > TxtTotal.Text.ToDecimal Then - Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor verifique.", TipoMensaje.MsgAdvertencia) - Retorno = True - End If + 'If DtPagos.SUM("Importe").ToString.ToDecimal > TxtTotal.Text.ToDecimal Then + ' Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor verifique.", TipoMensaje.MsgAdvertencia) + ' Retorno = True + 'End If Return Retorno End Function From b70e9707be9fa5f484c189d3aecd1c81a67de215 Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Tue, 5 Nov 2019 17:54:26 -0700 Subject: [PATCH 05/12] --- Bin/APP_Code_CSharp.dll | Bin 60928 -> 67072 bytes Bin/APP_Code_CSharp.pdb | Bin 146944 -> 163328 bytes Bin/ClbNegBICFDv3_2.dll | Bin 213504 -> 151040 bytes Compras/eFacturas.aspx | 10 ++- Compras/eFacturas.aspx.vb | 134 +++++++++++++++++++++++++++++++++++++- Scripts/custom.js | 13 ++++ 6 files changed, 153 insertions(+), 4 deletions(-) diff --git a/Bin/APP_Code_CSharp.dll b/Bin/APP_Code_CSharp.dll index 7e7523cc5a230a28e86ebf9f87504a13a63f04f0..becf87606c64c4b66f110e35577b990c0dcdf4fd 100644 GIT binary patch literal 67072 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 literal 60928 zcmeFad3;pm{XhCSXR;BtOaciz32Pt=fq(`^F(H9~>;x2XAww7-8Zz-DL2ymf;=bT+ zaS85w#jS3&!L9Cg`L=4+Hni5I*4DKyRlM)d`#k4lCKI&xe(&r4bAPmXpZDkee4h0@ z=h^1WxOmOQ5)hFj{C)qu$iukmzjERaLmPqzjDB>0JkaOmyoaqtFXye?RNtK2jOYXWzuG89>Ti=*lwX`O8b98;AxPSljaVF_yb43AsNbOJ5RsY|8HKt1VHv;J{Rf2SH z(}w8zuiTP;(B82v8PPNBhwNODw3zTT*z;rT;+DwP7T7KC01(EynsUS9zg*O&*lBj^ zV6ki{BX89EZn%f#xLw6gq#+7NEvul+Y=eJz9`3bVWKO&yvP|0*|FmqjBul@wBCp>l z;;Ib#zXhZ0leCbN$Jl{WNFeBKqCf%x?d%F95YYQvfdoRbCy+qE{dGM^Af$Q%2?VsZ z>p=pck0+3z7Fi|9vItj{D<}@IX~YFVnB%kUeB_gI!}uIKAIX6XvGWlNWT>6rmt>fo z-=Ac-oj*`Xex^uzdV!>%YWZ2^?!Qwx`fonHj8Uz$_t$wed5oNC|5NplwZMrOef2M=IVdO@ahIIrmr z`XFq(K%^jQa)@{l`u8bZVRFby3MM(5y?~-ouuk!6+4(yKxaK*#c^&FJ#%s`d znb$sU>!RaH!IoYc=ZODJ;|w*oAZTtuY-WjVgf5cfbrBLiW47euDaMoC-AAUPJM>M> zf5_5ak$c(Zk4DY8AHHe1yYoLBHe+d8?pI?!%$YGVE%(b?_6-UpA#MQzRSf+H_n_=0 zC~3LpjsI{+NNQOB?zNN?SIMo*g?rJzIlntfxmgOIx6-qZn?o;#e*`Z8hXfmO*v;hBtl9qeK6`!7`MJ~Pc({n;= zOy194_UXBy^Npb%p<^}1FBl_p=cgBjhMT}MZ~F8y-!tcyPcL^pFNJ5S^CmhDpUzoN zX!KJl?)Ak7RII1?o-f{^;!27i`C^BPhfw^?7q3upGR3cbQ43u*m?9PxCil}-)Ek)U zBwL=iRmBehsZL*CJWj6i51Em5NtV9P5h*s;EUsbtd`Z zWEJ&Rr#e%75eZ4zYKk*_F+)Y|KB-Q~7XvC5Q>^gCfAjuRtoFqZRMfdP)miL|Z>jh% zK&n&Yi?6EqM~X-I;*%;q18~+tOD}s$>G7nxVskDh)o$p#O?rdUfUUk)DlH;CUug|# zyV4Vs7Ho4a=k<8!m%P?HAMzS@0s##_!Wqfya%T#!3!F+`E1ZqI&UCKkb*l3lUMD$U z@S5k0PSW^8ou#}6ofCM)sG=i+&Yk@Wq>oOUL%eZ>1Vz*FcLA;#O1j69=^RI#i;xQY zbJ4(5=Sts5FUWANHyOR=Wu#FwqkeciHKU)OpOla;zNdf`OK35=tFwzr9 zAdK<^lEch$K)Q9Qcoa(fIj6$A%QT%6G$K&;0YuU4)g>P2xXo?0s+e@H&GG@vpj(WLdX+HAROcg zBoGev1QH0dJ%I$mA)Y`2q1+QlAXIn)34}SGKmwuC6G$Lbc>;;s7ycFKu?Dz=eZgA; zJn{RTXU(|<{RNZs#aEx96Y7NLcb=vb>L1^~Zb0Z|+nrEV4E@x?;CBrYOv`=bg`I7j zw{^Cif6>*ahb}>&8k&sj>Cp44-|qa0Cf9h$)n|ruE>I^GLti4>vc+_|?DDI(hb}UK z6R*7btdP!w>Zt_`J*=K%>G|=u9iM3_-+6uKIhyRFS6zKJ=U8=CG4!#P^52M_mV3e< zcb*%16p=MB{jHtng|0G&CKEbZJzt{d?bfb;>$HEyzK+jBC8i+Rvg?b`I%B9uNH=t4 zKV^(plXiXOFA&b|v+Fu5UxD)Uyemsm?<0;hJ^3ibqnc@kL!cmCd7gq%UF~ zk+P{2>wNJ%6-Q7!&KKKNOr_ZDizle~DInFs7S7DuT(e+Sf_R26vJIZ2c%CmV)9Ck8 zywn$U&Mmu+;!a;YK*e(?-sp>%)}^e4;+?)YLPboP$o+m_9H`=<6d&_N?C_-w6Fxkj z^2IN-3*=IK(HGxW5vvt={>~TQR8i-CEVz8}6&3eV{HrhSQSl{;ANt}0D*hbcd@KCHDN1)K{R!z6NO-^B&>b1@tysma$=XIIW zuaD~Uo$Glmcb@09%n7BdUgEU#n(tiAYp(MkuS1-yz8aq4+{9~|^DVF4Q~6wPG$6t7 zFwYZ6AYdox4s|3D=6eDO=l+Dbk*~@scuz4XfmNu>iG|( zotAs;sDj6}$R`Xhcrazci8Jg}%uB zlI{&tohy8i`=#$t;#B84Uu@Mjc%R}ezPL%n-%-5B7mrj?cYLYNL%z5~MXhV9^Mo&A z?;>TFQGC`Hr>l4x#aDcBqKZ18r#gS|#bGMy#FOg$$rt;psPk5;^R6$7iUkz^>5JG( z;{H?ow=ce{qD66^FTSDTKLDvtN`LPjy``Y#JP_2 zMx{@Z>ICg{kzSy5_5h7`y3$Qb3r=)y;ni`{2C99mGn?0SP7AMVoLhKZ;bdfJ_@Pb% zuXCJ>d7b6l!s|3=X;8x_J3DwCY2{Fyr!GY5>CPVUD9%I^dRBbp>rM{ zoghwq?u#2W^tfZjL@bgvel#qEAU;w&5YahApD*<&KBeq!nC_v>jGVMwJqRg2LWA|- zqqw~62?pyaM{%CYdc;wjTy`tun3IK~b!C@R+3W50i&mGNLFGMPSyIrF>U`vz)di7M z$3I6XDla%J)%n^Fomo(w>deV9ce!XG2A|GM{Xm1xdWYT#-&U#)Z{>29T%oS+U;ig=*e*yo*c zIBAa3)ucm|9s!C?)9{jjyoY<0toN#UC_>Whlhkd{zChp9nYt2^?0({E(P0ShU#5$( z%z&P-re`HdTF&Zz%{!3i_?&11E;2qX+Q@4#DT=u^CEDa!m{(Jxj%Q(pONq947G|@Q z=oZhy%#{+|>RFhjQlck%7CKo<^kmOMOQb|k^(?eNO0>*#nXY~p8DI6my!Q|*D1d3bPA@P;X zO2+AIFfF=PQ{1kZ(5zJx(||G8sd=t%u2=JX-`t?)g}%8-P0Si8EZ1mcJ?p6NzyJPE z12a?iWvAlSMRT<{Z}|n&o06w)YxmJDurC{NJvSU7-9K3OWJ^ZZ!8Lyhmm-)*>` z198=VHvT5!PqkNL^x-8*@;`%F81$2eLDF;jI(MNb_j6tW_IJJkW+ge9*|;P-#d=9` z7U?C`IaV)eBQ8LP!>1a3@PS4!2_I$zlkq`D5T9lY3#Q&Met0nLhAf=Hj6oH$(u3(U z$00vy9;;^GVBehRIIXUd@gA9=#18h&N0HOB`bhzbAM6*+hc&)$;b>4C6r|^rW`ZH_ z^fXSN+54;lE2qH9&gviRU-Yu?H89Rg!v_Qh%)9{4lO|fAS*S~)l8mzcXj|1a-Dr_& z!C;X4$gIp@X6{GZicX!gM_n>=zpKAz<&0Gze;xhS)ET2e{`mV}6o(!{X>mtfIiwqe zvU~J7%*@SPb7Uy=8wd<8-2CC9(2Jh4CKlQOtE}C1&N=GXbu)?(>*t>wyDIdm=Xd&3 z1?xh(@nIV36yhwo(2e!yO(z}~I^T0%_`8V>p>I5AEqmxxEzc<9T%Pyvj9O%I#*~g- z%5eyQrst~$zBzgG1kS1s|?{@M!L zT=gJd%~Q3`RhRkd3{~}f0cF_Ws|!>;&{fa%)rG3&x$1Skx>(h|uKJL#a%uksf{^Y@ zzN%}^vOl}(yS}h{tE+pIp}|*K z3q4;*IY}o>Jgmj~uwqtB!8Ra4A3|Nnka&O0dhpi{7q4UDfUche#p{?Qp#L>N&!zri zf8azj;XLh`2cARIn4v6r?im6BW(b&-S{2{(x)2KhSA6;jpc>fvn zzqEI~;M92MGIcJfj~8cATp2GOMDdV#aW=)t@nSi}!SUi8iaG<7=-{6r!Hle&V9u=f zzyAJvi0&+*oe74SkaYIogtX7%9F(0kBsiq#?XrObP`6+ogz99Hk0vk38X6or^VR;U zdy|+qJ@w%Lrqk1~;INr};H^HKo`w&~8Ub$dp00ZL^fWR!(mB(6Hj3Iyk!M?Sf`63+Fm7<*eLbZs81R{yEwwD=(NA91*==n+mL-^BlaQ zxc}+Vhg3^BNf)QVyl5#T)cQwSYfNxV(c6+**dN8!`UZ#Zv$Y+@2FK27#?nX&<4*V) zU|REFlHXY4g5zesj8K7^}c z+T~W(77t;pcsoV3V61p2MYLe7csE6~V66Bvit#O27%ZGs@PjR=wU2ATqF_<4EtulB zU~#Z`=18;RWAB*~e}fVq?UG;#9_?4KfYRb=&vKS|jgvJsICbWICWy&RYpz07vP!$} zO9T&t7t>u|P7hA+USGbx>#PH3RAX_q^M)6)xTbvX_M@%Pm59WJkjkO!VU_9e4gA*J zc7I7IQ^yvyG=52UWe$RnPWS3<*-EpRvRD4qwGCR?74f2B?qwDsHlr z>4FjJ|M)8UgOurcJJi4U>TRm(xj58)zKX#{%FLF?ZP;1iE0I>WX_16S7*5MD$<(~U8XKla75+- z@jeImJ_kfsxIQy74~+LY(Dykois44n33eB94Kt5_WXghNvo8M5pSLFbSl^x*oQb~u zoav$NkelW8a^3U!&&{mhteLl>;Wa;Y^w5u`eNgZqq+Mg;@VS}b-JBvnlR2J*F)-`k z;K4J$MIO?8EGm~ZJ2)FtO)Wg!spc51v1-xjcnYIoH8T(K+RSl0$IL@a!_5vJqVFua zk(`sg@MwfF%l(*_cp;hPe$3g?_3(0TLl7IGXaLIMI~I%xmXBWFJOky(KLC(5Cv%Q- zpZXrCMcc>>D*Ox{_A{vPGpLBxvuLF}y$H^ZV#Sk=TdYs{53DpQgO%}fXULs9tAbUt zF2#9)lzpWwn3FXZsr0y`&v}*6$#!0FUg2zZdgmLjc+tbONZDC)f2W3>upqcVbC{cTXz#{}THkEd8;zS{7V}2jNnU(|j{( zpS2wA*5i4Y;7R`TP?+H^Q=>SZOTi%?ZkawJD}pO#j$!tiiarN?f6wirSed!fQQmDR zO67Z$1<6hmBwWtc8?jUGL2!9Y2HkI1vY%h$-L8UuaZlj2ZbWF^4^zjFC3a6-V*Vo( z#rTTnx5j-)_FtBVK;4k!*f{hu$ljk?FEPbST9%|T#a7f4WVwrW4-(J9O}qh*vnnd zIwE+)%mtcP%1L-UvHNvC_L?M$!9pu;^rR8qQ-)cRj_1x^bf#xT2mCjYukhR%`C-qBX8bpi|LD0h@;^K)nyHb0bSzmDTod0j z4tIOTk-;Np9ilx$3VwV*Ix2XS4oETM(Lgtqqk~7!dhHWUZR%=4HND`V#J=H#5LV}i#N;_hUvEl80;Knbp$T!F(3ozAbu-v@(4P9H3yyHEY6 z@25B6nu-}lveWHo2>C{_eNN9m7~t$fJ8`&(V)vY$A$DPDtj{43i}GA0=K^g0a0EQM zy^EF3o zu#w zknBa0jOMqF&98>1V~@nsh~;H^6ctZz!+I@A-w-@fuln@`5(r0m0ttkpJ%I!Q7Cvqi z5(sNOfdoRWCy+o0djbiBb)G;10ShBHQ4$DP@3;a91avl6Ac3&K6G$Lno#T3tK-lC7 zBoOL7fds;_o3*ILQ-8Ae`(8BoI#V1QH0R zdIAZA(>#F$LYpU$Kxp>_5(uYz0ttjOJb?tlnVvub;U}Iz0%5x+kU%)g6G$MO?Fl3h z&hZ2i2gNFZG72_z79cmfH8OFV%D!lj-- z0^u@GAc1hXCy+q6!V^d!U{~*UOA-iIc>)OpjN7gU351_|0ttkjo9qVaDyk1K)BHpNFdzg2_z71_5>0Lw|D{xgj+p<1j22e zKmy@*PauJChbNFgxYH9zAl&5%BoOZQ1QH1McmfH8pLqfagnK=K1j24lAc1h7Cy+q6 z-xEk6Jm3i=5FYdd5(p1@0ttkldjbiBhdqG=!XutQ0^w0lAc63hCy+pR+!IJ3{K6AR zAUxp-BoOv^0ttjCJ%I$mQ=UKq;b~7G;rj@$~i0zuE{1Sm;Gp>D-8qEvgbxNno-eg=b7jMHaQdu2bw?K3; z1kB-#6kVdmk0di$tPv=*RLZcU-ML)kRGDy-%k>?LgDidrl533}_`Z>@InLv?c_}i; zzrf|olwU;d=Dr+4&OR$WW#)I9L2_Z=GZO7Dk*B|EIPnyE*1Orx?Q~vhgVi|Fxf;}4HNG< z^oic7fk&u?PmAn)+?MoNC%Eq_*!!~k#Jq&ivk-cSf#&TlS|EB<4<#vjG*h0e>m^(2 zi{ihHfkG4 zO3uf=9-V;ow)63tT}reT$xpD8^YOx4isWFyIIyp-wo~)jU$Aua7O(EQF(8wRWFWeo zrSE3UL7DcSK8{~g^xW(JdHN`vR>qV+c|cNZ1>8Qh4(Ve7pOhNyM0RfPmOo*YoSGWV zMVP#0BU*Ru`f2Ubx@*Vp+~{*;ORi*2(;-0r1!Vq0x1PEem<9#ipnGhlpKHkd54JyFOKM=jTThJx+GwA%gr zo_}VHzuvhX{(O{U{j*~H^-lEg=i?shKPblk;zWOT2iHGI;LG;#N}H4%#p_va7Fp;Q zy@caMPcJ-KvJ>JDNQ&ZX39iR0-VkgD^6^FxI&5-2-YCTtck(Whq)Q9=RJW0!V8{267$`qI&`J{`@O7Q^xR0?y{ZnygS8FuoDE1C zklcI=ys>4}aWh4aXYrNj+4dmL41@BoVp6&vEJi%EN6;>ul>5xJBihrm`xXqcQ}x(4 zJtdrrC)Qe%o|?0|Z>r6G>lC|SZ_4BiF>UmSre!DPKgKjsiKivU zt4F_fkwGJ&t*VjS>)hWN7+bw+K^4MEVBeOEusID;Jiz>CV@x@GxgFlo@o`j&U!J=*W`vc!Ed4IcVjT_GoFr@2sSln8G|7FOOZ(V`vI6MWVws?n>r933iVQ?Sw8)Uq!js}SpBm_@qEU5 z7AX&tx+%XNH%v;$D_%VH*W(6AWc=6(1LTI`TAtqz(Xx$T$3E(rY-W*Kqos;gPO(}Aax|?$mReKgI9gv#QL9QW zq4hE2Rm)FlJy@b)i{utsFHKNux!gzVYf-BPzxUCOY0e({>5#dyMjm6>t|`ANRtrlt zl;!=rPMIr5${vQTmy)S-5ppg%Wrln^Uae>3Dq06jSL<21h1Mg})Ot~N(|S`@O1Zow z5Ap#UkCf-addRYoN*(&4T0f^XW2joM$m5oc4vclCTrRK5FOkX#eSQUL+d#!y;!l&6 zpO>L{S6{_8Di@|Gf0dZlPx&}vY}`wj+BumTx;j;{ocN3WFM!`d{P$qxn==)kOjn<) zf{I@f? z=M8xU%B|U|KhKmeNLT;D998O=j+?^1tUo~cvcKY8|Lc6+9RJK5Z)A@1nd529v6N*F zvz$ZOGH+6MOX$W;ETQY;`X9o$zhJCi@vbdoE9pH=k$(<<0~jcI8~9|&Uf>6Xe*?Zg z^#kD3(>?)qP5au;MjzC6c(l!1s^YDwn%X$lWy}y&-pWxF zmiA!wpFn?2{~MO=LYD1sEXlrf^~_<)U$P|q8TS+BIE5vw4XRHi+wc#>7S?@wiiNMf zPs>aKb`ZOgmDi*w<}udw{ghA6Qq0QKblj)rUZ!v_Tey;U|E>WV`Wowg7BQQxTFNqi z&swZwYiwuPs)zx$!}+Y8&DI#jyYm6l{~Jex7yD}ae97GZ#JfL{vFh1kPqEL;X9~x$ zHTE){DDlteCrR@4_|!m>{BBBL)FM1&An@9pOyFZV*}y#mhXemQa5S)!{o&g_W5KT- zm=8R@ulk?YSKDfPP7%=U`F~{jSM{9{SeA={P`0NnO|C{cR~zf-FS)m9(r zGFF+Lfi=rNjP+=4HRk53Ji)*1L)KugkS>c|EA2y+C0$k->l>6MU5+tUAH?e`8;q5c zn}Ll?)L7bP{p18=X`A(vHe+d<^_R1arES()>Lw4jSiLL-N(CGS-Cr46IL=8S5wT93p4t zyPjvmbBLU8tSjL;M6NQ{Rqz}t9~o;pJcr5`#yS+9LuH?_vT=`wNy;QQ&B?e&!(^bb zR*bE-hD(mI>c(csaLF~+ZRpn{B;Qz%qF;}Ysm6L7_iv=kG}g1Ye0m%$3uPH5}#4mGg|1jpsd2 zE;ZIzJnwmOjj?{6RBersn~c?!lp$l}Zeu-)u(9%>v7SNLSb4%&>u}%4$+O04!F?Ym zuNrI3h?#-$@|v+WjF=6p%UIf%Cdm87(!Ml7J~7r8h1J$X`Px{0iZbw>6??LKS1!c! zmoNC53;u0S>%jAuFImQ#jr%uAh8t@M?%yOCXRKGIRRtzXp|ReYwiwn7V|`atZ57DD z#!4^Fz^Zq?vF<|eDU{odb;V@0b{p&Z$r(~8j~Z+C@R@-kdD2+b!)L>K(O4IkR9nUJ zJ1<^I26m%w8EY(BcZ$4YtZ8W7De{rAv;|A#3u9>umc;dtsj|<6-8OllHC0jy+;-VL zIT>s9fyR1y%tC9LX zY%`WVE7fwkv9tx}%eltV7Mw4a8B3qI1@eWl^vPKu-x=$Aw95iX!Ol%frcchHGQe2+ zP(~X|`^&<(axN16H6TqzYqSXaOV`pGEs~kW(w0~(6~@w*SS*Jcs~qjQ zL{=DU720!&9BHi0NOLK7n3}_>NOP$)n6SN4Z7q`)V|^qUvP{~HRfxJTk1OYLxnqV~ zvJyOv*hd?y0#D;|dE8i0#9JYs9N>ED8f=ApZLD*V!-}{xYb5DFdU9T=kxi~8-;6pu zP$L)f-02D#Yt_O!AD>@{Tp@p$ydkhs(w4c_xkHZ&tdd$|eKGX-z~OSTvBJY2w^qmH zw?;l^*p4Chl$;P)BLkN+_q2(53#~PhW2^)7lCk^GHC8ry&ykXEtg+}lN6J)VeTzBu zD4A)jJ_tKX<``??)N1Q!In-E(PtCyjMUAm+%>Bp6k;dwex&IhhZ>*shC)P@Xu?h<_ zWUaIs>)(i1E2kLC!W>>J+l}>c(n2dN7aA*&oGf9v(pXC{?yi&TjTOeYyH0L1)}t7& z>*QWzJ%{nSP98DVA%!Oe*2^Aa)fBeDdcjy#xVI7ct+5v2-bUn2W39njc!T`aSanz% zZjgT%YZ}5f%IC(Kg|LnCow2UM`g4;clMro^^$F@H%c?4UPc@1 zOoSaP6ODBd!j6>^V||A8=W$YItncj%oE%jcYZ1!QAPbCDgR(Tp3S*UEUfC>bj1|JX zvRUekl|6Bx)hNdqYuvBR@0NHyEWHdDvJR(O;US(^w~=zckD9#(Es1MvMH$STAAJ zXpuh}>l%c$%3q9i7s6WQLt_;boD|q1pBbyNpbgfy#6gv)=%V9 zW8E+&UzeIY$mL)(Z6NbEVo?4d~bB$}(e>VEjB!RvW7dW8`@fHr6-T zkDV{|#!4BHfzMeTV`Yw5Xk8#D8Y^!^vRoi%80%~FvkT=sWA(v3x==1N*6$E@kz8Y} zchLtglADc{U$W4;Snf8~EWB@cu{>m~bj(?mDb+Xe~Z=fvK$xX((C4ZrHz1(H2hw;nA*UN*((%p53{K8ne zyY7%@jg^XVewVyrtf3g^cgbtUx)gKO4f1DWU5mNu26^9DFJn!6qkL?vu0V#|C|?_^ zW$Z%hCb154@6jb=ljSB!H&z!`K{rdLvHpWq(9JU3Sob3A78z@-=MZ*_6dLP*2@9=T zWxBEEO-Pno-RVZyHCC{*3{7_1@0F)+`UJ$N4LT1W31~YEwmnxpt0`8&n-S6 z!;G~Z^X-E&##onNzI{*%jCCXG{*aU!>ps-|Avwrc&tOdcxl|eJO^nGum&L~VPwqnN zVOeFYAi^G&V~lkz+Uyb8V65F}vqwZJB;-z+WK+1+E{zh){n~##uB9Y3%SEs8A$UNackix>P3NH%1g%jX6j|Ies8S4(|#K0l(&sFdRhmpca8Px_*(;eE+Lo%(3tX&HxidDIG&J{|a#yhLle6it62@SGIl-5s=&G*~YLUX=5V zb?}t`3A`eMj$#DJV z-Nw?|z9vr_OKbbO>@}9w_I3H(SX$dRB#8Hi^loZx-;i;%&SV|_C{@PNI=n6GT~E1+AQgdH|&X3{r;4HN4S8C9wl{snll zK0E0@#(LITH?%70JKs8b=)$CZzEv}HbrL>~z-JJjkNQ9O|CbiH7oP)IGCo)F#gdE+ zTSnvDS9!ORIb8Yw=@tK{1^&Nkfs71GP93ei@rh#Xdj*#AdnaaO1SGRmLo-Vg_5CUO z&g0f88dp0w$Lqu3dZ?{`BU~61HOmq1Z@6Nvl*dfj&RuC5umlKa5hKcpS!8prN|82x};trsNJ<6JrVY1vhuyh>u)2b}D z=1!lE&uf(rB90)ABNiHEQOQO44CLO@>*1;VAo4=YzjuPaQ@UG@u$B$C;G;Zjm6R4) zdl+|*%p5ZfeDKi0c&BM(>0o(YHVvO?JumZ;cY|*jRsnt&Rv*vHgQFJ$|2=XyO4Wv0 z_<1>Pl=<7egPnc3US-ecF1&dU(tW)*dT@H2YYGjsJu73Ci#$)==7#&s!&A*YLcxcZ?-p zQ?V>pZy){{K8?^eT*Nl~M7oBg+HY8&PwQ{*wJsf%1zeas-2T8i2kWH|tTwEu7O_=7 zvHn_&)U1zi-uSh3*s!Vae0a=U_?(7ymSvwk=5V_Y@MxqqXiB49#eAz+_vO~#r(I$9 z$6dPH&XkDtkUc>9;N`_k=^uE=PLsib$Dj`d&yi>G>{UF3TWsvAi+ry^RRm{|Xdi>BVCxRSA=a>EA})Zcsxz$afi3We@ot`gf73WKWD zl7|hd(nj8HP?ZkyT?SR@B;R9Dl`itV233(XmdBtfx#W2URVgR0FsMqHJe;PyoxGjA zgM61k4ecb~V^EbY^1TLCkv=SgK~-|e^9-s|PF`V9m0I$!K~>tw+YPGHLB7kNDxKte z464#azSp2ClFsrNR3(=@&!8&h0sU>eCb`U#>T}0`tY335kiM7PAK~15JyxpKG z9pt+Vs?tfm$Dk^E$@lhEF8x??gR10`=NVL`oV>!IDz)TcgQ~QVw;NQYgM61kRXWM{ z7*wT;e6K-Oq(94JP?cQrJcFuKkXQ6qUP~S}s7f1oyFpbt$afi3rIUP*K~=iQ_Zn11 z2CyUsRmmmKGpI^Ad4)k$YRSU}RcRw{H>gSn`7VR1bdv8es7e?4UW2O0K$gd#D!Jr& z23091uP~@eEqU0WDsANL236@G-(^shPVzklRp}z%Yfu%*V0jFxl1rXvP?d7>3WKWD zl7|hd(nj8HP?ZkyT?SR@B;R9Dl`itV233(D%VSWLT=G1Fs+5yg7*wT}JZw;vHu83Z zs&tU=GN?)?`5uF+bdm2hsETB=JO)+CBhSlJUQS+NP?cKput8PY$=m7QLB7kNhIW$g zF{nxx`CfynNEXXrP?bFLye#GA0sU;5^RHco)-JmKRXgQ}F1R~S^KmON}wl{WHrgR1Nz-!({iC;1+Os&tX>HK>XVW=RaHl1rXv zP?d7>3WKWDl7|hd(nj8HP?ZkyT?SR@B;R9Dl`itV234`LS)Od=dE|NI<>VCxHMEvI zY*3YU@^<=nknb|6p`GM=463r1d@ud29Oj#&dLDTmc?Ed|d2NoavBOltRNAPtQ)#Et zL1h<}T~s=$?4h!UO70NNE6DXs!~fHHmFJ)dAmVXI>>h!RHc)Ak3m(s$Yq$8A(vQAtR=P) zJBXdcE}{&lKe3!xOKc-{5Ic!oL>WPUVmYyv*hcIib`raYGLrtpa$+s9jo3l#Bz6&H z6#a?i#9Cq-v4hx2>>|o&`V-5EwZt}J2eFgbMU-6n6U&LU#5Q6Fv6I+Elsx(q%Zatb zHev^{lh{R+G4v;v6KjcW#13L7v5P2U=}#;t))L!@9mGyz7g5I1pIA<;CAJYeh@HeP zqKv0Mv7A^-Y$J9MJBeLHnLvMHIkA@5M(iMV61#{pk^aPTVlAxj3_$g}0pR@CLvM*5%d>)~(iW ztiM=g_A-0D-C}RGPqy3bv+VQj9XKJgB!IK8BpHYA43*%!K?mYHK!@VHK1=YOo|X81 z&Ki7Y=4gC3W)I#nc?KuPFW@ZhReZ1Y*Z8iDse@8VoKmEG^d!Z%hO6hD%%!4O z`Q&`XbI5;5ehv8&@?w^A<5=~1g5`XHd3BO!O;>$1LnpF!?z1K^ zk%r#HTC8BoUDGx}8Ot2+CEhq$eHISaST~j^KY*#Z={z|3cqng8?jN}fNf#x-gczJ=weYQa3b`rlGqr9G_ zYAn*w4|w;VFI4^#Q(K;-{NRA%$bhDHF6(~FG*y-mZ=0s+Y#pb#HczpMWt-2I$seK0 z_z~*gpDF*HC7E5KN(Jx8=aV(%&se*EGwxQl|{%6R&5i z_j6Two1u^AYs&7EGLp~QF1GeNY|kskYUua8r#8!c=mb?x;q!7j@lv)%7hB`6#EaPi zHe0O8R{zVG^0mY_`0URat+m)aNkbpteR+tn{>&B|Ox(-%`C^#*tY_%onA#vJ&84S9 z-#2wTaO|}6fbWmr0UR>n3gG@i-(b&~K5Qp^ZXdr3xOyf_)IOpKODDX+{E!V{!+nHfHwa6fTsa%{PhJ-2io}S58e-`zo0k}d;rkK zUl3fsMQGzM3p^8O<8LrDeMHvUF~j{@TJetfoP zNiNXF-&pW5KpTJK!N&n@{7nR(px*<--z4ySppCx*@X0_Me?{PhKpTHkz>9%4{-y#; z@Y#qBHUs)Jpbh&#Aim!OWd_j3x0Lih^nM_|>0{x)7=AGLOniIC!Yp+NcnEWqg-`kL zBT5LX1fLDG5vISVP!6;aRt-J}Xv1CrJ`ZTaUI;!PsQ-QG#o&hmZP-h}7XfY9%fXib zZP@t41|vxg_;OhVz5-~&J{)`{(1v{k_+daB_L1PLf%@B)`il)~fHv&4;70*%*kSNv zfHv$pV68-;gn>4`nXnPO4rt4IyyI^{tq0%0UwqgIwDGNg&Cu(CHtZ;P1JH(jJa{9} zhTRO_1hiqdf;&JP_6guEKpXZp@GU?a_DSGdfi~<@z)u9)uulU&8EC_92R{{P!#)FC zKZ&wo{{;MWpbh&h@H2rn>~p}k18vynfu9YuVP61#F3^U35%~E)8}<(H3xPK5OTjM& z+W2*g%fT-N+IWNbO5o-A1yy__9%#ef34RsO#xGx73%(O*<6YeA!LJ3{aveTtw!vp)xHfR`nI1lsZ@yzmZ0AsQh08a;E zOtzB2`vEZ~Tkw(rK#a-w#2sTY5M#2{7d#V)G1=-5J_v}B*%}C*4aCT71;K{^F)~|O z;KP6znXSR#BY+s0tsL-CK#a`RQ1DzJMrLa`_!uBYW@{w)I3Px5Yc%)-AVy{@4?G`; zk=YsxJ{gFS*%}XC2*k*2O$09nVq~@^ftLU=GFt`U(|{P6ts?O0Kx{>i|X z7^STW@cBTD(pDw-p+Jn%)?DyKK#bD(jsQk!AVz6x0r)Z?Mrmsy_zECKX=^d~N+3pQ zYbp3)K#bCOuL7eq5TmqJ1HJ}`QQBGseiRU+v~@W6F+hyc))C;fKwHArk>Klq_>Da4 zXz=ww8}Bfz1>XR)Wup}a-vq=jH&}Jx#{w}{TM_UEAjWEIBX}baW3^Qe-UP&0Z5;>h z05Miuo55Rv7^|%)_!c0>YU_CLtw4;`Rx|jCK#bK^EBMJkjMdf&;HLsHR$JS^+khCW zt&_k{2V$(YP60m?h_Tu_4SYKgW3|-|em2m?Fa4YWejd=4^R1tNUjVe_LhCH>i-5LV zjQ3Y8*#WfWYU@1kp8{>!X1_6mMYtWDo|iv9O1ym5x5od0j9y`E;gb^+d- z?CG}$Z=m$lQt<9%ympg)L_&Hu*}opAeuJ_8%f??0)_Zm6TdK)|xs9!xBTjf-L!@@9 zEUIsA!DT^XOX)N@XmNCXYeQtV9JI`--x6+#EZE%C5ZN4QYzep2M;ogmE#dlx=Gn3_ z(z15Nyh>>{*NSD!)>cN>N7h!>YzjL~#dE6YQWI%th*r+4qMvVQ56W*VDBmC8jG zbLLWVnQANRo1#^b%IM}MC%P`&*b=E(P%S<4TDtDoNK3T2c*T6FsHy=n{btQ~ft!Wl zt2Z~)gj*=9ON|NEtBRG;#=1yTOLXl5aU$XMs~0a4{3=_`@ zc)?PJR4#K%z09>%tuVHd6|IfSTO-c4su~8?L>4qQ*E#j;>Z3I^j1{l2SmB1SQy;CW zSM5_0gJ&mCR^KPfbW@D7%|Bks_MK*-6l6r zmzf+Zn$eFVjdk^I7&47f=o4*-HhQ6k`{~UI9~+YbUhKFkR>)*WrNM126M~dbv=xz!3)Zhh$9MZ;te_q%Hq<34=~^ado6I;?!d=1J_lJ z_3Ojy>1`;Bqx~l)s4~W8_?F0A6iJ^fFE&aYE71!>On10vFr>cKkLS`A7$T%%{dyK^ z>*j{W=Cv&w+;VkW2Vsnyecal$bHa7U;pZLa)khlE%R$~im>8miVWP_MFi~FR4r_@4 z7|;^MRVx-Hij~WH(J*c$s&V5~FTwExRHB17K=l&RV_-`3h#QjA;g1ge1F1p+oE+pzPgG4WZal=C|;bwT~C4>V+ zqV5k1i9t0O-Xe)|Wf)^%qP#5Zgf~Z8BF++A5`)onsPTrV(_3K8@eMj}tlZYrOH52) z>zw`Si^J>pAGoadK$K-!#A(J<*RUUtIpOABa`gL1@4*S{!d_aTp&qkgFG-_FmHP`r zwo#|INPc;Kz$3gd(l}>ZZ?VznhlLwjdnpXoEVvUJoapBLIG{r>bD~?^1zln-IYumK z+}KM9?ti!?x*}3nzfPCJ^@%QShpgMMe!pQ`n|ldb5oxYp&z07^`sTWDLt?_1?d!2; z*k7=_PFdze*4OtIds)=M=3{gCuy9?t4)cF+K6(?m+VOfUN3=>hE^;FelYgj zW^8&|n}5KkC5$~o%l;h}tgrkrmzvhPR;RhQDz3x=t(UgNu)UuUR9K6=K3ZA7rM{P# zQ3rP|u_;!q!#+XVIWcHSbOEBcJBi*s^g&z^Y1mJEw9bZlbi>}`nqHz!=wL|d-3gV# zcH_Tw{jdBMwQdYMbGJ63`}Lk@RYdn_O}z)Mj5I_xL>r@Xw_>-^+-tKPh7qsV06b1> zo9i}3His8Q>$ss#Y;%8buc~+4^>3n2Wvk=hzRcaK`_*1^np0JW&C}N2!*sjQOQLLP zPVBt|>Y`|WVcna}#E5a*&ctAjUn}b|?V#T#2D|+^QTMxgFF{(;{l)Wc-r}&Md*c=1 zruyEp#TocZn%d?+)F|=w8ytg3><=NDQutUEcSeI!=G;dn>sXt1`S9CmxB(&WkqmCdcKL z7z;CH)WHg;Mfco^!Di)~7=TW*-!SeW5~Iw)gPy2*y(lrHVlj@)oZjM8EZbj*j(=gC z2UIldCo0OlvbEPlwQUm%;jdMC4{qr-5;EZ~yO;F5H3p6%_7^&@zR?Wh`}0`PsDthP zo!Cv>nV^>>vE!)Tk4ymPGXoA^#_8rOU={AvzMq| z0eMWlKPR{2G$&?Uk0az>k=&>pW~H0eGi5M+f32rDg$8bGPSf_^xZYu80pslGaLCeuty}7~XZh#&%Fpm3tNF$FP-1?I8v?0dB zwYwwpI3Xt7wKZHvt=KaMw`e^@|Ckx&sKfKtimS%~Q%9!UG-L=25 z`RSDZAs7?Tfhq2zF_tw^t?T~qjPcCbhubLbIf$$K$0A;Pd7g2tg2vDjlK6)4MB^Fj zK#u3I2|e853Ip|CU(tg9+|jyLq*L8mA7i=gq0dIQM?xEQ2O-_V>YMB1+$)-!Bb(PX zY+G615}S%IW21rnmvdZqDl5Yd3O-MtmJ_0}0sa=R+t*7*A6T=^OAN&A+fcu;6`NY@ zzY>GZ_A)-uZ6e0d{q$C{=ETT46t>p2bO%&NVhpc%mC>ecPW{GBF+q!?SVKkU)jQ1z z;*!YL7_B>v%}wFPZQVKHv& z89qljyuM|VYiLT|i5Y#m4RemhGdU$O>t$^{cnGXHY^?q*P0)0 z-o!)}MH)A@xD*RO!?;t7J=}AP)$_=Y33Q+G(J98%dbuVJCSn5B!W1qQ&D$F5bRJrV zkFNxCk4rQfruVorK*mlGUC)@aK;ssxsE@y5(E~yH#4DJC(SaJ=M#b~n7+#9rt$TAy zi3f&EqZgT(`70zdNw^s%sK(cuN<1&$W_bKDqU+N`GwJA&M9gWTmt0So-tmWqu4@lX z{km6au{B9l)z>>`WMaOdAv{f_>@wHeJ!CZAF@}z9+RgA3EsAW3n0w-#xbWoBEpNQk zV+B^czM(-EJq_Ncy;vaV%NzO;J`Ts~aUA4qE5^$js&BwpyUKBMT7Ym92lH+HX5N1u zY%*7uEp3W4N?o*(f&TF(9l9;8X3z6Yx+I8fB+RznIVZhzqV)y!(1!8OI_VK7(8Jvn zxo6`D^-n!r_x*-y++Geg8LKzln_S zuS8XS&6r6KkE@<|R!Wy%WPc?WGwbSpV5JjoY{u3Nld#v#Rzxh(yeg=*BuaJ zvf$lk$8L%-wuZ+YAJZdV(f78z#}GSaR*SQv1*vi6qhahI*Xk z^iQf8gu53T%Cl-WSA8|leUx!fO-WCz-CCK?si=BgkRje7HA8$u^Ysp?-4JtP%{Umo zVh^e5&{H!d=UKJuU=FUCg1?K_=4NobqOtuT5>;9}XA+Zxdr<9VVXT$Wx%jx>aVzgF z&~bX@<`pMsG8AHtt(jVa=zGQ=Uw1qA(A8hdu1$mOUw6Ov1yh9tC-a2H`z0J|yLC>K zO{y`++g|I$O2*4OK_`8fUJ1d~^sW|}2V(`NCWwYW!-N%|pf>$$sQU(`Izdxk4< zO3*!E#vMI%2bqmVjzcgU53Xuz!Zl_E8n^D0il(LpoEYlD z)nAOlTZ>zdQAE*A6ANL+7=)iodOAnqq9bc->I>zJs!(BsjKgV*y7!C8rS z-|>Mxj_;ds)Y|Mx-mwfmaKOaSq@N(v*F_S7wKwVMq#y2{IAVQ|&k5k(bMK0q%Qq_! zq(yg!$7Yt>+}3$mU^ikaL}Pj2GA2+!A@?g=udL0xt8PrDh&I#F$Oq{>vo5&wA@IA1Btp9eF$-PWI=_VmEiykhy5%P+>E6UO}B+QdM@rqVQfT0W4B$pXXNp` z+iTnn9?v}RnSj%xy=DtGOAJMHY_+|Vl1iFg_-0XbyiPUOY35pLuG7tR2CpaUSEy1;@qKUnd~{#|{^sHj|H--31^8C-MqK9toAJX9 z%kT|t*K?Z4z$_PGF&GY};OPAASF9zZMuPNmOO`b?#des5j% z1A)`1Pou8iWLHJwPBWpJ!ZdtyU6M=Dj*6P^OjUw&@qKQ5eueL0*W>%wDC5{le5*Uc zZ)!&*7bT7QCH8%)-I_I`ZW>$bj`K345Jrp$>g%THptg-r>!`1XnhXCZG;IxhD;)oU zt1x08i;$KWpE_tC@H^*tOvIYBm~kRdG_UA>@_^^~Dz@#9c#S;_d1)D&k&;^~#b$g* zUF*?|P#IYT)Ea3Gv`&gm(Dcq)le~MZS`=lH{D_Q`3aq2RZ zUE4t0z8-mbdE_F8Tv*zJTdAu5da(|yV6DUKIoc1jCf%{LMH}Fus-~=WPg}|w+xtCV zk2}5&IlFhfcb{gY;-J3Tqw0|wp5G}IC~E_i?w0iG7e?*1&#JfHC-k_9`s}taoy{zh z_F1j5*3!GbNH=F0OY5ez0pZ$@9gGyq@NG?uCAcn=DvVCu_t)(st?<;RK*tY#?zQi1 z#S>M}+Ij6`RrHLfc{?nr_RV_U6}MNqcR+uE!F|>=49{t537%y<$Gl<$;T2;DMz|XM zHiTXe)3L430+d&OH$qYmFfsJ1o_fV-!7IiKUNKhiim?ILsqk>Gnv>d^lU^}S@#@B# zX8fkHLN^vx$xCs^a*4Z^kp@CVpg|ZIZ}N`wFQ@)Fg_Nw2eYaI`KFk zU^|f=w?VZjPMWxuoZ8MuX^|qPLP%s$p|U{gqDYm9Py|So5JD_iz!I@x!3GJ5E?9I? zQ6#o}{D1e%o%d$!G?fqniH`NY?!D*U^L@^}Or48Z84jIdWw>Us4n$g>X8);}{^QKrCFmM8! zz$0PB?|F*Bx;RQSVs>v@XWG-zwbmUR07#%vrv8Smxi(llAtk-($$r_pV{@~>&}Kr= zIOt2B#dKUmEr{frTEI*jAvnz`8TPA!faTG`M)m{;itEO-4adOfJsMf_aFt`e#`xf9 z5Ft(t%x-Ao7k7K3;7@7G2B^S+0Ure4(47g`m=#QILX@p}5fBD&3_-1IY~19kH$-|h z6*RSr_TQg2xM)rXIdHhcvx0}WtDdU_19M>XNeesyWQSo1#nB5ZSK^ zZMj4 z%NxGO4}33J$PMk-lWBh(Fftk~i=q^!tw>FZt%G3T1^dew7v$?F&Iu<|9eP5|&C6nY zr-kt?k27=`pEl#J^HCZ4;E7@6BhSbgJ-_HVi-@jEjJN!ggu5^!rC(A#F$TU`{}Udb zY=?ewN#J)HY6JEbrSm$2JgIV^pfPHFr>UDv1er}>-AiJL4Q47)WWAMGfX~x4^byi= zsWyl)A8Rk#0Bxp(*owE8fOwbYKX*UEtY1hCVz4nGB@@F4k=R+lfK&#maDgIpadS2X zx_gx|S6^%j`Yb866wYul+s1qObf7w|&7c|zMW+?O2yt8qU0ex~XWQjmDd!r>34uHl zLb(zOxf0sA66%_|(l1xwxdP7>c&@;61)eMLTmw8IvZ-DO#piWae}_L>UC;!Q2~6m+ zGy|iGX3-i_{1r*FC=Uz^?qI5zj|Cj$j$$Gu{4Cyx9*dCfvzRF!*fi1Py5##XGh9*N z!ab4j5?>g(tA_=GH;ErfPY9-_l{N{n)GcTTzSj~uG%=Sry6}p|y{>W0FGG*pJJB{O z99!rk#5odvbPY{$PjA-pvY)Q432P`ctW2Bf9oV)WEjERX#VokV2&-*pWWJlyYbqm! z0M?#y*7Tu`HB@H(Gx;J3ApDywunG4BT)ZYs!i1{GMMkt~*VV$5OEP}|6t-uOB;K7k zGj`771%HX@=9b{M#lwx#am#0f9SIb82d)79zUYNM^dsmQ`W42qzKDIf7QN(KuL;iD zoS(wZeP48^D1+-{f3 zu6nH{YUCtal3_MSI%KI6NMYf4OnNo35>rDyXXKHl+4LWafgBidUhP;~=w)g5bQkWJ0q+&(Vhm1hBrgY+*vSOO*X_#dz<}&0)G8Y&)Sgw3#C7b?e1qErdn_uq05^P5nee1G z?3(oyn&jPJvGk(qwA}odU61K$T$_AO2(BT>b9!oMv(B@+V>WdvQs`hr6(|H>gbg2ES7e) z*P=5Vz>>y2M$>|y)pMcGMFQc!OeM|PkPxf)!Veq&cGc;o)l!K=eO{d2d;D)ep9e;68z2J&mwTiEXfxRl2UqX)1g`(2{1x#VTd`y- zcw6sdR7(A#uo{;Kv8d|$L#gYVW@abM@i0Izq8rOKg;bHRL9VMs9!ncOvRk%5rsLyhre`@|vl>jq1y_YPr4~ z$Mxk>rM}!Agll~{Nw4+kRk5u<3a_;FUQ(_KS+Om>RmtKgNpEedR)h+SZ>G&SZN1?! ze%~10G~PB-B!MOWkSUW+RL+%8vylWx{^94}X3flhbZFwIhBSD#ocF`^4|D6Lojem&Y< zDB98IqI6#(LDw*wfn-1h5}L4<)yWI`9+t(q0hp|l6H9c*S-g53cEcY%to!nHiAQ2> zeXBn!MM=GNCq3iK&*(X}=Pg+|PSSZ_N2~N1+SA2x-}Ly_tS?GNMU`lhsHDK}m{{NO z4|fCh%??4$vWsNv42`Nrp8j2Z6pZc=?5M=LH7lj9w-9veZL~#YZ zNF_B&mUR>B7|=1Q0uii}DAjqL({ViuF@L@rz?-Vs)mP(P1AHEiB>M~Tr=PpNxHi4| za%WGP3or4T)=2HDD2aBjcAx6`Pby7rebsjDbKUvHV)pBMS$62)n3hfVYESC1Ck{S& z^x&1t`^OGneRBViqc0xbf9cSe?w&ey`O4yzqem}2b=hevZC4#TaF9Qz9i83if$510 zonLhBYyYm~=~s>%c=EuQ&`pLqmHc{lW$`tBL_Gvl)~U&SYY|ZR{B8Hr0*|qdQEEy$ z{n@#h+2-trfB0^6=-BTXKe@Ml@i%9F`**6F$L2dfYq~KX{?qnGv9O0J^S#gdPosJN zA8EZc2i9J^q#^$2KTYo?49%}_pKXrv`9eFron(CVdUIuEO8?qsyNO=8;(s*;>^~n< zAKNzX<&)C?J_mTOh~9*vh1G6ca21X(LN=7s?u?F$S>z^(C+*K*LSlrF}#F}q?kw>l2 zPfr@I`Y|nW9_$>*X-Mt!6?48?SSeul(c>M^iB2e35`H(; z2JUp1W$vDgKhxK7e3hmsp|{1r$Gjht7?d*6xUM&w1g`QfCvZR49s`Lna^N9P#^H}k z!!uq6HW9I<-J1nYJec=KJny^VdnM4z|DztJA*z__FezK{Ujsh~POSP5et5@_b8DFE KC!ha24*Uzm;joba diff --git a/Bin/APP_Code_CSharp.pdb b/Bin/APP_Code_CSharp.pdb index 9f610333e02084b97204e61055bbf6d3b4994f3e..e08316fcb6af9eb94482e18c6078cb7874d36361 100644 GIT binary patch literal 163328 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 fICw9^(Y$~No Recibidas - @@ -338,7 +338,7 @@ - + @@ -380,6 +380,12 @@ + + + + + + diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb index 683c2a728..ef2355aba 100644 --- a/Compras/eFacturas.aspx.vb +++ b/Compras/eFacturas.aspx.vb @@ -1017,7 +1017,7 @@ Partial Class Compras_eFacturas e.Row.FCLinkButton("LnkAgregarPagoP").Visible = True End If Else - e.Row.FCLiteral("LtlXML").Text = "N/D" + e.Row.FCLiteral("LtlXML").Text = "N/D" ' String.Format("{0}{1}\{2}", Destino, e.Row.DBCampo("RFCDe"), e.Row.DBCampo("XML")) ' If e.Row.DBCampo("TipoComprobante") = "P" Then e.Row.FCLinkButton("LnkAgregarPagoP").Visible = False End If @@ -1026,7 +1026,7 @@ Partial Class Compras_eFacturas If File.Exists(String.Format("{0}{1}/{2}", Destino, e.Row.DBCampo("RFCDe"), e.Row.DBCampo("PDF"))) Then e.Row.FCLiteral("LtlPDF").Text = String.Format("Ver", HttpUtility.UrlEncode(e.Row.DBCampo("RFCDe")), HttpUtility.UrlEncode(e.Row.DBCampo("PDF"))) Else - e.Row.FCLiteral("LtlPDF").Text = "N/D" + e.Row.FCLiteral("LtlPDF").Text = "N/D" ' String.Format("{0}{1}/{2}", Destino, e.Row.DBCampo("RFCDe"), e.Row.DBCampo("PDF")) End If If e.Row.DBCampo("FueValidado").Contiene("1", "2", "3") Then @@ -3142,4 +3142,134 @@ Partial Class Compras_eFacturas Response.End() End If End Sub + Protected Sub LnkRegenerarPdfnew_Click(sender As Object, e As EventArgs) + Dim gvrow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) + Dim objxml As XmlSatCFDI = XmlSatCFDI.readXML(String.Format("{0}{1}\{2}", Destino, gvrow.DataKey("RFCDe"), gvrow.DataKey("XML"))) + If Not IsNothing(objxml) Then + Dim rutaReporte As String = String.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, "\Empresas\Grales\Formatos\CFDIV3.rdlc") + If Not IsNothing(objxml.complemento.Pagos) Then + rutaReporte = String.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, "\Empresas\Grales\Formatos\CFDIV3Pago.rdlc") + End If + Dim NombreArchivo As String = String.Format("{0}{1}\{2}", Destino, gvrow.DataKey("RFCDe"), gvrow.DataKey("PDF")) + + + Dim QR As ClbNegBICFDv3_2.ClsNegCBBGenerar = New ClbNegBICFDv3_2.ClsNegCBBGenerar() + Dim cQr As Byte() = QR.GenerarCBBBytes(objxml.emisor.Rfc, objxml.receptor.Rfc, If(IsNothing(objxml.complemento.Pagos), objxml.comprobante.Total, objxml.complemento.Pagos.Monto), objxml.complemento.UUID) + Dim parametros As List(Of ReportParameter) = New List(Of ReportParameter)() + parametros.Add(New ReportParameter("comprobante_Certificado", objxml.comprobante.Certificado)) + parametros.Add(New ReportParameter("comprobante_CondicionesDePago", objxml.comprobante.CondicionesDePago)) + parametros.Add(New ReportParameter("comprobante_Confirmacion", objxml.comprobante.Confirmacion)) + parametros.Add(New ReportParameter("comprobante_Fecha", objxml.comprobante.Fecha)) + parametros.Add(New ReportParameter("comprobante_Serie", objxml.comprobante.Serie)) + parametros.Add(New ReportParameter("comprobante_Folio", objxml.comprobante.Folio)) + parametros.Add(New ReportParameter("comprobante_Descuento", objxml.comprobante.Descuento.ToString("N2"))) + parametros.Add(New ReportParameter("comprobante_SubTotal", objxml.comprobante.SubTotal.ToString("N2"))) + parametros.Add(New ReportParameter("comprobante_Total", objxml.comprobante.Total.ToString("N2"))) + parametros.Add(New ReportParameter("comprobante_Version", objxml.comprobante.Version)) + parametros.Add(New ReportParameter("comprobante_TipoDeComprobante", objxml.comprobante.TipoDeComprobanteTexto)) + parametros.Add(New ReportParameter("comprobante_FormaPago", objxml.comprobante.FormaPagoTexto)) + parametros.Add(New ReportParameter("comprobante_LugarExpedicion", objxml.comprobante.LugarExpedicion)) + parametros.Add(New ReportParameter("comprobante_NoCertificado", objxml.comprobante.NoCertificado)) + parametros.Add(New ReportParameter("comprobante_Sello", objxml.comprobante.Sello)) + parametros.Add(New ReportParameter("comprobante_Moneda", objxml.comprobante.Moneda)) + parametros.Add(New ReportParameter("comprobante_TipoCambio", objxml.comprobante.TipoCambio.ToString("N2"))) + parametros.Add(New ReportParameter("comprobante_MetodoPago", objxml.comprobante.MetodoPagoTexto)) + parametros.Add(New ReportParameter("emisor_Rfc", objxml.emisor.Rfc)) + parametros.Add(New ReportParameter("emisor_Nombre", objxml.emisor.Nombre)) + parametros.Add(New ReportParameter("emisor_RegimenFiscal", objxml.emisor.RegimenFiscalTexto)) + parametros.Add(New ReportParameter("receptor_Rfc", objxml.receptor.Rfc)) + parametros.Add(New ReportParameter("receptor_Nombre", objxml.receptor.Nombre)) + parametros.Add(New ReportParameter("receptor_NumRegIdTrib", objxml.receptor.NumRegIdTrib)) + parametros.Add(New ReportParameter("receptor_ResidenciaFiscal", objxml.receptor.ResidenciaFiscal)) + parametros.Add(New ReportParameter("receptor_UsoCFDI", objxml.receptor.UsoCFDITexto)) + parametros.Add(New ReportParameter("complemento_FechaTimbrado", objxml.complemento.FechaTimbrado)) + parametros.Add(New ReportParameter("complemento_NoCertificadoSAT", objxml.complemento.NoCertificadoSAT)) + parametros.Add(New ReportParameter("complemento_RfcProvCertif", objxml.complemento.RfcProvCertif)) + parametros.Add(New ReportParameter("complemento_SelloCFD", objxml.complemento.SelloCFD)) + parametros.Add(New ReportParameter("complemento_SelloSAT", objxml.complemento.SelloSAT)) + parametros.Add(New ReportParameter("complemento_UUID", objxml.complemento.UUID)) + parametros.Add(New ReportParameter("complemento_CadenaOriginal", objxml.complemento.CadenaOriginal)) + If Not IsNothing(objxml.complemento.Pagos) Then + parametros.Add(New ReportParameter("CPFechaPago", objxml.complemento.Pagos.FechaPago)) + parametros.Add(New ReportParameter("CPFormaDePagoP", objxml.complemento.Pagos.FormaDePagoP)) + parametros.Add(New ReportParameter("CPFormaDePagoPText", objxml.complemento.Pagos.FormaDePagoPText)) + parametros.Add(New ReportParameter("CPMonedaP", objxml.complemento.Pagos.MonedaP)) + parametros.Add(New ReportParameter("CPMonto", objxml.complemento.Pagos.Monto.ToString())) + parametros.Add(New ReportParameter("CPTipoCambioP", objxml.complemento.Pagos.TipoCambioP.ToString())) + parametros.Add(New ReportParameter("CPNumOperacion", objxml.complemento.Pagos.NumOperacion)) + parametros.Add(New ReportParameter("CPNomBancoOrdExt", objxml.complemento.Pagos.NomBancoOrdExt)) + parametros.Add(New ReportParameter("CPRfcEmisorCtaOrd", objxml.complemento.Pagos.RfcEmisorCtaOrd)) + parametros.Add(New ReportParameter("CPCtaOrdenante", objxml.complemento.Pagos.CtaOrdenante)) + parametros.Add(New ReportParameter("CPRfcEmisorCtaBen", objxml.complemento.Pagos.RfcEmisorCtaBen)) + parametros.Add(New ReportParameter("CPCtaBeneficiario", objxml.complemento.Pagos.CtaBeneficiario)) + + End If + Using MR As ReportViewer = New ReportViewer() + Dim rdsTotales As ReportDataSource = New ReportDataSource() + Dim ltotales As List(Of utilValores) = New List(Of utilValores)() + ltotales.Add(New utilValores("Subtotal", objxml.comprobante.SubTotal.ToString("N2"))) + + If objxml.comprobante.Descuento > 0 Then + ltotales.Add(New utilValores("Descuento", objxml.comprobante.Descuento.ToString("N2"))) + End If + + For Each item As CFDIImpuesto In objxml.Impuestos + + If item.Importe > 0 Then + Dim TasaOCuota As Decimal = 0 + Decimal.TryParse(item.TasaOCuota, TasaOCuota) + ltotales.Add(New utilValores($"Impuestos {item.Tipo} {item.ImpuestoTexto} {(If(item.TipoFactor = "Tasa", (TasaOCuota * 100).ToString("N4"), item.TasaOCuota))} {(If(item.TipoFactor = "Tasa", "%", ""))}", item.Importe.ToString("N2"))) + End If + Next + + ltotales.Add(New utilValores("Total", objxml.comprobante.Total.ToString("N2"))) + rdsTotales.Name = "dsTotales" + rdsTotales.Value = ltotales + MR.LocalReport.DataSources.Add(rdsTotales) + Dim rds2 As ReportDataSource = New ReportDataSource() + Dim limagenes As List(Of utilImage) = New List(Of utilImage)() + limagenes.Add(New utilImage(cQr)) + rds2.Name = "dsImagenes" + rds2.Value = limagenes + MR.LocalReport.DataSources.Add(rds2) + Dim rdsrelacionados As ReportDataSource = New ReportDataSource() + rdsrelacionados.Name = "dsRelacionados" + rdsrelacionados.Value = objxml.cFDIRelacionados + MR.LocalReport.DataSources.Add(rdsrelacionados) + Dim rds1 As ReportDataSource = New ReportDataSource() + rds1.Name = "dsConceptos" + rds1.Value = objxml.GetConceptosforpdf() + MR.LocalReport.DataSources.Add(rds1) + + If Not IsNothing(objxml.complemento.Pagos) Then + + Dim rdsp As ReportDataSource = New ReportDataSource() + rdsp.Name = "dsPagos" + rdsp.Value = objxml.complemento.Pagos.doctosRelacionados + MR.LocalReport.DataSources.Add(rdsp) + End If + + MR.LocalReport.ReportPath = rutaReporte + MR.ProcessingMode = ProcessingMode.Local + MR.LocalReport.EnableExternalImages = True + MR.LocalReport.SetParameters(parametros) + MR.LocalReport.Refresh() + Dim warnings As Warning() = Nothing + Dim streamids As String() = Nothing + Dim mimeType As String = Nothing + Dim encoding As String = Nothing + Dim extension As String = Nothing + Dim bytes As Byte() = Nothing + bytes = MR.LocalReport.Render("PDF", Nothing, mimeType, encoding, extension, streamids, warnings) + + Using fs As FileStream = New FileStream(NombreArchivo, FileMode.Create) + fs.Write(bytes, 0, bytes.Length) + fs.Close() + End Using + End Using + Alert("PDF Generado!") + Else + Alert("no se pudo procesar el archivo xml") + End If + End Sub End Class \ No newline at end of file diff --git a/Scripts/custom.js b/Scripts/custom.js index 2444aef7f..3df5108f9 100644 --- a/Scripts/custom.js +++ b/Scripts/custom.js @@ -1738,10 +1738,23 @@ function loaderEnd() { }, 10); } + jQuery(document).ready(function () { $("body").on("click", ".ajax__tab_outer .ajax__tab_inner .ajax__tab_tab", function () { setTimeout(loadadscroll, 10); }); +//KeppMenuOpen + { + let varpath = window.location.pathname; + if (window.location.pathname != '') { + let textfinder = '.page-sidebar-menu a[href="' + varpath + '"]'; + let objmenu = $($(textfinder)[0]); + objmenu.parents().filter("li").addClass('active open') + objmenu.parents().filter(".sub-menu").css("display", "") + + } + } + $('body').on('click', '.tab-wizard > .ajax__tab_header > span,.tab-wizard2 > .ajax__tab_header > span', function (e) { let padre = $(this).closest('.tab-wizard,.tab-wizard2 '); From 71159a162b76981cd2daa68be7d090ab4a6a3a0b Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Wed, 6 Nov 2019 09:22:45 -0700 Subject: [PATCH 06/12] Pagos para FyE,IVA al generar OC,poliza virtual,etc --- Ashx/SIGPolizaVirtual.ashx | 544 +++++++++++++++++++----- Bancos/RepEgresosSinComprobante.aspx | 18 +- Bancos/RepEgresosSinComprobante.aspx.vb | 198 +++++++-- CxC/RepCxCDetalle.aspx.vb | 7 +- OC/OC.aspx.vb | 23 +- Ventas/PV.aspx.vb | 9 +- Ventas/RepComisionesJAM.aspx | 2 +- 7 files changed, 642 insertions(+), 159 deletions(-) diff --git a/Ashx/SIGPolizaVirtual.ashx b/Ashx/SIGPolizaVirtual.ashx index e7f2621e1..6ba9db938 100644 --- a/Ashx/SIGPolizaVirtual.ashx +++ b/Ashx/SIGPolizaVirtual.ashx @@ -1,5 +1,6 @@ <%@ WebHandler Language="VB" Class="SIGPolizaVirtual" %> +Imports Fluent Imports System Imports System.Web Imports System.Net.Http @@ -9,61 +10,187 @@ Imports Newtonsoft.Json Imports Newtonsoft.Json.Linq Imports Extensiones Imports System.IO +Imports System.Runtime.CompilerServices Public Class SIGPolizaVirtual : Implements IHttpHandler, IRequiresSessionState Protected ReadOnly Property User As String = "cslth.2809@jcilink.com" Protected ReadOnly Property Password As String = "ff31580a95f36b51ad27f970428b77a5a9245076" +#Region "U S U A R I O - T O K E N" + + Private Function ValidaUsuarioSistema(CveEmpresa As Integer, Optional CveUsuario As Integer = 100) As Usuario + + Dim UsuarioToken As Usuario = Nothing + Dim ObjUsuarios As New ClsSisUsuarios + If ObjUsuarios.GetUsuarios(CveUsuario) Then + If ObjUsuarios.DtResultados.Rows.Count > 0 Then + Dim Usuario = ObjUsuarios.DtResultados.Rows(0)("Usuario").ToString() + Dim Contrasenia = ObjUsuarios.DtResultados.Rows(0)("Contraseña").ToString() + UsuarioToken = ObjUsuarios.ValidaUsuario(Usuario, Contrasenia, IMEI, CveEmpresa) + UsuarioToken.CveEmpresa = CveEmpresa + CreaObjetoEmpresa(UsuarioToken) + End If + End If + ObjUsuarios.Dispose() + Return UsuarioToken + End Function + Private Sub CreaObjetoEmpresa(ByRef UsuarioToken As Usuario) + + Dim ObjEmpresa As New ClsSisEmpresas() + If ObjEmpresa.GetEmpresas(UsuarioToken.CveEmpresa, "-1", "-1", "-1", "-1") Then + If ObjEmpresa.GetEmpresasFuncionalidades(UsuarioToken.CveEmpresa) Then + Dim dttmp As Data.DataTable = ObjEmpresa.DtResultados + + Dim EmpresasFuncionalidades As New HybridDictionary + For Each Row As Data.DataRow In dttmp.Rows + EmpresasFuncionalidades.Add(Convert.ToInt32(Row("CveFuncionalidad")), Row("Valor").ToString) + Next + ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades) + End If + + UsuarioToken.Empresa = ObjEmpresa.Empresa + End If + ObjEmpresa.Dispose() + End Sub +#End Region + Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest context.Response.ContentType = "application/json" - EnviarPolizaVentaWS(context) - EnviarPolizaVentaLTHWSD(context) - EnviarPolizaIndicadores(context) + Dim usuario = ValidaUsuarioSistema(140, 100) + Dim ObjFactura As New Modelos.Factura(usuario, 898028, 140) + + GeneraPolizaVentaWS(context, ObjFactura) + 'GeneraPolizaVentaLTHWSD(context) + 'GeneraIndicadores(context) End Sub + Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable Get Return False End Get End Property - Private Sub EnviarPolizaVentaLTHWSD(ByVal context As HttpContext) + Protected Sub GeneraPolizaVentaWS(ByVal context As HttpContext, ObjFactura As Modelos.Factura) + Dim obj As New MPolizaVentaWS + 'DATOS DEL CLIENTE + obj.customer_name = ObjFactura.Cliente.Nombre + obj.customer_last_name1 = "" + obj.customer_last_name2 = "" + obj.customer_birthday = Nothing + obj.customer_phone = ObjFactura.Cliente.Telefono + obj.customer_email = ObjFactura.Cliente.Mail + obj.customer_gender = "03" 'OTRO GENERO + obj.customer_advertising = False + obj.customer_car_brand = "00" + obj.customer_car_model = "00" + obj.customer_car_year = ObjFactura.Fecha.Year + + 'DATOS DE VENTA + obj.sale_date = Now + obj.sale_paidby = "01" + obj.sale_type = "01" 'PISO + obj.sale_type_service = "01" 'PARTICULAR + obj.sale_total = ObjFactura.Total + obj.sale_discount = ObjFactura.SubTotal + obj.sale_id = GuidGenerator.GenerateTimeBasedGuid().ToString() + + 'Dim PS = ObjFactura.DtDetalle.Rows(0) + 'DATOS DEL PRODUCTO + obj.product_code = "174925" + obj.product_unique_code = "65047187" + obj.product_sale_type = "02" 'AJUSTE + + 'DATOS DE USADO + obj.used_product = True + obj.used_brand = "01" + obj.used_bci = "25" + obj.used_month = 1 + obj.used_year = 2015 + obj.used_sale_date = ObjFactura.Fecha + + EnviarPolizaVentaWS(context, obj) + End Sub + + Protected Sub GeneraPolizaVentaLTHWSD(ByVal context As HttpContext, ObjFactura As Modelos.Factura) + Dim obj As New MPolizaVentaLTHWSD + 'DATOS DEL CLIENTE + obj.customer_name = "JOSE ENRIQUE" + obj.customer_last_name1 = "VIZCARA" + obj.customer_last_name2 = "RENDON" + obj.customer_birthday = Now + obj.customer_phone = "8186545256" + obj.customer_email = "mail@mail.com" + obj.customer_gender = "02" + obj.customer_advertising = False + obj.customer_car_brand = "02" + obj.customer_car_model = "741" + obj.customer_car_year = 2015 + + 'DATOS DE VENTA + obj.sale_date = Now + obj.sale_paidby = "01" + obj.sale_type = "01" + obj.sale_type_service = "01" + obj.sale_discount = 0 + obj.sale_id = GuidGenerator.GenerateTimeBasedGuid().ToString() + + 'DATOS DEL PRODUCTO + obj.product_code = "174925" + obj.product_unique_code = "65047187" + obj.product_sale_type = "01" + + 'DATOS DE USADO + obj.used_product = True + obj.used_brand = "01" + obj.used_bci = "25" + obj.used_month = 1 + obj.used_year = 2015 + obj.used_sale_date = Now + + EnviarPolizaVentaLTHWSD(context, obj) + End Sub + Protected Sub GeneraIndicadores(ByVal context As HttpContext) + Dim obj As New MIndicador(True) + EnviarPolizaIndicadores(context, obj) + End Sub + + Protected Sub EnviarPolizaVentaLTHWSD(ByVal context As HttpContext, obj As MPolizaVentaLTHWSD) Dim Retorno As String = "[]" Try Using wc As New HttpClient() Dim Url = New Uri("http://polizavirtual.com.mx/lthwsd/api/Venta") - Dim Parametros = New List(Of KeyValuePair(Of String, String)) Parametros.Add(New KeyValuePair(Of String, String)("User", User)) Parametros.Add(New KeyValuePair(Of String, String)("password", Password)) - Parametros.Add(New KeyValuePair(Of String, String)("customer_name", "JOSE ENRIQUE VIZCARA RENDON")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name1", "Prueba")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name2", "Prueba")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_birthday", "1900-01-01 00:00:00")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_phone", "5417543010")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_email", "elunap@gmail.com")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_gender", "02")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_advertising", "False")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_date", "2018-07-24 00:00:00")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_paidby", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_type", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_type_service", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("product_code", "174200")) - Parametros.Add(New KeyValuePair(Of String, String)("product_unique_code", "65047187")) - Parametros.Add(New KeyValuePair(Of String, String)("product_sale_type", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("used_product", "True")) - Parametros.Add(New KeyValuePair(Of String, String)("used_brand", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("used_bci", "25")) - Parametros.Add(New KeyValuePair(Of String, String)("used_month", "1")) - Parametros.Add(New KeyValuePair(Of String, String)("used_year", "2015")) - Parametros.Add(New KeyValuePair(Of String, String)("used_sale_date", "2018-07-24 00:00:00")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_car_brand", "36")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_car_model", "741")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_car_year", "2015")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_discount", "0")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_id", "32860")) + Parametros.Add(New KeyValuePair(Of String, String)("customer_name", obj.customer_name)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name1", obj.customer_last_name1)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name2", obj.customer_last_name1)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_birthday", obj.customer_birthday.ToString("yyyy-MM-dd HH:mm:ss"))) + Parametros.Add(New KeyValuePair(Of String, String)("customer_phone", obj.customer_phone)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_email", obj.customer_email)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_gender", obj.customer_gender)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_advertising", obj.customer_advertising.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("sale_date", obj.sale_date.ToString("yyyy-MM-dd HH:mm:ss"))) + Parametros.Add(New KeyValuePair(Of String, String)("sale_paidby", obj.sale_paidby)) + Parametros.Add(New KeyValuePair(Of String, String)("sale_type", obj.sale_type)) + Parametros.Add(New KeyValuePair(Of String, String)("sale_type_service", obj.sale_type_service)) + Parametros.Add(New KeyValuePair(Of String, String)("product_code", obj.product_code)) + Parametros.Add(New KeyValuePair(Of String, String)("product_unique_code", obj.product_unique_code)) + Parametros.Add(New KeyValuePair(Of String, String)("product_sale_type", obj.product_sale_type)) + Parametros.Add(New KeyValuePair(Of String, String)("used_product", obj.used_product.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("used_brand", obj.used_brand)) + Parametros.Add(New KeyValuePair(Of String, String)("used_bci", obj.used_bci)) + Parametros.Add(New KeyValuePair(Of String, String)("used_month", obj.used_month.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("used_year", obj.used_year.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("used_sale_date", obj.used_sale_date.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("customer_car_brand", obj.customer_car_brand.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("customer_car_model", obj.customer_car_model.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("customer_car_year", obj.customer_car_year.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("sale_discount", obj.sale_discount.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("sale_id", obj.sale_id.ToString())) Dim content As New FormUrlEncodedContent(Parametros) Dim response = wc.PostAsync(Url, content).Result @@ -78,7 +205,7 @@ Public Class SIGPolizaVirtual : Implements IHttpHandler, IRequiresSessionState context.Response.Write(Retorno) End Sub - Private Sub EnviarPolizaVentaWS(ByVal context As HttpContext) + Protected Sub EnviarPolizaVentaWS(ByVal context As HttpContext, obj As MPolizaVentaWS) Dim Retorno As String = "[]" Try Using wc As New HttpClient() @@ -88,33 +215,33 @@ Public Class SIGPolizaVirtual : Implements IHttpHandler, IRequiresSessionState Parametros.Add(New KeyValuePair(Of String, String)("User", User)) Parametros.Add(New KeyValuePair(Of String, String)("password", Password)) - Parametros.Add(New KeyValuePair(Of String, String)("customer_name", "JOSE ENRIQUE ")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name1", "VIZCARA")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name2", "RENDON")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_birthday", "1900-01-01 00:00:00")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_phone", "8186545256")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_email", "mail@mail.com")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_gender", "02")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_advertising", "False")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_date", "2018-07-24 00:00:00")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_paidby", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_type", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_type_service", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("product_code", "174925")) - Parametros.Add(New KeyValuePair(Of String, String)("product_unique_code", "65047187")) - Parametros.Add(New KeyValuePair(Of String, String)("product_sale_type", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_total", "0")) - Parametros.Add(New KeyValuePair(Of String, String)("used_product", "True")) - Parametros.Add(New KeyValuePair(Of String, String)("used_brand", "01")) - Parametros.Add(New KeyValuePair(Of String, String)("used_bci", "25")) - Parametros.Add(New KeyValuePair(Of String, String)("used_month", "1")) - Parametros.Add(New KeyValuePair(Of String, String)("used_year", "2015")) - Parametros.Add(New KeyValuePair(Of String, String)("used_sale_date", "2018-07-24 00:00:00")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_car_brand", "36")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_car_model", "741")) - Parametros.Add(New KeyValuePair(Of String, String)("customer_car_year", "2015")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_discount", "0")) - Parametros.Add(New KeyValuePair(Of String, String)("sale_id", "32860")) + Parametros.Add(New KeyValuePair(Of String, String)("customer_name", obj.customer_name)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name1", obj.customer_last_name1)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_last_name2", obj.customer_last_name1)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_birthday", obj.customer_birthday.ToString("yyyy-MM-dd HH:mm:ss"))) + Parametros.Add(New KeyValuePair(Of String, String)("customer_phone", obj.customer_phone)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_email", obj.customer_email)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_gender", obj.customer_gender)) + Parametros.Add(New KeyValuePair(Of String, String)("customer_advertising", obj.customer_advertising.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("sale_date", obj.sale_date.ToString("yyyy-MM-dd HH:mm:ss"))) + Parametros.Add(New KeyValuePair(Of String, String)("sale_paidby", obj.sale_paidby)) + Parametros.Add(New KeyValuePair(Of String, String)("sale_type", obj.sale_type)) + Parametros.Add(New KeyValuePair(Of String, String)("sale_type_service", obj.sale_type_service)) + Parametros.Add(New KeyValuePair(Of String, String)("product_code", obj.product_code)) + Parametros.Add(New KeyValuePair(Of String, String)("product_unique_code", obj.product_unique_code)) + Parametros.Add(New KeyValuePair(Of String, String)("product_sale_type", obj.product_sale_type)) + Parametros.Add(New KeyValuePair(Of String, String)("sale_total", obj.sale_total.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("used_product", obj.used_product.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("used_brand", obj.used_brand)) + Parametros.Add(New KeyValuePair(Of String, String)("used_bci", obj.used_bci)) + Parametros.Add(New KeyValuePair(Of String, String)("used_month", obj.used_month.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("used_year", obj.used_year.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("used_sale_date", obj.used_sale_date.ToString("yyyy-MM-dd HH:mm:ss"))) + Parametros.Add(New KeyValuePair(Of String, String)("customer_car_brand", obj.customer_car_brand.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("customer_car_model", obj.customer_car_model.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("customer_car_year", obj.customer_car_year.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("sale_discount", obj.sale_discount.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("sale_id", obj.sale_id.ToString())) Dim content As New FormUrlEncodedContent(Parametros) Dim response = wc.PostAsync(Url, content).Result @@ -129,7 +256,7 @@ Public Class SIGPolizaVirtual : Implements IHttpHandler, IRequiresSessionState context.Response.Write(Retorno) End Sub - Private Sub EnviarPolizaIndicadores(ByVal context As HttpContext) + Protected Sub EnviarPolizaIndicadores(ByVal context As HttpContext, obj As MIndicador) Dim Retorno As String = "[]" Try Using wc As New HttpClient() @@ -139,47 +266,47 @@ Public Class SIGPolizaVirtual : Implements IHttpHandler, IRequiresSessionState Parametros.Add(New KeyValuePair(Of String, String)("User", User)) Parametros.Add(New KeyValuePair(Of String, String)("password", Password)) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_optima", "1")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_fullpower", "2")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_hitec", "3")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_agm", "4")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_suv", "5")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_taxi", "6")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_america", "7")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_lth", "8")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_cronos", "9")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_diener", "10")) - Parametros.Add(New KeyValuePair(Of String, String)("v_b_heavyduty", "11")) - Parametros.Add(New KeyValuePair(Of String, String)("v_m_lth", "12")) - Parametros.Add(New KeyValuePair(Of String, String)("v_o_filtros", "13")) - Parametros.Add(New KeyValuePair(Of String, String)("v_o_lub1", "14")) - Parametros.Add(New KeyValuePair(Of String, String)("v_o_lubgalon", "15")) - Parametros.Add(New KeyValuePair(Of String, String)("v_o_lub5", "16")) - Parametros.Add(New KeyValuePair(Of String, String)("v_o_aa", "17")) - Parametros.Add(New KeyValuePair(Of String, String)("v_o_aaa", "18")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_optima", "19")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_fullpower", "20")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_hitec", "21")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_agm", "22")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_suv", "23")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_taxi", "24")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_america", "25")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_lth", "26")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_cronos", "27")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_diener", "28")) - Parametros.Add(New KeyValuePair(Of String, String)("g_b_heavyduty", "29")) - Parametros.Add(New KeyValuePair(Of String, String)("g_m_lth", "30")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_optima", "31")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_fullpower", "32")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_hitec", "33")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_agm", "34")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_suv", "35")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_taxi", "36")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_america", "37")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_lth", "38")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_cronos", "39")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_diener", "40")) - Parametros.Add(New KeyValuePair(Of String, String)("a_b_heavyduty", "41")) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_optima", obj.v_b_optima.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_fullpower", obj.v_b_fullpower.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_hitec", obj.v_b_hitec.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_agm", obj.v_b_agm.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_suv", obj.v_b_suv.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_taxi", obj.v_b_taxi.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_america", obj.v_b_america.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_lth", obj.v_b_lth.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_cronos", obj.v_b_cronos.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_diener", obj.v_b_diener.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_b_heavyduty", obj.v_b_heavyduty.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_m_lth", obj.v_m_lth.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_o_filtros", obj.v_o_filtros.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_o_lub1", obj.v_o_lub1.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_o_lubgalon", obj.v_o_lubgalon.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_o_lub5", obj.v_o_lub5.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_o_aa", obj.v_o_aa.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("v_o_aaa", obj.v_o_aaa.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_optima", obj.g_b_optima.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_fullpower", obj.g_b_fullpower.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_hitec", obj.g_b_hitec.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_agm", obj.g_b_agm.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_suv", obj.g_b_suv.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_taxi", obj.g_b_taxi.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_america", obj.g_b_america.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_lth", obj.g_b_lth.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_cronos", obj.g_b_cronos.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_diener", obj.g_b_diener.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_b_heavyduty", obj.g_b_heavyduty.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("g_m_lth", obj.g_m_lth.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_optima", obj.a_b_optima.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_fullpower", obj.a_b_fullpower.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_hitec", obj.a_b_hitec.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_agm", obj.a_b_agm.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_suv", obj.a_b_suv.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_taxi", obj.a_b_taxi.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_america", obj.a_b_america.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_lth", obj.a_b_lth.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_cronos", obj.a_b_cronos.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_diener", obj.a_b_diener.ToString())) + Parametros.Add(New KeyValuePair(Of String, String)("a_b_heavyduty", obj.a_b_heavyduty.ToString())) Dim content As New FormUrlEncodedContent(Parametros) Dim response = wc.PostAsync(Url, content).Result @@ -194,4 +321,217 @@ Public Class SIGPolizaVirtual : Implements IHttpHandler, IRequiresSessionState context.Response.Write(Retorno) End Sub -End Class \ No newline at end of file +End Class + +Public Class MPolizaVentaLTHWSD + Public Property customer_name As String + Public Property customer_last_name1 As String + Public Property customer_last_name2 As String + Public Property customer_birthday As DateTime + Public Property customer_phone As String + Public Property customer_email As String + Public Property customer_gender As String + Public Property customer_advertising As Boolean + Public Property sale_date As DateTime + Public Property sale_paidby As String + Public Property sale_type As String + Public Property sale_type_service As String + Public Property product_code As String + Public Property product_unique_code As String + Public Property product_sale_type As String + Public Property used_product As Boolean + Public Property used_brand As String + Public Property used_bci As String + Public Property used_month As Integer + Public Property used_year As Integer + Public Property used_sale_date As DateTime + Public Property customer_car_brand As String + Public Property customer_car_model As String + Public Property customer_car_year As Integer + Public Property sale_discount As Decimal + Public Property sale_id As String +End Class + +Public Class MPolizaVentaWS + Public Property customer_name As String + Public Property customer_last_name1 As String + Public Property customer_last_name2 As String + Public Property customer_birthday As DateTime + Public Property customer_phone As String + Public Property customer_email As String + Public Property customer_gender As String + Public Property customer_advertising As Boolean + Public Property sale_date As DateTime + Public Property sale_paidby As String + Public Property sale_type As String + Public Property sale_type_service As String + Public Property sale_total As Decimal + Public Property product_code As String + Public Property product_unique_code As String + Public Property product_sale_type As String + Public Property used_product As Boolean + Public Property used_brand As String + Public Property used_bci As String + Public Property used_month As Integer + Public Property used_year As Integer + Public Property used_sale_date As DateTime + Public Property customer_car_brand As String + Public Property customer_car_model As String + Public Property customer_car_year As Integer + Public Property sale_discount As Decimal + Public Property sale_id As String +End Class + +Public Class MIndicador + + Sub New(Optional UsaValoresPrueba As Boolean = False) + If UsaValoresPrueba Then + Dim Index As Integer = 0 + For Each p As Reflection.PropertyInfo In Me.GetType().GetProperties() + Index = Index + 1 + p.SetValue(Me, Convert.ChangeType(Index, p.PropertyType), Nothing) + Next + End If + End Sub + + Public Property v_b_optima As Integer + Public Property v_b_fullpower As Integer + Public Property v_b_hitec As Integer + Public Property v_b_agm As Integer + Public Property v_b_suv As Integer + Public Property v_b_taxi As Integer + Public Property v_b_america As Integer + Public Property v_b_lth As Integer + Public Property v_b_cronos As Integer + Public Property v_b_diener As Integer + Public Property v_b_heavyduty As Integer + Public Property v_m_lth As Integer + Public Property v_o_filtros As Integer + Public Property v_o_lub1 As Integer + Public Property v_o_lubgalon As Integer + Public Property v_o_lub5 As Integer + Public Property v_o_aa As Integer + Public Property v_o_aaa As Integer + Public Property g_b_optima As Integer + Public Property g_b_fullpower As Integer + Public Property g_b_hitec As Integer + Public Property g_b_agm As Integer + Public Property g_b_suv As Integer + Public Property g_b_taxi As Integer + Public Property g_b_america As Integer + Public Property g_b_lth As Integer + Public Property g_b_cronos As Integer + Public Property g_b_diener As Integer + Public Property g_b_heavyduty As Integer + Public Property g_m_lth As Integer + Public Property a_b_optima As Integer + Public Property a_b_fullpower As Integer + Public Property a_b_hitec As Integer + Public Property a_b_agm As Integer + Public Property a_b_suv As Integer + Public Property a_b_taxi As Integer + Public Property a_b_america As Integer + Public Property a_b_lth As Integer + Public Property a_b_cronos As Integer + Public Property a_b_diener As Integer + Public Property a_b_heavyduty As Integer +End Class + + + +Namespace Fluent + Public Enum GuidVersion + TimeBased = &H1 + Reserved = &H2 + NameBased = &H3 + Random = &H4 + End Enum + + Partial Public Module GuidGenerator + Public Const ByteArraySize = 16 + Public Const VariantByte = 8 + Public Const VariantByteMask = &H3F + Public Const VariantByteShift = &H80 + Public Const VersionByte = 7 + Public Const VersionByteMask = &HF + Public Const VersionByteShift = 4 + Private Const TimestampByte As Byte = 0 + Private Const GuidClockSequenceByte As Byte = 8 + Private Const NodeByte As Byte = 10 + Private ReadOnly GregorianCalendarStart As DateTimeOffset = New DateTimeOffset(1582, 10, 15, 0, 0, 0, TimeSpan.Zero) + Public Property DefaultClockSequence As Byte() + Public Property DefaultNode As Byte() + + Sub New() + DefaultClockSequence = New Byte(1) {} + DefaultNode = New Byte(5) {} + Dim random = New Random + random.NextBytes(DefaultClockSequence) + random.NextBytes(DefaultNode) + End Sub + + + Function GetVersion(ByVal guid As Guid) As GuidVersion + Dim bytes = guid.ToByteArray + Return ((bytes(VersionByte) And &HFF) >> VersionByteShift) + End Function + + Function GetDateTimeOffset(ByVal guid As Guid) As DateTimeOffset + Dim bytes As Byte() = guid.ToByteArray + bytes(VersionByte) = bytes(VersionByte) And CByte(VersionByteMask) + bytes(VersionByte) = bytes(VersionByte) Or (CByte(GuidVersion.TimeBased) >> VersionByteShift) + Dim timestampBytes = New Byte(7) {} + Array.Copy(bytes, TimestampByte, timestampBytes, 0, 8) + Dim timestamp As Long = BitConverter.ToInt64(timestampBytes, 0) + Dim ticks As Long = timestamp + GregorianCalendarStart.Ticks + + Return New DateTimeOffset(ticks, TimeSpan.Zero) + End Function + + Function GetDateTime(ByVal guid As Guid) As Date + Return GetDateTimeOffset(guid).DateTime + End Function + + Function GetLocalDateTime(ByVal guid As Guid) As Date + Return GetDateTimeOffset(guid).LocalDateTime + End Function + + Function GetUtcDateTime(ByVal guid As Guid) As Date + Return GetDateTimeOffset(guid).UtcDateTime + End Function + + Function GenerateTimeBasedGuid() As Guid + Return GenerateTimeBasedGuid(DateTimeOffset.UtcNow, DefaultClockSequence, DefaultNode) + End Function + + Function GenerateTimeBasedGuid(ByVal dateTime As Date) As Guid + Return GenerateTimeBasedGuid(dateTime, DefaultClockSequence, DefaultNode) + End Function + + Function GenerateTimeBasedGuid(ByVal dateTime As DateTimeOffset) As Guid + Return GenerateTimeBasedGuid(dateTime, DefaultClockSequence, DefaultNode) + End Function + + Function GenerateTimeBasedGuid(ByVal dateTime As Date, ByVal clockSequence As Byte(), ByVal node As Byte()) As Guid + Return GenerateTimeBasedGuid(New DateTimeOffset(dateTime), clockSequence, node) + End Function + + Function GenerateTimeBasedGuid(ByVal dateTime As DateTimeOffset, ByVal clockSequence As Byte(), ByVal node As Byte()) As Guid + If clockSequence Is Nothing Then Throw New ArgumentNullException("clockSequence") + If node Is Nothing Then Throw New ArgumentNullException("node") + If clockSequence.Length <> 2 Then Throw New ArgumentOutOfRangeException("clockSequence", "The clockSequence must be 2 bytes.") + If node.Length <> 6 Then Throw New ArgumentOutOfRangeException("node", "The node must be 6 bytes.") + Dim ticks = (dateTime - GregorianCalendarStart).Ticks + Dim guid = New Byte(15) {} + Dim timestamp = BitConverter.GetBytes(ticks) + Array.Copy(node, 0, guid, NodeByte, Math.Min(6, node.Length)) + Array.Copy(clockSequence, 0, guid, GuidClockSequenceByte, Math.Min(2, clockSequence.Length)) + Array.Copy(timestamp, 0, guid, TimestampByte, Math.Min(8, timestamp.Length)) + guid(VariantByte) = guid(VariantByte) And CByte(VariantByteMask) + guid(VariantByte) = guid(VariantByte) Or CByte(VariantByteShift) + guid(VersionByte) = guid(VersionByte) And CByte(VersionByteMask) + guid(VersionByte) = guid(VersionByte) Or (CByte(GuidVersion.TimeBased) << VersionByteShift) + Return New Guid(guid) + End Function + End Module +End Namespace diff --git a/Bancos/RepEgresosSinComprobante.aspx b/Bancos/RepEgresosSinComprobante.aspx index 3b425d2d0..957f1555a 100644 --- a/Bancos/RepEgresosSinComprobante.aspx +++ b/Bancos/RepEgresosSinComprobante.aspx @@ -16,7 +16,13 @@ Otros Egresos

  • - Saldar + Viaticos-Personal +
  • +
  • + Saldar Proveedores +
  • +
  • + Saldar FyE
  • @@ -153,7 +159,7 @@ - + @@ -212,8 +218,14 @@ - + + + + + + diff --git a/Bancos/RepEgresosSinComprobante.aspx.vb b/Bancos/RepEgresosSinComprobante.aspx.vb index e68307aa3..33322b9bd 100644 --- a/Bancos/RepEgresosSinComprobante.aspx.vb +++ b/Bancos/RepEgresosSinComprobante.aspx.vb @@ -180,53 +180,88 @@ Partial Class Bancos_RepEgresosSinComprobante gr.FCCheckBox("Chk").Visible = True LnkSaldar.Visible = True LnkHabilitarSaldar.Visible = False - 'portletBody.Attributes.Remove("style") - 'portletBody.Attributes.Add("style", "display: block;") - - 'HExtensorFiltro.Attributes.Remove("class") - 'HExtensorFiltro.Attributes.Add("class", "collapse") - - 'UPFiltros.Update() UPDatos.Update() End If Next + End Sub + Private Sub LnkHabilitarSaldoFyE_Click(sender As Object, e As EventArgs) Handles LnkHabilitarSaldarFyE.Click + For Each gr As GridViewRow In GvPersonal.Rows + If gr.DataKey("CvePersonal") <> "" Then + gr.FCCheckBox("Chk").Visible = True + LnkSaldarFyE.Visible = True + LnkHabilitarSaldarFyE.Visible = False + upDatosPersonal.Update() + End If + Next End Sub Protected Sub LnkSaldar_Click(sender As Object, e As EventArgs) Dim ObjConta As New ClsContabilidad - ObjConta.IniciaTransacSQL() + Dim ObjProveedor As New ClsCompProveedores(ObjConta.IniciaTransacSQL()) + Dim CvePrePoliza As Integer = 0 Dim MsgError As String = "" + Try + For Each gr As GridViewRow In GvESC.Rows + If gr.FCCheckBox("Chk").Checked Then + Dim CveCuenta As Integer = 0 + Dim IdCtaContable As Integer = 0 + Dim CveConceptoContable As Integer + + Select Case gr.DataKey("CveConceptoContable").ToEntero + Case 10 + CveConceptoContable = 21 + Case 28 + CveConceptoContable = 29 + Case 37 + CveConceptoContable = 43 + Case 42 + CveConceptoContable = 41 + Case 43 + CveConceptoContable = 37 + End Select + + If ObjProveedor.GetProveedores(ClsCompProveedores.TipoConsulta.ParaUsoEnEmpresa, gr.DataKey("CveProveedor").ToEntero, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then + If ObjProveedor.DtResultados.Rows.Count > 0 Then + IdCtaContable = ObjProveedor.IdCtaContProveedores + End If + End If + + If ObjConta.GetCuentaDobleConta(IdCtaContable, UsuarioActual.CveEmpresa) Then + If ObjConta.DtResultados.Rows.Count > 0 Then + CveCuenta = ObjConta.DtResultados.Rows(0)("CveCuenta").ToString.ToEntero + End If + End If + + CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepEgresosSinComprobante", 6, gr.DataKey("Saldo").ToDecimal, gr.DataKey("Saldo").ToDecimal, gr.DataKey("CveMoneda").ToEntero, Now, + "Saldo de ExC por Sistema", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, gr.DataKey("Saldo").ToDecimal, "", CveConceptoContable, "Saldo de ExC por Sistema", Now, -1, -1, + gr.DataKey("CveIE").ToEntero, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CvePersonal:=gr.DataKey("CvePersonal").ToEntero, + ImporteMX:=gr.DataKey("Saldo").ToDecimal, CveCuenta:=CveCuenta) Then + MsgError = "Ocurrio un error al saldar el movimiento" + Exit For + End If + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, gr.DataKey("Saldo").ToDecimal, "", 78, "Saldo de ExC por Sistema", Now, -1, -1, gr.DataKey("CveIE").ToEntero, + ImporteMX:=gr.DataKey("Saldo").ToDecimal, CveCuenta:=CveCuenta) Then + MsgError = "Ocurrio un error al saldar el movimiento" + Exit For + End If + + If UsuarioActual.Empresa.Funcionalidad(200) = "1" Then + If Not ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then + Alert("Ocurrio un Error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError) + End If + End If + + End If + Next + Catch ex As Exception + MsgError = "Ocurrió un error al generar la prepoliza" + OnError(MsgError, ex) + End Try - For Each gr As GridViewRow In GvESC.Rows - If gr.FCCheckBox("Chk").Checked Then - Dim CveCuenta As Integer = 0 - Dim CveConceptoContable As Integer - - Select Case gr.DataKey("CveConceptoContable").ToEntero - Case 10 - CveConceptoContable = 21 - Case 28 - CveConceptoContable = 29 - Case 37 - CveConceptoContable = 43 - Case 42 - CveConceptoContable = 41 - Case 43 - CveConceptoContable = 37 - End Select - - CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepEgresosSinComprobante", 6, gr.DataKey("Saldo").ToDecimal, gr.DataKey("Saldo").ToDecimal, gr.DataKey("CveMoneda").ToEntero, Now, "Saldo de ExC por Sistema", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, gr.DataKey("Saldo").ToDecimal, "", CveConceptoContable, "Saldo de ExC por Sistema", Now, -1, -1, gr.DataKey("CveIE").ToEntero, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CvePersonal:=gr.DataKey("CvePersonal").ToEntero, ImporteMX:=gr.DataKey("Saldo").ToDecimal, CveCuenta:=CveCuenta) Then - MsgError = "Ocurrio un error al saldar el movimiento" - End If - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, gr.DataKey("Saldo").ToDecimal, "", 78, "Saldo de ExC por Sistema", Now, -1, -1, gr.DataKey("CveIE").ToEntero, ImporteMX:=gr.DataKey("Saldo").ToDecimal, CveCuenta:=-1) Then - MsgError = "Ocurrio un error al saldar el movimiento" - End If - End If - Next If MsgError = "" Then ObjConta.Commit() @@ -239,11 +274,96 @@ Partial Class Bancos_RepEgresosSinComprobante LnkSaldar.Visible = False LnkHabilitarSaldar.Visible = True + ObjConta.Dispose() - End Sub + ObjProveedor.Dispose() + End Sub + Protected Sub LnkSaldarFyE_Click(sender As Object, e As EventArgs) + Dim ObjConta As New ClsContabilidad + ObjConta.IniciaTransacSQL() + Dim CvePrePoliza As Integer = 0 + Dim MsgError As String = "" + + Try + For Each gr As GridViewRow In GvPersonal.Rows + If gr.FCCheckBox("Chk").Checked Then + Dim CveCuenta As Integer = 0 + Dim IdCtaContPersonal As Integer = 0 + Dim CveConceptoContable As Integer + + Select Case gr.DataKey("CveConceptoContable").ToEntero + Case 10 + CveConceptoContable = 21 + Case 28 + CveConceptoContable = 29 + Case 37 + CveConceptoContable = 43 + Case 42 + CveConceptoContable = 41 + Case 43 + CveConceptoContable = 37 + End Select + + If ObjConta.GetRetCuenta(CveConceptoContable, gr.DataKey("CvePersonal").ToEntero) Then + If ObjConta.DtResultados.Rows.Count > 0 Then + IdCtaContPersonal = ObjConta.DtResultados.Rows(0)("IdCtaContPersonal").ToString.ToEntero + End If + End If + + If ObjConta.GetCuentaDobleConta(IdCtaContPersonal, UsuarioActual.CveEmpresa) Then + If ObjConta.DtResultados.Rows.Count > 0 Then + CveCuenta = ObjConta.DtResultados.Rows(0)("CveCuenta").ToString.ToEntero + End If + End If + + CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepEgresosSinComprobante", 6, gr.DataKey("Saldo").ToDecimal, gr.DataKey("Saldo").ToDecimal, gr.DataKey("CveMoneda").ToEntero, Now, + "Saldo de ExC por Sistema", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, gr.DataKey("Saldo").ToDecimal, "", CveConceptoContable, "Saldo de ExC por Sistema", Now, -1, -1, + gr.DataKey("CveIE").ToEntero, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CvePersonal:=gr.DataKey("CvePersonal").ToEntero, + ImporteMX:=gr.DataKey("Saldo").ToDecimal, CveCuenta:=CveCuenta) Then + MsgError = "Ocurrio un error al saldar el movimiento" + Exit For + End If + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, gr.DataKey("Saldo").ToDecimal, "", 78, "Saldo de ExC por Sistema", Now, -1, -1, gr.DataKey("CveIE").ToEntero, + ImporteMX:=gr.DataKey("Saldo").ToDecimal, CveCuenta:=CveCuenta) Then + MsgError = "Ocurrio un error al saldar el movimiento" + Exit For + End If + + If UsuarioActual.Empresa.Funcionalidad(200) = "1" Then + If Not ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then + Alert("Ocurrio un Error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError) + End If + End If + + End If + Next + Catch ex As Exception + MsgError = "Ocurrió un error al generar la prepoliza" + OnError(MsgError, ex) + End Try + + + If MsgError = "" Then + ObjConta.Commit() + CargaDatos() + Alert("Los movimientos se saldaron correctamente.") + Else + ObjConta.RollBack() + Alert(MsgError, TipoMensaje.MsgError) + End If + + LnkSaldarFyE.Visible = False + LnkHabilitarSaldarFyE.Visible = True + ObjConta.Dispose() + End Sub + + #Region "IMPRESIONES" - + Private Sub ImprimirReportePdf(Archivo As String, DtDatos As DataTable, Optional Formato As String = "PDF") If DtDatos.Rows.Count > 0 Then Dim StrFiltro As New StringBuilder diff --git a/CxC/RepCxCDetalle.aspx.vb b/CxC/RepCxCDetalle.aspx.vb index eac5cf330..9795b367f 100644 --- a/CxC/RepCxCDetalle.aspx.vb +++ b/CxC/RepCxCDetalle.aspx.vb @@ -795,8 +795,11 @@ Partial Class RepCxCDetalle For index = 0 To GvDatos.Columns.Count - 1 If GvDatos.Columns(index).Visible Then - - If TypeOf GvDatos.Columns(index) Is HyperLinkField Then + If TypeOf GvDatos.Columns(index) Is TemplateField Then + If GvDatos.Columns(index).HeaderText = "Folio" Then + dr(GvDatos.Columns(index).HeaderText) = fila.FCHyperLink("HlFolio").Text.Replace(" ", "") + End If + ElseIf TypeOf GvDatos.Columns(index) Is HyperLinkField Then dr(GvDatos.Columns(index).HeaderText) = DirectCast(fila.Cells(index).Controls(0), HyperLink).Text.Replace(" ", "") Else dr(GvDatos.Columns(index).HeaderText) = fila.Cells(index).Text.Replace(" ", "") diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb index 58e6b919a..d8d27c13c 100644 --- a/OC/OC.aspx.vb +++ b/OC/OC.aspx.vb @@ -2889,7 +2889,7 @@ Partial Class OC If ChkCotizacion.Checked AndAlso NoProveedoresCot > 0 AndAlso (NumCotizacionesGanadoras > 0 OrElse Not (NumCotizacionesGanadoras <= 0 AndAlso CveConfianzaProveedor = 1)) Then Dim CveProveedor = -1 - Dim TotalCot = 0.0, IVACot = 0D, RetIVA = 0.0, RetISR = 0.0, PorIVA = 0.0, Porcentaje = 0.0 + Dim TotalCot = 0.0, IVACot = 0D, RetIVA = 0.0, RetISR = 0.0, PorIVA = 0.0 Dim IdPoliza = -1 @@ -2900,11 +2900,10 @@ Partial Class OC CveProveedor = dr("CveProveedor").ToString.ToEntero - Porcentaje = DtDetalle.SUM("Total", String.Format("CveProveedor = {0}", CveProveedor)) / DtDetalle.SUM("Total") - PorIVA = GlobalDTCompProveedores(CveEmpresaActual).FiltraParametros(String.Format("CveProveedor = {0}", CveProveedor)).Rows(0)("IVA").ToString.ToDouble - IVACot = (DtDetalle.SUM("Total", String.Format("CveProveedor = {0}", CveProveedor)) * PorIVA).ToString.ToDecimal - RetIVA = TxtRetIVA.Text.ToDecimal * Porcentaje - RetISR = TxtRetISR.Text.ToDecimal * Porcentaje + PorIVA = Math.Round(DdlIVA.SelectedValue.ToDouble - 1, 2) 'GlobalDTCompProveedores(CveEmpresaActual).FiltraParametros(String.Format("CveProveedor = {0}", CveProveedor)).Rows(0)("IVA").ToString.ToDouble + IVACot = IVA '(DtDetalle.SUM("Total", String.Format("CveProveedor = {0}", CveProveedor)) * PorIVA).ToString.ToDecimal + RetIVA = TxtRetIVA.Text.ToDecimal + RetISR = TxtRetISR.Text.ToDecimal If objOrdenCompra.AddOrdenCompra("OC", -1, TxtDescrip.Text, TxtJustificacion.Text, DdlPrioridad.SelectedValue.ToEntero, TxtFecha.Text.ToDate, DdlMoneda.SelectedValue.ToEntero, CveEstatusInicialOC, TxtFechaEstimadaEntrega.Text, LugarEntrega, CveUsuario, CveEmpresaActual, 0, pCveProveedor:=CveProveedor, CveCliente:=Ddlcliente.SelectedValue.ToEntero, CveVendedor:=DdlVendedor.SelectedValue.ToEntero, PrioridadObservacion:=txtobsprioridad.Text, @@ -2945,7 +2944,15 @@ Partial Class OC End If 'AGREGA DETALLES - If Not objOrdenCompra.AddOrdenCompraDetalle(objOrdenCompra.CveOrdenCompra, dr("Cantidad").ToString.ToDouble(), dr("CveUnidadMedida").ToString.ToEntero, dr("CvePS").ToString.ToEntero, dr("Importe").ToString.ToDouble, dr("CveSubProyecto").ToString.ToEntero(), dr("CveActivoFijo").ToString.ToEntero, dr("Observacion").ToString, UsuarioActual.CveUsuario, CveOrdenCompra, CvePresupuestoEgreso:=dr("CvePresupuestoEgreso").ToString.ToEntero, Descuento:=dr("Descuento").ToString.ToDouble, IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble) Then + If Not objOrdenCompra.AddOrdenCompraDetalle(objOrdenCompra.CveOrdenCompra, dr("Cantidad").ToString.ToDouble(), dr("CveUnidadMedida").ToString.ToEntero, + dr("CvePS").ToString.ToEntero, dr("Importe").ToString.ToDouble, dr("CveSubProyecto").ToString.ToEntero(), + dr("CveActivoFijo").ToString.ToEntero, dr("Observacion").ToString, UsuarioActual.CveUsuario, CveOrdenCompra, + CvePresupuestoEgreso:=dr("CvePresupuestoEgreso").ToString.ToEntero, Descuento:=dr("Descuento").ToString.ToDouble, + IEPSPS:=dr("IEPSPS").ToString.ToDouble, IEPSPSIVA:=dr("IEPSPSIVA").ToString.ToDouble, IVA:=dr("IVA").ToString.ToDouble, + RetIVA:=dr("RetIVA").ToString.ToDouble, RetISR:=dr("RetISR").ToString.ToDouble, Total:=dr("Total").ToString.ToDouble, + CveContratoDetalle:=dr("CveContratoDetalle").ToString.ToEntero, IVAPorcentaje:=dr("IVAPorcentaje").ToString.ToDouble, + RetIVAPorcentaje:=dr("RetIVAPorcentaje").ToString.ToDouble, RetISRPorcentaje:=dr("RetISRPorcentaje").ToString.ToDouble, + IEPSPSPorcentaje:=dr("IEPSPSPorcentaje").ToString.ToDouble, IEPSPSIVAPorcentaje:=dr("IEPSPSIVAPorcentaje").ToString.ToDouble) Then HuboError = True Exit For End If @@ -2968,7 +2975,7 @@ Partial Class OC If objOrdenCompra.AddOrdenCompra("OC", -1, TxtDescrip.Text, TxtJustificacion.Text, DdlPrioridad.SelectedValue.ToEntero, TxtFecha.Text.ToDate, DdlMoneda.SelectedValue.ToEntero, CveEstatusInicialOC, TxtFechaEstimadaEntrega.Text, LugarEntrega, CveUsuario, CveEmpresaActual, 0, pCveProveedor:=DdlProveedores.SelectedValue.ToEntero, pCveProveedorSucursal:=DdlProveedorSucursal.SelectedValue.ToEntero, CveCliente:=Ddlcliente.SelectedValue.ToEntero, CveVendedor:=DdlVendedor.SelectedValue.ToEntero, PrioridadObservacion:=txtobsprioridad.Text, PorcentajeIVA:=Math.Round(DdlIVA.SelectedValue.ToDouble - 1, 2), IVA:=IVA, RetIVA:=TxtRetIVA.Text.ToDecimal, RetISR:=TxtRetISR.Text.ToDecimal, IDPoliza:=IDPolizaPresupuestal, CveCotizacion:=CveCotizacion, FolioAdicional:=TxtFolioAdicional.Text, - EntregaDirecta:=If(ChkEntregaDirecta.Checked, 1, -1), CveDireccionEnvio:=If(DdlDireccionEnvio.Visible, DdlDireccionEnvio.SelectedValue.ToEntero, -1), IEPS:=TxtIEPS.Text.ToDecimal, CveIEAnticipo:=CveIEAnticipo, ImporteAnticipo:=LtImporteIEAnticipo.Text.ToDouble, UsoCFDI:=DdlUsoCFDI.SelectedValue.ToEntero, + EntregaDirecta:=If(ChkEntregaDirecta.Checked, 1, -1), CveDireccionEnvio:=If(DdlDireccionEnvio.Visible, DdlDireccionEnvio.SelectedValue.ToEntero, -1), IEPS:=TxtIEPS.Text.ToDecimal, CveIEAnticipo:=CveIEAnticipo, ImporteAnticipo:=LtImporteIEAnticipo.Text.ToDouble, UsoCFDI:=DdlUsoCFDI.SelectedValue.ToEntero, Promocion:=Promocion) Then diff --git a/Ventas/PV.aspx.vb b/Ventas/PV.aspx.vb index 01b9213d0..d64903e48 100644 --- a/Ventas/PV.aspx.vb +++ b/Ventas/PV.aspx.vb @@ -5076,14 +5076,15 @@ Partial Class PV Dim FechaI = TxtFechaAjuste.Text.ToDate Dim FechaF = Now 'Dim NumDiasAlMes As Double = (365 / 12) - 'Dim DiasTranscurridos = DateDiff(DateInterval.Day, FechaI, FechaF) - - 'Dim MesesTranscurridos As Double = DiasTranscurridos / NumDiasAlMes + 'Dim MesesTranscurridos As Double = (DiasTranscurridos / NumDiasAlMes) + 'Dim Diff = Math.Round(MesesTranscurridos - Math.Truncate(MesesTranscurridos), 2) 'Dim NoMesesTrascurridos = Math.Ceiling(MesesTranscurridos) + Dim NoMesesTrascurridos2 = DateDiff(DateInterval.Month, FechaI, FechaF) - TxtMesesUso.Text = (DateDiff(DateInterval.Month, FechaI, FechaF) + 1).ToString() + 'TxtMesesUso.Text = If(Diff > 0.5, NoMesesTrascurridos, NoMesesTrascurridos2).ToString() + TxtMesesUso.Text = NoMesesTrascurridos2 CalculaPorcentajeAjuste() End Sub diff --git a/Ventas/RepComisionesJAM.aspx b/Ventas/RepComisionesJAM.aspx index 17dc09bc9..4bbf10fc2 100644 --- a/Ventas/RepComisionesJAM.aspx +++ b/Ventas/RepComisionesJAM.aspx @@ -131,7 +131,7 @@ <%-- 14 --%> <%-- 15 --%> - + <%-- 16 --%> <%-- 17 --%> From 41fc269dc964add2d144d03b0cde10b4c2f9b2a4 Mon Sep 17 00:00:00 2001 From: janeth arvizu Date: Wed, 6 Nov 2019 12:01:19 -0700 Subject: [PATCH 07/12] Cambios de BDH --- Ventas/PV.aspx.vb | 8 +++++++- Ventas/Ventas.aspx.vb | 29 +++++++++++++++++------------ 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/Ventas/PV.aspx.vb b/Ventas/PV.aspx.vb index e9d5dff51..744d270c0 100644 --- a/Ventas/PV.aspx.vb +++ b/Ventas/PV.aspx.vb @@ -2828,6 +2828,7 @@ Partial Class PV End If If PrecioSugerido > 0 Then TxtPrecio.Text = PrecioSugerido.FormatoNumero() + RegistraScript("$get('LblPrecio1').innerText = formato_numero(" + PrecioSugerido.ToString + ", 2, '.', ',');") End If @@ -4294,7 +4295,7 @@ Partial Class PV Private Sub CargaCuentas() - DdlCuentaEfectivo.Items.Clear() + 'DdlCuentaEfectivo.Items.Clear() DdlCuentaTarjetaCredito.Items.Clear() DdlCuentaTarjetaDebito.Items.Clear() DdlCuentaCheque.Items.Clear() @@ -4351,6 +4352,11 @@ Partial Class PV If total <= 0 Then Alert("No se ha ingresado importe", TipoMensaje.MsgAdvertencia) : Exit Sub + If TxtCambio.Text.ToDecimal > 0 And TxtImporteEfectivo.Text.ToDecimal < TxtCambio.Text.ToDecimal Then + Alert("Debe haber un pago en efectivo y ser mayor que el cambio. Si no, ser pago exacto.", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + If (DtPagos.SUM("Importe").ToString.ToDecimal + total - TxtCambio.Text.ToDecimal) > TxtTotal.Text.ToDecimal Then Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor rectifique.", TipoMensaje.MsgAdvertencia) Exit Sub diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 7b9a65473..cb789b33b 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -10304,9 +10304,9 @@ Partial Class Ventas Exit For End If - If DrPago("CveTipoMovimiento").ToString.ToEntero = 8 Then '13 - DrPago("Importe") = DrPago("Importe").ToString.ToDecimal - TxtCambio.Text.ToDecimal - End If + 'If DrPago("CveTipoMovimiento").ToString.ToEntero = 8 Then '13 + ' DrPago("Importe") = DrPago("Importe").ToString.ToDecimal - TxtCambio.Text.ToDecimal + 'End If CveIEPago = ObjBancos.AddBancos_IE(DrPago("CveCuenta").ToString.ToEntero, DrPago("CveTipoMovimiento").ToString.ToEntero, Fecha, FolioIE.ToString, String.Format("PAGO: {0}", TxtFolio.Text), DrPago("Importe").ToString.ToDouble, DdlMoneda.SelectedValue.ToEntero, tipoCambio, DrPago("Observaciones").ToString, "", False, False, -1, ObjFactura.CvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCorte:=CveCorte, MesesSinIntereses:=DrPago("MesesSinIntereses").ToString.ToEntero) @@ -16464,10 +16464,15 @@ Partial Class Ventas If total <= 0 Then Alert("No se ha ingresado importe", TipoMensaje.MsgAdvertencia) : Exit Sub - 'If DtPagos.SUM("Importe").ToString.ToDecimal + total > TxtTotal.Text.ToDecimal Then - ' Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor rectifique.", TipoMensaje.MsgAdvertencia) - ' Exit Sub - 'End If + If TxtCambio.Text.ToDecimal > 0 And TxtImporteEfectivo.Text.ToDecimal < TxtCambio.Text.ToDecimal Then + Alert("Debe haber un pago en efectivo y ser mayor que el cambio. Si no, ser pago exacto.", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + + If (DtPagos.SUM("Importe").ToString.ToDecimal + total - TxtCambio.Text.ToDecimal) > TxtTotal.Text.ToDecimal Then + Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor rectifique.", TipoMensaje.MsgAdvertencia) + Exit Sub + End If 'Pago en Efectivo If TxtImporteEfectivo.Text.ToDecimal > 0 Then @@ -16477,7 +16482,7 @@ Partial Class Ventas DrEfectivo("TipoMovimiento") = "Pago en Efectivo" DrEfectivo("CveCuenta") = DdlCuentaEfectivo.SelectedValue DrEfectivo("Cuenta") = DdlCuentaEfectivo.SelectedItem.Text - DrEfectivo("Importe") = TxtImporteEfectivo.Text + DrEfectivo("Importe") = TxtImporteEfectivo.Text.ToDecimal - TxtCambio.Text.ToDecimal DrEfectivo("Folio") = CargaFolioContado(DdlCuentaEfectivo.SelectedValue.ToEntero, 6) DrEfectivo("Observaciones") = "" DrEfectivo("Tipo") = "Caja Chica" @@ -16679,10 +16684,10 @@ Partial Class Ventas Retorno = True End If - 'If DtPagos.SUM("Importe").ToString.ToDecimal > TxtTotal.Text.ToDecimal Then - ' Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor verifique.", TipoMensaje.MsgAdvertencia) - ' Retorno = True - 'End If + If (DtPagos.SUM("Importe").ToString.ToDecimal + Total - TxtCambio.Text.ToDecimal) > TxtTotal.Text.ToDecimal Then + Alert("El importe de los pagos no puede exceder el importe de la factura. Por favor verifique.", TipoMensaje.MsgAdvertencia) + Retorno = True + End If Return Retorno End Function From 42d117e8d5a36ad22b2311aff0d8ffbcdeb15e59 Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Wed, 6 Nov 2019 12:53:31 -0700 Subject: [PATCH 08/12] cambios en los materiales de ordenes de servicio --- OS/OrdenesServicios.aspx.vb | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/OS/OrdenesServicios.aspx.vb b/OS/OrdenesServicios.aspx.vb index 5797aae3b..eaa4cc8f1 100644 --- a/OS/OrdenesServicios.aspx.vb +++ b/OS/OrdenesServicios.aspx.vb @@ -1300,8 +1300,8 @@ Partial Class OS_OrdenesServicios Row.FCLinkButton("imgEstatus").CssClass = "btn btn-circle btn-sm green" Else Row.FCLinkButton("imgEstatus").Enabled = False - 'TmpDT.Rows(Row.RowIndex)("Estatus") = "False" - 'Row.FCLinkButton("imgEstatus").CssClass = "btn btn-circle btn-sm red" + TmpDT.Rows(Row.RowIndex)("Estatus") = "False" + Row.FCLinkButton("imgEstatus").CssClass = "btn btn-circle btn-sm red" End If End Sub Private Sub BtnAddGvDetalle_Click(sender As Object, e As EventArgs) Handles BtnAddGvDetalle.Click @@ -2265,9 +2265,16 @@ Partial Class OS_OrdenesServicios TieneError = True End If + 'SI OCURRIO UN ERROR EN LA EXISTENCIA RECARGAMOS EL GRID PARA COLOREAR LOS DETALLES CON ERROR + If ErrorExistencia Then + Alert("Ocurrió un error en la existencia", TipoMensaje.MsgError) + TieneError = True + End If + If Not TieneError Then Dim ObjOS As New ClsOS - For Each Row As DataRow In TmpDTMaterialesDetalle.Rows + Dim MaterialesDetalleNuevos As DataTable = TmpDTMaterialesDetalle.FiltraParametros("CveMaterial = -1") + For Each Row As DataRow In MaterialesDetalleNuevos.Rows Dim CveUM As Integer = Row("CveUM").ToString.ToEntero Dim CvePS As Integer = Row("CvePS").ToString.ToEntero Dim Cantidad As Integer = Row("Cantidad").ToString.ToEntero @@ -2287,13 +2294,6 @@ Partial Class OS_OrdenesServicios ObjOS.Dispose() End If - - 'SI OCURRIO UN ERROR EN LA EXISTENCIA RECARGAMOS EL GRID PARA COLOREAR LOS DETALLES CON ERROR - If ErrorExistencia Then - Alert("Ocurrió un error en la existencia", TipoMensaje.MsgError) - TieneError = True - End If - If Not TieneError Then ObjInventario.Commit() Alert($"El Traspaso se guardó correctamente con el folio #: {Folio}.", TipoMensaje.MsgInformacion, $"document.location.href=""/Inventarios/TrasladoSolicitud.aspx?CveTraspasoSolicitud={CveTraspasoSolicitud}""") From b6da35bb6fd7ee2fff2d5792cbdede48f50df24e Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Wed, 6 Nov 2019 13:34:01 -0700 Subject: [PATCH 09/12] el campo "se facturara" esta hardcodeado en true al generar una OrdenServicioDetalle --- OS/OrdenesServicios.aspx.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OS/OrdenesServicios.aspx.vb b/OS/OrdenesServicios.aspx.vb index eaa4cc8f1..4b128eac3 100644 --- a/OS/OrdenesServicios.aspx.vb +++ b/OS/OrdenesServicios.aspx.vb @@ -1037,7 +1037,7 @@ Partial Class OS_OrdenesServicios Dim Cantidad As Integer = Row("Cantidad").ToString.ToEntero Dim Archivo As New System.IO.FileInfo(String.Format("{0}OS\Temp\{1}", UsuarioActual.Empresa.Ruta, Row("Archivo").ToString)) - CveOsDetalle = ObjOrdenServicio.AddOrdenesServiciosDetalle(ObjOrdenServicio.CveOS, CvePS, Cantidad, -1, -1, Observaciones, False, SeFacturara, False, CveCuentaEquipo, "-1", "-1", "-1", ComentarioTecnico, UsuarioActual.CveUsuario, Archivo:=Archivo.Name) + CveOsDetalle = ObjOrdenServicio.AddOrdenesServiciosDetalle(ObjOrdenServicio.CveOS, CvePS, Cantidad, -1, -1, Observaciones, False, True, False, CveCuentaEquipo, "-1", "-1", "-1", ComentarioTecnico, UsuarioActual.CveUsuario, Archivo:=Archivo.Name) If CveOsDetalle > 0 Then If Archivo.Name <> "-1" AndAlso Archivo.Exists Then From 6dd75ae10328d3d905c77e9fac347f3593670974 Mon Sep 17 00:00:00 2001 From: Rakcsle Supertramp Date: Wed, 6 Nov 2019 14:01:44 -0700 Subject: [PATCH 10/12] =?UTF-8?q?Pago=20electronico=20tama=C3=B1o=20usuari?= =?UTF-8?q?o=20cabecera,=20=20ddltipotransaccion=20error=20al=20selecciona?= =?UTF-8?q?r=20layout?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bancos/PagoElectronico.aspx.vb | 11 ++++++++--- Bancos/ProveedoresAbonar.aspx.vb | 7 ++++++- LogTimbrado.txt | 4 ++++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/Bancos/PagoElectronico.aspx.vb b/Bancos/PagoElectronico.aspx.vb index 38b908b3c..4a70aa2a1 100644 --- a/Bancos/PagoElectronico.aspx.vb +++ b/Bancos/PagoElectronico.aspx.vb @@ -798,9 +798,14 @@ Partial Class Bancos_PagoElectronico '''''' LLENADO HEADER Dim convenio As String = DTPendienteActual(0)("ConvenioPagoElectronico").ToString 'Campos #1-4 del Header - HeaderTexto = String.Format("H{0}{1}GRUPO01 ", convenio.PadLeft(9, PadCeros), DateTime.Now().ToString("yyyy-MM-dd")) - 'Campo #5 del Header - HeaderTexto &= String.Format("{0}{1}", UsuarioActual.Usuario, DateTime.Now().ToString("yyyyMMdd")).PadRight(20) + HeaderTexto = String.Format("H{0}{1}GRUPO01 ", convenio.PadLeft(9, PadCeros), DateTime.Now().ToString("yyyy-MM-dd")) + 'Campo #5 del Header + + Dim IdentificadoUsuario As String = UsuarioActual.Usuario.Replace(" ", "").Replace(".", "").Replace("@", "").Replace("/", "").ToUpper.Trim + IdentificadoUsuario = If(IdentificadoUsuario.Length > 12, IdentificadoUsuario.Substring(0, 12), IdentificadoUsuario) + ' Dim Identificado As String = String.Format("{0}{1}", UsuarioActual.Usuario, DateTime.Now().ToString("yyyyMMdd"))) + + HeaderTexto &= String.Format("{0}{1}", IdentificadoUsuario, DateTime.Now().ToString("yyyyMMdd")).PadRight(20) 'Campos #6-8 del Header HeaderTexto &= String.Format("00").PadRight(586) Dim HeaderLength = HeaderTexto.Length diff --git a/Bancos/ProveedoresAbonar.aspx.vb b/Bancos/ProveedoresAbonar.aspx.vb index 37b1b3a67..6f7796a67 100644 --- a/Bancos/ProveedoresAbonar.aspx.vb +++ b/Bancos/ProveedoresAbonar.aspx.vb @@ -2298,7 +2298,12 @@ Partial Class Bancos_ProveedoresAbonar End If DdlCuentaDeposito.DataBind() - DdlCuentaDeposito.SelectedIndex = 1 + + + If DdlCuentaDeposito.Items.Count > 1 Then + DdlCuentaDeposito.SelectedIndex = 1 + End If + End If End If diff --git a/LogTimbrado.txt b/LogTimbrado.txt index 4d2db01dc..b329362bb 100644 --- a/LogTimbrado.txt +++ b/LogTimbrado.txt @@ -16,3 +16,7 @@ .. PAC: 4 - Verificado : (6) 6 Certificado : (384) 390 Armado: (27) 417 Genera: (390) 807 Timbrado: (2271) 3078 Guardado: (219) 3297 Actualizado: (902) 4199 ..01/10/2019:12:27 a. m. .. PAC: 4 - Verificado : (0) 0 Certificado : (204) 204 Armado: (1) 205 Genera: (249) 454 Timbrado: (431) 885 ..01/10/2019:12:27 a. m. + + .. PAC: 2 - Verificado : (32764) 32764 Armado: (660) 33424 Guardado: (445) 33869 Timbrado: (156762) 190631 ..06/11/2019:09:39 a. m. + + .. PAC: 2 - Verificado : (2018) 2018 Armado: (96902) 98920 Guardado: (312) 99232 Timbrado: (1201) 100433 ..06/11/2019:09:41 a. m. From c583836e907772b968a3abc00a4462ddea2c7d34 Mon Sep 17 00:00:00 2001 From: janeth arvizu Date: Wed, 6 Nov 2019 14:09:10 -0700 Subject: [PATCH 11/12] Cambios de BDH --- Ventas/PV.aspx | 37 +++++++++++++++++++++++++++++-------- Ventas/PV.aspx.vb | 7 +++++-- 2 files changed, 34 insertions(+), 10 deletions(-) diff --git a/Ventas/PV.aspx b/Ventas/PV.aspx index 266060f25..9fd8b00cc 100644 --- a/Ventas/PV.aspx +++ b/Ventas/PV.aspx @@ -2729,7 +2729,16 @@

    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

    -
    +
    +
    + + + + + +
    +
    +
    @@ -3115,15 +3124,27 @@ var Descuento = parseFloat($get("TxtPorDescP").value); $get("LblPrecioFinal").innerText = formato_numero(Monto - ((Monto * Descuento) / 100), 2, '.', ','); - $get("TxtPrecio").value = formato_numero(parseFloat($get("LblPrecioFinal").innerText.replace(",", "").replace(",", "")), 2, '.', ','); + $get("LblTotalPS").innerText = formato_numero(parseFloat($get("LblPrecioFinal").innerText.replace(",", "").replace(",", "")), 2, '.', ','); var Total = Monto - parseFloat($get("LblPrecioFinal").innerText.replace(",", "").replace(",", "")); - $get("LblDescuento").innerText = formato_numero(Total, 2, '.', ','); + $get("LblDescuento").innerText = formato_numero(Total, 2, '.', ','); + $get("TxtDescuento").value = formato_numero(Total, 2, '.', ','); + $get("TxtDescP").value = formato_numero(0, 2, '.', ','); $get("HdnDescuento").value = Total; if (TipoDescuento == 2) { $get("LblDescuentos").innerText = formato_numero(Total, 2, '.', ','); } } - else if ($get("TxtDescP").value != "0" && $get("TxtDescP").value) { + else { + $get("LblPrecioFinal").innerText = "0.00"; + $get("LblDescuento").innerText = "0.00"; + $get("HdnDescuento").value = "0.00"; + } + + } + + function CalculaDescuentoMonto() { + + if ($get("TxtDescP").value != "0" && $get("TxtDescP").value) { var Monto = 0; var TipoDescuento = $get("HdnTipoDescuento").value; @@ -3141,11 +3162,12 @@ } var Descuento = parseFloat($get("TxtDescP").value); - $get("TxtPorDescP").value = Descuento * 100 / Monto * 10 + $get("TxtPorDescP").value = formato_numero((Descuento * 100 / Monto), 2, '.', ','); $get("LblPrecioFinal").innerText = formato_numero(Monto - Descuento, 2, '.', ','); - $get("TxtPrecio").value = formato_numero(parseFloat($get("LblPrecioFinal").innerText.replace(",", "").replace(",", "")), 2, '.', ','); + $get("LblTotalPS").innerText = formato_numero(parseFloat($get("LblPrecioFinal").innerText.replace(",", "").replace(",", "")), 2, '.', ','); var Total = Monto - parseFloat($get("LblPrecioFinal").innerText.replace(",", "").replace(",", "")); - $get("LblDescuento").innerText = formato_numero(Total, 2, '.', ','); + $get("LblDescuento").innerText = formato_numero(Total, 2, '.', ','); + $get("TxtDescuento").value = formato_numero(Total, 2, '.', ','); $get("HdnDescuento").value = Total; if (TipoDescuento == 2) { Monto - parseFloat($get("LblPrecioFinal").innerText.replace(",", "").replace(",", "")); @@ -3156,7 +3178,6 @@ $get("LblDescuento").innerText = "0.00"; $get("HdnDescuento").value = "0.00"; } - } function BorraDescuentos() { diff --git a/Ventas/PV.aspx.vb b/Ventas/PV.aspx.vb index 326d6100a..a76ce216c 100644 --- a/Ventas/PV.aspx.vb +++ b/Ventas/PV.aspx.vb @@ -1062,7 +1062,7 @@ Partial Class PV 'ImgCerrarIE.Attributes.Add("OnClick", "$('#DivIngresoEgreso').hide();") 'ImgCerrarEstadoCaja.Attributes.Add("OnClick", "$('#DivEstadoCaja').hide();") TxtPorDescP.Attributes.Add("onKeyUp", "CalculaDescuento();") - TxtDescP.Attributes.Add("onKeyUp", "CalculaDescuento();") + TxtDescP.Attributes.Add("onKeyUp", "CalculaDescuentoMonto();") TxtFechaAjuste.Attributes.Add("onchange", "CalculaMesesUso();") CreaDTmpC() @@ -2771,6 +2771,9 @@ Partial Class PV Exit Sub End If + TxtDescuento.Text = FormatoNumero(0, 2) + TxtPrecio.Text = "" + If CvePSParametro > 0 Then Dim drPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePSParametro).FiltroPrimero("") @@ -5102,7 +5105,7 @@ Partial Class PV Dim NoMesesTrascurridos2 = DateDiff(DateInterval.Month, FechaI, FechaF) 'TxtMesesUso.Text = If(Diff > 0.5, NoMesesTrascurridos, NoMesesTrascurridos2).ToString() - TxtMesesUso.Text = NoMesesTrascurridos2 + TxtMesesUso.Text = NoMesesTrascurridos2.ToString CalculaPorcentajeAjuste() End Sub From 365dc9210e1b34fab58224ae344c1e33519552f0 Mon Sep 17 00:00:00 2001 From: Raul Pimienta Date: Thu, 7 Nov 2019 00:07:26 -0700 Subject: [PATCH 12/12] En el reporte de utilidades cuando una factura no tiene un pago pondra de color la celda de rentabilidad En reembolsos comprobaciones se habilito la opcion otros ingresos para cuando se seleccione algun cheque --- Compras/ReembolsosComprobaciones.aspx | 13 ++++++--- Compras/ReembolsosComprobaciones.aspx.vb | 34 +++++++++++++++++++++--- Ventas/RepVentasUtilidad.aspx.vb | 4 ++- 3 files changed, 43 insertions(+), 8 deletions(-) diff --git a/Compras/ReembolsosComprobaciones.aspx b/Compras/ReembolsosComprobaciones.aspx index 4df62e5a9..b8d1aeefe 100644 --- a/Compras/ReembolsosComprobaciones.aspx +++ b/Compras/ReembolsosComprobaciones.aspx @@ -117,6 +117,8 @@ + +
    @@ -420,7 +422,7 @@ Cheque - + @@ -511,7 +513,12 @@ } } - } + } + if (textBoxes[i].id.indexOf('C_GvCxP_TxtComision') >= 0) { + if (textBoxes[i].value != '') { + Comision = parseFloat(Comision) + parseFloat(textBoxes[i].value.split(',').join('')); + } + } } } @@ -544,7 +551,7 @@ } - $get('TxtImporteVinculado').value = FormatoNumero(Importe, 2); + $get('TxtImporteVinculado').value = FormatoNumero(Importe + Comision, 2); } else { $get('TxtImporte').value = FormatoNumero(Importe, 2); diff --git a/Compras/ReembolsosComprobaciones.aspx.vb b/Compras/ReembolsosComprobaciones.aspx.vb index bee517f36..59620eeb6 100644 --- a/Compras/ReembolsosComprobaciones.aspx.vb +++ b/Compras/ReembolsosComprobaciones.aspx.vb @@ -263,6 +263,26 @@ Partial Class Compras_ReembolsosComprobaciones UPCompras.Update() End Sub + Protected Sub ChkOtrosIngresosCheque_CheckedChanged(sender As Object, e As EventArgs) + + If ChkOtrosIngresosCheque.Checked Then + TxtOtrosImportes.Visible = True + TxtTotal.Visible = True + GvCxP.Columns(15).Visible = True + Else + TxtOtrosImportes.Visible = False + TxtTotal.Visible = False + GvCxP.Columns(15).Visible = False + TxtOtrosImportes.Text = "" + TxtTotal.Text = "" + RegistraScript("$get('TxtImporte').value = FormatoNumero(SumaValores(), 2);") + End If + + UpDatos.Update() + UPCompras.Update() + + End Sub + #End Region #Region " SELECTED INDEX CHANGED " @@ -301,6 +321,8 @@ Partial Class Compras_ReembolsosComprobaciones PnlChequeInfo.Visible = True + ChkOtrosIngresosCheque.Visible = True + If UsuarioActual.TienePermisoProceso(113) Then TrChequeExcedente.Visible = True CargaDatos(DDlCheques.SelectedValue.ToEntero) @@ -315,6 +337,8 @@ Partial Class Compras_ReembolsosComprobaciones HdnCheque.Value = "-1" + ChkOtrosIngresosCheque.Visible = False + If UsuarioActual.TienePermisoProceso(113) Then TableExpedirCheque.Visible = True LimpiaDatos() @@ -410,9 +434,9 @@ Partial Class Compras_ReembolsosComprobaciones End If End If Dim FolioIENew = ObjIE.GetNextFolio(If(CveCajaChica > 0, CveCajaChica, CvePersonal), 8).ToString - CveIECajaChica = ObjIE.AddBancos_IE(CveCajaChica, 8, TxtFechaDocumento.Text.Trim.ToDate, FolioIENew, String.Format("Transferencia Cta: {0}", DdlCajaChica.SelectedItem), TxtImporte.Text.ToDecimal, CveMoneda, 0, TxtObservaciones.Text.Trim, "", False, False, -1, CvePrePolizaIERegistrado, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FueConciliado:=If(ChkReembolsarSinBancos.Checked Or CveCajaChica > 0, True, False)) + CveIECajaChica = ObjIE.AddBancos_IE(CveCajaChica, 8, TxtFechaDocumento.Text.Trim.ToDate, FolioIENew, String.Format("Transferencia Cta: {0}", DdlCajaChica.SelectedItem), TxtImporteVinculado.Text.ToDecimal, CveMoneda, 0, TxtObservaciones.Text.Trim, "", False, False, -1, CvePrePolizaIERegistrado, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FueConciliado:=If(ChkReembolsarSinBancos.Checked Or CveCajaChica > 0, True, False)) 'AGREGO PREPOLIZA IE BANCOS - If Not ObjMov.AddPrePolizasDetalle(CvePrePolizaIERegistrado, True, TxtImporte.Text.ToDecimal, String.Format("Transferencia Cta: {0}", DdlCajaChica.SelectedItem), 30, TxtObservaciones.Text, TxtFechaDocumento.Text.ToDate, IdCuentaBancaria, -1, CveIE:=CveIECajaChica, ImporteME:=If(tipoCambio = 1, 0, TxtImporte.Text.ToDecimal), ImporteMX:=TxtImporte.Text.ToDecimal * tipoCambio) Then + If Not ObjMov.AddPrePolizasDetalle(CvePrePolizaIERegistrado, True, TxtImporteVinculado.Text.ToDecimal, String.Format("Transferencia Cta: {0}", DdlCajaChica.SelectedItem), 30, TxtObservaciones.Text, TxtFechaDocumento.Text.ToDate, IdCuentaBancaria, -1, CveIE:=CveIECajaChica, ImporteME:=If(tipoCambio = 1, 0, TxtImporteVinculado.Text.ToDecimal), ImporteMX:=TxtImporteVinculado.Text.ToDecimal * tipoCambio) Then MsgError = "Error al registrar detalle de concepto bancario" End If Else @@ -620,11 +644,12 @@ Partial Class Compras_ReembolsosComprobaciones End If 'Otros Ingresos - If ChkAjusteOI.Checked AndAlso gvr.FCTextBox("TxtComision").Text.ToDecimal > 0 Then + If (ChkAjusteOI.Checked Or ChkOtrosIngresosCheque.Checked) AndAlso gvr.FCTextBox("TxtComision").Text.ToDecimal > 0 Then If Not ObjMov.AddPrePolizasDetalle(CvePrePolizaPago, False, gvr.FCTextBox("TxtComision").Text.ToDecimal, Referencia, 211, ConceptoMovimiento, gvr.FCLiteral("LtlFecha").Text.ToDate, IdCtaProveedor, -1, CveIE:=CveIERegistrado, CvePersonal:=CvePersonal, CveCompra:=gvr.FCHyperLink("HplF2").Text.ToEntero, CveProveedor:=gvr.FCHyperLink("HLProv").Text.ToEntero, ImporteME:=If(tipoCambio = 1, 0, gvr.FCTextBox("TxtComision").Text.ToDecimal), ImporteMX:=gvr.FCTextBox("TxtComision").Text.ToDecimal * tipoCambio, CveCuenta:=CveCuentaProveedor) Then MsgError = "no se pudo insertar el detalle de la poliza de otros ingresos" End If - If CveCajaChica > 0 Then + If CveCajaChica > 0 AndAlso Not HdnCheque.Value.ToEntero > 0 Then + If Not ObjMov.AddPrePolizasDetalle(CvePrePolizaPago, True, gvr.FCTextBox("TxtComision").Text.ToDecimal, Referencia, 211, ConceptoMovimiento, gvr.FCLiteral("LtlFecha").Text.ToDate, IdCtaProveedor, -1, CveIE:=CveIERegistrado, CvePersonal:=CvePersonal, CveCompra:=gvr.FCHyperLink("HplF2").Text.ToEntero, CveProveedor:=gvr.FCHyperLink("HLProv").Text.ToEntero, ImporteME:=If(tipoCambio = 1, 0, gvr.FCTextBox("TxtComision").Text.ToDecimal), ImporteMX:=gvr.FCTextBox("TxtComision").Text.ToDecimal * tipoCambio, CveCuenta:=CveCuentaProveedor, Contabilizable:=False) Then MsgError = "no se pudo insertar el detalle de la poliza de otros ingresos" End If @@ -1919,4 +1944,5 @@ Partial Class Compras_ReembolsosComprobaciones #End Region + End Class diff --git a/Ventas/RepVentasUtilidad.aspx.vb b/Ventas/RepVentasUtilidad.aspx.vb index 230979595..1d7fc16cd 100644 --- a/Ventas/RepVentasUtilidad.aspx.vb +++ b/Ventas/RepVentasUtilidad.aspx.vb @@ -216,7 +216,9 @@ Partial Class Ventas_RepVentasUtilidad e.Row.CssClass = "Totales" End If - + If e.Row.DBCampo("CveVenta").ToEntero > 0 AndAlso Not CBool(e.Row.DBCampo("TienePago")) Then + e.Row.Cells(15).BackColor = Drawing.Color.LightPink + End If Dim Liga As String = String.Format("/Ventas/RepVentasUtilidadDetalle.aspx?CveVenta={0}&CveVendedor={1}&FechaI={2:d}&FechaF={3:d}&CveCliente={4}&Orden={5}&CveSubProyecto={6}&CvePS={7}&CveClasificacion={8}",