这个问题通常出现在销售交易的PricingEngine类的代码中,当额外信息没有被正确地填充到销售交易中时会出现这个问题。解决方法是在代码中确保正确地填充额外信息。
以下是一个参考代码示例:
// 获取销售交易数据 SalesTable _salesTable = SalesTable::find(_salesId);
// 确认额外信息已被正确填充 if(!_salesTable.someExtraInfo()) { // 填充额外信息 _salesTable.setExtraInfo(true); _salesTable.doUpdate(); }
// 获取行数据 SalesLine _salesLine = SalesLine::find(_salesId, _lineNum);
// 在PricingEngine类中使用数据 PricingEngine engine = new PricingEngine(_salesTable, _salesLine); engine.UpdatePrice();