При переходе с более старых редакций, таких как УТ 11.1, на современные версии (УТ 11.4, ERP 2.4 или КА 2.4), пользователи и программисты часто сталкиваются с тем, что привычные элементы интерфейса «исчезают». Одним из таких камней преткновения стал отбор по контрагенту в регламентированном отчете Книга продаж. Рассмотрим подробно, куда разработчики «1С» спрятали эту возможность и как вернуть её на форму, если она отсутствует.
Первым делом проанализируем стандартное поведение системы. В современных конфигурациях отчеты строятся на системе компоновки данных (СКД), и их интерфейс может динамически меняться в зависимости от выбранного режима настроек. Зачастую поле отбора просто скрыто в «простом» интерфейсе.
Выполним следующие шаги для проверки видимости поля:
Проанализируем состав доступных полей. Именно здесь в 90% случаев обнаруживается искомое поле Контрагент. Если оно там есть, но не отображается в шапке отчета, необходимо проверить настройки его видимости.
Если поле Контрагент найдено в расширенных настройках, но вы хотите видеть его сразу при открытии отчета (в пользовательской области настроек), выполним процедуру вывода поля:
В окне расширенных настроек на закладке Отборы найдем строку с полем Контрагент. В правой колонке (где отображается иконка в виде «глаза») можно управлять видимостью поля. Нажмем правой кнопкой мыши на строке отбора и выберем пункт Свойства элемента пользовательских настроек. В открывшемся окне установим флажок Включать в пользовательские настройки и выберем режим Быстрый доступ. После завершения редактирования и нажатия кнопки Закрыть и сформировать, поле появится в верхней части формы отчета.
Ситуация усложняется, когда в базе включена функциональная опция Передачи товаров между организациями (механизм Интеркампани). Рассмотрим ситуацию с точки зрения программного кода, который управляет поведением формы отчета. Проанализируем фрагмент процедуры, отвечающей за настройку выбора контрагентов:
Процедура НастроитьСовместныйВыборКонтрагентовОрганизаций(Элемент, Контрагент = Null) Экспорт
Если ПолучитьФункциональнуюОпцию("ИспользоватьПередачиТоваровМеждуОрганизациями") Тогда
Если Контрагент = Неопределено Тогда
Контрагент = Справочники.Контрагенты.ПустаяСсылка();
КонецЕсли;
НовыйМассив = Новый Массив();
НовыйМассив.Добавить(Новый ПараметрВыбора("ВыборКонтрагентовИОрганизаций", Истина));
Элемент.ПараметрыВыбора = Новый ФиксированныйМассив(НовыйМассив);
Иначе
Элемент.ОграничениеТипа = Новый ОписаниеТипов("СправочникСсылка.Контрагенты");
Элемент.ВыбиратьТип = Ложь;
КонецЕсли;
КонецПроцедуры
Из приведенного кода видно, что при включенной опции ИспользоватьПередачиТоваровМеждуОрганизациями система меняет параметры выбора. Вместо прямого ограничения типа СправочникСсылка.Контрагенты используется составной механизм, позволяющий выбирать как внешних контрагентов, так и собственные организации (которые выступают покупателями в рамках схем Интеркампани). Если в метаданных отчета или в программном расширении формы допущена ошибка в определении типов, визуальный элемент может просто не отобразиться в пользовательском режиме, так как система «не понимает», как отрисовать этот сложный выбор в быстром доступе.
В последних релизах УТ 11.4 методология работы с отчетностью по НДС предполагает использование специализированного рабочего места — Помощник по учету НДС. Разберем, почему это важно. При открытии Книги продаж напрямую через список отчетов, форма может инициализироваться со стандартными настройками СКД. Однако, если открывать отчет через Помощник по учету НДС, система выполняет регламентные проверки и может передавать в форму специфические параметры периода и организации.
Попробуем следующий алгоритм:
В этом случае форма отчета часто открывается с уже выведенными ключевыми отборами, включая контрагента, так как контекст формирования отчета определен более жестко.
Важно помнить, что УТ 11 разделяет управленческий учет (справочник Партнеры) и регламентированный (справочник Контрагенты). Отчет Книга продаж является строго регламентированным. Если вы пытаетесь найти в настройках отбор по «Партнеру», вы его не найдете. Проанализируйте свои поисковые запросы в настройках отчета — искать нужно исключительно Контрагента. Если в системе настроена связь «один партнер — много контрагентов», то отбор будет работать только по конкретному юридическому лицу.
Если у одних пользователей отбор виден, а у других (даже с полными правами) — нет, причина кроется в сохраненных пользовательских настройках варианта отчета. Выясним, как привести отчет к первозданному виду:
Эта операция полностью перезаписывает настройки СКД из конфигурации, удаляя все ошибочные «скрытия» полей, которые пользователь мог случайно применить в прошлых сеансах работы. После этого рекомендуется перезайти в программу для корректного обновления кэша форм.
Отбор по контрагенту в Книге продаж типовой версии 1С:Управление торговлей 11.4 никуда не исчез. Он может быть скрыт механизмом СКД, переведен в составной тип из-за настроек Интеркампани или просто не выведен в «быстрый доступ». Использование расширенного режима настроек и проверка функциональных опций позволяют восстановить привычный функционал без внесения изменений в программный код.