My EG-flow opens 5 different datasources, make som filters and combine some of the datasets to create 4 new datasets. The 4 datasets are exported to Excel.
The flow was supposed to be scheduled to run every night, but when the flow is run in one take, it fails with the error:
"The open data operation failed. The following error occurred. The library "WORK" on server "SASAPP" was not found"
If I run the flow step by step the error does not occure.
What am I doing wrong? Is EG running in multiple WORK-directories at the same time - and is that what causes the error?
Best regards,
Mette
The flow without errors:
The flow with errors:
The error:
I'm not running parallel (I finally found where to specify that).
But that was what I ment by multiple Work-directories.
2 suggestions:
1
To make sure that you get the new tables you need for further processing at the right time, you might benefit from "conditional processing". You can read more about this in EG's Help in the section "working with conditional processing".
2
Another alternative is to use links so that you link all the bits of the flow together in one long process to avoid certain parts of the flow starting prematurely. You can read more about this in the section " Linking objects in a process flow"
Thanks @CecilyHoffritz
I have linked all the object, and all datasets are available at the right time.
When I run the flow in one take I can see the dataset being created, and some seconds later when a query is goint to use the dataset, it is not available, saying "WORK does not excist". If I click on the dataset I can open it, so it does excist. It is like EG temporarily looses the connection to WORK.
What does your program "Ret til 0" contain? It looks like that is one of the last things to run before it fails.
Otherwise, try to post the log as well. That may provide som more information.
The log from the Transpose node is below. Right after copying this log I tried to open the data work.periodisering and it opened without problems...
1 ;*';*";*/;quit;run;
2 OPTIONS PAGENO=MIN;
3 %put ERROR: Unable to get SAS code. Input data for task is not available. Error opening data "WORK.Periodisering".;
ERROR: Unable to get SAS code. Input data for task is not available. Error opening data "WORK.Periodisering".
4
5 QUIT; RUN;
6
And the program "Ret . til 0" is this little one:
data QUERY_FOR_OKO_BUDGET;
set QUERY_FOR_OKO_BUDGET_1;
if oko_forbrug = . then oko_forbrug = 0;
if oko_forbrug_pct = . then oko_forbrug_pct = 0;
run;
After picking my memory, I think it has to do with some tasks having some STP macros enabled. Try to go through the tasks you have coded yourself, and check the settings. As far as I remember somewhere you can set whether it executes in a STP context. When you have found it, try to go through all your code-tasks and check if it is disabled.
Hope that will fix the problem.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!