8

SQL Server 2008 ストアド プロシージャがいくつかあります。私はcfstoredproc経由でそれらを呼び出しています。4 月 17 日に CF サーバーの更新を実行した後、CF が結果を取得しなくなりました。呼び出しの 1 つを次に示します。

<cfstoredproc procedure="proc_xxxx" datasource="#application.dsn#" debug="yes" returnCode="yes">
<cfprocparam type="in" cfsqltype="cf_sql_integer"  dbvarname="@myID" value="#arguments.myID#">
<cfprocparam type="in" cfsqltype="cf_sql_varchar"  dbvarname="@EmailAddr" value="#trim(arguments.emailAddress)#"  null="#not len(arguments.emailAddress)#">
<cfprocparam type="out" cfsqltype="cf_sql_integer" dbVarName="@NewUserID"  variable="newUserID" > 
<cfprocresult name="qryUser">   
</cfstoredproc>

<cfoutput>newUserID = #newUserID#</cfoutput>

newUserID が定義されていないというエラーが発生します。繰り返しますが、アップデート 5 の前はすべて正常に動作していました。

SSMS でストアド プロシージャを呼び出すと、すべて正常に動作します。cfstoredproc は、データベースの更新と挿入を確認しながら機能します。ただし、結果が返されなくなります。すべてがエラーなしで実行されると述べたように、リターン コードは 0 です。

私は試した :

 <cfprocresult resultset="1" name="qryResult">

運がない。何か案は?前もって感謝します。

4

1 に答える 1

7

アドビのサポートとかなりの数の電子メールをやり取りした後、彼らはチェックを外すように私に言いました:CF管理でデバッグ出力の要求を有効にします。

完了すると、パラメーターは期待どおりに戻ります。

 <cfprocparam type="out" cfsqltype="cf_sql_integer" dbvarname="@NewUserID" variable="newUserID"  > 

言うまでもなく、ローカル サーバーと開発サーバーでデバッグ出力が必要です。このバグを修正済みとしてマークする必要はないと思いますが、そうしていると思います。

同じ問題に遭遇した他の誰かに役立つことを願っています。

2015 年 5 月 1 日の編集: 現在、これに対する修正があります。

  1. このホットフィックス ファイル [ hf1100-3971083.jar ] をダウンロードします。
  2. このファイルを /cfusion/lib/updates フォルダーに配置します。
  3. ColdFusion アプリケーション サービスを再起動します。

ブーム、うまくいきます!

于 2015-04-30T14:08:18.463 に答える