Problema con HTTPRIO
Hola a todos, en primer lugar daros la enhorabuena por la gran aportación que estáis realizando sobre este tema. Mi problema es el siguiente: Uso Delphi 2010 y el componente HTTPRIO no tiene la propiedad HTTPWebNode.ClientCertificate para el envío del certificado. ¿ Alguien sabe como poder hacerlo ?. Por otro lado, creo que alguien ha implementado la llamada al webservice mediante Indy y OpenSSL. ¿ Teneis algún ejemplo de cómo hacerlo ?
Saludos, |
Hola francisco,
Si no tienes esa propiedad, puedes hacerlo como en el primer ejemplo publicado por newtron (.rar) que NO utilizaba esa propiedad. Luego ya puedes ir mezclando códigos. por otro lado: hoy SIN TOCAR NADA me da el siguiente error: Código:
DTD está prohibido. Ahora estoy esperando a Marzo, introduciendo pequeñas mejoras en espera que abran la web de comprobación y que me asesoren sobre como enviar facturas. Saludos ! Jesús |
El error completo:
(es bonito, ¿eh?) Código:
Se ha producido un error: |
Cita:
Saludos |
Cita:
Probaré de enviar todas las facturas con mis datos (NIF y nombre). Tienes razón. En realidad no hay nada irregular en emitir una serie de facturas a una misma persona, menos aún cuando queda claro que se trata de pruebas. Saludos cordiales. |
ahora vuelve a funcionar con normalidad. .....
:eek: ¿y con esto llevaban ya un año de funcionamiento? ¿el periodo de prueba es para los desarrolladores o para los técnicos de la aeat? (dejo las preguntas ahí) Saludos ! |
por cierto, alguien ha probado a ¿modificar una factura x otra completamente distinta?
no las reconoce. Creo que si el "error registral" esta en las bases, importes, etc... te dice que no esta registrada. si no cambias importes, no hay problema. saludos ! |
Cita:
Por cierto lo del error de las 13 facturas a la vez creo que es un problema nuestro del delphi o de algún parametro que tengamos que configurar en el HttPRIO. Lo digo por que he hecho un envío con la utilidad Wizdler del firefox de más de 13 y me ha funcionado correctamente. No se si ayer alguien estuvo en la reunión pero comentaban que enviar las facturas de una en una, además de aumenar la probabilidad de fallo de conexión influirá en la velocidad de respuesta del sistema. Un Saludo. |
vamos a ver...
mi prueba: intento pasar bloques de 15 (antes pasaba en bloques de 1) el primer bloque ya NO pasa. Da ese error de certificado. el resto de bloques NO pasa sea de 15 o menos.... dando el mismo error. No pasa ni una sola factura. parece "perder el certificado" de alguna manera que no comprendo. saludos ! |
Keys: ¿en la prueba con widzler, has tenido en cuenta que el wsdl que viene de hacienda apunta hacia el puerto de verdad? ...
que yo recuerde, porque inmediatamente tras importarlo lo cambie en el .pas y lo tengo asi, comentado: const defWSDL = 'http://www.agenciatributaria.es/static_files/AEAT/Contenidos_Comunes/La_Agencia_Tributaria/Modelos_y_formularios/Suministro_inmediato_informacion/FicherosSuministros/V_05/SuministroFactRecibidas.wsdl'; defURL = 'xxxxxxxxxxxx'; defSvc = 'siiService'; defPrt = 'SuministroFactRecibidasPruebas'; //'SuministroFactRecibidas'; Saludos ! |
Si. al enviar con widzler lo único que hay que hacer es indicarle el WSDL y luego seleccionar por que puerto a enviar. Lo hace todo automáticamente. El importador de delphi no lo hace bien y como tu dices hay que cambiar los parametros por defecto que te propone. El fichero xml que he enviado es el que he generado con delphi.
Por cierto, he intentado enviar mas de 15 elementos por el suministro de cobros de facturas emitidas y ha funcionado correctamente. De momento sólo me pasa con las emitidas o es que en cobros el error dará con más elementos. Como ya he comentado antes yo creo que es de algo que hay que configurar en delphi. Tambien he probado a configurar el componente THTTPRIO en las propiedades Coverter.Options Sodocument y SoliteralParams que en la información del sii dice que hay que marcarlo pero tampoco funciona. Un Saludo. |
Hola, yo puedo pasar facturas emitidas sin problemas. He pasado dos bloques de 100 facturas cada uno. El error tiene que estar en otro lado.
|
¿Estas haciendolo con wsdl importer de delphi o de que forma?
|
Si, con el wsdl importer. Los datos que le estoy pasando son reales, o sea, una empresa que está dada de alta en el REDEME y con su certificado. También he probado la modificación en bloque de otras 100 facturas y también funciona.
|
no se si puedes poner un pequeño ejemplo de como hacerlo. Me estoy volviendo majareta y no consigo ver que es lo que esta mal. Y como puedes ver no soy el único.
|
pues si. x favor. algo que se pueda descargar mejor. ;)
¿el certificado que usas es .pfx? ¿y modificar modificas cualquier dato de la factura, hasta el punto de poder cambiar una por otra? :eek: (conservando su numero y fecha) Saludos ! |
Buenas a todos.
Yo ando liado también con este tema. Es la primera vez que toco los Web Services y puedo estar equivocado en lo que diré a continuación: El proyecto lo estoy realizando en C#, que por lo que he leído hay gente que también lo está haciendo con este lenguaje. Pues bien, yo estoy utilizando HttpWebRequest para lanzar una petición al servidor. De momento he conseguido, con el certificado que me aparezca el mensaje de "Esta URL corresponde a un Web Service". El problema aparece cuando intento enviar el XML con la información y me sale: Error 1304: "No se permite contenido en el prólogo" -> XML no válido o mal formado |
Hola, os pongo el ejemplo que estoy enviando:
Los cifs los he cambiado, han de ser reales. El certificado que uso es PFX. procedure TForm1.CrearSumLRFacturasEmitidasTest(Var ASumLRFacturasEmitidas:SuministroLRFacturasEmitidas); Var ARegLRFacturasEmitidas:Array_Of_LRfacturasEmitidasType; AFacturasAgrupadas:FacturasAgrupadas; { Array array of IDFacturaAgrupada; } AFacturasRectificadas:FacturasRectificadas; { Array array of IDFacturaRectificada; } ADatosInmueble:DatosInmueble; {Array array of DetalleInmueble; } ADesgloseIvaDF,ADesgloseIvaDOPS,ADesgloseIvaDOEN:DesgloseIVA; {Array array of DetalleIVA2; } I:Integer; Begin {$REGION 'CABECERA'} ASumLRFacturasEmitidas.Cabecera := CabeceraSii.Create; ASumLRFacturasEmitidas.Cabecera.IDVersionSii:=VersionSiiType(0); ASumLRFacturasEmitidas.Cabecera.Titular:=PersonaFisicaJuridicaESType.Create; ASumLRFacturasEmitidas.Cabecera.Titular.NombreRazon:=xxxxxxxx, S.L'; //ASumLRFacturasEmitidas.Cabecera.Titular.NIFRepresentante:=''; { OPCIONAL } ASumLRFacturasEmitidas.Cabecera.Titular.NIF:='B04xxxxxxx'; ASumLRFacturasEmitidas.Cabecera.TipoComunicacion:=ClaveTipoComunicacionType(0); {$ENDREGION} { BUCLE FACTURAS } SetLength(ARegLRFacturasEmitidas, 101); for I := 0 to 100 do Begin ARegLRFacturasEmitidas[i]:=LRFacturasEmitidasType.Create; {$REGION 'PERIODOIMPOSITIVO'} ARegLRFacturasEmitidas[i].PeriodoImpositivo:=PeriodoImpositivo.Create; ARegLRFacturasEmitidas[i].PeriodoImpositivo.Ejercicio:='2016'; ARegLRFacturasEmitidas[i].PeriodoImpositivo.Periodo:=TipoPeriodoType(11); {$ENDREGION} {$REGION 'IDFACTURA'} ARegLRFacturasEmitidas[i].IDFactura:=IDFacturaExpedidaType.Create; With ARegLRFacturasEmitidas[i].IDFactura do begin IDEmisorFactura:=IDEmisorFactura3.Create; IDEmisorFactura.NIF:='B04xxxxxxx'; NumSerieFacturaEmisor:='16-'+IntToStr(0+I); { Número de la factura del emisor. En caso de asientos resúmenes número inicial de factura } //NumSerieFacturaEmisorResumenFin:='16-1251'; { OPCIONAL. Campo específico para asientos resumen. Se corresponde con el número y serie de la última factura } FechaExpedicionFacturaEmisor:='10-12-2016'; end; {$ENDREGION} {$REGION 'FACTURAEXPEDIDA'} ARegLRFacturasEmitidas[i].FacturaExpedida:=FacturaExpedidaType.Create; ARegLRFacturasEmitidas[i].FacturaExpedida.TipoFactura:=ClaveTipoFacturaType(0); { Clave del tipo de factura } // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoRectificativa:=ClaveTipoRectificativaType(0); { OPCIONAL. Clave del tipo de factura } {$REGION 'FACTURASAGRUPADAS OPCIONAL'} // SetLength(AFacturasAgrupadas, 1); // AFacturasAgrupadas[i]:=IDFacturaARType.Create; // AFacturasAgrupadas[i].NumSerieFacturaEmisor:='FV-500'; // AFacturasAgrupadas[i].FechaExpedicionFacturaEmisor:='15-12-2016'; // // ARegLRFacturasEmitidas[i].FacturaExpedida.FacturasAgrupadas:=AFacturasAgrupadas; {$ENDREGION} {$REGION 'FACTURASRECTIFICADAS OPCIONAL'} // SetLength(AFacturasRectificadas, 1); // AFacturasRectificadas[i]:=IDFacturaARType.Create; // AFacturasRectificadas[i].NumSerieFacturaEmisor:='FV-500'; // AFacturasRectificadas[i].FechaExpedicionFacturaEmisor:='15-12-2016'; // // ARegLRFacturasEmitidas[i].FacturaExpedida.FacturasRectificadas:=AFacturasRectificadas; {$ENDREGION} {$REGION 'IMPORTERECTIFICACION OPCIONAL'} // ARegLRFacturasEmitidas[i].FacturaExpedida.ImporteRectificacion:=DesgloseRectificacionType.Create; // ARegLRFacturasEmitidas[i].FacturaExpedida.ImporteRectificacion.BaseRectificada:='100.10'; {Base imponible de las facturas/factura sustituida } // ARegLRFacturasEmitidas[i].FacturaExpedida.ImporteRectificacion.CuotaRectificada:='10.10'; { Cuota repercutida o soportada de las facturas/factura sustituida } // ARegLRFacturasEmitidas[i].FacturaExpedida.ImporteRectificacion.CuotaRecargoRectificado:='2.00'; { OPCIONAL.Cuota recargo de equivalencia de las facturas/factura sustituida } {$ENDREGION} {$REGION 'FECHAOPERACION OPCIONAL'} // ARegLRFacturasEmitidas[i].FacturaExpedida.FechaOperacion:='05-12-2016'; { OPCIONAL. Fecha en la que se ha realizado la operación siempre que sea diferente a la fecha de expedición } {$ENDREGION} {$REGION 'CLAVE REGIMEN ESPECIAL O TRANSCENDENCIA'} ARegLRFacturasEmitidas[i].FacturaExpedida.ClaveRegimenEspecialOTrascendencia:=IdOperacionesTrascendenciaTributariaType(0); { Clave que identificará el tipo de operación o el régimen especial con transcendencia tributaria } {$ENDREGION} {$REGION 'IMPORTETOTAL'} ARegLRFacturasEmitidas[i].FacturaExpedida.ImporteTotal:='2420.00'; { OPCIONAL ??. Importe total de la factura } {$ENDREGION} {$REGION 'BASE IMPONIBLE A COSTE OPCIONAL'} // ARegLRFacturasEmitidas[i].FacturaExpedida.BaseImponibleACoste:='1210.00'; { OPCIONAL. Para grupos de iva } {$ENDREGION} {$REGION 'DESCRIPCION OPERACION'} ARegLRFacturasEmitidas[i].FacturaExpedida.DescripcionOperacion:='TRANSPORTE'; { Descripción del objeto de la factura } {$ENDREGION} {$REGION 'DATOS INMUEBLE OPCIONAL'} // SetLength(ADatosInmueble, 1); // ADatosInmueble[i]:=DatosInmuebleType.Create; // ADatosInmueble[i].SituacionInmueble:=SituacionInmuebleType(0); { Identificador que especifica la situación del inmueble } // ADatosInmueble[i].ReferenciaCatastral:='XXX123'; { Referencia catastral del inmueble } // // ARegLRFacturasEmitidas[i].FacturaExpedida.DatosInmueble:=ADatosInmueble; {$ENDREGION} {$REGION 'IMPORTE TRANSMISION SUJETO A IVA OPCIONAL'} // ARegLRFacturasEmitidas[i].FacturaExpedida.ImporteTransmisionSujetoAIva:='200.10'; { OPCIONAL. Importe } {$ENDREGION} {$REGION 'EMITIDA POR TERCEROS OPCIONAL'} // ARegLRFacturasEmitidas[i].FacturaExpedida.EmitidaPorTerceros:=EmitidaPorTercerosType(0); { OPCIONAL. Identificador que si aparece con la etiqueta S indica que la factura ha sido emitida por un tercero. } {$ENDREGION} {$REGION 'CONTRAPARTE'} ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte:=PersonaFisicaJuridicaType.Create; { OPCIONAL ?? } ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte.NombreRazon:='cliente, S.L'; { Nombre-razón social de la contraparte de la operación(cliente) de facturas expedidas } // ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte.NIFRepresentante:='1111'; { OPCIONAL. NIF del representante de la contraparte de la operación } ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte.NIF:='B04xxxxx'; { Identificador del NIF contraparte de la operación (cliente) de facturas expedidas } // ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte.IDOtro:=IDOtroType.Create; // ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte.IDOtro.CodigoPais:=CountryType2(0); { OPCIONAL. Código del país asociado contraparte de la operación (cliente) de facturas expedidas } // ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte.IDOtro.IDType:=PersonaFisicaJuridicaIDTypeType(0); { Clave para establecer el tipo de identificación en el pais de residencia } // ARegLRFacturasEmitidas[i].FacturaExpedida.Contraparte.IDOtro.ID:='B04285870'; { Número de identificación en el país de residencia } {$ENDREGION} {$REGION 'TIPO DESGLOSE'} ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose:=TipoDesglose.Create; {$REGION 'DESGLOSE FACTURA'} ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura:=TipoSinDesgloseType.Create; {$REGION 'SUJETA'} ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.Sujeta:=SujetaType.Create; {$REGION 'EXENTA'} ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.Sujeta.Exenta:=Exenta.Create; {$REGION 'CAUSAEXENCION'} ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.Sujeta.Exenta.CausaExencion:=CausaExencionType(0);{ OPCIONAL. Campo que especifica la causa de la exención en los supuestos que aplique } {$ENDREGION} {$REGION 'BASE IMPONIBLE'} ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.Sujeta.Exenta.BaseImponible:='2420.00'; { Importe en euros correspondiente a la parte Sujeta / Exenta } {$ENDREGION} {$ENDREGION} {$REGION 'NO EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.Sujeta.NoExenta:=NoExenta.Create; // {$REGION 'TIPO NO EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.Sujeta.NoExenta.TipoNoExenta:=TipoOperacionSujetaNoExe ntaType(0); { Tipo de operación sujeta y no exenta para la diferenciación de inversión de sujeto pasivo } // {$ENDREGION} // {$REGION 'DESGLOSE IVA'} // SetLength(ADesgloseIvaDF, 1); // ADesgloseIvaDF[i]:=DetalleIVA2.Create; // ADesgloseIvaDF[i].TipoImpositivo:='21.0'; { Porcentaje aplicado sobre la Base Imponible para calcular la cuota } // ADesgloseIvaDF[i].BaseImponible:='1000.0'; { Magnitud dineraria sobre la cual se aplica un detertminado tipo impositivo} // ADesgloseIvaDF[i].CuotaRepercutida:='210.0'; { Cuota resultante de aplicar a la base imponible un determinado tipo impositivo} // ADesgloseIvaDF[i].TipoRecargoEquivalencia:='0.0'; { OPCIONAL. Porcentaje asociado en función del tipo de IVA} // ADesgloseIvaDF[i].CuotaRecargoEquivalencia:='0.0'; { OPCIONAL. Cuota resultante de aplicar a la base imponible el tipo de recargo de equivalencia} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.Sujeta.NoExenta.DesgloseIva:=ADesgloseIvaDF; {$ENDREGION} {$ENDREGION} {$ENDREGION} {$REGION 'NO SUJETA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.NoSujeta:=NoSujetaType.Create; // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.NoSujeta.ImportePorArticulos7_14_Otros:='100'; { Importe en euros si la sujeción es por el art. 7.14, otros } // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseFactura.NoSujeta.ImporteTAIReglasLocalizacion:='100'; { Importe en euros si la sujeción es por operaciones no sujetas en el TAI por reglas de localización } {$ENDREGION} {$ENDREGION} {$REGION 'DESGLOSE TIPO OPERACION'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion:=TipoConDesgloseType.Create; // // {$REGION 'PRESTACION SERVICIOS'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios:=TipoSinDesglosePrestacionTy pe.Create; // // {$REGION 'SUJETA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.Sujeta:=SujetaType.Create; // {$REGION 'EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.Sujeta.Exenta:=Exenta.Create ; // {$REGION 'CAUSAEXENCION'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.Sujeta.Exenta.CausaExencion: =CausaExencionType(0);{ OPCIONAL. Campo que especifica la causa de la exención en los supuestos que aplique } // {$ENDREGION} // {$REGION 'BASE IMPONIBLE'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.Sujeta.Exenta.BaseImponible: ='300.50'; { Importe en euros correspondiente a la parte Sujeta / Exenta } // {$ENDREGION} // {$ENDREGION} // {$REGION 'NO EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.Sujeta.NoExenta:=NoExenta.Cr eate; // {$REGION 'TIPO NO EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.Sujeta.NoExenta.TipoNoExenta :=TipoOperacionSujetaNoExentaType(0); { Tipo de operación sujeta y no exenta para la diferenciación de inversión de sujeto pasivo } // {$ENDREGION} // {$REGION 'DESGLOSE IVA'} // SetLength(ADesgloseIvaDOPS, 1); // ADesgloseIvaDOPS[i]:=DetalleIVA2.Create; // ADesgloseIvaDOPS[i].TipoImpositivo:='21.0'; { Porcentaje aplicado sobre la Base Imponible para calcular la cuota } // ADesgloseIvaDOPS[i].BaseImponible:='1000.0'; { Magnitud dineraria sobre la cual se aplica un detertminado tipo impositivo} // ADesgloseIvaDOPS[i].CuotaRepercutida:='210.0'; { Cuota resultante de aplicar a la base imponible un determinado tipo impositivo} // ADesgloseIvaDOPS[i].TipoRecargoEquivalencia:='0.0'; { OPCIONAL. Porcentaje asociado en función del tipo de IVA} // ADesgloseIvaDOPS[i].CuotaRecargoEquivalencia:='0.0'; { OPCIONAL. Cuota resultante de aplicar a la base imponible el tipo de recargo de equivalencia} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.Sujeta.NoExenta.DesgloseIva: =ADesgloseIvaDOPS; // {$ENDREGION} // {$ENDREGION} // {$ENDREGION} // // {$REGION 'NO SUJETA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.NoSujeta:=NoSujetaType.Creat e; // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.NoSujeta.ImportePorArticulos 7_14_Otros:='100'; { Importe en euros si la sujeción es por el art. 7.14, otros } // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.PrestacionServicios.NoSujeta.ImporteTAIReglasLoc alizacion:='100'; { Importe en euros si la sujeción es por operaciones no sujetas en el TAI por reglas de localización } // {$ENDREGION} // {$ENDREGION} // // {$REGION 'ENTREGA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega:=TipoSinDesgloseType.Create; // // {$REGION 'SUJETA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.Sujeta:=SujetaType.Create; // {$REGION 'EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.Sujeta.Exenta:=Exenta.Create; // {$REGION 'CAUSAEXENCION'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.Sujeta.Exenta.CausaExencion:=CausaExenci onType(0);{ OPCIONAL. Campo que especifica la causa de la exención en los supuestos que aplique } // {$ENDREGION} // {$REGION 'BASE IMPONIBLE'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.Sujeta.Exenta.BaseImponible:='300.50'; { Importe en euros correspondiente a la parte Sujeta / Exenta } // {$ENDREGION} // {$ENDREGION} // {$REGION 'NO EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.Sujeta.NoExenta:=NoExenta.Create; // {$REGION 'TIPO NO EXENTA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.Sujeta.NoExenta.TipoNoExenta:=TipoOperac ionSujetaNoExentaType(0); { Tipo de operación sujeta y no exenta para la diferenciación de inversión de sujeto pasivo } // {$ENDREGION} // {$REGION 'DESGLOSE IVA'} // SetLength(ADesgloseIvaDOEN, 1); // ADesgloseIvaDOEN[i]:=DetalleIVA2.Create; // ADesgloseIvaDOEN[i].TipoImpositivo:='21.0'; { Porcentaje aplicado sobre la Base Imponible para calcular la cuota } // ADesgloseIvaDOEN[i].BaseImponible:='1000.0'; { Magnitud dineraria sobre la cual se aplica un detertminado tipo impositivo} // ADesgloseIvaDOEN[i].CuotaRepercutida:='210.0'; { Cuota resultante de aplicar a la base imponible un determinado tipo impositivo} // ADesgloseIvaDOEN[i].TipoRecargoEquivalencia:='0.0'; { OPCIONAL. Porcentaje asociado en función del tipo de IVA} // ADesgloseIvaDOEN[i].CuotaRecargoEquivalencia:='0.0'; { OPCIONAL. Cuota resultante de aplicar a la base imponible el tipo de recargo de equivalencia} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.Sujeta.NoExenta.DesgloseIva:=ADesgloseIv aDOEN; // {$ENDREGION} // {$ENDREGION} // {$ENDREGION} // // {$REGION 'NO SUJETA'} // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.NoSujeta:=NoSujetaType.Create; // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.NoSujeta.ImportePorArticulos7_14_Otros:= '100'; { Importe en euros si la sujeción es por el art. 7.14, otros } // ARegLRFacturasEmitidas[i].FacturaExpedida.TipoDesglose.DesgloseTipoOperacion.Entrega.NoSujeta.ImporteTAIReglasLocalizacion:=' 100'; { Importe en euros si la sujeción es por operaciones no sujetas en el TAI por reglas de localización } // {$ENDREGION} // // // {$ENDREGION} // // {$ENDREGION} // // // // {$ENDREGION} ASumLRFacturasEmitidas.RegistroLRFacturasEmitidas:=ARegLRFacturasEmitidas; {$ENDREGION} End; End; |
Cita:
|
Francisco1973 lo primero gracias. Justo lo que necesitamos es la forma de enviar no la de construir el xml.
|
La franja horaria es GMT +2. Ahora son las 01:29:14. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi