Error Nº1: El archivo "" no existe

Yo otra vez... Te había hecho una consulta en la que te decía que al tratar de abrir algunos formularios en la PC del cliente me tiraba el error:
Error Nº1: El archivo "" no existe
Me dijiste que agregue en el programa de inicio el siguiente código:
Local lcDefaultPath
If _vfp.StartMode = 0 And ;
Type("_vfp.ActiveProject")=="O"
lcDefaultPath = _vfp.ActiveProject.HomeDir
Set Path To (Addbs(lcDefaultPath)) Additive
Else
*-Ejecuta por este camino cuando se trata de un ejecutable
lcDefaultPath = Sys(5)+Sys(2003)
lcDefaultPath = lcDefaultPath
Set Path To (Addbs(lcDefaultPath)) Additive
Endif
Set Path To (Addbs(lcDefaultPath)) Additive
Set Default To (lcDefaultPath)
Lo hice pero me da un error en la última línea:
"La ruta o el nombre de archivo no es válido"
No comprendo muy bien el código que me enviaste. Y si debo cambiar algo para que funcione en mi inicio.
Aquí te envío además el código que se encuentra en mi programa de inicio (inicio.prg):
clear
public registro, senial, senial2, pciabuscada, registro, obrabuscada, localidadbuscada, pacientebuscado, senialtrans1, senialtrans2
set default to c:\SistClinica
set path to c:\SistClinica,c:\SistClinica\datos,c:\SistClinica\listados,c:\SistClinica\iconos,;
c:\SistClinica\formularios,c:\SistClinica\librerias,c:\SistClinica\programas,c:\SistClinica\imagenes,;
c:\SistClinica\otros
set classlib to c:\SistClinica\LIBRERIAS\misclases.vcx &&,backstyle.vcx,vfpcalendar.vcx
set confirm on
set date to french
set century on
set deleted on
set talk off
set safety off
set exclusive off
set multilocks on
do form principal
read events
Desde ya muchísimas gracias.

1 Respuesta

Respuesta
1
El programa de inicio que me muestras está muy bien, ¿te sigue dando error? ¿En qué línea?
Mientras estaba en el inicio.prg se posicionaba en la última línea de código y me tiraba el error:
Error Nº 202: La ruta o nombre de archivo no es válido
Luego lo moví al Init del formulario principal (el que llamo desde el inicio.prg) y me aparece el mismo error antes de entrar al formulario, pero si le doy aceptar, entra traquilamente.
En el ejecutable que generé, no aparece el error...
Intenta lo siguiente en tu programa de inicio:
TRY
set default to c:\SistClinica
set path to c:\SistClinica,c:\SistClinica\datos,c:\SistClinica\listados,c:\SistClinica\iconos,;
c:\SistClinica\formularios,c:\SistClinica\librerias,c:\SistClinica\programas,c:\SistClinica\imagenes,;
c:\SistClinica\otros
set classlib to c:\SistClinica\LIBRERIAS\misclases.vcx &&,backstyle.vcx,vfpcalendar.vcx
set confirm on
set date to french
set century on
set deleted on
set talk off
set safety off
set exclusive off
set multilocks on
CATCH TO loException
ENTRY
if type("loException")="O"
   SET STEP ON
endif
do form principal
read events
* de esa manera si salta el error fox lo va a capturar en el objeto loException, en el depurador abre la ventana de inspección y mira el contenido de la variable loException, vas a poder descubrir en que línea exacta está el error, cual es el archivo que no encuentra etc etc..
Ok, voy a intentar hacer eso...
Otro problema, al intentar copiar de nuevo la tabla a la base de datos (porque tiene los datos cargados por el cliente) al querer abrirla me tira el siguiente error:
Los campos de la tabla "pacientes" no coincidían con las entradas de la base datos
supongo que porque algún campo fue modificado, pero no estoy segura...
¿Qué puedo hacer?
Tienes que abrir el proyecto, y en la solapa de datos, quitar la tabla de la base de datos y luego volver a agregarla...
El problema es que me salta el error que no se encuentra uno de los campos (que después lo eliminé yo de la tabla original) y no me la deja agregar...
Es que tenés que descolgarla de la base de datos dejándola libre y luego volviendo a agregarla para que re-valide la estructura..
Hace estos pasos...
1) En la ventana de comandos usa este código para liberarla:
FREE TABLE C:\PROGRAMA\DBC\TABLA1.DBF
Reemplaza "C:\PROGRAMA\DBC\TABLA1.DBF" por tu tabla.
2) Abrí el proyecto y anda a la solapa datos, desplegá las tablas de la base de datos, dale click derecho a la tabla y pone Quitar, cuando te pida confirmación pon nuevamente Quitar.
De esa manera la desvincula. Luego ten en cuenta que los campos que hayan sido de un mayor de 10 caracteres en su nombre se van a acortar a 10 caracteres por lo que si te da error de variable seguramente son los indices que al haber cambiado el nombre del campo generar el error.
Para solucionar esto podes abrir la tabla en exclusiva, entrar a modificar su estructura, borra o modifica los indices para que eno den error y luego al renombrar los campos volvé a dejar los índices como estaban (esto es importante que lo hagas luego de agregar la tabla nnuevamente a la base de datos porque sino los campos se van a seguir acortando a 10 caracteres)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas