<?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 not processing if then statement following first conditional set of statements?? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675744#M203623</link>
    <description>&lt;P&gt;Hello SAS community,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Everyone in my dataset has an outcome date (and some people have two outcome dates). In the code below (where the line starts with "if tv_outcome=1 then do..."), SAS is not processing the statements. For those people who have two outcomes, SAS processes the statements when tv_outcome=0 and tv_outcome=1, but then doesn't process the last set of statements that begin with "if tv_outcome=2 then do...". For example, there are people who have missing date_of_event and missing second_outcome_date, but instead of calculating time_to_event as&amp;nbsp;obs_end-date_of_outcome, it just sets it to missing. So the data look something like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;id&amp;nbsp; &amp;nbsp; obs_beg&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; obs_end&amp;nbsp; &amp;nbsp; &amp;nbsp; tv_outcome&amp;nbsp; &amp;nbsp;date_of_outcome&amp;nbsp; &amp;nbsp;date_of_event&amp;nbsp; &amp;nbsp; time_to_event&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;760&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&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;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is how I need it to look:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;id&amp;nbsp; &amp;nbsp; obs_beg&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; obs_end&amp;nbsp; &amp;nbsp; &amp;nbsp; tv_outcome&amp;nbsp; &amp;nbsp;date_of_outcome&amp;nbsp; &amp;nbsp;date_of_event&amp;nbsp; &amp;nbsp; time_to_event&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;760&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1297&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Code:&lt;/P&gt;&lt;P&gt;data event_time (keep = id obs_end death_dt date_of_outcome date_of_event&lt;BR /&gt;second_outcome_date time_to_event tv_outcome event_ind);&lt;BR /&gt;set eventression;&lt;BR /&gt;format obs_end date9.;&lt;BR /&gt;obs_end = '30sep2015'd;&lt;BR /&gt;if death_dt ne . then do;&lt;BR /&gt;obs_end = death_dt;&lt;BR /&gt;end;&lt;BR /&gt;if tv_outcome=0 then do;&lt;BR /&gt;if date_of_event = . then time_to_event=date_of_outcome-obs_beg;&lt;BR /&gt;else if date_of_event ne . and date_of_event gt date_of_outcome then time_to_event=date_of_outcome-obs_beg;&lt;BR /&gt;else time_to_event=date_of_event-obs_beg;&lt;BR /&gt;event_ind=0;&lt;BR /&gt;end;&lt;BR /&gt;if tv_outcome=1 then do;&lt;BR /&gt;if date_of_event = . and second_outcome_date = . then time_to_event=obs_end-date_of_outcome;&lt;BR /&gt;else if date_of_event = . and second_outcome_date ne . then time_to_event = second_outcome_date-date_of_outcome;&lt;BR /&gt;if date_of_event ne . and date_of_event lt date_of_outcome then time_to_event=.;&lt;BR /&gt;else if date_of_event ne . and second_outcome_date ne . and date_of_event gt second_outcome_date then time_to_event=second_outcome_date-date_of_outcome;&lt;BR /&gt;else time_to_event=date_of_event-date_of_outcome;&lt;BR /&gt;event_ind=1;&lt;BR /&gt;end;&lt;BR /&gt;if tv_outcome=2 then do;&lt;BR /&gt;if date_of_event = . and second_outcome_date ne . then time_to_event=obs_end-second_outcome_date;&lt;BR /&gt;if date_of_event ne . and date_of_event lt second_outcome_date then time_to_event=.;&lt;BR /&gt;else time_to_event=date_of_event-second_outcome_date;&lt;BR /&gt;event_ind=2;&lt;BR /&gt;end;&lt;BR /&gt;*if time_to_event&amp;lt;0 then time_to_event=0; *this will be negative values;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc sort data=event_time nodupkey out=event_time2; by id tv_outcome;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help would be most appreciated!&lt;/P&gt;</description>
    <pubDate>Mon, 10 Aug 2020 20:20:48 GMT</pubDate>
    <dc:creator>silversta</dc:creator>
    <dc:date>2020-08-10T20:20:48Z</dc:date>
    <item>
      <title>SAS not processing if then statement following first conditional set of statements??</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675744#M203623</link>
      <description>&lt;P&gt;Hello SAS community,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Everyone in my dataset has an outcome date (and some people have two outcome dates). In the code below (where the line starts with "if tv_outcome=1 then do..."), SAS is not processing the statements. For those people who have two outcomes, SAS processes the statements when tv_outcome=0 and tv_outcome=1, but then doesn't process the last set of statements that begin with "if tv_outcome=2 then do...". For example, there are people who have missing date_of_event and missing second_outcome_date, but instead of calculating time_to_event as&amp;nbsp;obs_end-date_of_outcome, it just sets it to missing. So the data look something like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;id&amp;nbsp; &amp;nbsp; obs_beg&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; obs_end&amp;nbsp; &amp;nbsp; &amp;nbsp; tv_outcome&amp;nbsp; &amp;nbsp;date_of_outcome&amp;nbsp; &amp;nbsp;date_of_event&amp;nbsp; &amp;nbsp; time_to_event&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;760&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&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;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is how I need it to look:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;id&amp;nbsp; &amp;nbsp; obs_beg&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; obs_end&amp;nbsp; &amp;nbsp; &amp;nbsp; tv_outcome&amp;nbsp; &amp;nbsp;date_of_outcome&amp;nbsp; &amp;nbsp;date_of_event&amp;nbsp; &amp;nbsp; time_to_event&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;760&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;1&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1297&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Code:&lt;/P&gt;&lt;P&gt;data event_time (keep = id obs_end death_dt date_of_outcome date_of_event&lt;BR /&gt;second_outcome_date time_to_event tv_outcome event_ind);&lt;BR /&gt;set eventression;&lt;BR /&gt;format obs_end date9.;&lt;BR /&gt;obs_end = '30sep2015'd;&lt;BR /&gt;if death_dt ne . then do;&lt;BR /&gt;obs_end = death_dt;&lt;BR /&gt;end;&lt;BR /&gt;if tv_outcome=0 then do;&lt;BR /&gt;if date_of_event = . then time_to_event=date_of_outcome-obs_beg;&lt;BR /&gt;else if date_of_event ne . and date_of_event gt date_of_outcome then time_to_event=date_of_outcome-obs_beg;&lt;BR /&gt;else time_to_event=date_of_event-obs_beg;&lt;BR /&gt;event_ind=0;&lt;BR /&gt;end;&lt;BR /&gt;if tv_outcome=1 then do;&lt;BR /&gt;if date_of_event = . and second_outcome_date = . then time_to_event=obs_end-date_of_outcome;&lt;BR /&gt;else if date_of_event = . and second_outcome_date ne . then time_to_event = second_outcome_date-date_of_outcome;&lt;BR /&gt;if date_of_event ne . and date_of_event lt date_of_outcome then time_to_event=.;&lt;BR /&gt;else if date_of_event ne . and second_outcome_date ne . and date_of_event gt second_outcome_date then time_to_event=second_outcome_date-date_of_outcome;&lt;BR /&gt;else time_to_event=date_of_event-date_of_outcome;&lt;BR /&gt;event_ind=1;&lt;BR /&gt;end;&lt;BR /&gt;if tv_outcome=2 then do;&lt;BR /&gt;if date_of_event = . and second_outcome_date ne . then time_to_event=obs_end-second_outcome_date;&lt;BR /&gt;if date_of_event ne . and date_of_event lt second_outcome_date then time_to_event=.;&lt;BR /&gt;else time_to_event=date_of_event-second_outcome_date;&lt;BR /&gt;event_ind=2;&lt;BR /&gt;end;&lt;BR /&gt;*if time_to_event&amp;lt;0 then time_to_event=0; *this will be negative values;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc sort data=event_time nodupkey out=event_time2; by id tv_outcome;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help would be most appreciated!&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2020 20:20:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675744#M203623</guid>
      <dc:creator>silversta</dc:creator>
      <dc:date>2020-08-10T20:20:48Z</dc:date>
    </item>
    <item>
      <title>Re: SAS not processing if then statement following first conditional set of statements??</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675764#M203632</link>
      <description>&lt;P&gt;None of your example data have TV_OUTCOME=2.&amp;nbsp; Why would it execute those statements when none of your data match this pattern.&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2020 21:41:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675764#M203632</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-08-10T21:41:19Z</dc:date>
    </item>
    <item>
      <title>Re: SAS not processing if then statement following first conditional set of statements??</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675774#M203636</link>
      <description>&lt;P&gt;Hi Tom,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I provided a simple example to show that this doesn't execute where tv_outcome=1, I assumed I could figure it out for the other scenario once I get it to execute for the first set of statements. However, if you would like to see where the issue lies with tv_outcome=2, please see the example below.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;id&amp;nbsp; &amp;nbsp; obs_beg&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; obs_end&amp;nbsp; &amp;nbsp; &amp;nbsp; tv_outcome&amp;nbsp; &amp;nbsp;date_of_outcome&amp;nbsp; &amp;nbsp;second_outcome_date&amp;nbsp; &amp;nbsp;date_of_event&amp;nbsp; &amp;nbsp; time_to_event&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;2&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 24Mar2014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;760&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: x-small; font-family: inherit;"&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;2&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 24Mar2014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&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;/FONT&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: x-small; font-family: inherit;"&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;2&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;24Mar2014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&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;/FONT&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: x-small; font-family: inherit;"&gt;This is what I need.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;id&amp;nbsp; &amp;nbsp; obs_beg&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; obs_end&amp;nbsp; &amp;nbsp; &amp;nbsp; tv_outcome&amp;nbsp; &amp;nbsp;date_of_outcome&amp;nbsp; &amp;nbsp;second_outcome_date&amp;nbsp; &amp;nbsp;date_of_event&amp;nbsp; &amp;nbsp; time_to_event&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;2&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 24Mar2014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;760&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: x-small; font-family: inherit;"&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;2&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 24Mar2014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;711&lt;/FONT&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: x-small; font-family: inherit;"&gt;&lt;FONT size="1 2 3 4 5 6 7"&gt;2&amp;nbsp; &amp;nbsp; 14MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp;31OCT2015&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;12APR2012&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;24Mar2014&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1297&lt;/FONT&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 10 Aug 2020 22:16:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675774#M203636</guid>
      <dc:creator>silversta</dc:creator>
      <dc:date>2020-08-10T22:16:46Z</dc:date>
    </item>
    <item>
      <title>Re: SAS not processing if then statement following first conditional set of statements??</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675808#M203651</link>
      <description>&lt;P&gt;Aren't you missing some&lt;FONT color="#FF6600"&gt; else &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;data event_time (
	keep = id obs_end death_dt date_of_outcome date_of_event second_outcome_date time_to_event tv_outcome event_ind);
set eventression;
format obs_end date9.;
obs_end = '30sep2015'd;
if death_dt ne . then do;
	obs_end = death_dt;
	end;
if tv_outcome=0 then do;
	if date_of_event = . 	then 
		time_to_event=date_of_outcome-obs_beg;
	else if date_of_event ne . and date_of_event gt date_of_outcome  then 
		time_to_event=date_of_outcome-obs_beg;
	else 
		time_to_event=date_of_event-obs_beg;
	event_ind=0;
	end;
if tv_outcome=1 then do;
	if date_of_event = . and second_outcome_date = . then 
		time_to_event=obs_end-date_of_outcome;
	else if date_of_event = . and second_outcome_date ne . then 
		time_to_event = second_outcome_date-date_of_outcome;
	&lt;FONT color="#FF6600"&gt;else&lt;/FONT&gt; if date_of_event ne . and date_of_event lt date_of_outcome then 
		time_to_event=.;
	else if date_of_event ne . and second_outcome_date ne . and date_of_event gt second_outcome_date then
		time_to_event=second_outcome_date-date_of_outcome;
	else 
		time_to_event=date_of_event-date_of_outcome;
	event_ind=1;
	end;
if tv_outcome=2 then do;
	if date_of_event = . and second_outcome_date ne . then 
		time_to_event=obs_end-second_outcome_date;
	&lt;FONT color="#FF6600"&gt;else&lt;/FONT&gt; if date_of_event ne . and date_of_event lt second_outcome_date then 
		time_to_event=.;
	else 
		time_to_event=date_of_event-second_outcome_date;
	event_ind=2;
	end;
*if time_to_event&amp;lt;0 then time_to_event=0; *this will be negative values;
run;&lt;/PRE&gt;
&lt;P&gt;Without those, your second IF statement overwrites the first.&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2020 03:03:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675808#M203651</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2020-08-11T03:03:59Z</dc:date>
    </item>
    <item>
      <title>Re: SAS not processing if then statement following first conditional set of statements??</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675833#M203665</link>
      <description>&lt;P&gt;With spaghetti code like that, it is no miracle at all that you lose track of your functional blocks. Apply some visual formatting and see if it gives you a clue.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data event_time (
  keep=
    id obs_end death_dt date_of_outcome date_of_event
    second_outcome_date time_to_event tv_outcome event_ind
);
set eventression;
format obs_end date9.;
obs_end = '30sep2015'd;
if death_dt ne .
then do;
  obs_end = death_dt;
end;
if tv_outcome = 0
then do;
  if date_of_event = .
  then time_to_event = date_of_outcome - obs_beg;
  else if date_of_event ne . and date_of_event gt date_of_outcome
  then time_to_event = date_of_outcome - obs_beg;
  else time_to_event = date_of_event - obs_beg;
  event_ind = 0;
end;
if tv_outcome = 1
then do;
  if date_of_event = . and second_outcome_date = .
  then time_to_event = obs_end - date_of_outcome;
  else if date_of_event = . and second_outcome_date ne .
  then time_to_event = second_outcome_date - date_of_outcome;
  if date_of_event ne . and date_of_event lt date_of_outcome
  then time_to_event = .;
  else if
    date_of_event ne . and second_outcome_date ne . and
    date_of_event gt second_outcome_date
  then time_to_event = second_outcome_date - date_of_outcome;
  else time_to_event = date_of_event - date_of_outcome;
  event_ind = 1;
end;
if tv_outcome = 2
then do;
  if date_of_event = . and second_outcome_date ne .
  then time_to_event = obs_end - second_outcome_date;
  if date_of_event ne . and date_of_event lt second_outcome_date
  then time_to_event = .;
  else time_to_event = date_of_event - second_outcome_date;
  event_ind = 2;
end;
*if time_to_event &amp;lt; 0 then time_to_event = 0; *this will be negative values;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 11 Aug 2020 07:18:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-not-processing-if-then-statement-following-first-conditional/m-p/675833#M203665</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2020-08-11T07:18:53Z</dc:date>
    </item>
  </channel>
</rss>

