lunes, 27 de junio de 2011

Convirtiendo DBF a texto, gratuitamente

En la onda de estandarización, siempre toca convertir un archivo de un formato a otro.

Hoy necesité convertir un archivo DBF a texto, para poder leerlo en Pick. Muchos dirán que es sencillo, simplemente, cargo algún "sabor" de dBase, abro el archivo y lo exporto. Pero lo que yo necesito, es hacerlo a nivel de comando DOS, para poderlo ejecutar automaticamente, desde dentro de Pick.

Un software que estoy probando, deposita la data en un archivo DBF, y yo necesito leer ese archivo, desde Pick, a fin de conocer el resultado de la ejecución de ese software.

Despues de pasear un rato por COMP.DATABASES.PICK, encontre este post:

"you might want to consider using the CONVERT.EXE program by Bruce Guthrie (http://www.erols.com/waynesof) - it's free, fairly easy to configer and it seems to work fine for the XBASE-type files (that's what a .dbf file is) "

Entrando en esa página , "Bruce Guthrie's Utilities" , encontré el utilitario CONVERT, que hace precisamente eso: convertir data desde un formato a otro. Se puede usar con formatos predeterminados, como DBF, XLS, ASCII, FIXED, etc, o incluso , se puede definir como es el formato de datos, y crear su propio archivo de definiciones.

Ejemplo:

CONVERT DATOS3.DBF /INDEF=DATOS3.DEF /TO FIXED /OVERWRITE

Este comando convierte el archivo DATOS3.dbf a datos fijos (texto), utilizando la definición contenida en DATOS3.def , que no hace falta , en el caso de archivos DBF, pero que utilicé, a fin de poder filtar la base de datos, de una vez, y obtener como resultado, el registro que estoy buscando.

Muy util...y gratuito

miércoles, 22 de junio de 2011

Recursos gratuitos de Pick

Extraido de PickWiki:

http://precisonline.com/free.html#downloads
Credit Card Number Validation Made Free & Easy
SMTPClient: Email from Java Applications
XBASIC: Precompiler for Multivalue BASIC
SB+ Cookbook: ReportWriter Recipes

http://www.tom-phillips.info/pick.tools.htm
Many utilities

http://www.jaylabonte.com/pegasys.htm
Character based editor in SB+ for Unidata

http://www.maverick-dbms.org/ Largely inactive FOSS MV DBMS
http://www.performantsystems.com/persay/
PerSay? screen development tool

http://www.infotools.ru/
Briz
See Freeware link for various helpful utilities

http://www.openqm.com/cgi/docs/lib.qinp
Generalised Field Input Subroutine, custom for QM but can be ported

http://www.openqm.com/cgi/lbscgi.exe?X=6cdoyk92r9&t0=h&t1=app.ae
Port of the U2 AE editor for QM, custom for QM but can be ported

http://brianleach.co.uk/mvdeveloper.htm
Windows Based MultiValue Editor.

http://nebula-rnd.com/freeware/
Many utilities

http://sourceforge.net/projects/mvwww/
Open Source HTTP Integration Tools

http://leonwooldridge.co.uk/
Collection of 350 (!) utilities (Not all entirely helpful but some gems)

http://www.sprezzatura.com/sys_knowledge.htm Knowledgebase utility for older OpenInsight 16bit
Various other Revelation/OI free downloads: http://www.sprezzatura.com/downloads.htm

http://www.nineelms.com/multivalue_code_snippets.html
http://openinsight.wetpaint.com OpenInsight Community Source Code
http://home.primus.ca/~lxp/sources.htm
http://home.iprimus.com.au/otmarp/PEditor.zip
D3 Editor for .Net

martes, 7 de junio de 2011

En Archivo texto, se cambian los espacios por TABs

Entre tanto trabajo y tanto que escribir, no he tenido tiempo de continuar con este blog.

Eso no significa que haya abandonado a Pick, NO NO NONONONONONONO!!!!

Sigue siendo mi forma de vida, lo que me alimenta el espiritu,..., y mi bolsillo

En los tempranos 1970, en donde era todo un reto, poner a imprimir una gráfica del seno (seno trigronométrico, se entiende), en la Digital DEC-10, que habìa en la universidad.

Hoy tuve ese sentimiento. Algo que los que somos nerds, frikis, etc., sienten, cuando completan una tarea, que costó mucho tiempo, aunque represente apenas, mover las manecillas del reloj.

He estado rompiendome la cabeza, por un problema, que tenía en D3/NT.

Cuando escribía directamente en un archivo texto, en C:\, algunos espacios en blanco, los transformaba en TABs. Importante? mucho!!. Estoy tratando de comunicarme con una interfaz de una impresora fiscal, y los espacios en blanco tienen que ser espacios en blanco, ni mas , ni menos.

Revise la data, minuciosamente con una rutinita, que me mostrara , los ASCII de lo que escribía, a ver. Nada.

El archivo texto, lo montaba en Word, y ahi estaban los TABS, con un rictus de felicidad, burlandose de mi.

hago una rutina para leer el archivo de texto producido,..., y solo lee espacios en blanco, no lee tabs.

Asì he estado meses. Dejo el problema, la vida me lleva por otros derroteros. Retomo el problema, vuelvo a probar...Nada.

Hoy me puse a buscar en COMP.DATABASES.PICK, que es un grupo de google, en donde la comunidad de programadores Pick, postea problemas y los resuelve.Y lo encontré! Oculto en miles y miles de lineas de código espaguetti. Ahi estaba la solución, montada en 1999...la bicoca de hace 12 años!!

Simple!!, resulta, que en la definición de los host en Pick, unos de los truqillos que utilizaron para asimilar la base de datos, en NT, hay una definición, que dice precisamente esto: "Cuando escribas un texto en un archivo en C:\, sustituye cada 4 espacios en blanco por TABs. y cuando leas los TABs, sustitúyelo por 4 espacios en blanco"

Así mismo, no miento, vean la foto y el link, que se los repito: http://goo.gl/sHuVo

En fin, simplemente, eliminé un par de caracteres de la definición...y VOILA!!! funciona!!

Como diríamos en mi juventud, me sentí realizado!! Hoy soy un genio. mañana...pues la vida continua.