Netsuite,如何搜索开放的供应商账单(交易)?

问题描述 投票:0回答:1

看上去很简单,但就像netsuite一样,它很痛苦。这是我目前所拥有的。

        TransactionSearch invoiceSearch = new TransactionSearch();        

        TransactionSearchBasic invoiceSearchBasic = new TransactionSearchBasic();

        SearchEnumMultiSelectField criteria = new SearchEnumMultiSelectField();                       

        criteria.setOperator(SearchEnumMultiSelectFieldOperator.ANY_OF);
        String[] statuses = new String[] { TransactionStatus.BILL_OPEN.toString() };

        stats.getSearchValue().addAll(Arrays.asList(statuses));

        invoiceSearchBasic.setStatus(stats);

如果我注释掉invoiceSearchBasic.setStatus这一行,我就能得到所有的交易(包括我想要的那些 "Open "的交易),但是当它在那里时,我什么都没有得到。不用说把TransactionStatus.BILL_OPEN.toString()改成 "Open "也不行,那就太简单了。

java netsuite suitetalk
1个回答
0
投票

好吧,我已经解决了。对于其他人来说,这就是问题所在。

从TransactionStatus枚举中,

@XmlEnumValue("_billOpen")
BILL_OPEN("_billOpen")

当你记录toString值的时候,它给出了 帐单_OPEN (不是 _billOpen)

但它 _billOpen 我们需要!

解决办法。

SearchEnumMultiSelectField criteria = new SearchEnumMultiSelectField();
criteria.setOperator(SearchEnumMultiSelectFieldOperator.ANY_OF);
String[] statuses = new String[] { "_billOpen" };
criteria.getSearchValue().addAll(Arrays.asList(statuses));
© www.soinside.com 2019 - 2024. All rights reserved.