Имя: Пароль:
1C
1С v8
Программная передача параметра в СКД.
0 Креатив
 
25.01.21
12:58
Хочу, чтобы отчёт формировался на текущую дату.
В процедуре ПриЗагрузкеПользовательскихНастроекНаСервере пишу
    Настройки.Элементы[0].Значение = ТекущаяДата();
    Настройки.Элементы[0].Использование = Истина;
В отладчике вижу, что значение установлено, но парамер на форме пустой.
1 DrShad
 
25.01.21
13:24
ПриКомпоновкеРезультата
2 polosov
 
25.01.21
13:24
Попробуй
КомпоновкаДанныхКлиентСервер.УстановитьПараметр(ЭтаФорма.Отчет.КомпоновщикНастроек, "НазваниеПараметраСДатой", ТекущаяДата());
3 toypaul
 
гуру
25.01.21
13:27
потому что надо не "при" а "перед". но не факт что сработает. читать что написано в СП
4 polosov
 
25.01.21
13:29
(3) Можно и как он хочет, но в его случае настройки уже в форме установлены.
5 fisher
 
25.01.21
13:33
Попробуй ОбновитьОтображениеДанных()
6 fisher
 
25.01.21
13:36
Ну и убедись, что именно именно пользовательские настройки компоновщика обновились. Т.е. не через параметр обработчика на них смотри, а через Отчет.КомпоновщикНастроек.ПользовательскиеНастройки
7 Креатив
 
25.01.21
13:47
Всем спасибо. Решил проще: в настройке параметров написал выражение ТекущаяДата()
8 sapphire
 
25.01.21
13:54
(7) Собсно, в (0) не сам параметр данных, а пользовательская настройка
9 Креатив
 
25.01.21
14:07
(8)Параметр нужен был для тестирования на разных датах.
10 sapphire
 
25.01.21
14:55
(9) Просто знай, что на форме отображается уже не значение параметра, а пользовательская настройка
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший