ISEXCLUSIVE( )-Funktion
Gibt den Wert Wahr (.T.) zurück, wenn eine Tabelle oder Datenbank zur exklusiven Benutzung geöffnet ist; andernfalls wird Falsch (.F.) zurückgegeben.
ISEXCLUSIVE([cTableAlias | nWorkArea | cDatabaseName [, nType]])
Rückgabewerte
Logisch
Parameter
cTableAlias
Gibt den Alias der Tabelle an, für die zurückgegeben wird, ob sie zur exklusiven Benutzung geöffnet ist. Visual FoxPro zeigt eine Fehlermeldung an, wenn ein nicht vorhandener TabellenAlias angeben wird.nWorkArea
Gibt den Arbeitsbereich der Tabelle an, für die zurückgegeben wird, ob sie zur exklusiven Benutzung geöffnet ist. Ist im angegebenen Arbeitsbereich keine Tabelle geöffnet, gibt ISEXCLUSIVE( ) den Wert Falsch (.F.) zurück.cDatabaseName
Gibt den Namen der Datenbank an, für die zurückgegeben wird, ob sie zur exklusiven Benutzung geöffnet ist.nType
Gibt an, ob für eine Tabelle oder eine Datenbank zurückgegeben wird, ob sie zur exklusiven Benutzung geöffnet ist. Die folgende Tabelle zeigt die möglichen Werte für nType und den entsprechenden zurückgegebenen Status.nType Zurückgegebener Status für die exklusive Benutzung 1 Tabelle 2 Database Zur Emittlung, ob eine Datenbank zur exklusiven Benutzung geöffnet ist, müssen Sie für nType den Wert 2 angeben.
Hinweise
Werden die optionalen Argumente cTableAlias, nWorkArea oder cDatabaseName nicht angegeben, gibt ISEXCLUSIVE( ) einen Wert für die im aktuellen Arbeitsbereich geöffnete Tabelle zurück.
Eine Tabelle wird zur exklusiven Benutzung geöffnet, indem Sie das Schlüsselwort EXCLUSIVE im USE-Befehl angeben oder SET EXCLUSIVE vor dem Öffnen der Tabelle auf ON setzen.
Eine Datenbank wird mit dem Schlüsselwort EXCLUSIVE in OPEN DATABASE zur exklusiven Benutzung geöffnet.
Beispiel
Im folgenden Beispiel überprüft die ISECXLUSIVE( )-Funktion, ob die Tabelle zur exklusiven Benutzung geöffnet wurde. Die Tabelle wird nicht neu indiziert, da sie im aktuellen Arbeitsbereich nicht zur exklusiven Benutzung geöffnet wurde.
cExclusive = SET('EXCLUSIVE')
SET EXCLUSIVE OFF
SET PATH TO (HOME(2) + 'data\')
OPEN DATA testdata && Opens the test databsase
USE customer && Not opened exclusively
USE employee IN 0 EXCLUSIVE && Opened exclusively in another work area
IF ISEXCLUSIVE( )
REINDEX && Can only be done if table opened exclusively
ELSE
WAIT WINDOW 'The table has to be exclusively opened'
ENDIF
SET EXCLUSIVE &cExclusive