|
Необязательный параметр в запросе для СКД | ☑ | ||
---|---|---|---|---|
0
ЭЦ
07.10.13
✎
12:01
|
ГОСПОДА !
Имеется запрос в СКД требуется чтобы параметр &ПОДР был не обязательным. т.е. при не заполненном значении выводились сотрудники всех подразделений. Прошу подсказать как это записать. Спасибо //-------------------------------------- ВЫБРАТЬ РАЗЛИЧНЫЕ РаботникиОрганизацийСрезПоследних.Сотрудник, &ПериодНач КАК Период ПОМЕСТИТЬ ВТ_СОТР ИЗ РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ПериодНач, ) КАК РаботникиОрганизацийСрезПоследних ГДЕ НЕ РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение) И (РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации В ИЕРАРХИИ (&ПОДР)) ОБЪЕДИНИТЬ ВЫБРАТЬ РаботникиОрганизаций.Сотрудник, РаботникиОрганизаций.Период ИЗ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций ГДЕ РаботникиОрганизаций.Период МЕЖДУ &ПериодНач И &ПериодКон И (НЕ РаботникиОрганизаций.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)) И РаботникиОрганизаций.ПодразделениеОрганизации В ИЕРАРХИИ(&ПОДР) |
|||
1
Defender aka LINN
07.10.13
✎
12:03
|
Как же вы зае...
Это называется ОТБОР, а не параметр. |
|||
2
Naumov
07.10.13
✎
12:05
|
убираешь из запроса этот параметр, а на закладке "компоновка-условия" добавляй поля с необязательными отборами.
Эти поля будут доступны для настройки в пользовательском режиме, их можно будет не учитывать. |
|||
3
palpetrovich
07.10.13
✎
12:05
|
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ПериодНач, {ПодразделениеОрганизации = &Подр}) КАК РаботникиОрганизацийСрезПоследних
|
|||
4
DexterMorgan
07.10.13
✎
12:11
|
(2) Ну нафига?
(0) убери его вообще из запроса и добавь в настройках схемы как отбор. Скд умнее тебя, она знает что такое параметры вирт таблицы |
|||
5
ЭЦ
07.10.13
✎
12:14
|
(1) Прошу пояснить мысль по отборы. Где эти отборы определять.
(2) "Компоновка-условия" это я так понимаю в конструкторе запроса |
|||
6
Defender aka LINN
07.10.13
✎
12:16
|
(5) Именно там
|
|||
7
NickOmsk
07.10.13
✎
12:16
|
стаж 7 лет, однако
|
|||
8
Naumov
07.10.13
✎
12:20
|
(7) И что?
|
|||
9
NickOmsk
07.10.13
✎
12:22
|
ни-че-го
|
|||
10
ЭЦ
07.10.13
✎
12:24
|
Рекомендация Palpetrovich -а прокатила
|
|||
11
ЭЦ
07.10.13
✎
12:24
|
Щас попробуем с закладкой Условия разобраться
|
|||
12
roman52
07.10.13
✎
12:26
|
ежели не через СКД, то
ВЫБОР КОГДА &ПОДР=ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяСсылка) ТОГДА ИСТИНА ИНАЧЕ РаботникиОрганизаций.ПодразделениеОрганизации В ИЕРАРХИИ(&ПОДР) КОНЕЦ |
|||
13
Defender aka LINN
07.10.13
✎
12:28
|
(12) За такое надо на принудительную пересадку рук отправлять
|
|||
14
roman52
07.10.13
✎
12:30
|
(13) за НЕ использование СКД?
|
|||
15
ЭЦ
07.10.13
✎
12:30
|
(12) Не уверен что невыбраный параметр = ПустаяСсылка
|
|||
16
roman52
07.10.13
✎
12:31
|
(15) &ПОДР же будет заполняться из контрола на форме?
|
|||
17
ЭЦ
07.10.13
✎
12:37
|
Да у Palpetrovich-а СКД пустую ссылку интерпретирует как ВСЕ ПОДРАЗДЕЛЕНИЯ
|
|||
18
DexterMorgan
07.10.13
✎
13:02
|
(6) Объясни, плз, зачем в данном случае указывать необязательный параметр на закладке компоновка? Не проще ли пользователю самому предоставить выбирать нужный ему отбор?
|
|||
19
ЭЦ
07.10.13
✎
13:05
|
(4) Убрал из запрса. Пытаюсь добавить как отбор.
СКД->Настройки->Отбор-> А тут в доступных полях нет никаких параметров виртуальной таблицы |
|||
20
ЭЦ
07.10.13
✎
13:08
|
(18) У пользователя вирт таблица "СрезПоследних" не доступна - поэтому
|
|||
21
ЭЦ
07.10.13
✎
13:09
|
тут же два запроса объединяются с одним значением параметра
|
|||
22
Defender aka LINN
07.10.13
✎
13:13
|
(14) Не обязательно СКД. Но если нужен отбор - то и делай, ять, отбор, платформа способна условия в запросе проставлять в разы ловчее, чем средний одинэснег.
(19) А что ты сделал, чтобы было? |
|||
23
catena
07.10.13
✎
13:16
|
А ничего, что условие на подразделение в виртуальной таблице и на выборку в данном случае дадут абсолютно разные результаты?
|
|||
24
ЭЦ
07.10.13
✎
13:17
|
(22) Да я собственно только что убрал &ПОДР из запроса. Если его не убирать тогда он и в доступных полях отбора появляется
|
|||
25
ЭЦ
07.10.13
✎
13:18
|
(23) Щас это пока не важно -о другом спич
|
|||
26
Defender aka LINN
07.10.13
✎
13:36
|
(23) И?
|
|||
27
ДемонМаксвелла
07.10.13
✎
13:42
|
(24) флажок "Обязательное поле" попробуй поставить
|
|||
28
catena
07.10.13
✎
13:53
|
(26)Да нет, просто в ракурсе (0) и (3) обратила на это внимание.
|
|||
29
ЭЦ
07.10.13
✎
14:07
|
(27) Подозреваю что Подразделение надо в поля выборки переносить а на него уже отбор накладывать, причем в пользовательском режиме :
//-------------------------------------- ВЫБРАТЬ РАЗЛИЧНЫЕ РаботникиОрганизацийСрезПоследних.Сотрудник, РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации,//!! &ПериодНач КАК Период ПОМЕСТИТЬ ВТ_СОТР ИЗ РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ПериодНач, ) КАК РаботникиОрганизацийСрезПоследних ГДЕ НЕ РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение) И (РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации В ИЕРАРХИИ (&ПОДР)) ОБЪЕДИНИТЬ ВЫБРАТЬ РаботникиОрганизаций.Сотрудник, РаботникиОрганизацийСрез.ПодразделениеОрганизации,//!! РаботникиОрганизаций.Период ИЗ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций ГДЕ РаботникиОрганизаций.Период МЕЖДУ &ПериодНач И &ПериодКон И (НЕ РаботникиОрганизаций.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |