<?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 Macro error o in New SAS User</title>
    <link>https://communities.sas.com/t5/New-SAS-User/Macro-error-o/m-p/578669#M13381</link>
    <description>&lt;P&gt;Hi trying to execute macro for 1 to n using below code. getting an error on the macro name.&lt;/P&gt;&lt;P&gt;I tried to create a table in below proc SQL although the date appearing correctly&amp;nbsp;&amp;amp;client_id_CUSTOMER_HEADER_&amp;amp;todaysDate&lt;/P&gt;&lt;P&gt;(&amp;amp;client_id_CUSTOMER_HEADER_2019-08-02) but&amp;nbsp;&amp;amp;client_id is not populating in the newly created table, getting an error . Below are the code and detail error. any help, pls&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;basically got a table with 3 rows&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;table test&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;id&lt;/TD&gt;&lt;TD&gt;ids&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;XXX06&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;YYY01&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ZZZ06&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/*Macro - to get todays date */&lt;BR /&gt;%let todaysDate = %sysfunc(today(), yymmdd10.);&lt;/P&gt;&lt;P&gt;%put &amp;amp;todaysDate;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%macro id;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;BR /&gt;select count(distinct(ids))into :a&lt;BR /&gt;from test&amp;nbsp;&lt;BR /&gt;;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;%let a = &amp;amp;a;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;%do k = 1 %to &amp;amp;a;&lt;/P&gt;&lt;P&gt;%LET identify = &amp;amp;k;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;proc sql noprint;&lt;BR /&gt;select distinct id into :client_id&lt;BR /&gt;from test&lt;BR /&gt;where ids = &amp;amp;identify;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;%let client_id = &amp;amp;client_id;&lt;BR /&gt;%put &amp;amp;client_id ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc sql ;&lt;BR /&gt;CREATE TABLE &amp;amp;client_id_CUSTOMER_HEADER_&amp;amp;todaysDate as&lt;BR /&gt;select&lt;BR /&gt;&amp;amp;client_id varchar(16) default null,&lt;BR /&gt;unique_identifier bigint default null,&lt;BR /&gt;der_hash_code bigint default null,&lt;BR /&gt;der_hash_key varchar(50) default null,&lt;BR /&gt;elements_address_dps varchar(2) default null,&lt;BR /&gt;elements_address_status varchar(1) default null,&lt;BR /&gt;elements_key_household bigint default null,&lt;BR /&gt;elements_key_urn_household bigint default null,&lt;BR /&gt;elements_data_date datetime default null,&lt;BR /&gt;unique_rec integer default 0&lt;BR /&gt;;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;%end;&lt;BR /&gt;%mend;&lt;BR /&gt;%clientid;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Log ERROR!!!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;MPRINT(CLIENTID): proc sql noprint;&lt;BR /&gt;MPRINT(CLIENTID): select count(distinct(ids))into :a from test ;&lt;BR /&gt;MPRINT(CLIENTID): quit;&lt;BR /&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;BR /&gt;real time 0.01 seconds&lt;BR /&gt;user cpu time 0.01 seconds&lt;BR /&gt;system cpu time 0.00 seconds&lt;BR /&gt;memory 5850.87k&lt;BR /&gt;OS Memory 29560.00k&lt;BR /&gt;Timestamp 02/08/2019 12:38:43 PM&lt;BR /&gt;Step Count 23 Switch Count 0&lt;/P&gt;&lt;P&gt;MPRINT(CLIENTID): proc sql noprint;&lt;BR /&gt;MPRINT(CLIENTID): select distinct shell into :client_id from test where ids = 1;&lt;BR /&gt;MPRINT(CLIENTID): quit;&lt;BR /&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;BR /&gt;real time 0.00 seconds&lt;BR /&gt;user cpu time 0.00 seconds&lt;BR /&gt;system cpu time 0.00 seconds&lt;BR /&gt;memory 5850.65k&lt;BR /&gt;OS Memory 29816.00k&lt;BR /&gt;Timestamp 02/08/2019 12:38:43 PM&lt;BR /&gt;Step Count 24 Switch Count 0&lt;/P&gt;&lt;P&gt;XXX06&lt;BR /&gt;MPRINT(CLIENTID): proc sql ;&lt;BR /&gt;WARNING: Apparent symbolic reference CLIENT_ID_CUSTOMER_HEADER_ not resolved.&lt;BR /&gt;NOTE: Line generated by the invoked macro "CLIENTID".&lt;BR /&gt;75 &amp;amp;client_id_CUSTOMER_HEADER_&amp;amp;todaysDate as select &amp;amp;client_id varchar(16) default null,&lt;BR /&gt;_&lt;BR /&gt;22&lt;BR /&gt;76&lt;BR /&gt;75 ! unique_identifier bigint default null, der_hash_code bigint default null, der_hash_key varchar(50)&lt;BR /&gt;75 ! default null,&lt;BR /&gt;MPRINT(CLIENTID): CREATE TABLE &amp;amp;client_id_CUSTOMER_HEADER_2019-08-02 as select XXX06 varchar(16) default null, unique_identifier&lt;BR /&gt;3 The SAS System Friday, 2 August 2019 12:34:00&lt;/P&gt;&lt;P&gt;bigint default null, der_hash_code bigint default null, der_hash_key varchar(50) default null, elements_address_dps varchar(2)&lt;BR /&gt;default null, elements_address_status varchar(1) default null, elements_key_household bigint default null,&lt;BR /&gt;elements_key_urn_household bigint default null, elements_data_date datetime default null, unique_rec integer default 0 ;&lt;BR /&gt;ERROR 22-322: Syntax error, expecting one of the following: a name, a quoted string.&lt;/P&gt;&lt;P&gt;ERROR 76-322: Syntax error, the statement will be ignored.&lt;/P&gt;&lt;P&gt;NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.&lt;BR /&gt;IMPRINT(CLIENTID): quit;&lt;BR /&gt;NOTE: The SAS System stopped processing this step because of errors.&lt;BR /&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;BR /&gt;real-time 0.00 seconds&lt;BR /&gt;user CPU time 0.00 seconds&lt;BR /&gt;system CPU time 0.00 seconds&lt;BR /&gt;memory 40.96k&lt;BR /&gt;OS Memory 24172.00k&lt;BR /&gt;Timestamp 02/08/2019 12:38:43 PM&lt;BR /&gt;Step Count 25 Switch Count 0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 02 Aug 2019 11:48:02 GMT</pubDate>
    <dc:creator>meckarthik</dc:creator>
    <dc:date>2019-08-02T11:48:02Z</dc:date>
    <item>
      <title>Macro error o</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Macro-error-o/m-p/578669#M13381</link>
      <description>&lt;P&gt;Hi trying to execute macro for 1 to n using below code. getting an error on the macro name.&lt;/P&gt;&lt;P&gt;I tried to create a table in below proc SQL although the date appearing correctly&amp;nbsp;&amp;amp;client_id_CUSTOMER_HEADER_&amp;amp;todaysDate&lt;/P&gt;&lt;P&gt;(&amp;amp;client_id_CUSTOMER_HEADER_2019-08-02) but&amp;nbsp;&amp;amp;client_id is not populating in the newly created table, getting an error . Below are the code and detail error. any help, pls&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;basically got a table with 3 rows&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;table test&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;id&lt;/TD&gt;&lt;TD&gt;ids&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;XXX06&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;YYY01&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ZZZ06&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/*Macro - to get todays date */&lt;BR /&gt;%let todaysDate = %sysfunc(today(), yymmdd10.);&lt;/P&gt;&lt;P&gt;%put &amp;amp;todaysDate;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%macro id;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;BR /&gt;select count(distinct(ids))into :a&lt;BR /&gt;from test&amp;nbsp;&lt;BR /&gt;;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;%let a = &amp;amp;a;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;%do k = 1 %to &amp;amp;a;&lt;/P&gt;&lt;P&gt;%LET identify = &amp;amp;k;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;proc sql noprint;&lt;BR /&gt;select distinct id into :client_id&lt;BR /&gt;from test&lt;BR /&gt;where ids = &amp;amp;identify;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;%let client_id = &amp;amp;client_id;&lt;BR /&gt;%put &amp;amp;client_id ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc sql ;&lt;BR /&gt;CREATE TABLE &amp;amp;client_id_CUSTOMER_HEADER_&amp;amp;todaysDate as&lt;BR /&gt;select&lt;BR /&gt;&amp;amp;client_id varchar(16) default null,&lt;BR /&gt;unique_identifier bigint default null,&lt;BR /&gt;der_hash_code bigint default null,&lt;BR /&gt;der_hash_key varchar(50) default null,&lt;BR /&gt;elements_address_dps varchar(2) default null,&lt;BR /&gt;elements_address_status varchar(1) default null,&lt;BR /&gt;elements_key_household bigint default null,&lt;BR /&gt;elements_key_urn_household bigint default null,&lt;BR /&gt;elements_data_date datetime default null,&lt;BR /&gt;unique_rec integer default 0&lt;BR /&gt;;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;%end;&lt;BR /&gt;%mend;&lt;BR /&gt;%clientid;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Log ERROR!!!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;MPRINT(CLIENTID): proc sql noprint;&lt;BR /&gt;MPRINT(CLIENTID): select count(distinct(ids))into :a from test ;&lt;BR /&gt;MPRINT(CLIENTID): quit;&lt;BR /&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;BR /&gt;real time 0.01 seconds&lt;BR /&gt;user cpu time 0.01 seconds&lt;BR /&gt;system cpu time 0.00 seconds&lt;BR /&gt;memory 5850.87k&lt;BR /&gt;OS Memory 29560.00k&lt;BR /&gt;Timestamp 02/08/2019 12:38:43 PM&lt;BR /&gt;Step Count 23 Switch Count 0&lt;/P&gt;&lt;P&gt;MPRINT(CLIENTID): proc sql noprint;&lt;BR /&gt;MPRINT(CLIENTID): select distinct shell into :client_id from test where ids = 1;&lt;BR /&gt;MPRINT(CLIENTID): quit;&lt;BR /&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;BR /&gt;real time 0.00 seconds&lt;BR /&gt;user cpu time 0.00 seconds&lt;BR /&gt;system cpu time 0.00 seconds&lt;BR /&gt;memory 5850.65k&lt;BR /&gt;OS Memory 29816.00k&lt;BR /&gt;Timestamp 02/08/2019 12:38:43 PM&lt;BR /&gt;Step Count 24 Switch Count 0&lt;/P&gt;&lt;P&gt;XXX06&lt;BR /&gt;MPRINT(CLIENTID): proc sql ;&lt;BR /&gt;WARNING: Apparent symbolic reference CLIENT_ID_CUSTOMER_HEADER_ not resolved.&lt;BR /&gt;NOTE: Line generated by the invoked macro "CLIENTID".&lt;BR /&gt;75 &amp;amp;client_id_CUSTOMER_HEADER_&amp;amp;todaysDate as select &amp;amp;client_id varchar(16) default null,&lt;BR /&gt;_&lt;BR /&gt;22&lt;BR /&gt;76&lt;BR /&gt;75 ! unique_identifier bigint default null, der_hash_code bigint default null, der_hash_key varchar(50)&lt;BR /&gt;75 ! default null,&lt;BR /&gt;MPRINT(CLIENTID): CREATE TABLE &amp;amp;client_id_CUSTOMER_HEADER_2019-08-02 as select XXX06 varchar(16) default null, unique_identifier&lt;BR /&gt;3 The SAS System Friday, 2 August 2019 12:34:00&lt;/P&gt;&lt;P&gt;bigint default null, der_hash_code bigint default null, der_hash_key varchar(50) default null, elements_address_dps varchar(2)&lt;BR /&gt;default null, elements_address_status varchar(1) default null, elements_key_household bigint default null,&lt;BR /&gt;elements_key_urn_household bigint default null, elements_data_date datetime default null, unique_rec integer default 0 ;&lt;BR /&gt;ERROR 22-322: Syntax error, expecting one of the following: a name, a quoted string.&lt;/P&gt;&lt;P&gt;ERROR 76-322: Syntax error, the statement will be ignored.&lt;/P&gt;&lt;P&gt;NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.&lt;BR /&gt;IMPRINT(CLIENTID): quit;&lt;BR /&gt;NOTE: The SAS System stopped processing this step because of errors.&lt;BR /&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;BR /&gt;real-time 0.00 seconds&lt;BR /&gt;user CPU time 0.00 seconds&lt;BR /&gt;system CPU time 0.00 seconds&lt;BR /&gt;memory 40.96k&lt;BR /&gt;OS Memory 24172.00k&lt;BR /&gt;Timestamp 02/08/2019 12:38:43 PM&lt;BR /&gt;Step Count 25 Switch Count 0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 02 Aug 2019 11:48:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Macro-error-o/m-p/578669#M13381</guid>
      <dc:creator>meckarthik</dc:creator>
      <dc:date>2019-08-02T11:48:02Z</dc:date>
    </item>
    <item>
      <title>Re: Macro error o</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Macro-error-o/m-p/578672#M13382</link>
      <description>&lt;P&gt;The problem is that SAS doesn't know that your macro is just 'client_id', as there is nothing to tell it where to stop in the text string. So it runs up to the ampersand, making the assumption that the macro name is &amp;nbsp;'&amp;amp;client_id_CUSTOMER_HEADER_'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Which is why this warning message appeared in your log.&lt;/P&gt;&lt;P&gt;WARNING: Apparent symbolic reference CLIENT_ID_CUSTOMER_HEADER_ not resolved.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Put a period (.) at the end of your macro name(&amp;amp;client_id), so: &amp;nbsp;&amp;amp;client_id._CUSTOMER_HEADER_&amp;amp;todaysDate&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;That should fix your issue with the Client_ID macro not resolving.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hope this helps&lt;/P&gt;</description>
      <pubDate>Fri, 02 Aug 2019 12:06:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Macro-error-o/m-p/578672#M13382</guid>
      <dc:creator>tsap</dc:creator>
      <dc:date>2019-08-02T12:06:25Z</dc:date>
    </item>
    <item>
      <title>Re: Macro error o</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Macro-error-o/m-p/578741#M13383</link>
      <description>&lt;P&gt;Is this bit of SQL supposed to be executed remotely?&lt;/P&gt;
&lt;PRE&gt;proc sql ;
CREATE TABLE &amp;amp;client_id_CUSTOMER_HEADER_&amp;amp;todaysDate as
select
&amp;amp;client_id varchar(16) default null,
unique_identifier bigint default null,
der_hash_code bigint default null,
der_hash_key varchar(50) default null,
elements_address_dps varchar(2) default null,
elements_address_status varchar(1) default null,
elements_key_household bigint default null,
elements_key_urn_household bigint default null,
elements_data_date datetime default null,
unique_rec integer default 0
;
quit;&lt;/PRE&gt;
&lt;P&gt;If not you will get&amp;nbsp;errors because VARCHAR, BIGINT, Default and Null are not SAS Proc SQL keywords.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You have to start with working non-macro code and then add the macro elements.&lt;/P&gt;</description>
      <pubDate>Fri, 02 Aug 2019 15:14:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Macro-error-o/m-p/578741#M13383</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2019-08-02T15:14:54Z</dc:date>
    </item>
  </channel>
</rss>

