ColdFusion Suggestion

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.
LVL 19
erikTsomikSystem Architect, CF programmer Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

gdemariaCommented:
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
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
0
gdemariaCommented:
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..
0
10 Tips to Protect Your Business from Ransomware

Did you know that ransomware is the most widespread, destructive malware in the world today? It accounts for 39% of all security breaches, with ransomware gangsters projected to make $11.5B in profits from online extortion by 2019.

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 ???
0
gdemariaCommented:
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..



0
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

0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Servers

From novice to tech pro — start learning today.