Hi Everyone,
I have a function that almost works.
The problem I am running into is the else statement at line 79 (the last else statement) is being ignored.
The values are :
wilog01 = {11/05/2012 02:31}
delivery_time = {11/04/2012 21:33}
ptchoice = "P"
I think I have stepped through this about 100 times, but have not been able to determine why the else statement is being ignored.
In an effort to make things easier to follow, I put the code into a color coded spreadsheet (http://www.wisux.com/ifthenelse.xls).
The important lines are the ones in purple.
Any help would be greatly appreciated.
Gregg
I have a function that almost works.
The problem I am running into is the else statement at line 79 (the last else statement) is being ignored.
The values are :
wilog01 = {11/05/2012 02:31}
delivery_time = {11/04/2012 21:33}
ptchoice = "P"
I think I have stepped through this about 100 times, but have not been able to determine why the else statement is being ignored.
In an effort to make things easier to follow, I put the code into a color coded spreadsheet (http://www.wisux.com/ifthenelse.xls).
The important lines are the ones in purple.
Any help would be greatly appreciated.
Gregg
Code:
'Date Created: 22-Sep-2012 02:34:48 PM 'Last Updated: 23-Sep-2012 12:36:29 AM 'Created By : me 'Updated By : me FUNCTION auth_dltimechange AS C (tc AS P ) debug(1) if tc.datasubmitted.wilog01 <>"" .or. tc.datasubmitted.wilog02 <> "" then unsure = utccreate(tc.datasubmitted.delivery_time,val(tc.datasubmitted.delivery_offset),tc.datasubmitted.delivery_dst) if unsure = convert_type(tc.datasubmitted.wilog01,"T") then end end if tc._setElement.tattle.value ="<br>Old time was " + timez("MM/dd/yyyy 0h:0m",utcreverse(tc.datasubmitted.wilog01,val(tc.datasubmitted.delivery_offset),tc.datasubmitted.delivery_dst)) ' tc._setElement.tattle.value = tc._setElement.tattle.value + "<br>This is test line 1." ' tc._setElement.tattle.value = tc._setElement.tattle.value + "<br>This is test line 2" ' This section adjusts the Pickup Time to match the new earlier Delivery Time if unsure < convert_type(tc.datasubmitted.wilog01,"T") .and. tc.datasubmitted.ptchoice = "D" then tc._set.wilog01.value = timez("MM/dd/yyyy 0h:0m",unsure) tc._set.wilog02.value = timez("MM/dd/yyyy 0h:0m",unsure - val(tc.datasubmitted.scheduled_drivetime)) tc._set.pickup_time.value = time("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog02.value,val(tc.datasubmitted.pickup_offset),tc.datasubmitted.pickup_dst)) tc._set.showpzone.value = if(isutcdaylight(convert_type(tc._set.wilog02.value,"T"),val(tc.datasubmitted.pickup_offset)).and. tc.datasubmitted.pickup_dst="Y",left(tc.datasubmitted.pickup_tz,1)+"DT",tc.datasubmitted.pickup_tz) tc._set.showdzone.value = if(isutcdaylight(convert_type(tc._set.wilog01.value,"T"),val(tc.datasubmitted.delivery_offset)).and. tc.datasubmitted.delivery_dst="Y",left(tc.datasubmitted.delivery_tz,1)+"DT",tc.datasubmitted.delivery_tz) tc._setElement.PUFRAME.value = "Pickup" tc._setElement.DELFRAME.value = "Delivery" if isutcdaylight(convert_type(tc._set.wilog02.value,"T"),-6) .and. tc.datasubmitted.pickup_tz+tc.datasubmitted.pickup_dst <> "CSTY" then tc._setElement.PUFRAME.value = "Pickup : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog02.value,-6,"Y"))+" CDT" elseif .not. isutcdaylight(convert_type(tc._set.wilog02.value,"T"),-6) .and. tc.datasubmitted.pickup_tz <> "CST" then tc._setElement.PUFRAME.value = "Pickup : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog02.value,-6,"Y"))+" CST" end if if isutcdaylight(convert_type(tc._set.wilog01.value,"T"),-6) .and. tc.datasubmitted.delivery_tz+tc.datasubmitted.delivery_dst <> "CSTY" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog01.value,-6,"Y"))+" CDT" elseif .not. isutcdaylight(convert_type(tc._set.wilog01.value,"T"),-6) .and. tc.datasubmitted.delivery_tz <> "CST" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog01.value,-6,"Y"))+" CST" end if ' This section adjusts the Pickup Time to match the new later Delivery Time elseif unsure > convert_type(tc.datasubmitted.wilog01,"T") .and. tc.datasubmitted.ptchoice = "D" then tc._set.wilog01.value = timez("MM/dd/yyyy 0h:0m",unsure) tc._set.wilog02.value = timez("MM/dd/yyyy 0h:0m",unsure - val(tc.datasubmitted.scheduled_drivetime)) ' tc._set.wilog01.value = convert_type(unsure,"C") ' tc._set.wilog02.value = convert_type(unsure - val(tc.datasubmitted.scheduled_drivetime),"C") tc._set.pickup_time.value = time("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog02.value,val(tc.datasubmitted.pickup_offset),tc.datasubmitted.pickup_dst)) tc._set.showpzone.value = if(isutcdaylight(convert_type(tc._set.wilog02.value,"T"),val(tc.datasubmitted.pickup_offset)).and. tc.datasubmitted.pickup_dst="Y",left(tc.datasubmitted.pickup_tz,1)+"DT",tc.datasubmitted.pickup_tz) tc._setElement.PUFRAME.value = "Pickup" tc._setElement.DELFRAME.value = "Delivery" if isutcdaylight(convert_type(tc._set.wilog02.value,"T"),-6) .and. tc.datasubmitted.pickup_tz+tc.datasubmitted.pickup_dst <> "CSTY" then tc._setElement.PUFRAME.value = "Pickup : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog02.value,-6,"Y"))+" CDT" elseif .not. isutcdaylight(convert_type(tc._set.wilog02.value,"T"),-6) .and. tc.datasubmitted.pickup_tz <> "CST" then tc._setElement.PUFRAME.value = "Pickup : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog02.value,-6,"Y"))+" CST" end if if isutcdaylight(convert_type(tc._set.wilog01.value,"T"),-6) .and. tc.datasubmitted.delivery_tz+tc.datasubmitted.delivery_dst <> "CSTY" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog01.value,-6,"Y"))+" CDT" elseif .not. isutcdaylight(convert_type(tc._set.wilog01.value,"T"),-6) .and. tc.datasubmitted.delivery_tz <> "CST" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog01.value,-6,"Y"))+" CST" end if ' This section authorizes changes to delivery time where Pickup Time is primary elseif unsure < convert_type(tc.datasubmitted.wilog01,"T") .and. tc.datasubmitted.ptchoice = "P" then if unsure - convert_type(tc.datasubmitted.wilog02,"T") < val(tc.datasubmitted.scheduled_drivetime) then tc._setElement.tattle.value = "That delivery time would violate minimum time values.<br>" tc._set.delivery_time.value = time("MM/dd/yyyy 0h:0m",utcreverse(tc.datasubmitted.wilog01,val(tc.datasubmitted.delivery_offset),tc.datasubmitted.delivery_dst)) tc._setElement.tattle.value = tc._setElement.tattle.value + "Delivery time has been reset to "+tc._set.delivery_time.value if isutcdaylight(convert_type(tc.datasubmitted.wilog01,"T"),-6) .and. tc.datasubmitted.delivery_tz+tc.datasubmitted.delivery_dst <> "CSTY" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc.datasubmitted.wilog01,-6,"Y"))+" CDT" elseif .not. isutcdaylight(convert_type(tc.datasubmitted.wilog01,"T"),-6) .and. tc.datasubmitted.delivery_tz <> "CST" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc.datasubmitted.wilog01,-6,"Y"))+" CST" end if else tc._set.wilog01.value = time("MM/dd/yyyy 0h:0m",utccreate(tc.datasubmitted.delivery_time,val(tc.datasubmitted.delivery_offset),tc.datasubmitted.delivery_dst)) tc._set.showdzone.value = if(isutcdaylight(convert_type(tc._set.wilog01.value,"T"),val(tc.datasubmitted.delivery_offset)).and. tc.datasubmitted.delivery_dst="Y",left(tc.datasubmitted.delivery_tz,1)+"DT",tc.datasubmitted.delivery_tz) if isutcdaylight(convert_type(tc._set.wilog01.value,"T"),-6) .and. tc.datasubmitted.delivery_tz+tc.datasubmitted.delivery_dst <> "CSTY" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog01.value,-6,"Y"))+" CDT" elseif .not. isutcdaylight(convert_type(tc._set.wilog01.value,"T"),-6) .and. tc.datasubmitted.delivery_tz <> "CST" then tc._setElement.DELFRAME.value = "Delivery : "+ timez("MM/dd/yyyy 0h:0m",utcreverse(tc._set.wilog01.value,-6,"Y"))+" CST" end if end if end if end end if END FUNCTION
Comment