データベースから質問を取得する調査用の関数を作成しようとしています。キャッチは、アクティブな質問と非アクティブな質問の両方があるということです。誰かが古い調査の結果を表示したときに表示される古い質問が必要です。
これが私がCFC内で試しているコードです:
<cffunction name="getAllQuestions" access="public" returntype="query">
<cfargument name="survey" default=0>
<cfif len(#survey#) gt 0>
<cfquery name="getsdate" datasource="blah.database">
select * from past_survey
where survey_id = #survey#
</cfquery>
<cfreturn getsdate>
</cfif>
<cfquery name="getquestions" datasource="blah.database">
select * from pool_questions
<cfif len(#survey#) eq 0>
where active_flag='Y'
<cfelse>
where <cfqueryparam value="#dateformat
(getsdate.survey_date, "yyyy/mm/dd")#"> BETWEEN start_date AND
end_date
</cfif>
order by qtn_nb
</cfquery>
<cfreturn getquestions>
</cffunction>
#survey#
フォームによって生成される調査IDです。私がやろうとしているsurvey
のは、クエリgetsdateを実行する値がある場合です。次に、値があるかどうかに関係なく、2番目のクエリが実行されますsurvey
。価値がない場合は、すべてのアクティブな質問をプルする必要があります。値がある場合は、調査日が過去の質問の開始日と終了日の間にあるかどうかを確認する必要があります。
この作業を行う方法についてのアドバイスをいただければ幸いです。前もって感謝します!