BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
adjie
Obsidian | Level 7

Hi, i'm trying to perform oversampling on SAS Studio. Before performing the oversampling, I have create cas session to connect with the libraries, here is the code.

cas casauto host="example.host" port=5570;
proc cas;
	session casauto;
	session.sessionstatus result=s;
	put s;
run;

CASLIB _ALL_ assign;
options casdatalimit=50G;

After that, i performed the oversampling and it worked just fine without any errors.

adjie_0-1619603023241.png

As you can see the output table is already listed on the public library. But when I tried to look for the table from SAS VA or Environment Manager the table doesn't appear. This issue also happened before when I ran a query file, the output table is listed on the library in SAS Studio but I couldn't find the table when I tried to add the data to SAS VA.

 

Did I miss anything?

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
BrianGaines
SAS Employee

Hi @adjie,

 

In order to access an in-memory table from another SAS Viya application such as VA or Environment Manager, you need to "promote" the table so that it has "global" scope. For example, you can do this by using the DATA step:

data public.pd_sampled(promote=yes);
   set public.pd_sampled;
run;

Or you can use the table.promote action directly:

proc cas;
	action table.promote /
		caslib='public',
		table='pd_sampled';
	run;
quit;

By default, in-memory CAS tables have "session" scope, meaning that they are available only within the specific CAS session that you are working with. So to make a table available in a different CAS session (the new CAS session that is created when you use VA), you need to promote the table to be global scope.

 

Does that take care of the issue?

 

Thanks,

 

-Brian

 

 

View solution in original post

2 REPLIES 2
BrianGaines
SAS Employee

Hi @adjie,

 

In order to access an in-memory table from another SAS Viya application such as VA or Environment Manager, you need to "promote" the table so that it has "global" scope. For example, you can do this by using the DATA step:

data public.pd_sampled(promote=yes);
   set public.pd_sampled;
run;

Or you can use the table.promote action directly:

proc cas;
	action table.promote /
		caslib='public',
		table='pd_sampled';
	run;
quit;

By default, in-memory CAS tables have "session" scope, meaning that they are available only within the specific CAS session that you are working with. So to make a table available in a different CAS session (the new CAS session that is created when you use VA), you need to promote the table to be global scope.

 

Does that take care of the issue?

 

Thanks,

 

-Brian

 

 

adjie
Obsidian | Level 7
Yes, this solves the problem. Thanks.

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

Register now

Develop Code with SAS Studio

Get started using SAS Studio to write, run and debug your SAS programs.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 2682 views
  • 3 likes
  • 2 in conversation