BookmarkSubscribeRSS Feed
MetteHenriksen
Fluorite | Level 6

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:

MetteHenriksen_1-1585561424270.png

The flow with errors:

MetteHenriksen_2-1585561458460.png

The error:

MetteHenriksen_3-1585561510454.png

 

 

 

7 REPLIES 7
rudfaden
Pyrite | Level 9
If you are running in parallel you need to make sure that "work" is pointing at the same directory. You should also make sure that the sessions wait until the data is ready.

If you are not running I parallel please specify what you mean by "multiple work directorys"
MetteHenriksen
Fluorite | Level 6

I'm not running parallel (I finally found where to specify that).

But that was what I ment by multiple Work-directories. 

 

CecilyHoffritz
SAS Employee

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"

MetteHenriksen
Fluorite | Level 6

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.

 

CKjeldsen
Fluorite | Level 6

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.

MetteHenriksen
Fluorite | Level 6

@CKjeldsen 

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;
CKjeldsen
Fluorite | Level 6

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.

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

Discussion stats
  • 7 replies
  • 974 views
  • 1 like
  • 4 in conversation