From 76ba3cceee02bc1e23df68c7195156fb82a65853 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Fri, 19 Jul 2024 11:18:45 -0700 Subject: [PATCH 1/5] Compras RNC Multiseleccion --- App_Code/ClsCompras.vb | 4 +- Compras/Compras.aspx | 83 ++++++++++++++++++----------------- Compras/Compras.aspx.vb | 73 ++++++++++++++++++++---------- Empresas/197/Formatos/OC.rdlc | 18 ++++---- 4 files changed, 104 insertions(+), 74 deletions(-) diff --git a/App_Code/ClsCompras.vb b/App_Code/ClsCompras.vb index b1af7b204..4a59454ca 100644 --- a/App_Code/ClsCompras.vb +++ b/App_Code/ClsCompras.vb @@ -1630,7 +1630,7 @@ Public Class ClsCompras #Region "N O T A S - C R E D I T O" - Public Function GetNotasCreditoRep(CveProveedor As Integer, Opcion As Integer, FechaI As String, FechaF As String, CveEmpresa As Integer, Optional TipoReporte As Integer = 1) As Boolean + Public Function GetNotasCreditoRep(CveProveedor As Integer, Opcion As Integer, FechaI As String, FechaF As String, CveEmpresa As Integer, Optional TipoReporte As Integer = 1, Optional CveComprasAmortizadas As String = "-1") As Boolean Dim Retorno As Boolean = False @@ -1643,6 +1643,8 @@ Public Class ClsCompras .Add("@FechaF", SqlDbType.VarChar).Value = FechaF .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa .Add("@TipoReporte", SqlDbType.Int).Value = TipoReporte + .Add("@CveComprasAmortizadas", SqlDbType.VarChar).Value = CveComprasAmortizadas + End With diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index c0c9e9e00..60aa183be 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -540,15 +540,15 @@ -
+ <%--
Remisión Nota de Crédito
- - <%----%> +
-
+ +
--%> @@ -957,43 +957,46 @@ +
+ + + + + + + + + Factura + + + + + + Fecha + + + + + + Saldo + + + + + + + Moneda + +   + + + + +
- - - - - - - - - Factura - - - - - - Fecha - - - - - - Saldo - - - - - - - Mon - -   - - - - +
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 40e49a25c..8485f0651 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -12,6 +12,7 @@ Imports Extensiones Imports MoreLinq Imports System.Data.SqlClient Imports ClsPaginas +Imports System.Activities.Expressions Partial Class Compras_Compras Inherits ClsPaginas @@ -1225,6 +1226,17 @@ Partial Class Compras_Compras #End Region + 'Public Property ListaFacturasRealcionadasRNC As List(Of String) + ' Get + ' If ViewState("ListaFacturasRealcionadasRNC") Is Nothing Then + ' ViewState("ListaFacturasRealcionadasRNC") = New List(Of String) + ' End If + ' Return DirectCast(ViewState("ListaFacturasRealcionadasRNC"), List(Of String)) + ' End Get + ' Set(value As List(Of String)) + ' ViewState("ListaFacturasRealcionadasRNC") = value + ' End Set + 'End Property @@ -1648,8 +1660,8 @@ Partial Class Compras_Compras End If - 'SE OCUPAN AFUERA DEL POSTBACK ?? - cargaddlVinculacionServcios() + 'SE OCUPAN AFUERA DEL POSTBACK ?? + cargaddlVinculacionServcios() If UsuarioActual.TienePermisoProceso(117) Then HplAddClasificacion.Visible = False @@ -1686,28 +1698,28 @@ Partial Class Compras_Compras DdlTipoCompra_SelectedIndexChanged(Nothing, Nothing) - For Each gvRow As GridViewRow In GvFacturaNC.Rows - If gvRow.DataKey("CveCompra").ToEntero > 0 AndAlso gvRow.FCCheckBox("ChkFacturaNC").Checked Then - Dim SerieFolioFacura As String = ObtenerUltimaParte(gvRow.DataKey("SerieFolio")) - Dim seleccion As String = "" + 'For Each gvRow As GridViewRow In GvFacturaNC.Rows + ' If gvRow.DataKey("CveCompra").ToEntero > 0 AndAlso gvRow.FCCheckBox("ChkFacturaNC").Checked Then + ' Dim SerieFolioFacura As String = ObtenerUltimaParte(gvRow.DataKey("SerieFolio")) + ' Dim seleccion As String = "" - For Each item As ListItem In DdlRemisionNotaCredito.Items - Dim serieFolioItem As String = ObtenerUltimaParte(item.Text) - If SerieFolioFacura = serieFolioItem Then - 'seleccion = item.Value - AutoSelRNC = True - DdlRemisionNotaCredito.SelectedValueExist(item.Value) - Exit For - End If + ' For Each item As ListItem In DdlRemisionNotaCredito.Items + ' Dim serieFolioItem As String = ObtenerUltimaParte(item.Text) + ' If SerieFolioFacura = serieFolioItem Then + ' 'seleccion = item.Value + ' AutoSelRNC = True + ' DdlRemisionNotaCredito.SelectedValueExist(item.Value) + ' Exit For + ' End If - Next + ' Next - If AutoSelRNC Then - Exit For - End If + ' If AutoSelRNC Then + ' Exit For + ' End If - End If - Next + ' End If + 'Next If AutoSelRNC Then 'DdlRemisionNotaCredito_SelectedIndexChanged(Nothing, Nothing) @@ -19747,11 +19759,10 @@ Partial Class Compras_Compras If DdlTipoComprobante.SelectedValue = "NC" Then CargaGVRemisionNotaCredito() - 'bloquear la vinculación a la compra HLAplicaNCFact.Visible = False Else Alert("Para elegir Remisión de Nota de Crédito el tipo de documento debe de ser Nota de Crédito.", TipoMensaje.MsgAdvertencia) - DdlRemisionNotaCredito.SelectedValueExist(-1) + 'DdlRemisionNotaCredito.SelectedValueExist(-1) DdlTipoCompra.SelectedValueExist(-1) End If End If @@ -20414,6 +20425,7 @@ Partial Class Compras_Compras End Function Private Sub NCSeleccionFacturasRelacionadas(UUIDSListRelacionados As List(Of String)) + 'ListaFacturasRealcionadasRNC.Clear() If UUIDSListRelacionados.Count > 0 Then Dim SaldoNota As Decimal = TxtTotal.Text.ToDecimal @@ -20449,17 +20461,20 @@ Partial Class Compras_Compras SaldoNotaPorAplicar = SaldoNotaPorAplicar - SaldoFactura GvRow.FCTextBox("TxtImporte").Text = SaldoFactura.FormatoNumero GvRow.FCCheckBox("ChkFacturaNC").Checked = True + 'ListaFacturasRealcionadasRNC.Add(GvRow.DataKey("CveCompra")) Else If SaldoFactura >= SaldoNotaPorAplicar Then GvRow.FCTextBox("TxtImporte").Text = SaldoNotaPorAplicar.FormatoNumero GvRow.FCCheckBox("ChkFacturaNC").Checked = True + 'ListaFacturasRealcionadasRNC.Add(GvRow.DataKey("CveCompra")) SaldoNotaPorAplicar = 0 TeminarAmortizacion = True Else GvRow.FCTextBox("TxtImporte").Text = SaldoFactura.FormatoNumero GvRow.FCCheckBox("ChkFacturaNC").Checked = True + 'ListaFacturasRealcionadasRNC.Add(GvRow.DataKey("CveCompra")) SaldoNotaPorAplicar = SaldoNotaPorAplicar - SaldoFactura TeminarAmortizacion = True @@ -21168,13 +21183,23 @@ Partial Class Compras_Compras End Sub Private Sub CargaGVRemisionNotaCredito() - DvDdlRemisionNotaCredito.Visible = True + 'DvDdlRemisionNotaCredito.Visible = True DTRemisionesNotaDeCredito = New DataTable GVRemisionesNotaDeCredito.DataSource = Nothing GVRemisionesNotaDeCredito.Visible = False + + Dim CveComprasAmortizadas As New List(Of String) + + For Each gvRow As GridViewRow In GvFacturaNC.Rows + If gvRow.DataKey("CveCompra").ToEntero > 0 AndAlso gvRow.FCCheckBox("ChkFacturaNC").Checked Then + CveComprasAmortizadas.Add(gvRow.DataKey("CveCompra")) + gvRow.FCCheckBox("ChkFacturaNC").Checked = False + End If + Next + Dim ObjCompras As New ClsCompras - If ObjCompras.GetNotasCreditoRep(DdlProveedor.SelectedValue.ToEntero, 0, "-1", "-1", UsuarioActual.CveEmpresa, 2) Then + If ObjCompras.GetNotasCreditoRep(DdlProveedor.SelectedValue.ToEntero, 0, "-1", "-1", UsuarioActual.CveEmpresa, 2, String.Join(",", CveComprasAmortizadas)) Then 'DdlRemisionNotaCredito.DataSource = ObjCompras.DtResultados DTRemisionesNotaDeCredito = ObjCompras.DtResultados GVRemisionesNotaDeCredito.DataSource = DTRemisionesNotaDeCredito diff --git a/Empresas/197/Formatos/OC.rdlc b/Empresas/197/Formatos/OC.rdlc index 2497110a5..694ca2c40 100644 --- a/Empresas/197/Formatos/OC.rdlc +++ b/Empresas/197/Formatos/OC.rdlc @@ -1754,7 +1754,7 @@ @@ -1762,7 +1762,7 @@ =IIF(LEN(Parameters!SubProyectoEntrega.Value) > 0,"Lugar de Entrega: " + Parameters!SubProyectoEntrega.Value,"") @@ -1770,7 +1770,7 @@ @@ -1785,8 +1785,8 @@ =Parameters!SubProyectoEntregaDir.Value @@ -1867,7 +1867,7 @@ =Parameters!RFC.Value @@ -1884,7 +1884,7 @@ "(" & Mid(Parameters!Telefono.Value, 1, 3) & ") " & Mid(Parameters!Telefono.Value, 4)) @@ -1899,7 +1899,7 @@ USO CFDI: @@ -1907,7 +1907,7 @@ =Parameters!UsoCFDI.Value From 37c11e281020c7bd7635bb835f5ada026986b560 Mon Sep 17 00:00:00 2001 From: rrene Date: Sat, 20 Jul 2024 07:23:05 -0700 Subject: [PATCH 2/5] =?UTF-8?q?--=20se=20activ=C3=B3=20para=20todos=20las?= =?UTF-8?q?=20carta=20porte=203.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App_Code/Timbrado.vb | 159 ++++++++++++------------------------------- 1 file changed, 45 insertions(+), 114 deletions(-) diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb index 0db156ffd..3084bd295 100644 --- a/App_Code/Timbrado.vb +++ b/App_Code/Timbrado.vb @@ -2552,12 +2552,10 @@ concep.DescripcionesEspecificas.NumeroSerie) Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte - If UsuarioActual.CveEmpresa.Contiene(1, 140) Then - ''DATOS GENERALES - cfdi.CartaPorte31("", Carta.TranspInternac, Carta.EntradaSalidaMercancia, Carta.PaisOrigenDestino, Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroISTMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino) - - 'UBICACIONES - If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then + ''DATOS GENERALES + cfdi.CartaPorte31("", Carta.TranspInternac, Carta.EntradaSalidaMercancia, Carta.PaisOrigenDestino, Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroISTMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino) + 'UBICACIONES + If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then For Each ubica As CFDICartaPorteUbicacion In Carta.Ubicaciones 'origen cfdi.CartaPorte31Ubicacion(ubica.TipoUbicacion, ubica.IDUbicacion, ubica.RFCRemitenteDestinatario, ubica.NombreRemitenteDestinatario, ubica.NumRegIdTrib, ubica.ResidenciaFiscal, ubica.NumEstacion, ubica.NombreEstacion, ubica.NavegacionTrafico, ubica.FechaHoraSalidaLlegada, ubica.TipoEstacion, ubica.DistanciaRecorrida) @@ -2566,123 +2564,56 @@ concep.DescripcionesEspecificas.NumeroSerie) Next End If - 'MERCANCIAS - If Carta.Mercancias IsNot Nothing Then - cfdi.CartaPorte31Mercancias(Carta.Mercancias.PesoBrutoTotal, Carta.Mercancias.UnidadPeso, Carta.Mercancias.PesoNetoTotal, Carta.Mercancias.NumTotalMercancias, Carta.Mercancias.CargoporTasacion, Carta.Mercancias.LogisticaInversaRecoleccionDevolucion) - If Carta.Mercancias IsNot Nothing AndAlso Carta.Mercancias.Mercancias.Count > 0 Then - For Each concep As CFDICartaPorteMercancia In Carta.Mercancias.Mercancias - If concep.ValorMercancia <= 0 Then concep.Moneda = "" - cfdi.CartaPorte31Mercancia(concep.BienesTransp, concep.ClaveSTCC, concep.Descripción, concep.Cantidad, concep.ClaveUnidad, concep.Unidad, concep.Dimensiones, concep.MaterialPeligroso, concep.ClaveMaterialPeligroso, If(concep.ClaveMaterialPeligroso <> "", concep.Embalaje, ""), If(concep.ClaveMaterialPeligroso <> "", concep.DescripEmbalaje, ""), - concep.SectorCOFEPRIS, concep.NombreIngredienteActivo, concep.NomQuimico, concep.DenominacionGenericaProd, concep.DenominacionDistintivaProd, concep.Fabricante, concep.FechaCaducidad, concep.LoteMedicamento, concep.FormaFarmaceutica, concep.CondicionesEspTransp, concep.RegistroSanitarioFolioAutorizacion, - If(Carta.TranspInternac <> "No", concep.PermisoImportacion, ""), If(Carta.TranspInternac <> "No", concep.FolioImpoVUCEM, ""), concep.NumCAS, If(Carta.TranspInternac <> "No", concep.RazonSocialEmpImp, ""), concep.NumRegSanPlagCOFEPRIS, concep.DatosFabricante, concep.DatosFormulador, concep.DatosMaquilador, concep.UsoAutorizado, - concep.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt, concep.TipoMateria, If(concep.TipoMateria = "05", concep.TipoMateriaDescripcion, "")) - For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta - cfdi.CartaPorte31CantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) - Next + 'MERCANCIAS + If Carta.Mercancias IsNot Nothing Then + cfdi.CartaPorte31Mercancias(Carta.Mercancias.PesoBrutoTotal, Carta.Mercancias.UnidadPeso, Carta.Mercancias.PesoNetoTotal, Carta.Mercancias.NumTotalMercancias, Carta.Mercancias.CargoporTasacion, Carta.Mercancias.LogisticaInversaRecoleccionDevolucion) + If Carta.Mercancias IsNot Nothing AndAlso Carta.Mercancias.Mercancias.Count > 0 Then + For Each concep As CFDICartaPorteMercancia In Carta.Mercancias.Mercancias + If concep.ValorMercancia <= 0 Then concep.Moneda = "" + cfdi.CartaPorte31Mercancia(concep.BienesTransp, concep.ClaveSTCC, concep.Descripción, concep.Cantidad, concep.ClaveUnidad, concep.Unidad, concep.Dimensiones, concep.MaterialPeligroso, concep.ClaveMaterialPeligroso, If(concep.ClaveMaterialPeligroso <> "", concep.Embalaje, ""), If(concep.ClaveMaterialPeligroso <> "", concep.DescripEmbalaje, ""), + concep.SectorCOFEPRIS, concep.NombreIngredienteActivo, concep.NomQuimico, concep.DenominacionGenericaProd, concep.DenominacionDistintivaProd, concep.Fabricante, concep.FechaCaducidad, concep.LoteMedicamento, concep.FormaFarmaceutica, concep.CondicionesEspTransp, concep.RegistroSanitarioFolioAutorizacion, + If(Carta.TranspInternac <> "No", concep.PermisoImportacion, ""), If(Carta.TranspInternac <> "No", concep.FolioImpoVUCEM, ""), concep.NumCAS, If(Carta.TranspInternac <> "No", concep.RazonSocialEmpImp, ""), concep.NumRegSanPlagCOFEPRIS, concep.DatosFabricante, concep.DatosFormulador, concep.DatosMaquilador, concep.UsoAutorizado, + concep.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt, concep.TipoMateria, If(concep.TipoMateria = "05", concep.TipoMateriaDescripcion, "")) + For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta + cfdi.CartaPorte31CantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) Next - End If - End If - ' - If Carta.FiguraTransporte IsNot Nothing Then - - If Carta.FiguraTransporte.AutoTransporte IsNot Nothing Then - - cfdi.CartaPorte31Autotransporte(Carta.FiguraTransporte.AutoTransporte.PermisoSCT, Carta.FiguraTransporte.AutoTransporte.NumPermisoSCT) - - cfdi.CartaPorte31IdentificacionVehicular(Carta.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PesoBrutoVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM, Carta.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM) - - If Carta.Mercancias.Mercancias.Max(Function(x) x.MaterialPeligroso) = "" Then 'si no hay material peligro se limpian los valores - Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente = "" - Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente = "" - End If - - cfdi.CartaPorte31Seguros(Carta.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil, - Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente, - Carta.FiguraTransporte.AutoTransporte.NombreSeguroCarga, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroCarga, - Carta.FiguraTransporte.AutoTransporte.PrimaSeguro) - - If Carta.FiguraTransporte.AutoTransporte.Remolques IsNot Nothing AndAlso Carta.FiguraTransporte.AutoTransporte.Remolques.Count > 0 Then - For Each concep As CFDICartaPorteRemolque In Carta.FiguraTransporte.AutoTransporte.Remolques - cfdi.CartaPorte31Remolque(concep.SubTipoRemolque, concep.Placa) - Next - End If - End If - - If Carta.FiguraTransporte.Operadores IsNot Nothing AndAlso Carta.FiguraTransporte.Operadores.Count > 0 Then - For Each concep As CFDICartaPorteOperador In Carta.FiguraTransporte.Operadores - cfdi.CartaPorte31TiposFigura(concep.TipoFigura, concep.RFCFigura, concep.NumLicencia, concep.NombreFigura, concep.NumRegidTribFigura, If(concep.ResidenciaFiscalFigura <> "MEX", concep.ResidenciaFiscalFigura, "")) - If concep.TipoFigura.Contiene("02", "03") Then ' “02”- Propietario o “03” -Arrendador - cfdi.CartaPorte31PartesTransporte("PT01") - cfdi.CartaPorte31PartesTransporteDomicilio(concep.Domicilio.Calle, concep.Domicilio.NumeroExterior, concep.Domicilio.NumeroInterior, concep.Domicilio.Colonia, concep.Domicilio.Localidad, concep.Domicilio.Referencia, concep.Domicilio.Municipio, concep.Domicilio.Estado, concep.Domicilio.Pais, concep.Domicilio.CP) - End If - Next - End If - End If - Else - ''DATOS GENERALES - cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, Carta.PaisOrigenDestino, Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroISTMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino) - - 'UBICACIONES - If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then - For Each ubica As CFDICartaPorteUbicacion In Carta.Ubicaciones - 'origen - cfdi.CartaPorte30Ubicacion(ubica.TipoUbicacion, ubica.IDUbicacion, ubica.RFCRemitenteDestinatario, ubica.NombreRemitenteDestinatario, ubica.NumRegIdTrib, ubica.ResidenciaFiscal, ubica.NumEstacion, ubica.NombreEstacion, ubica.NavegacionTrafico, ubica.FechaHoraSalidaLlegada, ubica.TipoEstacion, ubica.DistanciaRecorrida) - 'cfdi.CartaPorteOrigen(ubica.Origen.IDOrigen, ubica.Origen.RFCRemitente, ubica.Origen.NombreRemitente, ubica.NumRegIdTrib, ubica.Origen.ResidenciaFiscal, ubica.Origen.NumEstacion, ubica.Origen.NombreEstacion, ubica.Origen.NavegacionTrafico, ubica.Origen.FechaHoraSalida) - cfdi.CartaPorte30Domicilio(ubica.Domicilio.Calle, ubica.Domicilio.NumeroExterior, ubica.Domicilio.NumeroInterior, ubica.Domicilio.Colonia, ubica.Domicilio.Localidad, ubica.Domicilio.Referencia, ubica.Domicilio.Municipio, ubica.Domicilio.Estado, ubica.Domicilio.Pais, ubica.Domicilio.CP) Next End If + End If + ' + If Carta.FiguraTransporte IsNot Nothing Then - 'MERCANCIAS - If Carta.Mercancias IsNot Nothing Then - cfdi.CartaPorte30Mercancias(Carta.Mercancias.PesoBrutoTotal, Carta.Mercancias.UnidadPeso, Carta.Mercancias.PesoNetoTotal, Carta.Mercancias.NumTotalMercancias, Carta.Mercancias.CargoporTasacion, Carta.Mercancias.LogisticaInversaRecoleccionDevolucion) - If Carta.Mercancias IsNot Nothing AndAlso Carta.Mercancias.Mercancias.Count > 0 Then - For Each concep As CFDICartaPorteMercancia In Carta.Mercancias.Mercancias - If concep.ValorMercancia <= 0 Then concep.Moneda = "" - cfdi.CartaPorte30Mercancia(concep.BienesTransp, concep.ClaveSTCC, concep.Descripción, concep.Cantidad, concep.ClaveUnidad, concep.Unidad, concep.Dimensiones, concep.MaterialPeligroso, concep.ClaveMaterialPeligroso, If(concep.ClaveMaterialPeligroso <> "", concep.Embalaje, ""), If(concep.ClaveMaterialPeligroso <> "", concep.DescripEmbalaje, ""), - concep.SectorCOFEPRIS, concep.NombreIngredienteActivo, concep.NomQuimico, concep.DenominacionGenericaProd, concep.DenominacionDistintivaProd, concep.Fabricante, concep.FechaCaducidad, concep.LoteMedicamento, concep.FormaFarmaceutica, concep.CondicionesEspTransp, concep.RegistroSanitarioFolioAutorizacion, - If(Carta.TranspInternac <> "No", concep.PermisoImportacion, ""), If(Carta.TranspInternac <> "No", concep.FolioImpoVUCEM, ""), concep.NumCAS, If(Carta.TranspInternac <> "No", concep.RazonSocialEmpImp, ""), concep.NumRegSanPlagCOFEPRIS, concep.DatosFabricante, concep.DatosFormulador, concep.DatosMaquilador, concep.UsoAutorizado, - concep.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt, concep.TipoMateria, If(concep.TipoMateria = "05", concep.TipoMateriaDescripcion, "")) - For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta - cfdi.CartaPorte30CantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) - Next + If Carta.FiguraTransporte.AutoTransporte IsNot Nothing Then + + cfdi.CartaPorte31Autotransporte(Carta.FiguraTransporte.AutoTransporte.PermisoSCT, Carta.FiguraTransporte.AutoTransporte.NumPermisoSCT) + + cfdi.CartaPorte31IdentificacionVehicular(Carta.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PesoBrutoVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM, Carta.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM) + + If Carta.Mercancias.Mercancias.Max(Function(x) x.MaterialPeligroso) = "" Then 'si no hay material peligro se limpian los valores + Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente = "" + Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente = "" + End If + + cfdi.CartaPorte31Seguros(Carta.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil, + Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente, + Carta.FiguraTransporte.AutoTransporte.NombreSeguroCarga, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroCarga, + Carta.FiguraTransporte.AutoTransporte.PrimaSeguro) + + If Carta.FiguraTransporte.AutoTransporte.Remolques IsNot Nothing AndAlso Carta.FiguraTransporte.AutoTransporte.Remolques.Count > 0 Then + For Each concep As CFDICartaPorteRemolque In Carta.FiguraTransporte.AutoTransporte.Remolques + cfdi.CartaPorte31Remolque(concep.SubTipoRemolque, concep.Placa) Next End If End If - ' - If Carta.FiguraTransporte IsNot Nothing Then - If Carta.FiguraTransporte.AutoTransporte IsNot Nothing Then - - cfdi.CartaPorte30Autotransporte(Carta.FiguraTransporte.AutoTransporte.PermisoSCT, Carta.FiguraTransporte.AutoTransporte.NumPermisoSCT) - - cfdi.CartaPorte30IdentificacionVehicular(Carta.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PesoBrutoVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM, Carta.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM) - - If Carta.Mercancias.Mercancias.Max(Function(x) x.MaterialPeligroso) = "" Then 'si no hay material peligro se limpian los valores - Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente = "" - Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente = "" + If Carta.FiguraTransporte.Operadores IsNot Nothing AndAlso Carta.FiguraTransporte.Operadores.Count > 0 Then + For Each concep As CFDICartaPorteOperador In Carta.FiguraTransporte.Operadores + cfdi.CartaPorte31TiposFigura(concep.TipoFigura, concep.RFCFigura, concep.NumLicencia, concep.NombreFigura, concep.NumRegidTribFigura, If(concep.ResidenciaFiscalFigura <> "MEX", concep.ResidenciaFiscalFigura, "")) + If concep.TipoFigura.Contiene("02", "03") Then ' “02”- Propietario o “03” -Arrendador + cfdi.CartaPorte31PartesTransporte("PT01") + cfdi.CartaPorte31PartesTransporteDomicilio(concep.Domicilio.Calle, concep.Domicilio.NumeroExterior, concep.Domicilio.NumeroInterior, concep.Domicilio.Colonia, concep.Domicilio.Localidad, concep.Domicilio.Referencia, concep.Domicilio.Municipio, concep.Domicilio.Estado, concep.Domicilio.Pais, concep.Domicilio.CP) End If - - cfdi.CartaPorte30Seguros(Carta.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil, - Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente, - Carta.FiguraTransporte.AutoTransporte.NombreSeguroCarga, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroCarga, - Carta.FiguraTransporte.AutoTransporte.PrimaSeguro) - - If Carta.FiguraTransporte.AutoTransporte.Remolques IsNot Nothing AndAlso Carta.FiguraTransporte.AutoTransporte.Remolques.Count > 0 Then - For Each concep As CFDICartaPorteRemolque In Carta.FiguraTransporte.AutoTransporte.Remolques - cfdi.CartaPorte30Remolque(concep.SubTipoRemolque, concep.Placa) - Next - End If - End If - - If Carta.FiguraTransporte.Operadores IsNot Nothing AndAlso Carta.FiguraTransporte.Operadores.Count > 0 Then - For Each concep As CFDICartaPorteOperador In Carta.FiguraTransporte.Operadores - cfdi.CartaPorte30TiposFigura(concep.TipoFigura, concep.RFCFigura, concep.NumLicencia, concep.NombreFigura, concep.NumRegidTribFigura, If(concep.ResidenciaFiscalFigura <> "MEX", concep.ResidenciaFiscalFigura, "")) - If concep.TipoFigura.Contiene("02", "03") Then ' “02”- Propietario o “03” -Arrendador - cfdi.CartaPorte30PartesTransporte("PT01") - cfdi.CartaPorte30PartesTransporteDomicilio(concep.Domicilio.Calle, concep.Domicilio.NumeroExterior, concep.Domicilio.NumeroInterior, concep.Domicilio.Colonia, concep.Domicilio.Localidad, concep.Domicilio.Referencia, concep.Domicilio.Municipio, concep.Domicilio.Estado, concep.Domicilio.Pais, concep.Domicilio.CP) - End If - Next - End If + Next End If End If End If From 816b0145fbc9e5aeafca7db465076ee56fbf74ad Mon Sep 17 00:00:00 2001 From: rrene Date: Sat, 20 Jul 2024 07:24:22 -0700 Subject: [PATCH 3/5] =?UTF-8?q?--=20en=20mensaje=20en=20bit=C3=A1cora=20po?= =?UTF-8?q?ner=20el=20cveventa?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Ventas/Ventas.aspx.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 4299a4c92..e9bdcd82d 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -16113,7 +16113,7 @@ Partial Class Ventas If Not TraspasoAlmacen(ObjInventario, ObjVentas, CveRemision, ObjConta, True, 9, TmpDTDetalle) Then OcurrioError = True ErrorList.Add("Ocurrió un error al verificar inventario de remisiones.
Revise su factura y cualquier detalle comuníquese a Soporte Técnico") - ModExtensiones.GuardaLog("Ocurrió un error al verificar inventario de remisiones.Revise su factura y cualquier detalle comuníquese a Soporte Técnico") + ModExtensiones.GuardaLog("Ocurrió un error al verificar inventario de remisiones.Revise su factura y cualquier detalle comuníquese a Soporte Técnico: CveVenta:" & CveRemision & " ") Exit For End If Next From 587e8edfacdddd946e8741ebaa2d4f4705ca8bab Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Mon, 22 Jul 2024 06:09:17 -0700 Subject: [PATCH 4/5] --- App_Code/CLSErrorMessage.vb | 18 ++++++++++++++++ App_Code/ClsNominas.vb | 23 +++++++++++++++++++-- App_Code/modExtensiones.vb | 3 +++ Nomina/ConceptoNomina.aspx | 6 +++++- Nomina/ConceptoNomina.aspx.cs | 12 ++++++++--- Nomina/Nomina.aspx.cs | 39 +++++++++++++++++++---------------- 6 files changed, 77 insertions(+), 24 deletions(-) create mode 100644 App_Code/CLSErrorMessage.vb diff --git a/App_Code/CLSErrorMessage.vb b/App_Code/CLSErrorMessage.vb new file mode 100644 index 000000000..550e561bf --- /dev/null +++ b/App_Code/CLSErrorMessage.vb @@ -0,0 +1,18 @@ +Imports ClosedXML.Excel.XLPredefinedFormat +Imports System.Buffers +Imports Microsoft.VisualBasic + +Public NotInheritable Class CLSErrorMessage + + + Public Shared Function GetErrorMesagge(mesage As String, ex As Exception, tipoMensaje As Extensiones.ModExtensiones.TipoMensaje) As Tuple(Of String, Extensiones.ModExtensiones.TipoMensaje) + Dim newmesage As String = mesage + Dim newtipoMensaje As Extensiones.ModExtensiones.TipoMensaje = tipoMensaje + If ex.ToString().ToLower().Contains("chk_rh_personalsalarioimss") Then + newmesage = "El salario base cotización no puede ser menor al salario diario integrado" + newtipoMensaje = Extensiones.ModExtensiones.TipoMensaje.MsgAdvertencia + End If + + Return Tuple.Create(newmesage, newtipoMensaje) + End Function +End Class diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index d29728f94..44f5a3d97 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -642,6 +642,22 @@ Public Class ClsNominas retorno = RunQuery("Ocurrió un error al obtener el valor de la UMA.") Return retorno End Function + Public Function GetEfectivaleXLS(CvePeriodo As Int32, CveEmpresa As Int32, CvePersonal As Int32) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_Nom_EfectivaleXLSGet", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePeriodo", SqlDbType.Int).Value = CvePeriodo + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CvePersonal", SqlDbType.Int).Value = CvePersonal + End With + Try + SqlAdapter.Fill(Data) + retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener el layout de nóminas(Efetivale).", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function Public Function GetDispersionnominaXLS(CvePeriodo As Int32, CveEmpresa As Int32) As Boolean Dim retorno As Boolean = False DataAdapter("PA_Nom_DispersionnominaXLS", CommandType.StoredProcedure) @@ -1455,7 +1471,7 @@ Public Class ClsNominas Public Function AddConcepto(Codigo As String, Concepto As String, Tipo As String, Formula As String, Sistema As Boolean, Estado As Boolean, CveConceptoPadre As Integer, CveUsuario As Integer, CveEmpresa As Integer, EsRetencion As Boolean, CveClasificacion As Integer, CveTipoGasto As Integer, TipoCalculo As Boolean, CveConceptoContable As Integer, AplicaFiniquito As Integer, AutomaticoGlobal As Integer, Especie As Integer, Imprimir As Integer, CveSATConcepto As Integer, - ctaImporteNegativoProv As Integer, contabiliza As Integer, CargoOAbono As Integer, cveConceptoContableB As Integer, CveCuentaB As Integer, CveConceptoContablePasivo As Integer) As Integer + ctaImporteNegativoProv As Integer, contabiliza As Integer, CargoOAbono As Integer, cveConceptoContableB As Integer, CveCuentaB As Integer, CveConceptoContablePasivo As Integer, Optional AplicaEfectivale As Integer = 0) As Integer Dim Retorno As Integer = -1 DataAdapter("PA_Nom_ConceptosAdd") @@ -1488,6 +1504,7 @@ Public Class ClsNominas .Add("CveConceptoContableB", SqlDbType.Int).Value = cveConceptoContableB .Add("CveCuentaB", SqlDbType.Int).Value = CveCuentaB .Add("CveConceptoContablePasivo", SqlDbType.Int).Value = CveConceptoContablePasivo + .Add("AplicaEfectivale", SqlDbType.Int).Value = AplicaEfectivale End With @@ -1514,7 +1531,8 @@ Public Class ClsNominas Public Function UpdateConcepto(Codigo As String, Concepto As String, Tipo As String, Formula As String, Sistema As Boolean, Estado As Boolean, CveConceptoPadre As Integer, CveConcepto As Integer, EsRetencion As Boolean, CveClasificacion As Integer, CveTipoGasto As Integer, TipoCalculo As Boolean, CveConceptoContable As Integer, AplicaFiniquito As Integer, AutomaticoGlobal As Integer, Especie As Integer, Imprimir As Integer, CveSATConcepto As Integer, CveEmpresa As Integer, - ctaImporteNegativoProv As Integer, contabiliza As Integer, CargoOAbono As Integer, cveConceptoContableB As Integer, CveCuentaB As Integer, CveConceptoContablePasivo As Integer) As Boolean + ctaImporteNegativoProv As Integer, contabiliza As Integer, CargoOAbono As Integer, cveConceptoContableB As Integer, CveCuentaB As Integer, + CveConceptoContablePasivo As Integer, Optional AplicaEfectivale As Integer = 0) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Nom_ConceptosUpdate") @@ -1546,6 +1564,7 @@ Public Class ClsNominas .Add("CveConceptoContableB", SqlDbType.Int).Value = cveConceptoContableB .Add("CveCuentaB", SqlDbType.Int).Value = CveCuentaB .Add("CveConceptoContablePasivo", SqlDbType.Int).Value = CveConceptoContablePasivo + .Add("AplicaEfectivale", SqlDbType.Int).Value = AplicaEfectivale End With Try diff --git a/App_Code/modExtensiones.vb b/App_Code/modExtensiones.vb index 5bb948f6b..e3cf0a3af 100644 --- a/App_Code/modExtensiones.vb +++ b/App_Code/modExtensiones.vb @@ -600,6 +600,9 @@ Namespace Extensiones Public Sub OnError(Obj As Object, Mensaje As String, Exeption As Exception, Optional InfoAdicional As String = "", Optional TipoMensaje As TipoMensaje = TipoMensaje.MsgError) GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", Mensaje, Exeption.ToString, vbCrLf, InfoAdicional)) + Dim resultado = CLSErrorMessage.GetErrorMesagge(Mensaje, Exeption, TipoMensaje) + Mensaje = resultado.Item1 + TipoMensaje = resultado.Item2 Alert(Obj, Mensaje, TipoMensaje) If WebConfigurationManager.AppSettings("SiteName") IsNot Nothing AndAlso WebConfigurationManager.AppSettings("SiteName").ToString = "1" Then MandaCorreoError(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", Mensaje, Exeption.ToString, vbCrLf, InfoAdicional)) End Sub diff --git a/Nomina/ConceptoNomina.aspx b/Nomina/ConceptoNomina.aspx index 067ac9bc9..443e37391 100644 --- a/Nomina/ConceptoNomina.aspx +++ b/Nomina/ConceptoNomina.aspx @@ -424,12 +424,16 @@ - +
+ +
+ +
diff --git a/Nomina/ConceptoNomina.aspx.cs b/Nomina/ConceptoNomina.aspx.cs index 812c420ba..cba504251 100644 --- a/Nomina/ConceptoNomina.aspx.cs +++ b/Nomina/ConceptoNomina.aspx.cs @@ -362,7 +362,7 @@ public partial class Nomina_CatConcepto : ClsPaginas int CveConceptoContablePasivo = DdlConceptoContablePasivo.SelectedValue.ToEntero(); int IdCtaContableB = (DdlCtaContableB.DataValueField == "Id" ? DdlCtaContableB.SelectedValue.ToEntero() : 0); int CveCuentaB = (DdlCtaContableB.DataValueField == "Id" ? 0 : DdlCtaContableB.SelectedValue.ToEntero()); - + int AplicaEfectivale = chkAplicaEfectivale.Checked ? 1 : 0; ClsNominas ObjNomina = new ClsNominas(); ObjNomina.IniciaTransacSQL(); @@ -372,7 +372,7 @@ public partial class Nomina_CatConcepto : ClsPaginas { TieneError = !ObjNomina.UpdateConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, CveConcepto, retencion, CveClasificacion, CveTipoGasto, tipoCalculo, CveConceptoContable, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, CveSATConcepto, - UsuarioActual.CveEmpresa, ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB , CveCuentaB, CveConceptoContablePasivo); + UsuarioActual.CveEmpresa, ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB , CveCuentaB, CveConceptoContablePasivo, AplicaEfectivale); if (!TieneError) { @@ -404,7 +404,7 @@ public partial class Nomina_CatConcepto : ClsPaginas { CveConcepto = ObjNomina.AddConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, retencion, CveClasificacion, CveTipoGasto, tipoCalculo, CveConceptoContable, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, - CveSATConcepto, ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB, CveCuentaB, CveConceptoContablePasivo); + CveSATConcepto, ctaImporteNegativoProv, contabiliza, CargoOAbono, cveConceptoContableB, CveCuentaB, CveConceptoContablePasivo, AplicaEfectivale); @@ -502,6 +502,7 @@ public partial class Nomina_CatConcepto : ClsPaginas ChkEstado.Checked = drow["Estado"].Equals("Activo"); ChkSistema.Checked = drow["Sistema"].Equals("Sí"); ChkAutomaticoLiquidacion.Checked = drow["AplicaFiniquito"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); + chkAplicaEfectivale.Checked = drow["AplicaEfectivale"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); ChkContabiliza.Checked = drow["Contabiliza"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); chkCtaImporteNegativoProv.Checked = drow["CtaImporteNegativoProv"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); ChkAutomaticoGlobal.Checked = drow["AutomaticoGlobal"].ToString().ToUpper().Contiene(new string[] { "1", "TRUE" }); @@ -671,4 +672,9 @@ public partial class Nomina_CatConcepto : ClsPaginas //} } + + protected void chkAplicaEfectivale_CheckedChanged(object sender, EventArgs e) + { + + } } \ No newline at end of file diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index 0ca01bdac..2e2f0452c 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -710,7 +710,7 @@ public partial class Nomina_Nomina2 : ClsPaginas LnkTimbrarTodos.Visible = (dtempleados.Rows.Count > 0 && dtempleados.COUNT("CvePersonal", "SeTimbro=0 AND CvePersonal >0 AND NomAutorizado =1") > 0); } - } + } } @@ -7198,7 +7198,7 @@ public partial class Nomina_Nomina2 : ClsPaginas } using (ClsNominas ObjMovt = new ClsNominas()) { - ObjMovt.GetMovtoPermanenteSaldos(UsuarioActual.CveEmpresa, SRCvePersonal, CcveMovtoPermanente); + ObjMovt.GetMovtoPermanenteSaldos(UsuarioActual.CveEmpresa, SRCvePersonal, CcveMovtoPermanente); GVMovtoPermanenteSaldos.DataSource = ObjMovt.DtResultados; GVMovtoPermanenteSaldos.DataBind(); } @@ -10019,28 +10019,31 @@ public partial class Nomina_Nomina2 : ClsPaginas libro.Cell(row, column++).Value = "XTIPOPEDIDO"; libro.Cell(row, column++).Value = "XNUMERO"; libro.Cell(row, column++).Value = "XIMPORTE"; - //libro.Cell(row, column++).Value = "CLABE"; - //libro.Cell(row, column++).Value = "Neto"; + int maxxolumn = column; libro.Range(row, 1, row, column - 1).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; libro.Range(row, 1, row, column - 1).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189)); DataRow dcon; decimal subtotal = 0; - if (dtempleados != null && dtempleados.Rows.Count > 0 && dtConceptos != null && dtConceptos.Rows.Count > 0 && (dcon = dtConceptos.FiltroPrimero("Tipo ='P' AND Codigo = 'P028' ")) != null) + DataTable dt = null; + using (ClsNominas objnom = new ClsNominas()) { - foreach (DataRow dRow in dtempleados.FiltraParametros("CvePersonal > 0").Rows) + objnom.GetEfectivaleXLS(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa, -1); + dt = objnom.DtResultados; + } + if (dt != null && dt.Rows.Count > 0) + { + + foreach (DataRow dRow in dt.Rows) { - decimal importe = dRow[string.Format("V_{0}", dcon["CveConcepto"])].ToString().ToDecimal(); - if (importe > 0) - { - subtotal = subtotal + importe; - row++; - column = 1; - libro.Cell(row, column++).Value = "'103646-1"; - libro.Cell(row, column++).Value = "'DISPERSION"; - libro.Cell(row, column++).Value = string.Format("'{0}", dRow["Codigo"]); - libro.Cell(row, column++).Value = importe; - } + decimal importe = dRow["Importe"].ToString().ToDecimal(); + subtotal = subtotal + importe; + row++; + column = 1; + libro.Cell(row, column++).Value = string.Format("'{0}", dRow["XCLIENTE"]); + libro.Cell(row, column++).Value = string.Format("'{0}", dRow["XTIPOPEDIDO"]); + libro.Cell(row, column++).Value = string.Format("'{0}", dRow["CodigoDispersionVale"]); + libro.Cell(row, column++).Value = importe; } } libro.Cell(1, 2).Value = subtotal; @@ -10383,7 +10386,7 @@ public partial class Nomina_Nomina2 : ClsPaginas if (!ErroresValidaciones) { - DataRow RowCuenta = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveCuenta: DdlCuenta.SelectedValue.ToEntero(), CveEmpresa: UsuarioActual.CveEmpresa).FiltroPrimero(""); + DataRow RowCuenta = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveCuenta: DdlCuenta.SelectedValue.ToEntero(), CveEmpresa: UsuarioActual.CveEmpresa).FiltroPrimero(""); var ClaveMoneda = "001"; // PESOS MEXICANOS //REGISTRO DE CONTROL - IMPORTACIÓN From fed72cbc38864ea872d28f11977149d0cbcaadd4 Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Mon, 22 Jul 2024 06:45:47 -0700 Subject: [PATCH 5/5] --- App_Code/ClsNominas.vb | 63 +++++++++++++++++++++--------------------- Nomina/Nomina.aspx.cs | 33 ++++++++++++---------- 2 files changed, 50 insertions(+), 46 deletions(-) diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index 44f5a3d97..aff44610d 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -658,27 +658,28 @@ Public Class ClsNominas End Try Return retorno End Function - Public Function GetDispersionnominaXLS(CvePeriodo As Int32, CveEmpresa As Int32) As Boolean - Dim retorno As Boolean = False - DataAdapter("PA_Nom_DispersionnominaXLS", 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 nóminas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - Return retorno - End Function - Public Function GetDispersionnomina(CvePeriodo As Int32, CveEmpresa As Int32) As Boolean + 'Public Function GetDispersionnominaXLS(CvePeriodo As Int32, CveEmpresa As Int32) As Boolean + ' Dim retorno As Boolean = False + ' DataAdapter("PA_Nom_DispersionnominaXLS", 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 nóminas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + ' End Try + ' Return retorno + 'End Function + Public Function GetDispersionnomina(CvePeriodo As Int32, CveEmpresa As Int32, CveSATBanco As Int32) As Boolean Dim retorno As Boolean = False DataAdapter("PA_Nom_Dispersionnomina", CommandType.StoredProcedure) With SqlAdapter.SelectCommand.Parameters .Add("@CvePeriodo", SqlDbType.Int).Value = CvePeriodo .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveSATBanco", SqlDbType.Int).Value = CveSATBanco End With Try SqlAdapter.Fill(Data) @@ -3763,21 +3764,21 @@ 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 + '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 Public Function PreNominaTotalSemana(numeroPeriodo As Int32, cveEmpresa As Int32, cveSubProyecto As Int32, cveTipoNomina As Int32, tipoTrabajador As String, ejercicio As Int32, facturado As Boolean) As Boolean Dim retorno As Boolean = False diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index 0afbbfbf2..de3b59033 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -10005,28 +10005,31 @@ public partial class Nomina_Nomina2 : ClsPaginas libro.Cell(row, column++).Value = "XTIPOPEDIDO"; libro.Cell(row, column++).Value = "XNUMERO"; libro.Cell(row, column++).Value = "XIMPORTE"; - //libro.Cell(row, column++).Value = "CLABE"; - //libro.Cell(row, column++).Value = "Neto"; + int maxxolumn = column; libro.Range(row, 1, row, column - 1).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; libro.Range(row, 1, row, column - 1).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189)); DataRow dcon; decimal subtotal = 0; - if (dtempleados != null && dtempleados.Rows.Count > 0 && dtConceptos != null && dtConceptos.Rows.Count > 0 && (dcon = dtConceptos.FiltroPrimero("Tipo ='P' AND Codigo = 'P028' ")) != null) + DataTable dt = null; + using (ClsNominas objnom = new ClsNominas()) { - foreach (DataRow dRow in dtempleados.FiltraParametros("CvePersonal > 0").Rows) + objnom.GetEfectivaleXLS(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa, -1); + dt = objnom.DtResultados; + } + if (dt != null && dt.Rows.Count > 0) + { + + foreach (DataRow dRow in dt.Rows) { - decimal importe = dRow[string.Format("V_{0}", dcon["CveConcepto"])].ToString().ToDecimal(); - if (importe > 0) - { - subtotal = subtotal + importe; - row++; - column = 1; - libro.Cell(row, column++).Value = "'103646-1"; - libro.Cell(row, column++).Value = "'DISPERSION"; - libro.Cell(row, column++).Value = string.Format("'{0}", dRow["Codigo"]); - libro.Cell(row, column++).Value = importe; - } + decimal importe = dRow["Importe"].ToString().ToDecimal(); + subtotal = subtotal + importe; + row++; + column = 1; + libro.Cell(row, column++).Value = string.Format("'{0}", dRow["XCLIENTE"]); + libro.Cell(row, column++).Value = string.Format("'{0}", dRow["XTIPOPEDIDO"]); + libro.Cell(row, column++).Value = string.Format("'{0}", dRow["CodigoDispersionVale"]); + libro.Cell(row, column++).Value = importe; } } libro.Cell(1, 2).Value = subtotal;