Hello team,
I want to create a dataset in SAS, but no sad data set is coming as output as it used to be.
I can't understand where the problem comes from while I used to use this syntax and it worked for me.
The log says: 49-169: The meaning of an identifier after a quoted string might change in a future SAS release.
Thanks,
Blue Blue
code:
data sasdataset; input idnum dcode; cards; 1 44 2 55 ; run;
When you have a question about code and are getting messages you need to copy the code and all the messages, that the entire data step. Copy from the LOG and on the forum open a text box with the </> and paste the text.
Your shown code does not have anything that would generate that particular message. So that would related to previous code submitted. If something was not properly closed like unbalanced quotes then the log typically only shows the code but nothing executes depending on the exact issue that caused the problem. Often the "fix" is to 1) save your code and 2) shut down SAS and restart.
Since the code you posted does not contain quotes, it is not the code that produces the message.
You had unbalanced quotes further up in the code. Start a new SAS session.
Hello kurtBremser,
What do you mean by saying: " You had unbalanced quotes further up in the code"?
I can't understand. I had to quit SAS Enterprise guide. Once I was back, it ran successfully.
Regards,
Blue Blue
When you have a question about code and are getting messages you need to copy the code and all the messages, that the entire data step. Copy from the LOG and on the forum open a text box with the </> and paste the text.
Your shown code does not have anything that would generate that particular message. So that would related to previous code submitted. If something was not properly closed like unbalanced quotes then the log typically only shows the code but nothing executes depending on the exact issue that caused the problem. Often the "fix" is to 1) save your code and 2) shut down SAS and restart.
This code doesn't have any quote to cause issues.
Anyway, I thought I should close SAS; once I was back, the code ran successfully.
Does exiting SAS fix unbalance quotes?
The log was so crowded, I was not able to clean the log. I searched internet, I couldn't find any solutions and the solutions that I found, none of them worked.
Regards,
Blue Blue
@GN0001 wrote:
This code doesn't have any quote to cause issues.
Anyway, I thought I should close SAS; once I was back, the code ran successfully.
Does exiting SAS fix unbalance quotes?
The log was so crowded, I was not able to clean the log. I searched internet, I couldn't find any solutions and the solutions that I found, none of them worked.
Regards,
Blue Blue
Closing SAS clears the submit buffer. So a number of issues caused by incorrect code are basically dropped.
Writing code involving macros has many opportunities to miss closing matching () " " or ' ' pairs. Since there can be all sorts of created variables, function calls, loops and such involving the generated code rerunning code just created more layers of this. Sometimes but not always you may see a note about "some text is longer than XXX characters you may have unbalanced quotes" but not always.
Hello,
What do we need to do when we see this message in the log: Sometimes but not always you may see a note about "some text is longer than XXX characters you may have unbalanced quotes" but not always.?
I can't say all but majority of the posts I made here the other day were all resolved once I started a new SAS session and editor.
Regards,
Blue Blue
@GN0001 wrote:
Hello,
What do we need to do when we see this message in the log: Sometimes but not always you may see a note about "some text is longer than XXX characters you may have unbalanced quotes" but not always.?
I can't say all but majority of the posts I made here the other day were all resolved once I started a new SAS session and editor.
Regards,
Blue Blue
SAS is an interpreted language. Unlike C or FORTRAN you don't compile your program into an executable and then run it. Instead you run SAS itself and it then interprets and executes the code you give it. Until you exit from SAS.
Your issue here was you submitted code with unbalanced quotes. So SAS is still waiting for your to finish that string (and then finish the statement it was in and the procedure that the statement was in ) before it starts trying to run your code.
By closing Enterprise Guide you shut down the SAS session that it was using to run your SAS code. The same if someone that was using SAS directly had exited SAS. Then when you start a new Enterprise Guide session it started a new SAS session. Since it is a new session it knows nothing about the unbalanced quotes (or any of the code) you used in the previous session.
You should not have to close Enterprise Guide itself to get a new SAS session. There should be a menu item in the Enterprise Guide menus to allow you to restart your SAS session without leaving Enterprise Guide, and probably without closing the project you are currently working on it Enterprise Guide. SAS/Studio (which is another way to use and external interface to edit and submit code to run in SAS) has a way to restart the session.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.
Ready to level-up your skills? Choose your own adventure.