>>use (_samples+'data\customer') in 0 Shared Alias Table1 >>Create Cursor Table2 (p_name c(20)) >> >>? IsTable("table1") && Return .T. >>? IsTable("table2") && Return .F. >> >>Procedure IsTable(tcTableName) >> *** What is the function? >>Endpr >>>>
>(1) >IsTable = !empty(cursorgetprop('DataBase', m._alias)) and inlist(Cursorgetprop('SourceType', m._alias), DB_SRCTABLE) > >(2) >IsView = !empty(cursorgetprop('DataBase', m._alias)) and !inlist(Cursorgetprop('SourceType', m._alias), DB_SRCTABLE) > >(3) otherwise >IsCursor >>
>&& excerpt form foxpro.h >*-- Source Types for CursorGetProp() >#DEFINE DB_SRCLOCALVIEW 1 >#DEFINE DB_SRCREMOTEVIEW 2 >#DEFINE DB_SRCTABLE 3 >The only problems here is for Free tables. They also returns 3 for CURSORGETPROP("SourceName",Alias).
CREATE TABLE Test FREE (Fld1 I) USE SELECT * FROM Test INTO CURSOR aaaa ? CURSORGETPROP("SourceType",[aaaa]) ? empty(cursorgetprop('DataBase', [aaaa])) ? CURSORGETPROP("SourceType",[Test]) ? empty(cursorgetprop('DataBase', [Test]))