que es un archivo xml

que es un archivo xml

Postby leandro » Thu Dec 01, 2005 10:05 pm

Compañeros de foro como estan.

Tengo el siguiente problema, en Colombia la Direccion Nacional de Impuestos y Aduanas Nacionales, no hace entregar unos archivos en donde se reporta el movimiento del año. Hasta el año 2004 lo teniamos que reportar en archivo plano o en archivo excel. Pero este año se les ocurrio que debiamos entregarlo en formato XML.

Las preguntas son las siguientes y perdon por mi ignoracia y no se si eso ya es viejo o lo puedo hacer con fw o con excel.

1-> Que es un archivo XML?
2-> Existe aluna rutina para generar estos archivos en FW.
3-> Si no se pueden hacer con FW alguien me puede dar una idea de
como hacerlo.

Nuevamente Gracias
LEANDRO ALFONSO
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Postby Manuel Aranda » Fri Dec 02, 2005 3:51 pm

Hola Leandro:
Hacer un archivo xml es tan fácil como generar un archivo plano y puedes hacerlo perfectamente con clipper/fivewin; eso sí, siguiendo un esquema determinado que han de proporcionarte previamente para poder generarlo. Otra historia es programar en xml, pero creo que eso se sale completamente de tus pretensiones.

Esto de más abajo es un ejemplo archivo xml generado como un archivo plano. Copialo en un archivo plano pero con la extensión xml y verás como lo ejecuta el iexplorer.
Un saludo,
Manuel

<?xml version="1.0" encoding="ISO-8859-1" ?>
<LLAMAMIENTOS>
<LLAMAMIENTO_TIPO>
<DATOS_EMPRESA>
<CIF_NIF_EMPRESA>
<CIF_NIF>P0101001F</CIF_NIF>
</CIF_NIF_EMPRESA>
<CCC>011101000010030</CCC>
</DATOS_EMPRESA>
<DATOS_TRABAJADOR>
<IDENTIFICADORPFISICA>D00000022E</IDENTIFICADORPFISICA>
<NOMBRE_APELLIDOS>
<NOMBRE>LUISA</NOMBRE>
<PRIMER_APELLIDO>REYES</PRIMER_APELLIDO>
<SEGUNDO_APELLIDO>GALLEGO</SEGUNDO_APELLIDO>
</NOMBRE_APELLIDOS>
<_>2</_>
<FECHA_NACIMIENTO>19750518</FECHA_NACIMIENTO>
<NACIONALIDAD>724</NACIONALIDAD>
<MUNICIPIO_RESIDENCIA>46022</MUNICIPIO_RESIDENCIA>
<PAIS_RESIDENCIA>724</PAIS_RESIDENCIA>
</DATOS_TRABAJADOR>
<DATOS_LLAMAMIENTO>
<FECHA_INICIO>20040501</FECHA_INICIO>
<FECHA_FIN>20040930</FECHA_FIN>
<CLAVE_CONTRATO_TRANS>E122004999999900</CLAVE_CONTRATO_TRANS>
<NIVEL_FORMATIVO>23</NIVEL_FORMATIVO>
</DATOS_LLAMAMIENTO>
<DATOS_USOLIBRE_EMPRESA>
<USOLIBRE_EMPRESA>1111 2222 aaaaaa DDDDD</USOLIBRE_EMPRESA>
</DATOS_USOLIBRE_EMPRESA>
</LLAMAMIENTO_TIPO>
<LLAMAMIENTO_TIPO>
<DATOS_EMPRESA>
<CIF_NIF_EMPRESA>
<CIF_NIF>P0101001F</CIF_NIF>
</CIF_NIF_EMPRESA>
<CCC>011101000010030</CCC>
</DATOS_EMPRESA>
<DATOS_TRABAJADOR>
<IDENTIFICADORPFISICA>D00000022E</IDENTIFICADORPFISICA>
<NOMBRE_APELLIDOS>
<NOMBRE>LUISA</NOMBRE>
<PRIMER_APELLIDO>REYES</PRIMER_APELLIDO>
<SEGUNDO_APELLIDO>GALLEGO</SEGUNDO_APELLIDO>
</NOMBRE_APELLIDOS>
<_>2</_>
<FECHA_NACIMIENTO>19750518</FECHA_NACIMIENTO>
<NACIONALIDAD>724</NACIONALIDAD>
<MUNICIPIO_RESIDENCIA>46022</MUNICIPIO_RESIDENCIA>
<PAIS_RESIDENCIA>724</PAIS_RESIDENCIA>
</DATOS_TRABAJADOR>
<DATOS_LLAMAMIENTO>
<FECHA_INICIO>20040401</FECHA_INICIO>
<CLAVE_CONTRATO_TRANS>E122004999999955</CLAVE_CONTRATO_TRANS>
<NIVEL_FORMATIVO>23</NIVEL_FORMATIVO>
</DATOS_LLAMAMIENTO>
</LLAMAMIENTO_TIPO>
</LLAMAMIENTOS>
User avatar
Manuel Aranda
 
Posts: 602
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

gracias

Postby leandro » Fri Dec 02, 2005 5:54 pm

la verdad si me dieron el formato que debo usar pero no entiendo mucho com generar el contenido. Te adjunto el archivo que me dice como debo generarlo.

Ahi se habla de un encabezado pero no se como gerarlo. o no entiendo el orden del archivo. si me pudieras indicar el ornde del archivo te lo agradeceria o si sabes de algun ejemplo.

Si me puedes enviar un correo en donde enviarte el archivo. o si quieres esta es la direccion en donde me indica como debo entregar el archivo.

http://www.dian.gov.co/content/norma/me ... ca1010.pdf

De antemano gracias

LEANDRO ALFONSO
BOGOTA COLOMBIA
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Postby Manuel Aranda » Sat Dec 03, 2005 12:22 pm

Hola de nuevo Leandro. Mira yo no tengo ni la más remota idea de XML y de momento, ningún interés ni tiempo para aprenderlo, pero un dia me encontré con el mismo problema que tú y encontré una solución, creo que poco ortodoxa pero que funciona perfectamente y como suelo seguir la máxima de que "si algo funciona bien no lo toques" pues eso, así me estoy arreglando.
Si miras en la página 5 de las especificaciones técnicas tienes un ejemplo.

Lo que yo hago es crearme una dbf temporal con un solo campo alfanumérico de gran longitud. Siguiendo el ejemplo anteriormente citado, cada una de las lineas las meto como un nuevo registro, así:
<? xml version="1.0" encoding........ seria el primer registro
<mas xml........................seria el segundo registro
................................................. y así sucesivamente. al llegar a las lineas de datos solo tienes que fusionar los literales de esas lineas con tus datos (eso sí tienes que tener en cuenta las especificaciones de los campos por si tienes que recortar o añadir algunos espacios, etc)
Una vez finalizado el proceso haces un COPY FIELDS DATOS->Dato TO &cNombreFi DELIMITED WITH BLANK y ya tienes el fichero creado. No olvides ponerle la extensión XML.
Problemas que pueden presentarse:
1º que el fichero no cumpla con las especificaciones XML y tenga un error en la estructura. Para detectarlo solo tienes que ejecutarlo con el IEXPLORER y si existe un problema de este tipo te lo detectará.
2º que algún campo no cumpla con las especificaciones técnicas del esquema XSD. Detectar este segundo problema ya no es tan fácil (sin tener mucha idea de XML, claro) a menos que tengas un programa de validación del fichero o esperar a que el receptor te lo devuelva con los errores detectados.
Venga ánimo, seguro que puedes con ello.
Un saludo,
Manuel Aranda
User avatar
Manuel Aranda
 
Posts: 602
Joined: Wed Oct 19, 2005 8:20 pm
Location: España


Return to FiveWin para CA-Clipper

Who is online

Users browsing this forum: No registered users and 6 guests