BookmarkSubscribeRSS Feed
Fluorite | Level 6

Hi Experts 🙂


I wanted to run SAS macro which is called "%newsurv"




however, it doesn't work on my SAS.


my sas version is 3.4 for windows 10 64bit.


so I think it is technically qualified to run this macro.


In the log, % command has a problem with the warning message.

and "ERROR 180-322"


So please tell me how to work out this problem...


Shoud I need any other command before %newsurv ??


thank you.

Super User

Please post your whole log of the failed step. Just the ERROR message itself does not reveal anything. Use the {i} icon for posting log text, so that horizontal spacing is preserved.

Rhodochrosite | Level 12

I tried submitting the latest macro.  Then I tried submitting the data and lead in code.  Finally, I submitted the example macro call.  Since I don't actually know what you did, it is hard to say what went wrong for you, but clearly that vertical bar does not belong before the macro call.  See if something like that helps.


| %newsurv(data=bmt, time=ftime, cens=STATUS, cen_vl=0,ev_vl=1,
    summary=0, risklist=0 to 2500 by 500, risklocation=BOTTOM,
    xmin=0, xmax=2500, xincrement=500,risklabellocation=left,
    timelist=250 500, timedx=Days,parheader=);

 Also be aware that SAS/STAT provides an entire chapter on customizing the Kaplan-Meier plot.

Fluorite | Level 6
I'm so sorry but macro is not working with vertical bar.
Fluorite | Level 6

This is what I'm done.


 I just follow the macro process in the website, but I don't know why it isn't working yet.


thank you so much for your attention.

Rhodochrosite | Level 12

That was my point.  The web site has a vertical bar.  It is incorrect.  The code will never work with it.

Fluorite | Level 6

Thank you so much for your answer.


But the thing is even if I eliminated a vertical bar, it doesn't work yet.


Here's my log message.



WARNING: Apparent invocation of macro NEWSURV not resolved.
80   %newsurv(data=bmt, time=ftime, cens=STATUS, cen_vl=0,ev_vl=1,
ERROR 180-322: Statement is not valid or it is used out of proper order.

81       method=cif,class=diagnosis,height=4in,
82       summary=0, risklist=0 to 2500 by 500, risklocation=BOTTOM,
83       xmin=0, xmax=2500, xincrement=500,risklabellocation=left,
84       timelist=250 500, timedx=Days,parheader=);



It would be much appreciated if you could give me a help one more time.


thank you.



Rhodochrosite | Level 12

Have you submitted the code that defines the macro first?  I am guessing that you have not.

Fluorite | Level 6

oh... I didn't do that.


Could tell me how to do this?


Because I'm rockie in the SAS field. 


 I really appreciate you taking the time.

Rhodochrosite | Level 12

The macro code was provided in that web page you cited.  When I tried it after your first post, it worked after I deleted that incorrect vertical bar.

Fluorite | Level 6
oh.. I see.

Thank you so much for your help.

Have a nice day!
Quartz | Level 8

Can you please clarify how do I run the macro code provided? I would like to use the %newsurv for my data set. I am getting the same error. Can you please help me out.






Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

Register now!

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.

Get the $99 certification deal.jpg



Back in the Classroom!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 11 replies
  • 4 in conversation