[Progress Communities] [Progress OpenEdge ABL] Forum Post: RE: DBTASKID(1) gives ? (NULL)

Status
Not open for further replies.
F

frank.meulblok

Guest
In addition to what Gus said, there's something else to consider if you have multiple databases connected at the same time. The ABL client will not tell a database that it has an active transaction, until it accesses that database (= performing any CRUD operation) within that transaction. And with a database remaining unaware, it won't be assigning a number for DBTASKID to return. Simplified example, code such as this: FIND FIRST db1.table1 SHARE-LOCK. DO TRANSACTION: FIND FIRST db2.table2 NO-LOCK. MESSAGE DBTASKID("db1") DBTASKID("db2"). END. will show "? ". That's because the client is not interacting with "db1" after the transaction starts (despite signalling it may be going to modifiy data before the transaction started), but it is interacting with "db2" (even though it doesn't plan to update anything there).

Continue reading...
 
Status
Not open for further replies.
Top