FoxPro/Visual FoxPro - Ayuda con el error C0000005

   
Vista:

Ayuda con el error C0000005

Publicado por many (84 intervenciones) el 16/03/2015 20:55:16
Saludo a todos y mil gracias por ver mi mensaje.

Tengo un formulario en VISUAL FOXPRO 9 y MYSQL, entendiendo que en un form de facturación debemos usar un cursor varias veces para hacer la búsqueda de artículos y para hacer la búsqueda por código hay que llenar los cursores con frecuencias y creo que esto es lo que me provoca el siguiente error:

Error grave: código de excepción=C0000005 @ 09/13/10 02:15:17 PM. Archivo de registro de errores: C:\Archivos de programa\Microsoft Visual FoxPro 9\vfp9err.log

Este error lo da 2 o 3 veces seguida, luego se estabiliza y en cualquier momento regresa el error y me saca del sistema.

Quisiera saber que hacer o la forma de limpiar un cursor totalmente para que en la próxima búsqueda regrese nuevo, actualmente uso:
DELETE ALL pero no puedo usar PACK ya que no esta exclusive.

Estoy tratando de no usar el mismo cursor para diferente tablas ya que los campos son diferente y esto me daba problemas.

Por favor, díganme algo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda con el error C0000005

Publicado por Fidel José (558 intervenciones) el 17/03/2015 12:39:27
Many:
Para limpiar un cursor utiliza ZAP. El comando PACK no está permitido en cursores.

Si utilizas cursores indexados, cuya indexación se crea en cada actualizacion del cursor, debes usar antes DELETE TAG ALL. De lo contrario, las entradas de índice se van apilando.
La idea es más o menos así:
SELECT cursor_Grid
DELETE TAG ALL
ZAP
APPEND FROM DBF("cursor_from_mysql")
INDEX ON campo Tag Etiqueta
* Rutina de configuración del control grid o refresh del grid.

Con respecto al error "=C0000005 " (maldito error), los problemas pueden ser varios:
1) El más frecuente (que no es tu caso), error en el archivo de índices (CDX). Aunque tal vez indexes los cursores, sería muy extraño que produzcan fallas en este sentido, sobre todo sistemáticas.
2) Menos frecuente y más complejo: problemas con la actualización (refresh) de diversos objetos, donde generalmente interviene un control grid. En la mayoría de los casos encontré la solución replanteando la presentación de datos y quitando todos los refresh explicitos que, en realidad, no se necesitan.
3) Menos frecuente y más complejo todavía: se agregan objetos subclaseados que producen algún conflicto.
Lamentablemente no es posible hacer un seguimiento (justamente porque Windows se deshace del problema cortando el programa), pero te puede dar una pista el punto del programa donde se interrumpe.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda con el error C0000005

Publicado por Jorge (1 intervención) el 19/06/2015 18:56:19
Excelente tu respuesta a mi me soluciono el error, adicionalmente cambien mi consulta select * por los campos minimos requeridos y continue trabajando sobre el mismo cursor y ya no me volvio a aparecer el error ... muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar