diff --git a/App_Code/ClsContratos.vb b/App_Code/ClsContratos.vb index 4aa1fc0a5..d57f54cd8 100644 --- a/App_Code/ClsContratos.vb +++ b/App_Code/ClsContratos.vb @@ -773,6 +773,27 @@ Public Class ClsContratos Return Retorno End Function + + Public Function GetContratosObraAvancesControlAcumulativo(CveContrato As Integer, CveEstimacion As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno = False + + DataAdapter("PA_Con_ContratosObraAvancesControlAcumulativo") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveContrato", SqlDbType.Int).Value = CveContrato + .Add("@CveEstimacion", SqlDbType.Int).Value = CveEstimacion + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al consultar elcontrol acumulativo.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + #End Region #Region "C I C L O C O M E R C I A L" diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index 18fa76558..38ccbc84f 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -1075,7 +1075,7 @@ Public Class ClsPaginas End Get Set(ByVal value As DataTable) - Dim AppNombre As String = String.Format("GlobalDTSubProyectosUsuarios-{0}", CveEmpresa) + Dim AppNombre As String = String.Format("GlobalDTProyectosUsuarios-{0}", CveEmpresa) Application(AppNombre) = value End Set End Property @@ -6713,6 +6713,17 @@ Public Class ClsPaginas params.Add(New ReportParameter("ClienteDatoExtra1", DatosCliente)) End If + 'ECONOLLANTAS - AGREGAR QR DE DESCARGA + If UsuarioActual.CveEmpresa = 141 Then + Dim QRDescarga As String = "" + + Dim cfdi As New RVCFDI33.GeneraCFDI() + Dim b As Byte() = cfdi.ConvertirQrCode($"http://econollantas.adssistemas.mx/Ashx/E141.ashx?P={Encripta($"File={Vta.SerieFolio}.pdf")}") + QRDescarga = Convert.ToBase64String(b) + + params.Add(New ReportParameter("QRDescarga", QRDescarga)) + End If + 'INE COMPLEMENTOS If UsuarioActual.CveEmpresa.Contiene(72, 1) Then Dim INETipoProceso As String = "" diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb index 0ed55e76e..7ce9cd07e 100644 --- a/App_Code/Modelos.vb +++ b/App_Code/Modelos.vb @@ -551,6 +551,8 @@ Namespace Modelos Public Property SeTimbro As Boolean Public Property SeTimbroNotaCredito As Boolean Public Property CveEstatus As Integer + Public Property CveMovimientoUsado As Integer + Public Property FolioUsado As String End Class Public Function RegenerarPrePolizas(Optional TransaccionCompartida As SqlClient.SqlTransaction = Nothing, Optional ObjACTransac As ClsContPAQi = Nothing) As Boolean @@ -707,7 +709,7 @@ Namespace Modelos Next End If - GuardarVenta(Me, ObjVentas, ObjConta, ObjInventario, ObjContr, DtDetalle, Me.CveNCaVincular, ObjContPaq, ObjBancos, ObjOS, ObjEventos, ObjCGame, ObjClientes, ObjAcum:=ObjAcum) + GuardarVenta(Me, ObjVentas, ObjConta, ObjInventario, ObjContr, DtDetalle, Me.CveNCaVincular, ObjContPaq, ObjBancos, ObjOS, ObjEventos, ObjCGame, ObjClientes, ObjAcum:=ObjAcum, Resp:=Retorno) 'SI ES REFACTURACION Dim ObjNC As List(Of Object) = Nothing @@ -1341,7 +1343,7 @@ Namespace Modelos End If End Sub - Public Sub GuardarVenta(ByRef factura As Modelos.Factura, ByRef ObjVentas As ClsVentas, ByRef ObjConta As ClsContabilidad, ByRef ObjInventario As ClsInventarios, ByRef ObjContr As ClsContratos, ByRef TmpDTDetalle As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, Optional ByRef ObjOS As ClsOS = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, ByRef Optional ObjCGame As ClsCGame = Nothing, ByRef Optional ObjCliente As ClsClientes = Nothing, Optional EsNotaCredito As Boolean = False, Optional ObjAcum As ClsAcumuladores = Nothing) + Public Sub GuardarVenta(ByRef factura As Modelos.Factura, ByRef ObjVentas As ClsVentas, ByRef ObjConta As ClsContabilidad, ByRef ObjInventario As ClsInventarios, ByRef ObjContr As ClsContratos, ByRef TmpDTDetalle As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, Optional ByRef ObjOS As ClsOS = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, ByRef Optional ObjCGame As ClsCGame = Nothing, ByRef Optional ObjCliente As ClsClientes = Nothing, Optional EsNotaCredito As Boolean = False, Optional ObjAcum As ClsAcumuladores = Nothing, ByRef Optional Resp As MMensajeFactura = Nothing) Dim Msgok As New StringBuilder factura.CvePrePoliza = ObjConta.AddPrePolizas("Modelos/GuardarVentaM", factura.CvePlantillaPoliza, factura.TotalTC, factura.TotalTC, factura.CveMoneda, factura.Fecha, If(factura.CveEmpresaCRM > 0, factura.EmpresaCRM, factura.Cliente.Nombre), factura.CveUsuario, factura.CveEmpresa) @@ -1375,11 +1377,6 @@ Namespace Modelos factura.Timbre.Comprobante.Serie = ObjVentas.Serie factura.Timbre.Comprobante.Folio = ObjVentas.Folio.ToString - - If Not GuardarUsados(ObjVentas.IniciaTransacSQL, ObjVentas, factura) Then - ErrorList.Add("Error al guardar usados") - End If - If factura.TipoDocto = "Egs" AndAlso NuevaFactura = 1 Then If DtVentasNC Is Nothing Then InicializaDTVentasNC() @@ -1452,6 +1449,11 @@ Namespace Modelos End If Next + 'GUARDAR USADOS + If Not GuardarUsados(ObjAcum, ObjVentas, ObjInventario, factura, Resp) Then + ErrorList.Add("Error al guardar usados") + End If + 'BONIFICACION USADOS If UsadosBonificacion IsNot Nothing AndAlso UsadosBonificacion.Count > 0 AndAlso TipoBonificacion > 0 Then For Each CveMovto In UsadosBonificacion @@ -1627,10 +1629,10 @@ Namespace Modelos If ErrorList.Count = 0 Then 'prepoliza - GuardarVentaPrePolizas(factura, ObjConta, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos) + GuardarVentaPrePolizas(factura, ObjConta, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, ObjInventario:=ObjInventario) If ErrorList.Count = 0 Then 'inventarios - GuardarVentaInventarios(factura, ObjInventario, ObjConta) + GuardarVentaInventarios(factura, ObjInventario, ObjConta, ObjVentas, ObjAcum) 'GuardaRecepcionUsados(factura, ObjInventario, ObjConta) @@ -1910,7 +1912,7 @@ Namespace Modelos DtVentasNC.Rows.Add(Dr) End If End Sub - Private Function GuardarUsados(SqlTransaccion As SqlClient.SqlTransaction, ByRef ObjVentas As ClsVentas, factura As Modelos.Factura) As Boolean + Private Function GuardarUsados(ByRef ObjAcum As ClsAcumuladores, ByRef ObjVentas As ClsVentas, ByRef ObjInventario As ClsInventarios, factura As Modelos.Factura, ByRef Optional Resp As MMensajeFactura = Nothing) As Boolean Dim Resultado As Boolean = True If UsuarioActual.Empresa.Funcionalidad(533).ToEntero > 0 AndAlso factura.TipoDocto.Contiene("Ing", "Rem") Then @@ -1918,8 +1920,6 @@ Namespace Modelos If factura.TipoDocto = "Ing" AndAlso factura.Cliente.EsDistribuidor Then Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero - Dim ObjAcum As New ClsAcumuladores(SqlTransaccion) - For Each drow As DataRow In factura.DtDetalle.Rows If drow("CveTamaño").ToString.ToEntero > 0 And (CvePSPSA <> drow("CvePS").ToString.ToEntero) Then If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, drow("Cantidad").ToString.ToEntero, drow("CveTamaño").ToString.ToEntero, 2, factura.CveVenta, UsuarioActual.CveUsuario, @@ -1944,6 +1944,64 @@ Namespace Modelos End If End If + 'SI ES UNA RNC DE CARGO GENERA EL MOVIMIENTO DE ALMACEN AQUI + If factura.TipoDocto = "RNC" AndAlso factura.Num1 = 1 AndAlso factura.DtMovimientosUsados IsNot Nothing AndAlso ObjAcum IsNot Nothing Then + 'Dim Mensaje As String = "" + Dim CveMovimiento = ObjInventario.AddMovimiento(factura.CveAlmacen, factura.CveConceptoMovimiento, 1, factura.Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, factura.CveVenta, + CveSubProyecto, CveActivoFijo:=-1, Guia:="", Observaciones:=factura.ObservacionesMovimiento, CvePersonal:=-1, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, Modulo:="RU/G") + If CveMovimiento <= 0 Then + 'Mensaje = "Error al guardar los movimientos" + Resultado = False + Else + + + For Each Dr As DataRow In factura.DtMovimientosUsados.Rows + + Dim ImporteConcepto As Decimal = 0 + If factura.CveConceptoMovimiento = 42 AndAlso factura.CveMoneda = 2 Then + ImporteConcepto = Dr("PU").ToString.ToDecimal * GlobalTipoCambio(factura.Fecha).ToDecimal + Else + ImporteConcepto = Dr("PU").ToString.ToDecimal + End If + + If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then + 'Mensaje = "Error al guardar los movimientos" + Resultado = False + Exit For + End If + + If CveVenta > 0 AndAlso Not ObjVentas.UpdateVentaUsadoRecibido(CveVenta, Dr("CvePS").ToString.ToEntero, True, CveMovimiento) Then + 'Mensaje = "Error al actualizar el recibo de los usados" + Resultado = False + Exit For + End If + + 'si es selectedvalue = 42, es entrada ,3 -salida + Dim CveConceptoUsados As Integer = If(factura.CveConceptoMovimiento = 42, 1, 2) + + If factura.Cliente.EsDistribuidor AndAlso factura.CveConceptoMovimiento = 42 AndAlso Dr("CveTamaño").ToString.ToEntero > 0 Then + + If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, Dr("Cantidad").ToString.ToEntero(), Dr("CveTamaño").ToString.ToEntero, CveConceptoUsados, CveVenta, UsuarioActual.CveUsuario, + UsuarioActual.CveEmpresa, 0, Dr("Observaciones").ToString, CveMovimiento:=CveMovimiento) Then + ' Mensaje = "Error al guardar Movimientos de distribuidor" + Resultado = False + Exit For + End If + + End If + Next + End If + + Resp.CveMovimientoUsado = CveMovimiento + + If CveMovimiento > 0 Then + If ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa) Then + Resp.FolioUsado = ObjInventario.DtResultados.FiltroPrimeroValor("Folio") + End If + End If + + End If + Return Resultado End Function @@ -1968,7 +2026,7 @@ Namespace Modelos Return Resultado End Function - Private Sub GuardarVentaPrePolizas(ByRef factura As Modelos.Factura, ByRef ObjConta As ClsContabilidad, TmpDTDetalleMovimientos As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing) + Private Sub GuardarVentaPrePolizas(ByRef factura As Modelos.Factura, ByRef ObjConta As ClsContabilidad, TmpDTDetalleMovimientos As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, ByRef Optional ObjInventario As ClsInventarios = Nothing) Dim CveIE As Integer = -1 Dim DT As DataTable = Nothing @@ -1986,7 +2044,7 @@ Namespace Modelos 'P R E P O L I Z A S If Me.TipoDocto <> "Cot" Then If Me.CvePrePoliza > 0 Then - If ProcesoPrepolizas(factura, ObjConta, CveIE, TmpDTDetalleMovimientos, objContPaqi, 1, ObjBancos, ObjVentas, ObjEventos:=ObjEventos) Then + If ProcesoPrepolizas(factura, ObjConta, CveIE, TmpDTDetalleMovimientos, objContPaqi, 1, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, ObjInventario:=ObjInventario) Then ErrorList.Add("Ocurrió un error al agregar los Movimientos de la prepoliza.
Revise su factura y cualquier detalle comuníquese a Soporte Técnico") End If Else @@ -1997,7 +2055,7 @@ Namespace Modelos Private Function ProcesoPrepolizas(ObjFactura As Factura, ByRef ObjConta As ClsContabilidad, CveIE As Integer, TmpDTDetalle As DataTable, ByRef objContPaqi As ClsContPAQi, Optional ValorMultiplicador As Integer = 1, ByRef Optional ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, Optional ByRef DtRemisionesRelacionadas As DataTable = Nothing, Optional SeCancelaRemisionProceso As Boolean = False, Optional CancelarRemisiones As Boolean = False, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, - Optional CveEstatusRefacturacion As Integer = 0) As Boolean + Optional CveEstatusRefacturacion As Integer = 0, Optional ByRef ObjInventario As ClsInventarios = Nothing) As Boolean Dim ErrorPrepoliza As Boolean = False Try Dim DT As DataTable @@ -2177,12 +2235,48 @@ Namespace Modelos IdCtaContableCliente = IdCtaContable CveCuentaCliente = CveCuenta - If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then - If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 278, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then + Dim CveMovimiento As Integer = -1 + Dim CveAlmacen As Integer = -1 + + If ObjInventario IsNot Nothing AndAlso ObjInventario.GetInv_Mov(ObjFactura.CveVenta, UsuarioActual.CveEmpresa) Then + CveMovimiento = ObjInventario.DtResultados.FiltroPrimeroValor("CveMovimiento", "CvePS IS NULL AND CveConcepto = 42").ToEntero() + CveAlmacen = ObjInventario.DtResultados.FiltroPrimeroValor("CveAlmacen", "CvePS IS NULL AND CveConcepto = 42").ToEntero() + End If + + 'VERIFICA SI TIENE MOVIMIENTO DE ENTRADA DE USADO + If CveMovimiento > 0 AndAlso CveAlmacen > 0 Then + + If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then + Dim Importe68 As Decimal = ObjInventario.DtResultados.SUMD("Total").RoundSQL + + Dim IdCtaContable68 = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen={CveAlmacen}").ToEntero + + If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, Importe68, Referencia, 68, Concepto, FechaMovimiento, IdCtaContable68, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=Importe68, Contabilizable:=False) Then + ErrorPrepoliza = True + End If + + Dim Importe318 As Decimal = importeMovimiento - Importe68 + + If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, Importe318, Referencia, 318, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=Importe318, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then + ErrorPrepoliza = True + End If + + If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then + ErrorPrepoliza = True + End If + + Else ErrorPrepoliza = True End If + Else - ErrorPrepoliza = True + If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then + If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 278, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then + ErrorPrepoliza = True + End If + Else + ErrorPrepoliza = True + End If End If importeMovimiento = 0 @@ -3487,7 +3581,7 @@ Namespace Modelos Return OcurrioError End Function - Private Function GuardarVentaInventarios(ByRef factura As Modelos.Factura, ObjInventario As ClsInventarios, ObjConta As ClsContabilidad) As Boolean + Private Function GuardarVentaInventarios(ByRef factura As Modelos.Factura, ObjInventario As ClsInventarios, ObjConta As ClsContabilidad, ObjVentas As ClsVentas, ObjAcum As ClsAcumuladores) As Boolean Dim OcurrioError As Boolean = False If UsuarioActual.Empresa.UsaInventarios AndAlso factura.TipoDocto.Contiene("Ing", "Egs", "Rem") Then @@ -4311,7 +4405,7 @@ Namespace Modelos If CveEstatusFacturaAsignado <= 0 Then Try If ObjFactura.FolioFiscal <> "" Then - If ObjFactura.TipoDocto.Contiene("Ing", "Ant", "Dev", "Egs", "RNC") Then + If ObjFactura.TipoDocto.Contiene("Ing", "Ant", "Dev", "Egs") Then Dim Vigencia = Timbrado.VerificarVigenciaSAT(FolioFiscal, UsuarioActual.Empresa.RFC, RFCReceptor, TotalT.ToString(), UsuarioActual.Empresa.FacturaProduccion) @@ -4891,6 +4985,8 @@ Namespace Modelos CveEstatus = 12 Case "Com" CveEstatus = 9 + Case "Cot" + CveEstatus = 10 Case "Ped", "DPe" CveEstatus = 14 End Select @@ -5591,6 +5687,7 @@ Namespace Modelos Public Property FacturaMateriales As Integer Public Property TipoDescuento As Integer Public Property SubProyectoPorcentajeIVA As Double + Public Property PorcentajeIVA As Double Public Property CveAlmacenOrigenContrato As Integer Public Property CveDevolucion As Integer Public Property TotalOtrosConceptos As Decimal @@ -5604,6 +5701,9 @@ Namespace Modelos Public Property CveAnticipo As Integer Public Property RemisionesLista As List(Of Integer) Public Property CveAlmacen As Integer + Public Property CveConceptoMovimiento As Integer + Public Property ObservacionesMovimiento As String + Public Property DtMovimientosUsados As DataTable Public Property CveAlmacenDevolucion As Integer Public Property CveVenta As Integer Public Property CveEmpresa As Integer @@ -5982,14 +6082,16 @@ Namespace Modelos Public Property FemsaFactura As Modelos.FemsaFactura Public Sub SetSubProyecto() - If CveSubProyecto > 0 Then - SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}")) + If CveSubProyecto > 0 AndAlso UsuarioActual IsNot Nothing Then + SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}")) End If End Sub Public Sub SetSubProyectoMatriz() - Dim Row As Data.DataRow = GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1") - If Not IsNothing(Row) Then - SubProyectoMatriz = New Modelos.SubProyectoModel(Row) + If UsuarioActual IsNot Nothing Then + Dim Row As Data.DataRow = GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1") + If Not IsNothing(Row) Then + SubProyectoMatriz = New Modelos.SubProyectoModel(Row) + End If End If End Sub Public Sub SetCliente() @@ -6033,7 +6135,7 @@ Namespace Modelos End Sub Public Sub SetSubProyecto(obj As ClsPaginas) If CveSubProyecto > 0 AndAlso Not IsNothing(obj) Then - SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}")) + SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveEmpresa:=obj.UsuarioActual.CveEmpresa).FiltroPrimero($"CveSubProyecto = {CveSubProyecto}")) End If End Sub Public Sub SetSubProyectoMatriz(obj As ClsPaginas) diff --git a/Ashx/E141.ashx b/Ashx/E141.ashx new file mode 100644 index 000000000..1afdca0b9 --- /dev/null +++ b/Ashx/E141.ashx @@ -0,0 +1,135 @@ +<%@ WebHandler Language="VB" Class="E141" %> + +Imports System +Imports System.Web +Imports System.Data +Imports System.Net.Http +Imports Newtonsoft.Json +Imports Newtonsoft.Json.Linq +Imports Extensiones +Imports System.IO + +Public Class E141 : Implements IHttpHandler + + Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable + Get + Return False + End Get + End Property + + Private ReadOnly Property CveEmpresa As Integer = 141 + + Public ReadOnly Property EsProduccion As Boolean + Get + If IsNothing(System.Configuration.ConfigurationManager.AppSettings("EsProduccion")) Then + Return False + Else + Return (System.Configuration.ConfigurationManager.AppSettings("EsProduccion").ToString() = "1") + End If + End Get + End Property + + Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest + Dim retorno As String = "no se encontro la variable" + Try + Dim Params = If(context.Request("P") = Nothing, "", context.Request("P").ToString()) + + If Not String.IsNullOrEmpty(Params) Then + Dim UrlParametros As Hashtable = Parametros(Decripta(Params)) + + Dim File As String = UrlParametros("FILE").ToString() + If Not String.IsNullOrEmpty(File) Then + ImprimirbytesPDF(context, DescargarFactura(File), File) + End If + + End If + Catch ex As Exception + retorno = ex.ToString() + ex.GuardaLog(ex.ToString()) + context.Response.Write(retorno) + End Try + + End Sub + + + 'Private Function DescargarFactura(CveVenta As Integer) As Byte() + ' Dim Url = New Uri(String.Format("{0}Compras/PopUpVerFactura.aspx?P={1}", ClsPaginas.UrlSitio, Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=0", CveVenta)))) + ' Dim File As Byte() = Nothing + ' Try + ' Using httpClient = New HttpClient() + ' httpClient.Timeout = New TimeSpan(0, 15, 0) + ' Using request = New HttpRequestMessage(HttpMethod.Get, Url) + ' request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CVEUSUARIO=100", CveEmpresa, DateTime.UtcNow.Ticks))) + ' Dim response = httpClient.SendAsync(request).Result + ' If response.StatusCode = Net.HttpStatusCode.OK Then + ' File = response.Content.ReadAsByteArrayAsync().Result + ' End If + ' End Using + ' End Using + ' Catch ex As Exception + ' File = Nothing + ' OnError("Ocurrió un error al descargar la factura", ex) + ' End Try + + ' Return File + 'End Function + + Private Function DescargarFactura(FilePDF As String) As Byte() + Dim Url = New Uri(String.Format("{0}Compras/PopUpVerFactura.aspx?TipoDocto=Ing&File={1}&TipoArchivo=PDF", "http://localhost/", FilePDF)) + Dim File As Byte() = Nothing + Try + Using httpClient = New HttpClient() + httpClient.Timeout = New TimeSpan(0, 1, 0) + Using request = New HttpRequestMessage(HttpMethod.Get, Url) + request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CVEUSUARIO=100", CveEmpresa, DateTime.UtcNow.Ticks))) + Dim response = httpClient.SendAsync(request).Result + If response.StatusCode = Net.HttpStatusCode.OK Then + File = response.Content.ReadAsByteArrayAsync().Result + End If + End Using + End Using + Catch ex As Exception + File = Nothing + OnError("Ocurrió un error al descargar la factura", ex) + End Try + + Return File + End Function + + Public Sub ImprimirbytesPDF(ByVal context As HttpContext, bytes As Byte(), NombreArchivo As String) + 'limpio ReportViwer + Dim mimeType As String = Nothing + Dim extension As String = Nothing + + Try + + bytes = bytes + context.Response.Buffer = True + context.Response.Clear() + context.Response.ContentType = mimeType + context.Response.AddHeader("content-disposition", String.Format("attachment; filename={0}", NombreArchivo)) + context.Response.BinaryWrite(bytes) ' create the file + context.Response.Flush() ' send it to the client to download + context.Response.SuppressContent = True + context.ApplicationInstance.CompleteRequest() + context.Response.End() + + Catch ex As Exception + End Try + End Sub + + Private Function Parametros(Cadena As String) As Hashtable + Dim P1() As String = Cadena.Split("&"c) + Dim Tmp As String + Dim P2() As String + + Dim URLParametros As New Hashtable + + For Each Tmp In P1 + P2 = Tmp.Replace("%26%", "&").Split("="c) + URLParametros.Add(P2(0).ToString.ToUpper, P2(1)) + Next + Return URLParametros + End Function + +End Class \ No newline at end of file diff --git a/Ashx/SIGFacturacionCiclica.ashx b/Ashx/SIGFacturacionCiclica.ashx index ca832ce20..efa477a6f 100644 --- a/Ashx/SIGFacturacionCiclica.ashx +++ b/Ashx/SIGFacturacionCiclica.ashx @@ -344,7 +344,7 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt Dim DtDetalle As DataTable = Nothing Dim objContratos As New ClsContratos If objContratos.GetContratosDetalle(DR("CveContrato").ToString.ToEntero) Then - DtDetalle = objContratos.DtResultados + DtDetalle = objContratos.DtResultados.FiltraParametros("CveTipoPresupuesto=2") Else DtDetalle = Nothing End If diff --git a/Ashx/SIGWeb.ashx b/Ashx/SIGWeb.ashx index 92c7de325..3c0189d72 100644 --- a/Ashx/SIGWeb.ashx +++ b/Ashx/SIGWeb.ashx @@ -10,7 +10,27 @@ Imports System.IO Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest - context.Response.ContentType = "text/plain" + If context.Request("metodo").ToString() = "GetTokenAngular" Then + 'context.Response.ContentType = "application/json; charset=utf-8" + + context.Response.ContentType = "text/json" + Dim origin As String = context.Request.UrlReferrer.ToString() + context.Response.AddHeader("Access-Control-Allow-Origin", origin.Substring(0, origin.Length - 1)) + 'context.Response.AddHeader("Access-Control-Allow-Origin", "http://localhost:4200") + 'context.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST") + context.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept") + context.Response.AddHeader("Access-Control-Allow-Credentials", "true") + context.Response.StatusCode = 200 + Dim key As String = GetTokenAngular(context) + Dim json As String = JsonConvert.SerializeObject(key) + context.Response.Write(json) + context.Response.Flush() + context.Response.Close() + context.Response.End() + Else + context.Response.ContentType = "text/plain" + End If + Try Select Case context.Request("metodo") Case "getps" @@ -53,10 +73,6 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState context.Response.Write(sendMail(context)) Case "sendMailLPM" context.Response.Write(sendMailLPM(context)) - Case "GetTokenAngular" - context.Response.Write(GetTokenAngular(context)) - context.Response.End() - End Select Catch ex As Exception ex.GuardaLog(ex.Message) @@ -74,11 +90,6 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState Microsoft.IdentityModel.Tokens.SecurityAlgorithms.HmacSha256Signature)} Dim tokenHandler = New System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler() Dim newtoken = tokenHandler.CreateToken(tokenDescriptor) - 'context.Response.AddHeader("Access-Control-Allow-Origin", "http://localhost:4200") - 'context.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST") - 'context.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept") - context.Response.AddHeader("Access-Control-Allow-Credentials", true ) - context.Response.StatusCode = 200 Dim stokenn As String = tokenHandler.WriteToken(newtoken) Return stokenn diff --git a/Bancos/ProveedoresAbonar.aspx.vb b/Bancos/ProveedoresAbonar.aspx.vb index 74ddb3d8c..d8325a81b 100644 --- a/Bancos/ProveedoresAbonar.aspx.vb +++ b/Bancos/ProveedoresAbonar.aspx.vb @@ -1657,19 +1657,18 @@ Partial Class Bancos_ProveedoresAbonar importeMX = 0 End If Else + ImporteMovimiento = gvr.DataKey("IVAPorPagar").ToDecimal * PorcentajePago + + If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVA").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVA").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra End If ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero) @@ -1723,19 +1722,18 @@ Partial Class Bancos_ProveedoresAbonar importeMX = 0 End If Else + ImporteMovimiento = gvr.DataKey("IVAPorPagar").ToDecimal * PorcentajePago + If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra) ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IVAPorPagar").ToDecimal - (gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IVAPorPagar").ToDecimal, gvr.DataKey("IVADeducible").ToDecimal * PorcentajePago) + importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra) End If ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero) @@ -1760,9 +1758,9 @@ Partial Class Bancos_ProveedoresAbonar IdCtaContable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0) 'se registra el iva no acreditable - If gvr.DataKey("IVANoDeducible").ToDecimal > 0 Then + If gvr.DataKey("IVAPorPagarNoDeducible").ToDecimal > 0 Then - Dim ImporteNOIVA As Decimal = gvr.DataKey("IVANoDeducible").ToDecimal * PorcentajePago + Dim ImporteNOIVA As Decimal = gvr.DataKey("IVAPorPagarNoDeducible").ToDecimal * PorcentajePago If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteNOIVA, Referencia, 280, ConceptoMovimiento, FechaMovimiento, IdCtaContableNoIVA, -1, CveIE, CveCompra:=gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedor, ImporteMX:=ImporteNOIVA, ImporteME:=If(TipoCambioPago = 1, 0, ImporteMovimiento), CveCuenta:=CveCuenta, TipoCambio:=TipoCambioGeneral, PorcentajeImpuesto:=PorcentajeImpuesto) Then MsgError = "No se pudo insertar la póliza" @@ -1778,19 +1776,16 @@ Partial Class Bancos_ProveedoresAbonar End If Case 25 'IEPS X Acreditar Dim TotalImporte As Decimal = gvr.FCTextBox("TxtAbonar").Text.ToDecimal + ImporteMovimiento = gvr.DataKey("IEPSPorPagar").ToDecimal * PorcentajePago If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra End If ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero) @@ -1806,19 +1801,16 @@ Partial Class Bancos_ProveedoresAbonar End If Case 26 'IEPS Acreditable Dim TotalImporte As Decimal = gvr.FCTextBox("TxtAbonar").Text.ToDecimal + ImporteMovimiento = gvr.DataKey("IEPSPorPagar").ToDecimal * PorcentajePago If CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento ElseIf CveMoneda = 1 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra) ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 1 Then - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * tipoCambioCompra ElseIf CveMoneda = 2 AndAlso gvr.DataKey("CveMoneda").ToEntero = 2 Then tipoCambioCompra = gvr.DataKey("TipoCambio").ToDecimal - ImporteMovimiento = If(TotalImporte = gvr.DataKey("Saldo").ToDecimal AndAlso Math.Abs(Math.Round(gvr.DataKey("IEPSPorPagar").ToDecimal - (gvr.DataKey("IEPS").ToDecimal * PorcentajePago), 2)) <= 0.02, gvr.DataKey("IEPSPorPagar").ToDecimal, gvr.DataKey("IEPS").ToDecimal * PorcentajePago) importeMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, TipoCambioPago, tipoCambioCompra) End If ImporteMovimiento = Math.Round(ImporteMovimiento, 2, MidpointRounding.AwayFromZero) diff --git a/Bancos/RepCxCCliente.aspx.vb b/Bancos/RepCxCCliente.aspx.vb index f9e979d4c..1a02a421e 100644 --- a/Bancos/RepCxCCliente.aspx.vb +++ b/Bancos/RepCxCCliente.aspx.vb @@ -19,7 +19,8 @@ Partial Class Bancos_RepCxCCliente DdlMoneda.DataSource = GlobalDTMonedas() DdlMoneda.DataBind() - If UsuarioActual.CveEmpresa = 119 Then + Dim EsWS = If(UsuarioActual.Empresa.Funcionalidad(105) = "1" Or UsuarioActual.Empresa.Funcionalidad(141) = "1", True, False) + If EsWS Then DdlClientesWS.setEsWebService(True) Else DdlClientesWS.setEsWebService(False) diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index b4fdc4a72..6bc7a4144 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -826,7 +826,7 @@ Partial Class PopUpVerFactura params.Add(New ReportParameter("Chofer", Chofer)) params.Add(New ReportParameter("Placa", Placa)) params.Add(New ReportParameter("Recibio", Recibio)) - params.Add(New ReportParameter("FechaEntrega", FechaEntrega.ToString())) + params.Add(New ReportParameter("FechaEntrega", FechaEntrega.ToDateTime().ToString("dd/MM/yyyy"))) params.Add(New ReportParameter("EspecifUnidad", EspecifUnidad)) params.Add(New ReportParameter("DireccionOrigen", SBDireccionO.ToString)) params.Add(New ReportParameter("DireccionDestino", SBDireccionD.ToString)) @@ -3241,8 +3241,8 @@ Partial Class PopUpVerFactura params.Add(New ReportParameter("Direccion", Almacen)) params.Add(New ReportParameter("FechaConFormato", FechaConFormato)) - params.Add(New ReportParameter("FechaInicial", Fecha)) - params.Add(New ReportParameter("FechaFinal", Today.ToString)) + 'params.Add(New ReportParameter("FechaInicial", Fecha)) + 'params.Add(New ReportParameter("FechaFinal", Today.ToString("dd/MM/yyyy"))) params.Add(New ReportParameter("Sucursal", "Sucursal")) params.Add(New ReportParameter("Cliente", NombreCliente)) diff --git a/Contabilidad/RepIVA.aspx b/Contabilidad/RepIVA.aspx index a86f38ed6..2418a9532 100644 --- a/Contabilidad/RepIVA.aspx +++ b/Contabilidad/RepIVA.aspx @@ -109,7 +109,7 @@
- +
diff --git a/Contabilidad/RepIVA.aspx.cs b/Contabilidad/RepIVA.aspx.cs index 49b756477..6d37128bf 100644 --- a/Contabilidad/RepIVA.aspx.cs +++ b/Contabilidad/RepIVA.aspx.cs @@ -66,6 +66,8 @@ public partial class Contabilidad_RepIVA : ClsPaginas LnkAccionesDIOT.Visible = true; + DdlCuenta.DataSource = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:UsuarioActual.CveEmpresa, CveTipoCuenta:2); + DdlCuenta.DataBind(); } public void Consulta() @@ -73,27 +75,26 @@ public partial class Contabilidad_RepIVA : ClsPaginas if (TipoCambio == 3 && TxtEspecifico.Text != "") { TCEspecifico = TxtEspecifico.Text.ToDouble(); } else { TCEspecifico = -1; } int Conciliado = DdlTipoMovto.SelectedValue.ToEntero(); LblMsgAcreditable.Text = ""; // lbl de mensajes de negativos - string Cuenta = TxtCuenta.Text == "" ? "-1" : TxtCuenta.Text; ClsContabilidad ObjCont = new ClsContabilidad(); - if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 1, UsuarioActual.CveUsuario, -1, Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico)) + if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 1, UsuarioActual.CveUsuario, DdlCuenta.SelectedValue.ToEntero(), Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico)) { GvT.DataSource = ObjCont.DtResultados; DtIVATrasladado = ObjCont.DtResultados; - if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 1, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) + if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 1, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) { GvIEPSA.DataSource = ObjCont.DtResultados; DtIEPSA = ObjCont.DtResultados; } - if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 2, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) + if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 2, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) { GvIVAA.DataSource = ObjCont.DtResultados; DtIVAA = ObjCont.DtResultados; } } - if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 2, UsuarioActual.CveUsuario, -1, Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico)) + if (ObjCont.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 2, UsuarioActual.CveUsuario, DdlCuenta.SelectedValue.ToEntero(), Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico)) { GvA.DataSource = ObjCont.DtResultados; DtIVAAcreditable = ObjCont.DtResultados; @@ -103,7 +104,7 @@ public partial class Contabilidad_RepIVA : ClsPaginas } - if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 3, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) + if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 3, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) { GvIVA2.DataSource = ObjCont.DtResultados; } diff --git a/Contratos/Contrato.aspx.vb b/Contratos/Contrato.aspx.vb index 8753cc67a..789944859 100644 --- a/Contratos/Contrato.aspx.vb +++ b/Contratos/Contrato.aspx.vb @@ -1009,16 +1009,17 @@ Partial Class Contratos_Default ChkAplicaFacCiclica.Checked = CBool(ObjContratos.DtResultados.Rows(0)("FacturacionCicilica")) If ChkAplicaFacCiclica.Checked Then - CargaPeriodos() - ChkFacAutomatica.Checked = CBool(ObjContratos.DtResultados.Rows(0)("FacturacionCiclicaAutomatico")) - - DdlPeriodo.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("CvePeriodo")) - DdlPeriodo_SelectedIndexChanged(DdlPeriodo, EventArgs.Empty) - DdlDiaFact.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("DiaMesFacturacion").ToString()) TxtObservaciones.Text = ObjContratos.DtResultados.Rows(0)("Observaciones").ToString ChkAplicaFacCiclica_CheckedChanged(ChkAplicaFacCiclica, EventArgs.Empty) + + If ObjContratos.DtResultados.Rows(0)("CvePeriodo").ToString().ToEntero() > 0 Then + DdlPeriodo.SelectedValueExist(ObjContratos.DtResultados.Rows(0)("CvePeriodo").ToString().ToEntero()) + DdlPeriodo_SelectedIndexChanged(DdlPeriodo, EventArgs.Empty) + End If + UpFacCiclica.Update() + End If @@ -3558,6 +3559,8 @@ Partial Class Contratos_Default End Sub Private Sub CargaPeriodos() + DdlPeriodo.Items.Clear() + Dim ObjContratos As New ClsContratos If ObjContratos.GetPeriodos(-1, UsuarioActual.CveEmpresa) Then DtPeriodo = ObjContratos.DtResultados @@ -3568,6 +3571,8 @@ Partial Class Contratos_Default ObjContratos.Dispose() DdlPeriodo.DataBind() + DdlPeriodo.Items.Insert(0, New ListItem("Seleccione", "-1")) + UpGral.Update() End Sub Protected Sub DdlPeriodo_SelectedIndexChanged(sender As Object, e As EventArgs) @@ -4490,6 +4495,7 @@ Partial Class Contratos_Default Protected Sub ChkAplicaFacCiclica_CheckedChanged(sender As Object, e As EventArgs) DivFacCiclica.Visible = ChkAplicaFacCiclica.Checked DivCiclosComerciales.Visible = ChkAplicaFacCiclica.Checked + CargaPeriodos() UpFacCiclica.Update() End Sub diff --git a/Contratos/ContratoObra.aspx b/Contratos/ContratoObra.aspx index d42a38359..4ee9ea4b0 100644 --- a/Contratos/ContratoObra.aspx +++ b/Contratos/ContratoObra.aspx @@ -326,20 +326,40 @@ +
+
+ +
+ + +
+ + +
+ + + +
+ + +
+ + +