Имя: Пароль:
1C
1С v8
Отчет. Значение отбора по умолчанию
0 prtx
 
14.06.15
20:13
Добрый вечер!

У меня есть отчет, в нем установлены поля отбора.

Мне нужно при событии ПриСозданииНаСервере, в зависимости от не которых параметров у становить значения полей отбора по умолчанию.

Как мне достучаться до полей отбора?

1с 8.3 уф
1 ЧеловекДуши
 
15.06.15
06:56
(0) СКД?
В модуле отчета есть предопределенная процедура, там можно задать своё значение отбора, так сказать по дефолту :)

Пример, что нужно поместить в процедуру.
http://1cskd.ru/2010/07/vneshnie-nabori-dannyh/
...
Использование "ТЗ" можно за комментировать или убрать.
В отладчике уже сам разберешься, что и как подставлять, что бы были твои условия.

...сори пример искать долго...
2 prtx
 
23.06.15
22:48
(1) спасибо. Ща буду разбираться.
3 prtx
 
25.06.15
14:00
(1) Что то не получается((( Можете разжевать...
4 prtx
 
25.06.15
14:04
Короче!)))

Есть отчет. Он выводит данные какой кассир сколько наторговал, и мне нужну при запуске этого отчета установить отбор по кассиру, и если нужно запретить изменение, Если этот отчет смотрит Вася, то он должен видить только то что он сам на торговал. А если этот отчет смотрит директор то он отбор по кассиру можно менять, т.е. директор должен видеть сколько вася наторговал, сколько петя, и т.д.

Вроде все элементарно, только вот как достучаться до полей отбора?...
5 Eugene_life
 
25.06.15
14:06
(4) Сделай варианты отчета и не парься
6 prtx
 
25.06.15
14:11
(5) Ну это мне поможет сделать отдельный отчет для директора и отдельный для сотрудников, а как что бы петя не видил что наторговал вася?
7 prtx
 
25.06.15
14:22
Неужели нету что -то типа

Объекты.Отбор.Кассир = "Вася";
8 DmitrO
 
25.06.15
14:25
(7)в платформе нету
9 prtx
 
25.06.15
14:29
(8) Это очень-очень-очень-очень-очень прискорбно...

Я не верю, что такого нету)))

А как тогда реализовывают подобные задачи как у меня. Это же элементарная задача, и не какая-то специфическая...
10 Maniac
 
25.06.15
14:51
Есть все
11 Maniac
 
25.06.15
14:53
СхемаКомпоновкиДанных = ПолучитьМакет("СхемаЗапроса");
    КомпоновщикНастроекИзХранилища = ПараметрыЗапроса.АдресСхемыВХранилище;
    
    КомпоновщикНастроекИзХранилища.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("НачалоПериода", НачалоДня(ПараметрыЗапроса.НачалоПериода));
    КомпоновщикНастроекИзХранилища.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("КонецПериода",КонецДня(ПараметрыЗапроса. КонецПериода));

    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки   = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроекИзХранилища.Настройки,,,);
12 Maniac
 
25.06.15
14:54
ну тебе собственно 4 первых строки
13 Maniac
 
25.06.15
14:55
СТОП.

ВОТ!!!!


Настройки  = Объект.КомпоновщикНастроек.Настройки;
    ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Настройки.Отбор,"Номенклатура",МассивОтбора,ВидСравненияКомпоновкиДанных.ВСписке,,Истина);
14 Maniac
 
25.06.15
15:00
По поводу кто открывает отчет - добавляем условия Если РольДоступна Тогда ляляля.....
15 Maniac
 
25.06.15
15:00
КомпоновщикНастроек должны быть либо как реквизит объекта.

Если он реквизит формы, ну тогда просто пишем

КомпоновщикНастроек
16 Maniac
 
25.06.15
15:02
Вернее он точно должны быть реквизитом объекта.

А вся схема СКД - придется писать программное выполнение.

Так как обычно все типовые отчеты - пустышки. Сделаны на автоматической СКД без программного кода выполнения
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший