<?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: Where between dates to pull last month in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112755#M31196</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I see that proofreading has been posted&lt;/P&gt;&lt;P&gt;and is probably the answer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fyi&lt;/P&gt;&lt;P&gt;the data step where you create the macro variables with call symput&lt;/P&gt;&lt;P&gt;can be replaced with macro assignment statements&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;details and examples are on this page:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="active_link" href="http://www.sascommunity.org/wiki/Macro_Loops_with_Dates" title="http://www.sascommunity.org/wiki/Macro_Loops_with_Dates"&gt;http://www.sascommunity.org/wiki/Macro_Loops_with_Dates&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the SGF.paper:&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings13/343-2013.pdf" rel="nofollow" title="http://support.sas.com/resources/papers/proceedings13/343-2013.pdf"&gt;http://support.sas.com/resources/papers/proceedings13/343-2013.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ron Fehd&amp;nbsp; dates maven&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 18 Apr 2013 20:54:29 GMT</pubDate>
    <dc:creator>Ron_MacroMaven</dc:creator>
    <dc:date>2013-04-18T20:54:29Z</dc:date>
    <item>
      <title>Where between dates to pull last month</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112752#M31193</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI I have this snippet of code where I'm trying to pull last month data. I would like it to pull last month data no matter when it's run. thanks for your assistance ... I attach&amp;nbsp; error log&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; temp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;curr_date = &lt;STRONG&gt;"10Mar2013"d&lt;/STRONG&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;first_day_prev_month = intnx('month',curr_date,-&lt;STRONG&gt;1&lt;/STRONG&gt;,'B');&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;last_day_prev_month = intnx('month1',curr_date,-&lt;STRONG&gt;1&lt;/STRONG&gt;,'E');&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;call symput('dt', "'"||put(first_day_prev_month, mmddyyd10.)||"'");&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;call symput('dt1', "'"||put(last_day_prev_month, mmddyyd10.)||"'d");&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;format curr_date first_day_prev_month last_day_prev_month mmddyyd10.;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&lt;STRONG&gt;proc&lt;/STRONG&gt; &lt;STRONG&gt;sql&lt;/STRONG&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;connect to Access as db (path="T:\CCMS Production\CCMSProduction.accdb");&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;create table Dep as&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;select * from connection to db (select * from [tbl_depositcompliance]&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;where tbl_depositcompliance.Scheduled_Settle between &amp;amp;dt. and &amp;amp;dt1.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&lt;STRONG&gt;quit&lt;/STRONG&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1901&amp;nbsp; proc sql;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1902&amp;nbsp; connect to Access as db (path="T:\CCMS Production\CCMSProduction.accdb");&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1903&amp;nbsp; create table Dep as&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1904&amp;nbsp; select * from connection to db (select * from [tbl_depositcompliance]&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1905&amp;nbsp; where (tbl_depositcompliance.Scheduled_Settle&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;SYMBOLGEN:&amp;nbsp; Macro variable DT resolves to '02-01-2013'&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1905!&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;&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;&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;&amp;nbsp; between &amp;amp;dt.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;SYMBOLGEN:&amp;nbsp; Macro variable DT1 resolves to '02-28-2013'd&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1905!&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;&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;&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;&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; and &amp;amp;dt1.)&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1906&amp;nbsp; );&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;ERROR: Prepare: Syntax error (missing operator) in query expression&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '(tbl_depositcompliance.Scheduled_Settle between '02-01-2013' and '02-28-2013'd)'.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;SQL statement: select * from [tbl_depositcompliance] where (tbl_depositcompliance.Scheduled_Settle&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; between '02-01-2013' and '02-28-2013'd)&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1907&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;1908&amp;nbsp; quit;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;NOTE: The SAS System stopped processing this step because of errors.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; real time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4.42 seconds&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cpu time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.03 seconds&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Apr 2013 18:30:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112752#M31193</guid>
      <dc:creator>BETO</dc:creator>
      <dc:date>2013-04-18T18:30:00Z</dc:date>
    </item>
    <item>
      <title>Re: Where between dates to pull last month</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112753#M31194</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think the pass through query has to use native syntax which for access is #mm/dd/yyyy#&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, try &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;call symput('dt', "#"||put(first_day_prev_month, mmddyys10.)||"#");&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="ecxMsoNormal" style="text-align: left;"&gt;&lt;SPAN style="background-color: rgba(255, 255, 255, 0);"&gt;call symput('dt1', "#"||put(last_day_prev_month, mmddyys10.)||"#");&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Apr 2013 19:06:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112753#M31194</guid>
      <dc:creator>DBailey</dc:creator>
      <dc:date>2013-04-18T19:06:44Z</dc:date>
    </item>
    <item>
      <title>Re: Where between dates to pull last month</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112754#M31195</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;Hi,&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;could you try this, please (I added a 'd' at the end of your "&lt;EM&gt;dt&lt;/EM&gt;" variable (see in &lt;SPAN style="color: #ff0000;"&gt;red&lt;/SPAN&gt;)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;data temp;&lt;/P&gt;&lt;P&gt;curr_date = "10Mar2013"d;&lt;/P&gt;&lt;P&gt;first_day_prev_month = intnx('month',curr_date,-1,'B');&lt;/P&gt;&lt;P&gt;last_day_prev_month = intnx('month1',curr_date,-1,'E');&lt;/P&gt;&lt;P&gt;call symput('dt', "'"||put(first_day_prev_month, mmddyyd10.)||"'&lt;STRONG style="color: #ff0000;"&gt;d&lt;/STRONG&gt;");&lt;/P&gt;&lt;P&gt;call symput('dt1', "'"||put(last_day_prev_month, mmddyyd10.)||"'d");&lt;/P&gt;&lt;P&gt;format curr_date first_day_prev_month last_day_prev_month mmddyyd10.;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;connect to Access as db (path="T:\CCMS Production\CCMSProduction.accdb");&lt;/P&gt;&lt;P&gt;create table Dep as&lt;/P&gt;&lt;P&gt;select * from connection to db (select * from [tbl_depositcompliance]&lt;/P&gt;&lt;P&gt;where tbl_depositcompliance.Scheduled_Settle between &amp;amp;dt. and &amp;amp;dt1.&lt;/P&gt;&lt;P&gt;);&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Let me know if this works.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Good luck&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Anca.&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Apr 2013 19:10:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112754#M31195</guid>
      <dc:creator>AncaTilea</dc:creator>
      <dc:date>2013-04-18T19:10:59Z</dc:date>
    </item>
    <item>
      <title>Re: Where between dates to pull last month</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112755#M31196</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I see that proofreading has been posted&lt;/P&gt;&lt;P&gt;and is probably the answer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fyi&lt;/P&gt;&lt;P&gt;the data step where you create the macro variables with call symput&lt;/P&gt;&lt;P&gt;can be replaced with macro assignment statements&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;details and examples are on this page:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="active_link" href="http://www.sascommunity.org/wiki/Macro_Loops_with_Dates" title="http://www.sascommunity.org/wiki/Macro_Loops_with_Dates"&gt;http://www.sascommunity.org/wiki/Macro_Loops_with_Dates&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the SGF.paper:&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings13/343-2013.pdf" rel="nofollow" title="http://support.sas.com/resources/papers/proceedings13/343-2013.pdf"&gt;http://support.sas.com/resources/papers/proceedings13/343-2013.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ron Fehd&amp;nbsp; dates maven&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Apr 2013 20:54:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Where-between-dates-to-pull-last-month/m-p/112755#M31196</guid>
      <dc:creator>Ron_MacroMaven</dc:creator>
      <dc:date>2013-04-18T20:54:29Z</dc:date>
    </item>
  </channel>
</rss>

