<?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: Change Incremented Value in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519215#M140590</link>
    <description>&lt;P&gt;Hi....I made the changes to the TermCalendarUID as there were errors. I think I was missing a few statements for TermCalendarUID before the output statement. I included the variables such as Programs to see whether or not they are carrying over as the same in the new records.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Have;
    length StudentUID 8 Programs $ 22 EnrollmentStatus $ 16 RegisterStatus $ 12 TermCalendarID $ 10 StartDate 8 CompletionDate 8 ;
    input StudentUID : BEST32. Programs : $CHAR22. EnrollmentStatus : $CHAR16. RegisterStatus : $CHAR12. TermCalendarID : $CHAR15. StartDate :yymmdd10. CompletionDate : yymmdd10. ;
	format StartDate yymmdd10. CompletionDate  yymmdd10. ;
datalines;
785 CulinaryArts PostSecondary PostSec 15-16 2015-09-10 2016-06-17
2774 Autobody PostSecondary PostSec 15-16 2015-09-10 2017-06-15
10543 CulinaryArts PostSecondary PostSec 13-14 2013-07-02 2015-06-20
11609 Carpentry PostSecondary PostSec 13-14 2013-07-02 2014-06-20
12064 Hairstyling PostSecondary PostSec 15-16 2016-02-01 2017-06-17
12065 Automotive PostSecondary PostSec 15-16 2016-02-01 2019-06-22
13687 CulinaryArts PostSecondary PostSec 13-14 2013-09-05 2016-06-20
13855 Automotive PostSecondary PostSec 14-15 2015-02-03 2015-06-19
15258 Autobody Secondary PTSD 13-14 2013-07-02 2019-06-20
;
run;

data Want;
	set Have;
	_CompletionDate=CompletionDate;
	_k=year(_CompletionDate)-year(startdate);
		if _k=1 then do;
			if StartDate&amp;lt;mdy(6,30,year(StartDate)) then do;
				CompletionDate=mdy(6,30,year(StartDate));
				TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.),2.),put(input(substr(TermCalendarID,4,2),8.),2.));
			output;
				TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.)+1,2.),put(input(substr(TermCalendarID,4,2),8.)+1,2.));
				StartDate=CompletionDate+1;
				CompletionDate=_CompletionDate;
			output;
			end;
			else output;
		end;
		else if _k&amp;gt;1 then do;
			do n=year(StartDate) to year(_CompletionDate)-1;
				if n=year(StartDate) then do;
					if StartDate&amp;lt;mdy(6,30,n) then do;
						CompletionDate=mdy(6,30,n);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.),2.),put(input(substr(TermCalendarID,4,2),8.),2.));
					output;
						StartDate=CompletionDate+1;
						CompletionDate=mdy(6,30,n+1);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
					output;
					end;
				else do; 
						CompletionDate=mdy(6,30,n+1);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.),2.),put(input(substr(TermCalendarID,4,2),8.),2.));
					output;
					end;
				end;
				else if year(StartDate)&amp;lt;n&amp;lt;year(_CompletionDate)-1 then do;
					startdate=mdy(7,1,n);
					CompletionDate=mdy(6,30,n+1);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
				output;
				end;
				else if n=year(_CompletionDate)-1 then do;
					startdate=mdy(7,1,n);
					CompletionDate=_CompletionDate;
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
				output;
				end;
			end;
		end;
	else output;
drop n _:;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Thu, 06 Dec 2018 16:59:45 GMT</pubDate>
    <dc:creator>twildone</dc:creator>
    <dc:date>2018-12-06T16:59:45Z</dc:date>
    <item>
      <title>Re: Change Incremented Value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519156#M140572</link>
      <description>&lt;P&gt;Hi....I am trying to create separate records for each StudentUID based on whether the CompletionDate overlaps consecutive academic years.&amp;nbsp;The new records seem to be created&amp;nbsp;fine but when it comes to&amp;nbsp;changing the TermCalendarID &amp;nbsp;it doesn't seem to work in all cases as for StudentUID=12064. I wonder if anyone can help....Thanks.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Have;
    length StudentUID 8 Programs $ 22 EnrollmentStatus $ 16 RegisterStatus $ 12 TermCalendarID $ 10 StartDate 8 CompletionDate 8 ;
    input StudentUID : BEST32. Programs : $CHAR22. EnrollmentStatus : $CHAR16. RegisterStatus : $CHAR12. TermCalendarID : $CHAR15. StartDate :yymmdd10. CompletionDate : yymmdd10. ;
	format StartDate yymmdd10. CompletionDate  yymmdd10. ;
datalines;
785 CulinaryArts PostSecondary PostSec 15-16 2015-09-10 2016-06-17
2774 Autobody PostSecondary PostSec 15-16 2015-09-10 2017-06-15
10543 CulinaryArts PostSecondary PostSec 13-14 2013-07-02 2015-06-20
11609 Carpentry PostSecondary PostSec 13-14 2013-07-02 2014-06-20
12064 Hairstyling PostSecondary PostSec 16-17 2016-02-01 2017-06-17
12065 Automotive PostSecondary PostSec 16-17 2016-02-01 2019-06-22
13687 CulinaryArts PostSecondary PostSec 13-14 2013-09-05 2016-06-20
13855 Automotive PostSecondary PostSec 15-16 2015-02-03 2015-06-19
15258 Autobody Secondary PTSD 13-14 2013-07-02 2019-06-20
;
run;

data Want;
	set Have;
	_CompletionDate=CompletionDate;
	_k=year(_CompletionDate)-year(startdate);
		if _k=1 then do;
			if StartDate&amp;lt;mdy(6,30,year(StartDate)) then do;
				CompletionDate=mdy(6,30,year(StartDate));
			output;
				StartDate=CompletionDate+1;
				CompletionDate=_CompletionDate;
			output;
			end;
			else output;
		end;
		else if _k&amp;gt;1 then do;
			do n=year(StartDate) to year(_CompletionDate)-1;
				if n=year(StartDate) then do;
					if StartDate&amp;lt;mdy(6,30,n) then do;
						CompletionDate=mdy(6,30,n);
					output;
						TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
						StartDate=CompletionDate+1;
						CompletionDate=mdy(6,30,n+1);
					output;
					end;
				else do; 
						CompletionDate=mdy(6,30,n+1);
					output;
					end;
				end;
				else if year(StartDate)&amp;lt;n&amp;lt;year(_CompletionDate)-1 then do;
					startdate=mdy(7,1,n);
					CompletionDate=mdy(6,30,n+1);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
				output;
				end;
		else if n=year(_CompletionDate)-1 then do;
			startdate=mdy(7,1,n);CompletionDate=_CompletionDate;
			TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
		output;
		end;
	end;
end;
else output;
drop n _:;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Results:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="664"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="78"&gt;StudentUID&lt;/TD&gt;
&lt;TD width="83"&gt;Programs&lt;/TD&gt;
&lt;TD width="115"&gt;EnrollmentStatus&lt;/TD&gt;
&lt;TD width="97"&gt;RegisterStatus&lt;/TD&gt;
&lt;TD width="108"&gt;TermCalendarID&lt;/TD&gt;
&lt;TD width="73"&gt;StartDate&lt;/TD&gt;
&lt;TD width="110"&gt;CompletionDate&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;785&lt;/TD&gt;
&lt;TD&gt;CulinaryArts&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;15-16&lt;/TD&gt;
&lt;TD&gt;2015-09-10&lt;/TD&gt;
&lt;TD&gt;2016-06-17&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2774&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;15-16&lt;/TD&gt;
&lt;TD&gt;2015-09-10&lt;/TD&gt;
&lt;TD&gt;2016-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2774&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;16-17&lt;/TD&gt;
&lt;TD&gt;2016-07-01&lt;/TD&gt;
&lt;TD&gt;2017-06-15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10543&lt;/TD&gt;
&lt;TD&gt;CulinaryArts&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;13-14&lt;/TD&gt;
&lt;TD&gt;2013-07-02&lt;/TD&gt;
&lt;TD&gt;2014-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10543&lt;/TD&gt;
&lt;TD&gt;CulinaryArts&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;14-15&lt;/TD&gt;
&lt;TD&gt;2014-07-01&lt;/TD&gt;
&lt;TD&gt;2015-06-20&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;11609&lt;/TD&gt;
&lt;TD&gt;Carpentry&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;13-14&lt;/TD&gt;
&lt;TD&gt;2013-07-02&lt;/TD&gt;
&lt;TD&gt;2014-06-20&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12064&lt;/TD&gt;
&lt;TD&gt;Hairstyling&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;16-17&lt;/TD&gt;
&lt;TD&gt;2016-02-01&lt;/TD&gt;
&lt;TD&gt;2016-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12064&lt;/TD&gt;
&lt;TD&gt;Hairstyling&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;16-17&lt;/TD&gt;
&lt;TD&gt;2016-07-01&lt;/TD&gt;
&lt;TD&gt;2017-06-17&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12065&lt;/TD&gt;
&lt;TD&gt;Automotive&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;16-17&lt;/TD&gt;
&lt;TD&gt;2016-02-01&lt;/TD&gt;
&lt;TD&gt;2016-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12065&lt;/TD&gt;
&lt;TD&gt;Automotive&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;17-18&lt;/TD&gt;
&lt;TD&gt;2016-07-01&lt;/TD&gt;
&lt;TD&gt;2017-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12065&lt;/TD&gt;
&lt;TD&gt;Automotive&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;18-19&lt;/TD&gt;
&lt;TD&gt;2017-07-01&lt;/TD&gt;
&lt;TD&gt;2018-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12065&lt;/TD&gt;
&lt;TD&gt;Automotive&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;19-20&lt;/TD&gt;
&lt;TD&gt;2018-07-01&lt;/TD&gt;
&lt;TD&gt;2019-06-22&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;13687&lt;/TD&gt;
&lt;TD&gt;CulinaryArts&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;13-14&lt;/TD&gt;
&lt;TD&gt;2013-09-05&lt;/TD&gt;
&lt;TD&gt;2014-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;13687&lt;/TD&gt;
&lt;TD&gt;CulinaryArts&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;14-15&lt;/TD&gt;
&lt;TD&gt;2014-07-01&lt;/TD&gt;
&lt;TD&gt;2015-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;13687&lt;/TD&gt;
&lt;TD&gt;CulinaryArts&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;15-16&lt;/TD&gt;
&lt;TD&gt;2015-07-01&lt;/TD&gt;
&lt;TD&gt;2016-06-20&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;13855&lt;/TD&gt;
&lt;TD&gt;Automotive&lt;/TD&gt;
&lt;TD&gt;PostSecondary&lt;/TD&gt;
&lt;TD&gt;PostSec&lt;/TD&gt;
&lt;TD&gt;15-16&lt;/TD&gt;
&lt;TD&gt;2015-02-03&lt;/TD&gt;
&lt;TD&gt;2015-06-19&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;15258&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;Secondary&lt;/TD&gt;
&lt;TD&gt;PTSD&lt;/TD&gt;
&lt;TD&gt;13-14&lt;/TD&gt;
&lt;TD&gt;2013-07-02&lt;/TD&gt;
&lt;TD&gt;2014-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;15258&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;Secondary&lt;/TD&gt;
&lt;TD&gt;PTSD&lt;/TD&gt;
&lt;TD&gt;14-15&lt;/TD&gt;
&lt;TD&gt;2014-07-01&lt;/TD&gt;
&lt;TD&gt;2015-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;15258&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;Secondary&lt;/TD&gt;
&lt;TD&gt;PTSD&lt;/TD&gt;
&lt;TD&gt;15-16&lt;/TD&gt;
&lt;TD&gt;2015-07-01&lt;/TD&gt;
&lt;TD&gt;2016-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;15258&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;Secondary&lt;/TD&gt;
&lt;TD&gt;PTSD&lt;/TD&gt;
&lt;TD&gt;16-17&lt;/TD&gt;
&lt;TD&gt;2016-07-01&lt;/TD&gt;
&lt;TD&gt;2017-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;15258&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;Secondary&lt;/TD&gt;
&lt;TD&gt;PTSD&lt;/TD&gt;
&lt;TD&gt;17-18&lt;/TD&gt;
&lt;TD&gt;2017-07-01&lt;/TD&gt;
&lt;TD&gt;2018-06-30&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;15258&lt;/TD&gt;
&lt;TD&gt;Autobody&lt;/TD&gt;
&lt;TD&gt;Secondary&lt;/TD&gt;
&lt;TD&gt;PTSD&lt;/TD&gt;
&lt;TD&gt;18-19&lt;/TD&gt;
&lt;TD&gt;2018-07-01&lt;/TD&gt;
&lt;TD&gt;2019-06-20&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
      <pubDate>Thu, 06 Dec 2018 15:23:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519156#M140572</guid>
      <dc:creator>twildone</dc:creator>
      <dc:date>2018-12-06T15:23:51Z</dc:date>
    </item>
    <item>
      <title>Re: Change Incremented Value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519194#M140577</link>
      <description>&lt;P&gt;&amp;nbsp;In the sample output you provided&amp;nbsp;&lt;SPAN&gt;StudentUID=12064 seems to give you 2 lines of output , I guess that is what is expected. You said that changing the&amp;nbsp;TermCalendarID&amp;nbsp; &amp;nbsp;is affecting the output.&amp;nbsp; Can you simulate the input data for that scenario please.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 06 Dec 2018 16:07:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519194#M140577</guid>
      <dc:creator>r_behata</dc:creator>
      <dc:date>2018-12-06T16:07:12Z</dc:date>
    </item>
    <item>
      <title>Re: Change Incremented Value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519208#M140585</link>
      <description>&lt;P&gt;And what should the ideal output look like?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hint: for example data only include a minimum number of variables needed to illustrate the issue about the question you have.&lt;/P&gt;
&lt;P&gt;For example how do the variable Programs, EnrollmentStatus and RegistrationStatus&amp;nbsp;affect the outcome? I don't see them used in any calculation. So they, for this purpose, only serve to take up screen space. Fewer variables will also simplify example desired results.&lt;/P&gt;</description>
      <pubDate>Thu, 06 Dec 2018 16:43:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519208#M140585</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2018-12-06T16:43:45Z</dc:date>
    </item>
    <item>
      <title>Re: Change Incremented Value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519215#M140590</link>
      <description>&lt;P&gt;Hi....I made the changes to the TermCalendarUID as there were errors. I think I was missing a few statements for TermCalendarUID before the output statement. I included the variables such as Programs to see whether or not they are carrying over as the same in the new records.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Have;
    length StudentUID 8 Programs $ 22 EnrollmentStatus $ 16 RegisterStatus $ 12 TermCalendarID $ 10 StartDate 8 CompletionDate 8 ;
    input StudentUID : BEST32. Programs : $CHAR22. EnrollmentStatus : $CHAR16. RegisterStatus : $CHAR12. TermCalendarID : $CHAR15. StartDate :yymmdd10. CompletionDate : yymmdd10. ;
	format StartDate yymmdd10. CompletionDate  yymmdd10. ;
datalines;
785 CulinaryArts PostSecondary PostSec 15-16 2015-09-10 2016-06-17
2774 Autobody PostSecondary PostSec 15-16 2015-09-10 2017-06-15
10543 CulinaryArts PostSecondary PostSec 13-14 2013-07-02 2015-06-20
11609 Carpentry PostSecondary PostSec 13-14 2013-07-02 2014-06-20
12064 Hairstyling PostSecondary PostSec 15-16 2016-02-01 2017-06-17
12065 Automotive PostSecondary PostSec 15-16 2016-02-01 2019-06-22
13687 CulinaryArts PostSecondary PostSec 13-14 2013-09-05 2016-06-20
13855 Automotive PostSecondary PostSec 14-15 2015-02-03 2015-06-19
15258 Autobody Secondary PTSD 13-14 2013-07-02 2019-06-20
;
run;

data Want;
	set Have;
	_CompletionDate=CompletionDate;
	_k=year(_CompletionDate)-year(startdate);
		if _k=1 then do;
			if StartDate&amp;lt;mdy(6,30,year(StartDate)) then do;
				CompletionDate=mdy(6,30,year(StartDate));
				TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.),2.),put(input(substr(TermCalendarID,4,2),8.),2.));
			output;
				TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.)+1,2.),put(input(substr(TermCalendarID,4,2),8.)+1,2.));
				StartDate=CompletionDate+1;
				CompletionDate=_CompletionDate;
			output;
			end;
			else output;
		end;
		else if _k&amp;gt;1 then do;
			do n=year(StartDate) to year(_CompletionDate)-1;
				if n=year(StartDate) then do;
					if StartDate&amp;lt;mdy(6,30,n) then do;
						CompletionDate=mdy(6,30,n);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.),2.),put(input(substr(TermCalendarID,4,2),8.),2.));
					output;
						StartDate=CompletionDate+1;
						CompletionDate=mdy(6,30,n+1);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
					output;
					end;
				else do; 
						CompletionDate=mdy(6,30,n+1);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.),2.),put(input(substr(TermCalendarID,4,2),8.),2.));
					output;
					end;
				end;
				else if year(StartDate)&amp;lt;n&amp;lt;year(_CompletionDate)-1 then do;
					startdate=mdy(7,1,n);
					CompletionDate=mdy(6,30,n+1);
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
				output;
				end;
				else if n=year(_CompletionDate)-1 then do;
					startdate=mdy(7,1,n);
					CompletionDate=_CompletionDate;
					TermCalendarID = catx('-',put(input(substr(TermCalendarID,1,2),8.) + 1,2.),put(input(substr(TermCalendarID,4,2),8.) + 1,2.));
				output;
				end;
			end;
		end;
	else output;
drop n _:;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 06 Dec 2018 16:59:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Re-Change-Incremented-Value/m-p/519215#M140590</guid>
      <dc:creator>twildone</dc:creator>
      <dc:date>2018-12-06T16:59:45Z</dc:date>
    </item>
  </channel>
</rss>

