- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I have DI Studio job A. Within it it calls job B and then job C. Is there any way I can share work tables and reference them as input/output tables in my jobs? Currently all I can think of is to write them to permanent data sets in permanent libraries that are registered in metadata. For various reasons this is far from ideal.
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Per definition, WORK is always "private" to a given SAS instance, and exists only while the instance is active. If you need program B to have the same WORK context as program A, you need to %include it in A.
From what I know about DI, each job will run in a separate BatchServer session, so you have to use permanent libraries to hand data over from one job to another.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Jobs B and C are nested within A so as far as I can see from the generated code they are all one SAS instance.
I think I've found a way to do it.
In job A create the work data set as usual.
In job B create a User Written Code node that has no code but has an output work data set. Manually give it the same name and variables as the work data set created in A. It will then work.
See the attached package to see for yourself. Run job A and check the Output window.
Please let me know if you have any better ideas.
Thanks.