He creado la siguiente función para crear los índices de ordenación de la Base de Datos Clientes.
El problema es que esta función es llamada desde otras y en el momento de ejecutarse me lanza el error de que no existe la variable n.
Evidentemente n es una variable local de la función ActualizarBases2 y no es visible desde las funciones que llaman a la función ActualizarBases2.
Code: Select all
#Include 'hmg.ch'
* ---------------------------------------------------------------------------- *
* ---------------------------------------------------------------------------- *
Function ActualizarBases2()
Local n:=1 // Variable auxiliar
If !File('Clientes.Dbf') // Si no existe, creo el fichero de Clientes
CreaCli() // Esta función crea la Base de Datos de Clientes (no está incluida en este ejemplo)
EndIf
If !File('Clientes.Cdx') // Creo un índice con un Tag por cada campo de la Base de Datos
USE 'Clientes' SHARE NEW
For n=1 To FCount()
INDEX ON Clientes->(FieldName(n)) TAG FieldName(n) TO 'Clientes.Cdx'
Next
EndIf
Return Nil
Saludos
Rafael Pérez