Имя: Пароль:
1C
1С v8
Заполнение реквизита формы в отчете
,
0 yalanton
 
29.01.19
15:48
Добрый день (в 1с 8.3) подскажите пожалуйста есть отчет в нем есть реквизитформы  "дата1" тип дата.  надо чтоб при открытии отчета реквизитуформы дата1 присваимвалось значение даты"01.02.2019"

в модуле формы отчета  пишу   но  не работает
&насервере
Процедура присозданиинасервере()
    
    
    датафевр1= "01.02.2019";
    значениевреквизитформы("01.02.2019",дата1);
КонецПроцедуры
1 yalanton
 
29.01.19
15:50
или пишу в процедуре Приоткрытии() тоже не работает
2 GazM9ic
 
29.01.19
15:53
пиши так
датафевр1= ДАТА("20190201");
3 GazM9ic
 
29.01.19
15:54
значениевреквизитформы(ДАТА("20190201"),дата1);
4 yalanton
 
29.01.19
15:57
а в какой процедуре?
5 GazM9ic
 
29.01.19
15:58
стоп, реквизит формы заполняется напрямую.

дата1 = ДАТА("20190201");
в любой процедуре
6 yalanton
 
29.01.19
16:00
написал дата1= ДАТА("20190201");
и
значениевреквизитформы(ДАТА("20190201"),дата1);

не заполняется реквизит при открытии отчета
7 GazM9ic
 
29.01.19
16:02
(6) путь к данным у реквизита заполнен?
8 GazM9ic
 
29.01.19
16:03
значениевреквизитформы - зачем ты туда лезешь? это вообще для другого используется
9 yalanton
 
29.01.19
16:10
да путь к данным заполнен
т.е. в процедуре пишу а реквизит формы дата1 пустой
&насервере
Процедура присозданиинасервере()
    
    
    дата1= ДАТА("20190201");

    
КонецПроцедуры
10 GazM9ic
 
29.01.19
16:17
у тебя реквизит формы или объекта?
Если объекта то пиши так:
Объект.дата1= ДАТА("20190201");
Если формы то:
дата1= ДАТА("20190201");

Все зависит от того что у тебя в свойстве "ПутьКДанным" у реквизита. вот что там есть то и пиши.
11 yalanton
 
29.01.19
16:53
тут четко проблема в том в какую процедуру вставить т.к. если добавляю в процедуру например которая отрабатывает по кнопке "сформировать" то все работает- реквизиту формы присваивается значение.
а вот процедуры
присозданиинасервере или ПриОткрытии строка дата1= ДАТА("20190201"); не работает
12 yalanton
 
29.01.19
17:01
все заработало спасибо
13 GazM9ic
 
29.01.19
17:02
(11) не надо рассказывать в чем проблема если нет понимания как это работает

не важно когда и где вставлять. Это надо понять.

Важно КУДА и ВО ЧТО!

Все зависит от существования или нет реквизита в тот момент когда происходит установка значения, если он не существует, то создается переменная, которая удаляется после выхода из процедуры.

Первое что можно сделать, поставить точку останова, и проверить чему равна переменная "дата1" в процедуре "присозданиинасервере". Она не должна быть равна "Неопределено". а должна быть пустой датой. Это значит что будет использован реквизит формы, либо "Объект.дата1" реквизит объекта
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.