Its not syntactically correct, if/then else can only have one command between then and else, and no ;. To do block of code between then and else you use do; and end;, per:
data work.xx1;
set work.xx;
where intra_ind='N';
if msg_id='NO MSG' then do;
relationship_id=globl_cust_id;
relationship_name=cus_name;
end;
else do;
...
end;
run;
... View more