Step Boundaries
Step Boundaries
/A Point at which SAS recognizes the step is completed is called step boundaries.
SAS contains two step boundaries
a) Data step boundaries - Data and run are the data step boundaries
b) Proc Step boundaries - proc and run or quit are the proc step boundaries.*/
Data test;
a=25;
b=50;
c=a+b;
run;
/*It is used to execute the procedures with the help of run groups*/
Data Marks;
input Math Sci;
datalines;
45 67
72 80
39 62
96 80
49 52
;
proc print data=marks;
run;
/*Data*/
/*Eid=A001*/
/*Ename=Anil*/
/*Egen=Male*/
/*Eage=27*/
/*Edesign=Analyst*/
/*Esal=50000*/
/*Raw Data*/
/*A001,Anil,Male,27,Analyst,50000*/
/*Data <libname>.<dsn>;*/
/*Infile datalines <options>;*/
/*Input <Var1> $ <var2> ......;*/
/*Datalines;*/
/*---------*/
/*---------*/
/*---------*/
/*;*/
/*Run;*/
/*1.DSD*/
/*2.DLM*/
/*3.MISSOVER*/
/*4.TRUNCOVER*/
/*5.FIRSTOBS=m*/
/*6.OBS=n*/
Data Emp;
Infile datalines;
Input Eid $ Edesign $ Esal;
datalines;
A001 Analyst 50000
A002 Hr 70000
A003 Manager 120000
;
Run;
Proc print data=Emp;
run;
Data Emp1;
Infile cards;
Input Eid $ Edesign $ Esal;
cards;
A001 Analyst 50000
A002 Hr 70000
A003 Manager 120000
;
Proc print data=Emp1;
run;
Data Emp3;
Input Eid $ Edesign $ Esal;
cards;
A001 Associate 50000
A002 Hr 70000
A003 Manager 120000
;
Proc print data=Emp3;
run;
/*Input Styles*/
/*1.List input*/
/*2.Formatted input*/
/*3.Column input*/
/*4.Mixed input*/
Data Emp3;
Input Eid $ Edesign $ Esal;
cards;
A001 Associate 50000
A002 Hr 70000
A003 Manager 120000
;
Proc print data=Emp3;
run;
/*1.DSD */
Data Emp4;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001,Associate,50000
A002,Hr,70000
A003,Manager,120000
;
Proc print data=Emp4;
run;
Data Emp5;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001, Associate,50000
A002,Hr ,70000
A003,Manager,120000
;
Proc print data=Emp5;
run;
Data Emp6;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001,,50000
A002,Hr,70000
A003,Manager,120000
;
Proc print data=Emp6;
run;
Data Emp7;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001,"Associate",50000
A002,Hr,70000
A003,Manager,'120000'
;
Proc print data=Emp7;
run;
/*2.DLM*/
Data Emp8;
INFILE CARDS DLM=',:@&* ';
Input Eid $ Edesign $ Esal;
cards;
A001,Associate:50000
A002@@Hr&*70000
A003:&Manager, 120000
;
Proc print data=Emp8;
run;
Data test;
a=25;
b=50;
c=a+b;
run;
Data Marks;
input Math Sci;
datalines;
45 67
72 80
39 62
96 80
49 52
;
proc print data=marks;
run;
/*Data*/
/*Eid=A001*/
/*Ename=Anil*/
/*Egen=Male*/
/*Eage=27*/
/*Edesign=Analyst*/
/*Esal=50000*/
/*Raw Data*/
/*A001,Anil,Male,27,Analyst,50000*/
/*Data <libname>.<dsn>;*/
/*Infile datalines <options>;*/
/*Input <Var1> $ <var2> ......;*/
/*Datalines;*/
/*---------*/
/*---------*/
/*---------*/
/*;*/
/*Run;*/
/*1.DSD*/
/*2.DLM*/
/*3.MISSOVER*/
/*4.TRUNCOVER*/
/*5.FIRSTOBS=m*/
/*6.OBS=n*/
Data Emp;
Infile datalines;
Input Eid $ Edesign $ Esal;
datalines;
A001 Analyst 50000
A002 Hr 70000
A003 Manager 120000
;
Run;
Proc print data=Emp;
run;
Data Emp1;
Infile cards;
Input Eid $ Edesign $ Esal;
cards;
A001 Analyst 50000
A002 Hr 70000
A003 Manager 120000
;
Proc print data=Emp1;
run;
Data Emp3;
Input Eid $ Edesign $ Esal;
cards;
A001 Associate 50000
A002 Hr 70000
A003 Manager 120000
;
Proc print data=Emp3;
run;
/*Input Styles*/
/*1.List input*/
/*2.Formatted input*/
/*3.Column input*/
/*4.Mixed input*/
Data Emp3;
Input Eid $ Edesign $ Esal;
cards;
A001 Associate 50000
A002 Hr 70000
A003 Manager 120000
;
Proc print data=Emp3;
run;
/*1.DSD */
Data Emp4;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001,Associate,50000
A002,Hr,70000
A003,Manager,120000
;
Proc print data=Emp4;
run;
Data Emp5;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001, Associate,50000
A002,Hr ,70000
A003,Manager,120000
;
Proc print data=Emp5;
run;
Data Emp6;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001,,50000
A002,Hr,70000
A003,Manager,120000
;
Proc print data=Emp6;
run;
Data Emp7;
INFILE CARDS DSD;
Input Eid $ Edesign $ Esal;
cards;
A001,"Associate",50000
A002,Hr,70000
A003,Manager,'120000'
;
Proc print data=Emp7;
run;
/*2.DLM*/
Data Emp8;
INFILE CARDS DLM=',:@&* ';
Input Eid $ Edesign $ Esal;
cards;
A001,Associate:50000
A002@@Hr&*70000
A003:&Manager, 120000
;
Proc print data=Emp8;
run;