このフォームにはあらゆる種類の従業員証明書があります。日付を入力する必要があります。時には、この日付は将来の月であり、日付は未定義となります。Coldfusion:DateフィールドのNull値の扱い
私は私のCFCにnull値を渡すようにしようとするたびに、私はいつものように見えるエラーを取得:addEmployee関数に渡さ
CPRADULTEXP引数がDATE型のではありません。
マイフォームコード:
<!--- If null, set a default if not, set the default to database default --->
<cfif not isDefined("certificationsList.cprAdultExp")>
<cfinput type="datefield" required="no" name="cprAdultExp" value="" >
<cfelse>
<cfinput type="datefield" required="no" name="cprAdultExp" value="#dateformat(certificationsList.cprAdultExp, "mm/dd/yyyy")#" >
</cfif>
フォーム・プロセッサ:
<!--- Is the date defined? --->
<cfif len(Trim("form.cprAdultExp")) EQ 0>
<cfinvokeargument name="cprAdultExp" value="#CreateODBCDate(Form.cprAdultExp)#">
<cfelse>
<cfinvokeargument name="cprAdultExp" value="">
</cfif>
今、それはデータベースがnullを受け入れる/処理するように設定され、そのヌル値を渡しています。
どうすれば修正できますか?
空の文字列 ""は有効な日付ではありません。 cffunction引数をオプションにし、form.cprAdultExpが日付でない場合は何も渡さない。 – Leigh
CFは(関数に移動すると)CFによって、またはSQLによって(関数の処理後に挿入中に)スローされますか? –