acumatica - PXSelect 不带回最近保留的行
问题描述
我正在为CalculateSalesPriceInt() (计算商品售价的函数)写一个覆盖 这是有问题的代码
[PXOverride]
public virtual decimal? CalculateSalesPriceInt(PXCache sender, string custPriceClass, int? customerID, int? inventoryID, int? siteID, CurrencyInfo currencyinfo, decimal? quantity, string UOM, DateTime date, bool alwaysFromBaseCurrency,
Func<PXCache, string, int?, int?, int?, CurrencyInfo, decimal?, string, DateTime, bool, decimal?> del)
{
Customer cust =
PXSelect<Customer, Where<Customer.bAccountID, Equal<Required<Customer.bAccountID>>>>.Select(
Base, customerID);
InventoryItem item =
PXSelect<InventoryItem,
Where<InventoryItem.inventoryID, Equal<Required<InventoryItem.inventoryID>>>>
.Select(Base, inventoryID);
var itemExt = item.GetExtension<Arctc001InventoryItem>();
var custExt = cust.GetExtension<Arctc001Customer>();
问题在于 InventoryItem 和 Customer 选择。过程是这样的:
- 为客户创建新的销售订单
- 将项目 A 插入 SOLines
- 决定我不喜欢项目 A 的 Descr(或任何其他字段),然后单击超链接以弹出打开 StockItemMaint 页面的实例
- 编辑 Descr 字段,使其不同
- 按保存并关闭 StockItemMaint 页面
- 从 SOLines 中删除所述 InventoryItem
- 重新添加相同的 InventoryItem
- 当我重新添加项目时,计算 SalesPriceInt 会触发
- 在调试模式下,查看 PXSelect 的结果,即使我在窗口中保留了我的更改,旧值仍然出现。
我尝试过使用 PXSelect 或 PXSelectReadonly,无论我更改库存项记录之前的旧值是什么,结果仍然会返回
如何使用缓存以便获得这些持久值?
谢谢
解决方案
推荐阅读
- mongodb - " 特质绑定 `Bson: From
使用带有 u128 属性的 doc! 宏时出现“不满足”错误 - templates - 带有模板的 Yeoman 复制目录
- gitlab-ci - 无法使用 gilab-ci 中的内置方法获取保管库机密
- python - AttributeError:未找到下限;从 Sklearn CountVectorizer 中删除不常见的功能?
- javascript - 从使用过滤器参数的 API 中删除硬编码 URL 字符串的最佳方法
- ios - 为什么 UIButton.setTitle 会改变字体大小?
- reactjs - 我如何制作组件显示?
- javascript - 如何在 js 的 for of 循环中使用 .indexOf
- html - 如何隐藏网格中我不在媒体查询中使用的部分?
- reactjs - 我的 App 功能没有读取导入的组件。我收到“已定义但从不使用”警告