При наличии нескольких баз РБД существует проблема получения данных в подчиненной базе из отчетов СКД, т.к. далеко не все данные присутствуют в текущей базе. Например: есть центральная база и периферийная, в центральной работает регламент по расчету себестоиомости, вводятся доп. расходы и прочее, а в периферийной делаются только продажи, однако менеджерам нужно видеть актуальную себестоимость, мотивацию, рассчитанную на основании этих данных. Или руководитель хочет видеть продажи других магазинов, а документов в этой базе нет! (причем хотят видеть в динамике!). Какой выход из этой ситуации? Пускать их в основную базу будет неправильно, поэтому решено было сделать универсальный механизм для СКД отчетов.
Как он работает:
При компоновке данных вставляется специальная функция, которая будет сериализировать различные параметры отчета, передавать их в другую базу, выполнять отчет и возвращать параметры, которые нужно десереализовать в нашей базе.
Расшифровка также работает в этом механизме, однако если какого-то ссылочного объекта не будет в нашей базе, при попытке открытия будет выдано сообщение "Объект не найден", но само представление этих объектов в отчете будет видно.
В файле присутствует отчет с разработанным механизмом, который выводит справочник валюты (отчет может быть любой сложности). Все функции для удобства находятся в модуле менеджера, но лучше их разместить в общих модулях конфигурации, тогда изменение отчета займет всего 3 строки кода. Также необходимо отметить, что схему компоновки у отчета не придется переделывать, здесь не используется внешний набор данных, только сериализация.
Параметры подключения находятся в функции "ПодключитьсяКБазе()", их нужно указать для центральной базы.