<?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: IS0 8601 informat for duration variable in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/IS0-8601-informat-for-duration-variable/m-p/830285#M328071</link>
    <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/430963"&gt;@smackerz1988&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If only "Y" and possibly "M" (but not "D") occur in your SUDUR values, it should be correct to round Y to 1/12 years (rather than 0.01).&lt;/P&gt;
&lt;PRE&gt;&lt;FONT size="4"&gt;Y=round(D/365.25, &lt;FONT color="#3366FF"&gt;&lt;STRONG&gt;1/12&lt;/STRONG&gt;&lt;/FONT&gt;);&lt;/FONT&gt;&lt;/PRE&gt;
&lt;P&gt;Note that "1 year, 6 months" are 1.5 years, not 1.6.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;BTW, thanks for reminding me of the&amp;nbsp;CALL IS8601_CONVERT routine. I had used it in 2012, but then almost forgot about it.&lt;/FONT&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 25 Aug 2022 13:14:13 GMT</pubDate>
    <dc:creator>FreelanceReinh</dc:creator>
    <dc:date>2022-08-25T13:14:13Z</dc:date>
    <item>
      <title>IS0 8601 informat for duration variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/IS0-8601-informat-for-duration-variable/m-p/830258#M328059</link>
      <description>&lt;P&gt;I have a specification for the variable ADURN&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="smackerz1988_0-1661423065979.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/74675i03FD3B5A99268CBB/image-size/medium?v=v2&amp;amp;px=400" role="button" title="smackerz1988_0-1661423065979.png" alt="smackerz1988_0-1661423065979.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the example of the data from SUDUR and the desired output for ADURN&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;SUDUR&lt;/TD&gt;&lt;TD&gt;ADURN&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P9Y&lt;/TD&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P46Y&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;P1Y6M&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;1.6&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3Y&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P15Y&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3Y&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P2Y&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P25Y&lt;/TD&gt;&lt;TD&gt;25&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P2Y&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P4Y&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;P7Y6M&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;7.6&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was just going to compress SUDUR with the kd modifier but if you look at the examples highlighted in red this would cause an error as they would be populated 16 and 76 instead of 1.6 and 7.6. Is there an informat that converts to&amp;nbsp;IS0 8601 or a practical way to account for months in SUDUR?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;EDIT: Okay I have found this code&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;* ADURN *;
if ~missing(sudur) then do;
CALL IS8601_CONVERT('DU', 'DU', SUDUR, endDUR);
   D=enddur/86400;
	Y=D/365.25;
	Y=round(Y, 0.01);
end;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;However the calculations for SUDUR which contains months are slightly off (please see highlighted examples below)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;SUDUR&lt;/TD&gt;&lt;TD&gt;ENDDUR&lt;/TD&gt;&lt;TD&gt;D&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P9Y&lt;/TD&gt;&lt;TD&gt;283996800&lt;/TD&gt;&lt;TD&gt;3287&lt;/TD&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P46Y&lt;/TD&gt;&lt;TD&gt;1451606400&lt;/TD&gt;&lt;TD&gt;16801&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;P1Y6M&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;47088000&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;545&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;1.49&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3Y&lt;/TD&gt;&lt;TD&gt;94608000&lt;/TD&gt;&lt;TD&gt;1095&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P15Y&lt;/TD&gt;&lt;TD&gt;473299200&lt;/TD&gt;&lt;TD&gt;5478&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P8Y&lt;/TD&gt;&lt;TD&gt;252460800&lt;/TD&gt;&lt;TD&gt;2922&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P23Y&lt;/TD&gt;&lt;TD&gt;725760000&lt;/TD&gt;&lt;TD&gt;8400&lt;/TD&gt;&lt;TD&gt;23&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P50Y&lt;/TD&gt;&lt;TD&gt;1577836800&lt;/TD&gt;&lt;TD&gt;18262&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P20Y&lt;/TD&gt;&lt;TD&gt;631152000&lt;/TD&gt;&lt;TD&gt;7305&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P50Y&lt;/TD&gt;&lt;TD&gt;1577836800&lt;/TD&gt;&lt;TD&gt;18262&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P31Y&lt;/TD&gt;&lt;TD&gt;978220800&lt;/TD&gt;&lt;TD&gt;11322&lt;/TD&gt;&lt;TD&gt;31&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P12Y&lt;/TD&gt;&lt;TD&gt;378691200&lt;/TD&gt;&lt;TD&gt;4383&lt;/TD&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P15Y&lt;/TD&gt;&lt;TD&gt;473299200&lt;/TD&gt;&lt;TD&gt;5478&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P20Y&lt;/TD&gt;&lt;TD&gt;631152000&lt;/TD&gt;&lt;TD&gt;7305&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P5Y&lt;/TD&gt;&lt;TD&gt;157766400&lt;/TD&gt;&lt;TD&gt;1826&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P2Y&lt;/TD&gt;&lt;TD&gt;63072000&lt;/TD&gt;&lt;TD&gt;730&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P5Y&lt;/TD&gt;&lt;TD&gt;157766400&lt;/TD&gt;&lt;TD&gt;1826&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P40Y&lt;/TD&gt;&lt;TD&gt;1262304000&lt;/TD&gt;&lt;TD&gt;14610&lt;/TD&gt;&lt;TD&gt;40&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P30Y&lt;/TD&gt;&lt;TD&gt;946684800&lt;/TD&gt;&lt;TD&gt;10957&lt;/TD&gt;&lt;TD&gt;30&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P1Y&lt;/TD&gt;&lt;TD&gt;31536000&lt;/TD&gt;&lt;TD&gt;365&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P1Y&lt;/TD&gt;&lt;TD&gt;31536000&lt;/TD&gt;&lt;TD&gt;365&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P12Y&lt;/TD&gt;&lt;TD&gt;378691200&lt;/TD&gt;&lt;TD&gt;4383&lt;/TD&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P26Y&lt;/TD&gt;&lt;TD&gt;820454400&lt;/TD&gt;&lt;TD&gt;9496&lt;/TD&gt;&lt;TD&gt;26&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P28Y&lt;/TD&gt;&lt;TD&gt;883612800&lt;/TD&gt;&lt;TD&gt;10227&lt;/TD&gt;&lt;TD&gt;28&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P39Y&lt;/TD&gt;&lt;TD&gt;1230681600&lt;/TD&gt;&lt;TD&gt;14244&lt;/TD&gt;&lt;TD&gt;39&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P5Y&lt;/TD&gt;&lt;TD&gt;157766400&lt;/TD&gt;&lt;TD&gt;1826&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P4Y&lt;/TD&gt;&lt;TD&gt;126230400&lt;/TD&gt;&lt;TD&gt;1461&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P17Y&lt;/TD&gt;&lt;TD&gt;536457600&lt;/TD&gt;&lt;TD&gt;6209&lt;/TD&gt;&lt;TD&gt;17&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P20Y&lt;/TD&gt;&lt;TD&gt;631152000&lt;/TD&gt;&lt;TD&gt;7305&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P15Y&lt;/TD&gt;&lt;TD&gt;473299200&lt;/TD&gt;&lt;TD&gt;5478&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P22Y&lt;/TD&gt;&lt;TD&gt;694224000&lt;/TD&gt;&lt;TD&gt;8035&lt;/TD&gt;&lt;TD&gt;22&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P23Y&lt;/TD&gt;&lt;TD&gt;725760000&lt;/TD&gt;&lt;TD&gt;8400&lt;/TD&gt;&lt;TD&gt;23&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P18Y&lt;/TD&gt;&lt;TD&gt;567993600&lt;/TD&gt;&lt;TD&gt;6574&lt;/TD&gt;&lt;TD&gt;18&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3Y&lt;/TD&gt;&lt;TD&gt;94608000&lt;/TD&gt;&lt;TD&gt;1095&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P10Y&lt;/TD&gt;&lt;TD&gt;315532800&lt;/TD&gt;&lt;TD&gt;3652&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P5Y&lt;/TD&gt;&lt;TD&gt;157766400&lt;/TD&gt;&lt;TD&gt;1826&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P8Y&lt;/TD&gt;&lt;TD&gt;252460800&lt;/TD&gt;&lt;TD&gt;2922&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3Y&lt;/TD&gt;&lt;TD&gt;94608000&lt;/TD&gt;&lt;TD&gt;1095&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P2Y&lt;/TD&gt;&lt;TD&gt;63072000&lt;/TD&gt;&lt;TD&gt;730&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P25Y&lt;/TD&gt;&lt;TD&gt;788918400&lt;/TD&gt;&lt;TD&gt;9131&lt;/TD&gt;&lt;TD&gt;25&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P2Y&lt;/TD&gt;&lt;TD&gt;63072000&lt;/TD&gt;&lt;TD&gt;730&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P4Y&lt;/TD&gt;&lt;TD&gt;126230400&lt;/TD&gt;&lt;TD&gt;1461&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;P7Y6M&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;236390400&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;2736&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;7.49&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 25 Aug 2022 12:38:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/IS0-8601-informat-for-duration-variable/m-p/830258#M328059</guid>
      <dc:creator>smackerz1988</dc:creator>
      <dc:date>2022-08-25T12:38:16Z</dc:date>
    </item>
    <item>
      <title>Re: IS0 8601 informat for duration variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/IS0-8601-informat-for-duration-variable/m-p/830285#M328071</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/430963"&gt;@smackerz1988&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If only "Y" and possibly "M" (but not "D") occur in your SUDUR values, it should be correct to round Y to 1/12 years (rather than 0.01).&lt;/P&gt;
&lt;PRE&gt;&lt;FONT size="4"&gt;Y=round(D/365.25, &lt;FONT color="#3366FF"&gt;&lt;STRONG&gt;1/12&lt;/STRONG&gt;&lt;/FONT&gt;);&lt;/FONT&gt;&lt;/PRE&gt;
&lt;P&gt;Note that "1 year, 6 months" are 1.5 years, not 1.6.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;BTW, thanks for reminding me of the&amp;nbsp;CALL IS8601_CONVERT routine. I had used it in 2012, but then almost forgot about it.&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 25 Aug 2022 13:14:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/IS0-8601-informat-for-duration-variable/m-p/830285#M328071</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2022-08-25T13:14:13Z</dc:date>
    </item>
  </channel>
</rss>

