BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
JJP1
Pyrite | Level 9

Hi ,
Iam struggling to find out why below notes in log got generated.

NOTE: Missing values were generated as a result of performing an operation on missing values.

I can see below notes available in both LIVE & DEV log.but i can see the above note only in DEv not in LIVE.

NOTE: Invalid (or missing) arguments to the INTCK function have caused the function to return a missing value

And i understood the reason behind missing value for INTCK function.

would you please suggest why the below log is comimg in DEV but not in LIVE please.sorry to ask like this but any help please.

 

NOTE: Missing values were generated as a result of performing an operation on missing values.
1 ACCEPTED SOLUTION

Accepted Solutions
Patrick
Opal | Level 21

@JJP1 

You get missing values for exactly the reason the log is telling you. 

as a result of performing an operation on missing values

But without knowing the code and the data no one will be in a position to tell you what operation that exactly is.

You can get such a message by something as simple as below:

data _null_;
  varA=5; varB=.;
  result= varA + varB;
  stop;
run;

The log also tells you where the operation happens in the code. 

      Each place is given by: (Number of times) at (Line):(Column).
      130 at 3661:217   130 at 3661:200

So go to line 130 and inspect what's happening there. Turn on MPRINT and eventually SYMBOLGEN to get sufficient info into the SAS log. 

View solution in original post

5 REPLIES 5
Jagadishkatam
Amethyst | Level 16

Could you please share your code to get better response.

Thanks,
Jag
JJP1
Pyrite | Level 9

HI,

Iam getting below notes generated in log,if i see at 3661 line then big macro is getting called like %test.so that's actually really huge code.any help please

NOTE: Missing values were generated as a result of performing an operation on missing values.
      Each place is given by: (Number of times) at (Line):(Column).
      130 at 3661:217   130 at 3661:200
Patrick
Opal | Level 21

@JJP1 

You get missing values for exactly the reason the log is telling you. 

as a result of performing an operation on missing values

But without knowing the code and the data no one will be in a position to tell you what operation that exactly is.

You can get such a message by something as simple as below:

data _null_;
  varA=5; varB=.;
  result= varA + varB;
  stop;
run;

The log also tells you where the operation happens in the code. 

      Each place is given by: (Number of times) at (Line):(Column).
      130 at 3661:217   130 at 3661:200

So go to line 130 and inspect what's happening there. Turn on MPRINT and eventually SYMBOLGEN to get sufficient info into the SAS log. 

JJP1
Pyrite | Level 9

Thanks @Patrick .

i went to 3661 line and found that one macro is getting called.

This macro is using some date columns which has missing values both in DEV & LIVE.

But this log only  generates in DEV but not in LIVE ,all same code in both DEV & LIVE please

 

Tom
Super User Tom
Super User

Turn on MPRINT and SAS will show you what STEP is causing the mistake.  But you will need to figure out on your own which statement.

Example:

62   %macro xx;
63   data x;
64     y=x/3;
65   run;
66   %mend xx;
67   options mprint;
68   %xx;
MPRINT(XX):   data x;
MPRINT(XX):   y=x/3;
MPRINT(XX):   run;

NOTE: Variable x is uninitialized.
NOTE: Missing values were generated as a result of performing an operation on missing values.
      Each place is given by: (Number of times) at (Line):(Column).
      1 at 68:15
NOTE: The data set WORK.X has 1 observations and 2 variables.

 

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
How to connect to databases in SAS Viya

Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 5 replies
  • 11593 views
  • 0 likes
  • 4 in conversation