Have you ever linked SAS code, If so, describe the link and
any required statements used to either process the code or
the step itself?

Answer Posted / prakhar

SAS code could be linked using the GOTO or the Link statement.

The difference between the LINK statement and the GO TO statement is in the action of a subsequent RETURN statement. A RETURN statement after a LINK statement returns execution to the statement that follows LINK. A RETURN statement after a GO TO statement returns execution to the beginning of the DATA step, unless a LINK statement precedes GO TO, in which case execution continues with the first statement after LINK. In addition, a LINK statement is usually used with an explicit RETURN statement, whereas a GO TO statement is often used without a RETURN statement.

When your program executes a group of statements at several points in the program, using the LINK statement simplifies coding and makes program logic easier to follow. If your program executes a group of statements at only one point in the program, using DO-group logic rather than LINK-RETURN logic is simpler.

Goto eg.

data info;

input x;

if 1<=x<=5 then go to add;

put x=;

add: sumx+x;

datalines;

7

6

323

;

Link Eg.



data hydro;

input type $ depth station $;

/* link to label calcu: */

if type =’aluv’ then link calcu;

date=today();

/* return to top of step */

return;

calcu: if station=’site_1′

then elevatn=6650-depth;

else if station=’site_2′

then elevatn=5500-depth;

/* return to date=today(); */

return;

datalines;

aluv 523 site_1

uppa 234 site_2

aluv 666 site_2

…more data lines…

;



GOTO – http://support.sas.com/onlinedoc/913/getDoc/en/lrdict.hlp/a000201949.htm

LINK – http://support.sas.com/onlinedoc/913/getDoc/en/lrdict.hlp/a000201972.htm

Is This Answer Correct ?    0 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

Can you explain the process of calendar?

856


how the sas basic syntax style described? : Sas-administrator

790


how does sas handle missing values in formats? : Sas programming

829


What is SAS informats?

838


how does sas handle missing values in assignment statements? : Sas programming

776


Hello, I have PROC SQLs results group by 3 fields and I use SUM and COUNT functions in SQL. The problem is when I try to display my result with PROC TABULATE. I am getting very big numbers. I believe I make a mistake some where in Tabulate. Here is my Proc Tabulate. PROC TABULATE DATA=OUT04_05 FORMAT=12.; CLASS YR CENTRE VISA / PRELOADFMT EXCLUSIVE; VAR NEWUSER FRAUD TRANSFER AUTUSER REISSUE; TABLE CENTRE ALL, (YR ALL)*VISA, (NEWUSER*F=COMMA12. AUTUSER*F=COMMA12. FRAUD*F=COMMA12. TRANSFER*F=COMMA12. REISSUE*F=COMMA12.) / MISSTEXT={LABEL='0'} PRINTMISS RTS=20; FORMAT VISA VISAFMT.; KEYLABEL SUM = ' ' ALL = 'TOTAL'; LABEL YR = 'DATE YEAR' NEWUSER = 'TOTAL NEW ACCT' TRANSFER = 'TOTAL TRANSFER' FRAUD = 'TOTAL FRAUD TRANSFER' AUTUSER = 'TOTAL AUTH USERS' REISSUE = 'TOTAL REISSUE'; When I code it like : NEWUSER*N*F=COMMA12. AUTUSER*N*F=COMMA12. I get same amount numbers but to find a NEWUSER I use COUNT(*) and to find AUTUSER I use SUM(xxxx) function so both result shouldn’t be the same my problem is in this point. Could you tell me where the problem in code is. How can I display my result? TX.

1986


what are input dataset and output dataset options? : Sas programming

788


For clinical entire study how many tables will create approx?

1710


Name types of category in which SAS Informats are placed?

922


how can you import .csv file in to sas? : Sas programming

830


Name any two sas spawners? : sas-grid-administration

767


What are the uses of sas?

896


How to create a permanent sas data set?

858


for whom is sas data integration studio designed? : Sas-di

730


How would you include common or reuse to be processed along with your statements?

2115