При наличии нескольких баз РБД существует проблема получения данных в подчиненной базе из отчетов СКД, т.к. далеко не все данные присутствуют в текущей базе. Например: есть центральная база и периферийная, в центральной работает регламент по расчету себестоиомости, вводятся доп. расходы и прочее, а в периферийной делаются только продажи, однако менеджерам нужно видеть актуальную себестоимость, мотивацию, рассчитанную на основании этих данных. Или руководитель хочет видеть продажи других магазинов, а документов в этой базе нет! (причем хотят видеть в динамике!). Какой выход из этой ситуации? Пускать их в основную базу будет неправильно, поэтому решено было сделать универсальный механизм для СКД отчетов.
Как он работает:
При компоновке данных вставляется специальная функция, которая будет сериализировать различные параметры отчета, передавать их в другую базу, выполнять отчет и возвращать параметры, которые нужно десереализовать в нашей базе.
Расшифровка также работает в этом механизме, однако если какого-то ссылочного объекта не будет в нашей базе, при попытке открытия будет выдано сообщение «Объект не найден», но само представление этих объектов в отчете будет видно.
В файле присутствует отчет с разработанным механизмом, который выводит справочник валюты (отчет может быть любой сложности). Все функции для удобства находятся в модуле менеджера, но лучше их разместить в общих модулях конфигурации, тогда изменение отчета займет всего 3 строки кода. Также необходимо отметить, что схему компоновки у отчета не придется переделывать, здесь не используется внешний набор данных, только сериализация.
Параметры подключения находятся в функции «ПодключитьсяКБазе()», их нужно указать для центральной базы.
При запуске выдает «не установлена схема компоновки данных» что не так делаю? Обе конфы БП 3.0
Возможно отчет построен не через СКД? Посмотрите в свойствах отчета должна быть установлена «Основная схема компоновки данных».
(2) я ваш отчет использую не изменяя, отладчиком если идти, то ругается на Новый COMОбъект(«V83.COMConnector»)
Зачет, классное решение, хоть и есть недочеты 1с в таком решении
(3)
Значит dll не зарегистрирована — вот статьяhttps://infostart.ru/public/97085/
(1) У пользователя 1с должна быть отключена галочка Защита от опасных действий.
здесь
Данный параметр не позволяет пользователю инициализировать comобъекты.
Подробнее можно прочесть