Acumatica 中等效的 DateAdd 函数

DateAdd function equivalent in Acumatica

Acumatica 中 DateAdd 函数的等价物是什么? 我看到有 DateDiff 但没有 DateAdd。

我正在尝试执行以下操作- SQL: (DateAdd(DAY, (180 * RemainingQty / TotalQty), GetDate()))

[PXDBCalced(typeof(Add, totalQty>, AccessInfo.businessDate>), typeof(DateTime))]

我收到一条错误消息 "Specified cast is not valid.."

有人可以提供有关如何实现我想要完成的目标的指导吗?谢谢。

您可以使用 BQL 添加天数 class。

如果day是一个PXFormula DAC字段,你可以这样计算值:

[PXDBCalced(typeof(Add<Current<AccessInfo.businessDate>, NullableIntDACField>), typeof(DateTime))]

你也可以使用常量:

public class int180 : Constant<int>
    {
        public int180()
            : base((int)180)
        {
        }
    }

[PXDBCalced(typeof(Add<Current<AccessInfo.businessDate>, int180>), typeof(DateTime))]

针对您的特定公式结合这两种技术将是:

[PXDBCalced(typeof(Add<Current<AccessInfo.businessDate>, Div<Mult<int180, remainingQty>, totalQty>>), typeof(DateTime))]

现在可用。 (引用自 http://erpsoftwareblog.com/cloud/2015/08/with-acumatica-you-can-gather-data-by-specified-date/

=DateAdd(today(),’d’, 9)
  • y - 年数 (nbr) 将添加到定义的日期 (dt)。
  • q - A (nbr) 个季度将添加到定义的日期 (dt)。
  • m - A (nbr) 个月将添加到定义的日期 (dt)。
  • d - A (nbr) 天将添加到定义的日期 (dt)。
  • w - A (nbr) 个工作日将添加到定义的日期 (dt)。
  • ww - A (nbr) 周将添加到定义的日期 (dt)。
  • h - A (nbr) 小时将添加到定义的日期 (dt)。
  • n - A (nbr) 分钟将添加到定义的日期 (dt)。
  • s - A (nbr) 秒将添加到定义的日期 (dt)。

以下是一些示例:

DateAdd($DueDate, 'm', -2)
DateAdd(CDate('31/01/1995'), 'm', -2)
DateAdd($DueDate,'y', -2)
DateAdd(Cdate($DueDate), 'd', -2)