diff --git a/AF/CatAF.aspx.vb b/AF/CatAF.aspx.vb index 4a021ea00..1ee85db95 100644 --- a/AF/CatAF.aspx.vb +++ b/AF/CatAF.aspx.vb @@ -124,8 +124,8 @@ Partial Class AF_CatAF DdlTipoActivo.Items.Insert(0, New ListItem("Todos", "-1")) End Sub Private Sub CargaResponsable() - Dim DtPersonal = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("", "NombreCompleto") - DdlResponsable.DataSource = DtPersonal + + DdlResponsable.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("", "NombreCompleto") DdlResponsable.DataBind() End Sub Protected Sub DdlTipoActivo_SelectedIndexChanged(sender As Object, e As EventArgs) @@ -454,7 +454,7 @@ Partial Class AF_CatAF End Sub Private Sub GenerarPDF(Optional Formato As String = "PDF") - If DtActivosFijos.Rows.Count > 0 Then + If DtActivosFijos IsNot Nothing AndAlso DtActivosFijos.Rows.Count > 0 Then Dim params As New List(Of ReportParameter) Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png") diff --git a/App_Code/CFDITimbre.vb b/App_Code/CFDITimbre.vb index 22febac8e..6294e3a8a 100644 --- a/App_Code/CFDITimbre.vb +++ b/App_Code/CFDITimbre.vb @@ -248,11 +248,11 @@ End Class Public Class CFDIComplementos - Public Property ComercioExterior11 As CFDIComercioExterior11 + Public Property ComercioExterior As CFDIComercioExterior Public Property CartaPorte As CFDICartaPorte Sub New() - ComercioExterior11 = New CFDIComercioExterior11 + ComercioExterior = New CFDIComercioExterior End Sub End Class @@ -732,7 +732,7 @@ End Class -Public Class CFDIComercioExterior11 +Public Class CFDIComercioExterior Public Property MotivoTraslado As String Public Property TipoOperacion As String = "" Public Property ClavedePedimento As String = "" diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index 66c8e9396..ff9a10c2a 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -6914,6 +6914,13 @@ Public Class ClsPaginas params.Add(New ReportParameter("Tipo", TipoDocumento)) params.Add(New ReportParameter("Ref", TipoDocumentoRef)) params.Add(New ReportParameter("AplicaPagare", AplicaPagare)) + + If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then + params.Add(New ReportParameter("Documentacion", Vta.Cliente.Documentacion)) + params.Add(New ReportParameter("Medico", Vta.Medico)) + params.Add(New ReportParameter("Procedimiento", Vta.Procedimiento)) + params.Add(New ReportParameter("FechaCirugia", Vta.FechaEjecucion.ToString("dd/MM/yyyy HH:mm"))) + End If 'VSH If UsuarioActual.CveEmpresa.Contiene(4, 7, 11, 12, 122, 145) Then 'DATOS CLIENTES @@ -7197,6 +7204,46 @@ Public Class ClsPaginas GuardaLog("No se especifico el tipo de Impresion de venta (Venta, Remision, Cotización, Nota de Crédito).") Return Nothing End If + + If NombreArchivo = "FacturaUSA" Then + Dim DtBaseTotales = Vta.DtDeduccion.Clone() + + If Vta.DtDeduccion IsNot Nothing Then + Dim RowTotal_USA = DtBaseTotales.NewRow() + Dim RowPAYMENTS_USA = DtBaseTotales.NewRow() + Dim RowBALANCE_USA = DtBaseTotales.NewRow() + + Dim TOTAL_USA As Decimal = 0 + Dim PAYMENTS_USA As Decimal = 0 + Dim BALANCE_USA As Decimal = 0 + + For Each Row As DataRow In Vta.DtDeduccion.Rows + If Row("ImpuestoLocal").ToString() = "Total" Then + TOTAL_USA += Row("Importe").ToString().ToDecimal() + End If + Next + + RowTotal_USA("ImpuestoLocal") = "TOTAL" + RowTotal_USA("Importe") = TOTAL_USA + RowTotal_USA("Orden") = 1 + DtBaseTotales.Rows.Add(RowTotal_USA) + + RowPAYMENTS_USA("ImpuestoLocal") = "PAYMENTS/CREDITS" + RowPAYMENTS_USA("Importe") = PAYMENTS_USA + RowPAYMENTS_USA("Orden") = 2 + DtBaseTotales.Rows.Add(RowPAYMENTS_USA) + + BALANCE_USA = TOTAL_USA - PAYMENTS_USA + + RowBALANCE_USA("ImpuestoLocal") = "BALANCE DUE" + RowBALANCE_USA("Importe") = BALANCE_USA + RowBALANCE_USA("Orden") = 3 + DtBaseTotales.Rows.Add(RowBALANCE_USA) + + Vta.DtDeduccion = DtBaseTotales + End If + End If + 'TERMINA REGION PARAMETROS Dim lrds As New List(Of ReportDataSource) 'Si es ECLIPSE CREAR COLUMAS PARA FIRMAS EN DtDetalle. @@ -7273,6 +7320,7 @@ Public Class ClsPaginas If UsuarioActual.CveEmpresa.Contiene(141, 152, 159, 160, 161, 162, 163) AndAlso (RutaFormato.Contains("Factura") Or RutaFormato.Contains("Cotizacion")) Then params.Add(New ReportParameter("Kilometraje", Vta.Kilometraje.ToString)) End If + 'Imprime los parametros 'Dim ast As New StringBuilder 'For Each par As ReportParameter In params @@ -7550,6 +7598,7 @@ Public Class ClsPaginas End If End If ObjVentas.Dispose() + If Not IsNothing(Vta) Then PdfFactura(Vta) Vta = Nothing @@ -9163,7 +9212,7 @@ Public Class ClsPaginas End If If VentaActual.Fecha < tFechaUltimaFluctuacion Then TCValuacionVenta = TCValuacion 'si tiene fecha de documento, debe de evaluarse para su tc. y no la fecha de la prepóliza - If IIf(Pago.FechaDocumentoRelacionado > MinFecha, Pago.FechaDocumentoRelacionado, Pago.Fecha).ToString.ToDate < tFechaUltimaFluctuacion Then TCValuacionPago = TCValuacion + If IIf(Pago.FechaDocumentoRelacionado > MinFecha, Pago.FechaDocumentoRelacionado, Pago.Fecha).ToString.ToDate < tFechaUltimaFluctuacion AndAlso Pago.CveMonedaPago > 1 Then TCValuacionPago = TCValuacion End If End If If VentaActual.CveMoneda = 1 And Pago.CveMonedaPago <> 1 Then 'factura pesos, pago en dolares @@ -9173,7 +9222,7 @@ Public Class ClsPaginas tImporteVenta = (Pago.ImportePago * TCValuacionVenta).RoundSQL tImportePago = (Pago.ImportePago * TCValuacionPago).RoundSQL ElseIf VentaActual.CveMoneda <> 1 And Pago.CveMonedaPago = 1 Then 'factura dolares, pago en pesos - tImporteVenta = (Pago.ImportePago * TCValuacionVenta).RoundSQL + tImporteVenta = (Pago.ImportePagoVenta * TCValuacionVenta).RoundSQL tImportePago = (Pago.ImportePago * TCValuacionPago).RoundSQL End If If VentaActual.CveMoneda > 1 Then ImporteME = Pago.ImportePagoVenta @@ -9282,7 +9331,7 @@ Public Class ClsPaginas If Pago.TipoPago = "NC" AndAlso Not ErrorMovtos Then ' N O T A D E C R E D I T O Concepto = String.Format("{0} NC:{1}", VentaActual.ClienteNombre, Pago.Referencia) Dim Ret As New ConceptosRetenciones - Dim ConPrePNC As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(6, VentaActual.CveMoneda, True, 2) + Dim ConPrePNC As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(6, Pago.CveMonedaPago, True, 2) If Pago.CveMonedaPago > 1 Then 'Agregamos la Extranjera If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Pago.ImportePago, Pago.ImportePago, ConPrePNC.CveConcepto, Pago.Referencia, Concepto, CveVenta:=Pago.CveVentaAmortizacion, CveVentaAmortizacion:=VentaActual.CveVenta, CveCliente:=VentaActual.CveCliente, CveIE:=Pago.CveIE, ImporteME:=Pago.ImportePago, TipoCambio:=TCValuacionPago, CveSubProyecto:=VentaActual.CveSubProyecto) Then ErrorMovtos = True diff --git a/App_Code/ClsRH.vb b/App_Code/ClsRH.vb index 6fb81455d..806a0d125 100644 --- a/App_Code/ClsRH.vb +++ b/App_Code/ClsRH.vb @@ -2802,7 +2802,10 @@ Public Class ClsRH Retorno = True Catch Ex1 As SqlException If Ex1.Message.Contains("Número: 2627;") Then - Alert("Ya se registró la Asistencia para el empleado.", TipoMensaje.MsgAdvertencia) + Alert("Ya se registró la Asistencia para el empleado.", TipoMensaje.MsgAdvertencia) + ElseIf Ex1.Message.Contains("x50102;") Then + Alert("No se puede editar o agregar la asistencia ya que se encuentra vinculada a un periodo autorizado.", TipoMensaje.MsgAdvertencia) + GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", "Ocurrió un error al editar o agregar la asistencia ", Ex1.ToString, vbCrLf, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())) Else Me.OnError("Ocurrió un error al guardar la Asistencia.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) End If @@ -2830,7 +2833,10 @@ Public Class ClsRH Retorno = True Catch Ex1 As SqlException If Ex1.Message.Contains("Número: 2627;") Then - Alert("Ya se registró la Asistencia para el empleado.", TipoMensaje.MsgAdvertencia) + Alert("Ya se registró la Asistencia para el empleado.", TipoMensaje.MsgAdvertencia) + ElseIf Ex1.Message.Contains("x50102;") Then + Alert("No se puede editar o agregar la asistencia ya que se encuentra vinculada a un periodo autorizado.", TipoMensaje.MsgAdvertencia) + GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", "Ocurrió un error al editar o agregar la asistencia ", Ex1.ToString, vbCrLf, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())) Else Me.OnError("Ocurrió un error al guardar la Asistencia.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) End If @@ -2873,7 +2879,10 @@ Public Class ClsRH Retorno = True Catch Ex1 As SqlException If Ex1.Message.Contains("Número: 2627;") Then - Alert("Ya existe un Registro con el mismo nombre: " & CveAsistencia & ".", TipoMensaje.MsgAdvertencia) + Alert("Ya existe un Registro con el mismo nombre: " & CveAsistencia & ".", TipoMensaje.MsgAdvertencia) + ElseIf Ex1.Message.Contains("x50102;") Then + Alert("No se puede editar o agregar la asistencia ya que se encuentra vinculada a un periodo autorizado.", TipoMensaje.MsgAdvertencia) + GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", "Ocurrió un error al editar o agregar la asistencia ", Ex1.ToString, vbCrLf, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())) Else Me.OnError("Ocurrió un error al Guardar el registro.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) End If @@ -2899,6 +2908,15 @@ Public Class ClsRH Try SqlAdapter.Fill(Data) Retorno = True + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("Ya existe un Registro con el mismo nombre: " & CveAsistencia & ".", TipoMensaje.MsgAdvertencia) + ElseIf Ex1.Message.Contains("x50102;") Then + Alert("No se puede editar o agregar la asistencia ya que se encuentra vinculada a un periodo autorizado.", TipoMensaje.MsgAdvertencia) + GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", "Ocurrió un error al editar o agregar la asistencia ", Ex1.ToString, vbCrLf, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())) + Else + Me.OnError("Ocurrió un error al Guardar el registro.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End If Catch ex As Exception OnError("Ocurrió un error al guardar los cambios.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) End Try @@ -2919,7 +2937,10 @@ Public Class ClsRH Retorno = True Catch Ex1 As SqlException If Ex1.Message.Contains("Número: 547;") Then - Alert("El registro no se pudo eliminar porque está siendo usado.", TipoMensaje.MsgAdvertencia) + Alert("El registro no se pudo eliminar porque está siendo usado.", TipoMensaje.MsgAdvertencia) + ElseIf Ex1.Message.Contains("x50102;") Then + Alert("No se puede editar o agregar la asistencia ya que se encuentra vinculada a un periodo autorizado.", TipoMensaje.MsgAdvertencia) + GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", "Ocurrió un error al editar o agregar la asistencia ", Ex1.ToString, vbCrLf, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())) Else Me.OnError("Ocurrió un error al eliminar el registro.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) End If @@ -2937,6 +2958,13 @@ Public Class ClsRH Try SqlAdapter.Fill(Data) Retorno = True + Catch Ex1 As SqlException + If Ex1.Message.Contains("x50102;") Then + Alert("No se puede editar o agregar la asistencia ya que se encuentra vinculada a un periodo autorizado.", TipoMensaje.MsgAdvertencia) + GuardaLog(String.Format("{0} DESCRIPCIÓN DETALLADA: {1} {2} {3}", "Ocurrió un error al editar o agregar la asistencia ", Ex1.ToString, vbCrLf, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())) + Else + Me.OnError("Ocurrió un error al guardar la Asistencia.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End If Catch ex As Exception Me.OnError("Ocurrió un error al eliminar la asistencia.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) End Try diff --git a/App_Code/ClsTransportes.vb b/App_Code/ClsTransportes.vb index 13189b553..979375c2e 100644 --- a/App_Code/ClsTransportes.vb +++ b/App_Code/ClsTransportes.vb @@ -184,6 +184,7 @@ Public Class ClsTransportes CveMasivo = Data.Rows(0)("CveMasivo").ToString.ToEntero Fecha = Data.Rows(0)("Fecha").ToString.ToDate Ruta = Data.Rows(0)("Ruta").ToString + Me.CveViaje = Data.Rows(0)("CveViaje").ToString.ToEntero End If Retorno = True Catch ex As Exception @@ -273,20 +274,15 @@ Public Class ClsTransportes Return Retorno End Function - Public Function GetViajesPasajeros(CveViaje As Integer, Optional CveViajePasajero As Integer = 0, Optional Estatus As Boolean = False) As Boolean + Public Function GetViajesPasajeros(CveViaje As Integer, Optional CveViajePasajero As Integer = -1, Optional Estatus As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Trans_ViajesPasajerosGet") - If Estatus = True Then - With SqlAdapter.SelectCommand.Parameters - .Add("@CveViaje", SqlDbType.Int).Value = CveViaje - .Add("@Estatus", SqlDbType.Bit).Value = Estatus - End With - Else - With SqlAdapter.SelectCommand.Parameters - .Add("@CveViaje", SqlDbType.Int).Value = CveViaje - End With - End If + With SqlAdapter.SelectCommand.Parameters + .Add("@CveViaje", SqlDbType.Int).Value = CveViaje + .Add("@CveViajePasajero", SqlDbType.Int).Value = CveViajePasajero + .Add("@Estatus", SqlDbType.Int).Value = Estatus + End With Try SqlAdapter.Fill(Data) diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index 5839b9a96..cafaeaf55 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -576,7 +576,7 @@ Public Class ClsVentas Optional AtencionA As String = "", Optional PedidoContrato As String = "", Optional CveFormaPago33 As Integer = -1, Optional CveMetodoPago33 As Integer = -1, Optional CveCliente As Integer = -1, Optional CveClienteSucursal As Integer = -1, Optional OrdenCompra As String = "-1", Optional RetIVA As Decimal = -1, Optional RetISR As Decimal = -1, Optional Kilometraje As Decimal = 0, Optional CveUsoCFDi As Integer = -1, Optional ServicioDomicilio As Boolean = False, Optional CveVendedor As Integer = -1, - Optional RequiereOS As Boolean = False, Optional CveMedico As Integer = -1, Optional CveProcedimiento As Integer = -1) As Boolean + Optional RequiereOS As Boolean = False, Optional CveMedico As Integer = -1, Optional CveProcedimiento As Integer = -1, Optional FechaParaSurtir As DateTime = MinFecha) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Vta_VentasUpdate") @@ -612,6 +612,7 @@ Public Class ClsVentas .Add("@RequiereOS", SqlDbType.Int).Value = RequiereOS .Add("@CveMedico", SqlDbType.Int).Value = CveMedico .Add("@CveProcedimiento", SqlDbType.Int).Value = CveProcedimiento + .Add("@FechaParaSurtir", SqlDbType.DateTime).Value = FechaParaSurtir End With Try @@ -625,7 +626,8 @@ Public Class ClsVentas End Function Public Function UpdateObservacionesVenta(CveVenta As Integer, CveEmpresa As Integer, CveVendedor As Integer, Observaciones As String, FormaPaqueteria As Integer, CorreoNotificaciones As String, ObservacionesAlm As String, - Pedido As String, OrdenCompra As String, FechaPago As String, CveUsoCFDI As Integer, Optional DescripcionVenta As String = "-1", Optional CveMedico As Integer = -1, Optional CveProcedimiento As Integer = -1) As Boolean + Pedido As String, OrdenCompra As String, FechaPago As String, CveUsoCFDI As Integer, Optional DescripcionVenta As String = "-1", Optional CveMedico As Integer = -1, Optional CveProcedimiento As Integer = -1, + Optional FechaParaSurtir As DateTime = MinFecha) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Vta_VentasObservacionesUpdate") With SqlAdapter.SelectCommand.Parameters @@ -643,8 +645,42 @@ Public Class ClsVentas .Add("@DescripcionVenta", SqlDbType.VarChar).Value = DescripcionVenta .Add("@CveMedico", SqlDbType.Int).Value = CveMedico .Add("@CveProcedimiento", SqlDbType.Int).Value = CveProcedimiento + .Add("@FechaParaSurtir", SqlDbType.DateTime).Value = FechaParaSurtir + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar las observaciones de la venta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + Public Function UpdateEstatusOCRelacionada(CveVenta As Integer, CveEstatusOrdenServicio As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_VentasOSEstatusUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveVenta", SqlDbType.Int).Value = CveVenta + .Add("@CveEstatusOrdenServicio", SqlDbType.Int).Value = CveEstatusOrdenServicio + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar las observaciones de la venta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + + Public Function UpdateFechaOSVenta(CveVenta As Integer, FechaCita As DateTime, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_VentasOSFechaCitaUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveVenta", SqlDbType.Int).Value = CveVenta + .Add("@FechaCita", SqlDbType.DateTime).Value = FechaCita + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa End With Try SqlAdapter.Fill(Data) @@ -1383,7 +1419,7 @@ Public Class ClsVentas Optional CveContratoDetalle As Integer = -1, Optional PorcentajeIVA As Decimal = 0, Optional IEPS As Decimal = -1, Optional PorcentajeIEPS As Double = 0, Optional CvePromocionDetalle As Integer = -1, Optional CveMovimientoDetallePedido As Integer = -1, Optional ImporteRetIVA As Decimal = 0, Optional PorcentajeRetIVA As Double = 0, Optional ImporteRetISR As Decimal = 0, Optional PorcentajeRetISR As Decimal = 0, Optional CuentaPredial As String = "", Optional CvePrecioLista As Integer = -1, Optional CveActivoFijo As Integer = -1, - Optional NumTurnos As Decimal = 0D, Optional EstatusAlmacen As Integer = 0) As Boolean + Optional NumTurnos As Decimal = 0D, Optional EstatusAlmacen As Integer = 0, Optional CantidadConversion As Decimal = 0) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_VentasDetalleAdd") @@ -1417,6 +1453,7 @@ Public Class ClsVentas .Add("@CveActivoFijo", SqlDbType.Int).Value = CveActivoFijo .Add("@NumTurnos", SqlDbType.Decimal).Value = NumTurnos .Add("@EstatusAlmacen", SqlDbType.Int).Value = EstatusAlmacen + .Add("@CantidadConversion", SqlDbType.Decimal).Value = CantidadConversion End With Try @@ -4016,6 +4053,7 @@ Public Class ClsVentas .Add("@TipoSaldo", SqlDbType.Int).Value = TipoSaldo .Add("@EsquemaNuevo", SqlDbType.Bit).Value = EsquemaNuevo End With + SqlAdapter.SelectCommand.CommandTimeout = 0 Try SqlAdapter.Fill(Data) Retorno = True diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb index df92c7193..32bb6cb46 100644 --- a/App_Code/Modelos.vb +++ b/App_Code/Modelos.vb @@ -1788,7 +1788,7 @@ Namespace Modelos Dim AplicaComercioExteriorSubProyecto As Boolean = True - Timbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto = False + Timbre.Complementos.ComercioExterior.AplicaComercioExteriorSubProyecto = False Me.FemsaFactura = New Modelos.FemsaFactura Me.Timbre = Timbre @@ -6221,6 +6221,17 @@ Namespace Modelos End If End If + 'CANCELAR ORDEN DE SERVICIO + If Not ErrorCancelar Then + If ObjFactura.CveMedico > 0 Then + Dim CveEstatusCancelacion As Integer = ClsPaginas.GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 5", "Orden ASC").ToString().ToEntero() + If Not ObjVentas.UpdateEstatusOCRelacionada(ObjFactura.CveVenta, CveEstatusCancelacion, ObjFactura.CveEmpresa) Then + ErrorCancelar = True + MensajeError = "Ocurrió un error al cancelar la orden de servicio" + End If + End If + End If + End If 'MARCA LA VENTA PARA REALIZAR LA DEVOLUCION POSTERIORMENTE diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb index d93e09b99..8012321c5 100644 --- a/App_Code/Timbrado.vb +++ b/App_Code/Timbrado.vb @@ -1361,127 +1361,127 @@ Public Class Timbrado #End Region #Region " Comercio Exterior" - If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto Then - If ObjCFDITimbre.Complementos.ComercioExterior11 IsNot Nothing Then + If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior.AplicaComercioExteriorSubProyecto Then + If ObjCFDITimbre.Complementos.ComercioExterior IsNot Nothing Then 'DATOS GENERALES Dim ComExt As New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExterior() ComExt.Version = "1.1" ComExt.MotivoTrasladoSpecified = True - ComExt.MotivoTraslado = ObjCFDITimbre.Complementos.ComercioExterior11.MotivoTraslado - ComExt.TipoOperacion = ObjCFDITimbre.Complementos.ComercioExterior11.TipoOperacion + ComExt.MotivoTraslado = ObjCFDITimbre.Complementos.ComercioExterior.MotivoTraslado + ComExt.TipoOperacion = ObjCFDITimbre.Complementos.ComercioExterior.TipoOperacion ComExt.ClaveDePedimentoSpecified = True - ComExt.ClaveDePedimento = ObjCFDITimbre.Complementos.ComercioExterior11.ClavedePedimento + ComExt.ClaveDePedimento = ObjCFDITimbre.Complementos.ComercioExterior.ClavedePedimento ComExt.CertificadoOrigenSpecified = True - ComExt.CertificadoOrigen = ObjCFDITimbre.Complementos.ComercioExterior11.CertificadoOrigen.ToEntero - If ObjCFDITimbre.Complementos.ComercioExterior11.NumCertificadoOrigen <> "" Then - ComExt.NumCertificadoOrigen = ObjCFDITimbre.Complementos.ComercioExterior11.NumCertificadoOrigen + ComExt.CertificadoOrigen = ObjCFDITimbre.Complementos.ComercioExterior.CertificadoOrigen.ToEntero + If ObjCFDITimbre.Complementos.ComercioExterior.NumCertificadoOrigen <> "" Then + ComExt.NumCertificadoOrigen = ObjCFDITimbre.Complementos.ComercioExterior.NumCertificadoOrigen End If - If ObjCFDITimbre.Complementos.ComercioExterior11.NumeroExportadorConfiable <> "" Then - ComExt.NumeroExportadorConfiable = ObjCFDITimbre.Complementos.ComercioExterior11.NumeroExportadorConfiable + If ObjCFDITimbre.Complementos.ComercioExterior.NumeroExportadorConfiable <> "" Then + ComExt.NumeroExportadorConfiable = ObjCFDITimbre.Complementos.ComercioExterior.NumeroExportadorConfiable End If ComExt.IncotermSpecified = True - ComExt.Incoterm = ObjCFDITimbre.Complementos.ComercioExterior11.Incoterm + ComExt.Incoterm = ObjCFDITimbre.Complementos.ComercioExterior.Incoterm ComExt.SubdivisionSpecified = True - ComExt.Subdivision = ObjCFDITimbre.Complementos.ComercioExterior11.Subdivision.ToEntero - If ObjCFDITimbre.Complementos.ComercioExterior11.Observaciones <> "" Then - ComExt.Observaciones = ObjCFDITimbre.Complementos.ComercioExterior11.Observaciones + ComExt.Subdivision = ObjCFDITimbre.Complementos.ComercioExterior.Subdivision.ToEntero + If ObjCFDITimbre.Complementos.ComercioExterior.Observaciones <> "" Then + ComExt.Observaciones = ObjCFDITimbre.Complementos.ComercioExterior.Observaciones End If ComExt.TipoCambioUSDSpecified = True - ComExt.TipoCambioUSD = ObjCFDITimbre.Complementos.ComercioExterior11.TipoCambioUSD + ComExt.TipoCambioUSD = ObjCFDITimbre.Complementos.ComercioExterior.TipoCambioUSD ComExt.TotalUSDSpecified = True - ComExt.TotalUSD = ObjCFDITimbre.Complementos.ComercioExterior11.TotalUSD + ComExt.TotalUSD = ObjCFDITimbre.Complementos.ComercioExterior.TotalUSD 'EMISOR ComExt.Emisor = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorEmisor() If EmisorRFC.Length < 12 Then - ComExt.Emisor.Curp = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CURP + ComExt.Emisor.Curp = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CURP End If ComExt.Emisor.Domicilio = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorEmisorDomicilio - ComExt.Emisor.Domicilio.Calle = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Calle - ComExt.Emisor.Domicilio.CodigoPostal = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CP + ComExt.Emisor.Domicilio.Calle = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Calle + ComExt.Emisor.Domicilio.CodigoPostal = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CP ComExt.Emisor.Domicilio.ColoniaSpecified = True - ComExt.Emisor.Domicilio.Colonia = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Colonia - ComExt.Emisor.Domicilio.Estado = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Estado - If ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Localidad <> "" Then + ComExt.Emisor.Domicilio.Colonia = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Colonia + ComExt.Emisor.Domicilio.Estado = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Estado + If ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Localidad <> "" Then ComExt.Emisor.Domicilio.LocalidadSpecified = False - ComExt.Emisor.Domicilio.Localidad = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Localidad + ComExt.Emisor.Domicilio.Localidad = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Localidad End If ComExt.Emisor.Domicilio.MunicipioSpecified = True - ComExt.Emisor.Domicilio.Municipio = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Municipio - If ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroExterior <> "" Then ComExt.Emisor.Domicilio.NumeroExterior = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroExterior - If ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroInterior <> "" Then ComExt.Emisor.Domicilio.NumeroInterior = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroInterior - ComExt.Emisor.Domicilio.Pais = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Pais - If ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Referencia <> "" Then - ComExt.Emisor.Domicilio.Referencia = ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Referencia + ComExt.Emisor.Domicilio.Municipio = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Municipio + If ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroExterior <> "" Then ComExt.Emisor.Domicilio.NumeroExterior = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroExterior + If ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroInterior <> "" Then ComExt.Emisor.Domicilio.NumeroInterior = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroInterior + ComExt.Emisor.Domicilio.Pais = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Pais + If ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Referencia <> "" Then + ComExt.Emisor.Domicilio.Referencia = ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Referencia End If 'RECEPTOR ComExt.Receptor = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorReceptor - If ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib <> "" Then - ComExt.Receptor.NumRegIdTrib = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib + If ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumRegIdTrib <> "" Then + ComExt.Receptor.NumRegIdTrib = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumRegIdTrib End If ComExt.Receptor.Domicilio = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorReceptorDomicilio - ComExt.Receptor.Domicilio.Calle = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Calle - ComExt.Receptor.Domicilio.CodigoPostal = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.CP - If ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Colonia <> "" Then - ComExt.Receptor.Domicilio.Colonia = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Colonia + ComExt.Receptor.Domicilio.Calle = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Calle + ComExt.Receptor.Domicilio.CodigoPostal = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.CP + If ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Colonia <> "" Then + ComExt.Receptor.Domicilio.Colonia = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Colonia End If - ComExt.Receptor.Domicilio.Estado = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Estado - If ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Localidad <> "" Then - ComExt.Receptor.Domicilio.Localidad = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Localidad + ComExt.Receptor.Domicilio.Estado = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Estado + If ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Localidad <> "" Then + ComExt.Receptor.Domicilio.Localidad = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Localidad End If - If ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Municipio <> "" Then - ComExt.Receptor.Domicilio.Municipio = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Municipio + If ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Municipio <> "" Then + ComExt.Receptor.Domicilio.Municipio = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Municipio End If - If ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroExterior <> "" Then - ComExt.Receptor.Domicilio.NumeroExterior = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroExterior + If ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroExterior <> "" Then + ComExt.Receptor.Domicilio.NumeroExterior = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroExterior End If - If ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroInterior <> "" Then - ComExt.Receptor.Domicilio.NumeroInterior = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroInterior + If ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroInterior <> "" Then + ComExt.Receptor.Domicilio.NumeroInterior = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroInterior End If - ComExt.Receptor.Domicilio.Pais = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Pais - If ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Referencia <> "" Then - ComExt.Receptor.Domicilio.Referencia = ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Referencia + ComExt.Receptor.Domicilio.Pais = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Pais + If ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Referencia <> "" Then + ComExt.Receptor.Domicilio.Referencia = ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Referencia End If 'DESTINATARIO ComExt.Destinatario = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorDestinatario(0) {} ComExt.Destinatario(0) = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorDestinatario() - ComExt.Destinatario(0).Nombre = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Nombre - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib <> "" Then - ComExt.Destinatario(0).NumRegIdTrib = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib + ComExt.Destinatario(0).Nombre = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Nombre + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumRegIdTrib <> "" Then + ComExt.Destinatario(0).NumRegIdTrib = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumRegIdTrib End If ComExt.Destinatario(0).Domicilio = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorDestinatarioDomicilio(0) {} ComExt.Destinatario(0).Domicilio(0) = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorDestinatarioDomicilio() - ComExt.Destinatario(0).Domicilio(0).Calle = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Calle - ComExt.Destinatario(0).Domicilio(0).CodigoPostal = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.CP - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Colonia <> "" Then - ComExt.Destinatario(0).Domicilio(0).Colonia = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Colonia + ComExt.Destinatario(0).Domicilio(0).Calle = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Calle + ComExt.Destinatario(0).Domicilio(0).CodigoPostal = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.CP + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Colonia <> "" Then + ComExt.Destinatario(0).Domicilio(0).Colonia = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Colonia End If - ComExt.Destinatario(0).Domicilio(0).Estado = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Estado - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Localidad <> "" Then - ComExt.Destinatario(0).Domicilio(0).Localidad = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Localidad + ComExt.Destinatario(0).Domicilio(0).Estado = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Estado + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Localidad <> "" Then + ComExt.Destinatario(0).Domicilio(0).Localidad = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Localidad End If - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Municipio <> "" Then - ComExt.Destinatario(0).Domicilio(0).Municipio = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Municipio + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Municipio <> "" Then + ComExt.Destinatario(0).Domicilio(0).Municipio = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Municipio End If - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior <> "" Then - ComExt.Destinatario(0).Domicilio(0).NumeroExterior = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumeroExterior <> "" Then + ComExt.Destinatario(0).Domicilio(0).NumeroExterior = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumeroExterior End If - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior <> "" Then - ComExt.Destinatario(0).Domicilio(0).NumeroInterior = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumeroInterior <> "" Then + ComExt.Destinatario(0).Domicilio(0).NumeroInterior = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumeroInterior End If - ComExt.Destinatario(0).Domicilio(0).Pais = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Pais - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Referencia <> "" Then - ComExt.Destinatario(0).Domicilio(0).Referencia = ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Referencia + ComExt.Destinatario(0).Domicilio(0).Pais = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Pais + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Referencia <> "" Then + ComExt.Destinatario(0).Domicilio(0).Referencia = ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Referencia End If 'MERCANCIAS - If ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias.Count > 0 Then - ComExt.Mercancias = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorMercancia(ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias.Count - 1) {} + If ObjCFDITimbre.Complementos.ComercioExterior.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior.Mercancias.Count > 0 Then + ComExt.Mercancias = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorMercancia(ObjCFDITimbre.Complementos.ComercioExterior.Mercancias.Count - 1) {} Dim i As Integer - For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias + For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior.Mercancias ComExt.Mercancias(i) = New Profact.TimbraCFDI33.Complementos.ComercioExterior11.ComercioExteriorMercancia() ComExt.Mercancias(i).NoIdentificacion = concep.NoIdentificacion ComExt.Mercancias(i).FraccionArancelariaSpecified = True @@ -1531,7 +1531,6 @@ Public Class Timbrado If ObjCFDITimbre.Comprobante.TipoComprobante = "P" Then - If ObjCFDITimbre.ComplementoPagos20.ComplementoPagos.Count > 0 Then Dim Totales As New Profact.TimbraCFDI40.Complementos.Pagos20.PagosTotales() 'Totales Generales @@ -2461,68 +2460,66 @@ Public Class Timbrado #Region "Comercio Exterior" - If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto Then - If ObjCFDITimbre.Complementos.ComercioExterior11 IsNot Nothing Then + If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior.AplicaComercioExteriorSubProyecto Then + If ObjCFDITimbre.Complementos.ComercioExterior IsNot Nothing Then 'DATOS GENERALES - cfdi.ComercioExterior11(ObjCFDITimbre.Complementos.ComercioExterior11.MotivoTraslado, - ObjCFDITimbre.Complementos.ComercioExterior11.TipoOperacion, - ObjCFDITimbre.Complementos.ComercioExterior11.ClavedePedimento, - ObjCFDITimbre.Complementos.ComercioExterior11.CertificadoOrigen, - ObjCFDITimbre.Complementos.ComercioExterior11.NumCertificadoOrigen, - ObjCFDITimbre.Complementos.ComercioExterior11.NumeroExportadorConfiable, - ObjCFDITimbre.Complementos.ComercioExterior11.Incoterm, - ObjCFDITimbre.Complementos.ComercioExterior11.Subdivision, - ObjCFDITimbre.Complementos.ComercioExterior11.Observaciones, - ObjCFDITimbre.Complementos.ComercioExterior11.TipoCambioUSD, - ObjCFDITimbre.Complementos.ComercioExterior11.TotalUSD) + cfdi.ComercioExterior20(ObjCFDITimbre.Complementos.ComercioExterior.MotivoTraslado, + ObjCFDITimbre.Complementos.ComercioExterior.ClavedePedimento, + ObjCFDITimbre.Complementos.ComercioExterior.CertificadoOrigen, + ObjCFDITimbre.Complementos.ComercioExterior.NumCertificadoOrigen, + ObjCFDITimbre.Complementos.ComercioExterior.NumeroExportadorConfiable, + ObjCFDITimbre.Complementos.ComercioExterior.Incoterm, + ObjCFDITimbre.Complementos.ComercioExterior.Observaciones, + ObjCFDITimbre.Complementos.ComercioExterior.TipoCambioUSD, + ObjCFDITimbre.Complementos.ComercioExterior.TotalUSD) 'EMISOR - cfdi.ComercioExterior11Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CURP)) - cfdi.ComercioExterior11Domicilio(ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Calle, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroExterior, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroInterior, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Colonia, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Localidad, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Referencia, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Municipio, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Estado, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Pais, - ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CP) + cfdi.ComercioExterior20Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CURP)) + cfdi.ComercioExterior20Domicilio(ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Calle, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroExterior, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroInterior, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Colonia, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Localidad, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Referencia, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Municipio, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Estado, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Pais, + ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CP) 'RECEPTOR - cfdi.ComercioExterior11Receptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib) - cfdi.ComercioExterior11DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Calle, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroExterior, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroInterior, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Colonia, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Localidad, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Referencia, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Municipio, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Estado, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Pais, - ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.CP) + cfdi.ComercioExterior20Receptor(ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumRegIdTrib) + cfdi.ComercioExterior20DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Calle, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroExterior, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroInterior, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Colonia, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Localidad, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Referencia, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Municipio, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Estado, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Pais, + ObjCFDITimbre.Complementos.ComercioExterior.Receptor.CP) - If ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario IsNot Nothing Then - cfdi.ComercioExterior11Destinatario(ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Nombre, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Calle, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Colonia, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Localidad, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Referencia, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Municipio, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Estado, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Pais, - ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.CP) + If ObjCFDITimbre.Complementos.ComercioExterior.Destinatario IsNot Nothing Then + cfdi.ComercioExterior20Destinatario(ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumRegIdTrib, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Nombre, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Calle, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumeroExterior, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.NumeroInterior, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Colonia, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Localidad, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Referencia, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Municipio, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Estado, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.Pais, + ObjCFDITimbre.Complementos.ComercioExterior.Destinatario.CP) End If 'MERCANCIAS - If ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias.Count > 0 Then - For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias - cfdi.ComercioExterior11Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares) + If ObjCFDITimbre.Complementos.ComercioExterior.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior.Mercancias.Count > 0 Then + For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior.Mercancias + cfdi.ComercioExterior20Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares) If concep.DescripcionesEspecificas.Marca <> "" Then - cfdi.ComercioExterior11MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca, + cfdi.ComercioExterior20MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca, concep.DescripcionesEspecificas.Modelo, concep.DescripcionesEspecificas.SubModelo, concep.DescripcionesEspecificas.NumeroSerie) @@ -2545,140 +2542,144 @@ Public Class Timbrado #Region "C O M P L E M E N T O C A R T A P O R T E" + 'If UsuarioActual.CveEmpresa = 13 Then + ' If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then - 'If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then + ' Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte - ' Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte + ' ''DATOS GENERALES + ' cfdi.CartaPorte(Carta.TranspInternac, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida) + ' 'cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroITSMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino) - ' ''DATOS GENERALES - ' cfdi.CartaPorte(Carta.TranspInternac, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida) - ' 'cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroITSMO, 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.CartaPorteUbicacion(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.CartaPorteDomicilio(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 - - ' 'MERCANCIAS - ' If Carta.Mercancias IsNot Nothing Then - ' cfdi.CartaPorteMercancias(Carta.Mercancias.PesoBrutoTotal, Carta.Mercancias.UnidadPeso, Carta.Mercancias.PesoNetoTotal, Carta.Mercancias.NumTotalMercancias, Carta.Mercancias.CargoporTasacion) - ' 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.CartaPorteMercancia(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.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt) - ' For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta - ' cfdi.CartaPorteCantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) - ' Next + ' 'UBICACIONES + ' If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then + ' For Each ubica As CFDICartaPorteUbicacion In Carta.Ubicaciones + ' 'origen + ' cfdi.CartaPorteUbicacion(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.CartaPorteDomicilio(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 - ' If Carta.FiguraTransporte.AutoTransporte IsNot Nothing Then - - ' cfdi.CartaPorteAutotransporte(Carta.FiguraTransporte.AutoTransporte.PermisoSCT, Carta.FiguraTransporte.AutoTransporte.NumPermisoSCT) - - ' cfdi.CartaPorteIdentificacionVehicular(Carta.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM, Carta.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM) - - ' cfdi.CartaPorteSeguros(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.CartaPorteRemolque(concep.SubTipoRemolque, concep.Placa) + ' 'MERCANCIAS + ' If Carta.Mercancias IsNot Nothing Then + ' cfdi.CartaPorteMercancias(Carta.Mercancias.PesoBrutoTotal, Carta.Mercancias.UnidadPeso, Carta.Mercancias.PesoNetoTotal, Carta.Mercancias.NumTotalMercancias, Carta.Mercancias.CargoporTasacion) + ' 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.CartaPorteMercancia(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.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt) + ' For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta + ' cfdi.CartaPorteCantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) + ' Next ' Next - ' End If ' End If + ' ' + ' If Carta.FiguraTransporte IsNot Nothing Then + + ' If Carta.FiguraTransporte.AutoTransporte IsNot Nothing Then + + ' cfdi.CartaPorteAutotransporte(Carta.FiguraTransporte.AutoTransporte.PermisoSCT, Carta.FiguraTransporte.AutoTransporte.NumPermisoSCT) + + ' cfdi.CartaPorteIdentificacionVehicular(Carta.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM, Carta.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM) + + ' cfdi.CartaPorteSeguros(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.CartaPorteRemolque(concep.SubTipoRemolque, concep.Placa) + ' Next - ' If Carta.FiguraTransporte.Operadores IsNot Nothing AndAlso Carta.FiguraTransporte.Operadores.Count > 0 Then - ' For Each concep As CFDICartaPorteOperador In Carta.FiguraTransporte.Operadores - ' cfdi.CartaPorteTiposFigura(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.CartaPortePartesTransporte("PT01") - ' cfdi.CartaPortePartesTransporteDomicilio(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 + + ' If Carta.FiguraTransporte.Operadores IsNot Nothing AndAlso Carta.FiguraTransporte.Operadores.Count > 0 Then + ' For Each concep As CFDICartaPorteOperador In Carta.FiguraTransporte.Operadores + ' cfdi.CartaPorteTiposFigura(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.CartaPortePartesTransporte("PT01") + ' cfdi.CartaPortePartesTransporteDomicilio(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 ' End If + 'Else - 'End If If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then - Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte + Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte - ''DATOS GENERALES - cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroISTMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino) + ''DATOS GENERALES + cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, "", 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 - - '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) - For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta - cfdi.CartaPorte30CantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) - Next + '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 - 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) - - 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) + '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) + For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta + cfdi.CartaPorte30CantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) + Next Next End If End If + ' + If Carta.FiguraTransporte IsNot Nothing Then - 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) + 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) + + 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 - Next + 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 End If End If - End If + 'End If + #End Region diff --git a/Ashx/SIGDesc.ashx b/Ashx/SIGDesc.ashx index 43f9264fe..e9b8053df 100644 --- a/Ashx/SIGDesc.ashx +++ b/Ashx/SIGDesc.ashx @@ -6,6 +6,7 @@ Imports System.IO Imports Extensiones Imports Microsoft.Reporting.WebForms Imports Newtonsoft.Json +Imports System.Net.Http Public Class SIGDesc : Implements IHttpHandler, IRequiresSessionState @@ -35,11 +36,47 @@ Public Class SIGDesc : Implements IHttpHandler, IRequiresSessionState context.Response.Flush() context.Response.WriteFile(FileInfo.FullName) context.Response.End() + Else + DescargarPDFVentaPeticion(context, ObjFactura) End If FileInfo = Nothing End If End Sub + + Private Sub DescargarPDFVentaPeticion(ByVal context As HttpContext, ObjFactura As Modelos.Factura) + Dim usuario As Usuario = UsuarioActual(context) + If Not IsNothing(usuario) Then + Dim strURLHOST = String.Format("{0}://{1}:{2}", HttpContext.Current.Request.Url.Scheme, HttpContext.Current.Request.Url.Host, HttpContext.Current.Request.Url.Port) + + Dim Url As New Uri(String.Format("{0}/Compras/PopUpVerFactura.aspx?P={1}", strURLHOST, Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1®ENERAR={1}", ObjFactura.CveVenta, "1")))) + Dim File As Byte() = Nothing + Try + Using httpClient As New HttpClient() + httpClient.Timeout = New TimeSpan(0, 1, 0) + Using request As New HttpRequestMessage(HttpMethod.Get, Url) + request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CveUsuario={2}", ObjFactura.CveEmpresa, DateTime.UtcNow.Ticks, ObjFactura.CveUsuario))) + 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 + + context.Response.Buffer = True + context.Response.Clear() + context.Response.ContentType = "application/pdf" + context.Response.ClearHeaders() + context.Response.AddHeader("content-disposition", String.Format("{0}; filename=""{1}.{2}""", "attachment", ObjFactura.SerieFolio, "pdf")) + context.Response.BinaryWrite(File) ' create the file + context.Response.End() + End If + End Sub + Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable Get Return False diff --git a/Bancos/ConciliacionesBancarias.aspx.vb b/Bancos/ConciliacionesBancarias.aspx.vb index 0d92fcc16..3b372de36 100644 --- a/Bancos/ConciliacionesBancarias.aspx.vb +++ b/Bancos/ConciliacionesBancarias.aspx.vb @@ -223,6 +223,7 @@ Partial Class Bancos_ConciliacionesBancariasaspx Protected Sub LnkConciliarManual_Click(sender As Object, e As EventArgs) ModalidadConciliacion = "M" + If DdlCriterio.Items.FindByValue("2") Is Nothing Then DdlCriterio.Items.Add(New ListItem("Importe - Tipo Movimiento", "2")) DdlCriterio.SelectedIndex = 0 DivCriterio.Visible = True TxtFechaAplicado.Text = txtFechaI.Text @@ -323,7 +324,7 @@ Partial Class Bancos_ConciliacionesBancariasaspx End Sub Protected Sub LnlConciliarAutomaticamente_Click(sender As Object, e As EventArgs) ModalidadConciliacion = "A" - DdlCriterio.SelectedIndex = 0 + DdlCriterio.Items.Remove(DdlCriterio.Items.FindByValue("2")) DivCriterio.Visible = True TxtFechaAplicado.Text = txtFechaI.Text UpModalCriterio.Update() diff --git a/Bin/GoCfdi.dll b/Bin/GoCfdi.dll index eaa213d53..37c940d76 100644 Binary files a/Bin/GoCfdi.dll and b/Bin/GoCfdi.dll differ diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index a5c3a12c6..01ef2962d 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -2,11 +2,13 @@ Option Explicit On Imports System.Data +Imports System.Data.Entity.Core.Metadata.Edm Imports System.IO Imports System.Xml Imports Extensiones Imports iText.Barcodes.Dmcode Imports Microsoft.Reporting.WebForms +Imports Modelos Partial Class PopUpVerFactura @@ -3361,13 +3363,24 @@ Partial Class PopUpVerFactura Dim CveCliente As Integer = 0 Dim CveDireccionEnvio As Integer = 0 Dim ClienteNombre As String = "", EnvioContacto As String = "", EnvioDireccion As String = "", EnvioColonia As String = "", EnvioCiudad As String = "", EnvioEstado As String = "", ClientePais As String = "", EnvioCP As String = "", Contrato As String = "", - Paqueteria As String = "", NumContrato As String = "", Guia As String = "" + Paqueteria As String = "", NumContrato As String = "", Guia As String = "", Documentacion As String = "" Dim CveContrato As Integer = 0 If DtMovimientos IsNot Nothing AndAlso DtMovimientos.Rows.Count > 0 Then CveContrato = DtMovimientos.FiltroPrimeroValor("CveContrato").ToEntero End If + + If UsuarioActual.Empresa.Funcionalidad(578).ToEntero = 1 Then + CveCliente = DtMovimientos.FiltroPrimeroValor("CveCliente").ToEntero + DTCliente = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros($"CveCliente = {CveCliente}") + params.Add(New ReportParameter("Documentacion", DTCliente.FiltroPrimeroValor("Documentacion"))) + + If CveCliente = 819998 Then + RutaFormato = "{0}Formatos\TrasladoAngeles.rdlc" + End If + End If + If CveContrato > 0 Then Contrato = GlobalDTContratos(UsuarioActual.CveEmpresa).FiltroPrimeroValor("DescripcionContrato", $"CveContrato={CveContrato} AND CveEmpresa = {UsuarioActual.CveEmpresa}") NumContrato = GlobalDTContratos(UsuarioActual.CveEmpresa).FiltroPrimeroValor("NumeroContrato", $"CveContrato={CveContrato} AND CveEmpresa = {UsuarioActual.CveEmpresa}") @@ -3387,6 +3400,8 @@ Partial Class PopUpVerFactura EnvioCiudad = ObjVentas.DtResultados.Rows(0)("EnvioCiudad").ToString EnvioCP = ObjVentas.DtResultados.Rows(0)("EnvioCP").ToString EnvioEstado = ObjVentas.DtResultados.Rows(0)("EnvioEstado").ToString + + Else ClienteNombre = DTCliente.FiltroPrimeroValor("Nombre") EnvioContacto = DTCliente.FiltroPrimeroValor("Contacto") @@ -3401,6 +3416,8 @@ Partial Class PopUpVerFactura ObjVentas.Dispose() End If + + params.Add(New ReportParameter("ClienteNombre", ClienteNombre)) params.Add(New ReportParameter("EnvioContacto", EnvioContacto)) params.Add(New ReportParameter("EnvioDireccion", EnvioDireccion)) @@ -3524,6 +3541,16 @@ Partial Class PopUpVerFactura params.Add(New ReportParameter("NombreAccion", Recibio)) 'TxtResponsable.Text params.Add(New ReportParameter("Accion", "RECIBIÓ")) + If UsuarioActual.Empresa.Funcionalidad(578).ToEntero = 1 Then + Dim CveCliente = DtMovimientos.FiltroPrimeroValor("CveCliente").ToEntero + Dim DTCliente = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros($"CveCliente = {CveCliente}") + params.Add(New ReportParameter("Documentacion", DTCliente.FiltroPrimeroValor("Documentacion"))) + + 'If CveCliente = 819998 Then + ' RutaFormato = "{0}Formatos\TrasladoAngeles.rdlc" + 'End If + End If + If Archivo.Exists Then params.Add(New ReportParameter("CveAlmacen", DtMovimientos(0)("CveTipoAlmacen").ToString)) params.Add(New ReportParameter("CveTipoAlmacenDestino", DtMovimientos(0)("CveTipoAlmacenDestino").ToString)) diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb index fc7955bd4..99bdde358 100644 --- a/Compras/eFacturas.aspx.vb +++ b/Compras/eFacturas.aspx.vb @@ -3371,12 +3371,9 @@ Partial Class Compras_eFacturas XMLNodosPagosModalCount = XMLNodosPagosModalCount + 1 Next - Next Next - - Dim UUIDDuplicadosEnu = From row In DTDocumentosRelacionados.AsEnumerable() Let IdDocumento = row.Field(Of String)("IdDocumento") Group row By IdDocumento Into IdDocumentos = Group @@ -3392,8 +3389,6 @@ Partial Class Compras_eFacturas Next Next - - MontoPago = Monto Dim NodosPagosString As String = Regex.Replace(nodePagos2.InnerXml, $"{Prefijo}:", "", RegexOptions.IgnoreCase) @@ -3428,10 +3423,6 @@ Partial Class Compras_eFacturas Catch ex As Exception dRow2("CvePrePolizaDetalle") = 0 End Try - - - - End If Next Next @@ -3989,9 +3980,9 @@ Partial Class Compras_eFacturas Private Sub GVPDocumentosRelacionadosPagos_RowCreated(sender As Object, e As GridViewRowEventArgs) Handles GVPDocumentosRelacionadosPagos.RowCreated If e.Row.RowType = DataControlRowType.Header Then - Dim HeaderGrid = DirectCast(sender, GridView) - Dim HeaderGridRow = New GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Insert) - Dim HeaderCell = New TableCell + Dim HeaderGrid As GridView = DirectCast(sender, GridView) + Dim HeaderGridRow As New GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Insert) + Dim HeaderCell As New TableCell HeaderCell.Text = "Documentos Relacionados" HeaderCell.ColumnSpan = 9 @@ -5507,7 +5498,7 @@ Public Class Compra2 XMLCargaExistosa = True Catch ex As Exception Try - Dim oReader = New StreamReader(XmlFuenteRuta, Encoding.GetEncoding("ISO-8859-1")) + Dim oReader As New StreamReader(XmlFuenteRuta, Encoding.GetEncoding("ISO-8859-1")) XMLDoc.Load(oReader) oReader.Dispose() XMLCargaExistosa = True @@ -5734,10 +5725,10 @@ Public Class Compra2 #Region "DETALLES" Dim ObjeFacturas As New ClsCompras - Dim AjustaUltimoConcepto = False + Dim AjustaUltimoConcepto As Boolean = False Dim nodeconceptos As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:Conceptos", Prefijo), namespaces) - Dim XML = Replace(nodeconceptos.OuterXml, "7.59855cm 0.06623cm 0.82958cm - 20.31433cm + 20.31432cm 4 + + true + true + + + + + Carta Porte 3.0 + + + + + + + Textbox3 + 2.27425cm + 16.42665cm + 0.5cm + 1.52986in + 19 + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + 7.00495in @@ -203,66 +215,6 @@ - - - - true - - - - - U.M. - - - - - - - - - - - - - - - - Textbox7 - - - - Black - - 1pt - - - Black - - 1pt - - #9cc3e5 - 2pt - 2pt - 2pt - 2pt - - - - @@ -271,7 +223,7 @@ - Descripción + Referencia - Textbox12 + Textbox7 + + + + Black + + 1pt + + + Black + + 1pt + + #9cc3e5 + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Importe + + + + + + + Textbox15 @@ -490,14 +488,20 @@ - =Fields!Codigo.Value + =Fields!PS.Value + + + + @@ -514,39 +518,6 @@ - - - - true - true - - - - - =Fields!UnidadMedida.Value - - - - - - - UnidadMedida - - - Bottom - 2pt - 2pt - =IIf(rownumber(nothing) = 1, "2pt", "0pt") - - - - @@ -557,14 +528,14 @@ - =Fields!PS.Value + =Fields!Codigo.Value @@ -650,16 +621,123 @@ - + true true - =Fields!Observaciones.Value + =Fields!PUVenta.Value + + + + + + PUVenta + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + =Fields!SubTotalVenta.Value + + + + + + + SubTotalVenta + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + 0.33542cm + + + + + true + true + + + + + + + + + + + + Textbox19 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + @@ -668,7 +746,649 @@ - Observaciones + Textbox20 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox23 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox40 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox41 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + Sub Total + + + + + + + Textbox42 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + =Sum(Fields!SubTotalVenta.Value, "DsInventarios") + + + + + + + Textbox43 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + 0.33542cm + + + + + true + true + + + + + + + + + + + + Textbox44 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox45 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox46 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox47 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox48 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + I.V.A. + + + + + + + Textbox49 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + =Sum(Fields!IVAVenta.Value, "DsInventarios") + + + + + + + Textbox50 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + 0.33542cm + + + + + true + true + + + + + + + + + + + + Textbox51 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox52 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox53 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox54 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + + + + + + + + Textbox55 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + Importe Total + + + + + + + Textbox56 + + + Bottom + 2pt + 2pt + =IIf(rownumber(nothing) = 1, "2pt", "0pt") + + + + + + + + true + true + + + + + = Sum(Fields!SubTotalVenta.Value, "DsInventarios") + Sum(Fields!IVAVenta.Value, "DsInventarios") + + + + + + + Textbox57 @@ -704,13 +1424,22 @@ + + Before + + + Before + + + Before + DsInventarios 0.14111cm 0.10068cm - 0.84327cm - 20.3247cm + 1.84953cm + 25.76023cm @@ -718,13 +1447,13 @@ - 0.43055in + 0.88788in @@ -837,7 +1566,7 @@ CIUDAD DE MEXICO Textbox2 0.07163cm - 13.61141cm + 18.69141cm 0.38833cm 6.81397cm 3 @@ -873,7 +1602,7 @@ CIUDAD DE MEXICO Textbox12 0.88084cm - 16.09549cm + 21.17549cm 0.44478cm 4.32987cm 4 @@ -910,7 +1639,7 @@ CIUDAD DE MEXICO Textbox12 1.32562cm - 16.09549cm + 21.17549cm 0.44478cm 4.32987cm 5 @@ -946,7 +1675,7 @@ CIUDAD DE MEXICO Textbox12 1.7704cm - 16.0955cm + 21.1755cm 0.44478cm 4.32987cm 6 @@ -983,7 +1712,7 @@ CIUDAD DE MEXICO Textbox12 2.21518cm - 16.09549cm + 21.17549cm 0.44478cm 4.32987cm 7 @@ -997,206 +1726,6 @@ CIUDAD DE MEXICO 2pt - - - - true - true - - - - - =IIf(Parameters!CveConcepto.Value = 8, "Almacén Origen:", "Almacén que recibe:") - - - - - - - - =Parameters!AlmacenOrigen.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =IIf(Parameters!CveConcepto.Value = 8, "Almacén Destino:", "Almacén que envía:") - - - - - - - - =Parameters!AlmacenDestino.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Detalles del Movimiento: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!DireccionOrigen.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!DireccionDestino.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - 2.70907cm - 2.01145cm - 20.32792cm - 8 - - - - true true @@ -1215,9 +1744,71 @@ CIUDAD DE MEXICO CveConcepto 0.50379cm - 17.92538cm + 23.00538cm 0.2384cm 2.5cm + 8 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Observaciones.Value + + + + + + + + + + =Parameters!Documentacion.Value + + + + - 5.83773cm + 3.8269cm true true - - true - true - - - - - Observaciones: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Observaciones.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - true true @@ -1324,11 +1851,10 @@ CIUDAD DE MEXICO Textbox21 - 3.28266cm - 3.14986cm + 1.37766cm + 5.68986cm 0.50243cm 5.79375cm - 2 =iif(Parameters!CveConcepto.Value = 9,true,false) @@ -1361,11 +1887,11 @@ CIUDAD DE MEXICO Textbox21 - 3.28266cm - 11.86467cm + 1.37766cm + 14.40467cm 0.50243cm 5.78664cm - 3 + 1 =iif(Parameters!CveConcepto.Value = 9,true,false) @@ -1412,11 +1938,11 @@ CIUDAD DE MEXICO Textbox21 - 3.56875cm - 3.15781cm + 1.66375cm + 5.69781cm 1.2cm 5.78664cm - 4 + 2 =iif(Parameters!CveConcepto.Value = 9,true,false) @@ -1463,11 +1989,11 @@ CIUDAD DE MEXICO Textbox21 - 3.5682cm - 11.87177cm + 1.6632cm + 14.41177cm 1.2cm 5.78664cm - 5 + 3 =iif(Parameters!CveConcepto.Value = 9,true,false) @@ -1500,11 +2026,11 @@ CIUDAD DE MEXICO Textbox22 - 1.97831cm - 3.15781cm + 0.07331cm + 5.69781cm 0.6cm 5.78664cm - 6 + 4 =iif(Parameters!CveConcepto.Value = 9,true,false) @@ -1537,11 +2063,11 @@ CIUDAD DE MEXICO Textbox22 - 1.97831cm - 11.87177cm + 0.07331cm + 14.41177cm 0.6cm 5.78664cm - 7 + 5 =iif(Parameters!CveConcepto.Value = 9,true,false) @@ -1572,11 +2098,11 @@ CIUDAD DE MEXICO Textbox21 - 2.35606cm - 7.50017cm + 0.45106cm + 10.04017cm 0.63528cm 5.78664cm - 8 + 6 =iif(Parameters!CveConcepto.Value = 8, True, False) @@ -1623,11 +2149,11 @@ CIUDAD DE MEXICO Textbox21 - 3.5682cm - 7.50727cm + 1.6632cm + 10.04727cm 1.2cm 5.78664cm - 9 + 7 =iif(Parameters!CveConcepto.Value = 8, True, False) @@ -1660,11 +2186,11 @@ CIUDAD DE MEXICO Textbox22 - 1.97831cm - 7.50727cm + 0.07331cm + 10.04727cm 0.6cm 5.78664cm - 10 + 8 =iif(Parameters!CveConcepto.Value = 8, True, False) @@ -1708,11 +2234,11 @@ CIUDAD DE MEXICO Textbox29 - 5.31209cm + 3.40709cm 0.10068cm 0.41981cm 5.78083cm - 11 + 9 @@ -1746,11 +2272,11 @@ CIUDAD DE MEXICO Textbox31 - 5.31209cm - 8.15629cm + 3.40709cm + 11.33129cm 0.41981cm 5.13762cm - 12 + 10 @@ -1762,11 +2288,10 @@ CIUDAD DE MEXICO - 1.80136cm 0.13678cm 0cm 20.28859cm - 13 + 11 @@ -1774,11 +2299,10 @@ CIUDAD DE MEXICO - 0.31558cm 0.13678cm 0cm - 20.28859cm - 14 + 25.72414cm + 12 @@ -1786,11 +2310,11 @@ CIUDAD DE MEXICO - 5.17097cm + 3.26597cm 0.10068cm 0cm - 20.3247cm - 15 + 25.76024cm + 13 @@ -1816,11 +2340,11 @@ CIUDAD DE MEXICO Textbox10 - 5.31209cm - 17.60787cm + 3.40709cm + 23.00537cm 0.41981cm 2.55292cm - 16 + 14 @@ -1838,12 +2362,12 @@ CIUDAD DE MEXICO - 27.94cm - 21.59cm - 0.5cm - 0.5cm - 1cm - 1cm + 21.59cm + 27.94cm + 1cm + 1cm + 0.5cm + 0.5cm 0.13cm -<%-- + ---%> +
@@ -27,11 +27,13 @@
+ + -
+
+ data-sort="true" DataKeyNames="CveViajePasajero,Asiento,Nombre, Visa,Celular,Sexo,Estatus,Partida,Destino, Importe,FechaIng, Agencia, TelefonoAgencia"> @@ -93,10 +95,10 @@ - + data-btn-ok-label="si" OnClick="BtnCancelar_Click" /> @@ -107,6 +109,8 @@
+ + diff --git a/Transportes/RepBoletos.aspx.vb b/Transportes/RepBoletos.aspx.vb index 55a6df615..f85fe63e8 100644 --- a/Transportes/RepBoletos.aspx.vb +++ b/Transportes/RepBoletos.aspx.vb @@ -31,7 +31,7 @@ Partial Class ListadoBoletos Response.Redirect("/Transportes/RepViajes.aspx") End If CveViaje = Request.QueryString("CveViaje").ToEntero - Ruta = Request.QueryString("Ruta") + Ruta = IfNull(Request("Ruta"), "").ToString Prueba.Text = Ruta @@ -46,43 +46,11 @@ Partial Class ListadoBoletos Private Sub CargaDatos() Dim ObjTransportes As New ClsTransportes - If ObjTransportes.GetViajesPasajeros(CveViaje) Then - GvBoletos.DataSource = ObjTransportes.DtResultados - ObjTransportes.Dispose() - GvBoletos.DataBind() End If - End Sub - - Protected Sub ToggleViajesPasajeros(sender As Object, e As EventArgs) - Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) - Dim CveViajePasajero As String = GvRow.DataKey("CveViajePasajero") - Dim Estatus As String = GvRow.DataKey("Estatus") - Dim cambiarEstatus As Boolean = Not Estatus.ToBool - Dim ObjTransportes As New ClsTransportes - - Try - ObjTransportes.IniciaTransacSQL() - If ObjTransportes.UpdateViajesPasajeros(CveViajePasajero.ToEntero, Activar:=True, Estatus:=cambiarEstatus) Then - - If cambiarEstatus Then - Alert($"El boleto ha sido cancelado correctamente.") - Else - Alert($"El boleto ha sido reactivado correctamente.") - - End If - End If - ObjTransportes.Commit() - - Catch ex As Exception - ObjTransportes.RollBack() - Alert($"No se pudo cambiar el estatus del boleto {ex}", TipoMensaje.MsgError) - Finally - ObjTransportes.Dispose() - CargaDatos() - End Try - + ObjTransportes.Dispose() + GvBoletos.DataBind() End Sub Protected Sub ImprimirBoleto(sender As Object, e As EventArgs) @@ -113,4 +81,29 @@ Partial Class ListadoBoletos End Sub + + Protected Sub BtnCancelar_Click(sender As Object, e As EventArgs) + Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) + Dim CveViajePasajero As String = GvRow.DataKey("CveViajePasajero") + Dim Estatus As String = GvRow.DataKey("Estatus") + Dim cambiarEstatus As Boolean = Not Estatus.ToBool + Dim ObjTransportes As New ClsTransportes + ObjTransportes.IniciaTransacSQL() + Try + If ObjTransportes.UpdateViajesPasajeros(CveViajePasajero.ToEntero, Activar:=cambiarEstatus, Estatus:=cambiarEstatus) Then + If Not cambiarEstatus Then + Alert($"El boleto ha sido cancelado correctamente.") + Else + Alert($"El boleto ha sido reactivado correctamente.") + End If + End If + ObjTransportes.Commit() + Catch ex As Exception + ObjTransportes.RollBack() + Alert($"No se pudo cambiar el estatus del boleto {ex}", TipoMensaje.MsgError) + Finally + ObjTransportes.Dispose() + CargaDatos() + End Try + End Sub End Class \ No newline at end of file diff --git a/Ventas/Clientes.aspx b/Ventas/Clientes.aspx index 8added149..9722a777f 100644 --- a/Ventas/Clientes.aspx +++ b/Ventas/Clientes.aspx @@ -1169,7 +1169,7 @@
-
+
El cliente desglosa IEPS: diff --git a/Ventas/Clientes.aspx.vb b/Ventas/Clientes.aspx.vb index 4b8cb4d48..048f523f9 100644 --- a/Ventas/Clientes.aspx.vb +++ b/Ventas/Clientes.aspx.vb @@ -6071,6 +6071,10 @@ Partial Class Clientes DdlSATPais.Items.Add(New ListItem("Guatemala", "GTM")) End If + If UsuarioActual.Empresa.Funcionalidad(713) = "1" Then 'si la empresa deduce ieps + divDesgloseImpuestos.Visible = True + End If + CargaDdlAlmacen() End Sub diff --git a/Ventas/Promociones.aspx.vb b/Ventas/Promociones.aspx.vb index 91d82696c..21fce0286 100644 --- a/Ventas/Promociones.aspx.vb +++ b/Ventas/Promociones.aspx.vb @@ -164,11 +164,12 @@ Partial Class Ventas_Promociones If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then GvDatos.Columns(8).Visible = True DivRin.Visible = True - Dim ObjGral As New ClsGenerales - If ObjGral.GetRimTamanios(UsuarioActual.CveEmpresa) Then - DdlRin.DataSource = ObjGral.DtResultados - End If - ObjGral.Dispose() + 'Dim ObjGral As New ClsGenerales + 'If ObjGral.GetRinTamanios(UsuarioActual.CveEmpresa) Then + ' DdlRin.DataSource = ObjGral.DtResultados + 'End If + 'ObjGral.Dispose() + DdlRin.DataSource = GlobalDTPSRinTamaños(UsuarioActual.CveEmpresa) DdlRin.DataBind() DdlRin.Items.Insert(0, New ListItem("Todos", "-1")) End If @@ -1073,12 +1074,12 @@ Partial Class Ventas_Promociones ObjPS.Dispose() - Dim ObjGral As New ClsGenerales - If ObjGral.GetRimTamanios(UsuarioActual.CveEmpresa) Then - DTRines = ObjGral.DtResultados - End If - ObjGral.Dispose() - + 'Dim ObjGral As New ClsGenerales + 'If ObjGral.GetRinTamanios(UsuarioActual.CveEmpresa) Then + ' DTRines = ObjGral.DtResultados + 'End If + 'ObjGral.Dispose() + DTRines = GlobalDTPSRinTamaños(UsuarioActual.CveEmpresa) Dim RegistroActual As Integer = 1 For Each dRow As DataRow In DTPlantilla.Rows diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx index bf9246d46..be56eacde 100644 --- a/Ventas/Ventas.aspx +++ b/Ventas/Ventas.aspx @@ -5,6 +5,11 @@