We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now

x

ColdFusion Suggestion

Medium Priority
1,735 Views
Last Modified: 2013-12-20
I have a task which involve a lot decision making. For example, I have the main course. If the there is no completion for that course i need to check the alternative courses, (if there any). If there are alternative course and they done by the date EndDate of the main course the give completion for the main course (all the alternaitives has be done), Also check the prerequsite course. If there are any make sure they are done . If tey not done then grayed out the main course.

What would be best approach to this task. There a lot more criterias for the task But I want to start from the begging.
Comment
Watch Question

CERTIFIED EXPERT
Commented:
Unlock this solution and get a sample of our free trial.
(No credit card required)
UNLOCK SOLUTION
erikTsomikSystem Architect, CF programmer

Author

Commented:
i understand what i need to do , I am looking for the best approach in terms of programming Technics
CERTIFIED EXPERT

Commented:
I was really just a little joke, that's how you answer many of your questions.

Here's my real suggestion.

Make a flow chart which each decision you have to make
Here's a sample image

http://mtanga.com/images/flowchart.jpg

Then you convert each step into coldfusion, perform the needed test using cfquery (or whatever is needed) check it with CFIF and branch down another path.

You can set a series of flags to help keep you organized such as this..

<cfset isCourseCompleted = false>
<cfset isOtherCoursesAvailable = true>
.. etc..

Then you can use this variables in your code along the way..
erikTsomikSystem Architect, CF programmer

Author

Commented:
what I am doing is I am creating a static query for the main course, prereq, and alternative. Then I will combibe all 3 static query in to one ,\

Do you think it will work ???
CERTIFIED EXPERT

Commented:
I think having a query to answer each of the questions you have is good.  
The questions being:  

1) Is the main course completed
2) Are there any alternative courses, are they done by endDate
3) Are there any prerequisite courses, are they done

If you can write a query to answer each of these, I think that will really help you.

I don't think there are any real advantages to combining them into one query.  Just keep them separate, it will be easier to code and debug.  It won't be any slower..



erikTsomikSystem Architect, CF programmer

Author

Commented:
OK. I ve built the the 3 queries and trying to output the result but get the error that query of queries only support 2 tables . Please advice . How can i get around this . I do not really want to use another QofQ

here is how I am outputting
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Dynamic Menu System</title>
<style type="text/css">
	body,tr,td,th{font-family:Arial, Helvetica, sans-serif; font-size:14px;}
	html{background-color:#4AA5FF}
</style>
</head>
 
<cfinclude template="DynamicMenu_dataset.cfm">
<cfdump var="#TempQuery#">
<cfdump var="#PreReq#">
<cfdump var="#Alternatives#">
 
<cfquery name="TempQuery" dbtype="query">
	Select *
	from TempQuery,PreReq,Alternatives
	where TempQuery.WorkFlowID = PreReq.WorkFlowID 
	and Alternatives.WorkFlowID = TempQuery.WorkFlowID
</cfquery>
 
<body>
<h2 align="center">Dynamic Menu System</h2>
<table width="50%" border="1">
<cfoutput query="TempQuery" group="workFlowID">
	<cfif DoIseeThelink eq 1>
		<tr>
			<td>#WORKFLOWID#--#MAINCOURSENAME#</td>
			<td>Due Date:#DateFormat(DueDate,"mm/dd/yyyy")#</td>
		</tr>
			
			<tr>
				<td colspan="2">
					<strong>Prerequisites:</strong><br />
				
			
					<cfoutput>#PREREQNAME#</cfoutput>
				</td>
			</tr>
			<tr>
				<td colspan="2">
					<strong>Alternatives:</strong><br />
				
			
					<cfoutput>#ALTERNATIVENAME#</cfoutput>
				</td>
			</tr>
			
 	</cfif>
</cfoutput>
</table>
</body>
</html> 

Open in new window

Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.