diff --git a/App_Code/CalendarEvent.vb b/App_Code/CalendarEvent.vb index b9d3ff484..2780c2aab 100644 --- a/App_Code/CalendarEvent.vb +++ b/App_Code/CalendarEvent.vb @@ -25,5 +25,6 @@ Public Class CalendarEvent Public Property EmpresaCRM As String Public Property SubProyecto As String Public Property CveSubProyecto As Integer + Public Property Direccion As String End Class diff --git a/App_Code/ClsOIEventos.vb b/App_Code/ClsOIEventos.vb index 05ec2309d..8d262bcc5 100644 --- a/App_Code/ClsOIEventos.vb +++ b/App_Code/ClsOIEventos.vb @@ -1541,9 +1541,10 @@ Public Class ClsOIEventos Public Function GetEventos(CveEvento As Integer, CveTipoEvento As Integer, CveAgendaTipo As Integer, Asunto As String, Descripcion As String, Prioridad As Integer, CveUsuarioDe As Integer, CveUsuarioPara As Integer, CveEventoEstatus As Integer, CveRevision As Integer, CveEventoPadre As Integer, Acuerdos As String, CveActivoFijo As Integer, CveIE As Integer, CveProspecto As Integer, CveCliente As Integer, - CveOS As Integer, CveOC As Integer, CvePersonal As Integer, CveProveedor As Integer, CveCompra As Integer, CveVenta As Integer, CveUsuario As Integer, CveUsuarioIng As Integer, CveUsuarioConsulta As Integer, CveEmpresa As Integer, Optional FechaInicio As Nullable(Of DateTime) = Nothing, - Optional FechaFin As Nullable(Of DateTime) = Nothing, Optional FechaRealTermino As Nullable(Of DateTime) = Nothing, Optional CveContrato As Integer = -1, Optional CveMovimientoAlmacen As Integer = -1, - Optional CveEmpresaCRM As Integer = -1, Optional CveContactoCRM As Integer = -1, Optional CveAcercamientoCRM As Integer = -1, Optional CveTipoProcesoCRM As Integer = -1, Optional CveEtapaProcesoCRM As Integer = -1) As Boolean + CveOS As Integer, CveOC As Integer, CvePersonal As Integer, CveProveedor As Integer, CveCompra As Integer, CveVenta As Integer, CveUsuario As Integer, CveUsuarioIng As Integer, CveUsuarioConsulta As Integer, + CveEmpresa As Integer, Optional FechaInicio As Nullable(Of DateTime) = Nothing, Optional FechaFin As Nullable(Of DateTime) = Nothing, Optional FechaRealTermino As Nullable(Of DateTime) = Nothing, + Optional CveContrato As Integer = -1, Optional CveMovimientoAlmacen As Integer = -1, Optional CveEmpresaCRM As Integer = -1, Optional CveContactoCRM As Integer = -1, Optional CveAcercamientoCRM As Integer = -1, + Optional CveTipoProcesoCRM As Integer = -1, Optional CveEtapaProcesoCRM As Integer = -1, Optional CveSubProyecto As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_OI_EventosGet") @@ -1593,6 +1594,8 @@ Public Class ClsOIEventos .Add("@CveTipoProcesoCRM", SqlDbType.Int).Value = CveTipoProcesoCRM .Add("@CveEtapaProcesoCRM", SqlDbType.Int).Value = CveEtapaProcesoCRM + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + End With Try diff --git a/App_Code/ClsOS.vb b/App_Code/ClsOS.vb index 42e8c4cd2..102870404 100644 --- a/App_Code/ClsOS.vb +++ b/App_Code/ClsOS.vb @@ -568,7 +568,8 @@ Public Class ClsOS Return Retorno End Function Public Function AddOrdenesServicios(CveCliente As Integer, CveSubProyecto As Integer, PersonaSolicito As String, FechaRecepcion As Date, Descripcion As String, CveUsuarioRecibio As Integer, CveEstatusOrdenServicio As Integer, - CveUsuario As Integer, CveEmpresa As Integer, CveCotizacion As Integer, CveVenta As Integer, CveOSPadre As Integer, CveOSTipo As Integer, Optional CveClienteSucursal As Integer = -1) As Boolean + CveUsuario As Integer, CveEmpresa As Integer, CveCotizacion As Integer, CveVenta As Integer, CveOSPadre As Integer, CveOSTipo As Integer, Optional CveClienteSucursal As Integer = -1, + Optional Direccion As String = "-1") As Boolean Dim Retorno As Boolean = False DataAdapter("PA_OS_OrdenesServiciosAdd") @@ -588,6 +589,8 @@ Public Class ClsOS .Add("@CveOSPadre", SqlDbType.Int).Value = CveOSPadre .Add("@CveOSTipo", SqlDbType.Int).Value = CveOSTipo .Add("@CveClienteSucursal", SqlDbType.Int).Value = CveClienteSucursal + .Add("@Direccion", SqlDbType.VarChar).Value = Direccion + .Add("@CveOS", SqlDbType.Int).Direction = ParameterDirection.Output .Add("@vFolio", SqlDbType.Int).Direction = ParameterDirection.Output End With @@ -629,7 +632,8 @@ Public Class ClsOS Return Retorno End Function - Public Function UpdateOrdenesServicios(PersonaSolicito As String, FechaRecepcion As String, Descripcion As String, CveUsuarioRecibio As Integer, CveEstatusOrdenServicio As Integer, CveOS As Integer, CveUsuarioModifico As Integer, CveOSTipo As Integer, Optional CveClienteSucursal As Integer = -1) As Boolean + Public Function UpdateOrdenesServicios(PersonaSolicito As String, FechaRecepcion As String, Descripcion As String, CveUsuarioRecibio As Integer, CveEstatusOrdenServicio As Integer, CveOS As Integer, CveUsuarioModifico As Integer, + CveOSTipo As Integer, Optional CveClienteSucursal As Integer = -1, Optional Direccion As String = "-1") As Boolean Dim Retorno As Boolean = False DataAdapter("PA_OS_OrdenesServiciosUpdate") @@ -644,6 +648,7 @@ Public Class ClsOS .Add("@CveOSTipo", SqlDbType.Int).Value = CveOSTipo .Add("@CveOS", SqlDbType.Int).Value = CveOS .Add("@CveClienteSucursal", SqlDbType.Int).Value = CveClienteSucursal + .Add("@Direccion", SqlDbType.VarChar).Value = Direccion End With Try diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index c7f0c0d2d..97662f226 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -9256,7 +9256,7 @@ Public Class ClsPaginas Dim Ruta As String = UsuarioActual.Empresa.Ruta Dim PathXML As String = $"{Ruta}XML\Pag\{Serie}-{Folio}.xml" Dim PathPDF As String = $"{Ruta}PDF\Pag\{Serie}-{Folio}.pdf" - Dim ImagenCBB As String = $"file://{Ruta}CBB\{Serie}-{Folio}.jpg" + Dim ImagenCBB As String = $"{Ruta}CBB\{Serie}-{Folio}.jpg" If File.Exists(PathXML) Then Dim XmlDoc As New System.Xml.XmlDocument @@ -9441,6 +9441,12 @@ Public Class ClsPaginas Dim CadenaOriginal As String = $"||1.0| {FolioFiscal} | {FechaCertificacion.ToDate.ToShortDateString} T {FechaCertificacion.ToDateTime.ToShortTimeString} | {SelloCFDi} | {NoSerieCertificado} ||" + If Not File.Exists(ImagenCBB) AndAlso FolioFiscal <> "" Then + Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() + CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCOrdenante, 1, FolioFiscal, ImagenCBB) + End If + + ' PARAMETROS DEL REPORTE params.Add(New ReportParameter("SerieFolio", SerieFolio)) params.Add(New ReportParameter("RFCOrdenante", RFCOrdenante)) @@ -9461,7 +9467,7 @@ Public Class ClsPaginas params.Add(New ReportParameter("SelloSAT", SelloSAT)) params.Add(New ReportParameter("CadenaOriginal", CadenaOriginal)) params.Add(New ReportParameter("CertificadoSAT", CertificadoSAT)) - params.Add(New ReportParameter("QR", ImagenCBB)) + params.Add(New ReportParameter("QR", $"file://{ImagenCBB}")) Dim lrds As New List(Of ReportDataSource) Dim rds As New ReportDataSource With {.Name = "DataSet1", .Value = If(DTConceptosPago IsNot Nothing, DTConceptosPago, New DataTable)} diff --git a/Ashx/CargaEventos.ashx b/Ashx/CargaEventos.ashx index b25e72291..2f5a0ee5d 100644 --- a/Ashx/CargaEventos.ashx +++ b/Ashx/CargaEventos.ashx @@ -31,10 +31,15 @@ Public Class CargaEventos : Implements IHttpHandler, IRequiresSessionState CveUsuario = context.Request("U").ToEntero CveEmpresa = context.Request("E").ToEntero + + Dim CveSubProyecto As Integer = If(context.Request("CveSubProyecto") IsNot Nothing, context.Request("CveSubProyecto").ToEntero, -1) + Dim CveUsuarioPara As Integer = If(context.Request("CveUsuarioPara") IsNot Nothing, context.Request("CveUsuarioPara").ToEntero, -1) + + FI = context.Request("start").ToDate FF = context.Request("end").ToDate - If Not GetEventos(CveUsuario, CveEmpresa, FI, FF, CveOS:=-2) Then + If Not GetEventos(CveUsuario, CveEmpresa, FI, FF, CveOS:=-2, CveUsuarioPara:=CveUsuarioPara, CveSubProyecto:=CveSubProyecto) Then 'Convierte el objeto de Eventos en JSON 'Dim oSerializer As System.Web.Script.Serialization.JavaScriptSerializer = New System.Web.Script.Serialization.JavaScriptSerializer Dim sJSON As String = Newtonsoft.Json.JsonConvert.SerializeObject(events) @@ -85,11 +90,11 @@ Public Class CargaEventos : Implements IHttpHandler, IRequiresSessionState End Property - Private Function GetEventos(CveUsuario As Integer, CveEmpresa As Integer, pFI As Date, pFF As Date, Optional CveOS As Integer = -1) As Boolean + Private Function GetEventos(CveUsuario As Integer, CveEmpresa As Integer, pFI As Date, pFF As Date, Optional CveOS As Integer = -1, Optional CveUsuarioPara As Integer = -1, Optional CveSubProyecto As Integer = -1) As Boolean Dim ObjEventos As New ClsOIEventos Dim ErrorEventos = False Dim CveEmpresaCRM As Integer = 0 - If ObjEventos.GetEventos(-1, -1, -1, "-1", "-1", -1, CveUsuario, CveUsuario, -1, -1, -1, "-1", -1, -1, -1, -1, CveOS, -1, -1, -1, -1, -1, CveUsuario, CveUsuario, CveUsuario, CveEmpresa, pFI, pFF) Then + If ObjEventos.GetEventos(-1, -1, -1, "-1", "-1", -1, CveUsuario, CveUsuarioPara, -1, -1, -1, "-1", -1, -1, -1, -1, CveOS, -1, -1, -1, -1, -1, CveUsuario, CveUsuario, CveUsuario, CveEmpresa, pFI, pFF, CveSubProyecto:=CveSubProyecto) Then If ObjEventos.DtResultados.Rows.Count > 0 Then events = New List(Of CalendarEvent) @@ -119,6 +124,7 @@ Public Class CargaEventos : Implements IHttpHandler, IRequiresSessionState cevent.EmpresaCRM = dr("EmpresaCRM").ToString cevent.SubProyecto = dr("SubProyecto").ToString cevent.CveSubProyecto = dr("CveSubProyecto").ToString.ToEntero + cevent.Direccion = dr("Direccion").ToString '11/05/2018 - Evento Gasto Recurrente cevent.CveTipoEvento = dr("CveTipoEvento").ToString.ToEntero diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index a55268f82..535bfd2ea 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -881,10 +881,7 @@ -       - - - +       @@ -909,19 +906,13 @@ Anticipo/NC -   - - - +   Mon -   - - - +   @@ -2842,18 +2833,24 @@
-
+
-
+
+
+ +
+ +
+

@@ -2912,6 +2909,13 @@ + + + <%----%> + + + + @@ -5891,23 +5895,47 @@ } $("#LblTotalAnticipos").text(FormatoNumero(FnSumaValoresAnt(), 2)); - $("#LblAplicadoCompraAnt").text(FormatoNumero(FnSumaValoresAnt(), 2)); - $("#LblSaldoFactura").text(FormatoNumero(Total - FnSumaValoresAnt(), 2)); + $("#LblAplicadoCompraAnt").text(FormatoNumero(FnSumaValoresAnt(), 2)); + $("#LblAplicadoCompraAntComision").text(FormatoNumero(FnSumaValoresAntComisiones(), 2)); + $("#LblSaldoFactura").text(FormatoNumero(TotalSaldo - FnSumaValoresAnt(), 2)); } - function FnCambiaAnt(chk, txt, saldo, TotalSaldo, CveMonedaAnticipo, TCAnticipo, CveMonedaOriginal) { + function FnCambiaAnt(chk, txt, saldo, TotalSaldo, CveMonedaAnticipo, TCAnticipo, CveMonedaOriginal, txtComision) { + var Total = ToDouble($get('TxtTotal').value); + let txtComisionImporte = 0; + + if (txtComision != null) { + if (!isNaN(txtComision.value)) { + txtComisionImporte = ToDouble(txtComision.value); + } + } + + var txtvalue = ToDouble(txt.value); - if (CveMonedaAnticipo = 1 && CveMonedaOriginal == 2) { + + + if (txtComisionImporte != 0 && txtComisionImporte > txtvalue) { + + if (txtComision != null) { + txtComision.value = txtvalue; + alert('La comisión no debe de exder la amortización.') + } + return; + } + + + if (CveMonedaAnticipo == 1 && CveMonedaOriginal == 2) { txtvalue = ToDouble(txtvalue / TCAnticipo); - } else if (CveMonedaAnticipo = 2 && CveMonedaOriginal == 1) { + } else if (CveMonedaAnticipo == 2 && CveMonedaOriginal == 1) { txtvalue = ToDouble(txtvalue * TCAnticipo); } var SaldoCompra = (TotalSaldo - FnSumaValoresAnt() + ToDouble(txtvalue)).toFixed(2); // le agrego lo del valor actual para validarlo //parseFloat(parseFloat($get('HdnCompraSaldo').value).toFixed(2)); + if (SaldoCompra < 0) txt.value = SaldoCompra - txtvalue; //minimo entre saldocompra y el saldoanticipo if (SaldoCompra < saldo) saldo = SaldoCompra; @@ -5919,12 +5947,13 @@ } if (ToDouble(txtvalue) > saldo) { - txt.value = saldo; + txt.value = saldo; alert("El Importe no debe de exceder a el saldo"); } $("#LblTotalAnticipos").text(FormatoNumero(FnSumaValoresAnt(), 2)); $("#LblAplicadoCompraAnt").text(FormatoNumero(FnSumaValoresAnt(), 2)); + $("#LblAplicadoCompraAntComision").text(FormatoNumero(FnSumaValoresAntComisiones(), 2)); $("#LblSaldoFactura").text(FormatoNumero(TotalSaldo - FnSumaValoresAnt(), 2)); } @@ -5941,8 +5970,21 @@ // totalPoints += ToDouble($(this).val()); //}); + let respuesta = Math.round(totalPoints * 100) / 100; + return respuesta + } - return Math.round(totalPoints * 100) / 100; + function FnSumaValoresAntComisiones() { + var totalPoints = 0; + var t = ''; + + + $('input[name*=TxtComision]').each(function () { + totalPoints += ToDouble($(this).val()); + }); + + let respuesta = Math.round(totalPoints * 100) / 100; + return respuesta } diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 48968f247..5e4a0eedb 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -566,6 +566,7 @@ Partial Class Compras_Compras Public Property TipoMovto As String Public Property CveIE As Integer Public Property Importe As Decimal + Public Property ImporteComision As Decimal Public Property TCCompra As Decimal Public Property CvePersonal As Integer @@ -1580,6 +1581,13 @@ Partial Class Compras_Compras divDevAuto.Visible = True End If + + If UsuarioActual.CveEmpresa.Contiene(13, 83) Then + GVAnticipos.Columns(6).Visible = True + DVAntComiciones.Visible = True + End If + + End If 'SE OCUPAN AFUERA DEL POSTBACK ?? @@ -4465,25 +4473,27 @@ Partial Class Compras_Compras 'REGISTRO LOS PRODUCTOS If Row("CvePS").ToString.ToEntero = 0 Then - tCve = PSS.AddPS(Row("CveClasificacionActualizar").ToString.ToEntero, -1, Row("CveUM").ToString.ToEntero, "", "", "", Row("PS").ToString, Row("PU").ToString.ToDouble, If(TxtIVA.Text.ToDouble > 0, -1, 0), 0, False, 0, True, False, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, 0) - If tCve > 0 Then - RegeneraPS = True - Row("CvePS") = tCve - Row("CveClasificacion") = Row("CveClasificacionActualizar").ToString.ToEntero - 'Row("CveEq") = 1 - TmpDT.AcceptChanges() + 'tCve = PSS.AddPS(Row("CveClasificacionActualizar").ToString.ToEntero, -1, Row("CveUM").ToString.ToEntero, "", "", "", Row("PS").ToString, Row("PU").ToString.ToDouble, If(TxtIVA.Text.ToDouble > 0, -1, 0), 0, False, 0, True, False, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, 0) + 'If tCve > 0 Then + ' RegeneraPS = True + ' Row("CvePS") = tCve + ' Row("CveClasificacion") = Row("CveClasificacionActualizar").ToString.ToEntero + ' 'Row("CveEq") = 1 + ' TmpDT.AcceptChanges() - 'busco el mismo PS dentro de la tabla por si está más de una vez y lo actualizo - Dim rowsToUpdate = TmpDT.AsEnumerable().Where(Function(r) r.Field(Of String)("PS") = Row("PS").ToString AndAlso r!CvePS.ToString.ToEntero = 0) - For Each roww As DataRow In rowsToUpdate - roww.SetField("CvePS", tCve) - roww.SetField("CveClasificacion", Row("CveClasificacionActualizar").ToString.ToEntero) - 'roww.SetField("CveEq", 1) - Next - TmpDT.AcceptChanges() - Else - Correcto = False - End If + ' 'busco el mismo PS dentro de la tabla por si está más de una vez y lo actualizo + ' Dim rowsToUpdate = TmpDT.AsEnumerable().Where(Function(r) r.Field(Of String)("PS") = Row("PS").ToString AndAlso r!CvePS.ToString.ToEntero = 0) + ' For Each roww As DataRow In rowsToUpdate + ' roww.SetField("CvePS", tCve) + ' roww.SetField("CveClasificacion", Row("CveClasificacionActualizar").ToString.ToEntero) + ' 'roww.SetField("CveEq", 1) + ' Next + ' TmpDT.AcceptChanges() + 'Else + ' Correcto = False + 'End If + Alert("Existen productos sin registrar/Asignar.", TipoMensaje.MsgAdvertencia) + Correcto = False Else 'UPDATE CLASIFICACION DE PRODUCTO YA REGISTRADO If Row("CveClasificacionActualizar").ToString.ToEntero > 0 AndAlso Row("CveClasificacion").ToString.ToEntero <= 0 Then @@ -7130,6 +7140,9 @@ Partial Class Compras_Compras importeMovimiento = Ant.Importe importeMN = importeMovimiento * tipoCambioActual * Multiplicador + Dim ImporComisionAnticipo As Decimal = Ant.ImporteComision + Dim importeMNComision As Decimal = ImporComisionAnticipo * tipoCambioActual * Multiplicador + If importeMovimiento <> 0 Then 'Conta ContPAQ If IdCtaContable = 0 Then @@ -7242,6 +7255,7 @@ Partial Class Compras_Compras Pago.ImportePago = importeMovimientoNC Pago.CveIE = Ant.CveIE Pago.CveMonedaPago = 1 + Pago.OtroGastoIngreso = ImporComisionAnticipo ErrorMovtosCxP = AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta) @@ -7274,40 +7288,55 @@ Partial Class Compras_Compras End If 'Agregamos el 21/37/60 - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteAnt, Referencia, ConceptoContableAnticipo, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedorLocal, CveIE:=Ant.CveIE, ImporteMX:=ImporteAntMN, ImporteME:=If(tipoCambioActual = 1, 0, ImporteAnt), TipoCambio:=TipoCambioAnt, Contabilizable:=SeContabiliza) Then - ErrorPrepoliza = True + + + 'Dim ImporComisionAnticipo As Decimal = Ant.ImporteComision + 'Dim importeMNComision As Decimal = ImporComisionAnticipo * tipoCambioActual * Multiplicador + If ImporComisionAnticipo = 0 Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteAnt, Referencia, ConceptoContableAnticipo, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedorLocal, CveIE:=Ant.CveIE, ImporteMX:=ImporteAntMN, ImporteME:=If(tipoCambioActual = 1, 0, ImporteAnt), TipoCambio:=TipoCambioAnt, Contabilizable:=SeContabiliza) Then + ErrorPrepoliza = True + End If + Else + Dim ImporteAntMNComision As Decimal = (ImporteAnt + ImporComisionAnticipo) * TipoCambioAnt + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, (ImporteAnt + ImporComisionAnticipo), Referencia, ConceptoContableAnticipo, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedorLocal, CveIE:=Ant.CveIE, ImporteMX:=ImporteAntMNComision, ImporteME:=If(tipoCambioActual = 1, 0, (ImporteAnt + ImporComisionAnticipo)), TipoCambio:=TipoCambioAnt, Contabilizable:=SeContabiliza) Then + ErrorPrepoliza = True + End If End If + + If TxtTotal.Text.ToDouble > 0 AndAlso TieneAnticiposXML = False Then - Dim Pago As New CompraPago - Pago.ImportePago = importeMovimiento - Pago.CveIE = Ant.CveIE - Pago.TCPago = Ant.TCCompra - Pago.CveMonedaPago = If(Ant.TCCompra > 1, 2, 1) + Dim Pago As New CompraPago + Pago.ImportePago = importeMovimiento + Pago.CveIE = Ant.CveIE + Pago.TCPago = Ant.TCCompra + Pago.CveMonedaPago = If(Ant.TCCompra > 1, 2, 1) + Pago.OtroGastoIngreso = ImporComisionAnticipo - ErrorPrepoliza = AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta) + ErrorPrepoliza = AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta) + + End If End If + '** PRUEBA CUANDO SE AMORTIZA NC ANTES DE QUE SE REGISTRE NO DEBE TENER CONCEPTO 19 ** JM 01/06/2017 SE HIZO ESTO PARA LA FACTURA HRFA-8012831 DE VIGILANCIA + '[IPP] NC NO DEBE REGISTRAR IMPUESTOS EN AMORTIZACIÓN 27/Agosto/2018 + + 'If Not Ant.TipoMovto.Contiene("NC", "DEV") Then + + ' Dim Pago As New CompraPago + ' Pago.ImportePago = importeMovimiento + ' Pago.CveIE = Ant.CveIE + ' Pago.CveMonedaPago = 1 + + ' ErrorPrepoliza = AplicaPrePolizaPago(CompraActual, Pago, ObjConta) + + 'End If + End If - '** PRUEBA CUANDO SE AMORTIZA NC ANTES DE QUE SE REGISTRE NO DEBE TENER CONCEPTO 19 ** JM 01/06/2017 SE HIZO ESTO PARA LA FACTURA HRFA-8012831 DE VIGILANCIA - '[IPP] NC NO DEBE REGISTRAR IMPUESTOS EN AMORTIZACIÓN 27/Agosto/2018 - - 'If Not Ant.TipoMovto.Contiene("NC", "DEV") Then - - ' Dim Pago As New CompraPago - ' Pago.ImportePago = importeMovimiento - ' Pago.CveIE = Ant.CveIE - ' Pago.CveMonedaPago = 1 - - ' ErrorPrepoliza = AplicaPrePolizaPago(CompraActual, Pago, ObjConta) - - 'End If - - End If - If UsuarioActual.CveEmpresa.Contiene(83) Then 'Unificacion de PrePolizas If UsuarioActual.Empresa.Funcionalidad(219) = "1" Then @@ -8364,681 +8393,9 @@ Partial Class Compras_Compras Try Dim CveIE As Integer = -1 - If EmpresaPrueba Then - Dim CvePlantillaPoliza = 52 - Dim tipoCambio As Decimal - Dim tipoCambioNC As Decimal - Dim alertaContabilizacion As New StringBuilder - Dim idCuentaContabilizacion As Long = 1 - Dim CvePrepolizaPadre As Integer = CvePrePoliza - Dim CuentasContablesInvalidas As New StringBuilder - Dim CuentasContablesInvalidasSIG As New StringBuilder - If DdlMoneda.SelectedValue.ToString.ToEntero = 2 Then - tipoCambio = GlobalTipoCambio(Fecha).ToString.ToDecimal - Else - tipoCambio = 1 - End If - '[IPP] PARCHE PARA AMORTIZACIÓN NC - Dim TipoCambioCompra = Me.TipoCambio - - Dim CvePrePolizaNueva As Integer = ObjConta.AddPrePolizas("Compras/Anticipos", 52, Importe, Importe, DdlMoneda.SelectedValue.ToEntero, Fecha, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - - For Each gvr As GridViewRow In GVAnticipos.Rows - If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then - - CveCompraNC = gvr.DataKey("CveCompra").ToEntero - tipoCambioNC = If(ChkPagarConPesos.Checked, GlobalTipoCambio(gvr.DataKey("Fecha").ToDate).ToDecimal, gvr.DataKey("TCCompra").ToDecimal) - sumaAmortizacion = 0 - - If CvePrePolizaNueva > 0 Then - If ObjConta.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then - - For Each Row As DataRow In ObjConta.DtResultados.Rows - - Dim ConceptoContable = Row("CveConcepto").ToString.ToEntero - Dim TipoMovimiento As Boolean = If(Row("TipoMovto").ToString = "True", True, False) - ImporteMovimiento = 0 - IdCtaContable = 0 - - - - Dim Concepto As String = String.Format("{0} F:{1}-{2}", HplProveedor.Text, TxtSerie.Text, TxtFolio.Text) - Dim importeMN As Decimal = 0 - Dim Multiplicador As Integer = If(Row("Multiplicador").ToString.ToEntero = 1, 1, -1) - Dim PorcentajeImpuesto As Decimal = 0 - Dim ConceptoPartida As String = String.Format("{0} F:{1}-{2}", HplProveedor.Text, TxtSerie.Text, TxtFolio.Text) - - - Select Case ConceptoContable - Case 265 'Amortización Anticipos Compras - If gvr.DataKey("TipoDocto").Contiene("Ant") Then - CveIE = -1 - ImporteMovimiento = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal - importeMN = ImporteMovimiento * tipoCambioNC - sumaAmortizacion += ImporteMovimiento - sumaAmortizacionCompleto += ImporteMovimiento - - If ChkPagarConPesos.Checked Then - ImporteMovimiento = ImporteMovimiento * GlobalTipoCambio(gvr.DataKey("Fecha").ToDate).ToDecimal - ElseIf ChkPagarConDolares.Checked Then - ImporteMovimiento = ImporteMovimiento / gvr.DataKey("TCCompra").ToDecimal - End If - - If DdlMoneda.SelectedValue.ToEntero <> 1 Then - IdCtaContable = CtaProveedorAnticiposExtranjera - If ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, ConceptoPartida, ConceptoContable, "", Fecha, IdCtaContable, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioNC, CveCompraAmortizacion:=CveCompra, CveSubProyecto:=CveSubProyectoAnticipo) Then - - IdCtaContable = CtaProveedorAnticiposComplementaria - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, importeMN - ImporteMovimiento, ConceptoPartida, 266, "", Fecha, IdCtaContable, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN - ImporteMovimiento, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioNC, CveCompraAmortizacion:=CveCompra, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - Exit Select - End If - - Else - ErrorMovtosCxP = 1 - Exit Select - End If - Else - IdCtaContable = CtaProveedorAnticipos - If ImporteMovimiento <> 0 Then - PorcentajePago = ImporteMovimiento / TxtTotal.Text.ToDecimal - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, ConceptoPartida, ConceptoContable, "", Fecha, IdCtaContable, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=If(tipoCambio = 1, 0, ImporteMovimiento), CveCompraAmortizacion:=CveCompra, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - End If - End If - End If - End If - - ImporteMovimiento = 0 - Case 60 'Nota de Credito - If gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then - CveIE = -1 - ImporteMovimiento = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal - importeMN = ImporteMovimiento * tipoCambioNC - sumaAmortizacion += ImporteMovimiento - sumaAmortizacionCompleto += ImporteMovimiento - - If ChkPagarConPesos.Checked Then - ImporteMovimiento = ImporteMovimiento * GlobalTipoCambio(gvr.DataKey("Fecha").ToDate).ToDecimal - ElseIf ChkPagarConDolares.Checked Then - ImporteMovimiento = ImporteMovimiento / gvr.DataKey("TCCompra").ToDecimal - End If - - If DdlMoneda.SelectedValue.ToEntero <> 1 Then - IdCtaContable = CtaProveedorExtranjera - If ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, ConceptoPartida, ConceptoContable, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioNC, CveCompraAmortizacion:=CveCompra, CveSubProyecto:=CveSubProyectoAnticipo) Then - IdCtaContable = CtaProveedorComplementaria - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, importeMN - ImporteMovimiento, ConceptoPartida, 235, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN - ImporteMovimiento, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioNC, CveCompraAmortizacion:=CveCompra, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - Exit Select - End If - Else - ErrorMovtosCxP = 1 - Exit Select - End If - Else - IdCtaContable = CtaProveedor - If ImporteMovimiento <> 0 Then - PorcentajePago = ImporteMovimiento / TxtTotal.Text.ToDecimal - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, ConceptoPartida, ConceptoContable, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=If(tipoCambio = 1, 0, ImporteMovimiento), CveCompraAmortizacion:=CveCompra, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - End If - End If - End If - End If - - ImporteMovimiento = 0 - Case 21 'Anticipo - If gvr.DataKey("TipoDocto") = "Egsc" Then - CveCompraNC = -1 - CveIE = gvr.DataKey("CveIE").ToEntero - ImporteMovimiento = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal - sumaAmortizacion += ImporteMovimiento - sumaAmortizacionCompleto += ImporteMovimiento - IdCtaContable = CtaProveedorAnticipos - - PorcentajePago = ImporteMovimiento / TxtTotal.Text.ToDecimal - - If ChkPagarConPesos.Checked Then - ImporteMovimiento = ImporteMovimiento * GlobalTipoCambio(gvr.DataKey("Fecha").ToDate).ToDecimal - ElseIf ChkPagarConDolares.Checked Then - ImporteMovimiento = ImporteMovimiento / gvr.DataKey("TCCompra").ToDecimal - End If - - If ImporteMovimiento <> 0 Then - - Dim TipoCambioAnt = gvr.DataKey("TCCompra").ToDecimal - - Dim usacomplementariaAnticipo As Boolean = False - usacomplementariaAnticipo = If(TipoCambioAnt > 1, True, False) - - - Dim ImporteAnt As Decimal = ImporteMovimiento - Dim ImporteAntMN As Decimal = ImporteAnt * TipoCambioAnt - If usacomplementariaAnticipo Then - IdCtaContable = CtaProveedorAnticiposComplementaria - ImporteAntMN = TipoCambioAnt * ImporteAnt - ImporteAnt - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteAnt, ConceptoPartida, 266, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveCompraAmortizacion:=CveCompraNC, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, ImporteMX:=ImporteAntMN, ImporteME:=ImporteAnt, TipoCambio:=TipoCambioAnt, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - End If - ImporteAntMN = ImporteAnt - End If - - If TipoCambioAnt > 1 Then - IdCtaContable = CtaProveedorAnticiposExtranjera - End If - - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteAnt, ConceptoPartida, ConceptoContable, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteAntMN, CvePrePolizaOriginal:=CvePrePolizaNueva, ImporteME:=If(tipoCambio = 1, 0, ImporteAnt), CveCompraAmortizacion:=CveCompraNC, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - End If - - If ChkPagarConPesos.Checked Or ChkPagarConDolares.Checked Then - ImporteAnt = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal - TipoCambioAnt = If(ChkPagarConPesos.Checked, GlobalTipoCambio(gvr.DataKey("Fecha").ToDate).ToDecimal, gvr.DataKey("TCCompra").ToDecimal) - End If - - Dim TipoCambioDiferencia = If(ChkPagarConDolares.Checked, GlobalTipoCambio(TxtFecha.Text.ToDate), TipoCambioCompra).ToDecimal - - If TipoCambioDiferencia <> TipoCambioAnt Then - Dim importeFluctuacion = (ImporteAnt * TipoCambioDiferencia) - (ImporteAnt * TipoCambioAnt) - - If importeFluctuacion > 0 Then - ConceptoContable = 64 - TipoMovimiento = True - IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria - ElseIf importeFluctuacion < 0 Then - ConceptoContable = 65 - TipoMovimiento = False - IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria - End If - - importeFluctuacion = importeFluctuacion.Abs.RoundSQL() - If importeFluctuacion <> 0 Then - Dim CveSubProyecto6465 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, importeFluctuacion, "", ConceptoContable, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto6465, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeFluctuacion, CvePrePolizaOriginal:=CvePrePolizaNueva, ImporteME:=0) Then - ErrorMovtosCxP = 1 - End If - End If - End If - - End If - End If - - ImporteMovimiento = 0 - - Case 37 'Deudores Diversos - If gvr.DataKey("TipoDocto") = "DD" Then - CveCompraNC = -1 - CveIE = gvr.DataKey("CveIE").ToEntero - ImporteMovimiento = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal - sumaAmortizacion += ImporteMovimiento - sumaAmortizacionCompleto += ImporteMovimiento - IdCtaContable = CtaProveedorDeudores - - If ImporteMovimiento <> 0 Then - PorcentajePago = ImporteMovimiento / TxtTotal.Text.ToDecimal - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, "", ConceptoContable, "", Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento * tipoCambio, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=If(tipoCambio = 1, 0, ImporteMovimiento), CveCompraAmortizacion:=CveCompraNC, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - End If - End If - End If - - ImporteMovimiento = 0 - - Case 17 'Pago Proveedores - - If CveTipoConcepto = 2 Then ConceptoContable = 308 'cuando es acreedor - If CveMoneda > 1 Then - Select Case ConceptoContable - Case 17 - ConceptoContable = 312 - Case 308 - ConceptoContable = 309 - Case Else - End Select - End If - - Dim TipoCambio17 = tipoCambio - If gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant", "Egsc") Then - TipoCambio17 = TipoCambioCompra - End If - If gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then - ConceptoContable = 272 - End If - - ImporteMovimiento = sumaAmortizacion - importeMN = ImporteMovimiento * TipoCambio17 - - If DdlMoneda.SelectedValue.ToEntero <> 1 Then - IdCtaContable = CtaProveedorExtranjera - If ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveCompraAmortizacion:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=ImporteMovimiento, TipoCambio:=TipoCambio17, CveSubProyecto:=CveSubProyectoAnticipo) Then - - Dim CveConceptoContableComplementaria As Integer = 206 - If CveTipoConcepto = 2 Then CveConceptoContableComplementaria = 310 'cuando es acreedor - - IdCtaContable = CtaProveedorComplementaria - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, importeMN - ImporteMovimiento, Concepto, CveConceptoContableComplementaria, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveCompraAmortizacion:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN - ImporteMovimiento, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=ImporteMovimiento, TipoCambio:=TipoCambio17, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - Exit Select - End If - Else - ErrorMovtosCxP = 1 - Exit Select - End If - Else - IdCtaContable = CtaProveedor - If ImporteMovimiento <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveCompraAmortizacion:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=If(TipoCambio17 = 1, 0, ImporteMovimiento), CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - Exit For - End If - End If - End If - - ImporteMovimiento = 0 - Case 14 'Iva X Acreditar - - If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then - If UsuarioActual.Empresa.Funcionalidad(521) = "1" Then - If sumaAmortizacion = CompraSaldo Then - ImporteMovimiento = TxtIVA.Text.ToDecimal - If ImporteMovimiento > 0 Then - IVACompleto = True - End If - Else - ImporteMovimiento = 0 - End If - Else - ImporteMovimiento = Math.Round(PorcentajePago * TxtIVA.Text.ToDecimal, 2) - End If - importeMN = ImporteMovimiento * tipoCambioNC - PorcentajeImpuesto = TmpDT.MAX("IVAPorcentaje").ToDecimal - IdCtaContable = If(IdCtaIVAXAcreditar > 0, IdCtaIVAXAcreditar, 0) - - If chkImportacion.Checked Then - ConceptoContable = 287 - End If - - If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then - If ObjConta.DtResultados.Rows.Count > 0 Then - IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero - End If - End If - End If - - - Case 19 'Iva Acreditado - If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then - If UsuarioActual.Empresa.Funcionalidad(521) = "1" Then - If sumaAmortizacion = CompraSaldo Then - ImporteMovimiento = TxtIVA.Text.ToDecimal - IVACompleto = True - Else - ImporteMovimiento = 0 - End If - Else - ImporteMovimiento = Math.Round(PorcentajePago * TxtIVA.Text.ToDecimal, 2) - End If - importeMN = ImporteMovimiento * tipoCambioNC - PorcentajeImpuesto = TmpDT.MAX("IVAPorcentaje").ToDecimal - IdCtaContable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0) - - If chkImportacion.Checked Then - ConceptoContable = 288 - End If - If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then - If ObjConta.DtResultados.Rows.Count > 0 Then - IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero - End If - End If - End If - Case 15 'RetIVA x Acreditar Honorarios/Serv. Prof. - If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then - 'If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then - If DdlRetIVAConcepto.Items.Count > 0 Then - TipoMovimiento = If(TipoMovimiento, False, True) - Dim Funcionalidad As Integer = 0 - If CveRetIVAConceptoOriginal = 1 Then - Funcionalidad = 307 - ConceptoContable = 15 - ElseIf CveRetIVAConceptoOriginal = 2 Then - Funcionalidad = 309 - ConceptoContable = 183 - ElseIf CveRetIVAConceptoOriginal = 3 Then - Funcionalidad = 311 - ConceptoContable = 185 - ElseIf CveRetIVAConceptoOriginal = 4 Then - Funcionalidad = 313 - ConceptoContable = 248 - ElseIf CveRetIVAConceptoOriginal = 5 Then - Funcionalidad = 578 - ConceptoContable = 285 - ElseIf CveRetIVAConceptoOriginal = 6 Then - ConceptoContable = 333 - End If - - ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2) - importeMN = ImporteMovimiento * tipoCambio - - If tipoCambio > 1 Then Concepto += $" TC{tipoCambio} ${ImporteMovimiento.FormatoNumero(2)}" - - If UsuarioActual.Empresa.TipoContabilidad = 2 Then - If CtaProveedorRetIVA > 0 Then - IdCtaContable = CtaProveedorRetIVA - ElseIf UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero > 0 Then - IdCtaContable = UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero - Else - If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then - If ObjConta.DtResultados.Rows.Count > 0 Then - IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero - End If - End If - End If - End If - - End If - End If - Case 22 'RetIVA Acreditable Honorarios/Serv. Prof. - If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then - 'If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then - If DdlRetIVAConcepto.Items.Count > 0 AndAlso DdlRetIVAConcepto.SelectedValue.ToEntero > 0 Then - - - TipoMovimiento = If(TipoMovimiento, False, True) - - Dim Funcionalidad As Integer = 0 - Dim ConceptoContableContra As Integer = 0 - - If CveRetIVAConceptoOriginal = 1 Then - Funcionalidad = 308 - ConceptoContable = 22 - ConceptoContableContra = 15 - ElseIf CveRetIVAConceptoOriginal = 2 Then - Funcionalidad = 310 - ConceptoContable = 184 - ConceptoContableContra = 183 - - ElseIf CveRetIVAConceptoOriginal = 3 Then - Funcionalidad = 312 - ConceptoContable = 186 - ConceptoContableContra = 185 - - ElseIf CveRetIVAConceptoOriginal = 4 Then - Funcionalidad = 314 - ConceptoContable = 249 - ConceptoContableContra = 248 - - ElseIf CveRetIVAConceptoOriginal = 5 Then - Funcionalidad = 578 - ConceptoContable = 286 - ConceptoContableContra = 285 - ElseIf CveRetIVAConceptoOriginal = 6 Then - ConceptoContable = 334 - ConceptoContableContra = 333 - End If - - ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2) - importeMN = ImporteMovimiento * tipoCambioNC - - - If UsuarioActual.Empresa.TipoContabilidad = 2 Then - If CtaProveedorRetIVA > 0 Then - IdCtaContable = CtaProveedorRetIVA - ElseIf UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero > 0 Then - IdCtaContable = UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero - Else - If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then - If ObjConta.DtResultados.Rows.Count > 0 Then - IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero - End If - End If - End If - End If - - - - 'If tipoCambio > 1 Then Concepto += $" TC{tipoCambio} ${ImporteMovimiento.FormatoNumero(2)}" - ''Agregamos el Opuesto del 22 -> 15 - 'If ImporteMovimiento <> 0 Then - ' If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContableContra, Concepto + If(tipoCambio > 1, $" TC {tipoCambio} ${ImporteMovimiento.FormatoNumero(2)}", ""), Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=-1, CveCreditoDetalle:=-1, ImporteMX:=ImporteMovimiento * tipoCambio, ImporteME:=If(tipoCambio = 1, 0, ImporteMovimiento), Contabilizable:=True, TipoCambio:=tipoCambio, CveSubProyecto:=CveSubProyectoAnticipo) Then - ' ErrorMovtosCxP = 1 - ' Exit For - ' End If - 'End If - - End If - End If - - - - Case 16 'RetISR x Acreditar - If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then - 'If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then - If DdlRetISRConcepto.Items.Count > 0 AndAlso DdlRetISRConcepto.SelectedValue.ToEntero > 0 Then - - TipoMovimiento = If(TipoMovimiento, False, True) - - Dim funcionalidad As Integer = 0 - If DdlRetISRConcepto.SelectedValue.ToEntero = 1 Then - funcionalidad = 315 - ConceptoContable = 16 - ElseIf DdlRetISRConcepto.SelectedValue.ToEntero = 2 Then - funcionalidad = 317 - ConceptoContable = 243 - ElseIf DdlRetISRConcepto.SelectedValue.ToEntero = 3 Then - funcionalidad = 348 - ConceptoContable = 327 - End If - ImporteMovimiento = Math.Round(PorcentajePago * TxtRetISR.Text.ToDecimal, 2) - importeMN = ImporteMovimiento * tipoCambio - If tipoCambio > 1 Then Concepto += $" TC{tipoCambio} ${ImporteMovimiento.FormatoNumero(2)}" - - - If UsuarioActual.Empresa.TipoContabilidad = 2 Then - If CtaProveedorRetISR > 0 Then - IdCtaContable = CtaProveedorRetISR - - ElseIf UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero > 0 Then - IdCtaContable = UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero - Else - If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then - If ObjConta.DtResultados.Rows.Count > 0 Then - IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero - End If - End If - End If - End If - - - End If - End If - - Case 23 'RetISR Acreditable - If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then - 'If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then - If DdlRetISRConcepto.Items.Count > 0 AndAlso DdlRetISRConcepto.SelectedValue.ToEntero > 0 Then - - TipoMovimiento = If(TipoMovimiento, False, True) - - Dim funcionalidad As Integer = 0 - Dim ConceptoContableContra As Integer = 0 - - If CveRetISRConceptoOriginal = 1 Then - funcionalidad = 316 - ConceptoContable = 23 - ConceptoContableContra = 16 - ElseIf CveRetISRConceptoOriginal = 2 Then - funcionalidad = 318 - ConceptoContable = 244 - ConceptoContableContra = 243 - ElseIf CveRetISRConceptoOriginal = 3 Then - funcionalidad = 348 - ConceptoContable = 328 - ConceptoContableContra = 327 - End If - - ImporteMovimiento = Math.Round(PorcentajePago * TxtRetISR.Text.ToDecimal, 2) - importeMN = Math.Round(ImporteMovimiento, 2) * tipoCambio * Multiplicador - - If UsuarioActual.Empresa.TipoContabilidad = 2 Then - If CtaProveedorRetISR > 0 Then - IdCtaContable = CtaProveedorRetISR - ElseIf UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero > 0 Then - IdCtaContable = UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero - Else - If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then - If ObjConta.DtResultados.Rows.Count > 0 Then - IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero - End If - End If - End If - End If - End If - End If - - Case 64 'GANANCIA - If gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then 'SOLO SE IMPLEMENTÓ PARA NC - If DdlMoneda.SelectedValue.ToEntero <> 1 Or gvr.DataKey("CveMoneda").ToEntero <> 1 Then - IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria - Dim TipoCambioDiferenciaCambiaria = If(ChkPagarConPesos.Checked, GlobalTipoCambio(gvr.DataKey("Fecha").ToDate).ToDecimal, tipoCambioNC) - Dim TipoCambioDiferenciaCompra = If(ChkPagarConDolares.Checked, GlobalTipoCambio(TxtFecha.Text.ToDate), TipoCambioCompra).ToDecimal - If TipoCambioDiferenciaCompra > TipoCambioDiferenciaCambiaria Then - ImporteMovimiento = (sumaAmortizacion * TipoCambioDiferenciaCompra) - (sumaAmortizacion * TipoCambioDiferenciaCambiaria) - ImporteMovimiento = ImporteMovimiento.RoundSQL() - importeMN = ImporteMovimiento - End If - - If ImporteMovimiento <> 0 Then - - Dim CveSubProyecto64 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto64, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0) Then - ErrorMovtosCxP = 1 - Exit For - End If - End If - - End If - End If - ImporteMovimiento = 0 - Case 65 'PERDIDA - If gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then 'SOLO SE IMPLEMENTÓ PARA NC - If DdlMoneda.SelectedValue.ToEntero <> 1 Or gvr.DataKey("CveMoneda").ToEntero <> 1 Then - IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria - Dim TipoCambioDiferenciaCambiaria = If(ChkPagarConPesos.Checked, GlobalTipoCambio(gvr.DataKey("Fecha").ToDate).ToDecimal, tipoCambioNC) - Dim TipoCambioDiferenciaCompra = If(ChkPagarConDolares.Checked, GlobalTipoCambio(TxtFecha.Text.ToDate), TipoCambioCompra).ToDecimal - If TipoCambioDiferenciaCambiaria > TipoCambioDiferenciaCompra Then - ImporteMovimiento = (sumaAmortizacion * TipoCambioDiferenciaCambiaria) - (sumaAmortizacion * TipoCambioDiferenciaCompra) - ImporteMovimiento = ImporteMovimiento.RoundSQL() - importeMN = ImporteMovimiento - End If - - If ImporteMovimiento <> 0 Then - Dim CveSubProyecto65 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto65, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0) Then - ErrorMovtosCxP = 1 - Exit For - End If - End If - - End If - End If - ImporteMovimiento = 0 - End Select - - If ImporteMovimiento <> 0 Then - 'Conta ContPAQ - If IdCtaContable = 0 Then - CuentasContablesInvalidas.Append("
" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString) - idCuentaContabilizacion = 0 - End If - - - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=If(tipoCambio = 1, 0, ImporteMovimiento), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=tipoCambioNC, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - Exit For - End If - - End If - Next - - End If - - End If - - End If - Next - - 'Si el importe total de la amortizacion es igual al saldo de la compra se registra IVA - If IVACompleto = False AndAlso UsuarioActual.Empresa.Funcionalidad(521) = "1" Then - If sumaAmortizacionCompleto = CompraSaldo Then - Dim PorcentajeImpuesto As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal - - - If TxtIVA.Text.ToDecimal > 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, True, TxtIVA.Text.ToDecimal, "", 14, "", Fecha, IdCtaIVAXAcreditar, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=TxtIVA.Text.ToDecimal * tipoCambio, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=If(tipoCambio = 1, 0, TxtIVA.Text.ToDecimal), PorcentajeImpuesto:=PorcentajeImpuesto, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - End If - - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, False, TxtIVA.Text.ToDecimal, "", 19, "", Fecha, IdCtaIVAAcreditable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=TxtIVA.Text.ToDecimal * tipoCambio, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=If(tipoCambio = 1, 0, TxtIVA.Text.ToDecimal), PorcentajeImpuesto:=PorcentajeImpuesto, CveSubProyecto:=CveSubProyectoAnticipo) Then - ErrorMovtosCxP = 1 - End If - End If - End If - End If - - 'Unificacion de PrePolizas - If UsuarioActual.Empresa.Funcionalidad(219) = "1" Then - If Not ObjConta.PrePolizaUnificacion(CvePrepolizaPadre, CvePrePolizaNueva) Then - ErrorMovtosCxP = 1 - Alert("No se pudo unificar la prepoliza", TipoMensaje.MsgError) - End If - - If ObjConta.SeUnifico Then - CvePrePolizaNueva = CvePrepolizaPadre 'para que se unifique siempre la prepolizanueva - End If - - End If - - 'Simplificacion de PrePolizas - If UsuarioActual.Empresa.Funcionalidad(220) <> "" Then - If Not ObjConta.PrePolizaSimplificacion(CvePrePolizaNueva, UsuarioActual.CveEmpresa) Then - ErrorMovtosCxP = 1 - Alert("No se pudo simplificar los movimientos", TipoMensaje.MsgError) - End If - End If - - 'Validacion de prepolizas - If ObjConta.ValidacionPrePolizaCuadre(CvePrePolizaNueva, 4) Then - If ObjConta.ValorPolizaDescuadre > 0 Then - GuardaLogAD($"Compras/Compras-Anticipos | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas") - 'ErrorMovtosCxP = 1 - End If - End If - - 'Conta ContPAQ - If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso ErrorMovtosCxP = 0 Then - If idCuentaContabilizacion > 0 Then - If ObjConta.ContabilizarPrePoliza(CvePrePolizaNueva, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then - alertaContabilizacion.AppendFormat("{1}<\a>
", ObjConta.ContaIdPoliza, ObjConta.ContaFolio) - Else - ErrorMovtosCxP = 1 - End If - If ErrorMovtosCxP = 0 Then - Alert("Se enviaron correctamente las siguientes pólizas:

" & alertaContabilizacion.ToString, ModExtensiones.TipoMensaje.MsgInformacion) - Else - Alert($"Ocurrio un error al contabilizar {ObjConta.AlertaMensaje}", TipoMensaje.MsgAdvertencia) - End If - Else - Alert(String.Format("No se puede contabilizar la Prepoliza debido a que las siguientes cuentas son inválidas:
{0}", CuentasContablesInvalidas), TipoMensaje.MsgAdvertencia) - End If - End If - - - Else 'Empresa Prueba - - For Each gvr As GridViewRow In GVAnticipos.Rows + For Each gvr As GridViewRow In GVAnticipos.Rows If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then CveCompraNC = gvr.DataKey("CveCompra").ToEntero @@ -9078,59 +8435,70 @@ Partial Class Compras_Compras PorcentajePago = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal / TxtTotal.Text.ToDecimal - 'Se agrega la nota de credito - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimientoCompra, gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, " ", CveConceptoCompra, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, CveCompraAmortizacion:=CveCompraNC, ImporteMX:=gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, CveSubProyecto:=CveSubProyectoAnticipo) Then + + Dim ImporteAnt As Decimal = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal + Dim ImporComisionAnticipo As Decimal = gvr.FCTextBox("TxtComision").Text.ToDecimal + Dim CvemonedaAnticipo As Integer = gvr.DataKey("CveMoneda").ToEntero + Dim TipoCambioAnt As Decimal = gvr.DataKey("TCCompra").ToDecimal + + If ImporComisionAnticipo = 0 Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimientoCompra, ImporteAnt, " ", CveConceptoCompra, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompraNC, CveProveedor:=CveProveedor, CveIE:=CveIE, CveCompraAmortizacion:=CveCompraNC, ImporteMX:=ImporteAnt, ImporteME:=If(TipoCambioAnt = 1, 0, ImporteAnt), CveSubProyecto:=CveSubProyectoAnticipo) Then ErrorMovtosCxP = 1 Exit For End If - - 'movimiento de pago proveedor - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimientoCompra, gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, " ", CveConceptoPago, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, CveCompraAmortizacion:=CveCompraNC, ImporteMX:=gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, CveSubProyecto:=CveSubProyectoAnticipo) Then + Else + Dim ImporteAntMNComision As Decimal = (ImporteAnt + ImporComisionAnticipo) * TipoCambioAnt + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimientoCompra, (ImporteAnt + ImporComisionAnticipo), "", CveConceptoCompra, "", TxtFechaPago.Text.ToDate, IdCtaContable, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteAntMNComision, ImporteME:=If(TipoCambioAnt = 1, 0, (ImporteAnt + ImporComisionAnticipo)), CveSubProyecto:=CveSubProyectoAnticipo) Then + ErrorMovtosCxP = 1 ErrorMovtosCxP = 1 - Exit For - End If - - 'si tiene iva y su proporcion - ImporteMovimiento = Math.Round(PorcentajePago * TxtIVA.Text.ToDecimal, 2) - If ImporteMovimiento > 0 Then - Dim PorcentajeImpuesto As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, " ", 14, " ", TxtFechaPago.Text.ToDate, IdCtaIVAXAcreditar, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, PorcentajeImpuesto:=PorcentajeImpuesto, CveSubProyecto:=CveSubProyectoAnticipo) Then ErrorMovtosCxP = 1 : Exit For - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, " ", 19, " ", TxtFechaPago.Text.ToDate, IdCtaIVAAcreditable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, PorcentajeImpuesto:=PorcentajeImpuesto, CveSubProyecto:=CveSubProyectoAnticipo) Then ErrorMovtosCxP = 1 : Exit For - - End If - - 'si tiene Ret iva y su proporcion - ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2) - If ImporteMovimiento > 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, " ", 15, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, CveSubProyecto:=CveSubProyectoAnticipo) Then ErrorMovtosCxP = 1 : Exit For - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, " ", 22, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, CveSubProyecto:=CveSubProyectoAnticipo) Then ErrorMovtosCxP = 1 : Exit For - - End If - - 'si tiene Ret ISR y su proporcion - ImporteMovimiento = Math.Round(PorcentajePago * TxtRetISR.Text.ToDecimal, 2) - If ImporteMovimiento > 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, " ", 16, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, CveSubProyecto:=CveSubProyectoAnticipo) Then ErrorMovtosCxP = 1 : Exit For - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, " ", 23, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteMovimiento, CveSubProyecto:=CveSubProyectoAnticipo) Then ErrorMovtosCxP = 1 : Exit For - End If + End If - 'actualizo una tabla de vinculaciones + Dim Pago As New CompraPago + Pago.ImportePago = ImporteAnt + Pago.CveIE = CveIE + Pago.CveMonedaPago = CvemonedaAnticipo + Pago.CveCompraAmortizacion = CveCompraNC + Pago.CveCreditoDetalle = -1 + Pago.OtroGastoIngreso = ImporComisionAnticipo - 'actualizo la cantidad en amortizaciones + Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal + Dim CompraActual As New Compra + CompraActual.CveCompra = CveCompra + CompraActual.CveTipoConceptoProveedor = CveTipoConcepto + CompraActual.CveProveedor = CveProveedor + CompraActual.CveMoneda = DdlMoneda.SelectedValue.ToEntero + CompraActual.SerieFolio = TxtSerie.Text.Trim & "-" & TxtFolio.Text.Trim + CompraActual.ProveedorNombre = HplProveedor.Text + CompraActual.TC = TipoCambio + CompraActual.Total = TxtTotal.Text.ToDecimal + CompraActual.IVA = TxtIVA.Text.ToDecimal + CompraActual.IEPS = TxtIEPS.Text.ToDecimal + CompraActual.RetIVA = TxtRetIVA.Text.ToDecimal + CompraActual.RetISR = TxtRetISR.Text.ToDecimal + CompraActual.CveConceptoRetISR = DdlRetISRConcepto.SelectedValue.ToEntero + CompraActual.CveConceptoRetIVA = DdlRetIVAConcepto.SelectedValue.ToEntero + CompraActual.PorcentajeIVA = PorcentajeIVA + CompraActual.UsuarioActual = UsuarioActual + CompraActual.CveSubProyecto = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero + CompraActual.IdCtaContableProv = CtaProveedor + CompraActual.IdCtaContableProvComplementaria = CtaProveedorComplementaria + CompraActual.EsImportacion = chkImportacion.Checked - If gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then - If Not ObjCompra.AmortizarCompra(CveCompra, CveCompraNC, gvr.FCTextBox("TxtAnticipo").Text.ToDouble, UsuarioActual.CveUsuario) Then - ErrorMovtosCxP = 2 - Exit For - End If + AplicaPrePolizaPagoCompra(CompraActual, pago, CvePrePoliza, ObjConta) - End If + + + 'If gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then + ' If Not ObjCompra.AmortizarCompra(CveCompra, CveCompraNC, gvr.FCTextBox("TxtAnticipo").Text.ToDouble, UsuarioActual.CveUsuario) Then + ' ErrorMovtosCxP = 2 + ' Exit For + + ' End If + + 'End If End If @@ -9139,11 +8507,11 @@ Partial Class Compras_Compras Next - End If 'Empresa Prueba - Select Case ErrorMovtosCxP + + Select Case ErrorMovtosCxP Case 0 Alert("El movimiento se aplicó correctamente.", TipoMensaje.MsgInformacion) ObjCompra.Commit() @@ -9184,7 +8552,7 @@ Partial Class Compras_Compras For Each gvr As GridViewRow In GVAnticipos.Rows If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then - ArrAnticipos.Add(New Anticipos With {.CvePrePoliza = gvr.DataKey("CvePrePoliza").ToEntero, .CveIE = gvr.DataKey("CveIE").ToString.ToEntero, .CveCompra = gvr.DataKey("CveCompra").ToEntero, .Importe = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, .TCCompra = gvr.DataKey("TCCompra").ToDecimal, .TipoMovto = gvr.DataKey("TipoDocto")}) + ArrAnticipos.Add(New Anticipos With {.CvePrePoliza = gvr.DataKey("CvePrePoliza").ToEntero, .CveIE = gvr.DataKey("CveIE").ToString.ToEntero, .CveCompra = gvr.DataKey("CveCompra").ToEntero, .Importe = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, .ImporteComision = gvr.FCTextBox("TxtComision").Text.ToDecimal, .TCCompra = gvr.DataKey("TCCompra").ToDecimal, .TipoMovto = gvr.DataKey("TipoDocto")}) End If Next @@ -10431,10 +9799,12 @@ Partial Class Compras_Compras #Region "GV'S" Protected Sub GVAnticipos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GVAnticipos.RowDataBound + If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.DBCampo("SerieFolio") = "" Then e.Row.Cells(0).Text = "" e.Row.Cells(5).Text = "" + e.Row.Cells(6).Text = "" e.Row.Cells(0).Width = Unit.Pixel(150) e.Row.CssClass = "Totales TextCenter" Select Case e.Row.DBCampo("TipoDocto") @@ -10451,6 +9821,7 @@ Partial Class Compras_Compras ElseIf e.Row.DBCampo("CveProveedor") = "" Then e.Row.Cells(0).Text = "" e.Row.Cells(5).Text = "" + e.Row.Cells(6).Text = "" e.Row.BackColor = Drawing.Color.LightGray Else If e.Row.DBCampo("Saldo").ToDouble < 0 Then e.Row.Cells(3).ForeColor = Drawing.Color.Red @@ -10458,7 +9829,44 @@ Partial Class Compras_Compras Dim ImporteAmortizacion As Decimal = If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0, TmpDT.SUMD("ImporteConImpuestos"), TxtTotal.Text.ToDecimal) e.Row.FCCheckBox("Chk").Attributes.Add("onclick", String.Format("chkAnt(this,{0},{1},{2});", e.Row.FCTextBox("TxtAnticipo").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), DdlMoneda.SelectedValue.ToEntero)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO - e.Row.FCTextBox("TxtAnticipo").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},this,{1},{2});", e.Row.FCCheckBox("Chk").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), DdlMoneda.SelectedValue.ToEntero)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO + + + If UsuarioActual.Empresa.CveEmpresa.Contiene(13, 83) Then + e.Row.FCTextBox("TxtAnticipo").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},this,{1},{2},{3},{4},{5},{6});", + e.Row.FCCheckBox("Chk").ClientID, + e.Row.DBCampo("Saldo"), + If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, + If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + DdlMoneda.SelectedValue.ToEntero, + e.Row.FCTextBox("TxtComision").ClientID)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO + + e.Row.FCTextBox("TxtComision").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},{6},{1},{2},{3},{4},{5},this);", + e.Row.FCCheckBox("Chk").ClientID, + e.Row.DBCampo("Saldo"), + If(CveCompra > 0, Saldo, ImporteAmortizacion), + e.Row.DBCampo("CveMoneda").ToEntero, + If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + DdlMoneda.SelectedValue.ToEntero, + e.Row.FCTextBox("TxtAnticipo").ClientID)) + Else + e.Row.FCTextBox("TxtAnticipo").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},this,{1},{2},{3},{4},{5});", + e.Row.FCCheckBox("Chk").ClientID, + e.Row.DBCampo("Saldo"), + If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, + If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + DdlMoneda.SelectedValue.ToEntero, + e.Row.FCTextBox("TxtComision").ClientID)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO + + e.Row.FCTextBox("TxtComision").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},{6},{1},{2},{3},{4},{5},this);", + e.Row.FCCheckBox("Chk").ClientID, + e.Row.DBCampo("Saldo"), + If(CveCompra > 0, Saldo, ImporteAmortizacion), + e.Row.DBCampo("CveMoneda").ToEntero, + If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), + DdlMoneda.SelectedValue.ToEntero, + e.Row.FCTextBox("TxtAnticipo").ClientID)) + End If + If ChkNCInv.Checked Then e.Row.FCCheckBox("Chk").CssClass = "ChkAntNC" diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index b4e9fa82b..64069bdad 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -5668,7 +5668,8 @@ Partial Class PopUpVerFactura Dim params As New List(Of ReportParameter) Dim CveFolio = "" CreaDT() - Dim ReporteEmpresa As New System.IO.FileInfo(String.Format("{0}Formatos/OrdenServicio.rdlc", UsuarioActual.Empresa.Ruta)) + + Dim RutaReporte As New System.IO.FileInfo(String.Format("{0}Formatos/OrdenServicio.rdlc", UsuarioActual.Empresa.Ruta)) If ObjOS.GetOrdenesServicios(CveOS, -1, -1, -1, -1, UsuarioActual.CveEmpresa) Then If ObjOS.DtResultados.Rows.Count > 0 Then @@ -5688,7 +5689,7 @@ Partial Class PopUpVerFactura params.Add(New ReportParameter("ClienteEstado", dr("Estado").ToString)) CveFolio = dr("Folio").ToString - If ReporteEmpresa.Exists Then + If RutaReporte.Exists Then params.Add(New ReportParameter("NoDeCliente", dr("CveCliente").ToString)) params.Add(New ReportParameter("RFC", dr("RFC").ToString)) params.Add(New ReportParameter("Vendedor", " ")) @@ -5706,7 +5707,10 @@ Partial Class PopUpVerFactura Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)) - If Not ReporteEmpresa.Exists Then + If Not RutaReporte.Exists Then + + RutaReporte = New System.IO.FileInfo(String.Format("{0}Empresas\Grales\Formatos\OrdenServicio.rdlc", ModExtensiones.DirectorioBaseEmpresas)) + params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString)) @@ -5734,7 +5738,7 @@ Partial Class PopUpVerFactura lrds.Add(rds2) ObjOS.Dispose() - ImprimirPDF(String.Format("Empresas/{0}/Formatos/OrdenServicio.rdlc", UsuarioActual.CveEmpresa), lrds, params, NombreArchivo:=String.Format("OrdenServicio-{0}", CveFolio)) + ImprimirPDF(RutaReporte.FullName, lrds, params, NombreArchivo:=String.Format("OrdenServicio-{0}", CveFolio)) End Sub Private Sub CreaDT() TmpDTOS = New DataTable diff --git a/Empresas/2/Formatos/ReciboDePago.rdlc b/Empresas/2/Formatos/ReciboDePago.rdlc new file mode 100644 index 000000000..4d16840be --- /dev/null +++ b/Empresas/2/Formatos/ReciboDePago.rdlc @@ -0,0 +1,9739 @@ + + + + + + + + + 2.55292cm + + + 3.0262cm + + + 9.76834cm + + + 2.55292cm + + + 2.63526cm + + + + + 0.49cm + + + + + true + true + + + + + Cantidad + + + + + + + Textbox24 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + UM + + + + + + + Textbox27 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Descripción + + + + + + + Textbox26 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + P. Unitario + + + + + + + Textbox36 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Importe + + + + + + + Textbox38 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.52062cm + + + + + true + true + + + + + =Parameters!Cantidad.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!UnidadMedida.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!Descripcion.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!PU.Value + + + + + + + Textbox37 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + true + true + + + + + =Parameters!Importe.Value + + + + + + + Textbox39 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + + + + + + + + + + + + + + + + + DataSet2 + 3.3876cm + 1.01062cm + 20.53564cm + + + + + + + + + 2.17514cm + + + 2.11178cm + + + 2.23655cm + + + 2.17856cm + + + 1.8cm + + + 1.8cm + + + 1.8cm + + + 1.99576cm + + + 2.17826cm + + + 2.29961cm + + + + + 0.49cm + + + + + true + true + + + + + UUID + + + + + + + Textbox6 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + 4 + + + + + + + + + true + true + + + + + Serie + + + + + + + Textbox3 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Folio + + + + + + + Textbox9 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Moneda + + + + + + + Textbox31 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Num. Parc. + + + + + + + Textbox8 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Saldo Anterior + + + + + + + Textbox19 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Monto Pagado + + + + + + + Textbox25 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.38146cm + + + + + true + true + + + + + =Fields!IdDocumento.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + 4 + + + + + + + + + true + true + + + + + =Fields!Serie.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Folio.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!MonedaDR.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!NumParcialidad.Value + + + + + + + NumParcialidad + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ImpSaldoAnt.Value + + + + + + + ImpSaldoAnt + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + true + true + + + + + =Fields!ImpPagado.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.07938cm + + + + + true + true + + + + + Impuesto + + + + + + + Textbox108 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + Top + + + + + + + + true + true + + + + + Tipo + + + + + + + Textbox109 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + Top + + + + + + + + true + true + + + + + Base + + + + + + + Textbox110 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + Top + + + + + + + + true + true + + + + + Tipo Factor + + + + + + + Textbox111 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + Top + + + + + + + + true + true + + + + + Tasa/Cuota + + + + + + + Textbox112 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + Top + + + + + + + + true + true + + + + + Importe + + + + + + + Textbox113 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + Top + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox53 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox54 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + OR Fields!Tra002BaseDR.Value > 0 + OR Fields!Tra003BaseDR.Value > 0 + OR Fields!Ret001BaseDR.Value > 0 + OR Fields!Ret002BaseDR.Value > 0 + OR Fields!Ret003BaseDR.Value > 0 + ,False,true) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.07938cm + + + + + true + true + + + + + ISR + + + + + + + Textbox61 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + Traslado + + + + + + + Textbox204 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!ImpPagado.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra001TipoFactorDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra001TasaOCuotaDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra001ImporteDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox63 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox64 + + = IIF( + Fields!Tra001BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.07938cm + + + + + true + true + + + + + IVA + + + + + + + Textbox61 + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + Traslado + + + + + + + Textbox204 + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!ImpPagado.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra002TipoFactorDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra002TasaOCuotaDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra002ImporteDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox83 + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox84 + + = IIF( + Fields!Tra002BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.07938cm + + + + + true + true + + + + + IEPS + + + + + + + Textbox61 + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + Traslado + + + + + + + Textbox204 + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!ImpPagado.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra003TipoFactorDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra003TasaOCuotaDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Tra003ImporteDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox73 + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox74 + + = IIF( + Fields!Tra003BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.07938cm + + + + + true + true + + + + + ISR + + + + + + + Textbox61 + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + Retención + + + + + + + Textbox207 + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!ImpPagado.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret001TipoFactorDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret001TasaOCuotaDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret001ImporteDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox93 + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox94 + + = IIF( + Fields!Ret001BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.07938cm + + + + + true + true + + + + + IVA + + + + + + + Textbox61 + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + Retención + + + + + + + Textbox207 + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!ImpPagado.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret002TipoFactorDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret002TasaOCuotaDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret002ImporteDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox103 + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox104 + + = IIF( + Fields!Ret002BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.07938cm + + + + + true + true + + + + + IEPS + + + + + + + Textbox59 + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + Retención + + + + + + + Textbox207 + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!ImpPagado.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret003TipoFactorDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret003TasaOCuotaDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + + + + + + + + true + true + + + + + =Fields!Ret003ImporteDR.Value + + + + + + + ImpPagado + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + es-MX + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox113 + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox114 + + = IIF( + Fields!Ret003BaseDR.Value > 0 + ,False,True) + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + + + + + + After + + + + + + + + + + + + + + + + + DataSet2 + 5.27225cm + 1.42708cm + 20.57566cm + 1 + + + + + + + + + 4.5cm + + + 1.74905cm + + + 1.5cm + + + 2.96606cm + + + 6.82934cm + + + 2.98695cm + + + + + 0.49cm + + + + + true + true + + + + + Fecha y hora de pago + + + + + + + Textbox45 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Moneda + + + + + + + Textbox21 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + TC + + + + + + + Textbox5 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Cta Ordenante + + + + + + + Textbox12 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Forma de Pago + + + + + + + Textbox48 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Total de Pago + + + + + + + Textbox50 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.52062cm + + + + + true + true + + + + + =Fields!FechaPago.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!MonedaP.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!TipoCambioP.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + true + true + + + + + =Fields!CtaOrdenante.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!FormaDePagoP.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Monto.Value + + + + + + + Monto + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + 0.6cm + + + + + true + true + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Total de Pago con letra: + + + + =Parameters!CantidadLetra.Value + + + + + + + Textbox16 + + + 2pt + 2pt + 2pt + 2pt + + + 3 + + + + + + + + + + + + + + + + + + + + + + After + + + + + + Before + + + + DataSet1 + 7.03975cm + 1.61062cm + 20.5314cm + 2 + + + + + + true + true + + + + + CFDI RELACIONADOS + + + + + + + Textbox5 + 4.78697cm + 0.04426cm + 0.45cm + 20.5314cm + 3 + + + 2pt + 2pt + 2pt + 2pt + + + + External + =Parameters!QR.Value + FitProportional + 3.98273in + 1.3in + 1.5in + 4 + + + + + + true + true + + + + + Cadena original del complemento de certificación digital del SAT: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!CadenaOriginal.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + No. Certificado: + + + + + + + White + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + UUID: + + + + + + + White + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Sello.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!SelloSAT.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!NoCertificado.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!UUIDPago.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Régímen: Régimen General de Ley Personas Morales. + + + + + + + + + Éste documento es una representación impresa de un CFDi + + + + + + + Textbox171 + 15.63197cm + 4.00059cm + 0.89979cm + 16.50467cm + 13 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Datos del Cliente: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Cliente: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Cliente.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!ClienteDireccion.Value + + + + , + + + + =Parameters!ClienteColonia.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Dirección: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Ciudad: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!ClienteCiudad.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!ClienteCP.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + CP: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + RFC Ordenante: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!RFCOrdenante.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Sello: + + + + + + + White + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Sello digital del SAT: + + + + + + + White + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Régimen Fiscal: + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!RegimenFiscalCodigo.Value + + + + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + 16.53176cm + + + + + 20.57566cm + + + 2.99735cm + true + true + + + true + + + + + RECIBO DE PAGO + + + + + + + Textbox3 + 0.01725cm + 5.84339in + 0.5cm + 2.24597in + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + + + + + =Parameters!SerieFolio.Value + + + + + + + Textbox3 + 0.21512in + 5.84339in + 0.60856cm + 2.24597in + 1 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + + + + + Fecha Timbre + + + + + + + + + + + + + + + + Textbox3 + 0.45471in + 5.84339in + 0.5cm + 2.24597in + 2 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + #bdd7ee + 2pt + 2pt + 2pt + 2pt + + + + true + + + + + =Parameters!FechaTimbre.Value + + + + + + + Textbox3 + 0.65156in + 5.84339in + 0.25114in + 2.24597in + 3 + + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + + #bdd7ee + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + true + + + + + AD Sistemas, Análisis y Diseño de Sistemas + + + + + + + + + Jesús Julián Moreno Quintana, R.F.C MOQJ851214HK4 + + + + + + + + + |www.adsistemas.mx | julian@adsistemas.mx| + + + + + + + Textbox4 + 0.03532cm + 1.91311in + 0.66099in + 3.62386in + 4 + + + 2pt + 2pt + 2pt + 2pt + + + + true + + + + + Hermosillo, Sonora, México. + + + + + + + + + Tel.: (662) 216-2270 + + + + + + + Textbox10 + 0.52493in + 2.69127in + 0.65513in + 2.06754in + 5 + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + 0.84667cm + true + true + + + true + true + + + + + ="Página " & Globals.PageNumber & " de " & Globals.TotalPages + + + + + + + Textbox35 + 0.17639cm + 17.56289cm + 0.41981cm + 2.94979cm + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Usuario: + + + + + + + + =Parameters!UsuarioImprimio.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Fecha Impresión: + + + + + + + + =Parameters!FechaImpresion.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 27.94cm + 21.59cm + 0.5cm + 0.5cm + 0.5cm + 0.5cm + 1.27cm + + true @@ -1515,9 +1516,9 @@ Textbox1 0.22833cm - 2.8349cm + 4.1049cm 0.6cm - 8.44903cm + 10.98903cm @@ -1565,9 +1566,9 @@ Textbox2 0.86361cm - 2.8349cm + 5.85115cm 0.52945cm - 8.44903cm + 7.58473cm 1 - - No. - - =Parameters!FolioOS.Value