Имя: Пароль:
1C
1С v8
Доступ к реквизиту параметра запроса
,
0 ЭЦ
 
13.03.13
13:12
ГОСПОДА !
имеется запрос
ВЫБРАТЬ РАЗЛИЧНЫЕ
   ЕСТЬNULL(СотрудникиОрганизаций.Ссылка, ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо) КАК Сорудник,
   ЕСТЬNULL(СотрудникиОрганизаций.ТекущаяДолжностьОрганизации, &ТЕКСТ_НЕТ_СОТРУДНИКА) КАК Должность,
   ЗарплатаКВыплатеОрганизацийЗарплата.Начислено,
   ЗарплатаКВыплатеОрганизацийЗарплата.Удержано,
   ЗарплатаКВыплатеОрганизацийЗарплата.Сумма
ИЗ
   Документ.ЗарплатаКВыплатеОрганизаций.Зарплата КАК ЗарплатаКВыплатеОрганизацийЗарплата
ЛЕВОЕ СОЕДИНЕНИЕ
   Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
ПО
   ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо = СотрудникиОрганизаций.Физлицо
ГДЕ
   ЗарплатаКВыплатеОрганизацийЗарплата.Ссылка = &Ведомость
// -------------
Нужно добавить проверку :
   И СотрудникиОрганизаций.ПодразделениеОрганизации В ИЕРАРХИИ(&Ведомость.ПодразделениеОрганизации)
т.е. использовать реквизит параметра.
- выдает ошибку - прошу подсказать
Спасибо
//
1 Maxus43
 
13.03.13
13:12
параметром епредавай реквизит параметра отдельно
2 Волшебник
 
13.03.13
13:13
какую ошибку выдаёт?
3 Ork
 
13.03.13
13:14
(0) Добавь еще один параметр и не делай людЯм моск.
4 MSII
 
13.03.13
13:14
А жаль, кстати, что не работает. Можно бы было в любой запрос только один параметр передавать.
5 ЭЦ
 
13.03.13
13:14
(2) Ожидается выражение
И СотрудникиОрганизаций.ПодразделениеОрганизации В ИЕРАРХИИ(&Ведомость<<?>>.ПодразделениеОрганизации
6 ЭЦ
 
13.03.13
13:15
Хочет закрыть скобку после &Ведомость
7 andreymongol82
 
13.03.13
13:25
(6) Ну правильно. Попробуй объявить переменную с именем "Ведомост.ПодразделениеОрганизации" тоже ошибка будет
8 ЭЦ
 
13.03.13
13:27
не придумал ничего лучше вложенного запроса
ВЫБРАТЬ РАЗЛИЧНЫЕ
   ЕСТЬNULL(СотрудникиОрганизаций.Ссылка, ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо) КАК Сорудник,
   ЕСТЬNULL(СотрудникиОрганизаций.ТекущаяДолжностьОрганизации, &ТЕКСТ_НЕТ_СОТРУДНИКА) КАК Должность,
   ЗарплатаКВыплатеОрганизацийЗарплата.Начислено,
   ЗарплатаКВыплатеОрганизацийЗарплата.Удержано,
   ЗарплатаКВыплатеОрганизацийЗарплата.Сумма
ИЗ
   Документ.ЗарплатаКВыплатеОрганизаций.Зарплата КАК ЗарплатаКВыплатеОрганизацийЗарплата
ЛЕВОЕ СОЕДИНЕНИЕ
   Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
ПО
   ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо = СотрудникиОрганизаций.Физлицо
ГДЕ
   ЗарплатаКВыплатеОрганизацийЗарплата.Ссылка = &Ведомость
   И СотрудникиОрганизаций.ПодразделениеОрганизации В ИЕРАРХИИ(
   ВЫБРАТЬ
       Ведомости.Ссылка.ПодразделениеОрганизации
   ИЗ    
       Документ.ЗарплатаКВыплатеОрганизаций.Зарплата КАК Ведомости
   ГДЕ    
         Ведомости.Ссылка = &Ведомость)
9 Волшебник
 
13.03.13
13:28
(8) Можно сделать вторым параметром
10 Maxus43
 
13.03.13
13:28
(8) параметр задать нормально не вариант чтоли? зачем запрос усложнять? в наше время даже железки нужно жалеть
11 ЭЦ
 
13.03.13
13:30
(9,10) Это гемор для юзеров - вместо выбрать ведомость - придется ее открывать смотреть подразделение, запоминать и еще раз выбирать
12 Maxus43
 
13.03.13
13:32
(11) что? параметр передать программно, при чём тут юзеры?
13 ЭЦ
 
13.03.13
13:33
(12) при том что это параметр отчета выбираемый юзером
14 mikecool
 
13.03.13
13:33
(9) ты же сам учил ,как создавать убийца конструкторам )))
(0) пробуй
В ИЕРАРХИИ((&Ведомость).ПодразделениеОрганизации)
15 mikecool
 
13.03.13
13:33
+14 убийцу*
16 Рэйв
 
13.03.13
13:36
(13)Ну и что мешает сделать

Запрос.УстановитьПараметр("ПодразделениеОрганизации",Ведомость.ПодразделениеОрганизации)
17 ЭЦ
 
13.03.13
13:37
(14) И конструктр ругается и пр загрузке грит -ошибка в схеме компоновки данных
(16) Это можно но придется еще и форму отчета программировать.
18 Maxus43
 
13.03.13
13:38
(17) попробуй в параметрах компановки через точку
19 mikecool
 
13.03.13
13:39
(17) еще через 100500 постов узнаем, что это УФ или еще что
сразу надо говорить было, для обычных запросов работает на ура
20 ЭЦ
 
13.03.13
13:42
(19) О каких "обычных запросах" речь?
21 mikecool
 
13.03.13
13:43
(20) Запрос = Новый Запрос;
о таких
22 ЭЦ
 
13.03.13
13:45
(18) Вот это прокатывает.
23 Maxus43
 
13.03.13
13:47
(22) дак сразу говорить надо что СКД)
24 ЭЦ
 
13.03.13
13:50
(23) А без СКД никак нельзя?
25 mikecool
 
13.03.13
13:51
(24) ты определись уже - скд у тебя или нет...
26 Maxus43
 
13.03.13
13:51
(24) зависит от того, чем делаешь. хотя вроде в простых запросах всё равно нельзя (0), но там и не надо, там параметр дополнительный пихай
27 Defender aka LINN
 
13.03.13
13:59
(16) Уж лучше (8)
28 Sammo
 
13.03.13
14:37
Хм, а добавить в ПО (чтобы не стало внутренним)
И СотрудникиОрганизаций.ПодразделениеОрганизации В ИЕРАРХИИ(ЗарплатаКВыплатеОрганизацийЗарплата.ПодразделениеОрганизации)
29 Defender aka LINN
 
13.03.13
14:49
(28) Не взлетит. И слава богу
30 Sammo
 
13.03.13
14:59
К слову, имхо вместо
ЕСТЬNULL(СотрудникиОрганизаций.Ссылка, ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо) КАК Сорудник

Лучше сделать

ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо КАК Сотрудник
31 Sammo
 
13.03.13
15:00
(29) Хм. А через временные?
В первую отобрать документ (ссылка и нужные реквизиты)
Во вторую подразделения, которые в иерархии
И потом сjoin-ить левым первую временную с РС + РС внутренним со второй
32 Defender aka LINN
 
13.03.13
15:31
(31) По чему джойнить будешь?
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.