Пользовательская запись в NetSuite

Я новичок в NetSuite. Мы создали настраиваемую запись для консолидированного счета-фактуры (CI) (тот же клиент, одно и то же сообщество Insight, объедините счета и создайте объединенный счет для отправки).

Дизайн этого модуля такой:

Настраиваемые записи: сводный счет-фактура (для CI). Поля: дата, сумма, номер IC, клиент, идентификатор CI, дочерняя компания.

Дочерний консолидированный счет (для обычного счета) Поля: Дата, Сумма, Номер IC, Клиент, Идентификатор CI, Дочерняя компания, Валюта, Идентификатор CI

Теперь эти две записи вместе содержат данные для консолидированного счета-фактуры. Наша проблема: CI PDF должен содержать все элементы из всех обычных счетов-фактур, из которых он был составлен. Я не могу решить, откуда взять эти элементы, поскольку мы не включили их ни в одну из записей. Я могу добавить вкладку элементов в дочернюю форму и, возможно, получить их? Есть идеи, пожалуйста? Я также подумал о сохраненном поиске на лету, чтобы вытащить товары из обычных счетов. Это хорошая идея ?


person Bhakti K    schedule 26.07.2015    source источник


Ответы (1)


Когда я составляю единый счет, я заставляю ребенка записывать фактические счета. Вы должны позволить обычным счетам обрабатываться в обычном режиме и просто использовать консолидированный счет для общения с клиентами.

Затем в скрипте, создающем сводный счет:

var renderer = nlapiCreateTemplateRenderer();
renderer.setTemplate(templateBody.getValue());
...
//this uses a saved search for details because it allows admins to add new columns without having to script
var invResults = nlapiSearchRecord('invoice', invSearch, new nlobjSearchFilter('custbody_ci_parent', null, 'is', ciInternalId));
if (invResults) renderer.addSearchResults('invTrans', invResults);

а затем в вашем шаблоне:

<#list invTrans as tran>...</#list>
person bknights    schedule 27.07.2015
comment
Привет, bknights, большое спасибо за ваш ответ. Я делаю то же самое (такое облегчение, когда читаю ваш код). Часть, где мы получаем доступ к invResults в шаблоне freemarker, у меня вообще не работает. - person Bhakti K; 28.07.2015
comment
Я установил сохраненные результаты поиска, как показано ниже: renderer.addSearchResults ('results', results); В freemarker, когда я пытаюсь получить доступ к значениям, как показано ниже, ничего не печатается! ‹#List invTrans as tran› $ {tran.id} ‹/ # list›. Я также устанавливаю запись CI, прежде чем устанавливать сохраненный поиск, как показано ниже: renderer.addRecord ('record', consInvoice); renderer.addSearchResults ('invTrans', invResults); Это не должно быть проблемой, правда? - person Bhakti K; 28.07.2015
comment
Если вы добавляете результаты как addSearchResults ('результаты', результаты), тогда ваш шаблон freemarker должен быть ‹#list results as tran› Порядок добавления элементов не имеет значения, если все имена уникальны. - person bknights; 28.07.2015