Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have the following code which opens and runs a couple of SAS jobs. The
problem is it submits the SAS jobs one after the other without waiting for the first to complete. This means a message box appears in SAS that says: Note: is currently executing. All subsewuently submitted statements will not begin executing until its completion. What I need VB to do is wait until the first job has finished and then submit the second. I could make VB wait for a defined length of time but due to server speeds it is hard to say how long that will take. I don't want to make it a long time as that will defeat the purpose of automating it. Is there a way to let VB know when the first job has completed? Code below: Sub macro1() Dim OleSAS As Object Set OleSAS = CreateObject("SAS.Application") OleSAS.Visible = True ExePath = "%include '\\Appsl2021\RISKDATA2\Reporting\AutoExec\Reportin gAutoExec.sas';" OleSAS.submit (ExePath) ExePath = "%include '\\Appsl2021\RISKDATA2\Reporting\Programs\Daily Production\005. Daily Recoveries Analysis\Daily Jobs - Wasis Checks\PL New Daily Wasis.sas';" OleSAS.submit (ExePath) ExePath = "%include '\\Appsl2021\RISKDATA2\Reporting\Programs\Daily Production\005. Daily Recoveries Analysis\Daily Jobs - Wasis Checks\PL New Daily Colls Wasis.sas;" OleSAS.submit (ExePath) End Sub |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Have you tried using the SAS "wait" command ?
http://www.google.com/search?source=...q=sas+ole+wait Tim "fullers" wrote in message ... I have the following code which opens and runs a couple of SAS jobs. The problem is it submits the SAS jobs one after the other without waiting for the first to complete. This means a message box appears in SAS that says: Note: is currently executing. All subsewuently submitted statements will not begin executing until its completion. What I need VB to do is wait until the first job has finished and then submit the second. I could make VB wait for a defined length of time but due to server speeds it is hard to say how long that will take. I don't want to make it a long time as that will defeat the purpose of automating it. Is there a way to let VB know when the first job has completed? Code below: Sub macro1() Dim OleSAS As Object Set OleSAS = CreateObject("SAS.Application") OleSAS.Visible = True ExePath = "%include '\\Appsl2021\RISKDATA2\Reporting\AutoExec\Reportin gAutoExec.sas';" OleSAS.submit (ExePath) ExePath = "%include '\\Appsl2021\RISKDATA2\Reporting\Programs\Daily Production\005. Daily Recoveries Analysis\Daily Jobs - Wasis Checks\PL New Daily Wasis.sas';" OleSAS.submit (ExePath) ExePath = "%include '\\Appsl2021\RISKDATA2\Reporting\Programs\Daily Production\005. Daily Recoveries Analysis\Daily Jobs - Wasis Checks\PL New Daily Colls Wasis.sas;" OleSAS.submit (ExePath) End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
jobs | Excel Worksheet Functions | |||
More trusted jobs here | Excel Programming | |||
Need help on my Jobs applied too SS | Excel Discussion (Misc queries) | |||
Need help on my Jobs applied too SS | Excel Programming | |||
print jobs | Excel Discussion (Misc queries) |