Programación en castellano
Inicio > Foros > Visual FoxPro > Base de DAtos en DBASE / CLIPPER
-Foros de debate

Visual FoxPro
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 7 de octubre de 2008

Amigos,

Soy médico pero estudie algo de programación hace años en DBASE / CLIPPER que son parecidos a FOXPRO.
Resulta que en estos sistemas se crean archivos que son las bases de datos, no tablas independientes, en un archivo, como se hace actualmente.

Es decir tengo cuatro bases: patients.dbf clinord.dbf services.dbf clintxn.dbf y cada una es un archivo.

la primera tiene los datos de los pacientes, la segunda los datos de los servicios que ofrecemos para facturar, la tercera el lista de ordenes para cada factura, y la cuarta el resumen de las ordenes para una factura junto con los datos de pago (cantidad facturada, pagada, metodo de pago, fecha, etc).

Estaba estudiando Visual Basic Sudio pero me es un tanto confuso al programar por pantallas en lugar de hacerlo como lo hacia en Clipper, por consola. Como Foxpro es mas parecido he decidido aprender Foxpro, en este caso el Visual.

No consigo donde bajar el software. Si tienen ideas bienvenidas.

Lo otro es que las bases de datos de pacientes y servicios debo seguirlas usando en FOXPRO porque son bases extensas las de pacientes tienen 20k registros, la de servicios unos 500 y es tedioso tener que pasarlas nuevamente.

Como Clipper es de DOS ya no consigo impresoras que soporten el puerto paralelo en DOS, si he conseguido con puerto paralelo pero para Windows.

Por eso es mi deseo de migración.

Necesito me digan si las bases son compatibles con FOXPRO, creo que si, o como hago para exportarlas sin perder nada de datos.

GRacias por su tiempo y espero sus comentario.s

 
Re: Base de DAtos en DBASE / CLIPPER
Enviado por Andres el día 12 de octubre de 2008

Amigo
Yo tambien migre mi base de datos de clipper a fox, por la similitud, y no me fue muy dificil.
Los archivos son compatibles pero solo los DBF los indices no, por lo que tendras q abrirlos en el fox y hacerle un COPY STRU a un nuevo archivo y ahi crearle los indices, luego haz un APPE FROM y listo. Este proceso es necesario porque si modificas algun registro mediante el fox, tu s archivos ya no podran ser usados en Clipper.
Ahora, yo trabajo con tablas libres (DBF y CDX), no uso base de datos fox (DBC) y mis sistemas trabajan muy bien.
Te vas a acostumbrar, al comienzo siempre es dificil pasar de programacion lineal a programacion orientada a objetos, cualquier consulta estoy a tu disposicion.
Suerte

 
Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 15 de octubre de 2008

Gracias por la info.

He experimentado con Foxpro en los ultimos dias y si, las bases funcionan de maravillas (claro para el experimento solo estoy usando una copia de las bases originales). Dejo los archivos libres DBF y hago index CDX. Este sistema es mejor, ocupa menos espacio, lo unico es que tengo que recordar el "ORDER" de los indices para cuando hago referencia en la busqueda. Es decir, si el primer index esta para CODIGO y estoy buscando por CEDULA me da un registro no encontrado. Para eso solo pongo "Set order to 3" que corresponde al index por "codigo" dentro del archivo CDX.
Ademas tengo un programa "reindex.prg" que al ejecutarlo, abre la base y la reindexa usando el sistema CDX. (esto para cuando use las bases de datos verdaderas...je je je o cuando tenga una base que se modificó en una de las computadoras y me la traigo a otra y asi no tener que estar copiando los CDX).
Me encanta visual foxpro...ya aprendí a hacer menus y a llamarlos desde los formularios.

El problema actual que tengo es que por ejemplo, el menu principal que ya tiene la opcion de "formulario de nivel Superior", es llamado desde un formulario "form1". Este tiene tambien la propiedad ShowWindow como "formulario de nivel superior". Ya inserté el comando " do "nombre del menu" with thisform,.T. y funciona perfectamente cuando lo corro en foxpro.

El problema que tengo es que esté será mi formulario con mi menu de entrada, y al generar el "EXE" he intentado miles de formas en el archivo "PRG" principal, y no se ejecuta el formulario con el menu ...simplemente el sistema me vota y allí termino la programación.

EL PRG que tiene los siguientes lineas:

DO FORM form1 donde form1 es el nombre del formulario que tiene inmerso el menú.

Alguna sugerencia ? Bienvenida...

DEbe haber una forma de hacerlo pero no sé cual es .

Agradeceré sus opiniones.


Victor Perez

 
Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por Andres el día 15 de octubre de 2008

Amigo, lo q te falta es crear un prg principal dentro de tu proyecto y usar READ EVENTS al iniciar y CLEAR EVENTS cuando quieras salir de tu aplicacion.
He aqui un ejemplo

Set Excl Off
Set Talk Off
Set Stat Off
Set Dele On
Set Safe Off
Set Sysmenu Off
_Screen.WindowState = 2
Do Form Principal.scx
Read Events
Return
y en tu boton de salida incluye en el evento CLICK

Set Sysmenu On
Clear Events

 
Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 15 de octubre de 2008

ME dejaste perdido.
Entiendo la primera parte de agregar el READ EVENTS y todo eso en el PRG que arranca.

Pero no entiendo los del Clear Events...y el event Click...

Si me aclaras un poquito , te agradecera. Recuerda que no soy programador por carrera... je je je

Victor,

 
Re: Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 15 de octubre de 2008

Ya hice el formulario arranque y si corre, pero me da un error "Dice algo como que el formulario que llama al menu debe ser con la opcion showwindow 2, que es como la tengo, pero no la reconoce.

Ahora, mi menu consta de:

Pacientes - Servicios - Contabilidad en la barra principal.
Cuando abres pacentes aparece "AGREGAR" "EDITAR" etc...
Aqui debe ir la opcion de SALIR pero no se como hacerla, será que la agrego como submenu de PAcietes y con caracteistica de procedimiento y alli coloco el codigo qe me enviaste para SALIR.

Agradecido por tu atencion. Tengo muchas cosas mas que preguntarte.

Será que podemos contactar por MSN, si es asi mi direccion es vperezr@cwpanama.net y siempre estoy conectado.

Saludos, y nuevamente GRACIAS

 
Re: Re: Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 16 de octubre de 2008

Hola Andres,

Hoy me enrredé bastante en la clínica. Ya resolví los problemas que tenia.

Lo unico que ahora quiero quitar la pantalla en blanco que sale cuando ejecuto un programa EXE de FoxPRO. Busqué y debo hacer un config file con Screen = off o algo asi. Bueno lo hice, y resulta que esto bloquea mi maquina. No se ejecuta el programa y tampoco puedo ni siquiera Salir de Windows, Apagar, Reboot, ni nada. TEngo que hacer un reset manual del computador.

Alguna idea ?

Victor

 
Re: Re: Re: Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por Andres el día 17 de octubre de 2008

Hola Victor
No deberia colgarse tu sistema, algo debe estar mal, pero para evitar cualquier problema incluye lo siguiente antes de llamar al menu de tu aplicacion:
...
_Screen.show
do tumenu.mpr
...

Con eso deberias superar tu problema.

Saludos y mucha suerte

 
Re: Re: Re: Re: Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 18 de octubre de 2008

Gracias por la info.

Lo intentaré nuevamente.

Sabes, necesito contactarte por MSN pero no te encuentro en linea...je je je

Tengo algunas dudas antes de seguir, sobretodo con formularios y hacer que el formulario haga lo que yo quiero que haga...quizas son los comandos del formulario que no encuentro nada en la web que me explique como hacerlo.

Saludos, y nuevamente Gracias


Victor

 
Re: Re: Re: Re: Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 18 de octubre de 2008

Ruben,


No se resuelve el problema. Sigue la pantalla en blanco detras que molesta, la he disimulado al hacer que el formulario principal se abra "maximizado".

Ahora bien, desde este Formulario con menu, necesito abrir otro formulario para "AGREGAR PACIENTES". Ya hice el formulario y se como abrirlo, pero no se como hacer para que cuando cierre este nuevo formulario, todo se regrese al Formulario principal. En realidad el segundo formulario se abre con la pantalla en blanco detras y el primer formulario queda minimizado. Si hago click en "X" me dice "no puede cerrar foxpro", tengo que volver a cliquear en el formulario principal minimizado y hacer click en "SALIR " o en la "X"

Si agrego un boton y añado el comando REturn en el 2do formulario, no sucede nada. Si agrego el Clear EVENTS entonces se cierra toda la aplicacion.

Como hago para que el segundo formulario se abra pero no deje de ver en el fondo el primer formulario (principal). Y para que cuando ya no necesite este 2do formulario abierto pueda cerrarlo y volver al principal, desde donde se ejecutan todos los comandos.

Se que hay una forma, pero cual será ?

Un saludo y es muy interesante aprender FOXPRO aunque un poco "frustrante". no consigo manuales ni libros que enseñen bien y no hay cursos acá en Panamá sobre el tema.

Saludos,


Victor,

 
Re: Re: Re: Re: Re: Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 18 de octubre de 2008

Ruben,

Ya lo logre, lo del segundo formulario.

Hice que este segundo formulario fue de primer nivel y listo.

Con esto funciono, lo abro desde el formulario principal y lo cierro con la "X"...y quedo nuevamente en el formulario principal.

Tambien al correrlo no puse "Sysmenu off" para que me mantenga el menu de fondo.

Es correcto ?

Victor

 
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Base de DAtos en DBASE / CLIPPER
Enviado por vperezr el día 18 de octubre de 2008

Espero no abrumarte pero son muchas dudas.

Por que desde el formulario principal al cliquear sobre "X" no puedo salir y tengo que entrar al administrador de tareas para cerrar la aplicacion. En cambio cuando estoy en el formulario 2, llamado desde el principal, si puedo hacer uso del "X".

Sera porque el 2 no tiene menu y no le puse en opciones generales "formulario de nivel superior" como lo hice en el prinpcial, que si tiene menu y en VER hice ese cambio ?

Saludos,

 












Tienda
Patrocinados
 

Copyright © 1999-2007 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad
Mantenida por: Claudio y Dani.

Hospedaje web y servidores dedicados linux por Ferca Network

red internet: jugar gratis | amor | navidad 2009 | registro de dominios | servidores dedicados
más internet: comprar | gratis | posicionamiento en buscadores | decoración libre | gifs animados