Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Record is in use by another user.
Message
From
30/09/1997 13:55:34
 
 
To
30/09/1997 12:06:08
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
00052443
Message ID:
00052472
Views:
27
>Michel- did you ever get closer to tracking down the cause/solution of this problem? If you remember, I had told you that in a couple of months of operation, I had seen the error twice. Well It is now more like twice daily. Two things have changed- 1. more users, and 2. Network problems. We are currently tracking doen the problems NLMs that are causing the network to bog, but it could take awhile. My errorhandler returns the line containing APPEND BLANK as the offender, so I assume that the real offender is in my stored procedure newid(). Here is the code in the DBC:
>
>FUNCTION NewID(tcAlias)
>LOCAL lcAlias, ;
> lnID, ;
> lcOldReprocess, ;
> lnOldArea
>lnOldArea = SELECT()
>IF PARAMETERS() < 1
> lcAlias = UPPER(ALIAS())
>ELSE
> lcAlias = UPPER(tcAlias)
>ENDIF
>lcOldReprocess = SET('REPROCESS')
>SET REPROCESS TO AUTOMATIC
>IF !USED("idnums")
> USE temptest!idnums IN 0
>ENDIF
>SELECT idnums
>IF SEEK(lcAlias, "idnums", "table")
> IF RLOCK()
> lnID = idnums.nextid
> REPLACE idnums.nextid WITH idnums.nextid + 1
> REPLACE updated with datetime()
> UNLOCK
> ENDIF
>ELSE && Table name was not found in idnums table. Create a new record and initialize it to 1
> APPEND BLANK
> REPLACE table WITH lcalias
> REPLACE nextid WITH 1
> REPLACE updated with datetime()
> lnID = idnums.nextid
>ENDIF
>SELECT (lnOldArea)
>SET REPROCESS TO lcOldReprocess
>RETURN lnID
>ENDFUNC
>
>If anyone can give me any insight as to why this is happening or how I can prevent it, I would be really appreciative. Every time this particular routine crashes, I have to do a bunch of record maintenance. This is costing me more time than I would like to spend on it.

Eric,
Instead of append blank, why not use an Insert?? This way you only have to have the header of the table you are adding data to for one shot, as apposed to the append blank, then replace ... series..

Thanx!

Tony Miller
Vancouver, Wa
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform