Имя: Пароль:
1C
1С v8
ПустуюДату в запросе. Чего-то не доганяю.
0 zippygrill
 
25.07.13
10:55
есть конструкция в консоле запросов:
То что закомментированно всегда почему-то дает дату 01010001. Просто в одно важно отчете всегда стояла конструкция "есть null" и оказывается она у меня в консоле отчета не выдает то что мне нужно.
Параметр &ПустаяДата оставляю пустой.

Как так?
    
ВЫБОР
        КОГДА &ИспользоватьЕдинуюДатуАкцидентов
            ТОГДА КОНЕЦПЕРИОДА(&ДатаКон, ДЕНЬ)
        //ИНАЧЕ isnull(ПоступлениеТоваровУслугВНТТТовары.СерияНоменклатуры.СрокГодности, началопериода(ПоступлениеТоваровУслугВНТТТовары.Ссылка.Дата, день))
        //ИНАЧЕ выбор когда ПоступлениеТоваровУслугВНТТТовары.СерияНоменклатуры.СрокГодности есть null тогда началопериода(ПоступлениеТоваровУслугВНТТТовары.Ссылка.Дата, день) иначе ПоступлениеТоваровУслугВНТТТовары.СерияНоменклатуры.СрокГодности Конец
        ИНАЧЕ выбор когда ПоступлениеТоваровУслугВНТТТовары.СерияНоменклатуры.СрокГодности = &ПустаяДата тогда началопериода(ПоступлениеТоваровУслугВНТТТовары.Ссылка.Дата, день) иначе ПоступлениеТоваровУслугВНТТТовары.СерияНоменклатуры.СрокГодности конец
    КОНЕЦ,
1 zippygrill
 
25.07.13
10:56
опечатался *одни важный отчет
2 mehfk
 
25.07.13
10:59
А вопрос какой?
3 zippygrill
 
25.07.13
11:00
могу на видео показать эту байду.
4 zippygrill
 
25.07.13
11:01
что лучше использовать для проверки пустой даты? функцию или параметр?
5 mehfk
 
25.07.13
11:02
(4) NULL это не то же самое что ДАТАВРЕМЯ(1,1,1)
6 zippygrill
 
25.07.13
11:03
мат. часть. замечательно.
7 mehfk
 
25.07.13
11:04
(6) Сравни
ВЫБРАТЬ
    НАЧАЛОПЕРИОДА(NULL, ДЕНЬ) КАК Поле1,
    ДАТАВРЕМЯ(1, 1, 1) КАК Поле2
8 zippygrill
 
25.07.13
11:09
ни разу не использовал ДатаВремя. спасибо, возьму на вооружение.
а использование "isnull" или есть Null для типа дата это совсем не рекомендуется да?
9 zippygrill
 
25.07.13
11:34
а по какой причине работа функции ДатаВремя() отличается когда запрос выполняется по документам и когда по регистру?
10 mikecool
 
25.07.13
11:35
(8) вопрос некорректен, "isnull" или есть Null надо использовать для проверки на нул и пофик какой тип данных
11 zippygrill
 
25.07.13
11:37
возьми и делаи тоже самое только по документам

        ВЫБРАТЬ
    ТоварыОрганизацийОстаткиИОбороты.Регистратор,
    ТоварыОрганизацийОстаткиИОбороты.Номенклатура,
    ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры,
    ТоварыОрганизацийОстаткиИОбороты.КоличествоОборот,
    естьnull(ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры, началопериода(ТоварыОрганизацийОстаткиИОбороты.Регистратор.Дата, день)),
    выбор когда ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры.СрокГодности = &ПустаяДата тогда началопериода(ТоварыОрганизацийОстаткиИОбороты.Регистратор.Дата, день) иначе ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры.СрокГодности конец,
    выбор когда ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры.СрокГодности есть null тогда началопериода(ТоварыОрганизацийОстаткиИОбороты.Регистратор.Дата, день) иначе ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры.СрокГодности Конец,
    выбор когда ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры.СрокГодности = датаВремя(1,1,1) тогда началопериода(ТоварыОрганизацийОстаткиИОбороты.Регистратор.Дата, день) иначе ТоварыОрганизацийОстаткиИОбороты.СерияНоменклатуры.СрокГодности Конец

    
ИЗ
    РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты(, , Регистратор, , ) КАК ТоварыОрганизацийОстаткиИОбороты
ГДЕ
    ТоварыОрганизацийОстаткиИОбороты.Регистратор = &Регистратор