Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Nomeclatura de Nodos en XML (https://www.clubdelphi.com/foros/showthread.php?t=86064)

olbeup 12-06-2014 14:03:43

Nomeclatura de Nodos en XML
 
Hola Compañeros,

Cuando pongo en el encabezado "fe:facturae" del XML, el resto de los nodos me añade el "fe:" en todo, ejemplo:
Código Delphi [-]
...
begin
  XMLInit := TXMLDocument.Create(nil);
    XMLInit.Active := True;
    XMLInit.Version := '1.0';
    XMLInit.Encoding := 'UTF-8';
    XMLInit.StandAlone := 'yes';
    XMLInit.NodeIndentStr := '  ';
    XMLInit.Options := XMLInit.Options + [doNodeAutoIndent];

    // Creación del ficehro XML
    XMLMain := XMLInit.AddChild('fe:Facturae');
      XMLMain.Attributes['xmlns:ds'] := 'http://www.w3.org/2000/09/xmldsig#';
      XMLMain.Attributes['xmlns:fe'] := 'http://www.facturae.es/Facturae/2009/v3.2/Facturae';

    // Cabecera 
    // -----------------------------
    XMLFileHeader := XMLMain.AddChild('FileHeader');
      TextXML := XMLFileHeader.AddChild('SchemaVersion');
        TextXML.Text := '3.2';
      TextXML := XMLFileHeader.AddChild('Modality');
        TextXML.Text := 'I';
      TextXML := XMLFileHeader.AddChild('InvoiceIssuerType');
        TextXML.Text := 'EM';
...
...
  XMLInit.SaveToFile('C:\PruebasXML\MyXMLFactura-e.xml');
end;
y cuando lo abro, aparece:
Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<fe:Facturae xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:fe="http://www.facturae.es/Facturae/2009/v3.2/Facturae">
  <fe:FileHeader>
    <fe:SchemaVersion>3.2</fe:SchemaVersion>
    <fe:Modality>I</fe:Modality>
    <fe:InvoiceIssuerType>EM</fe:InvoiceIssuerType>
  ...
  ...

Como puede eviar que aparezca el "fe:" en todos los nodos, solo lo quiero al principio y al final.

Un saludo.

Al González 12-06-2014 17:39:24

Hola, no suelo trabajar con TXMLDocument, pero intentaré ayudar. :)

Tampoco sé qué es "facturae", pero pareciera que FileHeader, SchemaVersion, Modality e InvoiceIssuerType son elementos que pertenecen al mismo espacio de nombres que el elemento principal, Facturae, por tanto es correcto que lleven también el prefijo "fe".

En caso de que no fueran elementos del mismo espacio de nombres, habría que indicar a qué espacio pertenecen como segundo parámetro de AddChild, o simplemente cadena vacía:
Código Delphi [-]
XMLFileHeader := XMLMain.AddChild('FileHeader', '');
Esto es lo que dice la ayuda de Delphi respecto al método AddChild (remarco la causa de lo que obtuviste):
Cita:

Adds a new child node to this node.

Delphi syntax:

function AddChild(const TagName, NamespaceURI: DOMString; GenPrefix: Boolean = False; Index: Integer = -1): IXMLNode; overload;

function AddChild(const TagName: DOMString; Index: Integer = -1): IXMLNode; overload;

Description

AddChild creates a new element node as the child of this node.

TagName provides the tag name of the newly created node.

NamespaceURI identifies the namespace that includes the new node’s definition. If NamespaceURI is omitted (the second syntax), the namespace of the new node is deduced from the namespace prefix of TagName. If TagName has no namespace prefix and there is no NamespaceURI parameter, the namespace is the same as this node’s NamespaceURI property.

GenPrefix controls whether AddChild generates a namespace prefix for the namespace URI when the NamespaceURI parameter identifies a URI that is not already declared in the document. Note that setting GenPrefix to true does not cause AddChild to add a declaration of the new namespace prefix unless the document’s Options property includes doNamespaceDecl.

Index indicates the position of the child node in this node’s list of children, where 0 is the first position, 1 is the second position, and so on. If Index is –1, the new node is added to the end.

AddChild returns the interface for the newly created child node.

Tip: AddChild only adds element nodes. To add other types of child nodes, use the XML document’s CreateNode method instead, and then add the resulting node to the ChildNodes property array.
Saludos.

olbeup 12-06-2014 20:47:57

Hola Al González

La facturae, es para la facturación electrónica de la comunidad valenciana que empieza el año que viene y, que ya sólo se podrá facturar electronicamente con ficheros XML.

Lo probare cuando llegue a la empresa.

Un saludo

P.D.. Ya te cuento si funciona.

Casimiro Notevi 12-06-2014 22:07:26

Cita:

Empezado por olbeup (Mensaje 477732)
Hola

Por favor, no olvides poner títulos descriptivos a tus preguntas, gracias. :rolleyes:

olbeup 13-06-2014 09:19:38

Cita:

Empezado por Casimiro Notevi (Mensaje 477737)
Por favor, no olvides poner títulos descriptivos a tus preguntas, gracias. :rolleyes:

Hola Casimiro,

Si es verdad, pero estaba ya cansado de buscar por facturae que lo puse en el título, perdón.

Un saludo.

Casimiro Notevi 13-06-2014 09:23:00

Ahora tendrás que escribir cien veces:
"Escribiré siempre títulos descriptivos", "Escribiré siempre títulos descriptivos", "Escribiré siempre títulos descriptivos",...

:p:)

olbeup 13-06-2014 09:40:28

Cita:

Empezado por Al González (Mensaje 477717)
Hola, no suelo trabajar con TXMLDocument, pero intentaré ayudar. :)

Tampoco sé qué es "facturae", pero pareciera que FileHeader, SchemaVersion, Modality e InvoiceIssuerType son elementos que pertenecen al mismo espacio de nombres que el elemento principal, Facturae, por tanto es correcto que lleven también el prefijo "fe".

En caso de que no fueran elementos del mismo espacio de nombres, habría que indicar a qué espacio pertenecen como segundo parámetro de AddChild, o simplemente cadena vacía:
Código Delphi [-]
XMLFileHeader := XMLMain.AddChild('FileHeader', '');
Esto es lo que dice la ayuda de Delphi respecto al método AddChild (remarco la causa de lo que obtuviste):

Saludos.

Hola Al González,

Efectivamente has dado con la tela.

Mil gracias.

Un saludo.

olbeup 13-06-2014 09:41:43

Factura digital "facturae" en XML de la comunidad valenciana
 
Cita:

Empezado por Casimiro Notevi (Mensaje 477760)
Ahora tendrás que escribir cien veces:
"Escribiré siempre títulos descriptivos", "Escribiré siempre títulos descriptivos", "Escribiré siempre títulos descriptivos",...

:p:)

Si profe. :o:p:D

Un saludo

asanchezdbs 11-01-2015 19:55:03

Factura Electronica 3.2.1
 
Hola

He visto que estas implementando Facturae 3.2.1

Tienes aguna librería o funciona para realizar dicha implementación?

olbeup 12-01-2015 09:17:49

Cita:

Empezado por asanchezdbs (Mensaje 487552)
Hola

He visto que estas implementando Facturae 3.2.1

Tienes aguna librería o funciona para realizar dicha implementación?

Hola asanchezdbs,

Bien venido al club delphi,

No se si hay librería para hacer la factura electrónica de la comunidad valenciana, yo lo he realizado a pelo y según la normativa de la facturae y leyendo mucho.

Visita la página oficial http://www.facturae.gob.es, www.ge-factura.es
Después tienes que hacerte un acceso de entorno de prueba.
Yo lo que he hecho es bajarme el programa de ge-factura he realizado una factura en el programa oficial y después lo he exportado a un fichero .xml y he visto su estructura he realizado el software necesario para adaptado a mi programa.

Un saludo.

Casimiro Notevi 12-01-2015 09:42:11

Por cierto, "facturación electrónica ¿valenciana?", ¿Valencia tiene una facturación electrónica? ¿Eso cómo es?

olbeup 12-01-2015 14:55:23

Cita:

Empezado por Casimiro Notevi (Mensaje 487562)
Por cierto, "facturación electrónica ¿valenciana?", ¿Valencia tiene una facturación electrónica? ¿Eso cómo es?

Hola Casimiro,

Según en que comunidad estés, ya hay que presentar las facturas electrónicamente por Internet en formato .XML, en el caso de la comunidad valenciana había que presentar la factura electrónica desde septiembre del año pasado, puedes aún hacerlo en papel, pero creo que está penalizado con una quita del importe de la factura, a no ser que hayan ampliado la fecha.

Mi empresa se dedica al sector del transporte de colegios de la comunidad valenciana y las facturas se presentan vía Internet en formato .XML.

Un saludo.

asanchezdbs 13-01-2015 13:55:02

Factura Electronica
 
Hola.

Te importaría faciliar el código de tu implementación?

Gracias...:)

newtron 16-01-2015 18:44:51

Amigo olbeup.

¿Al final conseguiste implementar el tema de la factura electrónica compatible con "facturae"?.

Saludos

olbeup 19-01-2015 11:13:56

Cita:

Empezado por newtron (Mensaje 487743)
Amigo olbeup.

¿Al final conseguiste implementar el tema de la factura electrónica compatible con "facturae"?.

Saludos

Ya lo hice en su momento (Msg 10), pero tengo que hacerlo mas pequeño y en un componente.
Si te has quedado por alguna parte, te puedo echar una mano.

Un saludo.

newtron 19-01-2015 11:45:20

Pues si, el fichero XML lo genero sin problemas pero la verdad es que hay temas en los que estoy un poco perdido:

- En el programa "facturae" para crear un nuevo receptor se abre una ventana que te pregunta si quieres crear un receptor dado de alta en el servicio de recepción de facturas FACe y cuando le dices que si te sale un mensaje que pone que para conectarse con FACe hay que rellenar la configuración asociada, ¿qué configuración es esa y qué hay que poner?.

- ¿Cómo firmas el fichero XML que generas? ¿con la dll AEATFACT.DLL o de otra manera?

- ¿Una vez firmado el fichero XML cómo lo envías?

- ¿Por qué el coyote nunca pilla al correcaminos? :D

Gracias y un saludo

olbeup 19-01-2015 12:39:59

Cita:

Empezado por newtron (Mensaje 487824)
Pues si, el fichero XML lo genero sin problemas pero la verdad es que hay temas en los que estoy un poco perdido:

- En el programa "facturae" para crear un nuevo receptor se abre una ventana que te pregunta si quieres crear un receptor dado de alta en el servicio de recepción de facturas FACe y cuando le dices que si te sale un mensaje que pone que para conectarse con FACe hay que rellenar la configuración asociada, ¿qué configuración es esa y qué hay que poner?.

- ¿Cómo firmas el fichero XML que generas? ¿con la dll AEATFACT.DLL o de otra manera?

- ¿Una vez firmado el fichero XML cómo lo envías?

- ¿Por qué el coyote nunca pilla al correcaminos? :D

Gracias y un saludo

Cita:

En el programa "facturae" para crear un nuevo receptor
El receptor lo tiene que haber creado el organismo publico dándole un código a ese receptor el cual te lo dará a ti.

Cita:

- ¿Cómo firmas el fichero XML que generas? ¿con la dll AEATFACT.DLL o de otra manera?

- ¿Una vez firmado el fichero XML cómo lo envías?
De momento no la firmo y la envío directamente desde la pagina FACe la importo y se envía, si la tengo que firmar desde ahí se firma.

Un saludo.

newtron 19-01-2015 13:13:41

Cita:

Empezado por olbeup (Mensaje 487831)
El receptor lo tiene que haber creado el organismo publico dándole un código a ese receptor el cual te lo dará a ti.

¿Ese código al que te refieres son los que te pregunta en el programa como "Organo gestor" "Unidad tramitadora" y "Oficina contable" o es otro?

olbeup 20-01-2015 09:49:41

Cita:

Empezado por newtron (Mensaje 487835)
¿Ese código al que te refieres son los que te pregunta en el programa como "Organo gestor" "Unidad tramitadora" y "Oficina contable" o es otro?

Correcto, esta en el lado derecho donde pone creo "receptor", yo tengo un código que me han enviado al que le tengo que facturar y ese código empieza por "G09xxxx" que la G es de Genaritat

Ya no tengo acceso a la plataforma, ya se encarga otro de la facturación electrónica.

En su momento nos dieron una clave de acceso temporal para hacer pruebas y al pasar a la definitiva la clave temporal que tenia ya no funciona.

Envía la pantalla donde te pide la parte del receptor.

Un saludo.

newtron 20-01-2015 10:16:14

Hola de nuevo.

Aquí está la pantalla con los datos que me pide

http://subefotos.com/ver/?c31c158768...2bf6f3dd0o.jpg

No deja escribir directamente. Me he dado de alta como proveedor y he puesto los datos en la configuración y cuando pulso el lápiz para consultar los posibles valores se me queda pillado en una pantalla que pone.."consultando a FACe".

Saludos

olbeup 21-01-2015 17:54:43

Cita:

Empezado por newtron (Mensaje 487873)
Hola de nuevo.

Aquí está la pantalla con los datos que me pide

http://subefotos.com/ver/?c31c158768...2bf6f3dd0o.jpg

No deja escribir directamente. Me he dado de alta como proveedor y he puesto los datos en la configuración y cuando pulso el lápiz para consultar los posibles valores se me queda pillado en una pantalla que pone.."consultando a FACe".

Saludos

Correcto, esa es la parte donde tienes que introducir el código del receptor, te enviaré una parte del .XML donde yo declaro esos código, estoy en casa y cuando llegue al trabajo te las envío.

Un saludo.

olbeup 23-01-2015 15:05:20

Cita:

Empezado por newtron (Mensaje 487873)
Hola de nuevo.

Aquí está la pantalla con los datos que me pide

http://subefotos.com/ver/?c31c158768...2bf6f3dd0o.jpg

No deja escribir directamente. Me he dado de alta como proveedor y he puesto los datos en la configuración y cuando pulso el lápiz para consultar los posibles valores se me queda pillado en una pantalla que pone.."consultando a FACe".

Saludos

Hola newtron,

Me a ver con esto si vez un poco de luz.

Código Delphi [-]
    // Receptor 2.2. 
    // -----------------------------
    // Identificación Fiscal
    XMLBuyerParty := XMLParties.AddChild('BuyerParty');
      XMLTaxIdentification := XMLBuyerParty.AddChild('TaxIdentification');
        XMLText := XMLTaxIdentification.AddChild('PersonTypeCode');
          XMLText.Text := 'J';
        XMLText := XMLTaxIdentification.AddChild('ResidenceTypeCode');
          XMLText.Text := 'R';
        XMLText := XMLTaxIdentification.AddChild('TaxIdentificationNumber');
          XMLText.Text := BuyerParty.TaxIdentificationNumber; --> 'ESXXXXXXXXX';

      // Centros Administrativo
      XMLAdministrativeCentres := XMLBuyerParty.AddChild('AdministrativeCentres');
        // Centro Administrativo
        XMLAdministrativeCentre := XMLAdministrativeCentres.AddChild('AdministrativeCentre');
        // Código del centro
        XMLText := XMLAdministrativeCentre.AddChild('CentreCode');
          XMLText.Text := BuyerParty.CentreCode; // 'G0902XXXXX';

        // Receptor de factura, receptor de mercancía
          // 02 = Receptor de Factura
          // 04 = Receptor de Mercancía
        XMLText := XMLAdministrativeCentre.AddChild('RoleTypeCode');
          XMLText.Text := BuyerParty.RoleTypeCode; // '02';
        // Nombre al que se le presta el servicio
        XMLText := XMLAdministrativeCentre.AddChild('Name');
          XMLText.Text := BuyerParty.Name; // 'Servicio de Bienestar Social e Integraci';

        // Datos Personales
        XMLAddressInSpain := XMLAdministrativeCentre.AddChild('AddressInSpain');
          XMLText := XMLAddressInSpain.AddChild('Address');
            XMLText.Text := BuyerParty.AdministrativeCentreAddressInSpain.Address; // 'AVDA. CAMPANAR, 32';
          XMLText := XMLAddressInSpain.AddChild('PostCode');
            XMLText.Text := BuyerParty.AdministrativeCentreAddressInSpain.PostCode; // '46015';
          XMLText := XMLAddressInSpain.AddChild('Town');
            XMLText.Text := BuyerParty.AdministrativeCentreAddressInSpain.Town; // 'Valencia';
          XMLText := XMLAddressInSpain.AddChild('Province');
            XMLText.Text := BuyerParty.AdministrativeCentreAddressInSpain.Province; // 'VALENCIA';
          XMLText := XMLAddressInSpain.AddChild('CountryCode');
            XMLText.Text := 'ESP';

      // Referencia, Centros
      XMLLegalEntity := XMLBuyerParty.AddChild('LegalEntity');
        XMLText := XMLLegalEntity.AddChild('CorporateName');
          XMLText.Text := BuyerParty.CorporateName; // 'GENERALITAT VALENCIANA';

        // Datos Personales
        XMLAddressInSpain := XMLLegalEntity.AddChild('AddressInSpain');
          XMLText := XMLAddressInSpain.AddChild('Address');
            XMLText.Text := BuyerParty.LegalEntityAddressInSpain.Address; // 'CL. CABALLEROS, 2';
          XMLText := XMLAddressInSpain.AddChild('PostCode');
            XMLText.Text := BuyerParty.LegalEntityAddressInSpain.PostCode; // '46001';
          XMLText := XMLAddressInSpain.AddChild('Town');
            XMLText.Text := BuyerParty.LegalEntityAddressInSpain.Town; // 'VALENCIA';
          XMLText := XMLAddressInSpain.AddChild('Province');
            XMLText.Text := BuyerParty.LegalEntityAddressInSpain.Province; // 'VALENCIA';
          XMLText := XMLAddressInSpain.AddChild('CountryCode');
            XMLText.Text := 'ESP';

Un saludo

newtron 23-01-2015 16:52:55

olbeup.

Gracias por la información, ya solo nos queda (por mi parte al menos) firmar el archivo de alguna forma sencilla y económica.

Si encuentro algo ya lo comentaré por si te interesa.

Gracias de nuevo y un saludo.

Kribbeling 04-02-2015 21:30:53

FacturaE
 
Cita:

Empezado por olbeup (Mensaje 487821)
Ya lo hice en su momento (Msg 10), pero tengo que hacerlo mas pequeño y en un componente.
Si te has quedado por alguna parte, te puedo echar una mano.

Un saludo.


Muy Buenas ,

Esta es mi primera vez , no se si lo hago correctamente, en cualquier caso gracias.

Veo que has implementado codigo para la facturae, podrias pasarme algun ejemplo o las clases, muchas gracias .

olbeup 05-02-2015 08:45:17

Cita:

Empezado por newtron (Mensaje 488053)
olbeup.

Gracias por la información, ya solo nos queda (por mi parte al menos) firmar el archivo de alguna forma sencilla y económica.

Si encuentro algo ya lo comentaré por si te interesa.

Gracias de nuevo y un saludo.

Hola newtron,

A la hora de firmarlo yo lo realizo por el programa oficial de factura-e, el que esta en la página oficial según conversaciones por correo en soporte@red.es esta mal, la buena esta en los enlaces que me han dado, también puedes hacer la factura-e desde ahí, la firmas y la envías.

Cita:

Buenas tardes;

Actualmente la Aplicación de Gestión de Facturas FACTURAe v3.1, presenta algunas dificultades para poder completar los datos del Receptor de las facturas. Para solventarlo desde el Minetur se ha creado una nueva versión de la aplicación FACTURAe v3.1.1.

Se puede descargar dicha versión de la aplicación pulsando el siguiente enlace:
https://ssweb.seap.minhap.es/almacen...0278179ebf6b94

Esta versión permite, previo registro en FACe/proveedores, informar manualmente los códigos de los Organismos Receptores de sus facturas (códigos DIR3) y enviar la factura al punto de entrada FACe directamente.
Le remitimos un manual que describe todos los pasos desde el registro en FACE, hasta el envío de su factura a través de FACE.

Le recordamos que solamente se puede enviar facturas a entidades dadas de alta en FACe. Para saber si una entidad está dada de alta en FACe consulte el siguiente enlace: https://face.gob.es/es/directorio.


Le damos la información siguiente relativa al seguimiento de las facturas:

Rechazo

El comentario de rechazo de su factura ha sido enviado desde el Organismo Receptor y es a ellos a quien deben remitir la consulta.

La plataforma FACe no realiza los rechazos, todos los cambios de estado en las facturas son realizados por los Organismos Receptores de las mismas. FACe únicamente realiza validaciones de facturas en el momento de la entrega (formato, firma, existencia de la relación a la que se remite, duplicado, etc.) pero una vez entregada y registrada no realiza más validaciones sobre ella.

Por favor, póngase en contacto con el Organismo Receptor para que le indique el motivo del rechazo y cómo proceder.

Seguimiento

La plataforma FACe informa los cambios de estado de las facturas, esos cambios hacen parte del proceso normal del tratamiento de la factura.

Usted puede seguir los estados de su factura a través del portal https://face.gob.es/es/ en Consulte sus facturas. En caso de dudas, usted tiene que contactar el receptor de la factura.


Un cordial saludo

“Antes de imprimir este e-mail piense si es necesario hacerlo: el medioambiente es cosa de todos”
Servicio de Soporte FACe a Proveedores

email: soporteface@red.es
tfno.: 900 900 555
y la configuración del programa lo encontré en youtube

Un saludo

olbeup 05-02-2015 08:56:34

Cita:

Empezado por Kribbeling (Mensaje 488440)
Muy Buenas ,

Esta es mi primera vez , no se si lo hago correctamente, en cualquier caso gracias.

Veo que has implementado codigo para la facturae, podrias pasarme algun ejemplo o las clases, muchas gracias .

Estoy rehaciendo el código porque el que está no me vale para la comunidad murciana, estaba adaptado para la comunidad valenciana, pero es poco lo que tengo que tocar.

Tú por donde te has quedado?

Un saludo.

newtron 05-02-2015 09:27:04

Cita:

Empezado por olbeup (Mensaje 488454)
Actualmente la Aplicación de Gestión de Facturas FACTURAe v3.1, presenta algunas dificultades para poder completar los datos del Receptor de las facturas. Para solventarlo desde el Minetur se ha creado una nueva versión de la aplicación FACTURAe v3.1.1.

Para que luego digan mis clientes que los únicos programas que fallan son los míos... :D:D

Gracias colega por la información.

Kribbeling 05-02-2015 16:22:52

Cita:

Empezado por olbeup (Mensaje 488455)
Estoy rehaciendo el código porque el que está no me vale para la comunidad murciana, estaba adaptado para la comunidad valenciana, pero es poco lo que tengo que tocar.

Tú por donde te has quedado?

Un saludo.


¿Que por donde me he quedado?

jajajajaj (rio por no llorar) yo estoy empezando ahora, estoy leyendo y mirando cosas, sobre todo aclarando conceptos pero estoy empezando y lo cierto es que mayormente me muevo en la comunidad valenciana aunque también por el norte. Resumiendo, cualquier ayuda es buena.

Muchas gracias y saludos.

newtron 06-03-2015 13:59:45

Hola de nuevo.

Sigo liado con el tema y he encontrado dos sitios en internet bastante interesantes porque la verdad es que el programa facturae es bastante "cortito".

Una web para chequear que el formato del fichero XML que se genera es correcto es esta y otra muyyyyyyyyyyyyy interesante es esta que te permite desde la web seleccionar un archivo, firmarlo y descargarlo una vez firmado. De esta manera podemos olvidar el programa facturae.

Saludos

olbeup 09-03-2015 10:56:17

Hola newtron,

Muy interesante ambas páginas, en la primera puedes ver si es correcta y en la segunda página puede hacer ambas.

Gracias por la info.

Un saludo.

newtron 12-03-2015 13:48:48

Hola.

Os dejo este post de un foro de Velneo desde el que se puede descargar un programita en Java con el que desde linea de comandos se puede firmar un documento. Aunque ya sé que lo más elegante es implementar un componente y hacerlo desde el mismo programa, con esto se puede hacer una llamada con el nombre del fichero entrante y saliente y funciona bastante bien.

Saludos

pacopenin 12-03-2015 14:15:13

Gracias Newtron. A falta de probarla me parece una solución bastante limpia y sencilla.

newtron 13-03-2015 09:50:32

Si. Como ya comento no es la solución más elegante pero es fácil de implementar en tu código. Yo he probado a firmar un documento desde la linea de comandos y luego la web que he puesto en un par de post anteriormente lo valida correctamente, o sea, que se podrá enviar sin problemas.


La franja horaria es GMT +2. Ahora son las 23:51:01.

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