Имя: Пароль:
1C
1С v8
Почему в регистре сведений сред последних нельзя передать условие?
,
0 Vexcel
 
26.08.13
13:28
Ну не могу понять логику... Посоветуйте где почитать или на пальцах может объясните.
Вот допустим есть виртуальная таблица РегистрСведений.РаботникиОрганизаций.СрезПоследних
Мне нужен список работников организации на определённую дату, и что бы ЗанимаемыхСтавок у них было не равно нулю. Для меня логично написать так
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&Дата, ЗанимаемыхСтавок <> 0)
почему результат этого будет бредятина какая то?
Почему мне условие нужно писать в ГДЕ?
1 shuhard
 
26.08.13
13:29
(0) с какой целью создан топик ?
2 shamannk
 
26.08.13
13:29
ЗанимаемыхСтавок ресурс!
3 ptiz
 
26.08.13
13:30
(0) "Почему мне условие нужно писать в ГДЕ?" - потому что ты хочешь "список работников организации на определённую дату, и что бы ЗанимаемыхСтавок у них было не равно нулю".
4 MSOliver
 
26.08.13
13:33
(0) а ты спрашиваешь когда либо ставок не равно нулю
5 MSOliver
 
26.08.13
13:34
Проф разработка, реализация прикладных задач описан механизм среза
6 Vexcel
 
26.08.13
13:35
(1) с целью того что никак не пойму почему нужно делать так (2) Т.е. на измерения я могу накладывать условия в виртуальной таблице?
(3) (4) ну почему же? я конкретно указываю, что мне нужно на Дату и что бы при этом ЗанимаемыхСтавок <> 0. Если бы я Дату не указал бы, то тогда да. А так получается дату указал, а она не работает.
(5) Спасибо, пойду найду.
7 shamannk
 
26.08.13
13:37
(6) Да.Только это не условия а параметры виртуальной табл.
8 ptiz
 
26.08.13
13:37
(6) Условие работает: отсекает все записи, в которых ЗанимаемыхСтавок <> 0. А потом из оставшихся даёт срез последних.
9 ptiz
 
26.08.13
13:37
Вернее, отсекает нулевые.
10 shamannk
 
26.08.13
13:39
(8) Точно не наоборот?
11 MSOliver
 
26.08.13
13:41
(10) точно, сначала отбор по условию а потом группировка по периоду
12 Lama12
 
26.08.13
13:45
(0) На ИСТ есть подробное описание.
13 shamannk
 
26.08.13
13:58
(8)Курс евро на 23.08.13 = 44,2765 на сегодня 44,1022. По вашей логике запрос отберет курсы где курс больше 44,2 и по ним даст срез последних?
Выбрать
        Курсы.Период,
    Курсы.Валюта,
    Курсы.Курс
ИЗ
    РегистрСведений.КурсыВалют.СрезПоследних(, Валюта = &Евро) КАК Курсы
ГДЕ
    Курсы.Курс > 44.2
Что не так. Проверьте сами.
14 hhhh
 
26.08.13
14:10
(13) работает ведь наоборот. Сначала срез последних, а потом ГДЕ. Ваш запрос должен выдать пусто.
15 shamannk
 
26.08.13
14:10
(14) Совершенно верно.
16 MSOliver
 
26.08.13
14:27
(13) а если Курс больше 44.2 в параметры засунуть?
17 shamannk
 
26.08.13
14:44
(16) RTFM