Usualmente, cuando tenemos que cerrar una tabla, vista o cursor de VFP antes verificamos que efectivamente dicha tabla esté abierta (para evitar el error 13 - No se encuentra el Alias -), con un código como este:
IF USED("MiTabla") USE IN "Mitabla" ENDIF
Puede ser sustituido por:
USE IN (SELECT("MiTabla"))
Esta información la encontré revisando en los foros de microsoft.public.fox.vfp.language-menus (09/Julio/2002) lo cual me pareció bastante interesante y quisiera compartir.
Louis, mientras esperas para una solución a tu problema, aqui esta una pequeña joya para ahorrar algo de código:
*!* CREATE CURSOR Test (Field1 C(10)) *!* SELECT 0 && Note que Test no esta en el area de trabajo actual *!* Cerrar Test en una sola linea de código USE IN (SELECT("Test")) *!* OtroTest no existe, no ocurre error! USE IN (SELECT("OtroTest"))
Si Test existe este será seleccionado y cerrado. Si Test no existe se seleccionará y cerrará el área 0, lo cual, no produce error alguno.
Cindy Winegarden MCSD, Microsoft Visual FoxPro MVP
cindy.winegarden@mvps.org http://cindywinegarden.adsl.duke.edu
Espero les sea de utilidad.
Espartaco Palma Martinez
Muy bueno eso del cierre de cursores y/o tablas, sin importar estén abierto o no. Grande Espartaco Palma Martinez.
ResponderBorrar