<?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 to extract text? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57724#M12500</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks Art,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;when i remove the quotes i'm still getting an error for the pcoess&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Apparent symbolic reference TYPE_CNT_INCOM not resolved.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;DATA WORK.TEST; SET DATA.TEST;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%MACRO USAGE(TYPE);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;IF EVENT_TYPE IN ("&amp;amp;TYPE") AND DIRECTION IN ('INCOM') THEN DO;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_&amp;amp;TYPE_CNT_INCOM=COUNT;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;END;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;IF EVENT_TYPE IN ("&amp;amp;TYPE") AND DIRECTION IN ('OUTGO') THEN DO;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_&amp;amp;TYPE_CNT_OUTGO=COUNT;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;END;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%MEND;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%USAGE(SMS);&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%USAGE(MMS);&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 17 Feb 2012 21:48:40 GMT</pubDate>
    <dc:creator>Danglytics</dc:creator>
    <dc:date>2012-02-17T21:48:40Z</dc:date>
    <item>
      <title>macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57718#M12494</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;I have a macro to stack 2 files, but i want to do is create a variable with the timestamp of where the file is coming from,&lt;/P&gt;&lt;P&gt;I'm not sure how to just extract the text from the code file name to create the variable FILE_PERIOD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;likely pretty obvious but my code below for file_period does not work..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%MACRO STACK(STACKED,FILE1,FILE2) ;&lt;/P&gt;&lt;P&gt;DATA B.&amp;amp;STACKED ; SET A.&amp;amp;FILE1 A.&amp;amp;FILE2 ; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FILE_PERIOD = SUBSTR(&amp;amp;FILE1,7,10) ; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;P&gt;%MEND ;&lt;/P&gt;&lt;P&gt;%STACK(STACKED_2011DEC31,FILE1_2011DEC31,FILE2_2011DEC31) ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your help.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 19:12:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57718#M12494</guid>
      <dc:creator>Danglytics</dc:creator>
      <dc:date>2012-02-17T19:12:57Z</dc:date>
    </item>
    <item>
      <title>macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57719#M12495</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Put double quotes around the string macro in the substr() invocation. (Untested).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FILE_PERIOD = SUBSTR("&amp;amp;FILE1",7,10) ; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Karl&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 19:33:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57719#M12495</guid>
      <dc:creator>KarlK</dc:creator>
      <dc:date>2012-02-17T19:33:04Z</dc:date>
    </item>
    <item>
      <title>Re: macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57720#M12496</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Karl is right in that constant text must be quoted, but you my still need to distinguish between incoming data sets.&amp;nbsp; Consider using the INDSNAME= option on the SET statement.&amp;nbsp; Untested code follows:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%MACRO STACK(STACKED,FILE1,FILE2) ;&lt;BR /&gt;DATA B.&amp;amp;STACKED ; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; SET A.&amp;amp;FILE1 A.&amp;amp;FILE2 indsname=fred; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; FILE_PERIOD = SUBSTR(fred,7,10) ; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; RUN;&lt;BR /&gt;%MEND stacK;&lt;BR /&gt;%STACK(STACKED_2011DEC31,FILE1_2011DEC31,FILE2_2011DEC31) ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Notice that the variable name FRED is not quoted.&amp;nbsp; I also named the macro on the %MEND - this is just good housekeeping.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 19:47:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57720#M12496</guid>
      <dc:creator>ArtC</dc:creator>
      <dc:date>2012-02-17T19:47:35Z</dc:date>
    </item>
    <item>
      <title>macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57721#M12497</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;%MACRO STACK(STACKED,FILE1,FILE2) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;DATA &amp;amp;STACKED ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; length FILE_PERIOD $ 9;&lt;/P&gt;&lt;P&gt;SET a.&amp;amp;FILE1 a.&amp;amp;FILE2 ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FILE_PERIOD =scan("&amp;amp;FILE1",2,'_') ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;P&gt;%MEND ;&lt;/P&gt;&lt;P&gt;%STACK(STACKED_2011DEC31,FILE1_2011DEC31,FILE2_2011DEC31) ;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 19:48:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57721#M12497</guid>
      <dc:creator>Linlin</dc:creator>
      <dc:date>2012-02-17T19:48:06Z</dc:date>
    </item>
    <item>
      <title>macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57722#M12498</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Am I able to embed a text from a macro into a variable name?&lt;/P&gt;&lt;P&gt;the following code isnt working, but i'd like to create 2 vars in this case:&lt;/P&gt;&lt;P&gt;USE_SMS_CNT_INCOM&lt;/P&gt;&lt;P&gt;USE_MMS_CNT_INCOM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA WORK.TEST; SET DATA.TEST;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%MACRO USAGE(TYPE);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF EVENT_TYPE IN ("&amp;amp;TYPE") AND DIRECTION IN ('INCOM') THEN DO;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_"&amp;amp;TYPE"_CNT_INCOM=COUNT;&lt;/P&gt;&lt;P&gt;END;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF EVENT_TYPE IN ("&amp;amp;TYPE") AND DIRECTION IN ('OUTGO') THEN DO;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_"&amp;amp;TYPE"_CNT_OUTGO=COUNT;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END;&lt;/P&gt;&lt;P&gt;%MEND;&lt;/P&gt;&lt;P&gt;%USAGE(SMS);&lt;/P&gt;&lt;P&gt;%USAGE(MMS);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 21:17:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57722#M12498</guid>
      <dc:creator>Danglytics</dc:creator>
      <dc:date>2012-02-17T21:17:03Z</dc:date>
    </item>
    <item>
      <title>Re: macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57723#M12499</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In this case you do not want to quote the macro variable.&amp;nbsp; Think of it this way.&amp;nbsp; The macro variable resolves to the text that you might have typed.&amp;nbsp; The quotes have nothing to do with this process.&amp;nbsp; You would never name a variable &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_"MMS"_CNT_INCOM=COUNT;&lt;/P&gt;&lt;P&gt;the MMS is the resolved value of the macro variable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In your original post.&lt;/P&gt;&lt;P&gt;FILE_PERIOD = SUBSTR(&amp;amp;FILE1,7,10) ;&lt;/P&gt;&lt;P&gt;fails because &amp;amp;FILE1 does not resolve to a variable name.&amp;nbsp; Instead it is constant text and therefore must be quoted.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Remember it is all about how the resolved value of the macro variable is to be used.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 21:41:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57723#M12499</guid>
      <dc:creator>ArtC</dc:creator>
      <dc:date>2012-02-17T21:41:03Z</dc:date>
    </item>
    <item>
      <title>macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57724#M12500</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks Art,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;when i remove the quotes i'm still getting an error for the pcoess&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Apparent symbolic reference TYPE_CNT_INCOM not resolved.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;DATA WORK.TEST; SET DATA.TEST;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%MACRO USAGE(TYPE);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;IF EVENT_TYPE IN ("&amp;amp;TYPE") AND DIRECTION IN ('INCOM') THEN DO;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_&amp;amp;TYPE_CNT_INCOM=COUNT;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;END;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;IF EVENT_TYPE IN ("&amp;amp;TYPE") AND DIRECTION IN ('OUTGO') THEN DO;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_&amp;amp;TYPE_CNT_OUTGO=COUNT;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;END;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%MEND;&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%USAGE(SMS);&lt;/P&gt;&lt;P style="background-color: #eef4f9;"&gt;%USAGE(MMS);&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 21:48:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57724#M12500</guid>
      <dc:creator>Danglytics</dc:creator>
      <dc:date>2012-02-17T21:48:40Z</dc:date>
    </item>
    <item>
      <title>macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57725#M12501</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Sorry my bad for not paying attention.&amp;nbsp; When appending letters or numbers to macro variable follow the macro variable name with a dot so that the parser knows where the name ends.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE_&amp;amp;TYPE._CNT_OUTGO=COUNT;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Different potential issue.&amp;nbsp; Be sure that &amp;amp;TYPE does not have any leading, trailing, or embedded blanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 21:59:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57725#M12501</guid>
      <dc:creator>ArtC</dc:creator>
      <dc:date>2012-02-17T21:59:08Z</dc:date>
    </item>
    <item>
      <title>macro to extract text?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57726#M12502</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thank you, worked perfectly.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2012 22:31:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/macro-to-extract-text/m-p/57726#M12502</guid>
      <dc:creator>Danglytics</dc:creator>
      <dc:date>2012-02-17T22:31:28Z</dc:date>
    </item>
  </channel>
</rss>

