Доступ к XML-атрибуту Netsuite SuiteScript

При просмотре любой записи в Netsuite вы можете добавить следующий параметр "&xml=t" к URL-адресу и просмотреть XML-данные записи. Иногда в xml есть данные, которые не отображаются ни в одном поле, и я ищу способ получить к ним доступ с помощью SuiteScript, но до сих пор я вычеркнул. Вот фрагмент кредита поставщика:

`<line>
<amount>26.10</amount>
<apply>T</apply>
<applydate>1/28/2016</applydate>
<doc>400620</doc>
<due>26.10</due>
<duedate>1/28/2016</duedate>
<internalid>400620</internalid>
<line>0</line>
<pymt>401604</pymt>`

Как бы я вытащил атрибут <pymt>401604</pymt> с помощью набора скриптов, поскольку это идентификатор платежной записи, который не отображается в пользовательском интерфейсе, и у меня нет внутреннего идентификатора.


person kdub    schedule 19.02.2016    source источник


Ответы (1)


Это похоже на подсписок apply. Возможно, данные не отображаются в используемой вами форме.

Попробуй это:

var rec = nlapiLoadRecord('vendorcredit',recid)
var firstLinePayment = rec.getLineItemValue('apply','pymt',1)

Это должно дать вам идентификатор транзакции для записи, к которой применяется эта строка.

person Shea Brennan    schedule 19.02.2016
comment
Спасибо! Это сработало отлично. Я сделал неправильное предположение, что если поле не было указано в браузере записей Netsuite, я не мог его использовать. - person kdub; 19.02.2016
comment
Кажется, это перестало работать в песочнице, но все еще работает в производстве. Не уверен, что здесь происходит, но поскольку «pymt» не определен в браузере записей, он может больше не работать? Может ли кто-нибудь еще сказать мне, если они испытывают те же результаты? - person kdub; 24.03.2017
comment
Похоже, что возможно: var firstLinePayment = rec.getLineItemValue('apply','amount',1) - person Shea Brennan; 27.03.2017