PREGUNTAS CONTESTADAS - FoxPro/Visual FoxPro

 Hay un total de 1456 Preguntas.<<  >> 

    Pregunta:  897 - PROBLEMA AL ACTULIZAR LAS TABLAS
Autor:  Daniel Durand
He desarrollado un sistema de gestión en Visual FoxPro 5.0(casi terminado). El único problema lo tengo en la pantalla de facturación, la cual es la mas complicada en cuanto a que posee mayor cantidad de tablas abiertas y relacionadas.
El problema ocurre aleatoriamente 1 de cada 15 o 20 veces y es que al momento de actualizar las tablas el sistema se cae mientras está actualizando.
Conviene saber que utilizo los comandos BEGIN TRANSACTION, END TRANSACTION, ROOLBACK, ETC...
Utilizando almacenamiento de tablas en buffer.
El sistema utiliza impresoras compartidas y envía los comprobantes a una u otra dependiendo del caso. Se está trabajando con Windows 95.
El error que me tira es a nivel de Windows (EL PROGRAMA A EFECTUADO UNA OPERACION NO VALIDA Y SE CERRARA). Este error no me dice nada, ya que es de windows.
Si alguien tiene una idea o sugerencia con respecto al método de grabación a algún truco, le agradecería muchísimo me lo comuniquen.
Yo había pensado en Instalar el windows NT WorkStation 4.0 por que es mas estable en redes.
Esta pantalla se utiliza en 3 o 4 terminales simultaneamente.
  Respuesta:  TITO ARAYA
Amigo, yo no se si a estas alturas habras solucionado tu problema, pero la solucion que yo te doy, y te ahorraras varios problemas es cambiandote a VFP version 6. Yo trabaje con la version 5 pero me frustro. En esa ocacion incluso fui a la Microsoft de aca en mi pais, y ellos mismo admitieron que la version 5 tenia problemas, desconozco si posteriormente se le hicieron parches a esta version pero, en la version 6 todo anda a las mil marvillas. Ahora no se como sera la version 7 no la he instalado todavia.
Escribeme por algun comentario a mi e-mail
  Respuesta:  FRANCISCO J GALVEZ
mira yo no tengo mucha experiancia ultimamente el programacion con foxpro bajo el ambiente windows, pero de acuerdo a lo que dices me parece mas bien un problema de manipulacion de memoria, tal vez no estes manejando bien la memoria o tal vez la computadora que utilizas tiene poca memoria, pero independientemente de eso puedes tratar (no se si pueda en foxpro) una especia de programacion como los .OVL que a como se van ejecutando y terminando de ejecutar cada unas de las tareas se desocupa ese bloque de memoria quedando disponible para la siguiente tarea.

bueno es una idea espero y te sea util, dicen que dos o tres o mas cabezas piensan mas que una.

  Respuesta:  Humberto García Casas
Respecto a tu problema este debe ser por la cantidad de memoria que este usando la Base de datos, me ocurrio algo parecido, lo que puede detectar es que cada vez que creas o eliminas un objeto de la BD esta actualiza su indice, indice en el cual registra todo lo que haces en tu programa, como lo solucione , existe un comando PACK DATABASE consulta en la ayuda, pero ten cuidado que puede alterar tu BD, te recomiendo hacer copia de esta y todas las tablas y luego correr este comando. Recuerda que una BD guarda objetos y estos pueden ocupar mucho espacio en memoria(observa el tamaño del indice de la BD antes y despues de correr este comando.

Otra solucion es crear desencadenantes usando el comando CREATE TRIGGER. El desencadenante se llama cuando se intenta la actualización de un registro (eliminar, insertar o actualizar) por instancias así el performs de la apliacion sería contralado por la PC y no por el SERVER.

  Respuesta:  Jhonn
Tines un problema no con el foxpro, sino con el windows
Cuando tu usas una sentencia rollback se crea un sisrtema de transacciones virtules en memoria que es el doble o un espejo de el espacio de emoria ocupado ya por las bases de datos que tienes abirtas... las cuentios es que al parecer no tienes suficiente memoria disponible.
Lo que hace Foxpro, es que busca un bloque de memoria al descubierto para direccionar los archivos que el va a almacenar. Y accesde a bloques de memorias en ereas protegidas para uso exclusivo del windows.
Cuendo el monitor de recursos de windows, detecta que bloques de memorias protegdas, estan siendo intevenidos, Crea una interrupcion en la aplicasion y manda un fallo general de proteccion generado por la aplicasion foxpro.exe.

Revisa la version de windows que tengas

las mas recomendada en win95 osr2 b
y adicional a esto baja un parche (si tu windows esta en ingles) en microsoft y aplicale.

este problema no es nuevo.... suele suseder mucho con aplicasiones Visual Basic cuando estas son nuy complejas.

emviame tu direccion y otros comentarios y te amplio el tema.

  Respuesta:  Rene Gutierrez
hola, mira yo me imagino que tienes un problema de manejo de memoria y de archivos porque no pruebas aumentando los buffers y files delarchivo config.sys
  Respuesta:  Alain Rivas J.
A mi me ha ocurrido en varias ocaciones, te las comento para que puedas verificarlas en detalle:
1.- Mi tarjeta madre estaba mal configurada y ocurria cuando ejecutaba solo el FOX PRO.
2. Uno de mis SIMM´s de memoria estaba mal aunque no aparentaba y ocurria tantas veces como tantas veces instalaba WIN95
TE SUGIERO:
1. A veces se instalan programas que reemplazan la librerias de WINDOWS, intenta formateando tu disco e instalando solo WIN y FOX (mismo idioma).
2. Configura tu tarjeta madre para que trabaje a menos velocidad.
3. Testea tu red verificando paquetes enviados, paquetes recibidos, errores en la transmision, te aconsejo UTP.
Lo mas que te aconsejo es que te cambies de lenguaje de programacion, VISUAL FOX es un lenguaje bastante vulnerable a fallos, robo de informacion y los codigos que genera no son muy compactos.
Ojala te sirva de algo...

http://virtual.es.fortunecity.com/digital/3

    Pregunta:  899 - BASES DE DATOS QUE PIERDEN EL ENCABEZADO
Autor:  Alejandro Soto
Desde FoxPro 2.6, genero una aplicación de Base de Datos en la cual necesito acceder a varias tablas, esto lo hago a través de SELECT pero si la máquina donde se está ejecutando se apaga o resetea en ese momento (con varias tablas abiertas), y vuelvo a abrir estas tablas me sale el mensaje ´NO ES UNA TABLA/DBF´, la documentación sugiere utilizar el comando SET AUTOSAVE ON para evitar esto, lo he hecho, y sin embargo sigo teniendo el problema. Agradezco cualquier sugerencia, gracias.
  Respuesta:  tivy martinez
La solucion que yo encontre a este problema es un programa externo llamado dbrx.exe y fixfoxpo.exe que lo podes bajar de la web, lo ejecutas seguido del nombre de la base de dato y luego lo reindexas y ya esta
ej: desde el fox run dbrx base.dbf.
probalo y avisame
  Respuesta:  Jose Maria Crespo
Yo tuve el mismo problema con tablas de Foxpro 2.6.
Me salia el mensaje "NOT A TABLE DBF"
El remedio que le encontré fue el siguiente:
Desde la version 6 de VFP:
SELECT * FROM NOTDBF INTO TABLE TEMP
Luego copie la tabla TEMP en NOTDBF :
CLOSE TABLES ALL
USE TEMP
COPY TO NOTDBF TYPE FOX2X && Para volverlo a la version 2.6

Saludos y suerte.
  Respuesta:  Manuel Vargas
- Hola mi amigo, este problema es muy comun una forma de evitarlo en colocando UPS en cada terminal donde tienes el sistema funcionando.

- Para el problema de la Base de datos hay dos formas de poder recuperar los datos

1- desde EXCEL abrir la base de datos dañada y luego la vuelve a grabar, como tipo base de datos. con esto ya Fox puede abrirla de nuevo.

2- hay un programa que se llama DBU el cual abre la base Dañada, luego bajas hasta el ultimo registro que es el dañado, lo borras y listo.

- dime como te fue con estos datos...

Manuel Vargas
Costa Rica.

  Respuesta:  Ahmed Bustamante
Amigo el error que te sale es porque siempre que ocurre una interrupcion en el fluido electrico, si se esta procesando informacion en las base de datos, los indicess de la mismas se corrompen, lo que tendrias que hacer es borrar los archivos indice (cdx) de las bases que te presenten ese problema y volver ha generarlos, para esto tendrias que hacer un modulo que te permita realizarlo de tal manera que estes necesitando del foxpro para hacerlo.
Con respecto al comando SET AUTOSAVE ON este es para forzar la grabacion de registros inmediatamente en las bases de datos ya que el el fox al momento de grabar datos lo hace en la memoria de la pc y cuando tiene un buen numero de registros en memoria recien los graba al disco, esto con la finalidad de acelerar los procesos, el comando SET AUTOSAVE ON, te garantiza que los datos que introduzcas se graben al disco inmediatamente pero te retraza los procesos aunque no se note cuando grabas un solo registro.
Espero haberte ayudado y suerte !!!!!
  Respuesta:  Sergio
Lo que se estropea de la base de datos al apagarse la PC en general son los indices, proba borrando los CDX o IDX y luego intenta abrir la tabla y regenera los indices. Espero que te funcione
  Respuesta:  Manuel Gomez
Amigo, a mi frecuentemente me pasa lo mismo y la solucion mas rapida que tengo en utilizando el foxplus y ejecutar modify structure y al cerrar puedo abrir la base en foxpro 2.6

    Pregunta:  900 - COMO IMPRIMIR MEDIA PAGINA EN FOXPRO 2.6 FOR WIN
Autor:  Alejandro Soto
Desarrollo aplicaciones administrativas en FoxPro 2.6 para Windows y necesito imprimir un recibo pequeño (media página), generé un informe a media página y utilize un tamaño de hoja personalizado del mismo tamaño, pero cada vez que imprimo me imprime los datos y ejecta la hoja, necesito que imprima y que la hoja se quede a mitad en la impresora sin ejectarla. Agradezco sugerencias. GRACIAS
  Respuesta:  henry vargas
las respuestas que dieron los demas puede servir, pero hay un detalle que debes tener en cuenta al cambiar la impresora se desconfigurará el tamaño del reporte.
La solución es la siguiente habras el reporte como tabla Ej:
use (nombrereporte.frx) exclusive cambia el valor de los campos del primer registro .
campo printer dejalo en blanco y los campos paperwidht(ancho del papel) y paperheight(alto del papel) coloqueles el valor requerido.
  Respuesta:  Manuel Medina Jimenez
Alejandro, soy Dominicano y soy tu unica solucion, te lo pondre facil.

1.-inicio
2.-configuracion
3.-impresora
4.-busca propiedades de la impresora
5.-clic en papel
6.-Toma tamaño definido por el usuario

Nota:

te aparecera:
Ancho 50
Largo 50.
o
ancho 100
largo 100

debe tener claro que los numeros anteriores representan un pulga ejemplo, si desea 8 pulgada debe multiplicar 100x8=800

si presenta problemas escribeme, cuando quiera.
  Respuesta:  Gerson Antonio Arenas Rangel
Mira Alejandro tambien tuve ese mismo problema en la empresa en la cual laboro actualmente es muy sencillo instalas la impresora con la cual vas a imprimir tu pagina, luego te vas al reporte y en la parte de archivo configurar pagina luego de alli se metes en propiedades y te va a mostrar una lista de los tipo de hoja te va a la ultima opción que es la de papel personalizado alli pulsas doble clik en el y le das el alto y el ancho de la pagina es decir hasta donde quieras imprimir has tu reporte normal y el te lo imprime en el alto y ancho especificado de San cristobal Venezuela Edo. Tachira . T.S.U Gerson Arenas
  Respuesta:  Ahmed Bustamante
Amigo lo que tienes que hacer es configurar tu tamaño de hoja al deseado, ya que si bien tu reporte es de media pagina, la misma esta configurada al tamaño estandar (A4, carta u oficio).. suerte !!!!
  Respuesta:  Jhonn G. Gutierrez A.
solo tines que configurar to reporte para que trabaje con tama;o definido por el usuario en distribucion de pagina, le das configurar impresora, y luego le das tamaño, y le pones tamaño definido por el usuario, y salvas el reporte.

Luego te vas a el panel de control de windows, impresoras, te vas a la impresora, le das configuracion de impresion, te vas a papel definido por el usuario y le das el tamaño que quieras

suerte...

    Pregunta:  902 - MIGRACION DESDE FOXPRO A VISUAL FOXPRO
Autor:  Carlos Aguirre
Estoy empezando a empaparme en Visual Foxpro 6.0 y queria saber si la migracion desde foxpro a visual foxpro es ´transparente´, que debo considerar, en que debo tener cuidado, existe una herramienta que haga esto automaticamente, es conveniente hacer esta migracion.
  Respuesta:  Gerson Antonio Arenas Rangel
Mira no entiendo casi tu pregunta pero te voy a dar dos casos que hice, primero programo mi nueva interface es decir la pantallas y la programación en visual fox lugo como tengo una base de datos existente bajo dos lo que hago es trasladarla hacia la carpeta que tengo la nueva aplicación, mira es muy sencillo sabes que los indices bajo dos son extenciones idx. y ntx mira crea los indices con lo mismos enlazado en la tabla de visual y tu problema esta solucionado y no pierdes indormacion, lo que pasa es que visual anexa a la tabla principal esos indices y los guarda con extension cdx, la otra parte es llevarlo todo abre el generador de menus y de pulse abrir el menu existente de la aplicación que realizo bajo dos, todo esto me funciono muy bien alguna duda me escribes...
  Respuesta:  Manuel Vargas
- Hola amigo, este problemita lo esperimente hace tiempo. Tengo varias aplicaciónes grandes en foxpro 2.6 para D.O.S y trate de trasladarlas VisualFoxpro, la conversion la realiza, pero los detalles me mataron ya que hay muchos cambios, luegos de pasar 3 semanas y semanas tratando de solucionar multiples problemas, decidi reporgramar todo en Visual y asi poder utilizar todas las ventajas que tiene. ESTO ES UNA OPINION MUY PERSONAL QUE DESEO COMPARTIR, LA CUAL ES MEJOR REPROGRAMAR.

- dime como te fue..

Manuel Vargas
Costa Rica.

  Respuesta:  Ahmed Bustamante
Si tus programas en foxpro fo DOS los has diseñado utilizando los generadores de ventanas e informes los prodras migrar automaticamente, el mismo foxpro al momento de intentar abrir una pantala, por ejemplo, diseñada en fox dos te abrira un asistente para la conversion, claro que despues tendrias que hacerle algunos arreglos al entorno pero personalmente te recomendaria que empieces desde cero, aprovechando algunas funciones de calculo que ya tengas fabricadas en el fox dos, ya que asi aprenderias mas y utilizarias en forma mas potentes los eventos, metodos y propiedades que tiene el visual foxpro, pues el unico metodo que utilizarian tus programas seria el valid que esta por compatibilidad.
Si tus programas los has escrito sin utilizar los generadores del foxpro for dos entonces si que tienes que empezar desde cero.... espero aberte ayudado.... y suerte !!!!

    Pregunta:  917 - ENTORNO DE DATOS EN VISUAL FOXPRO 5
Autor:  Johan Ortigaza
Tengo problemas con el entorno de datos en los formularios de una aplicacion en desarrollo. En ocaciones cuando intento ejecutar un formulario me dice que se perdio el entorno de datos y tengo que definirlo nuevamente. Por otro lado aveces tengo problemas con los objetos de tipo cursor cuando quiero actualizar la data. Les agradezco de antemano si me pueden proporcionar algun tipo de ayuda al respecto... gracias
  Respuesta:  Carlos Taborda
Debes Colocar en el procedimiento load del formulario las siguiente lineas:
IF NOT USED ("nombretabla")
USE nombretabla
ENDIF
Creo que con esto resolveras tu problema, tengo 17 años, y estoy algo novato en la programación, pero en fin lo que vale es el intento.
Saludos desde Colombia.
  Respuesta:  Jhonn G. Gutierrez A.
lo que te recomiendo es que te olvides del entorno y abras las bases de datos y las relacio nes desde la lineas de comando en el procediemiento load desde tu formulario de la forma
if used("Tablename")
select Tablename
else
use Tablename again alias Tablename in 0 shared
endif
en cuanto a los cursores no se pueden actualizar comunmente

cambia la sentencia de INTO CURSOR "cursorname" a INTO TABLE "CURSORNAME"

BY...

    Pregunta:  920 - COMINICACION DE MAQUINAS CON VISUAL FOX 5
Autor:  Hugo Ortiz
Hola

La duda que tengo es el como puedo comunicar varias maquinas desde una aplicacion creada en Visual Fox 5.0.

  Respuesta:  Adrián Escobedo
Creo que lo que necesitas es crear una aplicación "cliente-servidor".En la sección de ejemplos de tu paquete Visual FoxPro, encontraras ejemplos sencillos sobre la forma de crear una aplicación "servidor" y que mediante la plataforma que ofrece una red (novell, NT, etc.) puedes hacer comunicarla con la aplicación "cliente" que diseñes y que ejecutes desde otras máquinas y cuya programación también puedes ver en los ejemplos.
Quizá las necesidades de tu programa pueden resolverse solo con los recursos que ofrece tu red.
Espero haberte encaminado a la solución.

    Pregunta:  921 - RICH TEXT NO IMPRIME CORRECTAMENTE
Autor:  Jorge Mario Pelaez
Cuando se utiliza el rich text, se diseña el texto, tamaño de letra diferente, italica, etc, se graba en un campo memo, y cuando necesito mandarlo a imprimir, salen puros codigos de el tipo de letra que imprimo, por ejemplo: {/rtfl/ansi/deff0/deftab720{/fonttbl/f0/fswiss MS Sans Serif;}

estamos utilizando los ejemplos de visual fox, que se llama: USE THE RICHTEXT CONTROL

PUEDE ALGUIEN AYUDARME.

  Respuesta:  Foxito
Hola:

Lo que pasa es que el campo memo de Vfoxpro es un campo para guardar texto (solo letras) y no guarda formatos.... (negrita, cursiva, etc).... talvez lo que debes investigar el guardarlo en formato binario o de lo contrario en campos general (ole) o en archivos de texto (formato word)....

Tu RICH TEXT si funciona bien...

Bye!

    Pregunta:  929 - ARCHIVOS DE TEXTO EN FOX
Autor:  Pablo
Hola amigos,estoy programando en Fox Pro 2.6 y quisiera levantar datos desde un archivo de texto para guardarlos en una tabla,si alguien puede ayuarme les estare muy agradesido
  Respuesta:  Hugo
Si necesitas tomas linea a linea del TXT lo podes abrir con FOPEN() y despues dentro de un bucle vas tomando de a una linea con el FGET().Espero que te sirva.
  Respuesta:  David Toledo Sánchez
Es facil tienes que crear una tabla con un campo de gran longitud luego escribir en la barra de comandos del foxpro
append from (nombre del archivo) type sdf
con esta instruccion todo el archivo texto se grabara en un solo campo . lo que sigue no es tan dificil ya que tienes que hacer un programa que corte segun la longitud de los campos y lo traslade en otra tabla. Para esto te recomiendo en que uses el comando substr() y un while para ir vaciando registro tras registro a otra tabla
cualquier otra consulta escribeme a mi mail
  Respuesta:  Adrián Escobedo
Creo que esto es mas fácil de lo que supones, basta conocer la estructura de tu tabla .DBF e identifiques las posiciones que ocupan los tipos de datos de las columnas que alojes, por el lado de tu archivo de texto, debes hacer coincidir las posiciones de tus caracteres con las columnas en tu tabla .DBF destino, toma encuenta los datos tipo fecha, numéricos con punto decimal que puedan causarte problemas. La instrucción para ejecutar desde la linea de comandos de Fox es:
use
"APPEND FROM SDF"
Espero haberte encaminado a la solución.
  Respuesta:  Jhonn G. Gutierrez A.
todo lo que dijeron lo demas esta muy bien, sólo hay que recordar que el campo en tu base de datos debe ser obligatoriamente de tipo memo para efectos de consistencia

    Pregunta:  933 - CABECERAS GRID EN VISUAL FOXPR
Autor:  Cristian Pastor Toribio
necesito modificar la Cabecera (HEADER) que presente la propiedad caption los textoS largos en multiples Lineas.
  Respuesta:  Ignacio Luis Castillo
Prueba poner el caption del Header asi ´Texto1´+chr13+´texto2´+chr(13)+....
Contame si funciono

    Pregunta:  945 - ICONOS EN EL MENU DE VISUAL FOXPRO 5.0
Autor:  Carlos M. Taborda
Tengo la siguiente duda: Visual FoxPro 5.0 permite colocar iconos en el menú al lado izquierdo de algun palabra. Me refiero con esto porque en Programa Microsoft Word muestra esto para abrir-una carpeta, para nuevo-una hoja en blanco, etc. Gracias por aclararme esta duda.
  Respuesta:  Casteles Corp. Umaña
Utiliza dentro del Programa la Clusula _Screen.Icon = '<Nombre del Icono' , Esto me Funciono, Espero te Sirva
  Respuesta:  Coco
Esto se puede hacer en VFoxPro 6.0

|<  <<  5 6 7 8 9 10 11 12 13 14 15  >>  >|