DEFINE CLASS RunTasks as Custom FUNCTION Run_scheduled_tasks() oWWIP = CREATEOBJECT("wwIPStuff") . . lcTime = TIME() oMySQLData.Get_Scheduled_Tasks('zSchld_tasks') SELECT what I need INTO CURSOR 'zTasks_toRun' SELECT zTasks_toRun SCAN IF NOT EMPTY(ALLTRIM(zTasks_toRun.cParameters)) THEN lcCommand = ALLTRIM(zTasks_toRun.cRunCmd) + ' ' + ALLTRIM(zTasks_toRun.cParameters) ELSE lcCommand = ALLTRIM(zTasks_toRun.cRunCmd) ENDIF oshell = CREATEOBJECT("wscript.shell") oshell.run(lcCommand,1,.t.) oMySQLData.Update_Task_LastRun(zTasks_toRun.CID) oWWIP.cSubject = zTasks_toRun.ScheduleName + ' completed.' oWWIP.cAttachment = TRIM(zTasks_toRun.cAttachments) ** semi-colons not allowed. In case users try them ** Separate Notify email list items with either comma or semi-colon lnRecips = ALINES(aRecips,zTasks_toRun.cNotify,",",";") FOR I = 1 TO lnRecips oWWIP.cRecipient = ALLTRIM(aRecips[i]) oWWIP.SendMail() ENDFOR ENDSCAN ENDFUNC ENDDEFINEI've created a program which has several messageboxes.