From 1ee8b1204130bbedb9380638defa28f95fcaa3a4 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Wed, 27 Apr 2022 20:52:34 -0700 Subject: [PATCH 1/3] IE cancelacion, RegPrePolizasS contabilizar descontabilizar Folio opcional --- App_Code/ClsContabilidad.vb | 3 +- App_Code/ClsNominas.vb | 18 +- Bancos/IE.aspx.vb | 16 +- Compras/Compras.aspx.vb | 17 +- Compras/Proveedores.aspx.vb | 26 +- Compras/eFacturas.aspx.vb | 2 +- Contabilidad/RegPrePolizaS.aspx | 18 +- Contabilidad/RegPrePolizaS.aspx.vb | 87 +++- CxC/RepCxCDetalle.aspx.vb | 7 +- Nomina/Nomina.aspx | 4 +- Nomina/Nomina.aspx.cs | 744 ++++++++++++++++++++++++----- 11 files changed, 788 insertions(+), 154 deletions(-) diff --git a/App_Code/ClsContabilidad.vb b/App_Code/ClsContabilidad.vb index 07ef0da67..20a20bd32 100644 --- a/App_Code/ClsContabilidad.vb +++ b/App_Code/ClsContabilidad.vb @@ -1171,13 +1171,14 @@ Public Class ClsContabilidad End Function - Public Function ContabilizaDesContabilizaPrePoliza(CvePrePoliza As Integer, Contabilizar As Boolean, CveEmpresa As Integer) As Boolean + Public Function ContabilizaDesContabilizaPrePoliza(CvePrePoliza As Integer, Contabilizar As Boolean, CveEmpresa As Integer, Optional Folio As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Conta_PrePolizasContabilizarDescontabilizar") With SqlAdapter.SelectCommand.Parameters .Add("@CvePrePoliza", SqlDbType.Int).Value = CvePrePoliza .Add("@Contabilizar", SqlDbType.Bit).Value = Contabilizar .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@Folio", SqlDbType.Int).Value = Folio .Add("@FolioPoliza", SqlDbType.Int).Direction = ParameterDirection.Output End With Try diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index aa5b2d3d0..3f2ff3384 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -3243,7 +3243,7 @@ Public Class ClsNominas Public Function GetLayoutAltaBanorte(CvePeriodo As Integer, CveEmpresa As Integer) As Boolean Dim retorno As Boolean = False - DataAdapter("PA_Nom_Dispersionnomina", CommandType.StoredProcedure) + DataAdapter("PA_Nom_LayoutAltaBanorteGet", CommandType.StoredProcedure) With SqlAdapter.SelectCommand.Parameters .Add("@CvePeriodo", SqlDbType.Int).Value = CvePeriodo .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa @@ -3258,6 +3258,22 @@ Public Class ClsNominas End Function + Public Function GetDispersionNominaBanorte(CvePeriodo As Integer, CveEmpresa As Integer) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_Nom_DispersionNominaBanorteGet", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePeriodo", SqlDbType.Int).Value = CvePeriodo + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener el layout de nominas Banorte.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + #Region "IDisposable Support" ' IDisposable diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb index eb50c7db8..92b0c29b6 100644 --- a/Bancos/IE.aspx.vb +++ b/Bancos/IE.aspx.vb @@ -4559,15 +4559,24 @@ Partial Class Bancos_IE Dim TipoMovimiento As Integer = 1 + Dim CveTipoTransaccionCancelacion As Integer = DdlTipoTransaccionCancelacion.SelectedValue.ToEntero + If ChkGeneraCancelacion.Checked AndAlso GeneraCancelacionEnCero Then GeneraCancelacionEnCero = False TipoMovimiento = 2 + + If DdlTipoTransaccionCancelacion.SelectedValue.ToEntero = -1 Then + CveTipoTransaccionCancelacion = 16 'Validacion manual para solo enviar el correcto + End If + End If + Dim CvePrePolizaCancelacion As Integer = 0 If Not GeneraCancelacionEnCero Then 'CANCELA IE MES ANTERIOR - CvePrePolizaCancelacion = Banc.CancelarBancos_IE(UsuarioActual.CveUsuario, CveIE, True, IdPolizaNueva, FolioPolizaNueva, TxtFechaCancelacion.Text.ToDate, TipoMovimiento:=TipoMovimiento, CveTipoTransaccionCancelacion:=DdlTipoTransaccionCancelacion.SelectedValue.ToEntero) + CvePrePolizaCancelacion = Banc.CancelarBancos_IE(UsuarioActual.CveUsuario, CveIE, True, IdPolizaNueva, FolioPolizaNueva, TxtFechaCancelacion.Text.ToDate, TipoMovimiento:=TipoMovimiento, + CveTipoTransaccionCancelacion:=CveTipoTransaccionCancelacion) If CvePrePolizaCancelacion <= 0 Then ErrorCancelar = True MensajeError = "Error al cancelar IE MES ANTERIOR" @@ -4582,7 +4591,8 @@ Partial Class Bancos_IE MensajeError = "Error al desbloquear prepoliza." Else 'CANCELA IE MES ACTUAL - CvePrePolizaCancelacion = Banc.CancelarBancos_IE(UsuarioActual.CveUsuario, CveIE, False, IdPolizaNueva, FolioPolizaNueva, TxtFechaCancelacion.Text.ToDate, CveTipoTransaccionCancelacion:=DdlTipoTransaccionCancelacion.SelectedValue.ToEntero) + CvePrePolizaCancelacion = Banc.CancelarBancos_IE(UsuarioActual.CveUsuario, CveIE, False, IdPolizaNueva, FolioPolizaNueva, TxtFechaCancelacion.Text.ToDate, + CveTipoTransaccionCancelacion:=CveTipoTransaccionCancelacion) If CvePrePolizaCancelacion <= 0 Then ErrorCancelar = True MensajeError = "Error al cancelar IE MES ACTUAL" @@ -4797,7 +4807,7 @@ Partial Class Bancos_IE Else 'siempre se hace una cancelación - If Banc.CancelarBancos_IE(UsuarioActual.CveUsuario, CveIE, True, IdPolizaNueva, FolioPolizaNueva, TxtFechaDevuelto.Text.ToDate, 2) <= 0 Then + If Banc.CancelarBancos_IE(UsuarioActual.CveUsuario, CveIE, True, IdPolizaNueva, FolioPolizaNueva, TxtFechaDevuelto.Text.ToDate, 2, 16) <= 0 Then ErrorCancelar = True End If diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 91fe0f944..52bbddd73 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -4054,9 +4054,7 @@ Partial Class Compras_Compras Protected Sub BtnGuardar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnGuardar.Click - 'If Not AjustaCombustibles() Then - ' Exit Sub - 'End If + '------------------ INICIA VALIDACIONES ------------------ @@ -4478,6 +4476,10 @@ Partial Class Compras_Compras '------------------TERMINA VALIDACIONES------------------ + + + + 'si hay necesidad de actualizar el globaldtps If RegeneraPS Then 'Dim Hilo As New System.Threading.Thread(AddressOf GeneraGlobalDT) @@ -5935,7 +5937,10 @@ Partial Class Compras_Compras Dim IdCtaContable As Integer = 0 Dim Concepto As String = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, NombreProveedor, $"{TxtSerie.Text}-{TxtFolio.Text}", If(TxtDocumentoFolio.Visible, TxtDocumentoFolio.Text, If(TxtDocumentoFolioCaja.Visible, TxtDocumentoFolioCaja.Text, ConceptoPersonal))) Dim importeMN As Decimal = 0 - Dim Multiplicador As Integer = If(Row("Multiplicador").ToString.ToEntero = 1, 1, -1) + + Dim Multiplicador As Integer = If(Row("Multiplicador").ToString.ToEntero = 1, -1, 1) + + Dim Referencia As String = $"{TxtSerie.Text}-{TxtFolio.Text}" ' concatenation interpolation Dim PorcentajeImpuesto As Decimal = 0 CveConceptoOriginal = ConceptoContable @@ -8980,7 +8985,7 @@ Partial Class Compras_Compras IdCtaContable = 0 Dim Concepto As String = String.Format("{0}-{1}", TxtSerie.Text, TxtFolio.Text) Dim importeMN As Decimal = 0 - Dim Multiplicador As Integer = If(Row("Multiplicador").ToString.ToEntero = 1, 1, -1) + Dim Multiplicador As Integer = If(Row("Multiplicador").ToString.ToEntero = 1, -1, 1) Dim PorcentajeImpuesto As Decimal = 0 Dim ConceptoPartida As String = String.Format("{0}-{1}", TxtSerie.Text, TxtFolio.Text) @@ -10599,7 +10604,7 @@ Partial Class Compras_Compras Dim importeMovimiento As Decimal = 0 Dim IdCtaContable As Integer = 0 Dim importeMN As Decimal = 0 - Dim Multiplicador As Integer = If(Row("Multiplicador").ToString.ToEntero = 1, 1, -1) + Dim Multiplicador As Integer = If(Row("Multiplicador").ToString.ToEntero = 1, -1, 1) Dim Referencia As String = $"{TxtSerie.Text}-{TxtFolio.Text}" ' concatenation interpolation Select Case ConceptoContable diff --git a/Compras/Proveedores.aspx.vb b/Compras/Proveedores.aspx.vb index 06170b6ba..d8176bb72 100644 --- a/Compras/Proveedores.aspx.vb +++ b/Compras/Proveedores.aspx.vb @@ -713,18 +713,36 @@ Partial Class Compras_Proveedores Dim Prefijo As String = If(XMLDoc.DocumentElement.Prefix = "", "cfd", XMLDoc.DocumentElement.Prefix) Dim cfdVer As String = "http://www.sat.gob.mx/cfd/3" Dim namespaces As New XmlNamespaceManager(XMLDoc.NameTable) - Dim nodo As XmlNode = XMLDoc.DocumentElement - If Prefijo.ToLower <> "cfdi" Then cfdVer = "http://www.sat.gob.mx/cfd/2" - namespaces.AddNamespace(Prefijo, cfdVer) + Dim nodo As XmlNode = XMLDoc.DocumentElement Dim Version As String = ValorXml(nodo, "Version") + + If Version = "3.2" Then + Prefijo = "cfd" + cfdVer = "http://www.sat.gob.mx/cfd/2" + ElseIf Version = "3.3" Then + cfdVer = "http://www.sat.gob.mx/cfd/3" + + Else ' se considera que es la version 4.0 + cfdVer = "http://www.sat.gob.mx/cfd/4" + End If + + + + 'If Prefijo.ToLower <> "cfdi" Then cfdVer = "http://www.sat.gob.mx/cfd/2" + namespaces.AddNamespace(Prefijo, cfdVer) + + + + + Dim node As XmlNode node = XMLDoc.SelectSingleNode(String.Format("//{0}:Emisor", Prefijo), namespaces) If node IsNot Nothing Then TxtRFC.Text = ValorXml(node, "rfc") - If Version = "3.3" Then + If Version = "3.3" Or Version = "4.0" Then TxtRazonSocial.Text = HttpUtility.HtmlDecode(ValorXml(node, "Nombre")) TxtNombreComercial.Text = HttpUtility.HtmlDecode(ValorXml(node, "Nombre")) ChkEstado.Checked = True diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb index ca77c2250..c73ff32d0 100644 --- a/Compras/eFacturas.aspx.vb +++ b/Compras/eFacturas.aspx.vb @@ -1700,7 +1700,7 @@ Partial Class Compras_eFacturas RegistraScript(String.Format("$('#{0}').modal('hide');", "ModalFacturas")) - asdasd + 'Alert(String.Format("Se cargaron {0} Facturas", Arreglo.Count), TipoMensaje.MsgInformacion) End Sub diff --git a/Contabilidad/RegPrePolizaS.aspx b/Contabilidad/RegPrePolizaS.aspx index b09cf0b9f..72c196a84 100644 --- a/Contabilidad/RegPrePolizaS.aspx +++ b/Contabilidad/RegPrePolizaS.aspx @@ -88,9 +88,9 @@ Agregar Concepto -
  • - Crear a partir de -
  • +
  • + Crear a partir de +
  • @@ -156,8 +156,14 @@
    -
    - +
    + + + + + + +
    @@ -710,6 +716,8 @@ + diff --git a/Contabilidad/RegPrePolizaS.aspx.vb b/Contabilidad/RegPrePolizaS.aspx.vb index bbb576de3..05f6994b1 100644 --- a/Contabilidad/RegPrePolizaS.aspx.vb +++ b/Contabilidad/RegPrePolizaS.aspx.vb @@ -277,6 +277,21 @@ Partial Class ContabilidadC_RegPrePolizaS ValidaCrearAPartirDe() DvPlantilla.Visible = False UPPDocumento.Visible = False + + If UsuarioActual.Empresa.TipoContabilidad = 1 Then + + If Folio.ToEntero > 0 Then + BtnDescontabilizar.Visible = True + LnkFolioManual.Visible = False + Else + BtnDescontabilizar.Visible = False + LnkFolioManual.Visible = True + End If + + End If + + + Exit Sub ElseIf Request("CvePrePolizaOrigen") IsNot Nothing AndAlso IsNumeric(Request("CvePrePolizaOrigen")) AndAlso Request("CvePrePolizaOrigen").ToEntero > 0 Then @@ -2695,22 +2710,51 @@ Partial Class ContabilidadC_RegPrePolizaS Dim ObjConta As New ClsContabilidad - If IdPoliza > 0 Then 'si está bloqueada, lo desbloqueaprimero - ObjConta.UpdatePrePolizasDetalleBloquear(CvePrePoliza, False) - End If + If UsuarioActual.Empresa.TipoContabilidad = 1 Then + + If Folio.ToEntero = 0 Then + + Dim FolioManual As Integer = If(TxtFolio.Text.ToEntero > 0, TxtFolio.Text.ToEntero, -1) + + + + If ObjConta.ContabilizaDesContabilizaPrePoliza(CvePrePoliza, True, UsuarioActual.CveEmpresa, Folio:=FolioManual) Then + + Alert($"Contabilizado Correctamente Folio { ObjConta.ContaFolio.ToString()}.", TipoMensaje.MsgInformacion) + + TxtFolio.Text = ObjConta.ContaFolio.ToString() + LnkFolioManual.Visible = False + UpPoliza.Update() + + End If - If ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, pIDPoliza:=If(IdPoliza > 0, IdPoliza, -1), Concepto:=TxtConcepto.Text, Fecha:=TxtFechaDocumento.Text.ToDateTime()) Then - If UsuarioActual.Empresa.TipoContabilizacion = 1 Then - Alert(String.Format("Prepóliza contabilizada.

    Folio: {0} ", ObjConta.FolioPoliza), ModExtensiones.TipoMensaje.MsgInformacion) - Else - Alert(String.Format("Prepóliza contabilizada.

    Folio:Ver Póliza", ObjConta.ContaIdPoliza), ModExtensiones.TipoMensaje.MsgInformacion) End If Else - Alert($"Ocurrio un error al contabilizar {ObjConta.AlertaMensaje}", TipoMensaje.MsgAdvertencia) + + If IdPoliza > 0 Then 'si está bloqueada, lo desbloqueaprimero + ObjConta.UpdatePrePolizasDetalleBloquear(CvePrePoliza, False) + End If + + If ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, pIDPoliza:=If(IdPoliza > 0, IdPoliza, -1), Concepto:=TxtConcepto.Text, Fecha:=TxtFechaDocumento.Text.ToDateTime()) Then + If UsuarioActual.Empresa.TipoContabilizacion = 1 Then + Alert(String.Format("Prepóliza contabilizada.

    Folio: {0} ", ObjConta.FolioPoliza), ModExtensiones.TipoMensaje.MsgInformacion) + Else + Alert(String.Format("Prepóliza contabilizada.

    Folio:Ver Póliza", ObjConta.ContaIdPoliza), ModExtensiones.TipoMensaje.MsgInformacion) + End If + + Else + + Alert($"Ocurrio un error al contabilizar {ObjConta.AlertaMensaje}", TipoMensaje.MsgAdvertencia) + End If + End If + + + + ObjConta.Dispose() End Sub @@ -3159,13 +3203,38 @@ Partial Class ContabilidadC_RegPrePolizaS End Sub + + #End Region + Private Sub BtnDescontabilizar_Click(sender As Object, e As EventArgs) Handles BtnDescontabilizar.Click + + Dim ObjConta As New ClsContabilidad + + + If ObjConta.ContabilizaDesContabilizaPrePoliza(CvePrePoliza, False, UsuarioActual.CveEmpresa) Then + Alert("Descontabilizado Correctamente.", TipoMensaje.MsgInformacion) + TxtFolio.Text = "" + LnkFolioManual.Visible = True + End If + + ObjConta.Dispose() + + UpPoliza.Update() + End Sub + + Private Sub LnkFolioManual_Click(sender As Object, e As EventArgs) Handles LnkFolioManual.Click + + TxtFolio.Enabled = True + TxtFolio.Focus() + UpPoliza.Update() + + End Sub End Class diff --git a/CxC/RepCxCDetalle.aspx.vb b/CxC/RepCxCDetalle.aspx.vb index 12c5b1dec..dc9a65081 100644 --- a/CxC/RepCxCDetalle.aspx.vb +++ b/CxC/RepCxCDetalle.aspx.vb @@ -910,8 +910,13 @@ Partial Class RepCxCDetalle 'End If Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)) - Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) + Dim logouri As String = "" + If Imagen.Exists Then + logouri = String.Format("file://{0}", Imagen.FullName) + End If + + Dim params As New List(Of ReportParameter) params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("FechaInicio", FechaI)) diff --git a/Nomina/Nomina.aspx b/Nomina/Nomina.aspx index d6d9dd52c..33f855f1e 100644 --- a/Nomina/Nomina.aspx +++ b/Nomina/Nomina.aspx @@ -4227,13 +4227,13 @@