如何在 h SuiteQL 中收集这些付款的发票、相关付款和"applied_to"子记录



我玩得很开心。因为SuiteQL使用Analytics Browser模式,所以它与许多NetSuite信息不匹配,这些信息通常在直接ODBC模式的上下文中。

通过REST,我正在尝试收集销售订单、采购订单和发票,以便在Salesforce中为Salesforce的给定Opportunity显示。我可以通过SuiteQL查询检索ID,然后可以使用它们各自的端点来获取详细信息(例如/services/rest/record/v1/salesdorder/2374577,其中2374577是销售订单ID(。

我的问题是付款——我可以很好地获得与发票相关的付款,但";总额";关于付款可能没有完全应用于该发票,它可能已经分散在发票上。。所以我需要得到";适用于该发票的金额";。

我目前正在使用这个SuiteQL查询,但它没有给我所需的每张发票的明细:

SELECT *, NT.TranDate, NT.TranID, REPLACE( BUILTIN.DF( NT.Status ), BUILTIN.DF( NT.Type ) || ' : ' ) AS Status, NT.ForeignTotal, NT.exchangerate FROM NextTransactionLineLink AS NTLL INNER JOIN Transaction AS NT ON ( NT.ID = NTLL.NextDoc ) WHERE ( NTLL.PreviousDoc = '2373356' ) AND NT.Type = 'CustPymt' ORDER BY NT.TranDate ASC

这似乎是一种ODBC方法(下面(来获得该信息;transaction_links";表/视图在SuiteQL中似乎不可用。。所以我不确定在这一点上该向哪里求助。

"t1".TRANSACTION_ID , t1."TRANSACTION_NUMBER", t1."TRANSACTION_TYPE"
,ln1.amount Invoice_Amount
,xref."AMOUNT_LINKED" Applied_Amount, xref."APPLIED_TRANSACTION_ID", xref."ORIGINAL_TRANSACTION_ID", xref."APPLIED_DATE_POSTED"
, t2."TRANSACTION_ID" t2_tranid, t2."TRANSACTION_NUMBER" t2_trannbr, t2."TRANSACTION_TYPE" t2_trantype
,ln2.amount Payment_Amount
from
"ns_transactions_raw" t1
join "ns_transaction_lines_raw" ln1
on t1."TRANSACTION_ID" = ln1."TRANSACTION_ID"
join
"ns_transaction_links_raw" xref
on t1."TRANSACTION_ID" = xref."ORIGINAL_TRANSACTION_ID"
and ln1."TRANSACTION_LINE_ID" = xref."ORIGINAL_TRANSACTION_LINE_ID"
join "ns_transactions_raw" "t2"
on "t2"."TRANSACTION_ID" = "xref"."APPLIED_TRANSACTION_ID"
join "ns_transaction_lines_raw" ln2
on ln2."TRANSACTION_ID" = "xref"."APPLIED_TRANSACTION_ID"
and ln2."TRANSACTION_LINE_ID" = "xref"."APPLIED_TRANSACTION_LINE_ID"
where t1."TRANSACTION_TYPE" = 'Invoice'
and t2."TRANSACTION_NUMBER" = 'PMT028551'

我能够通过NextTransactionLineLink表实现这一点。这是我的SuiteQL查询,其中objectId是我想要获得付款的发票的id。这也适用于各种现金交易,如存款申请、信用备忘录等:

SELECT NT.ID, NT.TranDate, NT.TranID, REPLACE( BUILTIN.DF( NT.Status ), BUILTIN.DF( NT.Type ) || ' : ' ) AS Status, NT.ForeignTotal, NT.exchangerate, NTLL.ForeignAmount FROM NextTransactionLineLink AS NTLL INNER JOIN Transaction AS NT ON ( NT.ID = NTLL.NextDoc ) WHERE ( NTLL.PreviousDoc = objectId ) ORDER BY NT.TranDate ASC

NextTransactionLineLink记录上的ForeignAmount字段是适用于此发票的付款部分的值。

最新更新