<?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: Help with Date macro in New SAS User</title>
    <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568220#M11641</link>
    <description>&lt;P&gt;Correction:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Not sure what &amp;amp;SYSPARM values are, you may need something like this depending on the values in &amp;amp;sysparm, perhaps a different informat is needed.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;ELSE DO;
  call symput('begdate',input(scan("&amp;amp;sysparm.", 1, ',' ),anydtdte.));
  call symput('enddate',input(scan("&amp;amp;sysparm.", 2, ',' ),anydtdte.));
END;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sun, 23 Jun 2019 15:59:36 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2019-06-23T15:59:36Z</dc:date>
    <item>
      <title>Help with Date macro</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568215#M11638</link>
      <description>&lt;P&gt;Hello!&lt;/P&gt;&lt;P&gt;Below is the date macros code, that I'm using in my program&lt;/P&gt;&lt;P&gt;DATA _NULL_;&lt;BR /&gt;if "&amp;amp;sysparm" EQ '&amp;nbsp; ' THEN DO;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; call symput('begdate',put(intnx('qtr',TODAY(),-1,'b'),date9.));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; call symput('enddate',put(intnx('qtr',TODAY(),-1,'e'),date9.));&lt;/P&gt;&lt;P&gt;&amp;nbsp;END;&lt;BR /&gt;&amp;nbsp;ELSE DO;&lt;BR /&gt;&amp;nbsp; call symput('begdate',PUT(input(scan("&amp;amp;sysparm.", 1, ',' ) , mmddyy10.),date9.));&lt;BR /&gt;&amp;nbsp; call symput('enddate',PUT(input(scan("&amp;amp;sysparm.", 2, ',' ) , mmddyy10.),date9.));&lt;/P&gt;&lt;P&gt;END;&lt;BR /&gt;RUN;&lt;/P&gt;&lt;P&gt;%put begdate3 : &amp;amp;begdate;&lt;BR /&gt;begdate3 : 01JAN2019&lt;BR /&gt;%put enddate3 : &amp;amp;enddate ;&lt;BR /&gt;enddate3 : 31MAR2019&lt;/P&gt;&lt;P&gt;While using the macro in the program,&lt;/P&gt;&lt;P&gt;&lt;FONT face="Courier New" size="1"&gt;mc.file_rcvd_date&amp;gt;= &amp;amp;&lt;/FONT&gt;&lt;FONT color="#008080" face="Courier New" size="1"&gt;begdate.&lt;/FONT&gt; &lt;FONT color="#0000ff" face="Courier New" size="1"&gt;and&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="Courier New" size="1"&gt;mc.file_rcvd_date &amp;lt; &amp;amp;&lt;/FONT&gt;&lt;FONT color="#008080" face="Courier New" size="1"&gt;enddate.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm getting the below error.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;rcvd_date&amp;gt;= &amp;amp;begdate. and&lt;BR /&gt;NOTE: Line generated by the macro variable "BEGDATE".&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01JAN2019&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _______&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 22&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 76&lt;BR /&gt;ERROR 22-322: Syntax error, expecting one of the following: !, !!, &amp;amp;, *, **, +, -, /, &amp;lt;, &amp;lt;=, &amp;lt;&amp;gt;, =, &amp;gt;, &amp;gt;=, AND, EQ, EQT, GE, GET,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GROUP, GT, GTT, HAVING, LE, LET, LT, LTT, NE, NET, OR, ORDER, ^=, |, ||, ~=.&amp;nbsp;&lt;/P&gt;&lt;P&gt;ERROR 76-322: Syntax error, statement will be ignored.&lt;BR /&gt;rcvd_date &amp;lt; &amp;amp;enddate.&lt;BR /&gt;;&lt;BR /&gt;NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.&lt;/P&gt;&lt;P&gt;Pleae help me on resolving this. Thanks.&lt;/P&gt;</description>
      <pubDate>Sun, 23 Jun 2019 14:19:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568215#M11638</guid>
      <dc:creator>West26</dc:creator>
      <dc:date>2019-06-23T14:19:01Z</dc:date>
    </item>
    <item>
      <title>Date macro resolution</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568214#M11654</link>
      <description>&lt;P&gt;Hello!&lt;/P&gt;&lt;P&gt;Good morning! Below is the date macros code, that I'm using in my program&lt;/P&gt;&lt;P&gt;DATA _NULL_;&lt;BR /&gt;if "&amp;amp;sysparm" EQ '' THEN DO;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; call symput('begdate',put(intnx('qtr',TODAY(),-1,'b'),date9.));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; call symput('enddate',put(intnx('qtr',TODAY(),-1,'e'),date9.));&lt;/P&gt;&lt;P&gt;&amp;nbsp;END;&lt;BR /&gt;&amp;nbsp;ELSE DO;&lt;BR /&gt;&amp;nbsp; call symput('begdate',PUT(input(scan("&amp;amp;sysparm.", 1, ',' ) , mmddyy10.),date9.));&lt;BR /&gt;&amp;nbsp; call symput('enddate',PUT(input(scan("&amp;amp;sysparm.", 2, ',' ) , mmddyy10.),date9.));&lt;/P&gt;&lt;P&gt;END;&lt;BR /&gt;RUN;&lt;/P&gt;&lt;P&gt;%put begdate3 : &amp;amp;begdate;&lt;BR /&gt;begdate3 : 01JAN2019&lt;BR /&gt;%put enddate3 : &amp;amp;enddate ;&lt;BR /&gt;enddate3 : 31MAR2019&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;While using the macro in the program, I'm getting the below error.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;rcvd_date&amp;gt;= &amp;amp;begdate. and&lt;BR /&gt;NOTE: Line generated by the macro variable "BEGDATE".&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01JAN2019&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _______&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 22&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 76&lt;BR /&gt;ERROR 22-322: Syntax error, expecting one of the following: !, !!, &amp;amp;, *, **, +, -, /, &amp;lt;, &amp;lt;=, &amp;lt;&amp;gt;, =, &amp;gt;, &amp;gt;=, AND, EQ, EQT, GE, GET,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GROUP, GT, GTT, HAVING, LE, LET, LT, LTT, NE, NET, OR, ORDER, ^=, |, ||, ~=.&amp;nbsp;&lt;/P&gt;&lt;P&gt;ERROR 76-322: Syntax error, statement will be ignored.&lt;BR /&gt;rcvd_date &amp;lt; &amp;amp;enddate.&lt;BR /&gt;;&lt;BR /&gt;NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Even though macro resolves to the required format, I'm getting the syntax error. Also, please validate if I'm using the right code.&lt;/P&gt;&lt;P&gt;Please help me on resolving this. Thanks.&lt;/P&gt;</description>
      <pubDate>Sun, 23 Jun 2019 13:23:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568214#M11654</guid>
      <dc:creator>West26</dc:creator>
      <dc:date>2019-06-23T13:23:34Z</dc:date>
    </item>
    <item>
      <title>Re: Help with Date macro</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568218#M11639</link>
      <description>&lt;P&gt;Macro variables just perform text substitution when SAS executes your code, and then the text with the substitution must be legal valid working SAS code.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;mc.file_rcvd_date&amp;gt;= &amp;amp;begdate. and mc.file_rcvd_date &amp;lt; &amp;amp;enddate.&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;resolves to&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;mc.file_rcvd_date&amp;gt;= 01JAN2019 and mc.file_rcvd_date &amp;lt; 31MAR2019&lt;/PRE&gt;
&lt;P&gt;which is not legal valid working SAS code.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;An important concept is that you should ALWAYS create legal valid working SAS code WITHOUT MACROS on one example of your code. Then you can be reasonably sure that the macro substitution will result is legal valid working SAS code.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In this case in particular, there is no need to format the dates in the macro variables, it is unnecessary work and causes the problem. It is unnecessary extra work, that produces no benefit, and offers many opportunities for typing errors or syntax errors, and also causes your program to fail.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;DATA _NULL_;
if "&amp;amp;sysparm" EQ '  ' THEN DO;
   call symput('begdate',TODAY(),-1,'b');
   call symput('enddate',TODAY(),-1,'e');

 END;
 ELSE DO;
  call symput('begdate',scan("&amp;amp;sysparm.", 1, ',' ));
  call symput('enddate',scan("&amp;amp;sysparm.", 2, ',' ));
END;
RUN;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 23 Jun 2019 15:14:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568218#M11639</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2019-06-23T15:14:45Z</dc:date>
    </item>
    <item>
      <title>Re: Help with Date macro</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568219#M11640</link>
      <description>&lt;P&gt;Thanks for taking your time and explaining this to me. Much appreciated.&lt;/P&gt;</description>
      <pubDate>Sun, 23 Jun 2019 15:57:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568219#M11640</guid>
      <dc:creator>West26</dc:creator>
      <dc:date>2019-06-23T15:57:09Z</dc:date>
    </item>
    <item>
      <title>Re: Help with Date macro</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568220#M11641</link>
      <description>&lt;P&gt;Correction:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Not sure what &amp;amp;SYSPARM values are, you may need something like this depending on the values in &amp;amp;sysparm, perhaps a different informat is needed.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;ELSE DO;
  call symput('begdate',input(scan("&amp;amp;sysparm.", 1, ',' ),anydtdte.));
  call symput('enddate',input(scan("&amp;amp;sysparm.", 2, ',' ),anydtdte.));
END;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 23 Jun 2019 15:59:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568220#M11641</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2019-06-23T15:59:36Z</dc:date>
    </item>
    <item>
      <title>Re: Date macro resolution</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568264#M11655</link>
      <description>Your syntax is incorrect.  Without macro language, this would be wrong:&lt;BR /&gt;&lt;BR /&gt;rcvd_date &amp;gt; 01JAN2019 and&lt;BR /&gt;&lt;BR /&gt;The correct reference to a date would be:&lt;BR /&gt;&lt;BR /&gt;rcvd_date &amp;gt; "01JAN2019"d and&lt;BR /&gt;&lt;BR /&gt;You need to force macro language to generate the same comparison:&lt;BR /&gt;&lt;BR /&gt;rcvd_date&amp;gt; "&amp;amp;begdate."d and</description>
      <pubDate>Mon, 24 Jun 2019 02:13:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568264#M11655</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2019-06-24T02:13:22Z</dc:date>
    </item>
    <item>
      <title>Re: Help with Date macro</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568330#M11656</link>
      <description>&lt;P&gt;I merged the double-post. Please keep a single question in a single topic.&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jun 2019 10:02:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Help-with-Date-macro/m-p/568330#M11656</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2019-06-24T10:02:39Z</dc:date>
    </item>
  </channel>
</rss>

