>Is there a way to programmatically determine whether an index tag for a table exists?
>
>I've got an app in production and we have an upgrade to the software, on that requires an existing table have an additional index added to it -- a regular index.
>
>I have a startup routine that already checks to make sure needed tables are where they should be so I was thinking of modifying the startup routine so it checks to see if the index tag for the table in question already exists in the table's CDX. If not, then I'll create it programmatically, otherwise, do nothing. I can't find a FoxPro function that already does something like that.
>
>Any or suggestions ideas?
Try:
FUNCTION TagExists
LPARAMETERS cTagToFind, cAlias, cCDXFile
LOCAL lResult, nTagNo, cTag
cTagToFind = UPPER(cTagToFind)
lResult = .F.
nTagNo = 1
cTag = TAG(cCDXFile, nTagNo, cAlias)
DO WHILE ! EMPTY(cTag)
IF cTagToFind == UPPER(cTag)
lResult = .T.
EXIT
ELSE
nTagNo = nTagNo + 1
cTag = TAG(cCDXFile, nTagNo, cAlias)
ENDIF
ENDDO
RETURN lResult