Page 1 of 1
Exportar a Xml
Posted: Fri Oct 05, 2007 6:50 am
by Frafive
Hola amigos
Teneis alguna idea de como se puede exportar una tabla mysql a xml ?
un saludo y gracias desde ya
Yo lo hago asi...
Posted: Sat Oct 06, 2007 12:32 pm
by leandro
Amigo yo llo hago de la siguiente manera:
Code: Select all
nmanejador:=FCREATE("C:\lymam32\lamxml\"+nArchi+".xml", FC_NORMAL)
bufer:='<?xml version="1.0" encoding="ISO-8859-1"?><mas xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/1002.xsd">'+CRLF
bufer+='<Cab>'+CRLF
bufer+='<Ano>2006</Ano>'+CRLF
bufer+='<CodCpt>1</CodCpt>'+CRLF
bufer+='<Formato>1002</Formato>'+CRLF
bufer+='<Version>6</Version>'+CRLF
bufer+='<NumEnvio>1</NumEnvio>'+CRLF
bufer+='<FecEnvio>2006-06-03T10:20:55</FecEnvio>'+CRLF
bufer+='<FecInicial>2005-01-01</FecInicial>'+CRLF
bufer+='<FecFinal>2005-01-01</FecFinal>'+CRLF
bufer+='<ValorTotal>50000</ValorTotal>'+CRLF
bufer+='<CantReg>2</CantReg>'+CRLF
bufer+='</Cab>'+CRLF
SELE tRes1
SET FILT TO ARformat=vForma
DBGOTOP()
DO WHILE .NOT. EOF()
ide:=tRes1->ARnit
con:=tRes1->ARconcep
deb:=tRes1->ARdebito
cre:=tRes1->ARcredit
val:=cre-deb
SELE tTerc
IF dbseek(alltrim(str(val(ide))))
no1:=tTerc->ATprinom
no2:=tTerc->ATsegnom
ap1:=tTerc->ATpriape
ap2:=tTerc->ATsegape
ran:=tTerc->ATrazons
dig:=tTerc->ATdigito
mun:=tTerc->ATmunici
tip:=tTerc->ATtipdoc
tel:=tTerc->ATtelefo
dic:=tTerc->ATdirecc
ELSE
no1:=no2:=ap1:=ap2:=ran:=dig:=mun:=tel:=dic:=space(5)
tip:=0
ENDIF
bufer+='<rets '
bufer+='cpt="'+con+'" '
IF !Empty(alltrim(str(tip)))
bufer+='tdoc="'+alltrim(str(tip))+'" '
ENDIF
IF !Empty(alltrim(str(val(ide))))
bufer+='nid="'+alltrim(str(val(ide)))+'" '
ENDIF
IF !Empty(dig)
bufer+='dv="'+dig+'" '
ENDIF
IF !Empty(alltrim(ap1))
bufer+='apl1="'+alltrim(ap1)+'" '
ENDIF
IF !Empty(alltrim(ap2))
bufer+='apl2="'+alltrim(ap2)+'" '
ENDIF
IF !Empty(alltrim(no1))
bufer+='nom1="'+alltrim(no1)+'" '
ENDIF
IF !Empty(alltrim(no2))
bufer+='nom2="'+alltrim(no2)+'" '
ENDIF
IF !Empty(alltrim(ran))
bufer+='raz="'+alltrim(ran)+'" '
ENDIF
IF !Empty(alltrim(dic))
bufer+='dir="'+alltrim(dic)+'" '
ENDIF
IF !Empty(alltrim(subs(mun,1,2)))
bufer+='dpto="'+alltrim(subs(mun,1,2))+'" '
ENDIF
IF !Empty(alltrim(subs(mun,3,4)))
bufer+='mun="'+alltrim(subs(mun,3,4))+'" '
ENDIF
bufer+='vabo="'+alltrim(transform(val+300000,"999999999999"))+'" '
bufer+='vret="'+alltrim(transform(val,"999999999999"))+'"/>'+CRLF
SELE tRes1
tRes1->(dbskip())
ENDDO
//bufer+='<rets cpt="2302" tdoc="31" nid="79760202" dv="9" apl1="AREVALO" apl2="SUAREZ" nom1="LEANDRO" nom2="ALFONSO" dir="CALLE 74 15 80" dpto="91" mun="263" vabo="350000" vret="25000"/>'+CRLF
//bufer+='<rets cpt="2304" tdoc="31" nid="52236361" dv="7" apl1="FERNANDEZ" apl2="RIVAS" nom1="JUDITH" nom2="MARCELA" dir="CALLE 74 15 80" dpto="91" mun="263" vabo="350000" vret="25000"/>'+CRLF
bufer+='</mas>'
FWRITE(nManejador, alltrim(bufer))
FCLOSE(nManejador)
Espero te sirva