<?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: Issues with the YEARCUTOFF or with Format in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630109#M186486</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/315437"&gt;@Vassy&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Hi Fellas,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sorry in advance if my question was already discussed here or it is not for this section.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;System I am running my jobs: z/OS&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am new with SAS programming (more like a NOOB) but am trying to catch up, so thank you for your effort and thoughts in advance.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Issue:&lt;/P&gt;
&lt;P&gt;Last two months I have&amp;nbsp;data integrity issues. The data for JAN20 and FEB20 is treated as older them JAN2018 (data is stored only for the last two year).&lt;/P&gt;
&lt;P&gt;==============&lt;/P&gt;
&lt;P&gt;JAN20&lt;/P&gt;
&lt;P&gt;FEB20&lt;/P&gt;
&lt;P&gt;JAN18&lt;/P&gt;
&lt;P&gt;FEB18&lt;/P&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;P&gt;DEC19&lt;/P&gt;
&lt;P&gt;==========&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I was able to find that in SAS 9.3 and earlier, the default value of the YEARCUTOFF= option is 1920 and this is going to cause data integrity issues because any 2-digit years of "20" in dates will be assumed to be 1920 instead of 2020.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;To check my SAS version I found that I need to code this in my JCL:&amp;nbsp;PROC OPTIONS OPTION=YEARCUTOFF;&lt;/P&gt;
&lt;P&gt;Actually I was really surprised to see the result: SAS 9.4 TS1M2 and the YEARCUTOFF=1960;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So my question is, if the YEARCUTOFF is 1960 not 1920, why my data from 2020 is treated as older then 2019 and 2018?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Usually I need the data only for the previous month so I use below:&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;IF MONTHYR GT '01JAN20'D;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;but now I am collecting the data for the last 2 years. My workaround is to use LT '01JAN18'D, but this is collecting for JAN and FEB20 and I want only for February. If I try with EQ '01FEB20'D, I am not receiving the output data. I tried with:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;IF MONTHYR LT '01JAN18'D;&lt;/P&gt;
&lt;P&gt;IF MONTHYR NE '01JAN20;D; - but this is collecting the data for JAN20 and FEB20.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Last year I didn't face any issues during the transition from 2018 to 2019, so why now?&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;I would also suggest that any time you use a date literal that you use a 4 digit year for clarity. May not help with dates that have been created incorrectly when reading because of the two digit year but at least it is clearer for your intent.&lt;/P&gt;</description>
    <pubDate>Fri, 06 Mar 2020 15:44:38 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2020-03-06T15:44:38Z</dc:date>
    <item>
      <title>Issues with the YEARCUTOFF or with Format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630086#M186478</link>
      <description>&lt;P&gt;Hi Fellas,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sorry in advance if my question was already discussed here or it is not for this section.&amp;nbsp;&lt;/P&gt;&lt;P&gt;System I am running my jobs: z/OS&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am new with SAS programming (more like a NOOB) but am trying to catch up, so thank you for your effort and thoughts in advance.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Issue:&lt;/P&gt;&lt;P&gt;Last two months I have&amp;nbsp;data integrity issues. The data for JAN20 and FEB20 is treated as older them JAN2018 (data is stored only for the last two year).&lt;/P&gt;&lt;P&gt;==============&lt;/P&gt;&lt;P&gt;JAN20&lt;/P&gt;&lt;P&gt;FEB20&lt;/P&gt;&lt;P&gt;JAN18&lt;/P&gt;&lt;P&gt;FEB18&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;DEC19&lt;/P&gt;&lt;P&gt;==========&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was able to find that in SAS 9.3 and earlier, the default value of the YEARCUTOFF= option is 1920 and this is going to cause data integrity issues because any 2-digit years of "20" in dates will be assumed to be 1920 instead of 2020.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To check my SAS version I found that I need to code this in my JCL:&amp;nbsp;PROC OPTIONS OPTION=YEARCUTOFF;&lt;/P&gt;&lt;P&gt;Actually I was really surprised to see the result: SAS 9.4 TS1M2 and the YEARCUTOFF=1960;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So my question is, if the YEARCUTOFF is 1960 not 1920, why my data from 2020 is treated as older then 2019 and 2018?&amp;nbsp;&lt;/P&gt;&lt;P&gt;Usually I need the data only for the previous month so I use below:&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;IF MONTHYR GT '01JAN20'D;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;but now I am collecting the data for the last 2 years. My workaround is to use LT '01JAN18'D, but this is collecting for JAN and FEB20 and I want only for February. If I try with EQ '01FEB20'D, I am not receiving the output data. I tried with:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;IF MONTHYR LT '01JAN18'D;&lt;/P&gt;&lt;P&gt;IF MONTHYR NE '01JAN20;D; - but this is collecting the data for JAN20 and FEB20.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Last year I didn't face any issues during the transition from 2018 to 2019, so why now?&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2020 14:19:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630086#M186478</guid>
      <dc:creator>Vassy</dc:creator>
      <dc:date>2020-03-06T14:19:00Z</dc:date>
    </item>
    <item>
      <title>Re: Issues with the YEARCUTOFF or with Format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630098#M186481</link>
      <description>&lt;P&gt;Please read the documentation on the option.&amp;nbsp; It has a pretty complete explanation of how it works.&lt;/P&gt;
&lt;P&gt;&lt;A href="https://documentation.sas.com/?docsetId=lesysoptsref&amp;amp;docsetTarget=n0yt2tjgsd5dpzn16wk1m3thcd3c.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en"&gt;https://documentation.sas.com/?docsetId=lesysoptsref&amp;amp;docsetTarget=n0yt2tjgsd5dpzn16wk1m3thcd3c.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Find out where in your code or your system configuration the option is getting set to 1960.&amp;nbsp; Note that your code does not need to use the option that your system administrator has set in the configuration files. You can change the option in your code using the OPTIONS statement.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;A value of 1960 means that the range of years that SAS will use when it sees a year string value less than 100 will be from 1960 to 2059.&amp;nbsp; That would be useful if the types of dates you are using are more likely to be for the future. Such as pay off dates for 30 year mortgages. Not very useful for reading birth dates.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2020 15:05:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630098#M186481</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-03-06T15:05:45Z</dc:date>
    </item>
    <item>
      <title>Re: Issues with the YEARCUTOFF or with Format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630109#M186486</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/315437"&gt;@Vassy&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Hi Fellas,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sorry in advance if my question was already discussed here or it is not for this section.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;System I am running my jobs: z/OS&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am new with SAS programming (more like a NOOB) but am trying to catch up, so thank you for your effort and thoughts in advance.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Issue:&lt;/P&gt;
&lt;P&gt;Last two months I have&amp;nbsp;data integrity issues. The data for JAN20 and FEB20 is treated as older them JAN2018 (data is stored only for the last two year).&lt;/P&gt;
&lt;P&gt;==============&lt;/P&gt;
&lt;P&gt;JAN20&lt;/P&gt;
&lt;P&gt;FEB20&lt;/P&gt;
&lt;P&gt;JAN18&lt;/P&gt;
&lt;P&gt;FEB18&lt;/P&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;P&gt;DEC19&lt;/P&gt;
&lt;P&gt;==========&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I was able to find that in SAS 9.3 and earlier, the default value of the YEARCUTOFF= option is 1920 and this is going to cause data integrity issues because any 2-digit years of "20" in dates will be assumed to be 1920 instead of 2020.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;To check my SAS version I found that I need to code this in my JCL:&amp;nbsp;PROC OPTIONS OPTION=YEARCUTOFF;&lt;/P&gt;
&lt;P&gt;Actually I was really surprised to see the result: SAS 9.4 TS1M2 and the YEARCUTOFF=1960;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So my question is, if the YEARCUTOFF is 1960 not 1920, why my data from 2020 is treated as older then 2019 and 2018?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Usually I need the data only for the previous month so I use below:&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;IF MONTHYR GT '01JAN20'D;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;but now I am collecting the data for the last 2 years. My workaround is to use LT '01JAN18'D, but this is collecting for JAN and FEB20 and I want only for February. If I try with EQ '01FEB20'D, I am not receiving the output data. I tried with:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;IF MONTHYR LT '01JAN18'D;&lt;/P&gt;
&lt;P&gt;IF MONTHYR NE '01JAN20;D; - but this is collecting the data for JAN20 and FEB20.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Last year I didn't face any issues during the transition from 2018 to 2019, so why now?&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;I would also suggest that any time you use a date literal that you use a 4 digit year for clarity. May not help with dates that have been created incorrectly when reading because of the two digit year but at least it is clearer for your intent.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2020 15:44:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630109#M186486</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2020-03-06T15:44:38Z</dc:date>
    </item>
    <item>
      <title>Re: Issues with the YEARCUTOFF or with Format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630116#M186489</link>
      <description>&lt;P&gt;Hi Tom,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I already tried with:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;options yearcutoff=2000;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But I didn't receive the data.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a way the issue to be related with the formatting? For example every 10 years the year with 0 to be moved on the top of the list.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Not sure if this will help you. The code is looking like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;000013 OPTIONS SOURCE SOURCE2 NOMACROGEN NOSYMBOLGEN NOMLOGIC NOTES OVP&lt;BR /&gt;000014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NOERRORABEND NOCAPSOUT NOCAPS USER=WORK LABEL NODSNFERR S=72&lt;BR /&gt;000015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; S2=72 LS=132 PS=60 ;&lt;BR /&gt;000016 OPTIONS YEARCUTOFF=2000;&lt;BR /&gt;000017&lt;BR /&gt;000018 * OPTIONS FMTSEARCH=(WORK.FORMATS P1OLIB.FORMATS&lt;BR /&gt;000019&amp;nbsp; &amp;nbsp;OPTIONS FMTSEARCH=(WORK.FORMATS&lt;BR /&gt;000020&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PMUOLIB.USERFMT1 PMUOLIB.MICSFMTS PMUOLIB.USERFMT2&lt;BR /&gt;000021&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; MCOLIB.USERFMT1 MCOLIB.MICSFMTS MCOLIB.USERFMT2&lt;BR /&gt;000022&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; LIBRARY.FORMATS);&lt;BR /&gt;000023 PROC FORMAT;&lt;BR /&gt;000024&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PICTURE LARGE&lt;BR /&gt;000025&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LOW -&amp;lt; 0 = 'NEGATIVE' (NOEDIT)&lt;BR /&gt;000026&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0 - 9999 = '0,009.9 '&lt;BR /&gt;000027&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10000 - 9999999 = '0,009.9K' (MULT=.01)&lt;BR /&gt;000028&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10000000 - 9999999999 = '0,009.9M' (MULT=.00001)&lt;BR /&gt;000029&amp;nbsp; &amp;nbsp; 10000000000 - 9999999999999 = '0,009.9B' (MULT=.00000001);&lt;BR /&gt;000030 RUN;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2020 15:53:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630116#M186489</guid>
      <dc:creator>Vassy</dc:creator>
      <dc:date>2020-03-06T15:53:16Z</dc:date>
    </item>
    <item>
      <title>Re: Issues with the YEARCUTOFF or with Format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630128#M186495</link>
      <description>YEARCUTOFF=2000 means you want dates from 2000 to 2099.  Is that what you want?&lt;BR /&gt;Usually you want to set YEARCUTOFF to something like the current year minus 100 plus some small number for the number of years into the future your dates might have.&lt;BR /&gt;options yearcutoff=%eval(%sysfunc(today(),year4.)-95);&lt;BR /&gt;</description>
      <pubDate>Fri, 06 Mar 2020 16:13:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630128#M186495</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-03-06T16:13:14Z</dc:date>
    </item>
    <item>
      <title>Re: Issues with the YEARCUTOFF or with Format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630154#M186506</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/315437"&gt;@Vassy&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Hi Tom,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I already tried with:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;options yearcutoff=2000;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But I didn't receive the data.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is there a way the issue to be related with the formatting? For example every 10 years the year with 0 to be moved on the top of the list.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Not sure if this will help you. The code is looking like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;000013 OPTIONS SOURCE SOURCE2 NOMACROGEN NOSYMBOLGEN NOMLOGIC NOTES OVP&lt;BR /&gt;000014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NOERRORABEND NOCAPSOUT NOCAPS USER=WORK LABEL NODSNFERR S=72&lt;BR /&gt;000015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; S2=72 LS=132 PS=60 ;&lt;BR /&gt;000016 OPTIONS YEARCUTOFF=2000;&lt;BR /&gt;000017&lt;BR /&gt;000018 * OPTIONS FMTSEARCH=(WORK.FORMATS P1OLIB.FORMATS&lt;BR /&gt;000019&amp;nbsp; &amp;nbsp;OPTIONS FMTSEARCH=(WORK.FORMATS&lt;BR /&gt;000020&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PMUOLIB.USERFMT1 PMUOLIB.MICSFMTS PMUOLIB.USERFMT2&lt;BR /&gt;000021&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; MCOLIB.USERFMT1 MCOLIB.MICSFMTS MCOLIB.USERFMT2&lt;BR /&gt;000022&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; LIBRARY.FORMATS);&lt;BR /&gt;000023 PROC FORMAT;&lt;BR /&gt;000024&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PICTURE LARGE&lt;BR /&gt;000025&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LOW -&amp;lt; 0 = 'NEGATIVE' (NOEDIT)&lt;BR /&gt;000026&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0 - 9999 = '0,009.9 '&lt;BR /&gt;000027&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10000 - 9999999 = '0,009.9K' (MULT=.01)&lt;BR /&gt;000028&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10000000 - 9999999999 = '0,009.9M' (MULT=.00001)&lt;BR /&gt;000029&amp;nbsp; &amp;nbsp; 10000000000 - 9999999999999 = '0,009.9B' (MULT=.00000001);&lt;BR /&gt;000030 RUN;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The YEARCUTOFF really only comes into play when creating a value that uses a two digit year. Once the value has been set for a data set variable that value stays the same. You do not show any code creating values so it is kind of hard to say what is or isn't happening.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Likely you need to share some actual data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;Is there a way the issue to be related with the formatting? For example every 10 years the year with 0 to be moved on the top of the list.&amp;nbsp;&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;This doesn't make any sense without some actual data and likely a lot of description.&lt;/P&gt;
&lt;P&gt;You may want to use the word "layout" or "structure" relating the way a data set appears. "Format" in SAS is going to be interpreted as a format used to display values of a variable.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps this code may provide some help understanding the behavior. It shows what happens to the value of a variable created with a 2-digit year with different options for Yearcutoff. Then shows what displaying the value created with a different Yearcutoff looks like when you change the option value. Suggest that you reset the Yearcutoff after the example code.&lt;/P&gt;
&lt;PRE&gt;options yearcutoff=2000;
data junk;
   file print;
   put 'Example with yearcutoff=2000';
   x='01JAN2018'd;
   y='01Jan40'd;
   put x= x=date9. y= y=date9.;
run;

options yearcutoff=1920;
data _null_;
   file print;
   put 'Example with yearcutoff=1920';
   x='01JAN2018'd;
   y='01Jan40'd;
   put x= x=date9. y= y=date9.;
run;

options yearcutoff=1960;
data _null_;
   file print;
   put 'Example with yearcutoff=1960';
   x='01JAN2018'd;
   y='01Jan40'd;
   put x= x=date9. y= y=date9.;
run;
options yearcutoff=1820;
data _null_;
   file print;
   put 'Example with yearcutoff=1820';
   x='01JAN2018'd;
   y='01Jan40'd;
   put x= x=date9. y= y=date9.;
run;

proc print data=junk;
title "Values of the variables created with Yearcutoff=2000";
title2 "Displayed when Yearcutoff=1820";
format x y date9.;
run;  title;

&lt;/PRE&gt;</description>
      <pubDate>Fri, 06 Mar 2020 16:50:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Issues-with-the-YEARCUTOFF-or-with-Format/m-p/630154#M186506</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2020-03-06T16:50:59Z</dc:date>
    </item>
  </channel>
</rss>

