能否使用SuiteScript SuiteQL获取现金销售(Cash Sale)的pnrefnum字段?
获取NetSuite现金销售的pnrefnum字段(SuiteQL)
pnrefnum字段并不存储在Transaction表中,它属于PaymentOperation记录,需要通过关联查询来获取。以下是可行的SuiteQL语句:
SELECT t.id AS cash_sale_id, t.tranid AS cash_sale_number, po.pnrefnum FROM Transaction t INNER JOIN PaymentOperation po ON t.id = po.transaction WHERE t.type = 'CashSale'
注意事项:
- 如果需要包含未生成支付操作的现金销售记录(比如未完成的单据),把
INNER JOIN换成LEFT JOIN即可,此时没有支付操作的记录pnrefnum会返回NULL - 确认你的角色拥有
PaymentOperation表的查询权限,否则会返回权限错误 - 若要缩小范围,可在
WHERE子句中添加日期或其他过滤条件,比如AND t.trandate >= TO_DATE('2024-01-01', 'YYYY-MM-DD')
之前关联失败大概率是因为关联条件错误,确保用Transaction.id关联PaymentOperation.transaction字段,这是两个表的正确关联键。
内容的提问来源于stack exchange,提问作者astr
相关产品推荐
相关产品推荐

