<?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: call symputx vs. symput in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811522#M320106</link>
    <description>&lt;P&gt;Great question. This is a perfect place for you to consult the documentation.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://documentation.sas.com/doc/en/pgmmvacdc/9.4/mcrolref/p1fa0ay5pzr9yun1mvqxv8ipzd4d.htm" target="_blank"&gt;https://documentation.sas.com/doc/en/pgmmvacdc/9.4/mcrolref/p1fa0ay5pzr9yun1mvqxv8ipzd4d.htm&lt;/A&gt;&lt;/P&gt;</description>
    <pubDate>Wed, 04 May 2022 17:50:14 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2022-05-04T17:50:14Z</dc:date>
    <item>
      <title>call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811520#M320104</link>
      <description>&lt;P&gt;hello team,&lt;/P&gt;
&lt;P&gt;What is the difference between symputx and call symputx?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Respectfully,&lt;/P&gt;
&lt;P&gt;blue&amp;amp;blue&lt;/P&gt;</description>
      <pubDate>Wed, 04 May 2022 17:42:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811520#M320104</guid>
      <dc:creator>GN0001</dc:creator>
      <dc:date>2022-05-04T17:42:45Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811522#M320106</link>
      <description>&lt;P&gt;Great question. This is a perfect place for you to consult the documentation.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://documentation.sas.com/doc/en/pgmmvacdc/9.4/mcrolref/p1fa0ay5pzr9yun1mvqxv8ipzd4d.htm" target="_blank"&gt;https://documentation.sas.com/doc/en/pgmmvacdc/9.4/mcrolref/p1fa0ay5pzr9yun1mvqxv8ipzd4d.htm&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 04 May 2022 17:50:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811522#M320106</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-05-04T17:50:14Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811526#M320109</link>
      <description>&lt;P&gt;The documentation has it description of the differences.&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;H2 class="xisDoc-title"&gt;Comparisons&lt;/H2&gt;
&lt;P class="xisDoc-paragraph"&gt;CALL SYMPUTX is similar to CALL SYMPUT. Here are the differences.&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;UL class="xisDoc-listUnordered"&gt;
&lt;LI class="xisDoc-item"&gt;
&lt;BLOCKQUOTE&gt;CALL SYMPUTX does not write a note to the SAS log when the second argument is numeric. CALL SYMPUT, however, writes a note to the log stating that numeric values were converted to character values.&lt;/BLOCKQUOTE&gt;
&lt;/LI&gt;
&lt;LI class="xisDoc-item"&gt;
&lt;BLOCKQUOTE&gt;CALL SYMPUTX uses a field width of up to 32 characters when it converts a numeric second argument to a character value. CALL SYMPUT uses a field width of up to 12 characters.&lt;/BLOCKQUOTE&gt;
&lt;/LI&gt;
&lt;LI class="xisDoc-item"&gt;
&lt;BLOCKQUOTE&gt;CALL SYMPUTX left-justifies both arguments and trims trailing blanks. CALL SYMPUT does not left-justify the arguments, and trims trailing blanks from the first argument only. Leading blanks in the value of name cause an error.&lt;/BLOCKQUOTE&gt;
&lt;/LI&gt;
&lt;LI class="xisDoc-item"&gt;
&lt;BLOCKQUOTE&gt;CALL SYMPUTX enables you to specify the symbol table in which to store the macro variable, whereas CALL SYMPUT does not.&lt;/BLOCKQUOTE&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But the main thing to remember is you only ever want to use the old (very old) CALL SYMPUT() function if it is required that the macro variable contain leading and/or trailing space characters.&lt;/P&gt;</description>
      <pubDate>Wed, 04 May 2022 17:58:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811526#M320109</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2022-05-04T17:58:18Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811527#M320110</link>
      <description>&lt;P&gt;I think I wish CALL SYMPUTX would throw the note about converting numeric values to character.&amp;nbsp; I think I also wish the CAT functions would throw that note.&amp;nbsp; It's fine, I guess, that SAS added routines / functions that will do implicit conversions, but it does seem NOTE-worthy to me.&lt;/P&gt;</description>
      <pubDate>Wed, 04 May 2022 18:08:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811527#M320110</guid>
      <dc:creator>Quentin</dc:creator>
      <dc:date>2022-05-04T18:08:28Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811551#M320119</link>
      <description>&lt;P&gt;See the article &lt;A href="https://blogs.sas.com/content/iml/2011/10/17/does-symput-work-in-iml.html" target="_self"&gt;"Does SYMPUT work in IML"&lt;/A&gt;&amp;nbsp;for a discussion about some of the points that &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/19879"&gt;@Quentin&lt;/a&gt;&amp;nbsp;and others mention. Quentin: Note that not all SAS procedures do an automatic conversion. It is primarily the DATA step that decided to "be helpful" by performing automatic conversions.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 May 2022 20:09:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811551#M320119</guid>
      <dc:creator>Rick_SAS</dc:creator>
      <dc:date>2022-05-04T20:09:38Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811571#M320125</link>
      <description>&lt;P&gt;When a function's name ends with an '&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;' it strips leading and trailing blanks. For example, cat('a','&amp;nbsp; b&amp;nbsp; ') = 'a&amp;nbsp; b&amp;nbsp; ', while cat&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;('a','&amp;nbsp; b&amp;nbsp; ') = 'ab'. Similarly, call symput("var", "&amp;nbsp; MWSUG&amp;nbsp; ")&amp;nbsp; puts "&amp;nbsp; MWSUG&amp;nbsp; " into macro variable &lt;EM&gt;var&lt;/EM&gt;, while call symput&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;("var", "&amp;nbsp; MWSUG&amp;nbsp; ") strips the leading and trailing blanks, putting "MWSUG" into macro variable &lt;EM&gt;var&lt;/EM&gt;. The '&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;' functions did not become available until version 9. The older way to strip the blanks was to nest the input parameters in a strip() function, so something like cat('a', strip('&amp;nbsp; b&amp;nbsp; ')) would be equivalent to cat&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;('a', '&amp;nbsp; b&amp;nbsp; ').&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 04 May 2022 21:38:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811571#M320125</guid>
      <dc:creator>pink_poodle</dc:creator>
      <dc:date>2022-05-04T21:38:38Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811668#M320161</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/235176"&gt;@pink_poodle&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;(...) For example, cat('a','&amp;nbsp; b&amp;nbsp; ') = 'a&amp;nbsp; b&amp;nbsp; ', while cat&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;('a','&amp;nbsp; b&amp;nbsp; ') = 'ab'. (...)&amp;nbsp;something like cat('a', strip('&amp;nbsp; b&amp;nbsp; ')) would be equivalent to cat&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;('a', '&amp;nbsp; b&amp;nbsp; ').&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/235176"&gt;@pink_poodle&lt;/a&gt;: I think you mean cat&lt;FONT color="#008000"&gt;&lt;STRONG&gt;s&lt;/STRONG&gt;&lt;/FONT&gt;, not cat&lt;FONT color="#FF0000"&gt;x&lt;/FONT&gt;.&lt;/P&gt;
&lt;PRE&gt;&lt;FONT size="4"&gt;catx('a','  b  ') = &lt;STRONG&gt;'b'&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 05 May 2022 14:01:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811668#M320161</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2022-05-05T14:01:43Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811693#M320175</link>
      <description>I see, there is also CATS. CATS is kind of like CATX. Now what is the difference between CATS and CATX... &lt;BR /&gt;&lt;A href="https://documentation.sas.com/doc/en/vdmmlcdc/1.0/lefunctionsref/n0p7wxtk0hvn83n1pveisbcp2ae9.htm" target="_blank"&gt;https://documentation.sas.com/doc/en/vdmmlcdc/1.0/lefunctionsref/n0p7wxtk0hvn83n1pveisbcp2ae9.htm&lt;/A&gt;</description>
      <pubDate>Thu, 05 May 2022 16:04:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811693#M320175</guid>
      <dc:creator>pink_poodle</dc:creator>
      <dc:date>2022-05-05T16:04:06Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811854#M320264</link>
      <description>There's a whole family of CAT functions.  I always thought the x in CATX meant "insert some value, X, as a delimiter between items."   As opposed to just stripping items (CATS) or trimming (CATT).  Louise Hadden wrote a great paper on CAT functions: &lt;A href="https://www.lexjansen.com/nesug/nesug09/po/PO05.pdf" target="_blank"&gt;https://www.lexjansen.com/nesug/nesug09/po/PO05.pdf&lt;/A&gt; .&lt;BR /&gt;&lt;BR /&gt;I never had a theory for any 'meaning' for the x on the end of CALL SYMPUTX.   I feel like they didn't want to call it CALL SYMPUT2, but they also sensibly couldn't change CALL SYMPUT without breaking legacy code, and then just decided to put an X on the end to give it a different name.</description>
      <pubDate>Fri, 06 May 2022 12:26:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811854#M320264</guid>
      <dc:creator>Quentin</dc:creator>
      <dc:date>2022-05-06T12:26:51Z</dc:date>
    </item>
    <item>
      <title>Re: call symputx vs. symput</title>
      <link>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811865#M320273</link>
      <description>&lt;P&gt;CATS concatenates the arguments; CATX uses the first argument as a delimiter between all the following arguments. Both functions remove leading and trailing blanks before concatenating.&lt;/P&gt;</description>
      <pubDate>Fri, 06 May 2022 12:56:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/call-symputx-vs-symput/m-p/811865#M320273</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2022-05-06T12:56:04Z</dc:date>
    </item>
  </channel>
</rss>

