Вызов отчета по условию при старте 1с

1. Иваныч 23 21.09.19 15:17 Сейчас в теме
Нужно чтобы внутренний отчет "РеестрДокументов" запускался при старте 1С, но если только пользователь как ОператорККМ. В отчет должно включить документы по текущему складу (ОтчетККМ, Переоценка(Розница), ПеремещениеТМЦ, ВозвратОтПокупателя(Розница)) который указан в настройках данного Пользователя.
Вот в глобально модуле дописка:

Процедура глПечатьРеестраНаСтарте() Экспорт

Перем ВсеДокументы, ВыбранныеДокументы, ТекЖурнал;
Перем ИмяОтбора, ЗначениеОтбора, Представление;

глПолучитьСписокВидов(, ВсеДокументы, ВыбранныеДокументы);

Расшифровка = СоздатьОбъект("СписокЗначений");
Расшифровка.Установить("Отчет", "РеестрДокументов");

// все настройки помещаем в список
Расшифровка.Установить("ДатаНачала", РабочаяДата()-2);
Расшифровка.Установить("ДатаКонца" , РабочаяДата());

ТекФирма = 0;
ТекЮрЛицо = 0;
ТекКонтрагент = 0;
ТекДоговор = 0;
ТекАвтор = 0;
ТекПроект = 0;
ТекСклад = 0;

ТекСклад = глПользователь.ОсновнойСклад;

Расшифровка.Установить("ВыбФирма" , ТекФирма);
Расшифровка.Установить("ВыбЮрЛицо" , ТекЮрЛицо);
Расшифровка.Установить("ВыбКонтрагент", ТекКонтрагент);
Расшифровка.Установить("ВыбДоговор" , ТекДоговор);
Расшифровка.Установить("ВыбАвтор" , ТекАвтор);
Расшифровка.Установить("ВыбПроект" , ТекПроект);
Расшифровка.Установить("ВыбСклад" , ТекСклад);
Расшифровка.Установить("ВклПроведенные", 1);
Расшифровка.Установить("ВклТекущие" , 1);
Расшифровка.Установить("ВклУдаленные" , 0); // помеченные на удаление не включаем

Расшифровка.Установить("ВыбранныеДокументы", ВыбранныеДокументы);
Расшифровка.Установить("ВсеДокументы" , ВсеДокументы);

глОбработкаРасшифровки(Расшифровка,"","");
КонецПроцедуры //глПечатьРеестраНаСтарте

В процедуру ПриНачалеРаботыСистемы добавлен вызов:
глПечатьРеестраНаСтарте();

В таком виде срабатывает со всеми правами и у любого пользователя. Подскажите пожалуйста, что подправить.
По теме из базы знаний
Найденные решения
11. CheBurator 3119 23.09.19 22:14 Сейчас в теме
(10)
у меня стояла галка "наследуются из настроек пользователя".

правильно сделать пользователя (даже не существующего (какого-нить виртуального), например пользователь с именем "ШаблонОсновной". прописать в нем ВРУЧНУЮ нужные настройки.
у всех кто работает по основному шаблону настроек - как раз поставить галку "наследуется из настроек пользователя" и указаит что наследуется от пользователя "ШаблонОсновной".

конструкция
ТекСклад = глЗначениеПоУмолчанию("ОсновнойСклад");
- самостоятельно смотрит в настроки текущего глПользователь (под которым выполняется этот код) и тянет склад из самого пользователя или из настроек от наследуемого пользователя. Точно так же получать "ОсновнаяФирма" и прочие настройки пользователя - "имя" получаемой настройки пользовтаеля соответсвует идентификатору настроечных реквизитов в Справочник.Пользователи

Соответсвенно, у тебя когда стояла галка "наследовать..." и ты прописал код какя написал - то в в настройках наследуемого пользователя склад был не задан, поэтому и получалась бяка.

Работать с наследованием в настройках = проще, не надо править реквизиты у всех пользователей, а только у "ШаблонОсновной"
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Иваныч 23 21.09.19 15:56 Сейчас в теме
С пользователями разобрался. Добавил строку после описания переменных:
Если НазваниеНабораПрав() = "ОператорККМ" Тогда
..............
..............
КонецЕсли;
КонецПроцедуры

Остается пока запинка с отбором документов в отчет
4. CheBurator 3119 23.09.19 00:39 Сейчас в теме
(2) Открой код отчета "Реестр документов" и посмотри как заполнить через передачу параметров список видов документов, попадающих в реестр. Проблема-то в чем?
3. CheBurator 3119 23.09.19 00:36 Сейчас в теме
ТекСклад определяется неверно.
следует использовать конструкцию
ТекСклад = глЗначениеПоУмолчанию("ОсновнойСклад");
6. Иваныч 23 23.09.19 08:15 Сейчас в теме
(3)
ТекСклад = глЗначениеПоУмолчанию("ОсновнойСклад");

так пустая таблица выходит, у меня конкретный пользователь в настройках прописан к своей торговой точке (к розничному складу).
А как передать параметры - ни разу не делал такое,
7. CheBurator 3119 23.09.19 10:14 Сейчас в теме
(6) про склад непонятно для меня, вернусь из отпуска в выходные - если можно будет - глянем. сейчас можно вернуть тот вариант что был рабочий.
8. CheBurator 3119 23.09.19 10:15 Сейчас в теме
(6) Расшифровка.Установить("ВыбранныеДокументы", ВыбранныеДокументы);
Расшифровка.Установить("ВсеДокументы" , ВсеДокументы);
- это и есть передча параметров, через глобальную переменную Расшифровка.
Следует определить значение переменных ВыбранныеДокументы и ВсеДокументы
5. CheBurator 3119 23.09.19 00:45 Сейчас в теме
открой глПечатьРеестра и посмотри заполнение списка значений ВыбранныеДокументы
9. Иваныч 23 23.09.19 13:43 Сейчас в теме
10. Иваныч 23 23.09.19 14:18 Сейчас в теме
Нашли причину. Надо прописать было в настройках руками на каждого пользователя склад, тип цены, проект, и т.д. А у меня стояла галка "наследуются из настроек пользователя".
CheB, спасибо за отклик.
11. CheBurator 3119 23.09.19 22:14 Сейчас в теме
(10)
у меня стояла галка "наследуются из настроек пользователя".

правильно сделать пользователя (даже не существующего (какого-нить виртуального), например пользователь с именем "ШаблонОсновной". прописать в нем ВРУЧНУЮ нужные настройки.
у всех кто работает по основному шаблону настроек - как раз поставить галку "наследуется из настроек пользователя" и указаит что наследуется от пользователя "ШаблонОсновной".

конструкция
ТекСклад = глЗначениеПоУмолчанию("ОсновнойСклад");
- самостоятельно смотрит в настроки текущего глПользователь (под которым выполняется этот код) и тянет склад из самого пользователя или из настроек от наследуемого пользователя. Точно так же получать "ОсновнаяФирма" и прочие настройки пользователя - "имя" получаемой настройки пользовтаеля соответсвует идентификатору настроечных реквизитов в Справочник.Пользователи

Соответсвенно, у тебя когда стояла галка "наследовать..." и ты прописал код какя написал - то в в настройках наследуемого пользователя склад был не задан, поэтому и получалась бяка.

Работать с наследованием в настройках = проще, не надо править реквизиты у всех пользователей, а только у "ШаблонОсновной"
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот