|
хитрая выборка для табеля учёта рабочего времени
| ☑ |
0
Kurbash
17.08.15
✎
09:43
|
Всем привет. Такая задача: есть регистр с полями КоличествоЧасов1, КоличествоЧасов2 и т.д до 31-для табеля самописного сделал, как можно в запросе обратиться к определенному реквизиту? например День(Дата) нам даст 1, как вытянуть значение КоличествоЧасов1? МОжно конечно пульнуть результат одного запроса в ТЗ и там выбрат то что нужно а можно как нибудь в одном запросе?
|
|
1
Nuobu
17.08.15
✎
09:47
|
(0) Выбор Когда не предлагать?
|
|
2
piter3
17.08.15
✎
09:48
|
собрать текст запроса
|
|
3
Kurbash
17.08.15
✎
09:51
|
(1) выбор Когда как поможет?
|
|
4
Nuobu
17.08.15
✎
09:58
|
(3) Выбор Когда День(Дата) = 1 Тогда КоличествоЧасов1
Иначе Когда День(Дата) = 2 Тогда КоличествоЧасов2
Иначе
КоличествоЧасов3
Конец КАК КоличествоЧасовВДне
Как-то так поможет.
|
|
5
ДенисЧ
17.08.15
✎
09:58
|
выбор
когда день(ДАта) = 1 Тогда КоличествоЧасов1
когда день(ДАта) = 2 Тогда КоличествоЧасов2
...
КОнец Как КоличествоЧасов
|
|
6
Kurbash
17.08.15
✎
10:03
|
у меня так было в первоначальном варианте но конструкция громоздкая получилась, думал может хитрый ход есть
|
|
7
Nuobu
17.08.15
✎
10:04
|
(6) Тоесть 31 реквизит тебя не смутил?
|
|
8
SeraFim
17.08.15
✎
10:04
|
ВЫБРАТЬ
1 КАК День,
МойТабель.КоличествоЧасов1 КАК КоличествоЧасов
ПОМЕСТИТЬ ВТДни
Из
МойТабель КАК МойТабель
ОБЪЕДИНИТЬ
ВЫБРАТЬ
2,
МойТабель.КоличествоЧасов2
Из
МойТабель КАК МойТабель
.....
ОБЪЕДИНИТЬ
ВЫБРАТЬ
31,
МойТабель.КоличествоЧасов31
Из
МойТабель КАК МойТабель
;
ВЫБРАТЬ
ВТДни.КоличествоЧасов
ИЗ
ВТДни КАК ВТДни
ГДЕ
ВТДни.День = &НужныйДень
|
|
9
Kurbash
17.08.15
✎
10:05
|
(7)-нет не смутил- в ЗУПе так же вышли из положения
(8)-транспонация?
|
|
10
SeraFim
17.08.15
✎
10:06
|
(6) для хитрого кода нужно проектировать нормально.
В табеле 31 реквизит, так нафига 31 реквизит в Регистре делать?
Делай измерение Дата и ресурс КоличествоЧасов и выгребай уже из регистра
|
|
11
Nuobu
17.08.15
✎
10:07
|
(9) Если ты про табель, то да.
А вот про остальное - читай (10)
|
|
12
SeraFim
17.08.15
✎
10:09
|
Хотя если твоя задача исключительно "в запросе обратиться к определенному реквизиту", то тебе в (2) подсказали.
"ВЫБРАТЬ
МойТабель.КоличествоЧасов"+НомерДня+" КАК КоличествоЧасов
ПОМЕСТИТЬ ВТДни
Из
МойТабель КАК МойТабель"
|
|
13
Kurbash
17.08.15
✎
10:11
|
всем спасибо, буду рыть:)
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший