【问题标题】:Where can I find the pending amount from invoices in DynamicsAX Database?我在哪里可以找到 Dynamics AX 数据库中发票的待处理金额?
【发布时间】:2016-09-26 14:35:15
【问题描述】:

这是我已经知道的,未结发票表格:

  • “CustTransOpen”
  • “CustInvoiceJour”
  • “CustTrans”

我已经在这方面工作了一段时间,但没有任何线索,必须有办法获得待处理金额,或者至少知道这些发票是否已支付。

我已经查看了所有的 Microsoft 文档,但没有成功,希望您能帮助我。

【问题讨论】:

  • 嗯,这似乎很宽泛,也许需要细节?
  • 您是否尝试使用 X++ 或 SQL 从 AX 中解决这个问题?
  • @MarkSchultheiss 什么样的细节可以提供帮助?这是这些表的文档CustTransCustTransOpenCustInvoiceJour我已经检查过,但它并没有真正的帮助。
  • @AlexKwitny 我正在使用 SQL。
  • "我已经在这方面工作了一段时间" > 请展示你到目前为止所做的尝试,这样更容易给你答案。

标签: sql-server axapta dynamics-ax-2012


【解决方案1】:

这是获取客户 MST 中未结余额的 AX 查询。要在 SQL 中执行此操作,您可以重写它和/或至少使用它来实现您想要的。

此代码源自 AX 中的\Data Dictionary\Tables\CustTable\Methods\openInvoiceBalanceMST

下面的this指的是CustTable

while select sum(AmountMST) from custTransOpen
    where custTransOpen.AccountNum  == this.AccountNum
       && custTransOpen.TransDate   >= _fromDate
       && custTransOpen.TransDate   <= _toDate
    exists join custTrans
        where custTrans.RecId       == custTransOpen.RefRecId
           && (custTrans.Invoice    != ''
           || (custTrans.Invoice    == '' && custTrans.AmountMST   > 0))
{
    openBalanceMST += custTransOpen.AmountMST;
}

【讨论】:

  • 谢谢@Alex!。这个解决方案不是 SQL,而是快速重写让我朝着正确的方向前进。 CustTrans.AmountMST 是我要查找的列。
  • 如果您可以在AX 中进行开发,那么当您尝试提取一些类似的数据时,它会更容易为您提供帮助。由于与数据相关的业务逻辑,在某些情况下,这不是一个简单的 SQL 查询。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-03-17
  • 2020-03-27
  • 2021-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多