<?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 SAS Macro Format YYYY/Q (-1 Previous Quarter) in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888831#M351136</link>
    <description>&lt;P&gt;Can't seem to get a YYYY/-1(Q) Macro to work...&lt;/P&gt;
&lt;P&gt;Below is the code I am using and works fine calculating a single value for the Previous Quarter.&lt;/P&gt;
&lt;P&gt;I guess I could append the -1 Quarters to the current year, but for SAS seems like an odd way to accomplish the goal.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks In Advance.&lt;/P&gt;
&lt;P&gt;~J&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;/* Start Of Date Macro Built */&lt;BR /&gt;/*************************************/&lt;BR /&gt;Data _Null_;&lt;BR /&gt;%let Date = %sysfunc(today(),mmddyy10.); &lt;BR /&gt;%let CYear = %sysfunc(today(),Year4.);&lt;BR /&gt;%let RuleYearCurrent = %sysfunc(today(),Year4.);&lt;BR /&gt;%let CurrentYYYYQQ = %sysfunc(today(),yyqs8.);&lt;/P&gt;
&lt;P&gt;/**********************************************************************************************************************/&lt;BR /&gt;/* Cant seem to figure out the SysFunc macro to subtract 1 quarter from current quarter&amp;nbsp; */&lt;BR /&gt;/* I am looking for the current years previous quarter.&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; */&lt;BR /&gt;/* &lt;STRONG&gt;CurrrentYYYYQQ = 2023/3 which is correct&lt;/STRONG&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; &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; */&lt;BR /&gt;/* I am looking for this: PreviousYYYYQQ = &lt;STRONG&gt;2023/2&lt;/STRONG&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; &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;*/&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;&lt;EM&gt;/*%let PreviousYYYYQQ = %sysfunc(yyqs(%sysfunc(intnx(yyqs,%sysfunc(date()),-1)))); &amp;lt;- Problem Is Here */&lt;/EM&gt;&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;%let CurrentQtr = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-0))));&lt;BR /&gt;%let CurrentQtr_m1 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-1))));&lt;BR /&gt;%let CurrentQtr_m2 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-2))));&lt;BR /&gt;%let CurrentQtr_m3 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-3))));&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Current Year Quarter Is : &amp;amp;CurrentYYYYQQ;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter : &amp;amp;CurrentQtr.;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -1 : &amp;amp;CurrentQtr_m1.;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -2 : &amp;amp;CurrentQtr_m2.;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -3 : &amp;amp;CurrentQtr_m3.;&lt;BR /&gt;Run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Below is SAS Log With Macro Display:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Data _Null_;&lt;BR /&gt;%let Date = %sysfunc(today(),mmddyy10.);&lt;BR /&gt;%let CYear = %sysfunc(today(),Year4.);&lt;BR /&gt;%let RuleYearCurrent = %sysfunc(today(),Year4.);&lt;BR /&gt;%let CurrentYYYYQQ = %sysfunc(today(),yyqs8.); &lt;BR /&gt;/**********************************************************************************************************************/&lt;BR /&gt;/* Cant seem to figure out the SysFunc macro to subtract 1 quarter from current quarter&amp;nbsp; */&lt;BR /&gt;/* I am looking for the current years previous quarter.&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; */&lt;BR /&gt;/* CurrrentYYYYQQ = 2023/3 which is correct&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; */&lt;BR /&gt;/* I am looking for this: PreviousYYYYQQ = 2023/2&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;*/&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;/*%let PreviousYYYYQQ = %sysfunc(yyqs(%sysfunc(intnx(yyqs,%sysfunc(date()),-1))));*/&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;%let CurrentQtr = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-0))));&lt;BR /&gt;%let CurrentQtr_m1 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-1))));&lt;BR /&gt;%let CurrentQtr_m2 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-2))));&lt;BR /&gt;%let CurrentQtr_m3 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-3))));&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Current Year Quarter Is : &amp;amp;CurrentYYYYQQ;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Current Year Quarter Is : 2023/3&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter : &amp;amp;CurrentQtr.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter : 3&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -1 : &amp;amp;CurrentQtr_m1.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -1 : 2&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -2 : &amp;amp;CurrentQtr_m2.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -2 : 1&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -3 : &amp;amp;CurrentQtr_m3.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -3 : 4&lt;STRONG&gt;&lt;BR /&gt;Run;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 10 Aug 2023 18:00:18 GMT</pubDate>
    <dc:creator>JayS</dc:creator>
    <dc:date>2023-08-10T18:00:18Z</dc:date>
    <item>
      <title>SAS Macro Format YYYY/Q (-1 Previous Quarter)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888831#M351136</link>
      <description>&lt;P&gt;Can't seem to get a YYYY/-1(Q) Macro to work...&lt;/P&gt;
&lt;P&gt;Below is the code I am using and works fine calculating a single value for the Previous Quarter.&lt;/P&gt;
&lt;P&gt;I guess I could append the -1 Quarters to the current year, but for SAS seems like an odd way to accomplish the goal.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks In Advance.&lt;/P&gt;
&lt;P&gt;~J&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;/* Start Of Date Macro Built */&lt;BR /&gt;/*************************************/&lt;BR /&gt;Data _Null_;&lt;BR /&gt;%let Date = %sysfunc(today(),mmddyy10.); &lt;BR /&gt;%let CYear = %sysfunc(today(),Year4.);&lt;BR /&gt;%let RuleYearCurrent = %sysfunc(today(),Year4.);&lt;BR /&gt;%let CurrentYYYYQQ = %sysfunc(today(),yyqs8.);&lt;/P&gt;
&lt;P&gt;/**********************************************************************************************************************/&lt;BR /&gt;/* Cant seem to figure out the SysFunc macro to subtract 1 quarter from current quarter&amp;nbsp; */&lt;BR /&gt;/* I am looking for the current years previous quarter.&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; */&lt;BR /&gt;/* &lt;STRONG&gt;CurrrentYYYYQQ = 2023/3 which is correct&lt;/STRONG&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; &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; */&lt;BR /&gt;/* I am looking for this: PreviousYYYYQQ = &lt;STRONG&gt;2023/2&lt;/STRONG&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; &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;*/&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;&lt;EM&gt;/*%let PreviousYYYYQQ = %sysfunc(yyqs(%sysfunc(intnx(yyqs,%sysfunc(date()),-1)))); &amp;lt;- Problem Is Here */&lt;/EM&gt;&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;%let CurrentQtr = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-0))));&lt;BR /&gt;%let CurrentQtr_m1 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-1))));&lt;BR /&gt;%let CurrentQtr_m2 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-2))));&lt;BR /&gt;%let CurrentQtr_m3 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-3))));&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Current Year Quarter Is : &amp;amp;CurrentYYYYQQ;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter : &amp;amp;CurrentQtr.;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -1 : &amp;amp;CurrentQtr_m1.;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -2 : &amp;amp;CurrentQtr_m2.;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -3 : &amp;amp;CurrentQtr_m3.;&lt;BR /&gt;Run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Below is SAS Log With Macro Display:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Data _Null_;&lt;BR /&gt;%let Date = %sysfunc(today(),mmddyy10.);&lt;BR /&gt;%let CYear = %sysfunc(today(),Year4.);&lt;BR /&gt;%let RuleYearCurrent = %sysfunc(today(),Year4.);&lt;BR /&gt;%let CurrentYYYYQQ = %sysfunc(today(),yyqs8.); &lt;BR /&gt;/**********************************************************************************************************************/&lt;BR /&gt;/* Cant seem to figure out the SysFunc macro to subtract 1 quarter from current quarter&amp;nbsp; */&lt;BR /&gt;/* I am looking for the current years previous quarter.&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; */&lt;BR /&gt;/* CurrrentYYYYQQ = 2023/3 which is correct&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; */&lt;BR /&gt;/* I am looking for this: PreviousYYYYQQ = 2023/2&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;*/&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;/*%let PreviousYYYYQQ = %sysfunc(yyqs(%sysfunc(intnx(yyqs,%sysfunc(date()),-1))));*/&lt;BR /&gt;/*********************************************************************************************************************/&lt;BR /&gt;%let CurrentQtr = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-0))));&lt;BR /&gt;%let CurrentQtr_m1 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-1))));&lt;BR /&gt;%let CurrentQtr_m2 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-2))));&lt;BR /&gt;%let CurrentQtr_m3 = %sysfunc(qtr(%sysfunc(intnx(qtr,%sysfunc(date()),-3))));&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Current Year Quarter Is : &amp;amp;CurrentYYYYQQ;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Current Year Quarter Is : 2023/3&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter : &amp;amp;CurrentQtr.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter : 3&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -1 : &amp;amp;CurrentQtr_m1.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -1 : 2&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -2 : &amp;amp;CurrentQtr_m2.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -2 : 1&lt;BR /&gt;%put &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -3 : &amp;amp;CurrentQtr_m3.;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; High Level Dates: Current Quarter -3 : 4&lt;STRONG&gt;&lt;BR /&gt;Run;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 10 Aug 2023 18:00:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888831#M351136</guid>
      <dc:creator>JayS</dc:creator>
      <dc:date>2023-08-10T18:00:18Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Macro Format YYYY/Q (-1 Previous Quarter)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888834#M351137</link>
      <description>&lt;P&gt;If you want generate a string in the style YYYY/Q then use the YYQS format.&lt;/P&gt;
&lt;P&gt;To use that format you need a DATE value.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%let today=%sysfunc(date());
%let q0 = %sysfunc(putn(&amp;amp;today,yyqs.));
%let q1 = %sysfunc(intnx(qtr,&amp;amp;today,-1),yyqs.);
%put &amp;amp;=today &amp;amp;=q0 &amp;amp;=q1;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;1312  %let today=%sysfunc(date());
1313  %let q0 = %sysfunc(putn(&amp;amp;today,yyqs.));
1314  %let q1 = %sysfunc(intnx(qtr,&amp;amp;today,-1),yyqs.);
1315  %put &amp;amp;=today &amp;amp;=q0 &amp;amp;=q1;
TODAY=23232 Q0=2023/3 Q1=2023/2
&lt;/PRE&gt;
&lt;P&gt;If you want to convert a sting like YYYY/Q into a DATE value then use the YYQ informat.&amp;nbsp; But that informat wants a Q and not an slash between the year and the quarter.&amp;nbsp; You could use %SCAN() tease out the year and the quarter.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%let q2 = %sysfunc(intnx(qtr,%sysfunc(inputn(%scan(&amp;amp;q1,1,/)Q%scan(&amp;amp;q1,2,/),yyq6.)),-1),yyqs.);
%put &amp;amp;=q2;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;1344  %let q2 = %sysfunc(intnx(qtr,%sysfunc(inputn(%scan(&amp;amp;q1,1,/)Q%scan(&amp;amp;q1,2,/),yyq6.)),-1),yyqs.);
1345  %put &amp;amp;=q2;
Q2=2023/1

&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;Or use the YYQ() function instead of INPUTN() function.&lt;/P&gt;
&lt;PRE&gt;1346  %let q2 = %sysfunc(intnx(qtr,%sysfunc(yyq(%scan(&amp;amp;q1,1,/),%scan(&amp;amp;q1,2,/))),-1),yyqs.);
1347  %put &amp;amp;=q2;
Q2=2023/1

&lt;/PRE&gt;</description>
      <pubDate>Thu, 10 Aug 2023 18:23:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888834#M351137</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2023-08-10T18:23:58Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Macro Format YYYY/Q (-1 Previous Quarter)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888839#M351142</link>
      <description>&lt;P&gt;Thanks Tom...&lt;/P&gt;
&lt;P&gt;Just what I was looking for...&lt;/P&gt;
&lt;P&gt;Appreciate it...&lt;/P&gt;
&lt;P&gt;J&lt;/P&gt;</description>
      <pubDate>Thu, 10 Aug 2023 18:36:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888839#M351142</guid>
      <dc:creator>JayS</dc:creator>
      <dc:date>2023-08-10T18:36:07Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Macro Format YYYY/Q (-1 Previous Quarter)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888840#M351143</link>
      <description>&lt;P&gt;You do not need a DATA _NULL_ step to execute macro statements, you can safely omit that..&lt;/P&gt;</description>
      <pubDate>Thu, 10 Aug 2023 18:37:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Macro-Format-YYYY-Q-1-Previous-Quarter/m-p/888840#M351143</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2023-08-10T18:37:45Z</dc:date>
    </item>
  </channel>
</rss>

