Имя: Пароль:
1C
Мобильный мир
Как программно задать период в отчете?
0 prorokk
 
22.04.13
15:54
Конфигурация УНФ
Пытаюсь открыть отчет

ОтчетОстатки  = Отчеты.ВедомостьТоваровНаСкладах.Создать();
ФормаОтчета   = ОтчетОстатки.ПолучитьФорму("ФормаОтчета");
ФормаОтчета.Открыть();
ФормаОтчета.ЭлементыФормы.ПолеВводаНачалоПериода.Значение = ТекущаяДата()-7*24*60*60;
ФормаОтчета.ЭлементыФормы.ПолеВводаКонецПериода.Значение = ТекущаяДата();
   
ФормаОтчета.ОбновитьОтчет();


В итоге период стоит не тот что нужно(
Как поправить?
1 SherifSP
 
22.04.13
15:56
(0) СКД?
2 Maxus43
 
22.04.13
15:56
введи руками правильный и посомтри в отладчике как надо ставить программно
3 prorokk
 
22.04.13
15:59
(1) да отчет на СКД
4 Господин ПЖ
 
22.04.13
16:00
(3) ну так посмотри когда они из реквизитов формы в параметры перекладываются...
5 SherifSP
 
22.04.13
16:03
(4) В основном при Изменени поля начало периода, конец периода.
(0)
ЗначениеПараметраНачалоПериода = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("НачалоПериода"));
       ЗначениеПараметраКонецПериода = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("КонецПериода"));
       ЗначениеПараметраПериод = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Период"));
       
       Если ЗначениеПараметраНачалоПериода <> Неопределено Тогда
           ЗначениеПараметраНачалоПериода.Значение = Форма.НачалоПериода;
           ЗначениеПараметраНачалоПериода.Использование = Истина;
       КонецЕсли;
       
       Если ЗначениеПараметраКонецПериода <> Неопределено Тогда
           ЗначениеПараметраКонецПериода.Значение = ?(Форма.КонецПериода = '0001-01-01', Форма.КонецПериода, КонецДня(Форма.КонецПериода));
           ЗначениеПараметраКонецПериода.Использование = Истина;
       КонецЕсли;
       
       Если ЗначениеПараметраПериод <> Неопределено Тогда
           ЗначениеПараметраПериод.Значение = ?(Форма.Период = '0001-01-01', Форма.Период, КонецДня(Форма.Период));
           ЗначениеПараметраПериод.Использование = Истина;
       КонецЕсли;
6 prorokk
 
22.04.13
16:04
(5) тоже нашел уже...
7 prorokk
 
22.04.13
16:06
Сделал так:


ОтчетОстатки.КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("НачалоПериода")).Значение = ТекущаяДата()-7*24*60*60;
   ОтчетОстатки.КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("КонецПериода")).Значение = ТекущаяДата()-7*24*60*60;
8 prorokk
 
22.04.13
16:06
-(7) конец периода только просто ТекущаяДата();
9 SherifSP
 
22.04.13
16:08
(8) Скажу так как в видео Брюс Ли против Емельяненка - Номрально, нормально, нормально
10 prorokk
 
22.04.13
16:09
(9) Улыбнул... Подскажи как короче написать)
11 SherifSP
 
22.04.13
16:11
(10)Так в (7) нормально написано
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.