<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Problem with a macro -&amp;quot; NOTE: Line generated by the macro variable &amp;quot;X&amp;quot;.&amp;quot; in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545892#M151090</link>
    <description>&lt;P&gt;It would help if you used&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;options mprint mlogic symbolgen;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;at the start of your code, run it again, and then paste the ENTIRE SAS log (not just the parts with errors) as text (not as a screen capture) into the window that appears when you click on the { i } icon (do not paste the log any other way).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The error means you do not have valid SAS code after the macro is resolved. Beyond that, we need to see the log.&lt;/P&gt;</description>
    <pubDate>Mon, 25 Mar 2019 16:48:04 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2019-03-25T16:48:04Z</dc:date>
    <item>
      <title>Problem with a macro -" NOTE: Line generated by the macro variable "X"."</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545890#M151089</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;8674
8675
8676
8677   %let datainicial=resultados_3;
8678   %let datafinal=resultados_4;
8679   /**********************************/
8680   data teste;
8681   set trata.&amp;amp;datainicial;

8686
8687   run;

NOTE: There were 821 observations read from the data set TRATA.RESULTADOS_3.
NOTE: The data set WORK.TESTE has 817 observations and 1278 variables.
NOTE: DATA statement used (Total process time):
      real time           0.16 seconds
      cpu time            0.03 seconds


8688
8689   data teste_;
8690   set teste;
8691   options mlogic mprint symbolgen;
8692   %macro oiif(x);
8693
8694   OI_&amp;amp;x._IEA_original=OI_&amp;amp;x._IEA;
8695
8696
8697   if (OI_&amp;amp;x. eq 1 and OI_&amp;amp;x._IEA eq . and NOVO_SCRIPT eq 0) then do;
8698
8699   if (oI_&amp;amp;x._t1_iea=3 OR oI_&amp;amp;x._t2_iea=3 OR oI_&amp;amp;x._t3_iea=3 OR oI_&amp;amp;x._t4_iea eq 3 OR
8699 ! oI_&amp;amp;x._t5_iea eq 3 OR oI_&amp;amp;x._t6_iea  eq 3 or oI_&amp;amp;x._t7_iea eq 3 or oI_&amp;amp;x._t8_iea  eq 3)
8699 ! then  do; OI_&amp;amp;x._IEA eq 3;
8700   end;else do;
8701   if (
8702   (oI_&amp;amp;x._t1_iea eq 1 or oI_&amp;amp;x._t3_iea eq 1 or oI_&amp;amp;x._t4_iea eq 1 or oI_&amp;amp;x._t5_iea eq 1 or
8702 ! oI_&amp;amp;x._t6_iea eq 1 or oI_&amp;amp;x._t7_iea eq 1 or oI_&amp;amp;x._t8_iea eq 1)
8703   and
8704   (oI_&amp;amp;x._t1_iea not in (2,3) and oI_&amp;amp;x._t3_iea not in (2,3) and oI_&amp;amp;x._t4_iea not in (2,3)
8704 ! and oI_&amp;amp;x._t5_iea not in (2,3) and oI_&amp;amp;x._t6_iea not in (2,3) and oI_&amp;amp;x._t7_iea not in
8704 ! (2,3) and oI_&amp;amp;x._t8_iea not in (2,3)))
8705   then do; OI_&amp;amp;x._IEA = 1;end;
8706   end;
8707
8708   if (OI_&amp;amp;x._t1_iea IN (2,4) and oI_&amp;amp;x._t3_iea  eq 2 and oI_&amp;amp;x._t4_iea  eq 2 and
8708 ! oI_&amp;amp;x._t5_iea in (2,4)
8709   and oI_&amp;amp;x._t6_iea in (2,4) and oI_&amp;amp;x._t7_iea  eq 2 and oI_&amp;amp;x._t8_iea  eq 2) then  do;
8709 ! OI_&amp;amp;x._IEA eq 2;end;
8710
8711   end;
8712
8713
8714   %mend;
8715
8716   %oiif(1);;%oiif(2);%oiif(3);%oiif(4);%oiif(5);%oiif(6);%oiif(7);%oiif(8);
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
MPRINT(OIIF):   OI_1_IEA_original=OI_1_IEA;
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
MPRINT(OIIF):   if (OI_1 eq 1 and OI_1_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
MPRINT(OIIF):   if (oI_1_t1_iea=3 OR oI_1_t2_iea=3 OR oI_1_t3_iea=3 OR oI_1_t4_iea eq 3 OR
oI_1_t5_iea eq 3 OR oI_1_t6_iea eq 3 or oI_1_t7_iea eq 3 or oI_1_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 1
NOTE: Line generated by the macro variable "X".
1       OI_1_IEA
        --------
        180
MPRINT(OIIF):   OI_1_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
MPRINT(OIIF):   if ( (oI_1_t1_iea eq 1 or oI_1_t3_iea eq 1 or oI_1_t4_iea eq 1 or oI_1_t5_iea eq
1 or oI_1_t6_iea eq 1 or oI_1_t7_iea eq 1 or oI_1_t8_iea eq 1) and (oI_1_t1_iea not in (2,3) and
oI_1_t3_iea not in (2,3) and oI_1_t4_iea not in (2,3) and oI_1_t5_iea not in (2,3) and
oI_1_t6_iea not in (2,3) and oI_1_t7_iea not in (2,3) and oI_1_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 1
MPRINT(OIIF):   OI_1_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
SYMBOLGEN:  Macro variable X resolves to 1
MPRINT(OIIF):   if (OI_1_t1_iea IN (2,4) and oI_1_t3_iea eq 2 and oI_1_t4_iea eq 2 and
oI_1_t5_iea in (2,4) and oI_1_t6_iea in (2,4) and oI_1_t7_iea eq 2 and oI_1_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 1
NOTE: Line generated by the macro variable "X".
1       OI_1_IEA
        --------
        180
MPRINT(OIIF):   OI_1_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
MPRINT(OIIF):  OI_2_IEA_original=OI_2_IEA;
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
MPRINT(OIIF):   if (OI_2 eq 1 and OI_2_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
MPRINT(OIIF):   if (oI_2_t1_iea=3 OR oI_2_t2_iea=3 OR oI_2_t3_iea=3 OR oI_2_t4_iea eq 3 OR
oI_2_t5_iea eq 3 OR oI_2_t6_iea eq 3 or oI_2_t7_iea eq 3 or oI_2_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 2
NOTE: Line generated by the macro variable "X".
1       OI_2_IEA
        --------
        180
MPRINT(OIIF):   OI_2_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
MPRINT(OIIF):   if ( (oI_2_t1_iea eq 1 or oI_2_t3_iea eq 1 or oI_2_t4_iea eq 1 or oI_2_t5_iea eq
1 or oI_2_t6_iea eq 1 or oI_2_t7_iea eq 1 or oI_2_t8_iea eq 1) and (oI_2_t1_iea not in (2,3) and
oI_2_t3_iea not in (2,3) and oI_2_t4_iea not in (2,3) and oI_2_t5_iea not in (2,3) and
oI_2_t6_iea not in (2,3) and oI_2_t7_iea not in (2,3) and oI_2_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 2
MPRINT(OIIF):   OI_2_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
SYMBOLGEN:  Macro variable X resolves to 2
MPRINT(OIIF):   if (OI_2_t1_iea IN (2,4) and oI_2_t3_iea eq 2 and oI_2_t4_iea eq 2 and
oI_2_t5_iea in (2,4) and oI_2_t6_iea in (2,4) and oI_2_t7_iea eq 2 and oI_2_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 2
NOTE: Line generated by the macro variable "X".
1       OI_2_IEA
        --------
        180
MPRINT(OIIF):   OI_2_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
MPRINT(OIIF):  OI_3_IEA_original=OI_3_IEA;
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
MPRINT(OIIF):   if (OI_3 eq 1 and OI_3_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
MPRINT(OIIF):   if (oI_3_t1_iea=3 OR oI_3_t2_iea=3 OR oI_3_t3_iea=3 OR oI_3_t4_iea eq 3 OR
oI_3_t5_iea eq 3 OR oI_3_t6_iea eq 3 or oI_3_t7_iea eq 3 or oI_3_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 3
NOTE: Line generated by the macro variable "X".
1       OI_3_IEA
        --------
        180
MPRINT(OIIF):   OI_3_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
MPRINT(OIIF):   if ( (oI_3_t1_iea eq 1 or oI_3_t3_iea eq 1 or oI_3_t4_iea eq 1 or oI_3_t5_iea eq
1 or oI_3_t6_iea eq 1 or oI_3_t7_iea eq 1 or oI_3_t8_iea eq 1) and (oI_3_t1_iea not in (2,3) and
oI_3_t3_iea not in (2,3) and oI_3_t4_iea not in (2,3) and oI_3_t5_iea not in (2,3) and
oI_3_t6_iea not in (2,3) and oI_3_t7_iea not in (2,3) and oI_3_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 3
MPRINT(OIIF):   OI_3_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
SYMBOLGEN:  Macro variable X resolves to 3
MPRINT(OIIF):   if (OI_3_t1_iea IN (2,4) and oI_3_t3_iea eq 2 and oI_3_t4_iea eq 2 and
oI_3_t5_iea in (2,4) and oI_3_t6_iea in (2,4) and oI_3_t7_iea eq 2 and oI_3_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 3
NOTE: Line generated by the macro variable "X".
1       OI_3_IEA
        --------
        180
MPRINT(OIIF):   OI_3_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
MPRINT(OIIF):  OI_4_IEA_original=OI_4_IEA;
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
MPRINT(OIIF):   if (OI_4 eq 1 and OI_4_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
MPRINT(OIIF):   if (oI_4_t1_iea=3 OR oI_4_t2_iea=3 OR oI_4_t3_iea=3 OR oI_4_t4_iea eq 3 OR
oI_4_t5_iea eq 3 OR oI_4_t6_iea eq 3 or oI_4_t7_iea eq 3 or oI_4_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 4
NOTE: Line generated by the macro variable "X".
1       OI_4_IEA
        --------
        180
MPRINT(OIIF):   OI_4_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
MPRINT(OIIF):   if ( (oI_4_t1_iea eq 1 or oI_4_t3_iea eq 1 or oI_4_t4_iea eq 1 or oI_4_t5_iea eq
1 or oI_4_t6_iea eq 1 or oI_4_t7_iea eq 1 or oI_4_t8_iea eq 1) and (oI_4_t1_iea not in (2,3) and
oI_4_t3_iea not in (2,3) and oI_4_t4_iea not in (2,3) and oI_4_t5_iea not in (2,3) and
oI_4_t6_iea not in (2,3) and oI_4_t7_iea not in (2,3) and oI_4_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 4
MPRINT(OIIF):   OI_4_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
SYMBOLGEN:  Macro variable X resolves to 4
MPRINT(OIIF):   if (OI_4_t1_iea IN (2,4) and oI_4_t3_iea eq 2 and oI_4_t4_iea eq 2 and
oI_4_t5_iea in (2,4) and oI_4_t6_iea in (2,4) and oI_4_t7_iea eq 2 and oI_4_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 4
NOTE: Line generated by the macro variable "X".
1       OI_4_IEA
        --------
        180
MPRINT(OIIF):   OI_4_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
MPRINT(OIIF):  OI_5_IEA_original=OI_5_IEA;
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
MPRINT(OIIF):   if (OI_5 eq 1 and OI_5_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
MPRINT(OIIF):   if (oI_5_t1_iea=3 OR oI_5_t2_iea=3 OR oI_5_t3_iea=3 OR oI_5_t4_iea eq 3 OR
oI_5_t5_iea eq 3 OR oI_5_t6_iea eq 3 or oI_5_t7_iea eq 3 or oI_5_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 5
NOTE: Line generated by the macro variable "X".
1       OI_5_IEA
        --------
        180
MPRINT(OIIF):   OI_5_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
MPRINT(OIIF):   if ( (oI_5_t1_iea eq 1 or oI_5_t3_iea eq 1 or oI_5_t4_iea eq 1 or oI_5_t5_iea eq
1 or oI_5_t6_iea eq 1 or oI_5_t7_iea eq 1 or oI_5_t8_iea eq 1) and (oI_5_t1_iea not in (2,3) and
oI_5_t3_iea not in (2,3) and oI_5_t4_iea not in (2,3) and oI_5_t5_iea not in (2,3) and
oI_5_t6_iea not in (2,3) and oI_5_t7_iea not in (2,3) and oI_5_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 5
MPRINT(OIIF):   OI_5_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
SYMBOLGEN:  Macro variable X resolves to 5
MPRINT(OIIF):   if (OI_5_t1_iea IN (2,4) and oI_5_t3_iea eq 2 and oI_5_t4_iea eq 2 and
oI_5_t5_iea in (2,4) and oI_5_t6_iea in (2,4) and oI_5_t7_iea eq 2 and oI_5_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 5
NOTE: Line generated by the macro variable "X".
1       OI_5_IEA
        --------
        180
MPRINT(OIIF):   OI_5_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
MPRINT(OIIF):  OI_6_IEA_original=OI_6_IEA;
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
MPRINT(OIIF):   if (OI_6 eq 1 and OI_6_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
MPRINT(OIIF):   if (oI_6_t1_iea=3 OR oI_6_t2_iea=3 OR oI_6_t3_iea=3 OR oI_6_t4_iea eq 3 OR
oI_6_t5_iea eq 3 OR oI_6_t6_iea eq 3 or oI_6_t7_iea eq 3 or oI_6_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 6
NOTE: Line generated by the macro variable "X".
1       OI_6_IEA
        --------
        180
MPRINT(OIIF):   OI_6_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
MPRINT(OIIF):   if ( (oI_6_t1_iea eq 1 or oI_6_t3_iea eq 1 or oI_6_t4_iea eq 1 or oI_6_t5_iea eq
1 or oI_6_t6_iea eq 1 or oI_6_t7_iea eq 1 or oI_6_t8_iea eq 1) and (oI_6_t1_iea not in (2,3) and
oI_6_t3_iea not in (2,3) and oI_6_t4_iea not in (2,3) and oI_6_t5_iea not in (2,3) and
oI_6_t6_iea not in (2,3) and oI_6_t7_iea not in (2,3) and oI_6_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 6
MPRINT(OIIF):   OI_6_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
SYMBOLGEN:  Macro variable X resolves to 6
MPRINT(OIIF):   if (OI_6_t1_iea IN (2,4) and oI_6_t3_iea eq 2 and oI_6_t4_iea eq 2 and
oI_6_t5_iea in (2,4) and oI_6_t6_iea in (2,4) and oI_6_t7_iea eq 2 and oI_6_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 6
NOTE: Line generated by the macro variable "X".
1       OI_6_IEA
        --------
        180
MPRINT(OIIF):   OI_6_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
MPRINT(OIIF):  OI_7_IEA_original=OI_7_IEA;
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
MPRINT(OIIF):   if (OI_7 eq 1 and OI_7_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
MPRINT(OIIF):   if (oI_7_t1_iea=3 OR oI_7_t2_iea=3 OR oI_7_t3_iea=3 OR oI_7_t4_iea eq 3 OR
oI_7_t5_iea eq 3 OR oI_7_t6_iea eq 3 or oI_7_t7_iea eq 3 or oI_7_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 7
NOTE: Line generated by the macro variable "X".
1       OI_7_IEA
        --------
        180
MPRINT(OIIF):   OI_7_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
MPRINT(OIIF):   if ( (oI_7_t1_iea eq 1 or oI_7_t3_iea eq 1 or oI_7_t4_iea eq 1 or oI_7_t5_iea eq
1 or oI_7_t6_iea eq 1 or oI_7_t7_iea eq 1 or oI_7_t8_iea eq 1) and (oI_7_t1_iea not in (2,3) and
oI_7_t3_iea not in (2,3) and oI_7_t4_iea not in (2,3) and oI_7_t5_iea not in (2,3) and
oI_7_t6_iea not in (2,3) and oI_7_t7_iea not in (2,3) and oI_7_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 7
MPRINT(OIIF):   OI_7_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
SYMBOLGEN:  Macro variable X resolves to 7
MPRINT(OIIF):   if (OI_7_t1_iea IN (2,4) and oI_7_t3_iea eq 2 and oI_7_t4_iea eq 2 and
oI_7_t5_iea in (2,4) and oI_7_t6_iea in (2,4) and oI_7_t7_iea eq 2 and oI_7_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 7
NOTE: Line generated by the macro variable "X".
1       OI_7_IEA
        --------
        180
MPRINT(OIIF):   OI_7_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
MLOGIC(OIIF):  Beginning execution.
MLOGIC(OIIF):  Parameter X has value 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
MPRINT(OIIF):  OI_8_IEA_original=OI_8_IEA;
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
MPRINT(OIIF):   if (OI_8 eq 1 and OI_8_IEA eq . and NOVO_SCRIPT eq 0) then do;
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
MPRINT(OIIF):   if (oI_8_t1_iea=3 OR oI_8_t2_iea=3 OR oI_8_t3_iea=3 OR oI_8_t4_iea eq 3 OR
oI_8_t5_iea eq 3 OR oI_8_t6_iea eq 3 or oI_8_t7_iea eq 3 or oI_8_t8_iea eq 3) then do;
SYMBOLGEN:  Macro variable X resolves to 8
NOTE: Line generated by the macro variable "X".
1       OI_8_IEA
        --------
        180
MPRINT(OIIF):   OI_8_IEA eq 3;
MPRINT(OIIF):   end;
MPRINT(OIIF):  else do;
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
MPRINT(OIIF):   if ( (oI_8_t1_iea eq 1 or oI_8_t3_iea eq 1 or oI_8_t4_iea eq 1 or oI_8_t5_iea eq
1 or oI_8_t6_iea eq 1 or oI_8_t7_iea eq 1 or oI_8_t8_iea eq 1) and (oI_8_t1_iea not in (2,3) and
oI_8_t3_iea not in (2,3) and oI_8_t4_iea not in (2,3) and oI_8_t5_iea not in (2,3) and
oI_8_t6_iea not in (2,3) and oI_8_t7_iea not in (2,3) and oI_8_t8_iea not in (2,3))) then do;
SYMBOLGEN:  Macro variable X resolves to 8
MPRINT(OIIF):   OI_8_IEA = 1;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
SYMBOLGEN:  Macro variable X resolves to 8
MPRINT(OIIF):   if (OI_8_t1_iea IN (2,4) and oI_8_t3_iea eq 2 and oI_8_t4_iea eq 2 and
oI_8_t5_iea in (2,4) and oI_8_t6_iea in (2,4) and oI_8_t7_iea eq 2 and oI_8_t8_iea eq 2) then do;
SYMBOLGEN:  Macro variable X resolves to 8
NOTE: Line generated by the macro variable "X".
1       OI_8_IEA
        --------
        180
MPRINT(OIIF):   OI_8_IEA eq 2;
MPRINT(OIIF):  end;
MPRINT(OIIF):   end;
MLOGIC(OIIF):  Ending execution.
ERROR 180-322: Statement is not valid or it is used out of proper order.

8717
8718
8719   run;

NOTE: The SAS System stopped processing this step because of errors.
WARNING: The data set WORK.TESTE_ may be incomplete.  When this step was stopped there were 0
         observations and 1291 variables.
WARNING: Data set WORK.TESTE_ was not replaced because this step was stopped.
NOTE: DATA statement used (Total process time):
      real time           0.59 seconds
      cpu time            0.15 seconds&lt;/CODE&gt;&lt;/PRE&gt;&lt;PRE&gt;data teste_; set teste; %macro oiif(x); OI_&amp;amp;x._IEA_original=OI_&amp;amp;x._IEA; if (OI_&amp;amp;x. eq 1 and OI_&amp;amp;x._IEA eq . and NOVO_SCRIPT eq 0) then do; if (oI_&amp;amp;x._t1_iea=3 OR oI_&amp;amp;x._t2_iea=3 OR oI_&amp;amp;x._t3_iea=3 OR oI_&amp;amp;x._t4_iea eq 3 OR oI_&amp;amp;x._t5_iea eq 3 OR oI_&amp;amp;x._t6_iea eq 3 or oI_&amp;amp;x._t7_iea eq 3 or oI_&amp;amp;x._t8_iea eq 3) then do; OI_&amp;amp;x._IEA eq 3; end;else do; if ( (oI_&amp;amp;x._t1_iea eq 1 or oI_&amp;amp;x._t3_iea eq 1 or oI_&amp;amp;x._t4_iea eq 1 or oI_&amp;amp;x._t5_iea eq 1 or oI_&amp;amp;x._t6_iea eq 1 or oI_&amp;amp;x._t7_iea eq 1 or oI_&amp;amp;x._t8_iea eq 1) and (oI_&amp;amp;x._t1_iea not in (2,3) and oI_&amp;amp;x._t3_iea not in (2,3) and oI_&amp;amp;x._t4_iea not in (2,3) and oI_&amp;amp;x._t5_iea not in (2,3) and oI_&amp;amp;x._t6_iea not in (2,3) and oI_&amp;amp;x._t7_iea not in (2,3) and oI_&amp;amp;x._t8_iea not in (2,3))) then do;OI_&amp;amp;x._IEA = 1;end; end; if (OI_&amp;amp;x._t1_iea IN (2,4) and oI_&amp;amp;x._t3_iea eq 2 and oI_&amp;amp;x._t4_iea eq 2 and oI_&amp;amp;x._t5_iea in (2,4) and oI_&amp;amp;x._t6_iea in (2,4) and oI_&amp;amp;x._t7_iea eq 2 and oI_&amp;amp;x._t8_iea eq 2) then do;OI_&amp;amp;x._IEA eq 2;end; end; %mend; %oiif(1);;%oiif(2);%oiif(3);%oiif(4);%oiif(5);%oiif(6);%oiif(7);%oiif(8); run;&lt;/PRE&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Error.png" style="width: 600px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/28187i418A6F1605341E36/image-size/large?v=v2&amp;amp;px=999" role="button" title="Error.png" alt="Error.png" /&gt;&lt;/span&gt;Hi.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When I running the macro in the code attached it gives me the following error:&lt;/P&gt;&lt;P&gt;"NOTE: Line generated by the macro variable "X".&lt;BR /&gt;1 OI_8_IEA&lt;BR /&gt;--------&lt;BR /&gt;180&lt;BR /&gt;ERROR 180-322: Statement is not valid or it is used out of proper order."&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ideas how to solve the problem?&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2019 17:10:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545890#M151089</guid>
      <dc:creator>Liane</dc:creator>
      <dc:date>2019-03-25T17:10:49Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with a macro -" NOTE: Line generated by the macro variable "X"."</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545892#M151090</link>
      <description>&lt;P&gt;It would help if you used&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;options mprint mlogic symbolgen;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;at the start of your code, run it again, and then paste the ENTIRE SAS log (not just the parts with errors) as text (not as a screen capture) into the window that appears when you click on the { i } icon (do not paste the log any other way).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The error means you do not have valid SAS code after the macro is resolved. Beyond that, we need to see the log.&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2019 16:48:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545892#M151090</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2019-03-25T16:48:04Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with a macro -" NOTE: Line generated by the macro variable "X"."</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545893#M151091</link>
      <description>&lt;P&gt;This&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;OI_&amp;amp;x._IEA eq 3;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;can never resolve to a valid SAS statement. The eq mnemonic can only be used in comparisons, not in assignments.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Use&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;options mlogic mprint symbolgen;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;for debugging macro code.&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2019 16:47:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545893#M151091</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2019-03-25T16:47:03Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with a macro -" NOTE: Line generated by the macro variable "X"."</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545900#M151093</link>
      <description>&lt;P&gt;Thank you.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Post updated with&amp;nbsp;&lt;SPAN style="display: inline !important; float: none; background-color: transparent; color: #333333; font-family: 'HelevticaNeue-light','Helvetica Neue',Helvetica,Arial,sans-serif; font-size: 14px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; line-height: 21.33px; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px;"&gt;ENTIRE SAS log.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2019 17:12:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/545900#M151093</guid>
      <dc:creator>Liane</dc:creator>
      <dc:date>2019-03-25T17:12:34Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with a macro -" NOTE: Line generated by the macro variable "X"."</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/546059#M151155</link>
      <description>&lt;P&gt;Rule #1 for building macros: start with working Base SAS code.&lt;/P&gt;
&lt;P&gt;Right now, you create invalid SAS code becasue you start with invalid SAS code. As mentioned earlier, this statement&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;OI_&amp;amp;x._IEA eq 3;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;is invalid SAS code, you must use&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;OI_&amp;amp;x._IEA = 3;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;The mnemonic eq is a comparison operator and can only be used in conditions; it is not valid as an assigment operator, there you MUST use the equal sign ONLY.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2019 09:05:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/546059#M151155</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2019-03-26T09:05:41Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with a macro -" NOTE: Line generated by the macro variable "X"."</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/546085#M151156</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Your tests are difficult to read and thus prone to mistakes. For instance, is oI_&amp;amp;x._t2_iea missing on purpose&lt;/P&gt;
&lt;P&gt;or is it a copy/paste error ? By using arrays, you can make your code much more readable.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
    array OI OI_1_t1-OI_1_t4;

    do _N_=1 to 100;
        do over OI;
            OI=floor(4*rand("Uniform")+1);
        end;
        output;
    end;
run;

data want;
    set have;
    array OI OI:;

    if 2 in OI or 4 in OI then OI_1=2;
    else if 3 in OI then OI_1=3;
    else OI_1=1;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 26 Mar 2019 11:41:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Problem-with-a-macro-quot-NOTE-Line-generated-by-the-macro/m-p/546085#M151156</guid>
      <dc:creator>gamotte</dc:creator>
      <dc:date>2019-03-26T11:41:53Z</dc:date>
    </item>
  </channel>
</rss>

