From 31e81986fbe00b6983ef7c75c6f8d9add55e59db Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Mon, 14 Apr 2025 15:35:51 -0700 Subject: [PATCH 01/14] --FIX mascara telefono --- Ventas/Clientes.aspx | 6 +++--- Ventas/Clientes.aspx.vb | 12 ------------ 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/Ventas/Clientes.aspx b/Ventas/Clientes.aspx index 320c35caf..97a0b5725 100644 --- a/Ventas/Clientes.aspx +++ b/Ventas/Clientes.aspx @@ -1901,9 +1901,9 @@
- - - + + +
diff --git a/Ventas/Clientes.aspx.vb b/Ventas/Clientes.aspx.vb index 66f54796e..314227341 100644 --- a/Ventas/Clientes.aspx.vb +++ b/Ventas/Clientes.aspx.vb @@ -2609,18 +2609,6 @@ Partial Class Clientes If DdlTipoCliente.SelectedValue = "1" Then If TxtContacto.Text.Trim() = "" Then InformacionCompleta = False If TxtRepresentanteLegal.Text.Trim() = "" Then InformacionCompleta = False - 'si es el concepto de pagaré - Dim tPagare As Integer = 0 - For Each dRow As GridViewRow In GvDocumentosCliente.Rows - Dim CveDocumentacion As Integer = dRow.DataKey("CveDocumentacion").ToEntero() - If CveDocumentacion = 265 Then tPagare = 1 - Next - If tPagare = 0 Then InformacionCompleta = False - tPagare = 0 'valida que cuando menos tenga una cuenta - For Each dRow As GridViewRow In GvBancosCuentas.Rows - tPagare = 1 - Next - If tPagare = 0 Then InformacionCompleta = False End If 'If DivInfoCompleta.Visible Then From 7f9978d0b1f338bc750e8c7c969dfb7394896c93 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Mon, 14 Apr 2025 17:51:40 -0700 Subject: [PATCH 02/14] Reporte Rembolsos, Compras Actualizar IVA compras manuales --- App_Code/ClsMovimientos.vb | 4 +- App_Code/ClsPaginas.vb | 4 + Compras/Compras.aspx.vb | 50 ++++++++--- Compras/RepRembolsoComprobaciones.aspx | 19 +++-- Compras/RepRembolsoComprobaciones.aspx.vb | 18 +++- .../Grales/Formatos/CartaPorteTimbrado.rdlc | 59 ++++++++++--- .../Formatos/RepRembolsosComprobaciones.rdlc | 84 ++++++++++++++++--- 7 files changed, 191 insertions(+), 47 deletions(-) diff --git a/App_Code/ClsMovimientos.vb b/App_Code/ClsMovimientos.vb index 4cad5571a..a385fa77e 100644 --- a/App_Code/ClsMovimientos.vb +++ b/App_Code/ClsMovimientos.vb @@ -1457,7 +1457,8 @@ Public Class ClsMovimientos Return Retorno End Function - Public Function GetCxPPersonalCajaChica(CveEmpresa As Integer, CvePersonal As Integer, CveCajaChica As Integer, NumeroReembolso As String, Optional FechaI As DateTime = ModExtensiones.MinFecha, Optional FechaF As DateTime = ModExtensiones.MaxFecha, Optional OpcionSaldo As Integer = 1) As Boolean + Public Function GetCxPPersonalCajaChica(CveEmpresa As Integer, CvePersonal As Integer, CveCajaChica As Integer, NumeroReembolso As String, Optional FechaI As DateTime = ModExtensiones.MinFecha, Optional FechaF As DateTime = ModExtensiones.MaxFecha, + Optional OpcionSaldo As Integer = 1, Optional CveSubProyecto As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_CxPPersonalCajaChica") With SqlAdapter.SelectCommand.Parameters @@ -1468,6 +1469,7 @@ Public Class ClsMovimientos .Add("@FechaI", SqlDbType.DateTime).Value = FechaI .Add("@FechaF", SqlDbType.DateTime).Value = FechaF .Add("@OpcionSaldo", SqlDbType.Int).Value = OpcionSaldo ' 1. solo con saldo, -1. todos + .Add("@CveSubProyecto", SqlDbType.Int).Value = OpcionSaldo End With Try SqlAdapter.Fill(Data) diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index c82c5ba22..65b176d49 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -6225,6 +6225,7 @@ Public Class ClsPaginas Dim ObjInv As New ClsGenerales Dim TelDestino As String = "" Dim NombreUsuario As String = "" 'Persona que timbro + Dim LugarOrigen As String = "" If ObjInv.GetGralTimbre(CveTimbre, "-1", MinFecha, MaxFecha, -1, UsuarioActual.CveEmpresa, -1) Then If ObjInv.DtResultados.Rows.Count > 0 Then @@ -6235,6 +6236,7 @@ Public Class ClsPaginas TipoDocto = Dr("TipoDocto").ToString TelDestino = Dr("TelDestino").ToString NombreUsuario = Dr("NombreUsuario").ToString + LugarOrigen = Dr("LugarOrigen").ToString If UsuarioActual.CveEmpresa = 13 Then PermisoSCTR1 = Dr("PermisoSCTR1").ToString @@ -6632,6 +6634,8 @@ Public Class ClsPaginas params.Add(New ReportParameter("DomicilioFiscal", $"{UsuarioActual.Empresa.Direccion}, {UsuarioActual.Empresa.Colonia}, {UsuarioActual.Empresa.Localidad}, {UsuarioActual.Empresa.Estado}, Tel. {Telefono}")) params.Add(New ReportParameter("SerieFolio", SerieFolio)) params.Add(New ReportParameter("NombreUsuario", NombreUsuario)) + params.Add(New ReportParameter("LugarOrigen", LugarOrigen)) + params.Add(New ReportParameter("RFC", UsuarioActual.Empresa.RFC)) params.Add(New ReportParameter("DomicilioExpedicion", LugarExpedicion)) 'CLIENTE diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index c404ad0b2..dc60c1f72 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -9911,6 +9911,7 @@ Partial Class Compras_Compras (row1("TipoAF").ToString.ToEntero <> row2("TipoAF").ToString.ToEntero) Or (row1("CvePS").ToString.ToEntero <> row2("CvePS").ToString.ToEntero) Or (row1("Obs").ToString <> row2("Obs").ToString) Or + (row1("IVAPorcentaje").ToString <> row2("IVAPorcentaje").ToString AndAlso CveCompra > 0 AndAlso CveCompraFactura = 0) Or (DdlTipoCompra.SelectedValue.ToEntero <> TipoCompraOriginal) Then Return False End If @@ -17409,6 +17410,9 @@ Partial Class Compras_Compras If ActualizaTotales And UsuarioActual.CveEmpresa = 72 Or Not CveCompraFactura > 0 Then TxtTotal.Text = Total.ToString.FormatoNumero() + If CveCompra > 0 AndAlso CveCompraFactura = 0 Then + TxtIVA.Text = IVA.ToString.FormatoNumero() + End If End If Else @@ -18023,24 +18027,43 @@ Partial Class Compras_Compras 'HdnIVAPS.Value = If(PS.Rows(0)("IVA").ToString = "-1", ViewState("IVA"), PS.Rows(0)("IVA").ToString).ToString ViewState("IVAPS") = PS("IVA").ToString - If ViewState("IVAPS").ToString.ToEntero() = -1 Then + If ViewState("IVAPS").ToString.ToEntero() = -1 Or (CveCompra > 0 AndAlso CveCompraFactura = 0) Then + + Dim Drr As DataRow = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=DdlSubProyecto.SelectedValue.ToEntero())(0) ViewState("IVAPS") = Drr("IVA").ToString().ToDouble() - DdlProyecto.SelectedValueExist(Drr("CveProyecto")) + DdlProyecto.SelectedValueExist(Drr("CveProyecto")) DdlIVA.Enabled = True - If Not Modalidad = "U" Then - Select Case ViewState("IVAPS").ToString().ToDouble - Case 0 - DdlIVA.SelectedValue = "1" - Case 0.16 - DdlIVA.SelectedValue = "1.16" - Case 0.08 - DdlIVA.SelectedValue = "1.08" - End Select + If (CveCompra > 0 AndAlso CveCompraFactura = 0) Then + If PS("IVA").ToString.ToEntero = -1 Then + ViewState("IVAPS") = 0.16 + DdlIVA.SelectedValue = "1.16" + Else + Select Case ViewState("IVAPS").ToString().ToDouble + Case 0 + DdlIVA.SelectedValue = "1" + Case 0.16 + DdlIVA.SelectedValue = "1.16" + Case 0.08 + DdlIVA.SelectedValue = "1.08" + End Select + End If + Else + If Not Modalidad = "U" Then + Select Case ViewState("IVAPS").ToString().ToDouble + Case 0 + DdlIVA.SelectedValue = "1" + Case 0.16 + DdlIVA.SelectedValue = "1.16" + Case 0.08 + DdlIVA.SelectedValue = "1.08" + End Select + End If End If + Else 'DdlIVA.SelectedValue = "1" ' DdlIVA.Enabled = False @@ -18684,12 +18707,13 @@ Partial Class Compras_Compras If CveFactura > 0 And TxtIVA.Text.ToDecimal = 0 Then DrPS("IVA") = 0 DrPS("IVAPorcentaje") = 0 + ElseIf CveCompra > 0 And CveCompraFactura = 0 Then + DrPS("IVA") = (IVA * Total).RoundSQL + DrPS("IVAPorcentaje") = IVA Else - If ActualizarIva Then DrPS("IVA") = (IVA * Total).RoundSQL End If - DrPS("IVAPorcentaje") = IVA End If diff --git a/Compras/RepRembolsoComprobaciones.aspx b/Compras/RepRembolsoComprobaciones.aspx index fb4e387ee..160139739 100644 --- a/Compras/RepRembolsoComprobaciones.aspx +++ b/Compras/RepRembolsoComprobaciones.aspx @@ -26,16 +26,11 @@
  • - - Exportar Excel - + Exportar Excel
  • - - Imprimir Reembolso - + Imprimir Reembolso
  • -
  • Cargar Comprobante
  • @@ -123,6 +118,13 @@
    + +
    + + +
    @@ -188,7 +190,8 @@ - + Compra diff --git a/Compras/RepRembolsoComprobaciones.aspx.vb b/Compras/RepRembolsoComprobaciones.aspx.vb index edd6c6050..928f5c519 100644 --- a/Compras/RepRembolsoComprobaciones.aspx.vb +++ b/Compras/RepRembolsoComprobaciones.aspx.vb @@ -89,6 +89,8 @@ Partial Class Compras_RepRembolsoComprobaciones DdlPersonal.DataBind() txtFechaI.Text = NowADS.AddYears(-1).ToShortDateString + CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto, "Todos") + End If End Sub @@ -133,8 +135,17 @@ Partial Class Compras_RepRembolsoComprobaciones Protected Sub GvCxP_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvCxP.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then - If e.Row.RowIndex = 0 Then - e.Row.BackColor = Drawing.Color.LightGray + + 'If e.Row.RowIndex = 0 Then + ' e.Row.BackColor = Drawing.Color.LightGray + 'End If + + If e.Row.DataKey("Gpo").Trim.Length = 0 Then + e.Row.CssClass = "Totales" + End If + + If e.Row.DataKey("Gpo").Trim.Length > 0 AndAlso e.Row.DataKey("CveCompra").ToEntero = 0 Then + e.Row.CssClass = "SubTotales" End If e.Row.Cells(5).HorizontalAlign = HorizontalAlign.Right @@ -236,7 +247,8 @@ Partial Class Compras_RepRembolsoComprobaciones If DdlTipoPago.SelectedValue = "2" Then ViewState("CvePersonal") = -2 - ObjMovtos.GetCxPPersonalCajaChica(UsuarioActual.CveEmpresa, CvePersonal, CveCajaChica, If(TxtNumeroReembolso.Text.Trim = "", "-1", TxtNumeroReembolso.Text.Trim), FechaI:=FechaI, FechaF:=FechaF, OpcionSaldo:=-1) + ObjMovtos.GetCxPPersonalCajaChica(UsuarioActual.CveEmpresa, CvePersonal, CveCajaChica, If(TxtNumeroReembolso.Text.Trim = "", "-1", TxtNumeroReembolso.Text.Trim), FechaI:=FechaI, FechaF:=FechaF, OpcionSaldo:=-1, + CveSubProyecto:=DdlSubProyecto.SelectedValue.ToEntero) DtDatos = ObjMovtos.DtResultados GvCxP.DataSource = DtDatos diff --git a/Empresas/Grales/Formatos/CartaPorteTimbrado.rdlc b/Empresas/Grales/Formatos/CartaPorteTimbrado.rdlc index df258447e..f305d7390 100644 --- a/Empresas/Grales/Formatos/CartaPorteTimbrado.rdlc +++ b/Empresas/Grales/Formatos/CartaPorteTimbrado.rdlc @@ -6128,6 +6128,18 @@ Se ha recibido el número arriba indicado de bultos/contenedores/remolques/autot + + + + + + - 22.49898cm + 22.81648cm 1.5cm 0cm 3.90544cm @@ -6377,7 +6405,7 @@ Se ha recibido el número arriba indicado de bultos/contenedores/remolques/autot - 22.49898cm + 22.81648cm 9.94339cm 0cm 3.90544cm @@ -6389,7 +6417,7 @@ Se ha recibido el número arriba indicado de bultos/contenedores/remolques/autot - 22.49898cm + 22.81648cm 14.71743cm 0cm 3.90544cm @@ -6418,7 +6446,7 @@ Se ha recibido el número arriba indicado de bultos/contenedores/remolques/autot Textbox120 - 22.67201cm + 22.98951cm 1.36431cm 0.45969cm 10.17692cm @@ -6511,7 +6539,7 @@ Se ha recibido el número arriba indicado de bultos/contenedores/remolques/autot true 23.161cm 0.03979cm - 23.1317cm + 23.4492cm 19.53633cm 29 @@ -7562,7 +7590,8 @@ Se ha recibido el número arriba indicado de bultos/contenedores/remolques/autot true - 47.03985cm + 46.78659cm + 0.04317cm 5.54925cm 19.53633cm 31 @@ -8121,6 +8150,12 @@ Se ha recibido el número arriba indicado de bultos/contenedores/remolques/autot true ReportParameter1 + + String + true + true + ReportParameter1 + Function PageNumber() As String Return Me.Report.Globals!OverallPageNumber diff --git a/Empresas/Grales/Formatos/RepRembolsosComprobaciones.rdlc b/Empresas/Grales/Formatos/RepRembolsosComprobaciones.rdlc index fe395548e..030db69cb 100644 --- a/Empresas/Grales/Formatos/RepRembolsosComprobaciones.rdlc +++ b/Empresas/Grales/Formatos/RepRembolsosComprobaciones.rdlc @@ -17,6 +17,14 @@ /* Local Query */ + + Gpo + System.String + + + CveCompra + System.Int32 + Proveedor System.String @@ -77,10 +85,10 @@ 1.79565cm - 2.02289cm + 2.90517cm - 2.54059cm + 1.65831cm 2.29435cm @@ -440,6 +448,10 @@ =Fields!SerieFolio.Value @@ -453,7 +465,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt @@ -474,6 +489,10 @@ =Fields!Proveedor.Value @@ -487,7 +506,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt @@ -509,6 +531,10 @@ @@ -522,7 +548,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt @@ -544,6 +573,10 @@ @@ -557,7 +590,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt @@ -579,6 +615,10 @@ @@ -592,7 +632,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt @@ -614,6 +657,10 @@ @@ -627,7 +674,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt @@ -649,6 +699,10 @@ @@ -662,7 +716,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt @@ -684,6 +741,10 @@ @@ -697,7 +758,10 @@ - =IIF(Fields!SerieFolio.Value = "TOTAL", "#67809F", "No color") + =IIF(LEN(Fields!Gpo.Value) = 0 + , "#9cacc1" + , IIF(LEN(Fields!Gpo.Value) > 0 AndAlso Fields!CveCompra.Value = 0, "#cccccc", "No color") + ) 2pt 2pt 2pt From d034c3b26249b355e8a0cdf3b7706eb3e5853d87 Mon Sep 17 00:00:00 2001 From: rrene Date: Mon, 14 Apr 2025 17:53:47 -0700 Subject: [PATCH 03/14] - --- Ventas/Clientes.aspx.vb | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/Ventas/Clientes.aspx.vb b/Ventas/Clientes.aspx.vb index 66f54796e..d90f02c07 100644 --- a/Ventas/Clientes.aspx.vb +++ b/Ventas/Clientes.aspx.vb @@ -1765,8 +1765,6 @@ Partial Class Clientes If array(4) = "1" Then ChkRevViernes.Checked = True If array(5) = "1" Then ChkRevSabado.Checked = True End If - - ChkInformacionCompleta.Checked = Boolean.Parse(ObjClientes.DtResultados(0)("InformacionCompleta").ToString()) 'Horario @@ -2578,7 +2576,6 @@ Partial Class Clientes Alert("El uso del cfdi debe ser 'S01 - Sin efectos fiscales' cuando se utiliza el RFC genérico.", TipoMensaje.MsgAdvertencia) Exit Sub - End If Dim InformacionCompleta As Boolean = True @@ -2599,33 +2596,22 @@ Partial Class Clientes End If Next If tPagare = 0 Then InformacionCompleta = False + If GvClentesPersonalEntrega.Rows.Count = 0 Then InformacionCompleta = False End If - If TxtTelefono.Text.Trim() = "" Then InformacionCompleta = False If TxtEmail.Text.Trim() = "" Then InformacionCompleta = False - 'SOLO VALIDA EN CLIENTES FRENCUENTE + 'SOLO VALIDA EN CLIENTES FRECUENTE If DdlTipoCliente.SelectedValue = "1" Then If TxtContacto.Text.Trim() = "" Then InformacionCompleta = False If TxtRepresentanteLegal.Text.Trim() = "" Then InformacionCompleta = False - 'si es el concepto de pagaré - Dim tPagare As Integer = 0 - For Each dRow As GridViewRow In GvDocumentosCliente.Rows - Dim CveDocumentacion As Integer = dRow.DataKey("CveDocumentacion").ToEntero() - If CveDocumentacion = 265 Then tPagare = 1 - Next - If tPagare = 0 Then InformacionCompleta = False tPagare = 0 'valida que cuando menos tenga una cuenta For Each dRow As GridViewRow In GvBancosCuentas.Rows tPagare = 1 Next If tPagare = 0 Then InformacionCompleta = False End If - - 'If DivInfoCompleta.Visible Then - ' InformacionCompleta = ChkInformacionCompleta.Checked - 'End If End If 'CargaSucursal() From e6c543db228e374a1170f4da3cfd5504b0c2e5fa Mon Sep 17 00:00:00 2001 From: rrene Date: Mon, 14 Apr 2025 20:07:56 -0700 Subject: [PATCH 04/14] --depositos con intermediario vsh prot --- App_Code/ClsMovimientos.vb | 33 ++------------ Bancos/DepositosCaja.aspx | 6 +-- Bancos/DepositosCaja.aspx.vb | 87 ++++++++++++++++++++++-------------- 3 files changed, 61 insertions(+), 65 deletions(-) diff --git a/App_Code/ClsMovimientos.vb b/App_Code/ClsMovimientos.vb index a385fa77e..373a3253f 100644 --- a/App_Code/ClsMovimientos.vb +++ b/App_Code/ClsMovimientos.vb @@ -789,7 +789,6 @@ Public Class ClsMovimientos Public Function GetEgresosSinComprobar(FechaInicio As String, FechaFin As String, CveProveedor As Integer, CvePersonal As Integer, CveClasificacion As Integer, CveUsuarioRegistro As Integer, CveUsuarioResponsable As Integer, CveMoneda As Integer, Saldo As Double, CveEmpresa As Integer, Optional CveTipoTransaccion As Integer = -1, Optional CveUsuarioSolicito As Integer = -1) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_EgresosSinComprobar") With SqlAdapter.SelectCommand.Parameters @@ -820,7 +819,6 @@ Public Class ClsMovimientos Public Function GetIngresosAcreedorXSaldar(CveProveedor As Integer, CveMoneda As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_IngresosAcreedorXSaldar") With SqlAdapter.SelectCommand.Parameters @@ -840,7 +838,6 @@ Public Class ClsMovimientos End Function Public Function GetPrestamosPersonalXSaldar(CvePersonal As Integer, CveMoneda As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_PrestamosPersonalXSaldar") With SqlAdapter.SelectCommand.Parameters @@ -861,7 +858,6 @@ Public Class ClsMovimientos Public Function GetDeudoresrXSaldar(CveProveedor As Integer, CveMoneda As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_DuedorXSaldar") With SqlAdapter.SelectCommand.Parameters @@ -883,7 +879,6 @@ Public Class ClsMovimientos Public Function GetIngresosPorComprobar(FechaInicio As String, FechaFin As String, CveCliente As Integer, CveUsuarioRegistro As Integer, CveMoneda As Integer, Saldo As Double, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_IngresosPorComprobar") With SqlAdapter.SelectCommand.Parameters @@ -909,7 +904,6 @@ Public Class ClsMovimientos Public Function GetIngresosAnticiposPorComprobar(FechaInicio As String, FechaFin As String, CveCliente As Integer, CveUsuarioRegistro As Integer, CveMoneda As Integer, Saldo As Double, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_IngresosAnticiposSinComprobar") With SqlAdapter.SelectCommand.Parameters @@ -935,7 +929,6 @@ Public Class ClsMovimientos Public Function GetMovimientosIE(Opcion As Integer, CveFiltro As Integer, CveCuentaBancaria As Integer, FechaInicio As Date, FechaFin As Date, CveMoneda As Integer, Saldo As Double, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_MovimientosIE") With SqlAdapter.SelectCommand.Parameters @@ -962,7 +955,6 @@ Public Class ClsMovimientos Public Function GetEgresosSinComprobarPersonal(CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_EgresosSinComprobarPersonal") With SqlAdapter.SelectCommand.Parameters @@ -982,7 +974,6 @@ Public Class ClsMovimientos Public Function GetChequesFYE(CveEmpresa As Integer, Optional FechaI As DateTime = ModExtensiones.MinFecha, Optional FechaF As DateTime = ModExtensiones.MaxFecha) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_ReporteChequesFYEGet") With SqlAdapter.SelectCommand.Parameters @@ -1004,7 +995,6 @@ Public Class ClsMovimientos Public Function GetEgresosSinComprobarPersonalDetalle(CvePersonal As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_EgresosSinComprobarPersonalDetalle") With SqlAdapter.SelectCommand.Parameters @@ -1025,8 +1015,7 @@ Public Class ClsMovimientos Public Function GetDeudoresSaldos(CveProveedor As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - - DataAdapter("PA_Banc_DeudoresSaldos") + DataAdapter("PA_Banc_DeudoresSaldosGet") With SqlAdapter.SelectCommand.Parameters .Add("@CveProveedor", SqlDbType.Int).Value = CveProveedor @@ -1045,8 +1034,7 @@ Public Class ClsMovimientos Public Function GetDeudoresComisionesSaldos(CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - - DataAdapter("PA_Banc_DeudoresComisionesSaldos") + DataAdapter("PA_Banc_DeudoresComisionesSaldosGet") With SqlAdapter.SelectCommand.Parameters .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa @@ -1064,8 +1052,7 @@ Public Class ClsMovimientos Public Function GetDeudoresComisionesSaldosDetalle(CveProveedor As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - - DataAdapter("PA_Banc_DeudoresComisionesSaldosDetalle") + DataAdapter("PA_Banc_DeudoresComisionesSaldosDetalleGet") With SqlAdapter.SelectCommand.Parameters .Add("@CveProveedor", SqlDbType.Int).Value = CveProveedor @@ -1085,7 +1072,6 @@ Public Class ClsMovimientos Public Function GetDeudoresSaldos2(CveProveedor As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_DeudoresSaldos2") With SqlAdapter.SelectCommand.Parameters @@ -1106,7 +1092,6 @@ Public Class ClsMovimientos Public Function GetSaldosDeudorAcreedorAnticipos(FechaInicio As Date, FechaFin As Date, Opcion As Integer, CveProveedor As Integer, CvePersonal As Integer, CveClasificacion As Integer, CveUsuarioRegistro As Integer, CveUsuarioResponsable As Integer, CveMoneda As Integer, Saldo As Double, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_SaldosDAP") With SqlAdapter.SelectCommand.Parameters @@ -1136,8 +1121,7 @@ Public Class ClsMovimientos Public Function GetDeudoresSaldosDetalle(CveProveedor As Integer, CveMoneda As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - - DataAdapter("PA_Banc_DeudoresSaldosDetalle") + DataAdapter("PA_Banc_DeudoresSaldosDetalleGet") With SqlAdapter.SelectCommand.Parameters .Add("@CveProveedor", SqlDbType.Int).Value = CveProveedor @@ -1158,7 +1142,6 @@ Public Class ClsMovimientos Public Function GetIngresosSaldos(CveCliente As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_IngresosSaldos") With SqlAdapter.SelectCommand.Parameters @@ -1179,7 +1162,6 @@ Public Class ClsMovimientos Public Function GetOtrosIngresos(Opcion As Integer, CveCliente As Integer, CveProveedor As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_OtrosIngresos") With SqlAdapter.SelectCommand.Parameters @@ -1202,7 +1184,6 @@ Public Class ClsMovimientos Public Function GetIngresosSaldosDetalle(CveCliente As Integer, CveMoneda As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_IngresosSaldosDetalle") With SqlAdapter.SelectCommand.Parameters @@ -1224,7 +1205,6 @@ Public Class ClsMovimientos Public Function GetDocumentosxPagarDetalle(CveCliente As Integer, CveMoneda As Integer, Opcion As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_DocumentosxPagarSaldosDetalle") With SqlAdapter.SelectCommand.Parameters @@ -1247,7 +1227,6 @@ Public Class ClsMovimientos Public Function GetCajaChicaDetalle(CveCajaChica As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_CajaChicaDetalle") With SqlAdapter.SelectCommand.Parameters @@ -1268,7 +1247,6 @@ Public Class ClsMovimientos Public Function UpdateReembolsoComprobante(CveComprobacion As Integer, Comprobante As String) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Comp_ReembolosoComprobanteUpdate") With SqlAdapter.SelectCommand.Parameters @@ -1290,7 +1268,6 @@ Public Class ClsMovimientos Public Function GetAcreedoresSaldosDetalles(CveProveedor As Integer, CveMoneda As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_AcreedoresSaldosDetalles") With SqlAdapter.SelectCommand.Parameters @@ -1312,7 +1289,6 @@ Public Class ClsMovimientos Public Function GetAcreedoresSaldos(CveProveedor As Integer, CveMoneda As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Banc_AcreedoresSaldos") With SqlAdapter.SelectCommand.Parameters @@ -1414,7 +1390,6 @@ Public Class ClsMovimientos Optional ConComprobacion As Integer = -1, Optional AplicaNC As Integer = -1) As Boolean Dim Retorno As Boolean = False - DataAdapter("PA_Comp_CxPProgramar") With SqlAdapter.SelectCommand.Parameters diff --git a/Bancos/DepositosCaja.aspx b/Bancos/DepositosCaja.aspx index 0c2d9a41c..572d50b61 100644 --- a/Bancos/DepositosCaja.aspx +++ b/Bancos/DepositosCaja.aspx @@ -318,14 +318,14 @@ -
    + -
    +
    @@ -336,7 +336,7 @@
    -
    +
    diff --git a/Bancos/DepositosCaja.aspx.vb b/Bancos/DepositosCaja.aspx.vb index 5db1c8b8e..ae07aa495 100644 --- a/Bancos/DepositosCaja.aspx.vb +++ b/Bancos/DepositosCaja.aspx.vb @@ -15,11 +15,22 @@ Partial Class Bancos_DepositosCaja Set(value As Integer) ViewState("FacturasCheckadas") = value End Set + End Property + + Private Property IntermediarioPendiente As Boolean + Get + Return ViewState("IntermediarioPendiente").ToString.ToBool + End Get + Set(value As Boolean) + ViewState("IntermediarioPendiente") = value + End Set End Property Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not IsPostBack Then FacturasCheckadas = 0 + IntermediarioPendiente = False + TxtFecha.Text = NowADS().ToShortDateString txtFechaI.Text = NowADS().AddDays(-1).ToShortDateString txtFechaF.Text = NowADS().ToShortDateString @@ -45,6 +56,12 @@ Partial Class Bancos_DepositosCaja 'Dim StrEncriptPrueba As String = Encripta($"OP=DC&CveIE={2784391}&CuentaCaja={"TestCuantaCaja"}&CuentaDepo={"Test cuenta"}") 'HplImprimirPDF.NavigateUrl = $"/Compras/PopUpVerFactura.aspx?P={StrEncriptPrueba}" + If UsuarioActual.CveEmpresa = 145 Then + IntermediarioPendiente = True + divInterClasif.Visible = False + divInterSubProyecto.Visible = False + End If + If UsuarioActual.CveEmpresa = 189 Then If DdlTipoPago.Items.FindByValue("-1") IsNot Nothing Then DdlTipoPago.Items.Remove(DdlTipoPago.Items.FindByValue("-1")) @@ -307,35 +324,7 @@ Partial Class Bancos_DepositosCaja NuevaCvePrePoliza = ObjConta.AddPrePolizas("DepCaja", 13, TotalImportePrePoliza, TotalImportePrePoliza, CveMoneda, Fecha, $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=1) - Dim IntermediarioFactura As Boolean = False - If UsuarioActual.CveEmpresa = 145 Then IntermediarioFactura = True - If ChkIntermediario.Checked Then - CveSubProyectoIntermediario = DdlSubProyectoIntermediario.SelectedValue.ToEntero - CveClasificacionIntermediario = DdlClasificacionIntermediario.SelectedValue.ToEntero - CveProveedorIntermediario = DdlProveedorIntermediario.SelectedValue.ToEntero - - If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then ' empresa llantera - If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, TotalImporte, TotalImporte, 95, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, CveProveedor:=CveProveedorIntermediario, CveCuenta:=57619) Then - OcurrioError = True - End If - If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, True, TotalImporte, TotalImporte, 95, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, CveProveedor:=CveProveedorIntermediario, CveCuenta:=57619) Then - OcurrioError = True - End If - End If - - If Not IntermediarioFactura Then ' si factura no se manda al gasto sino se disminuye solo lo depositado - If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, ImporteInter, ImporteInter, 51, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario) Then - OcurrioError = True - End If - End If - - If IVA <> 0 Then - If Not OcurrioError AndAlso Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, IVA, IVA, 14, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, PorcentajeImpuesto:=0.16D) Then - OcurrioError = True - End If - End If - End If Dim CveTransaccionBanco As Integer = DdlTipoDeposito.SelectedValue.ToEntero @@ -419,6 +408,38 @@ Partial Class Bancos_DepositosCaja OcurrioError = True End If + If Not OcurrioError AndAlso ChkIntermediario.Checked Then + + CveSubProyectoIntermediario = DdlSubProyectoIntermediario.SelectedValue.ToEntero + CveClasificacionIntermediario = DdlClasificacionIntermediario.SelectedValue.ToEntero + CveProveedorIntermediario = DdlProveedorIntermediario.SelectedValue.ToEntero + + If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then ' empresa llantera + If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, TotalImporte, TotalImporte, 95, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, CveProveedor:=CveProveedorIntermediario, CveCuenta:=57619) Then + OcurrioError = True + End If + If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, True, TotalImporte, TotalImporte, 95, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, CveProveedor:=CveProveedorIntermediario, CveCuenta:=57619) Then + OcurrioError = True + End If + End If + + If Not IntermediarioPendiente Then ' si factura no se manda al gasto sino se disminuye solo lo depositado + If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, ImporteInter, ImporteInter, 51, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario) Then + OcurrioError = True + End If + Else 'se manda el saldo como deudor + If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, ImporteInter, ImporteInter, 37, "Comisión Intermediario", "Comisión Intermediario", CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, CveProveedor:=DdlProveedorIntermediario.SelectedValue.ToEntero, CveIE:=CveIEOrigen) Then + OcurrioError = True + End If + End If + + If IVA <> 0 Then + If Not OcurrioError AndAlso Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, IVA, IVA, 14, DdlClasificacionIntermediario.SelectedItem.Text, DdlClasificacionIntermediario.SelectedItem.Text, CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, PorcentajeImpuesto:=0.16D) Then + OcurrioError = True + End If + End If + End If + If Not OcurrioError AndAlso ChkCuentaRetorno.Checked Then If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, True, CuentaRetorno, CuentaRetorno * TipoCambio, 325, $"Depósito Bancario - CAJA - {tSubProyectoDeposito}", TxtCuentaRetornoObs.Text.Trim, CveSubProyecto:=CveSubProyecto) Then OcurrioError = True @@ -436,11 +457,11 @@ Partial Class Bancos_DepositosCaja Dim Importe As Decimal = Gvr.DataKey("Importe").ToDecimal Dim SerieFolio As String = Gvr.DataKey("SerieFolio").ToString - 'si es el primero, se descuenta la "comisión" - If i = 0 AndAlso IntermediarioFactura Then - Importe = Importe - ImporteInter - i += 1 - End If + ''si es el primero, se descuenta la "comisión" + 'If i = 0 AndAlso IntermediarioPendiente Then + ' Importe = Importe - ImporteInter + ' i += 1 + 'End If 'Datos de las Prepolizas A Cancelar Dim CveIE As Integer = Gvr.DataKey("CveIE").ToEntero From e67a9f22d3d60f3d3da42b99ae6aac2511c965b7 Mon Sep 17 00:00:00 2001 From: rrene Date: Mon, 14 Apr 2025 20:08:37 -0700 Subject: [PATCH 05/14] - --- App_Code/ClsVentas.vb | 7 ------- 1 file changed, 7 deletions(-) diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index cc028f6c9..6d7ecde0c 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -3,9 +3,7 @@ Option Strict On Imports System.Data Imports System.Data.SqlClient -Imports System.Runtime.CompilerServices Imports Extensiones -Imports Profact.TimbraCFDI40 Public Class ClsVentas Implements IDisposable @@ -7915,11 +7913,6 @@ Public Class ClsVentas - - - - - #Region "IDisposable Support" From 8cd6c8c89027861f7c5e36e940cd31f14567a98d Mon Sep 17 00:00:00 2001 From: rrene Date: Mon, 14 Apr 2025 20:09:24 -0700 Subject: [PATCH 06/14] - mejora parametros --- Ventas/RepVentasResumen.aspx.vb | 2 +- asmx/WSSIGApp.asmx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Ventas/RepVentasResumen.aspx.vb b/Ventas/RepVentasResumen.aspx.vb index 84a2b1c2f..292b771a5 100644 --- a/Ventas/RepVentasResumen.aspx.vb +++ b/Ventas/RepVentasResumen.aspx.vb @@ -103,7 +103,7 @@ Partial Class Ventas_RepVentasResumen VxC = Nothing End If - If ObjMovtos.GetRepRecuperacion(TxtFechaI.Text.ToDate, TxtFechaF.Text.ToDate, MinFecha, MaxFecha, -1, DdlSubProyecto.SelectedValue.ToEntero, -1, -1, -1, "-1", UsuarioActual.CveEmpresa, 5, -1, "-1", CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then + If ObjMovtos.GetRepRecuperacion(TxtFechaI.Text.ToDate, TxtFechaF.Text.ToDate, MinFecha, MaxFecha, -1, DdlSubProyecto.SelectedValue.ToEntero, "-1", -1, "-1", "-1", UsuarioActual.CveEmpresa, 5, CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then Datos = ObjVentas.DtResultados GvPxC.DataSource = Datos Else diff --git a/asmx/WSSIGApp.asmx b/asmx/WSSIGApp.asmx index c357054be..8976da08c 100644 --- a/asmx/WSSIGApp.asmx +++ b/asmx/WSSIGApp.asmx @@ -1745,7 +1745,7 @@ Public Class WSSIGApp Public Function GetRepRecuperacion(CveEmpresa As Integer, FechaI As String, FechaF As String, Gpo As Integer, CveUsuarioConsulta As Integer, CveSubProyecto As Integer, CveCliente As Integer) As String Dim retorno = "[]" Using ObjVentas As New ClsMovimientos - If ObjVentas.GetRepRecuperacion(FechaI.ToDateTime(), FechaF.ToDateTime(), CveCliente, CveSubProyecto, -1, -1, -1, "-1", CveEmpresa, Gpo, -1, CveUsuarioConsulta:=CveUsuarioConsulta) Then + If ObjVentas.GetRepRecuperacion(FechaI.ToDateTime(), FechaF.ToDateTime(), MinFecha, MaxFecha, CveCliente, CveSubProyecto, -1, -1, -1, "-1", CveEmpresa, Gpo, -1, CveUsuarioConsulta:=CveUsuarioConsulta) Then retorno = ObjVentas.DtResultados.ToJson() End If End Using From e1a506493af07b4b56f0b8971e1086cf4645440c Mon Sep 17 00:00:00 2001 From: rrene Date: Tue, 15 Apr 2025 06:33:45 -0700 Subject: [PATCH 07/14] - --- Bancos/DepositosCaja.aspx.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Bancos/DepositosCaja.aspx.vb b/Bancos/DepositosCaja.aspx.vb index ae07aa495..50fcf2b52 100644 --- a/Bancos/DepositosCaja.aspx.vb +++ b/Bancos/DepositosCaja.aspx.vb @@ -428,7 +428,7 @@ Partial Class Bancos_DepositosCaja OcurrioError = True End If Else 'se manda el saldo como deudor - If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, ImporteInter, ImporteInter, 37, "Comisión Intermediario", "Comisión Intermediario", CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, CveProveedor:=DdlProveedorIntermediario.SelectedValue.ToEntero, CveIE:=CveIEOrigen) Then + If Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, ImporteInter, ImporteInter, 43, "Comisión Intermediario", "Comisión Intermediario", CveClasificacion:=CveClasificacionIntermediario, CveSubProyecto:=CveSubProyectoIntermediario, CveProveedor:=DdlProveedorIntermediario.SelectedValue.ToEntero, CveIE:=CveIEOrigen) Then OcurrioError = True End If End If From f1e0a35fcd31c3664cdaf036c385a371fde1a8e5 Mon Sep 17 00:00:00 2001 From: rrene Date: Tue, 15 Apr 2025 06:37:28 -0700 Subject: [PATCH 08/14] -- cambio a funciolidad el bloqueo de 01010101 --- App_Code/Timbrado.vb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb index 19b3bbb23..a0df85f43 100644 --- a/App_Code/Timbrado.vb +++ b/App_Code/Timbrado.vb @@ -964,9 +964,9 @@ Public Class Timbrado If CvePACEspecial <> -1 Then tCvePAC = CvePACEspecial 'validación especial. - If Ventas.TipoDocto.Contiene("Ing", "Dev") Then + If Ventas.TipoDocto.Contiene("Ing", "Dev") AndAlso UsuarioActual.Empresa.Funcionalidad(153) = "" Then ' funcionalidad para no filtrar por códigos 01010101 - Dim CodigoIncorrecto = (From c In Ventas.Timbre.Conceptos Where (c.ClaveProdServ = "01010101") OrElse (c.ClaveProdServ = "84111506" AndAlso Not UsuarioActual.CveEmpresa.Contiene(2, 70, 144)) + Dim CodigoIncorrecto = (From c In Ventas.Timbre.Conceptos Where (c.ClaveProdServ = "01010101") OrElse (c.ClaveProdServ = "84111506") Select c.ClaveProdServ, c.Descripcion) Dim Str As New StringBuilder Str.Append("Los siguientes productos tienen especificado un código no permitido por el SAT:
    ") From 70479f92d82ca1183da5d1834fc1803a3965c771 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 15 Apr 2025 10:27:51 -0700 Subject: [PATCH 09/14] --Cambios visuales --- Ventas/PVCobranza.aspx | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Ventas/PVCobranza.aspx b/Ventas/PVCobranza.aspx index 74235e10c..eea7c457a 100644 --- a/Ventas/PVCobranza.aspx +++ b/Ventas/PVCobranza.aspx @@ -342,7 +342,7 @@
    -
    +
    @@ -371,16 +371,16 @@ DataKeyNames="CveVenta,CveCliente,TipoDocto,Saldo,AtencionA,CveFormaPago33,SerieFolio,CondicionesPago,PlazoCobranza"> <%----%> - +
    - - - - + + + +
    -
    +
    @@ -685,13 +685,13 @@
    $ - +
    -
    +
    $ @@ -700,7 +700,7 @@
    -
    +
      From ce15a19da90a14e1b56c0b037502ac3c77ee79fc Mon Sep 17 00:00:00 2001 From: rakcsle Date: Wed, 16 Apr 2025 12:21:56 -0700 Subject: [PATCH 10/14] Compras manuales, actualziar IVa y Total --- Compras/Compras.aspx.vb | 421 +++++++++++++++------- Compras/RepRembolsoComprobaciones.aspx.vb | 2 +- 2 files changed, 282 insertions(+), 141 deletions(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index dc60c1f72..ffac55d18 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -9373,7 +9373,7 @@ Partial Class Compras_Compras '---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - If Not ErrorAC Then + If Retorno AndAlso Not ErrorAC Then Dim Cont As Integer = 0 Dim indiceTR As Integer = 0 For Each Row As DataRow In TmpDT.Rows @@ -9501,6 +9501,11 @@ Partial Class Compras_Compras End If 'Retorno = True 'Alert("La Compra se actualizó correctamente.") + + If Not ActualizarPrePolizaValidacion(ObjContabilidad, ObjCompra) Then + Retorno = False + End If + Else If IdPoliza > 0 Then If Not ObjContabilidad.UpdatePrePolizasDetalleBloquear(CvePrePoliza, True) Then @@ -9513,7 +9518,7 @@ Partial Class Compras_Compras End If End If - If (NumeroReembolsoOriginal.Trim <> TxtRembolsoNumero.Text.Trim) Then + If Retorno AndAlso (NumeroReembolsoOriginal.Trim <> TxtRembolsoNumero.Text.Trim) Then 'NOTA. si hay un cambio en el reembolso, puede tener estas consideraciones. '1. no tenía comprobación y se ocupa relacionar, se deberá validar que no tenga pagos contabilizados '2. se está cambiando de comprobación @@ -9937,7 +9942,7 @@ Partial Class Compras_Compras End Function - Private Function ActualizarPrePoliza(ObjConta As ClsContabilidad, ObjCompra As ClsCompras) As Boolean + Private Function ActualizarPrePoliza(ByRef ObjConta As ClsContabilidad, ByRef ObjCompra As ClsCompras) As Boolean Dim Retorno As Boolean = True, ErrorPrepoliza As Boolean = False Dim CvePlantillaPrePoliza As Integer @@ -10048,175 +10053,224 @@ Partial Class Compras_Compras If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 228, CveCompra, 1) Then ErrorPrepoliza = True 'PS NO RECIBIDO If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 229, CveCompra, 1) Then ErrorPrepoliza = True 'PS NO RECIBIDO - - 'SI ES GASTO CON ALMACEN REGISTRA EL CONCEPTO 95 - If DdlTipoCompra.SelectedValue = "10" Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMN, importeMN, 95, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, Contabilizable:=False) Then - ErrorPrepoliza = True - End If + If CveCompra > 0 And CveCompraFactura = 0 Then + If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 14, CveCompra, 1) Then ErrorPrepoliza = True + If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 5, CveCompra, 1) Then ErrorPrepoliza = True + If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 311, CveCompra, 1) Then ErrorPrepoliza = True + If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 305, CveCompra, 1) Then ErrorPrepoliza = True + If Not ObjConta.RemovePrePolizasDetalle(CvePrePoliza, 306, CveCompra, 1) Then ErrorPrepoliza = True End If + If Not ErrorPrepoliza Then + If DdlTipoCompra.SelectedValue = "10" Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMN, importeMN, 95, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, Contabilizable:=False) Then + ErrorPrepoliza = True + End If + End If - 'OBTIENE METODO DE CONTABILIZACIÓN AL GUARDAR - Dim CveConceptoContableAlmacen As Integer = 0 - If ObjCompra.GetCompras(CveCompra, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) AndAlso ObjCompra.DtResultados.Rows.Count > 0 Then - CveConceptoContableAlmacen = ObjCompra.DtResultados.FiltroPrimeroValor("CveConceptoContableAlmacen").ToEntero - If CveConceptoContableAlmacen = 0 AndAlso tUsaInventarios Then - If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then - If (CveImportacion > 0 Or CveFlete > 0) Then - CveConceptoContableAlmacen = CveConceptoContableAlmacen + 'OBTIENE METODO DE CONTABILIZACIÓN AL GUARDAR + Dim CveConceptoContableAlmacen As Integer = 0 + If ObjCompra.GetCompras(CveCompra, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) AndAlso ObjCompra.DtResultados.Rows.Count > 0 Then + CveConceptoContableAlmacen = ObjCompra.DtResultados.FiltroPrimeroValor("CveConceptoContableAlmacen").ToEntero + + If CveConceptoContableAlmacen = 0 AndAlso tUsaInventarios Then + If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then + If (CveImportacion > 0 Or CveFlete > 0) Then + CveConceptoContableAlmacen = CveConceptoContableAlmacen + Else + CveConceptoContableAlmacen = 205 + End If + If OCVinculada AndAlso DdlOCVinculaInv.Visible AndAlso Not (CveImportacion > 0 Or CveFlete > 0) Then + CveConceptoContableAlmacen = DdlOCVinculaInv.SelectedValue.ToEntero + End If + If UsuarioActual.CveEmpresa.Contiene(72, 80, 140, 141, 152) And Not (CveImportacion > 0 Or CveFlete > 0) Then 'se comento, RMF. 2020.08.19, no le hallo sentido + CveConceptoContableAlmacen = 205 + End If Else - CveConceptoContableAlmacen = 205 + CveConceptoContableAlmacen = 225 End If - If OCVinculada AndAlso DdlOCVinculaInv.Visible AndAlso Not (CveImportacion > 0 Or CveFlete > 0) Then - CveConceptoContableAlmacen = DdlOCVinculaInv.SelectedValue.ToEntero - End If - If UsuarioActual.CveEmpresa.Contiene(72, 80, 140, 141, 152) And Not (CveImportacion > 0 Or CveFlete > 0) Then 'se comento, RMF. 2020.08.19, no le hallo sentido - CveConceptoContableAlmacen = 205 - End If - Else - CveConceptoContableAlmacen = 225 End If End If - End If - 'AF - DT = TmpDT.FiltraParametros("ISNULL(TipoAF,0) = 2") - If DT.Rows.Count > 0 AndAlso DdlTipoComprobante.SelectedValue <> "NC" Then - For Each Row2 As DataRow In DT.Rows - importeMovimiento = Row2("Total").ToString.ToDecimal - importeMN = importeMovimiento * tipoCambioActual * Multiplicador - - If importeMovimiento <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMN, importeMovimiento, 49, Row2("CodAF").ToString, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveActivoFijo:=Row2("CveActivoFijo").ToString.ToEntero, CveIE:=CveIE, CvePersonal:=CvePersonal, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento)) Then - ErrorPrepoliza = True - End If - End If - Next - End If - - 'LIMPIA - importeMovimiento = 0 - 'COSTO ALMACEN - Dim DtAlmacenes As DataTable = GlobalDTAlmacen(UsuarioActual.CveEmpresa) - If tUsaInventarios And CveConceptoContableAlmacen = 0 Or DdlTipoCompra.SelectedValue.ToEntero = 10 Then - DT = TmpDT.FiltraParametros("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) > 0", "", {"CveAlmacen"}) - 'RECORREMOS PARA DETECTAR LA MODALIDAD DEL ALMACEN, EN CASO DE SER SOLO EXISTENCIA LIMPIAMOS CVEALMACEN - - DT.AcceptChanges() - DT = DT.FiltraParametros("ISNULL(CveAlmacen,0) > 0") - If (DT.Rows.Count > 0) AndAlso Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then + 'AF + DT = TmpDT.FiltraParametros("ISNULL(TipoAF,0) = 2") + If DT.Rows.Count > 0 AndAlso DdlTipoComprobante.SelectedValue <> "NC" Then For Each Row2 As DataRow In DT.Rows - - importeMovimiento = TmpDT.SUM("Total", $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal 'Row2("Total").ToString.ToDecimal + Row2("CostoIndirectoAlmacen").ToString.ToDecimal + importeMovimiento = Row2("Total").ToString.ToDecimal importeMN = importeMovimiento * tipoCambioActual * Multiplicador If importeMovimiento <> 0 Then - Dim SeContabiliza As Boolean = True - 'SI ES GASTO DE ALMACEN NO DEBE CONTABILIZAR CONCEPTO 68 - If DdlTipoCompra.SelectedValue = "10" Then - SeContabiliza = False - End If - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, 68, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMN, importeMovimiento, 49, Row2("CodAF").ToString, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveActivoFijo:=Row2("CveActivoFijo").ToString.ToEntero, CveIE:=CveIE, CvePersonal:=CvePersonal, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento)) Then ErrorPrepoliza = True End If End If Next End If - End If - 'LIMPIA - importeMovimiento = 0 + 'LIMPIA + importeMovimiento = 0 + 'COSTO ALMACEN + Dim DtAlmacenes As DataTable = GlobalDTAlmacen(UsuarioActual.CveEmpresa) + If tUsaInventarios And CveConceptoContableAlmacen = 0 Or DdlTipoCompra.SelectedValue.ToEntero = 10 Then + DT = TmpDT.FiltraParametros("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) > 0", "", {"CveAlmacen"}) + 'RECORREMOS PARA DETECTAR LA MODALIDAD DEL ALMACEN, EN CASO DE SER SOLO EXISTENCIA LIMPIAMOS CVEALMACEN - 'INV [MERCANCIA RECIBIDA POR ADELANTADO (OC) | MERCANCIA PENDIENTE POR RECIBIR (COMPRA) ] - If DdlTipoCompra.SelectedValue.ToEntero <> 10 AndAlso tUsaInventarios And Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") And CveConceptoContableAlmacen.Contiene(176, 205) Then - importeMovimiento = TmpDT.SUM("Total", $"ISNULL(TipoAF,0) <> 2 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveTipoPS = 2").ToString.ToDecimal - importeMN = importeMovimiento * tipoCambioActual * Multiplicador + DT.AcceptChanges() + DT = DT.FiltraParametros("ISNULL(CveAlmacen,0) > 0") + If (DT.Rows.Count > 0) AndAlso Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then + For Each Row2 As DataRow In DT.Rows - If importeMovimiento <> 0 Then - Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}" - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, CveConceptoContableAlmacen, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento)) Then - ErrorPrepoliza = True + importeMovimiento = TmpDT.SUM("Total", $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal 'Row2("Total").ToString.ToDecimal + Row2("CostoIndirectoAlmacen").ToString.ToDecimal + importeMN = importeMovimiento * tipoCambioActual * Multiplicador + + If importeMovimiento <> 0 Then + Dim SeContabiliza As Boolean = True + 'SI ES GASTO DE ALMACEN NO DEBE CONTABILIZAR CONCEPTO 68 + If DdlTipoCompra.SelectedValue = "10" Then + SeContabiliza = False + End If + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, 68, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then + ErrorPrepoliza = True + End If + End If + Next End If End If - End If - 'NC CON PRODUCTOS - CUENTA PUENTE + 'LIMPIA + importeMovimiento = 0 - If tUsaInventarios And Not DdlTipoComprobante.SelectedValue.Contiene("Ant") And CveConceptoContableAlmacen.Contiene(225) Then - importeMovimiento = TmpDT.SUM("Total", $"ISNULL(TipoAF,0) <> 2 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveTipoPS = 2").ToString.ToDecimal - importeMN = importeMovimiento * tipoCambioActual * Multiplicador - - If importeMovimiento <> 0 Then - Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}" - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, CveConceptoContableAlmacen, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento)) Then - ErrorPrepoliza = True - End If - End If - End If - 'GASTO - DT = TmpDT.Copy - 'RECORREMOS PARA DETECTAR LA MODALIDAD DEL ALMACEN, EN CASO DE SER SOLO EXISTENCIA LIMPIAMOS CVEALMACEN - If DdlTipoCompra.SelectedValue <> "10" Or DdlTipoCompra.SelectedValue = "13" Then - For Each Dr As DataRow In DT.Rows - If DtAlmacenes.FiltroPrimeroValor("Modalidad", $"CveAlmacen = {Dr("CveAlmacen").ToString.ToEntero}").ToString = "Solo Existencia" Then - Dr("CveAlmacen") = 0 - End If - Dr.AcceptChanges() - Next - End If - - DT.AcceptChanges() - DtAlmacenes.Dispose() - - - If DdlTipoCompra.SelectedValue.ToEntero <> 10 Then - 'QUITA 1-[MERCANCIA RECIBIDA POR ADELANTADO (OC) | MERCANCIA PENDIENTE POR RECIBIR (COMPRA)] 2-[NC CON PRODUCTOS] - If tUsaInventarios And CveConceptoContableAlmacen > 0 Then - DT = DT.FiltraParametros("CveTipoPS <> 2") - End If - End If - - Dim DTDistinct As DataTable = DT.Copy - If DdlTipoCompra.SelectedValue.ToEntero = 10 Then - DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto", "CveAlmacen"}) - Else - 'If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then - ' DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"}) - 'Else - DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"}) - 'End If - End If - - If DTDistinct.Rows.Count > 0 Then - For Each Row2 As DataRow In DTDistinct.Rows - - 'DETERMINA IMPORTE - 'If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then - ' importeMovimiento = DT.SUM("Total", String.Format("ISNULL(TipoAF,0) <> 2 AND CveClasificacion = {0} AND CveSubProyecto = {1} AND ISNULL(CveTipoGasto,0) = {2}", Row2("CveClasificacion").ToString.ToEntero, Row2("CveSubProyecto").ToString.ToEntero, Row2("CveTipoGasto").ToString.ToEntero)).ToString.ToDecimal - 'Else - importeMovimiento = DT.SUM("Total", String.Format("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveClasificacion = {0} AND CveSubProyecto = {1} AND ISNULL(CveTipoGasto,0) = {2}", Row2("CveClasificacion").ToString.ToEntero, Row2("CveSubProyecto").ToString.ToEntero, Row2("CveTipoGasto").ToString.ToEntero)).ToString.ToDecimal - 'End If - - If DdlTipoCompra.SelectedValue.ToEntero = 10 Then - importeMovimiento = DT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"CveAlmacen > 0 ").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen > 0").ToString.ToDecimal - End If + 'INV [MERCANCIA RECIBIDA POR ADELANTADO (OC) | MERCANCIA PENDIENTE POR RECIBIR (COMPRA) ] + If DdlTipoCompra.SelectedValue.ToEntero <> 10 AndAlso tUsaInventarios And Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") And CveConceptoContableAlmacen.Contiene(176, 205) Then + importeMovimiento = TmpDT.SUM("Total", $"ISNULL(TipoAF,0) <> 2 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveTipoPS = 2").ToString.ToDecimal importeMN = importeMovimiento * tipoCambioActual * Multiplicador - 'AGREGA MOVIMIENTO - If importeMovimiento <> 0 AndAlso Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then + If importeMovimiento <> 0 Then Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}" - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, 6, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CveCreditoDetalle:=CveCreditoDetalle, CveClasificacion:=Row2("CveClasificacion").ToString.ToEntero, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, CveTipoGasto:=Row2("CveTipoGasto").ToString.ToEntero) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, CveConceptoContableAlmacen, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento)) Then ErrorPrepoliza = True End If End If - Next + End If + + 'NC CON PRODUCTOS - CUENTA PUENTE + + If tUsaInventarios And Not DdlTipoComprobante.SelectedValue.Contiene("Ant") And CveConceptoContableAlmacen.Contiene(225) Then + importeMovimiento = TmpDT.SUM("Total", $"ISNULL(TipoAF,0) <> 2 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveTipoPS = 2").ToString.ToDecimal + importeMN = importeMovimiento * tipoCambioActual * Multiplicador + + If importeMovimiento <> 0 Then + Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}" + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, CveConceptoContableAlmacen, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento)) Then + ErrorPrepoliza = True + End If + End If + End If + 'GASTO + DT = TmpDT.Copy + 'RECORREMOS PARA DETECTAR LA MODALIDAD DEL ALMACEN, EN CASO DE SER SOLO EXISTENCIA LIMPIAMOS CVEALMACEN + If DdlTipoCompra.SelectedValue <> "10" Or DdlTipoCompra.SelectedValue = "13" Then + For Each Dr As DataRow In DT.Rows + If DtAlmacenes.FiltroPrimeroValor("Modalidad", $"CveAlmacen = {Dr("CveAlmacen").ToString.ToEntero}").ToString = "Solo Existencia" Then + Dr("CveAlmacen") = 0 + End If + Dr.AcceptChanges() + Next + End If + + DT.AcceptChanges() + DtAlmacenes.Dispose() + + + If DdlTipoCompra.SelectedValue.ToEntero <> 10 Then + 'QUITA 1-[MERCANCIA RECIBIDA POR ADELANTADO (OC) | MERCANCIA PENDIENTE POR RECIBIR (COMPRA)] 2-[NC CON PRODUCTOS] + If tUsaInventarios And CveConceptoContableAlmacen > 0 Then + DT = DT.FiltraParametros("CveTipoPS <> 2") + End If + End If + + Dim DTDistinct As DataTable = DT.Copy + If DdlTipoCompra.SelectedValue.ToEntero = 10 Then + DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto", "CveAlmacen"}) + Else + 'If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then + ' DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"}) + 'Else + DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"}) + 'End If + End If + + If DTDistinct.Rows.Count > 0 Then + For Each Row2 As DataRow In DTDistinct.Rows + + 'DETERMINA IMPORTE + 'If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then + ' importeMovimiento = DT.SUM("Total", String.Format("ISNULL(TipoAF,0) <> 2 AND CveClasificacion = {0} AND CveSubProyecto = {1} AND ISNULL(CveTipoGasto,0) = {2}", Row2("CveClasificacion").ToString.ToEntero, Row2("CveSubProyecto").ToString.ToEntero, Row2("CveTipoGasto").ToString.ToEntero)).ToString.ToDecimal + 'Else + importeMovimiento = DT.SUM("Total", String.Format("ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveClasificacion = {0} AND CveSubProyecto = {1} AND ISNULL(CveTipoGasto,0) = {2}", Row2("CveClasificacion").ToString.ToEntero, Row2("CveSubProyecto").ToString.ToEntero, Row2("CveTipoGasto").ToString.ToEntero)).ToString.ToDecimal + 'End If + + If DdlTipoCompra.SelectedValue.ToEntero = 10 Then + importeMovimiento = DT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"CveAlmacen > 0 ").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen > 0").ToString.ToDecimal + End If + importeMN = importeMovimiento * tipoCambioActual * Multiplicador + + 'AGREGA MOVIMIENTO + If importeMovimiento <> 0 AndAlso Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then + Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}" + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, importeMN, 6, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CveCreditoDetalle:=CveCreditoDetalle, CveClasificacion:=Row2("CveClasificacion").ToString.ToEntero, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, CveTipoGasto:=Row2("CveTipoGasto").ToString.ToEntero) Then + ErrorPrepoliza = True + End If + End If + Next + + + + End If + + 'LIMPIA + importeMovimiento = 0 + + If CveCompra > 0 And CveCompraFactura = 0 Then + + Dim CveSubProyecto As Integer = TmpDT.MAX("CveSubProyecto").ToEntero + Dim IVAPorcentaje As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal + Dim CveTipoSaldo As Integer = 1 + + Select Case DdlTipoComprobante.SelectedValue + Case "Fac" + CveTipoSaldo = 1 + Exit Select + Case "NC" + CveTipoSaldo = 15 + Exit Select + Case "Ant" + CveTipoSaldo = 11 + Exit Select + Case "Dev" + CveTipoSaldo = 15 + Exit Select + End Select + + Dim ConceptoTipoTotal As ConceptosTipoSaldo = ClsPaginas.ObtenerCveConceptoPrePoliza(CveTipoSaldo, DdlMoneda.SelectedValue.ToEntero, False, CveTipoConcepto) + + If Not ErrorPrepoliza AndAlso TxtIVA.Text.ToDecimal > 0 Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, TxtIVA.Text.ToDecimal, (TxtIVA.Text.ToDecimal * tipoCambioActual * Multiplicador), 14, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveSubProyecto:=CveSubProyecto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, PorcentajeImpuesto:=IVAPorcentaje) Then + ErrorPrepoliza = True + End If + End If + + If Not ErrorPrepoliza AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TxtTotal.Text.ToDecimal, (TxtTotal.Text.ToDecimal * tipoCambioActual * Multiplicador), ConceptoTipoTotal.CveConcepto, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveSubProyecto:=CveSubProyecto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual) Then + ErrorPrepoliza = True + End If + + End If End If + 'SI ES GASTO CON ALMACEN REGISTRA EL CONCEPTO 95 + - 'LIMPIA - importeMovimiento = 0 Next End If @@ -10226,9 +10280,91 @@ Partial Class Compras_Compras Next End If + ''OIC 2025-04-16 El bloque de validacion se paso a la funcion ActualizarPrePolizaValidacion + 'If DtPrePolizas IsNot Nothing Then + ' For Each RowPrePoliza As DataRow In DtPrePolizas.FiltraParametros("", DistinctColumns:={"CvePrePoliza"}).Rows + ' If ObjConta.ValidacionesPrePoliza(RowPrePoliza("CvePrePoliza").ToString().ToEntero(), UsuarioActual, Opcion:=4, AutoConta:=False) Then + ' If ObjConta.ValorPolizaDescuadre > 0 Then + ' ErrorPrepoliza = True + ' Alert("Error en validacion de prepoliza cuadre", TipoMensaje.MsgAdvertencia) + ' GuardaLogAD($"Compras/Compras-Actualizar | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas") + ' Exit For + ' End If + ' End If + ' Next + 'End If + + If Not ErrorPrepoliza Then + Retorno = True + Else + Retorno = False + End If + + Return Retorno + End Function + + + Private Function ActualizarPrePolizaValidacion(ByRef ObjConta As ClsContabilidad, ByRef ObjCompra As ClsCompras) As Boolean + + Dim Retorno As Boolean = True, ErrorPrepoliza As Boolean = False + Dim CvePlantillaPrePoliza As Integer + If DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then + CvePlantillaPrePoliza = 60 + Else + CvePlantillaPrePoliza = 1 + End If + + If (ArrAnticipos.Count > 0 And CveCompra > 0) Or (ArrAnticipos.Count > 0 And UsuarioActual.Empresa.UsaAC) Then + CvePlantillaPrePoliza = 52 + End If + + If RBLContado.SelectedValue = "2" AndAlso DdlFuncionarioEmpleado.SelectedValue.ToEntero > 0 Then + + If DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then + CvePlantillaPrePoliza = 60 + Else + CvePlantillaPrePoliza = 1 + End If + + End If + + Dim DtPrePolizas As DataTable = Nothing + + If ObjConta.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPrePoliza) Then + For Each Row As DataRow In ObjConta.DtResultados.Rows + + Dim ConceptoContable As Integer = Row("CveConcepto").ToString.ToEntero + + Select Case ConceptoContable + + Case 6 + + Dim CveProveedorConcepto As Integer = 0, CveIE As Integer = 0, CveCreditoDetalle As Integer = 0 + Dim ConceptoPersonal As String = "", Concepto As String = "" + Dim tUsaInventarios As Boolean = UsuarioActual.Empresa.UsaInventarios + If (UsuarioActual.CveEmpresa.Contiene(13, 83, 7, 11, 12, 122, 145)) Then tUsaInventarios = False + + If Not ObjConta.GetPrePolizasDetalleCompra(CveCompra, UsuarioActual.CveEmpresa) Then + ErrorPrepoliza = True + Else + DtPrePolizas = ObjConta.DtResultados.FiltraParametros("CveConceptoContable IN (6,68,49,205,176,5,305,311)") + + If DtPrePolizas.Rows.Count > 0 Then + Dim drr As DataRow = ObjConta.DtResultados.FiltraParametros("CveConceptoContable in(6,68,49,205,176,5,305,311)").FiltroPrimero("") + CveProveedorConcepto = drr("CveProveedor").ToString.ToEntero + CveIE = drr("CveIE").ToString.ToEntero + CveCreditoDetalle = drr("CveCreditoDetalle").ToString.ToEntero + Concepto = drr("Concepto").ToString + End If + End If + + End Select + Next + End If + If DtPrePolizas IsNot Nothing Then For Each RowPrePoliza As DataRow In DtPrePolizas.FiltraParametros("", DistinctColumns:={"CvePrePoliza"}).Rows - If ObjConta.ValidacionesPrePoliza(RowPrePoliza("CvePrePoliza").ToString().ToEntero(), UsuarioActual, Opcion:=4, AutoConta:=False) Then + If Not ObjConta.ValidacionesPrePoliza(RowPrePoliza("CvePrePoliza").ToString().ToEntero(), UsuarioActual, Opcion:=4, AutoConta:=False) Then If ObjConta.ValorPolizaDescuadre > 0 Then ErrorPrepoliza = True Alert("Error en validacion de prepoliza cuadre", TipoMensaje.MsgAdvertencia) @@ -10248,6 +10384,7 @@ Partial Class Compras_Compras Return Retorno End Function + Protected Sub ImgActualizarProyecto_Click(sender As Object, e As EventArgs) Handles ImgActualizarProyecto.Click 'actualizo los proyectos Dim Compra As New ClsCompras @@ -19837,6 +19974,10 @@ Partial Class Compras_Compras Dim ObjContabilidad As New ClsContabilidad(ObjCompra.IniciaTransacSQL) Dim Estatus As Boolean = ActualizarPrePoliza(ObjContabilidad, ObjCompra) + If Estatus Then + Estatus = ActualizarPrePolizaValidacion(ObjContabilidad, ObjCompra) + End If + If Estatus Then ObjCompra.Commit() diff --git a/Compras/RepRembolsoComprobaciones.aspx.vb b/Compras/RepRembolsoComprobaciones.aspx.vb index 928f5c519..795ce312f 100644 --- a/Compras/RepRembolsoComprobaciones.aspx.vb +++ b/Compras/RepRembolsoComprobaciones.aspx.vb @@ -87,7 +87,7 @@ Partial Class Compras_RepRembolsoComprobaciones DdlPersonal.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa) DdlPersonal.DataBind() - txtFechaI.Text = NowADS.AddYears(-1).ToShortDateString + txtFechaI.Text = NowADS.AddMonths(-3).ToShortDateString CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto, "Todos") From a9736d046f9dde879cb81f0da989edd799467108 Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Apr 2025 12:28:29 -0700 Subject: [PATCH 11/14] -- --- Bancos/DepositosCaja.aspx | 2 +- Bancos/DepositosCaja.aspx.vb | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Bancos/DepositosCaja.aspx b/Bancos/DepositosCaja.aspx index 572d50b61..085d86b98 100644 --- a/Bancos/DepositosCaja.aspx +++ b/Bancos/DepositosCaja.aspx @@ -318,7 +318,7 @@
    -
    diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb index f71e68d1d..e160dd5c8 100644 --- a/Inventarios/EntradasSalidas.aspx.vb +++ b/Inventarios/EntradasSalidas.aspx.vb @@ -921,6 +921,11 @@ Partial Class Inventarios_EntradasSalidas HplOS.NavigateUrl = $"/OS/OrdenesServicios.aspx?CveOS={DtMov.Rows(0)("CveOS")}" End If + If DtMov.Rows(0)("CveOP").ToString.ToEntero() > 0 Then + divOP.Visible = True + HplOP.Text = "1" 'DtMov.Rows(0)("OSFolio").ToString + HplOP.NavigateUrl = $"/OP/OP.aspx?CveOP={DtMov.Rows(0)("CveOP")}" + End If If (DdlAlmacen.Items.FindByValue(Mov.CveAlmacen.ToString()) Is Nothing) Then Dim dr As DataRow = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveEstatus:=-1).FiltroPrimero(String.Format("CveAlmacen = {0}", Mov.CveAlmacen)) @@ -4069,49 +4074,56 @@ Partial Class Inventarios_EntradasSalidas ErrorMovInv = True End If Else - If ObjInventario.Modulo.Contiene("TA/G1", "Recons", "API-PT/C1") Then - Contabilizable = False + If ObjInventario.Modulo.Contiene("API-Traspaso-PT-Pallet") Then + Contabilizable = True If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, DtCostos.SUMD("Total").RoundSQL, 68, Concepto, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, Contabilizable:=Contabilizable) Then ErrorMovInv = True End If Else - If ObjInventario.Modulo.Contiene("Consig") Then + If ObjInventario.Modulo.Contiene("TA/G1", "Recons", "API-PT/C1", "API-Traspaso-PT-Pallet") Then Contabilizable = False - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, DtCostos.SUMD("Total").RoundSQL, 95, Concepto, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, Contabilizable:=Contabilizable) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, DtCostos.SUMD("Total").RoundSQL, 68, Concepto, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, Contabilizable:=Contabilizable) Then ErrorMovInv = True End If Else - If ObjInventario.Modulo.Contiene("ASA/G1", "Vta/E4", "ARMPAQ1", "RE/GSC3") Then + If ObjInventario.Modulo.Contiene("Consig") Then Contabilizable = False - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, DtCostos.SUMD("Total").RoundSQL, 68, Concepto, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, Contabilizable:=Contabilizable) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, DtCostos.SUMD("Total").RoundSQL, 95, Concepto, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, Contabilizable:=Contabilizable) Then ErrorMovInv = True End If Else - If DdlConcepto.SelectedValue.Contiene("1", "6", "22", "23", "7", "16", "21", "24", "32") Then - 'genero las prepolizas manuales - Dim tCveConcepto As Integer = 95 - Dim CveCuenta As Integer - If UsuarioActual.CveEmpresa = 119 Then CveCuenta = 55519 - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total"), DtCostos.SUMD("Total"), tCveConcepto, Concepto, Concepto, CveVenta:=CveVenta, CveClasificacion:=-1, CveMovimientoAlmacen:=CveMovimiento, CveSubProyecto:=-1, Contabilizable:=Contabilizable) Then + If ObjInventario.Modulo.Contiene("ASA/G1", "Vta/E4", "ARMPAQ1", "RE/GSC3") Then + Contabilizable = False + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, DtCostos.SUMD("Total").RoundSQL, 68, Concepto, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, Contabilizable:=Contabilizable) Then ErrorMovInv = True End If Else - - Dim tCveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen={DdlAlmacen.SelectedValue.ToEntero}").ToEntero - Dim tCveConcepto As Integer = 69 - If ObjInventario.CveConcepto = 37 Then - tCveConcepto = 181 - End If - - For Each RowInv As DataRow In tmpCostos.Rows - ValorInventario = DtCostos.SUM("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").ToString.ToDecimal.RoundSQL - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, ValorInventario, tCveConcepto, Concepto, Concepto, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, CveSubProyecto:=tCveSubProyecto, Contabilizable:=Contabilizable) Then + If DdlConcepto.SelectedValue.Contiene("1", "6", "22", "23", "7", "16", "21", "24", "32") Then + 'genero las prepolizas manuales + Dim tCveConcepto As Integer = 95 + Dim CveCuenta As Integer + If UsuarioActual.CveEmpresa = 119 Then CveCuenta = 55519 + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total"), DtCostos.SUMD("Total"), tCveConcepto, Concepto, Concepto, CveVenta:=CveVenta, CveClasificacion:=-1, CveMovimientoAlmacen:=CveMovimiento, CveSubProyecto:=-1, Contabilizable:=Contabilizable) Then ErrorMovInv = True - Exit For + End If + Else + + Dim tCveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen={DdlAlmacen.SelectedValue.ToEntero}").ToEntero + Dim tCveConcepto As Integer = 69 + If ObjInventario.CveConcepto = 37 Then + tCveConcepto = 181 End If - Next + For Each RowInv As DataRow In tmpCostos.Rows + ValorInventario = DtCostos.SUM("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").ToString.ToDecimal.RoundSQL + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, ValorInventario, tCveConcepto, Concepto, Concepto, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, CveSubProyecto:=tCveSubProyecto, Contabilizable:=Contabilizable) Then + ErrorMovInv = True + Exit For + End If + + Next + End If End If End If End If