<?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 fixing a macro autopopulated  set statement when datasets are missing in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/fixing-a-macro-autopopulated-set-statement-when-datasets-are/m-p/964333#M375575</link>
    <description>&lt;P&gt;%macro populate_set_statement(current_date);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let current_date_num = %sysfunc(inputn(&amp;amp;current_date., yymmdd10.));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let current_date_minus_363 = %eval(&amp;amp;current_date_num - 363);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let current_date_minus_347 = %eval(&amp;amp;current_date_num - 347);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; data all;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set&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; %do i = %sysfunc(inputn(20250317, yymmdd10.)) %to &amp;amp;current_date_num;&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;&amp;nbsp;&amp;nbsp; %if %sysfunc(exist(both_%sysfunc(putn(&amp;amp;i., mmddyy6.)))) %then both_%sysfunc(putn(&amp;amp;i., mmddyy6.));&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; %end;&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; %do j = &amp;amp;current_date_minus_363 %to &amp;amp;current_date_minus_347;&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;&amp;nbsp;&amp;nbsp; %if %sysfunc(exist(all22_%sysfunc(putn(&amp;amp;j., mmddyy6.)))) %then all22_%sysfunc(putn(&amp;amp;j., mmddyy6.));&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; %end;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;%mend populate_set_statement;&lt;BR /&gt;%populate_set_statement(%sysfunc(today(), yymmdd10.));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Using SAS 9.4 (TS1M7).&lt;/P&gt;&lt;P&gt;I have this part of a program that auto populates a dataset "all" based on dates. There is a chance in the future that some of the datasets used to create the datasets in the set statement above will be empty causing All not to be created. Can someone give me a work around so that if a dataset is empty it is removed from the set statement? Thanks.&lt;/P&gt;</description>
    <pubDate>Tue, 15 Apr 2025 14:08:33 GMT</pubDate>
    <dc:creator>jteague</dc:creator>
    <dc:date>2025-04-15T14:08:33Z</dc:date>
    <item>
      <title>fixing a macro autopopulated  set statement when datasets are missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/fixing-a-macro-autopopulated-set-statement-when-datasets-are/m-p/964333#M375575</link>
      <description>&lt;P&gt;%macro populate_set_statement(current_date);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let current_date_num = %sysfunc(inputn(&amp;amp;current_date., yymmdd10.));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let current_date_minus_363 = %eval(&amp;amp;current_date_num - 363);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let current_date_minus_347 = %eval(&amp;amp;current_date_num - 347);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; data all;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set&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; %do i = %sysfunc(inputn(20250317, yymmdd10.)) %to &amp;amp;current_date_num;&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;&amp;nbsp;&amp;nbsp; %if %sysfunc(exist(both_%sysfunc(putn(&amp;amp;i., mmddyy6.)))) %then both_%sysfunc(putn(&amp;amp;i., mmddyy6.));&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; %end;&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; %do j = &amp;amp;current_date_minus_363 %to &amp;amp;current_date_minus_347;&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;&amp;nbsp;&amp;nbsp; %if %sysfunc(exist(all22_%sysfunc(putn(&amp;amp;j., mmddyy6.)))) %then all22_%sysfunc(putn(&amp;amp;j., mmddyy6.));&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; %end;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;%mend populate_set_statement;&lt;BR /&gt;%populate_set_statement(%sysfunc(today(), yymmdd10.));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Using SAS 9.4 (TS1M7).&lt;/P&gt;&lt;P&gt;I have this part of a program that auto populates a dataset "all" based on dates. There is a chance in the future that some of the datasets used to create the datasets in the set statement above will be empty causing All not to be created. Can someone give me a work around so that if a dataset is empty it is removed from the set statement? Thanks.&lt;/P&gt;</description>
      <pubDate>Tue, 15 Apr 2025 14:08:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/fixing-a-macro-autopopulated-set-statement-when-datasets-are/m-p/964333#M375575</guid>
      <dc:creator>jteague</dc:creator>
      <dc:date>2025-04-15T14:08:33Z</dc:date>
    </item>
    <item>
      <title>Re: fixing a macro autopopulated  set statement when datasets are missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/fixing-a-macro-autopopulated-set-statement-when-datasets-are/m-p/964334#M375576</link>
      <description>&lt;P&gt;When you say some of the datasets are empty, you mean some of them have 0 records?&amp;nbsp; That should not stop your dataset work.ALL from being created.&lt;/P&gt;</description>
      <pubDate>Tue, 15 Apr 2025 14:15:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/fixing-a-macro-autopopulated-set-statement-when-datasets-are/m-p/964334#M375576</guid>
      <dc:creator>Quentin</dc:creator>
      <dc:date>2025-04-15T14:15:16Z</dc:date>
    </item>
    <item>
      <title>Re: fixing a macro autopopulated  set statement when datasets are missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/fixing-a-macro-autopopulated-set-statement-when-datasets-are/m-p/964335#M375577</link>
      <description>&lt;P&gt;Thank you. You are right and I was confused. When testing the code the issue was datasets that do not exist rather than ones with zero observations. But that shouldn't be an issue the way the code above this is written. So thanks again.&lt;/P&gt;</description>
      <pubDate>Tue, 15 Apr 2025 14:41:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/fixing-a-macro-autopopulated-set-statement-when-datasets-are/m-p/964335#M375577</guid>
      <dc:creator>jteague</dc:creator>
      <dc:date>2025-04-15T14:41:58Z</dc:date>
    </item>
  </channel>
</rss>

