<?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: Failure to resolve macro variable in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204480#M306308</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The log messages&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; CONNECT TO teradata (user= '500000@LDAP' password="&amp;amp;server_dbpass" tdpid = edtdp.XX.com&amp;nbsp; mode=teradata)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2 CONNECT TO teradata (user= &amp;amp;USER_LDAP password=XXXXXXXXXX tdpid = edtdp.XX.com mode=teradata);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; WARNING: Apparent symbolic reference USER_LDAP not resolved.&lt;/P&gt;&lt;P&gt;is telling you there are issues with the USER_LDAP macro lifetime.&amp;nbsp; The code you postes must be incomplete.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What you are trying to do, looks very complicated, unnecessary complicated.&lt;BR /&gt;Ever thought on more simple approaches? What is the original questions issues and options?&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 27 Apr 2015 15:19:24 GMT</pubDate>
    <dc:creator>jakarman</dc:creator>
    <dc:date>2015-04-27T15:19:24Z</dc:date>
    <item>
      <title>Failure to resolve macro variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204478#M306306</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Looking a suggestion on this as I have tried about everything. I am trying to write a generic DB connection where the user passes their ID by macro variable the code posted verifies the visibility of the macro but when used in the connect string, it is not recognized.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code snippet &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %let USER_LDAP = %unquote(%bquote(')500000@LDAP%bquote('));&lt;/P&gt;&lt;P&gt;&amp;nbsp; %let connect_str = CONNECT TO teradata (user= &amp;amp;USER_LDAP password="%bquote(&amp;amp;)server_dbpass" tdpid = edtdp.XX.com&amp;nbsp; mode=teradata);&lt;/P&gt;&lt;P&gt;&amp;nbsp; %put &amp;amp;connect_str;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* print out the string to ensure macro USER_LDAP is valid&amp;nbsp;&amp;nbsp; */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; PROC SQL;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONNECT TO teradata (user= &amp;amp;USER_LDAP password="&amp;amp;server_dbpass" tdpid = edtdp.XX.com&amp;nbsp; mode=teradata); &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table output as &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select * from connection to teradata &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ( &amp;amp;server_sql_statement );&lt;/P&gt;&lt;P&gt;&amp;nbsp; ENDRSUBMIT;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Corresponding Log output&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONNECT TO teradata (user= '500000@LDAP' password="&amp;amp;server_dbpass" tdpid = edtdp.XX.com&amp;nbsp; mode=teradata)&lt;/P&gt;&lt;P&gt;2 CONNECT TO teradata (user= &amp;amp;USER_LDAP password=XXXXXXXXXX tdpid = edtdp.XX.com mode=teradata);&lt;/P&gt;&lt;P&gt;WARNING: Apparent symbolic reference USER_LDAP not resolved.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2015 12:50:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204478#M306306</guid>
      <dc:creator>WillingWorker</dc:creator>
      <dc:date>2015-04-27T12:50:48Z</dc:date>
    </item>
    <item>
      <title>Re: Failure to resolve macro variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204479#M306307</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Probably the line:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px; background-color: #ffffff;"&gt; %let connect_str = CONNECT TO teradata (user= &amp;amp;USER_LDAP password="%bquote(&amp;amp;)server_dbpass" tdpid = edtdp.XX.com&amp;nbsp; mode=teradata);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px; background-color: #ffffff;"&gt;You need user_ldap to resolve to someting within quotes, which currently it isn't.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px; background-color: #ffffff;"&gt;Can you not do:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px; background-color: #ffffff;"&gt;connect to tearadata (&amp;amp;connect_str.);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;With regards to what your doing however, is this a good idea?&amp;nbsp; Its not really a big saving in terms of typing, and I can't see what vale its adding.&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2015 13:50:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204479#M306307</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2015-04-27T13:50:05Z</dc:date>
    </item>
    <item>
      <title>Re: Failure to resolve macro variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204480#M306308</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The log messages&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; CONNECT TO teradata (user= '500000@LDAP' password="&amp;amp;server_dbpass" tdpid = edtdp.XX.com&amp;nbsp; mode=teradata)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 2 CONNECT TO teradata (user= &amp;amp;USER_LDAP password=XXXXXXXXXX tdpid = edtdp.XX.com mode=teradata);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; WARNING: Apparent symbolic reference USER_LDAP not resolved.&lt;/P&gt;&lt;P&gt;is telling you there are issues with the USER_LDAP macro lifetime.&amp;nbsp; The code you postes must be incomplete.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What you are trying to do, looks very complicated, unnecessary complicated.&lt;BR /&gt;Ever thought on more simple approaches? What is the original questions issues and options?&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2015 15:19:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204480#M306308</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2015-04-27T15:19:24Z</dc:date>
    </item>
    <item>
      <title>Re: Failure to resolve macro variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204481#M306309</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It looks like you are using SAS/CONNECT with RSUBMIT. Please have a look at the doc &lt;A href="https://support.sas.com/documentation/cdl/en/connref/67174/HTML/default/viewer.htm#n1wm9969gdtuijn195n1o7uaqp87.htm" title="https://support.sas.com/documentation/cdl/en/connref/67174/HTML/default/viewer.htm#n1wm9969gdtuijn195n1o7uaqp87.htm"&gt;SAS/CONNECT(R) 9.4 User's Guide, Second Edition&lt;/A&gt;, Maybe you have to transfer a local macro variable to the remote system, so that the value can be resolved.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2015 15:35:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204481#M306309</guid>
      <dc:creator>BrunoMueller</dc:creator>
      <dc:date>2015-04-27T15:35:22Z</dc:date>
    </item>
    <item>
      <title>Re: Failure to resolve macro variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204482#M306310</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sounds like you want to get the the "&amp;amp;server_dbpass" into the macro variable without macro quoting the &amp;amp; so that it will resolve?&lt;/P&gt;&lt;P&gt;Did you try %NSTR() instead of %BQUOTE().&lt;/P&gt;&lt;P&gt;Did you try using CALL SYMPUTX to put the string into the macro variable without macro quoting?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier; font-size: 10pt;"&gt;data _null_;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier; font-size: 10pt; background-color: #ffffff;"&gt;&amp;nbsp; call symputx&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier; font-size: 10pt; background-color: #ffffff;"&gt;&amp;nbsp; ('connect_str'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier; font-size: 10pt; background-color: #ffffff;"&gt;&amp;nbsp; ,'CONNECT TO teradata (user= &amp;amp;USER_LDAP password="&amp;amp;server_dbpass" tdpid = edtdp.XX.com&amp;nbsp; mode=teradata)'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier; font-size: 10pt; background-color: #ffffff;"&gt;&amp;nbsp; );&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier; font-size: 10pt; background-color: #ffffff;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2015 17:42:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204482#M306310</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2015-04-27T17:42:38Z</dc:date>
    </item>
    <item>
      <title>Re: Failure to resolve macro variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204483#M306311</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If we into guessing mode what willingworker is up to my guess is Bruno got closer to what is behind it. &lt;/P&gt;&lt;P&gt;Probably propagating local macro values to a remote session od doing that in a multi nested one. That is needing the %syslput as defined in the connect manuals. &lt;/P&gt;&lt;P&gt;Usage of the %let will cause that is executed on the wrong moment. More easily avoided by using a macro-definition on the remote session. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2015 17:48:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204483#M306311</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2015-04-27T17:48:08Z</dc:date>
    </item>
    <item>
      <title>Re: Failure to resolve macro variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204484#M306312</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the suggestions, they got me thinking in the right direction and was resolved with some code rearrangement and a properly placed %syslput.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I appreciate the assistance.&lt;/P&gt;&lt;P&gt;WW&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2015 18:34:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Failure-to-resolve-macro-variable/m-p/204484#M306312</guid>
      <dc:creator>WillingWorker</dc:creator>
      <dc:date>2015-04-27T18:34:42Z</dc:date>
    </item>
  </channel>
</rss>

