Crear Indices Compuestos en modo Buffering 5 VFP 9.0

358 views
Skip to first unread message

integral

unread,
Aug 8, 2019, 1:28:21 PM8/8/19
to Comunidad de Visual Foxpro en Español

Estimados Amigos :

Estoy teniendo problemas con la creación de los Archivos de Indices Compuestos en modo Buffering

He retomado la programación después de mas de un año y me cuesta un poco realizar algunas tareas que en su momento las hacia sin problemas.

Cuando programaba en VFP 8.0 crear indices compuestos desde la misma tabla me resultaba bien simple

Ahora trato de hacer lo mismo en VFP 9.0 y no se crean los archivos de indices compuesto

Entonces decidi hacerlo por codigo en el evento Load. Y me presenta un error...

Les comento que estoy utilizando Buffering 5 y las tablas estan alojadas en el Entorno de Datos...

Aqui el codigo que estoy utilizando. 



**************************
* BASES DE DATOS *
************************** 
IF Used(".\TABLAS\Stock")
  Use In ".\TABLAS\Stock"
ENDIF

IF !File(".\TABLAS\Reg_Stock.cdx") 
   SELECT 1
   Use ".\TABLAS\Stock.dbf" EXCLUSIVE  
   WAIT WINDOW "Creando el Nuevo Indice Ahora..." TIMEOUT .5
   INDEX ON Registro TAG Reg_Stock                         && Indice Compuesto
   Close Database
ENDIF

SELECT 1
Use ".\TABLAS\Stock.dbf" Index ".\TABLAS\Reg_Stock.cdx" && SHARED 

 
SELECT Stock  
=CURSORSETPROP("Buffering",5,"Stock")


Adjunto el error que me indica en una imagen..

Agradezco sus comentarios y sugerencias.

Saludos,

INTEGRAL

ERROR.jpg


Antonio Meza

unread,
Aug 8, 2019, 1:35:13 PM8/8/19
to Comunidad de Visual Foxpro en Español
Nunca use tablas directamente siempre use vistas locales y de igual forma en el Entorno de Datos!!

Entonces lo que te esta pasando es que el Entorno de Datos se ejecuta primero que el LOAD del formulario, por lo que tu código debe estar en el método BeforeOpenTables y creo que la linea donde abres la tabla SHARED esta de mas pues ya el Entorno de datos las va abrir, e incluso checa las propiedades de la tabla en el entorno de datos para que le marques como shared, ya no recuerdo mucho de eso!!! jejejejejeje

saludos
Antonio Meza

jmn...@gmail.com

unread,
Aug 8, 2019, 9:38:20 PM8/8/19
to publice...@googlegroups.com

Estimado, hasta donde recuerdo, no puedes indexar en modo buffer.

 

 

Saludos cordiales,

 

Manuel Navarro

--
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/0edaeca5-8cb9-42d9-9945-b617ff46da78%40googlegroups.com.

image001.jpg

HernanCano

unread,
Aug 9, 2019, 12:15:18 AM8/9/19
to Comunidad de Visual Foxpro en Español
Colega:
El Buffering no tiene nada que ver con tu impasse.

Realiza las sgtes modificaciones y nos cuentas:

**************************
** BASES DE DATOS **
************************** 
** IF Used(".\TABLAS\Stock")
**   Use In ".\TABLAS\Stock"
** ENDIF
if used("Stock")
   use in "Stock"
endif

IF !File(".\TABLAS\Reg_Stock.cdx") 
   SELECT 1
   Use ".\TABLAS\Stock.dbf" EXCLUSIVE  
   WAIT WINDOW "Creando el Nuevo Indice Ahora..." TIMEOUT .5
   wait window "Creando el nuevo índice ahora..." nowait noclear
   INDEX ON Registro TAG Reg_Stock                         && Indice Compuesto
   Close Database
ENDIF

SELECT 1
Use ".\TABLAS\Stock.dbf" Index ".\TABLAS\Reg_Stock.cdx" && SHARED 
** SELECT Stock  

integral

unread,
Aug 9, 2019, 12:12:51 PM8/9/19
to Comunidad de Visual Foxpro en Español

Amigos del Foro :

Muy Buenos Días, estuve revisando mis trabajos realizados en VFP 8.0 y ademas encontré un archivo PDF que explica a detalle 
la creación de los diferentes tipos de archivo de indices en VFP

Y ya pude resolver mi problema.

Gracias a todos por sus comentarios y sugerencias.

Saludos,

INTEGRAL

PD : ADJUNTO EL ARCHIVO PDF POR SI A ALGUN COLEGA LE SEA DE INTERES.

El jueves, 8 de agosto de 2019, 12:28:21 (UTC-5), integral escribió:
Crear_Indice._ar
Reply all
Reply to author
Forward
0 new messages