Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Function Problems
Message
From
18/11/1999 10:51:37
 
 
To
All
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Function Problems
Miscellaneous
Thread ID:
00292472
Message ID:
00292472
Views:
52
FUNCTION GetKey
LPARAMETERS tcTable

LOCAL lnArea, llOpened, liRetVal

* Save current work area
lnArea = SELECT()
llOpened = .F.

IF !USED("Keys")
USE Keys IN 0 SHARED
llOpened = .T.
ENDIF
SELECT Keys
SET ORDER TO TAG Table

I used GetKey("MyTableName") in the default of the Primary key
in this table to generate a incremented number. what am i doing
wrong?


* FLOCK seems to work a bit better than RLOCK.
* I've never had a problem with it.
DO WHILE !FLOCK()
ENDDO

SEEK UPPER(tcTable)
IF FOUND()
liRetVal = NextId
REPLACE NextId WITH NextId + 1
ELSE
INSERT INTO Keys (Table, NextId) VALUES (tcTable, 2)
liRetVal = 1
ENDIF

FLUSH
UNLOCK

IF llOpened
USE IN Keys
ENDIF

SELECT (lnArea)
RETURN liRetVal
Next
Reply
Map
View

Click here to load this message in the networking platform