Wrappers de VirtualXML para Delphi con RadStudio
VirtualXML
Estos wrappers (definiciones de funciones en una DLL) son necesarios para utilizar VirtualXML en sus programas basados en Delphi RadStudio.

Los wrappers para esta versión de Delphi difieren de los wrappers para Delphi 7, ya que RadStudio utiliza funciones de tipo WIDE, por lo que los nombres de las funciones de VirtualXML son distintos, pero simplemente hay que agregar una letra W al final de los nombres de cada función y la funcionalidad y paramétros son los mismos

Para utilizarlos copie las funciones que necesite del contenido que se muestra a continuación en la seccion VAR de sus PROCEDUREs que necesiten usar las funciones de VirtualXML en Delphi RadStudio.

Definir un nuevo Wrapper es muy sencillo

En la seccion var de su procedimiento siga la siguiente sintaxis:

Si la función devuelve un valor:

    <funcion virtualxmlW> :  function ( param1:<tipo>, param2:<tipo> .... paramN:<tipo>) : <tipo de valor retornado> ; cdecl;

Si la función no devuelve un valor:

    <funcion virtualxmlW> :  procedure ( param1:<tipo>, param2:<tipo> .... paramN:<tipo>)  ; cdecl;

Donde:

    <función virtualxmlW>: Es el nombre de cualquier función que esté contenida en VirtualXML.DLL y para esta versión de Delphi, los nombres de las funciones llevan una letra "W" mayúscula al final, que indica que la funcion es de tipo WIDE y para diferenciarlas de las variables tipo CDECL.
    <tipo> y <tipo de valor retornado >: es el tipo de variable que se esté utilizando, basicamente en VirtualXML con Delphi RadStudio solo se utilizan 2 tipo : PChar para cadenas de caracteres y LongInt para valores numéricos

Para hacer uso de los wrappers definidos en la seccion var, dentro del código de su programa (begin ... end) deberá cargar primero la DLL en memoria usando la función del Delphi RadSudio LoadLibrary() de esta manera:

    HBar := LoadLibrary("VirtualXML.DLL")

Y a continuación deberá asignar a los nombres de variables previamente definidos en la seccion var, las funciones contenidas en la DLL usando la función de Delphi GetProcAddress() de acuerdo a la siguiente sintaxis:

    <funcion virtualxmlW> := GetProcAddress(HBar, '<funcion virtualxml>');

Donde:

    <funcion virtualxmlW> es el nombre de cualquier función contenida en VirtualXML.DLL


Fecha de actualización : 13 de Septiembre 2022  se añadieron las funciones para Retenciones e Información de Pagos 2.0 y API de funciones administrativas del Portal VirtualPAC
Wrapper:

VirtualXML_NewW : function                                                           ( szVersion:PChar ): LongInt; cdecl;
VirtualXML_ProcesaDocumentoW : function ( p:LongInt; csd:PChar; key:PChar; keypwd:PChar; outfile:PChar ): LongInt; cdecl;
VirtualXML_ProcesaDocumentoSSLW : function ( p:LongInt; csd:PChar; key:PChar; keypwd:PChar; outfile:PChar ): LongInt; cdecl;
VirtualXML_GetValueW : function ( p:LongInt; value:LongInt ): PChar; cdecl;
VirtualXML_GetTimeWithDelayW : function ( p:LongInt; nSegs:LongInt ): PChar; cdecl;
VirtualXML_CancelaUUIDW : function ( szUser:PChar; szEmisor:PChar; szCert:PChar; szKey:PChar; szPwd:PChar; szUuid:PChar; szOut:PChar ): LongInt; cdecl;
VirtualXML_CancelaCFDIW : function ( szUser:PChar; szEmisor:PChar; szReceptor:PChar; szTotal:PChar; szUuid:PChar; szCert:PChar; szKey:PChar; szPwd:PChar; szResult:PChar; szLog:PChar ): LongInt; cdecl;
VirtualXML_GetStatusCFDIW : function ( szUser:PChar; szEmisor:PChar; szReceptor:PChar; szTotal:PChar; szUuid:PChar; szResult:PChar; szLog:PChar ): LongInt; cdecl;
VirtualXML_RecuperaAcuseCancelacionW: function ( sZUser:PChar; sZemisor:PChar; SzUuid:PChar; sZResult:PChar; szXMLAcuse:PChar; szLog:PChar; sZreserved:PChar ): LongInt; cdecl;
VirtualXML_CerKeyMatchW : function ( p:LongInt; szEmisor:PChar; szCSD:PChar; szKey:PChar; szKeyPwd:PChar ): LongInt; cdecl;
VirtualXML_CheckLicenceW : function ( user:PChar; llave:PChar; emisor:PChar ): LongInt; cdecl;
VirtualXML_CheckFileW : function ( szFile:PChar ): LongInt; cdecl;
VirtualXML_LoadW : function ( Archivo:PChar ): LongInt; cdecl;
VirtualXML_CerTo64W : function ( ArchivoCer:PChar ): PChar; cdecl;
VirtualXML_FileTo64W : function ( Archivo:PChar ): PChar; cdecl;
VirtualXML_ConsultaSaldosW: function ( usuario:PChar; rfcEmisor:PChar; DatoSolicitado:LongInt; ArchivoLog:PChar ): LongInt; cdecl;
VirtualXML_FirmaSellaDoctoW : function ( p:LongInt; csd:PChar; key:PChar; keypwd:PChar; outfile:PChar ): LongInt; cdecl;
VirtualXML_ConsultaEstadoCFDIW: function ( rfcEmisor :PChar; rfcReceptor:PChar; Total:PChar; UUID:PChar; OutLog:PChar ): LongInt; cdecl;
VirtualXML_GeneraCBBW: function ( Datos:PChar; Archivo:PChar; Dependencias:LongInt; RutaLog:PChar; AddLog:LongInt; Escala:LongInt; Margen:LongInt ): LongInt ; cdecl;
VirtualXML_MasivaDescargaW: function ( Usuario:PChar; ArchivoCerFiel:PChar; ArchivoKeyFiel:PChar; PwdKey:PChar; IdPaquete:PChar; ArchivoDescargado:PChar; ArchLog:PChar; Reservado:PChar ): LongInt; cdecl;
VirtualXML_MasivaSolicitaEmitidoXMLW: function ( Usuario:PChar; ArchivoCerFiel:PChar; ArchivoKeyFiel:PChar; PwdKey:PChar; RfcReceptor:PChar; FechaDesde:PChar; FechaHasta:PChar; ArchResultado:PChar; ArchLog:PChar; Reservado:PChar ): LongInt; cdecl;
VirtualXML_MasivaSolicitaEmitidoMetadataW: function ( Usuario:PChar; ArchivoCerFiel:PChar; ArchivoKeyFiel:PChar; PwdKey:PChar; RfcReceptor:PChar; FechaDesde:PChar; FechaHasta:PChar; ArchResultado:PChar; ArchLog:PChar; Reservado:PChar ): LongInt; cdecl;
VirtualXML_MasivaSolicitaRecibidoXMLW: function ( Usuario:PChar; ArchivoCerFiel:PChar; ArchivoKeyFiel:PChar; PwdKey:PChar; RfcEmisor:PChar; FechaDesde:PChar; FechaHasta:PChar; ArchResultado:PChar; ArchLog:PChar; Reservado:PChar ): LongInt; cdecl;
VirtualXML_MasivaSolicitaRecibidoMetadataW: function ( Usuario:PChar; ArchivoCerFiel:PChar; ArchivoKeyFiel:PChar; PwdKey:PChar; RfcEmisor:PChar; FechaDesde:PChar; FechaHasta:PChar; ArchResultado:PChar; ArchLog:PChar; Reservado:PChar ): LongInt; cdecl;
VirtualXML_MasivaVerificaW: function ( Usuario:PChar; ArchivoCerFiel:PChar; ArchivoKeyFiel:PChar; PwdKey:PChar; IdSolicitud:PChar; ArchResultado:PChar; ArchLog:PChar; Reservado:PChar ): LongInt; cdecl;
VirtualXML_FreeW : procedure ( p:LongInt ); cdecl;
VirtualXML_SetVirtualPACInfoW : procedure ( p:LongInt; szUser:PChar; servidor:PChar ); cdecl;
VirtualXML_SetCiberSATInfoW : procedure ( p:LongInt; userCiberPAC:PChar; llaveCiberPAC:PChar ); cdecl;
VirtualXML_SetComprobanteInfoW : procedure ( p:LongInt; serie:PChar; folio:PChar; fecha:PChar; tipoDeComprobante:PChar; formaDePago:PChar; subtotal:PChar; descuento:PChar; total:PChar; moneda:PChar; tipoCambio:PChar; condicionesDePago:PChar; metodoDePago:PChar; motivoDescuento:PChar ); cdecl;
VirtualXML_SetImpuestosLocalesInfoW : procedure ( p:LongInt; TotaldeTraslados:PChar; TotaldeRetenciones:PChar ); cdecl;
VirtualXML_AddImpuestoLocalRetenidoW : procedure ( p:LongInt; ImpLocRetenido:PChar; TasadeRetencion:PChar; Importe:PChar ); cdecl;
VirtualXML_AddImpuestoLocalTrasladadoW : procedure ( p:LongInt; ImpLocTrasladado:PChar; TasadeTraslado:PChar; Importe:PChar ); cdecl;
VirtualXML_AddDonatarias11W : procedure ( p:LongInt; noAutorizacion:PChar; fechaAutorizacion:PChar; leyenda:PChar ); cdecl;
VirtualXML_SetDllPathW : procedure ( p:LongInt; DllPath:PChar ); cdecl;
VirtualXML_GetValueInFileW : procedure ( p:LongInt; value:LongInt; archivo:PChar ); cdecl;
VirtualXML_ProcessFileW : procedure ( szFile:PChar ); cdecl;
VirtualXML_SetLogFileW : procedure ( p:LongInt; archivo:PChar ); cdecl;
VirtualXML_ShowValueW : procedure ( p:LongInt; lValue:LongInt; title:PChar ); cdecl;
VirtualXML_SaveW : procedure ( p:LongInt; archivo:PChar ); cdecl;
VirtualXML_GetValuesW : procedure ( p:LongInt; archivo:PChar; lFormat:LongInt ); cdecl;
VirtualXML_SetNomina12W: procedure ( p:LongInt; TipoNomina:PChar; FechaPago:PChar; FechaInicialPago:PChar; FechaFinalPago:PChar; NumDiasPagados:PChar; TotalPercepciones:PChar; TotalDeducciones:PChar; TotalOtrosPagos:PChar ); cdecl;
VirtualXML_Nomina12SetEmisorW: procedure ( p:LongInt; Curp:PChar; RegistroPatronal:PChar; RfcPatronOrigen:PChar; OrigenRecurso:PChar; MontoRecursoPropio :PChar ); cdecl;
VirtualXML_Nomina12SetReceptorW: procedure ( p:LongInt; Curp:PChar; NumSeguridadSocial:PChar; FechaInicioRelLaboral:PChar; Antiguedad:PChar; TipoContrato:PChar; Sindicalizado:PChar; TipoJornada:PChar; TipoRegimen:PChar; NumEmpleado:PChar; Departamento:PChar; Puesto:PChar; RiesgoPuesto:PChar; PeriodicidadPago:PChar; Banco:PChar; CuentaBancaria:PChar; SalarioBaseCotApor:PChar; SalarioDiarioIntegrado:PChar; ClaveEntFed:PChar ); cdecl;
VirtualXML_Nomina12AddSubContratacionW: procedure ( p:LongInt; RfcLabora:PChar; PorcentajeTiempo:PChar ); cdecl;
VirtualXML_Nomina12SetPercepcionesW: procedure ( p:LongInt; TotalSueldos:PChar; TotalSeparacionIndemnizacion:PChar; TotalJubilacionPensionRetiro:PChar; TotalGravado:PChar; TotalExento:PChar ); cdecl;
VirtualXML_Nomina12AddPercepcionW: procedure ( p:LongInt; TipoPercepcion:PChar; Clave:PChar; Concepto:PChar; ImporteGravado:PChar; ImporteExento:PChar; Dias:PChar; TipoHoras:PChar; HorasExtra:PChar; ImportePagado:PChar; ValorMercado:PChar; PrecioAlOtorgarse:PChar ); cdecl;
VirtualXML_Nomina12SetJubilacionPensionRetiroW: procedure ( p:LongInt; TotalUnaExhibicion:PChar; TotalParcialidad:PChar; MontoDiario:PChar; IngresoAcumulable:PChar; IngresoNoAcumulable:PChar ); cdecl;
VirtualXML_Nomina12SetSeparacionIndemnizacionW: procedure ( p:LongInt; TotalPagado:PChar; NumAniosServicio:PChar; UltimoSueldoMensOrd:PChar; IngresoAcumulable:PChar; IngresoNoAcumulable:PChar ); cdecl;
VirtualXML_Nomina12SetDeduccionesW: procedure ( p:LongInt; TotalOtrasDeducciones:PChar; TotalImpuestosRetenidos:PChar ); cdecl;
VirtualXML_Nomina12AddDeduccionW: procedure ( p:LongInt; TipoDeduccion:PChar; Clave:PChar; Concepto:PChar; Importe:PChar ); cdecl;
VirtualXML_Nomina12AddOtroPagoW: procedure ( p:LongInt; TipoOtroPago:PChar; Clave:PChar; Concepto:PChar; Importe:PChar; SaldoAFavor:PChar; Anio:PChar; RemanenteSalFav:PChar; SubsidioCausado:PChar ); cdecl;
VirtualXML_Nomina12AddIncapacidadW: procedure ( p:LongInt; DiasIncapacidad:PChar; TipoIncapacidad:PChar; ImporteMonetario:PChar ); cdecl;
VirtualXML_SetCompleteXML_cfdi33W: procedure ( p:LongInt; XMLCompleto:PChar ); cdecl;
VirtualXML_SetCfdiRelacionados_cfdi33W: procedure ( p:LongInt; TipoRelacion:PChar ); cdecl;
VirtualXML_SetPagos10W: procedure ( p:LongInt ); cdecl ;
VirtualXML_AddConceptoCuentaPredial_cfdi33W: procedure ( p:LongInt; Numero:PChar ); cdecl ;
VirtualXML_AddConceptoInformacionAduanera_cfdi33W: procedure ( p:LongInt; NumeroPedimento:PChar ); cdecl;
VirtualXML_SetAddendaText_cfdi33W: procedure ( p:LongInt; text:PChar ); cdecl;
VirtualXML_AddComplemento_cfdi33W: procedure ( p:LongInt; complementoXml:PChar ); cdecl;
VirtualXML_SetAddenda_cfdi33W: procedure ( p:LongInt; text:PChar ); cdecl;
VirtualXML_AddEntidadContabilidadW: procedure ( p:LongInt; IdContabilidad:PChar ); cdecl;
VirtualXML_AddCfdiRelacionado_cfdi33W: procedure ( p:LongInt; UUID:PChar ); cdecl;
VirtualXML_CartaPorte10SetFiguraTransporteW: procedure ( p:LongInt; CveTransporte:PChar ); cdecl;
VirtualXML_SetImpuestosInfo_cfdi33W: procedure ( p:LongInt; TotalImpuestosTrasladados:PChar; TotalImpuestosRetenidos:PChar ); cdecl;
VirtualXML_AddRetencion_cfdi33W: procedure ( p:LongInt; Impuesto:PChar; Importe:PChar ); cdecl;
VirtualXML_CCE11AddPropietarioW: procedure ( p:LongInt; NumRegIdTrib:PChar; ResidenciaFiscal:PChar ); cdecl;
VirtualXML_CCE11AddMercanciaDescripcionesEspecificasW: procedure ( p:LongInt; Marca:PChar; Modelo:PChar; SubModelo:PChar; NumeroSerie:PChar ); cdecl;
VirtualXML_SetEmisorInfo_cfdi33W: procedure ( p:LongInt; Rfc:PChar; Nombre:PChar; RegimenFiscal:PChar ); cdecl;
VirtualXML_AddEntidadW: procedure ( p:LongInt; ClaveEntidad:PChar; Ambito:PChar; IdContabilidad:PChar ); cdecl;
VirtualXML_SetLeyendasFiscales10W: procedure ( p:LongInt; Disposicion:PChar; Norma:PChar; TextoLeyenda:PChar ); cdecl;
VirtualXML_AddTraslado_cfdi33W: procedure ( p:LongInt; Impuesto:PChar; TipoFactor:PChar; TasaOCuota:PChar; Importe:PChar ); cdecl;
VirtualXML_SetCartaPorte10W: procedure ( p:LongInt; TranspInternac:PChar; EntradaSalidaMerc:PChar; ViaEntradaSalida:PChar; TotalDistRec:PChar ); cdecl;
VirtualXML_CartaPorte10AddMercanciaCantidadTransportaW: procedure ( p:LongInt; Cantidad:PChar; IDOrigen:PChar; IDDestino:PChar; CvesTransporte:PChar ); cdecl;
VirtualXML_SetReceptorInfo_cfdi33W: procedure ( p:LongInt; Rfc:PChar; Nombre:PChar; ResidenciaFiscal:PChar; NumRegIdTrib:PChar; UsoCFDI:PChar ); cdecl;
VirtualXML_AddConceptoTraslado_cfdi33W: procedure ( p:LongInt; Base:PChar; Impuesto:PChar; TipoFactor:PChar; TasaOCuota:PChar; Importe:PChar ); cdecl;
VirtualXML_AddConceptoRetencion_cfdi33W: procedure ( p:LongInt; Base:PChar; Impuesto:PChar; TipoFactor:PChar; TasaOCuota:PChar; Importe:PChar ); cdecl;
VirtualXML_AddConceptoComplementoIedu_cfdi33W: procedure ( p:LongInt; nombreAlumno:PChar; CURP:PChar; nivelEducativo:PChar; autRVOE:PChar; rfcPago:PChar ); cdecl;
VirtualXML_SetINE11W: procedure ( p:LongInt; TipoProceso:PChar; TipoComite:PChar; IdContabilidad:PChar; ClaveEntidad:PChar; Ambito:PChar; EntidadContabilidadIdContabilidad:PChar ); cdecl;
VirtualXML_CartaPorte10AddMercanciasTransporteFerroviarioCarroW: procedure ( p:LongInt; TipoCarro:PChar; MatriculaCarro:PChar; GuiaCarro:PChar; ToneladasNetasCarro:PChar; TipoContenedor:PChar; PesoContenedorVacio:PChar; PesoNetoMercancia:PChar ); cdecl;
VirtualXML_AddConceptoParte_cfdi33W: procedure ( p:LongInt; ClaveProdServ:PChar; NoIdentificacion:PChar; Cantidad:PChar; Unidad:PChar; Descripcion:PChar; ValorUnitario:PChar; Importe:PChar; NumeroPedimento:PChar ); cdecl;
VirtualXML_AddConcepto_cfdi33W: procedure ( p:LongInt; ClaveProdServ:PChar; NoIdentificacion:PChar; Cantidad:PChar; ClaveUnidad:PChar; Unidad:PChar; Descripcion:PChar; ValorUnitario:PChar; Importe:PChar; Descuento:PChar ); cdecl;
VirtualXML_SetServicioParcial10W: procedure ( p:LongInt; NumPerLicoAut:PChar; Calle:PChar; NoExterior:PChar; NoInterior:PChar; Colonia:PChar; Localidad:PChar; Referencia:PChar; Municipio:PChar; Estado:PChar; CodigoPostal:PChar ); cdecl;
VirtualXML_Pagos10AddPagoDoctoRelacionadoW: procedure ( p:LongInt; IdDocumento:PChar; Serie:PChar; Folio:PChar; MonedaDR:PChar; TipoCambioDR:PChar; MetodoDePagoDR:PChar; NumParcialidad:PChar; ImpSaldoAnt:PChar; ImpPagado:PChar; ImpSaldoInsoluto:PChar ); cdecl;
VirtualXML_CCE11AddMercanciaW: procedure ( p:LongInt; NoIdentificacion:PChar; FraccionArancelaria:PChar; CantidadAduana:PChar; UnidadAduana:PChar; ValorUnitarioAduana:PChar; ValorDolares:PChar; Marca:PChar; Modelo:PChar; SubModelo:PChar; NumeroSerie:PChar ); cdecl;
VirtualXML_SetComercioExterior11W: procedure ( p:LongInt; MotivoTraslado:PChar; TipoOperacion:PChar; ClaveDePedimento:PChar; CertificadoOrigen:PChar; NumCertificadoOrigen:PChar; NumeroExportadorConfiable:PChar; Incoterm:PChar; Subdivision:PChar; Observaciones:PChar; TipoCambioUSD:PChar; TotalUSD:PChar ); cdecl;
VirtualXML_CCE11SetEmisorW: procedure ( p:LongInt; Curp:PChar; Calle:PChar; NumeroExterior:PChar; NumeroInterior:PChar; Colonia:PChar; Localidad:PChar; Referencia:PChar; Municipio:PChar; Estado:PChar; Pais:PChar; CodigoPostal:PChar ); cdecl;
VirtualXML_CCE11SetReceptorW: procedure ( p:LongInt; NumRegIdTrib:PChar; Calle:PChar; NumeroExterior:PChar; NumeroInterior:PChar; Colonia:PChar; Localidad:PChar; Referencia:PChar; Municipio:PChar; Estado:PChar; Pais:PChar; CodigoPostal:PChar ); cdecl;
VirtualXML_CCE11AddDestinatarioW: procedure ( p:LongInt; NumRegIdTrib:PChar; Nombre:PChar; Calle:PChar; NumeroExterior:PChar; NumeroInterior:PChar; Colonia:PChar; Localidad:PChar; Referencia:PChar; Municipio:PChar; Estado:PChar; Pais:PChar; CodigoPostal:PChar ); cdecl;
VirtualXML_SetComprobanteInfo_cfdi33W: procedure ( p:LongInt; Serie:PChar; Folio:PChar; Fecha:PChar; FormaPago:PChar; CondicionesDePago:PChar; SubTotal:PChar; Descuento:PChar; Moneda:PChar; TipoCambio:PChar; Total:PChar; TipoDeComprobante:PChar; MetodoPago:PChar; LugarExpedicion:PChar; Confirmacion:PChar ); cdecl;
VirtualXML_SetCartaPorte20W: procedure ( p:LongInt; TranspInternac:PChar; EntradaSalidaMerc:PChar; PaisOrigenDestino:PChar; ViaEntradaSalida:PChar; TotalDistRec:PChar);cdecl;
VirtualXML_CartaPorte20AddUbicacionW: procedure ( p:LongInt; TipoUbicacion:PChar; IDUbicacion:PChar; RFCRemitenteDestinatario:PChar; NombreRemitenteDestinatario:PChar; NumRegIdTrib:PChar; ResidenciaFiscal:PChar; NumEstacion:PChar; NombreEstacion:PChar; NavegacionTrafico:PChar; FechaHoraSalidaLlegada:PChar; TipoEstacion:PChar; DistanciaRecorrida:PChar; Calle:PChar; NumeroExterior:PChar; NumeroInterior:PChar; Colonia:PChar; Localidad:PChar; Referencia:PChar; Municipio:PChar; Estado:PChar; Pais:PChar; CodigoPostal:PChar);cdecl;
VirtualXML_CartaPorte20SetMercanciasW: procedure ( p:LongInt; PesoBrutoTotal:PChar; UnidadPeso:PChar; PesoNetoTotal:PChar; NumTotalMercancias:PChar; CargoPorTasacion:PChar);cdecl;
VirtualXML_CartaPorte20AddMercanciaW: procedure ( p:LongInt; BienesTransp:PChar; ClaveSTCC:PChar; Descripcion:PChar; Cantidad:PChar; ClaveUnidad:PChar; Unidad:PChar; Dimensiones:PChar; MaterialPeligroso:PChar; CveMaterialPeligroso:PChar; Embalaje:PChar; DescripEmbalaje:PChar; PesoEnKg:PChar; ValorMercancia:PChar; Moneda:PChar; FraccionArancelaria:PChar; UUIDComercioExt:PChar; UnidadPesoMerc:PChar; PesoBruto:PChar; PesoNeto:PChar; PesoTara:PChar; NumPiezas:PChar);cdecl;
VirtualXML_CartaPorte20AddMercanciaPedimentosW: procedure ( p:LongInt; Pedimento:PChar);cdecl;
VirtualXML_CartaPorte20AddMercanciaGuiasIdentificacionW: procedure ( p:LongInt; NumeroGuiaIdentificacion:PChar; DescripGuiaIdentificacion:PChar; PesoGuiaIdentificacion:PChar);cdecl;
VirtualXML_CartaPorte20AddMercanciaCantidadTransportaW: procedure ( p:LongInt; Cantidad:PChar; IDOrigen:PChar; IDDestino:PChar; CvesTransporte:PChar);cdecl;
VirtualXML_CartaPorte20SetMercanciasAutotransporteW: procedure ( p:LongInt; PermSCT:PChar; NumPermisoSCT:PChar; ConfigVehicular:PChar; PlacaVM:PChar; AnioModeloVM:PChar; AseguraRespCivil:PChar; PolizaRespCivil:PChar; AseguraMedAmbiente:PChar; PolizaMedAmbiente:PChar; AseguraCarga:PChar; PolizaCarga:PChar; PrimaSeguro:PChar; SubTipoRem1:PChar; Placa1:PChar; SubTipoRem2:PChar; Placa2:PChar); cdecl;
VirtualXML_CartaPorte20SetMercanciasTransporteMaritimoW: procedure ( p:LongInt; PermSCT:PChar; NumPermisoSCT:PChar; NombreAseg:PChar; NumPolizaSeguro:PChar; TipoEmbarcacion:PChar; Matricula:PChar; NumeroOMI:PChar; AnioEmbarcacion:PChar; NombreEmbarc:PChar; NacionalidadEmbarc:PChar; UnidadesDeArqBruto:PChar; TipoCarga:PChar; NumCertITC:PChar; Eslora:PChar; Manga:PChar; Calado:PChar; LineaNaviera:PChar; NombreAgenteNaviero:PChar; NumAutorizacionNaviero:PChar; NumViaje:PChar; NumConocEmbarc:PChar; MatriculaContenedor:PChar; TipoContenedor:PChar; NumPrecinto:PChar);cdecl;
VirtualXML_CartaPorte20AddMercanciasTransporteMaritimoContenedorW: procedure ( p:LongInt; MatriculaContenedor:PChar; TipoContenedor:PChar; NumPrecinto:PChar); cdecl;
VirtualXML_CartaPorte20SetMercanciasTransporteAereoW: procedure ( p:LongInt; PermSCT:PChar; NumPermisoSCT:PChar; MatriculaAeronave:PChar; NombreAseg:PChar; NumPolizaSeguro:PChar; NumeroGuia:PChar; LugarContrato:PChar; CodigoTransportista:PChar; RFCEmbarcador:PChar; NumRegIdTribEmbarc:PChar; ResidenciaFiscalEmbarc:PChar; NombreEmbarcador:PChar); cdecl;
VirtualXML_CartaPorte20SetMercanciasTransporteFerroviarioW: procedure ( p:LongInt; TipoDeServicio:PChar; TipoDeTrafico:PChar; NombreAseg:PChar; NumPolizaSeguro:PChar; TipoDerechoDePaso:PChar; KilometrajePagado:PChar; TipoCarro:PChar; MatriculaCarro:PChar; GuiaCarro:PChar; ToneladasNetasCarro:PChar; TipoContenedor:PChar; PesoContenedorVacio:PChar; PesoNetoMercancia:PChar); cdecl;
VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioDerechosDePasoW: procedure ( p:LongInt; TipoDerechoDePaso:PChar; KilometrajePagado:PChar);cdecl;
VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioCarroW: procedure ( p:LongInt; TipoCarro:PChar; MatriculaCarro:PChar; GuiaCarro:PChar; ToneladasNetasCarro:PChar; TipoContenedor:PChar; PesoContenedorVacio:PChar; PesoNetoMercancia:PChar); cdecl;
VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioCarroContenedorW: procedure ( p:LongInt; TipoContenedor:PChar; PesoContenedorVacio:PChar; PesoNetoMercancia:PChar); cdecl;
VirtualXML_CartaPorte20AddFiguraTransporteTiposFiguraW: procedure ( p:LongInt; TipoFigura:PChar; RFCFigura:PChar; NumLicencia:PChar; NombreFigura:PChar; NumRegIdTribFigura:PChar; ResidenciaFiscalFigura:PChar; ParteTransporte:PChar; Calle:PChar; NumeroExterior:PChar; NumeroInterior:PChar; Colonia:PChar; Localidad:PChar; Referencia:PChar; Municipio:PChar; Estado:PChar; Pais:PChar; CodigoPostal:PChar);cdecl;
VirtualXML_CartaPorte20AddFiguraTransporteTiposFiguraPartesTransporteW: procedure ( p:LongInt; ParteTransporte:PChar); cdecl;
VirtualXML_SetLeyendasFiscales10FullW: procedure ( p:LongInt; Dis01:PChar; Norma01:PChar; Texto01:PChar; Dis02:PChar; Norma02:PChar; Texto02:PChar; Dis03:PChar; Norma03:PChar; Texto03:PChar; Dis04:PChar; Norma04:PChar; Texto04:PChar; Dis05:PChar; Norma05:PChar; Texto05:PChar; Dis06:PChar; Norma06:PChar; Texto06:PChar; Dis07 :PChar; Norma07 :PChar; Texto07 :PChar; Dis08 :PChar; Norma08 :PChar; Texto08 :PChar; Dis09 :PChar; Norma09:PChar; Texto09:PChar; Dis10:PChar; Norma10:PChar; Texto10:PChar ); cdecl;
VirtualXML_CancelaCFDI2022W : function ( szUsuario:PChar; szRfcEmisor:PChar; szMotivo:PChar; szUuid:PChar; szFolioSust:PChar; szCert:PChar; szKey:PChar; szPwd:PChar; szServer:PChar; szResult:PChar; szLog:PChar ) : LongInt; cdecl;
VirtualXML_CancelaCFDI2022SslW : function ( szUsuario:PChar; szRfcEmisor:PChar; szMotivo:PChar; szUuid:PChar; szFolioSust:PChar; szCert:PChar; szKey:PChar; szPwd:PChar; szServer:PChar; szResult:PChar; szLog:PChar ) : LongInt; cdecl;
VirtualXML_SetPagos20W : procedure ( p:LongInt; TotalRetencionesIVA:PChar; TotalRetencionesISR:PChar; TotalRetencionesIEPS:PChar; TotalTrasladosBaseIVA16:PChar; TotalTrasladosImpuestoIVA16:PChar; TotalTrasladosBaseIVA8:PChar; TotalTrasladosImpuestoIVA8:PChar; TotalTrasladosBaseIVA0:PChar; TotalTrasladosImpuestoIVA0:PChar; TotalTrasladosBaseIVAExento:PChar; MontoTotalPagos:PChar );cdecl;
VirtualXML_Pagos20AddPagoW : procedure ( p:LongInt; FechaPago:PChar; FormaDePagoP:PChar; MonedaP:PChar; TipoCambioP:PChar; Monto:PChar; NumOperacion:PChar; RfcEmisorCtaOrd:PChar; NomBancoOrdExt:PChar; CtaOrdenante:PChar; RfcEmisorCtaBen:PChar; CtaBeneficiario:PChar; TipoCadPago:PChar; CertPago:PChar; CadPago:PChar; SelloPago:PChar );cdecl;
VirtualXML_Pagos20AddPagoDoctoRelacionadoW : procedure ( p:LongInt; idDocumento:PChar; Serie:PChar; Folio:PChar; MonedadDR:PChar; EquivalenciaDR:PChar; NumParcialidad:PChar; ImpSaldoAnt:PChar; ImpPagado:PChar; ImpSaldoInsoluto:PChar; ObjetoImpDR:PChar );cdecl;
VirtualXML_Pagos20AddPagoDoctoRelacionadoRetencionDRW : procedure ( p:LongInt; BaseDR:PChar; ImpuestoDR:PChar; TipoFactorDR:PChar; TasaOCuotaDR:PChar; ImporteDR:PChar );cdecl;
VirtualXML_Pagos20AddPagoDoctoRelacionadoTrasladoDRW : procedure ( p:LongInt; BaseDR:PChar; ImpuestoDR:PChar; TipoFactorDR:PChar; TasaOCuotaDR:PChar; ImporteDR:PChar );cdecl;
VirtualXML_Pagos20AddPagoImpuestosPRetencionPW : procedure ( p:LongInt; ImpuestoP:PChar; ImporteP:PChar );cdecl;
VirtualXML_Pagos20AddPagoImpuestosPTrasladoPW : procedure ( p:LongInt; BaseP:PChar; ImpuestoP:PChar; TipoFactorP:PChar; TasaOCuotaP:PChar; ImporteP:PChar );cdecl;VirtualXML_SetPagos20W : procedure ( p:LongInt; TotalRetencionesIVA:PChar; TotalRetencionesISR:PChar; TotalRetencionesIEPS:PChar; TotalTrasladosBaseIVA16:PChar; TotalTrasladosImpuestoIVA16:PChar; TotalTrasladosBaseIVA8:PChar; TotalTrasladosImpuestoIVA8:PChar; TotalTrasladosBaseIVA0:PChar; TotalTrasladosImpuestoIVA0:PChar; TotalTrasladosBaseIVAExento:PChar; MontoTotalPagos:PChar);cdecl;
VirtualXML_AddCfdiRelacionado_cfdi40W : procedure ( p:LongInt; UUID:PChar ); cdecl;
VirtualXML_AddCfdiRelacionados_cfdi40W : procedure ( p:LongInt; TipoRelacion:PChar; UUID1:PChar; UUID2:PChar; UUID3:PChar; UUID4:PChar; UUID5:PChar; UUID6:PChar; UUID7:PChar; UUID8:PChar; UUID9:PChar; UUID10:PChar); cdecl;
VirtualXML_AddComplemento_cfdi40W : procedure ( p:LongInt; complementoXml:PChar ); cdecl;
VirtualXML_AddComplementoConcepto_cfdi40W : procedure ( p:LongInt; complementoXml:PChar ); cdecl;
VirtualXML_AddConcepto_cfdi40W : procedure ( p:LongInt; ClaveProdServ:PChar; NoIdentificacion:PChar; Cantidad:PChar; ClaveUnidad:PChar; Unidad:PChar; Descripcion:PChar; ValorUnitario:PChar; Importe:PChar; Descuento:PChar; ObjetoImp:PChar ); cdecl;
VirtualXML_AddConceptoCuentaPredial_cfdi40W : procedure ( p:LongInt; Numero:PChar ); cdecl;
VirtualXML_AddConceptoInformacionAduanera_cfdi40W : procedure ( p:LongInt; NumperoPedimento:PChar ); cdecl;
VirtualXML_AddConceptoParte_cfdi40W : procedure ( p:LongInt; ClaveProdServ:PChar; NoIdentificacion:PChar; Cantidad:PChar; Unidad:PChar; Descripcion:PChar; ValorUnitario:PChar; Importe:PChar; NumperoPedimento1:PChar; NumperoPedimento2:PChar; NumperoPedimento3:PChar; NumperoPedimento4:PChar; NumperoPedimento5:PChar ); cdecl;
VirtualXML_AddConceptoRetencion_cfdi40W : procedure ( p:LongInt; Base:PChar; Impuesto:PChar; Tipofactor:PChar; TasaOCuota:PChar; Importe:PChar ); cdecl;
VirtualXML_AddConceptoTraslado_cfdi40W : procedure ( p:LongInt; Base:PChar; Impuesto:PChar; Tipofactor:PChar; TasaOCuota:PChar; Importe:PChar ); cdecl;
VirtualXML_AddRetencion_cfdi40W : procedure ( p:LongInt; Impuesto:PChar; Importe:PChar ); cdecl;
VirtualXML_AddTraslado_cfdi40W : procedure ( p:LongInt; Impuesto:PChar; TipoFactor:PChar; TasaOCuota:PChar; Importe:PChar; Base:PChar ); cdecl;
VirtualXML_SetAddenda_cfdi40W : procedure ( p:LongInt; text:PChar ); cdecl;
VirtualXML_SetAddendaText_cfdi40W : procedure ( p:LongInt; text:PChar ); cdecl;
VirtualXML_SetCompleteXML_cfdi40W : procedure ( p:LongInt; TextoXMLoArchivoXML:PChar); cdecl;
VirtualXML_SetComprobanteInfo_cfdi40W : procedure ( p:LongInt; Serie:PChar; Folio:PChar; Fecha:PChar; FormaDePago:PChar; CondicionesDePago:PChar; SubTotal:PChar; Descuento:PChar; Moneda:PChar; TipoCambio:PChar; Total:PChar; TipoDeComprobante:PChar; MetodoDePago:PChar; LugarExpedicion:PChar; Confirmacion:PChar; Exportacion:PChar ); cdecl;
VirtualXML_SetConceptoACuentaTerceros_cfdi40W : procedure ( p:LongInt; RfcACuentaTerceros:PChar; NombreACuentaTerceros:PChar; RegimenFiscalACuentaTerceros:PChar; DomicilioFiscalACuentaTerceros:PChar ); cdecl;
VirtualXML_SetEmisorInfo_cfdi40W : procedure ( p:LongInt; RFC:PChar; Nombre:PChar; RegimenFiscal:PChar; FacAtrAdquirente:PChar ); cdecl;
VirtualXML_SetInformacionGlobal_cfdi40W : procedure ( p:LongInt; Periodicidad:PChar; Meses:PChar; Año:PChar ); cdecl;
VirtualXML_SetImpuestosInfo_cfdi40W : procedure ( p:LongInt; totalImpuestosTrasladados:PChar; totalImpuestosRetenidos:PChar ); cdecl;
VirtualXML_SetReceptorInfo_cfdi40W : procedure ( p:LongInt; RFC:PChar; Nombre:PChar; ResidenciaFiscal:PChar; NumRegIdTrib:PChar; UsoCFDI:PChar; DomicilioFiscalReceptor:PChar; RegimenFiscalReceptor:PChar ); cdecl;
Utils_SendEmailW : function ( SmtpServer:PChar; int:LongInt; SmtpUserName:PChar; SmtpPassword:PChar; MessageTo:PChar; MessageFrom:PChar; MessageSubjet:PChar; MessageBody:PChar; MessageAttach1:PChar; MessageAttach2:PChar; MessageAttach3:PChar; OutLog:PChar; Reserved:PChar ) : LongInt; cdecl
VirtualXML_ApiEmisorAddW : function ( apikey:PChar; usuario:PChar; rfcemisor:PChar; pwdconsulta:PChar; razonsocial:PChar; email:PChar; contacto:PChar; asignacion:LongInt; suspendido:LongInt; notificacion:LongInt; outLog:PChar; reserved:PChar )W : LongInt; cdecl;
VirtualXML_ApiEmisorUpdW : function ( apikey:PChar; usuario:PChar; rfcemisor:PChar; pwdconsulta:PChar; razonsocial:PChar; email:PChar; contacto:PChar; suspendido:LongInt; notificacion:LongInt; outLog:PChar; reserved:PChar ): LongInt; cdecl;
VirtualXML_ApiEmisorAsignaW : function ( apikey:PChar; usuario:PChar; rfcemisor:PChar; asignacion:LongInt; threshold:LongInt; limit:LongInt; active:LongInt; outLog:PChar; reserved:PChar ): LongInt; cdecl;
VirtualXML_ApiUsuarioAddW : function ( apikey:PChar; usuario:PChar; distribuidor:PChar; pwd:PChar; razonsocial:PChar; email:PChar; contacto:PChar; rfc:PChar; asignacion:LongInt; outLog:PChar; xtra:PChar; reserved:PChar ): LongInt; cdecl;
VirtualXML_ApiUsuarioUpdW : function ( apikey:PChar; usuario:PChar; distribuidor:PChar; pwd:PChar; razonsocial:PChar; email:PChar; contacto:PChar; rfc:PChar; outLog:PChar; xtra:PChar; reserved:PChar ): LongInt; cdecl;
Retenciones_NewWithLogW : function ( szVersion:PChar; logfile:PChar ): LongInt; cdecl;
Retenciones_SetVirtualPACInfoW : procedure ( p:LongInt; szUser:PChar; servidor:PChar ); cdecl;
Retenciones_ProcesaDocumentoW : function ( p:LongInt; csd:PChar; key:PChar; keypwd:PChar; outfile:PChar ): LongInt; cdecl;
Retenciones_FreeW : procedure ( p:LongInt ); cdecl;
Retenciones_SetAddendaTextW : procedure ( p:LongInt; text:PChar ); cdecl;
Retenciones_SetAddendaXMLW : procedure ( p:LongInt; xmlAddenda:PChar ); cdecl;
Retenciones_SetRetencionesCfdiRetenRelacionados: procedure ( p:LongInt; TipoRelacion:PChar; UUID:PChar ); cdecl;
Retenciones_SetRetencionesEmisorW : procedure ( p:LongInt; RfcE:PChar; NomDenRazSocE:PChar; RegimenFiscalE:PChar ); cdecl;
Retenciones_SetRetencionesInfoW : procedure ( p:LongInt; FolioInt:PChar; FechaExp:PChar; LugarExpRetenc:PChar; CveRetenc:PChar; DescRetenc:PChar ); cdecl;
Retenciones_SetRetencionesPeriodoW : procedure ( p:LongInt; MesIni:PChar; MesFin:PChar; Ejercicio:PChar ); cdecl;
Retenciones_SetRetencionesReceptorW : procedure ( p:LongInt; NacionalidadR:PChar; RfcR:PChar; NomDenRazSocRNacional:PChar; CurpR:PChar; DomicilioFiscalR:PChar; NumRegIdTribR:PChar; NomDenRazSocRExtranjero:PChar ); cdecl;
Retenciones_SetRetencionesTotalesW : procedure ( p:LongInt; MontoTotOperacion:PChar; MontoTotGrav:PChar; MontoTotExent:PChar; MontoTotRet:PChar; UtilidadBimestral:PChar; ISRCorrespondiente:PChar ); cdecl;
Retenciones_AddRetencionesTotalesImpRetenidosW : procedure ( p:LongInt; BaseRet:PChar; ImpuestoRet:PChar; MontoRet:PChar; TipoPagoRet:PChar ); cdecl;
Retenciones_SetComplementoArrendamientoenfideicomiso10W : procedure ( p:LongInt; PagProvEfecPorFiduc:PChar; RendimFideicom:PChar; DeduccCorresp:PChar; MontTotRet:PChar; MontResFiscDistFibras:PChar; OtrosConceptDistr:PChar; DescrMontOtrosConceptDistr:PChar ); cdecl;
Retenciones_SetComplementoDividendos10W : procedure ( p:LongInt; CveTipDivOUtil:PChar; MontISRAcredRetMexico:PChar; MontISRAcredRetExtranjero:PChar; MontRetExtDivExt:PChar; TipoSocDistrDiv:PChar; ISRAcredNal:PChar; MontDivAcumNal:PChar; MontDivAcumExt:PChar; ProporcionRem:PChar ); cdecl;
Retenciones_SetComplementoEnajenaciondeAcciones10W : procedure ( p:LongInt; ContratoIntermediacion:PChar; Ganancia:PChar; Perdida:PChar ); cdecl;
Retenciones_SetComplementoFideicomisonoempresarial10W : procedure ( p:LongInt; MontTotEntradasPeriodo:PChar; PartPropAcumDelFideicom:PChar; PropDelMontTotEntradas:PChar; Concepto:PChar; MontTotEgresPeriodo:PChar; PartPropDelFideicom:PChar; PropDelMontTotSalidas:PChar; ConceptoS:PChar; MontRetRelPagFideic:PChar; DescRetRelPagFideic:PChar ); cdecl;
Retenciones_SetComplementoIntereses10W : procedure ( p:LongInt; SistFinanciero:PChar; RetiroAORESRetInt:PChar; OperFinancDerivad:PChar; MontIntNominal:PChar; MontIntReal:PChar; Perdida:PChar ); cdecl;
Retenciones_SetComplementoIntereseshipotecarios10W : procedure ( p:LongInt; CreditoDeInstFinanc:PChar; SaldoInsoluto:PChar; PropDeducDelCredit:PChar; MontTotIntNominalesDev:PChar; MontTotIntNominalesDevYPag:PChar; MontTotIntRealPagDeduc:PChar; NumContrato:PChar ); cdecl;
Retenciones_SetComplementoOperacionesconderivados10W : procedure ( p:LongInt; MontGanAcum:PChar; MontPerdDed:PChar ); cdecl;
Retenciones_SetComplementoPagosaextranjeros10W : procedure ( p:LongInt; EsBenefEfectDelCobro:PChar; PaisDeResidParaEfecFisc:PChar; ConceptoPagoNoBeneficiario:PChar; DescripcionConceptoNoBeneficiario:PChar; RFC:PChar; CURP:PChar; NomDenRazSocB:PChar; ConceptoPagoBeneficiario:PChar; DescripcionConceptoBeneficiario:PChar ); cdecl;
Retenciones_SetComplementoPlanesderetiro11W : procedure ( p:LongInt; SistemaFinanc:PChar; MontTotAportAnioInmAnterior:PChar; MontIntRealesDevengAniooInmAnt:PChar; HuboRetirosAnioInmAntPer:PChar; MontTotRetiradoAnioInmAntPer:PChar; MontTotExentRetiradoAnioInmAnt:PChar; MontTotExedenteAnioInmAnt:PChar; HuboRetirosAnioInmAnt:PChar; MontTotRetiradoAnioInmAnt:PChar; NumReferencia:PChar; TipoAportacionODeposito1:PChar; MontAportODep1:PChar; RFCFiduciaria1:PChar; TipoAportacionODeposito2:PChar; MontAportODep2:PChar; RFCFiduciaria2:PChar; TipoAportacionODeposito3:PChar; MontAportODep3:PChar; RFCFiduciaria3:PChar ); cdecl;
Retenciones_SetComplementoPlataformasTecnologicas10W : procedure ( p:LongInt; Periodicidad:PChar; NumServ:PChar; MonTotServSIVA:PChar; TotalIVATrasladado:PChar; TotalIVARetenido:PChar; TotalISRRetenido:PChar; DifIVAEntregadoPrestServ:PChar; MonTotalporUsoPlataforma:PChar; MonTotalContribucionGuber:PChar ); cdecl;
Retenciones_AddComplementoPlataformasTecnologicas10DetallesDelServicioW : procedure ( p:LongInt; FormaPagoServ:PChar; TipoDeServ:PChar; SubTipServ:PChar; RFCTerceroAutorizado:PChar; FechaServ:PChar; PrecioServSinIVA:PChar; BaseTrasladados:PChar; ImpuestoTrasladados:PChar; TipoFactorTrasladados:PChar; TasaCuotaTrasladados:PChar; ImporteTrasladados:PChar; ImpContrib:PChar; EntidadDondePagaLaContribucion:PChar; BaseComision:PChar; PorcentajeComision:PChar; ImporteComision:PChar ); cdecl;
Retenciones_SetComplementoPremios10W : procedure ( p:LongInt; EntidadFederativa:PChar; MontTotPago:PChar; MontTotPagoGrav:PChar; MontTotPagoExent:PChar ); cdecl;
Retenciones_SetComplementoSectorFinanciero10W : procedure ( p:LongInt; IdFideicom:PChar; NomFideicom:PChar; DescripFideicom:PChar ); cdecl;