为RecurringPrice覆盖GetItemPriceValue

时间:2018-08-24 19:03:25

标签: acumatica

我在“自动化步骤”的合同项目的重复价格选项中添加了重复价格选项。

enter image description here

这是“合同项目”页面的外观。

enter image description here

现在,如果我在“客户合同的详细信息”部分中选择“使用重复价格”作为重复价格选项,则我要使用合同项目的重复价格。

enter image description here

为此,我尝试覆盖ContractDetail DAC的“ FixedRecurringPriceVal”字段的公式。

using NonStockItemRecurringPriceSetup;

[PXDecimal(6)]    
[PXFormula(typeof(    
        Switch<    
        Case<Where<Parent<ContractItem.fixedRecurringPriceOption>, Equal<customRecurringPrice>>, decimal1>,    
        GetItemPriceValue<
            ContractDetail.contractID,
            ContractDetail.contractItemID,
            ContractDetailType.ContractDetail,
            ContractDetail.fixedRecurringPriceOption,
            Selector<ContractDetail.contractItemID, ContractItem.recurringItemID>,
            ContractDetail.fixedRecurringPrice,
            ContractDetail.basePriceVal,
            ContractDetail.qty,
            Switch<
                Case<Where<Parent<Contract.status>, Equal<Contract.status.draft>,
                Or<Parent<Contract.status>, Equal<Contract.status.pendingActivation>>>,
                IsNull<Parent<Contract.activationDate>, Parent<Contract.startDate>>,
            Case<Where<Parent<Contract.status>, Equal<Contract.status.active>,
                Or<Parent<Contract.status>, Equal<Contract.status.inUpgrade>>>,
                IsNull<Parent<ContractBillingSchedule.nextDate>, Current<AccessInfo.businessDate>>,
            Case<Where<Parent<Contract.status>, Equal<Contract.status.expired>>,
                IsNull<Parent<ContractBillingSchedule.nextDate>, Parent<Contract.expireDate>>,
            Case<Where<Parent<Contract.status>, Equal<Contract.status.canceled>>,
            IsNull<Parent<Contract.terminationDate>, Current<AccessInfo.businessDate>>>>>>,
            Current<AccessInfo.businessDate>>>>))]
[PXUIField(DisplayName = "Recurring Price")]

如果重复价格选项为“使用重复价格”,我尝试使用值1。但这没用。

enter image description here

谢谢。

0 个答案:

没有答案