【发布时间】:2021-08-31 20:15:29
【问题描述】:
有一个奇怪的问题。用户登录,我将他们的定价折扣矩阵作为查询分配给会话变量。然后在产品页面上,我根据产品定价组查找他们的折扣。此代码一直运行良好,并继续适用于所有用户,尤其是这个用户。所以这就是场景。
登录过程根据数据库中的一些数据设置此设置
<cfset SESSION.Vendor.PriceMatrix = #qryPriceMatrix# />
查询数据看起来像这样。所以两列。
| Discount | VendorCategory |
|----------|----------------|
|0.2 | SWIPES |
|0.2 | TANTUS |
|0.2 | TOPCO |
|0.2 | VOODOO |
然后在产品页面上,我只需像这样查询会话变量。
<cfquery name="GetYourPrice" dbtype="query">
SELECT Discount FROM SESSION.Vendor.PriceMatrix
WHERE VendorCategory = <cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="#PricingGroup#" maxlength="20">
</cfquery>
我遇到的问题是在会话变量的这个查询之后立即将会话变量中 Discount 列的所有值设置为 0,就像这样。
| Discount | VendorCategory |
|----------|----------------|
|0 | SWIPES |
|0 | TANTUS |
|0 | TOPCO |
|0 | VOODOO |
我不知道为什么或如何发生这种情况,因为我认为为了发生这种情况,我必须设置会话变量,但没有 cfset 语句。同样,此代码在所有其他用户帐户上都可以正常工作。有没有人遇到过类似的事情?会话变量的查询包含一个查询,然后将第一列设置为零?
【问题讨论】:
标签: coldfusion coldfusion-2016