在定制的客户声明报告中总结老化的问题

时间:2017-01-19 13:02:28

标签: acumatica

要求是在没有贷记凭证和预付款的情况下打印客户对账单。我修改了报告并添加了一个过滤条件来仅过滤发票,它工作正常。

我面临着老龄化问题,总计不合理,包括贷项通知单和预付款。

我试图重新计算这些值,但它无效。

如何重新计算考虑新添加的过滤条件的老化?

enter image description here

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:0)

我曾与这份报告纠缠在一起,这是一项艰苦的工作。我的要求不同,但最后我不得不修改报告中的变量是如何根据数据计算的。在报表设计器中,单击部分,然后单击属性下的变量集合。您可以看到余额如何相加并编辑代码,输入if语句等。希望这有帮助。

答案 1 :(得分:0)

遵循以下步骤

  1. 详细信息带中每个老化组的声明变量,该值将在文档组中重置。 enter image description here

  2. 声明变量AgeingDays并计算声明日期和文件截止日期之间的日期差异

    = DateDiff(' d',[ARStatementDetailInfo.DueDate],[@ StatementDate])

  3. 使用以下语句查找老化组并存储值

    = $ cagb00 + Iif($ AgeingDays< [ARStatement.AgeDays00],IIf([ARStatement.StatementType] = [@ TypeOpenItem],[ARStatementDetailInfo.DocBalanceSigned],[ARStatementDetailInfo.OrigDocAmtSigned]),0)

    = $ cagb01 + Iif($ AgeingDays> = [ARStatement.AgeDays00]和$ AgeingDays< [ARStatement.AgeDays01],IIf([ARStatement.StatementType] = [@ TypeOpenItem],[ARStatementDetailInfo.DocBalanceSigned],[ ARStatementDetailInfo.OrigDocAmtSigned]),0)

    = $ cagb02 + Iif($ AgeingDays> = [ARStatement.AgeBalance02]和$ AgeingDays< [ARStatement.AgeBalance03],IIf([ARStatement.StatementType] = [@ TypeOpenItem],[ARStatementDetailInfo.DocBalanceSigned],[ ARStatementDetailInfo.OrigDocAmtSigned]),0)

    = $ cagb03 + Iif($ AgeingDays> [ARStatement.AgeBalance03]和$ AgeingDays< [ARStatement.AgeBalance04],IIf([ARStatement.StatementType] = [@ TypeOpenItem],[ARStatementDetailInfo.DocBalanceSigned],[ARStatementDetailInfo .OrigDocAmtSigned]),0)

    = $ cagb04 + Iif($ AgeingDays> = [ARStatement.AgeDays04],IIf([ARStatement.StatementType] = [@ TypeOpenItem],[ARStatementDetailInfo.DocBalanceSigned],[ARStatementDetailInfo.OrigDocAmtSigned]),0)

  4. 声明另一组变量on以对组级别的值求和 enter image description here

  5. 最后在打印老化值时,仅检查标记发票,如果为真则打印计算值,否则为默认值

  6. = Iif([@ InvoiceOnly],$ ca01,$ CustAgeBalance01)

    我测试过,测试结果很好。