2015-08-11 4 views
0

Я хотел бы создать сценарий пользовательского события (до отправки события), применяемый к транзакциям (заказы на поставку, заказы на продажу), которые будут сортировать строки товаров на основе определенного поля (то есть имя элемента).NetSuite - сортировка позиций линии

Мой подход будет хранить всю информацию в массиве, сортировки, а затем использовать API-интерфейсы nlapiRemoveLineItem метод для удаления каждого элемента и nlapiInsertLineItem метода для вставки каждого элемента на правильном порядке.

Однако для этого подхода мне нужно будет сохранить все значения столбцов перед удалением и вставкой, и я обеспокоен тем, что NetSuite может вызвать ошибку из-за какой-либо конкретной проверки при вставке строки или при отправке записи.

Есть ли другой подход, чтобы упростить сортировку позиций? Любое предложение будет высоко оценено.

+0

Вы хотите применить сортировку по сотворенным PO/SO или вы хотите создать новый PO/SO с элементами, отсортированных по полю имени? – Rockstar

+0

Я хочу применить сортировку по созданному PO/SO. Знаете ли вы, есть ли простой способ сортировки, вместо того, чтобы удалить все строки и включить их снова? Спасибо. –

ответ

0

Помимо проблем с производительностью, есть главные проблемы, которые вы не можете/не должны «сортировать» линии после того, как линия имеет выполнение или счет-фактура, подключенные к нему. Таким образом, вы можете только сортировать, в то время как SO ничего не связано с ним.

Причина в том, что вы не можете «перемещать» позиции - вам нужно будет удалить ее и повторно добавить элемент в другую строку. Выполнение этого приведет к поломке скрытых, недоступных связей NS между линиями SO и последующими транзакциями.

Если вы хотите распечатать отчет о транзакции по созданному PO/SO, одной из альтернатив является сортировка только напечатанного документа. Используя nlapiXmlToPDF(), вы создаете PDF-файл в любом порядке. Это также имеет некоторые недостатки, так как стандартный PDF и связанные с ним процессы не могут использоваться, но это лучше, чем сортировка фактических строк.

Другой подход заключается в предоставлении двух подписок в пользовательском интерфейсе. Настоящий подсписчик NS, который вы не сортируете, и «поддельный» подсписчик поддерживаются и сортируются, используя виджет, который позволяет сортировать (возможно, доходит до отличного компонента внешнего интерфейса JS и т. Д.). Проблема здесь, конечно, заключается в сохранении синхронизации содержимого между двумя подсписками, но, как плохо, как это звучит в большинстве случаев, она ВСЕГДА лучше, чем истинная сортировка реального подсписника.

Ссылка: Scripted Sales Order Sorting: Suggestions

Смежные вопросы