Netsuite SQL 查询以查找所有未清发票

Netsuite SQL Query to find all the open invoice

我是 netsuite 的新手。

我遇到了以下情况,

使用查询在 NetSuite 中根据期间获取所有未清发票。

例如:我的经期是“2021 年 3 月”。它应该获取所有在 2021 年 3 月打开的发票。(范围:它应该显示在 2021 年 4 月关闭的发票,因为该发票在 3 月打开)

示例代码:

select
  t.*
from
  Transaction t
  INNER JOIN TransactionLine tl ON (tl.Transaction = t.ID)
  INNER JOIN Subsidiary sb ON sb.id = tl.subsidiary
  INNER JOIN AccountingPeriod ap ON (
    (ap.id = t.postingperiod)
    AND ap.isposting = 'T'
  )
  INNER JOIN CurrencyRate cr1 ON (
    cr1.BaseCurrency = sb.currency
    AND cr1.TransactionCurrency = t.Currency
    AND (
      cr1.EffectiveDate = TO_DATE(ap.startdate, 'MM/DD/YYYY')
    )
  )
  INNER JOIN CurrencyRate cr2 ON (
    cr2.BaseCurrency = sb.currency
    AND cr2.TransactionCurrency = t.Currency
    AND (
      cr2.EffectiveDate = TO_DATE(ap.enddate, 'MM/DD/YYYY')
    )
  )
  LEFT JOIN CurrencyRate cr3 ON (
    cr3.BaseCurrency = 1
    AND cr3.TransactionCurrency = sb.currency
    AND (
      cr3.EffectiveDate = TO_DATE(t.TranDate, 'MM/DD/YYYY')
    )
  )
  INNER JOIN consolidatedexchangerate cexr ON (
    cexr.postingperiod = t.PostingPeriod
    AND cexr.fromsubsidiary = tl.subsidiary
    AND cexr.tosubsidiary = 1
  )
Where
  ((t.AbbrevType in ('BILL', 'INV')))
  AND (tl.MainLine = 'T')
  AND (tl.subsidiary IN (1))
  AND (
    t.postingperiod BETWEEN (mar 2020)
    AND (mar 2020)
  )

以上代码显示了所有发票和账单, 上述代码的问题:如果它在 2020 年 4 月的发布期关闭,则它不会显示交易 (#121)。(它需要显示交易 #121,因为它在 2020 年 3 月打开,仅在 2020 年 4 月关闭)

有没有办法在 NetSuite 查询中将其存档,

提前致谢。

遗憾的是,没有可供您使用的分析表来告诉您发票在特定日期的状态。您可以获得的最佳近似值是使用一些东西来尝试找到关闭账单或发票的交易的 trandate(例如,供应商付款或客户付款)。

这将让您了解客户付款的交易是否在 3 月份的某个时间创建了交易,但在另一个会计期间过帐的关闭交易。