Имя: Пароль:
1C
1С v8
программно узнать дату создания документа
0 lero4ka23
 
02.04.14
12:33
Пытаюсь из регистра сведений вытащить в форму списка документа первую дату версии, но ничего не записывает и ошибки не выдаёт.Что не так сделала подскажите, пожалуйста.

Процедура ОбработкаПроведения(Отказ, Режим)

    Запрос = Новый Запрос;
    Запрос.Текст ="ВЫБРАТЬ ПЕРВЫЕ 1
                  |    ВерсииОбъектов.ДатаВерсии КАК ДатаВерсии,
                  |    ВерсииОбъектов.НомерВерсии
                  |ИЗ
                  |    РегистрСведений.ВерсииОбъектов КАК ВерсииОбъектов
                  |ГДЕ
                  |    ВерсииОбъектов.НомерВерсии = &НомерВерсии
                  |    И ВерсииОбъектов.ДатаВерсии = &ДатаВерсии
                  |
                  |УПОРЯДОЧИТЬ ПО
                  |    ДатаВерсии";
                  Запрос.УстановитьПараметр("ДатаВерсии", ДатаВерсии);
                                   Результат = Запрос.Выполнить().Выгрузить();
                  Пока Результат.Следующий() Цикл
                           
                  КонецЦикла;        
КонецПроцедуры
1 simol
 
02.04.14
12:46
А передать документ по которому дату узнать хочешь?
Ведется ли версионирование по тому типу документов?
2 barrgand
 
02.04.14
12:47
(0) Что это?
Отбор на объект накладывать надо. Регистр периодический должен быть. Срез первых использовать
3 lero4ka23
 
02.04.14
12:48
то есть если регистр непереодический так нельзя сделать?
4 lero4ka23
 
02.04.14
12:49
версионирование по документу ведется
5 barrgand
 
02.04.14
12:50
(3) Можно, как в (0), только отбор по объекту
6 barrgand
 
02.04.14
12:51
(3) Но лучше переделать регистр =)
7 lero4ka23
 
02.04.14
12:52
вот так
Запрос = Новый Запрос;
    Запрос.Текст ="ВЫБРАТЬ ПЕРВЫЕ 1
                  |    ВерсииОбъектов.ДатаВерсии КАК ДатаВерсии,
                  |    ВерсииОбъектов.НомерВерсии,
                  |    ВерсииОбъектов.Объект,
                  |    ВерсииОбъектов.ВерсияОбъекта
                  |ИЗ
                  |    РегистрСведений.ВерсииОбъектов КАК ВерсииОбъектов
                  |ГДЕ
                  |    ВерсииОбъектов.Объект = &Ссылка
                  |    И ВерсииОбъектов.ВерсияОбъекта = &ВерсияОбъекта
                  |    И ВерсииОбъектов.ДатаВерсии = &ДатаВерсии
                  |
                  |УПОРЯДОЧИТЬ ПО
                  |    ДатаВерсии";
                  Запрос.УстановитьПараметр("Объект", Ссылка);
                  Запрос.УстановитьПараметр("ДатаВерсии", ДатаВерсии);
                  
                  Результат = Запрос.Выполнить().Выгрузить();
                  Пока Результат.Следующий() Цикл
                           
                  КонецЦикла;
8 lero4ka23
 
02.04.14
12:52
регистр менять точно нельзя
9 lero4ka23
 
02.04.14
12:53
всё равно не работает
10 Maxus43
 
02.04.14
12:53
Посмотри внимательно на регистр, там нет реквизита ВидОперации разве? Тебе надо отбор по Обхект и ВидОперации - Добавление
11 barrgand
 
02.04.14
12:53
(7) Убрать ДатаВерсии и ВерсияОбъекта
12 Maxus43
 
02.04.14
12:54
|    И ВерсииОбъектов.ВерсияОбъекта = &ВерсияОбъекта
                  |    И ВерсииОбъектов.ДатаВерсии = &ДатаВерсии

убери, зачем оно? Только по Объект с упорядочиванием по дате
13 lero4ka23
 
02.04.14
12:56
убрала всё равно не работает, может не в модуле документа написать, а где в форме списка?
14 barrgand
 
02.04.14
12:58
(7) Вообще ругаться должен на отсутствие параметров, у тебя при отладке заходит в обработку проведения?
15 Maxus43
 
02.04.14
12:59
что не работает?

                  Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
                  Пока Выборка.Следующий() Цикл
                     Сообщить("Первый: " + Выборка.ДатаВерсии);
                  КонецЦикла;
16 barrgand
 
02.04.14
13:00
(13) Куда на форму списка ты хочешь поместить дату создания?
17 lero4ka23
 
02.04.14
13:01
(16) да
18 Maxus43
 
02.04.14
13:01
(17) там был вопрос который предполагает совершенно другой ответ...
19 lero4ka23
 
02.04.14
13:02
20 lero4ka23
 
02.04.14
13:03
хочу чтобы дата попадала в поле дата версии
21 Леша1с
 
02.04.14
14:18
(20) а ТП кто обрабатывать будет? Запрос?
22 Maxus43
 
02.04.14
14:24
Динамический список с произвольным запросом можно замутить, цепанув левым соединением к документам регистр, МИНИМУМ(ДатаВерсии) там, будет медленней список работать конечно, но результат нужный получишь