> PROCEDURE dbc_OpenData(cDatabaseName, lExclusive, lNoupdate, lValidate) > *Immediately after DBC is opened. > Public xxxDbc as Exception > Try > pubLogName = Alltrim(pubLogName) > Catch to xxxDbc > If ( xxxDbc.ErrorNo == 12 ) && pubLogName not set > ? xxxDbc.Message > ? xxxDbc.LineNo > ? xxxDbc.ErrorNo > Public pubLogName = LOGNAMEPREFIX +"001.txt" > Finally > EndTry > ENDPROC >Leaving aside the actual problem, which you found yourself, I don't see this as a case for using TRY/CATCH. I think it would be clearer to write:
IF EMPTY(pubLogName) PUBLIC pubLogName pubLogName = LOGNAMEPREFIX + "001.txt" ENDif pubLogName = ALLTRIM(pubLogName)