Итак, приступим:
- Сделаем копию БД.
- По желанию создадим нового пользователя.
- Назначим ему права на просмотр.
- В конфигураторе снимем БД с поддержки.
- Ограничим видимость документов. Для роли "ЧтениеДанныхБухгалтерии" изменим шаблон "ПоЗначениям" как на картинке. ВНИМАНИЕ у пользователя не должно быть других ролей с настройкой доступа к документам. В противном случае эти роли также подлежат корректировке.
- Ограничим период формирования отчетов. Для этого в общий модуль "БухгалтерскиеОтчетыВызовСервера" в начало процедуры "СформироватьОтчет" добавим следующий код
//+Новард Отказ = Ложь; ТекстСообщения = НСтр("ru = 'Отчет не сформирован!'") + Символы.ПС + "Интервал отчета не попадает в разрешенный период"; ГодДата = Дата('20150101'); Если ПараметрыОтчета.Свойство("НачалоПериода") Тогда МинимальноеНачалоПериода = НачалоГода(ГодДата); Если ПараметрыОтчета.НачалоПериода < МинимальноеНачалоПериода Тогда Отказ = Истина; КонецЕсли; КонецЕсли; Если ПараметрыОтчета.Свойство("КонецПериода") Тогда МаксимальноеКонецПериода = КонецГода(ГодДата); Если ПараметрыОтчета.КонецПериода > МаксимальноеКонецПериода Тогда Отказ = Истина; КонецЕсли; КонецЕсли; Если Отказ Тогда Результат = Новый ТабличныйДокумент; Макет = ПолучитьОбщийМакет("ОбщиеОбластиСтандартногоОтчета"); ОбластьЗаголовок = Макет.ПолучитьОбласть("ОбластьЗаголовок"); ОбластьЗаголовок.Параметры.ЗаголовокОтчета = ТекстСообщения; Результат.Вывести(ОбластьЗаголовок); ДанныеРасшифровкиОбъект = Неопределено; ДанныеДляРасшифровки = Новый Структура("Объект, ДанныеРасшифровки", ПараметрыОтчета, ДанныеРасшифровкиОбъект); ДанныеРасшифровки = ПоместитьВоВременноеХранилище(ДанныеДляРасшифровки, ПараметрыОтчета.ДанныеРасшифровки); ПоместитьВоВременноеХранилище(Новый Структура("Результат,ДанныеРасшифровки", Результат, ДанныеРасшифровки), АдресХранилища); Возврат; КонецЕсли; //-Новард