Не соответствие порядка строк заказа и КП. УНФ 1.6

Клиент обратился с проблемой. Он создал в УНФ с помощью инструмента «Шаблоны КП и договоров» шаблон коммерческого предложения. Все было хорошо, но в КП не соблюдался порядок строк из заказа, а это было критично для бизнеса.

В решении этой задачи поиск участка проблемы занял больше времени, чем собственно, сама корректировка.

Путем отладки я нашел, где заполняются документы параметры шаблона Word из документа:

Они выглядят так:

Также я обнаружил, что хотя в документе три строки, запрос возвращает семь, потому что в документе несколько вариантов КП:

Но всё это оказалось ложным следом. Путем использования отладчика, я нашел, что в модуле менеджера Заказа покупателя запрос к табличной части «Запасы» не сортирует товары по номеру строки.

Текст процедуры не позволял использовать нормально расширения, поэтому я впервые применил расширение процедуры с типом «Изменение и контроль»:

&ИзменениеИКонтроль(«ПриВыводеТаблицыПараметровШаблона»)
Процедура дор_ПриВыводеТаблицыПараметровШаблона(ПараметрыПечати, ИмяТаблицы, ОписаниеПараметров, ПараметрыВывода)
    …
   
Запрос = Новый Запрос();
   
Запрос.Текст =
   
«ВЫБРАТЬ
    …
    |
    |УПОРЯДОЧИТЬ ПО
    |   Ссылка,
    |   ЗаказПокупателя.Запасы.НомерВариантаКП,
#Вставка
   
|   ЗаказПокупателя.Запасы.НомерСтроки,
#КонецВставки
   
|   НомерСтроки»;

Как видите, исправление заключалось в добавлении одной строки в запрос.

Потом проверил, что расширение Доработки работает, потому что были опасения, вдруг оно не применится из-за того, что не будет пройден контроль.

Но все сложилось благополучно и порядок строк восстановился.

Факт 1 час. Среда УНФ 1.6.24.107.

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *