BookmarkSubscribeRSS Feed
ajaybetham
Calcite | Level 5

I am using the below code to call a DB procedure from Sas. Sas is calling the procedure 2 times for one execution. Please help why it is calling the procedure 2 times.

 

%macro exsetup

%put &sysuserid;

proc sql;

connect to oracle(path=<<service>> user=<<username>> password=<<password>>);

libname l123 oracle user=<<username>> password=<<password>> path=<<service>>

dbconinit = "begin pkg.procedure_name(1234); end;";

quit;

%mend exsetup;

%exsetup;

1 REPLY 1
SASKiwi
PROC Star

Embedding a LIBNAME statement inside PROC SQL makes no sense. Move it to open code. Also not sure why you need both a libname DB connection and also an SQL passthru DB connection. What does your complete code look like?

 

%macro exsetup
%put &sysuserid;

libname l123 oracle user=<<username>> password=<<password>> path=<<service>>
dbconinit = "begin pkg.procedure_name(1234); end;";

proc sql;
connect to oracle(path=<<service>> user=<<username>> password=<<password>>);
quit;
%mend exsetup;
%exsetup;

 

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

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
  • 1 reply
  • 1029 views
  • 0 likes
  • 2 in conversation