LOCAL m.loQuery, m.lnBefore, m.lnAfter, m.lcResult >>>>m.loQuery = CREATEOBJECT('sesCustomQuery') >>>>*m.lnBefore and m.lnAfter are just here to show zero >>>>*effects from running the query. >>>>m.lnBefore = AUSED(laBefore) >>>>m.lcResult = m.loQuery.ReturnValueFromQuery() >>>>m.lnAfter = AUSED(laAfter) >>>>?m.lnBefore,m.lnAfter,m.lcResult >>>>RETURN >>>> >>>>DEFINE CLASS sesCustomQuery as Session >>>>DataSession = 2 >>>> >>>>PROCEDURE ReturnValueFromQuery >>>>SELECT TOP 1 cust_id FROM (HOME()+"SAMPLES\DATA\CUSTOMER.DBF") CUSTOMERS ORDER BY cust_id INTO CURSOR temp >>>>RETURN temp.cust_id >>>>ENDPROC >>>>ENDDEFINE>>>>
>>>>>>AUSED(laCurrAliases) >>>>>> >>>>>>*-- Execute a Sql Select that opens one or more tables >>>>>>*** select * from mytable1 join mytable2 .. join mytable3.. etc. >>>>>> >>>>>>lnallAliases = AUSED(laArr) >>>>>> >>>>>>FOR lnLoop = 1 TO m.lnallAliases >>>>>> IF ASCAN(laCurrAliases,m.laArr[m.lnLoop,1])# 0 >>>>>> LOOP >>>>>> ENDIF >>>>>> USE IN (m.laArr(m.lnLoop,1)) >>>>>>NEXT >>>>>>>>>>>>
*-- bookmark selected area >>>>>>>>lcSelect = ALIAS() >>>>>>>> >>>>>>>>*-- Execute a Sql Select that opens one or more tables >>>>>>>>*** select * from mytable1 join mytable2 .. join mytable3.. etc. >>>>>>>> >>>>>>>>lnOpenDbfs = AUSED(laArr) >>>>>>>> >>>>>>>>FOR lnLoop = 1 TO m.lnOpenDbfs >>>>>>>> >>>>>>>> IF m.laArr[m.lnLoop,1] = m.lcSelect >>>>>>>> LOOP >>>>>>>> ENDIF >>>>>>>> >>>>>>>> USE IN (m.laArr(m.lnLoop,1)) >>>>>>>>NEXT>>>>>>>>
>>>>>>>>>*-- bookmark selected area >>>>>>>>>nSelect = select() >>>>>>>>> >>>>>>>>>*-- Execute a Sql Select that opens one or more tables >>>>>>>>>select * from mytable1 join mytable2 .. join mytable3.. etc. >>>>>>>>> >>>>>>>>>*-- Close all tables opened in the above SQL Select. >>>>>>>>> >>>>>>>>>*-- I believe I need to know the highest SELECT() at this >>>>>>>>>point and scan it backwards until coming to nSelect. >>>>>>>>>But how to determine currently highest SELECT()? >>>>>>>>> >>>>>>>>>>>>>>>>>>