The code below works fine, now I want to add this cfif to check if the form field is empty:
<cfif len(form.meeting)>
</cfif>
I tried wrapping it around the code but it gives me a java error. How can I do this? Thank you:
<cfif DayOfWeek(Now()) eq 2>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 3>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 4>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 5>
<cfset meetingDate = dateAdd("d", 4, now())>
<cfelseif DayOfWeek(Now()) eq 6>
<cfset meetingDate = dateAdd("d", 3, now())>
<cfelseif DayOfWeek(Now()) eq 7>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 1>
<cfset meetingDate = dateAdd("d", 1, now())>
</cfif>
Hi Dan
The cause of this output exception was that: java.lang.NullPointerException.
MEETING= <cfqueryparam cfsqltype="cf_sql_timestamp" value="#meetingDate#" />,
This is the complete code:
<cfset meetingDate = trim(form.meeting)>
<cfif len(form.meeting)>
<cfif DayOfWeek(Now()) eq 2>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 3>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 4>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 5>
<cfset meetingDate = dateAdd("d", 4, now())>
<cfelseif DayOfWeek(Now()) eq 6>
<cfset meetingDate = dateAdd("d", 3, now())>
<cfelseif DayOfWeek(Now()) eq 7>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 1>
<cfset meetingDate = dateAdd("d", 1, now())>
</cfif>
</cfif>
Hi I worked it out it was to check if the variable was a date:
<cfset meetingDate = trim(form.meeting)>
<cfif not isDate(meetingDate)>
<cfif DayOfWeek(Now()) eq 2>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 3>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 4>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 5>
<cfset meetingDate = dateAdd("d", 4, now())>
<cfelseif DayOfWeek(Now()) eq 6>
<cfset meetingDate = dateAdd("d", 3, now())>
<cfelseif DayOfWeek(Now()) eq 7>
<cfset meetingDate = dateAdd("d", 2, now())>
<cfelseif DayOfWeek(Now()) eq 1>
<cfset meetingDate = dateAdd("d", 1, now())>
</cfif>
</cfif>
You could improve that fairly impenetrable code with a switch, thus:
<cfswitch expression="#dayOfWeek(now())#">
<cfcase value="1">
<cfset daysToAdd = 1>
</cfcase>
<cfcase value="5">
<cfset daysToAdd = 5>
</cfcase>
<cfcase value="6">
<cfset daysToAdd = 3>
</cfcase>
<cfdefaultcase><!---ie: 2,3,4,7 --->
<cfset daysToAdd = 2>
</cfcase>
</cfswitch>
<cfset meetingDate = dateAdd("d", daysToAdd, now())>
This is much easier to read than what you've done above.
As a rule of thumb, if you have one or more if/elseif statements that all check the same variable: use a switch. Only use ELSEIF statements if the condition is evaluating different logic from the one in the the initial IF.
--
Adam
North America
Europe, Middle East and Africa
Asia Pacific