Miguel Angel wrote:
> El vie, 27-02-2009 a las 22:32 -0300, Mariano Reingart escribió:
>>> Hay algo que me ayude a convertir los resultados de las consultas
>>> hechas en postgres a formato DBF y poder enviarselos a estos
>>> "nodos" para que ellos sigan trabajando con normalidad?
>>
>> Podrías usar el lenguaje python (funciones en plpythonu) que generen
>> archivos DBF con la librerias dbfpy http://www.fiby.at/dbfpy/
>>
>> Podrías ejecutar la función con un SELECT para que te genere el dbf.
>> Si te interesa avisame y veo de armarte algun ejemplo.
>
> Aunque no se python me interesa si me pudieras pasar el ejemplo.
> Ya del lenguaje podría encargarme yo.
>
> Gracias por la oferta; un ejemplo sencillo me basta sobre como hacer
> esto.
Yo haría una función parecida a la siguiente (serian dos funciones, una para
crear el archivo dbf y otra para agregar registros al dbf):
CREATE OR REPLACE FUNCTION exportar_dbf(dbf_file text, nombre text, importe
float4, fecha date)
RETURNS bool AS
$BODY$
from dbfpy.dbf import dbf_new, Dbf, DbfRecord
# crar el dbf
dbf0 = dbf_new()
dbf0.add_field("nombre",'C',80)
dbf0.add_field("precio",'N',10,2)
dbf0.add_field("fecha",'D',8)
dbf0.write(dbf_filename)
# abrir el dbf
dbf1.openFile(dbf_filename, readOnly=0)
dbf1.reportOn()
# agregar un registro
reg=DbfRecord(dbf1)
reg['nombre']=nombre
reg['precio']=importe
reg['fecha']=[int(v) for v in fecha.split("-")]
reg.store()
# cierro el archivo
dbf1.close()
$BODY$
LANGUAGE 'plpythonu' VOLATILE;
y despues para usar la función exportar_dbf:
SELECT exportar_dbf('c:/prueba.dbf','Mariano',10.4,'2009-03-02'::date)
Subí más información en:
http://python.com.ar/moin/PlPython
http://python.com.ar/moin/Recetario/DbfPy
No lo pude probar por cuestiones de tiempo, cualquier cosa avisame,
Sds
Mariano
--
TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá leerlo