NetSuite - Сортировка позиций

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

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

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

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


person Marcel P    schedule 11.08.2015    source источник
comment
Вы хотите применить сортировку к созданному PO / SO или хотите создать новый PO / SO с элементами, отсортированными по полю имени?   -  person Rockstar    schedule 11.08.2015
comment
Я хочу применить сортировку к созданному PO / SO. Знаете ли вы, есть ли простой способ отсортировать его, вместо того, чтобы удалять все строки и включать их снова? Спасибо.   -  person Marcel P    schedule 11.08.2015


Ответы (1)


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

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

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

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

Ссылка: Сортировка заказов на продажу по сценарию: предложения

person Rockstar    schedule 12.08.2015