![]() |
![]() |
![]() |
|
как передать таблицу параметром в запрос | ☑ | ||
---|---|---|---|---|
0
LivingStar
17.07.12
✎
14:38
|
НовыйЗапрос = Новый Запрос;
НовыйЗапрос.Текст = " |ВЫБРАТЬ | Контрагенты.Ссылка КАК Домоуправление |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ | Контрагенты.ПризнакДомоуправление = ИСТИНА | |СГРУППИРОВАТЬ ПО | Контрагенты.Ссылка | |УПОРЯДОЧИТЬ ПО | Контрагенты.Наименование"; ТзСписокДомоуправлений = НовыйЗапрос.Выполнить().Выгрузить(); З_АбонентыДомоуправлений = Новый Запрос; З_АбонентыДомоуправлений.Текст = " |ВЫБРАТЬ | ЗначенияСвойствОбъектовСрезПоследних.Период, | ЗначенияСвойствОбъектовСрезПоследних.Объект, | ЗначенияСвойствОбъектовСрезПоследних.Свойство, | ЗначенияСвойствОбъектовСрезПоследних.Значение |ИЗ | РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних КАК ЗначенияСвойствОбъектовСрезПоследних |ГДЕ | ЗначенияСвойствОбъектовСрезПоследних.Свойство = &Участок | И ЗначенияСвойствОбъектовСрезПоследних.Значение В(&ТзСписокДомоуправлений)"; // З_АбонентыДомоуправлений.УстановитьПараметр("Участок", Справочники.ЗначенияСвойствОбъектов.НайтиПоКоду("000000565")); З_АбонентыДомоуправлений.УстановитьПараметр("ТЗДомоуправления",ТзСписокДомоуправлений); ТзСписокАбонПоДомоупр = З_АбонентыДомоуправлений.Выполнить().Выгрузить(); |
|||
1
х86
17.07.12
✎
14:38
|
ВТ не предлагать?
|
|||
2
HEKPOH
17.07.12
✎
14:38
|
временная таблица в помощь
|
|||
3
HEKPOH
17.07.12
✎
14:39
|
параметром ТЗ никак
|
|||
4
sivalor
17.07.12
✎
14:40
|
массив тебе поможет
|
|||
5
Лефмихалыч
17.07.12
✎
14:41
|
НовыйЗапрос = Новый Запрос;
НовыйЗапрос.Текст = " |ВЫБРАТЬ | Контрагенты.Ссылка КАК Домоуправление |ПОМЕСТИТЬ ВремннаяТаблица |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ | Контрагенты.ПризнакДомоуправление = ИСТИНА | |СГРУППИРОВАТЬ ПО | Контрагенты.Ссылка |; |ВЫБРАТЬ | ЗначенияСвойствОбъектовСрезПоследних.Период, | ЗначенияСвойствОбъектовСрезПоследних.Объект, | ЗначенияСвойствОбъектовСрезПоследних.Свойство, | ЗначенияСвойствОбъектовСрезПоследних.Значение |ИЗ | РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних(, Свойство = &Участок) КАК ЗначенияСвойствОбъектовСрезПоследних ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВременнаяТаблица ПО ЗначенияСвойствОбъектовСрезПоследних.Значение = ВРеменнаяТаблица.Домоуправление"; // |
|||
6
х86
17.07.12
✎
14:43
|
(3)да можно
(0)не хотел писать, но всё же. В твоём случае правильнее делать на ВТ Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТаблицаНарядов", ТаблицаНарядов); Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | Табл.НомерНаряда КАК НомерНаряда |ПОМЕСТИТЬ ВремТаблНарядов |ИЗ | &ТаблицаНарядов КАК Табл |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Табл.НомерНаряда КАК НомерНаряда |ИЗ | ВремТаблНарядов КАК Табл |
|||
7
HEKPOH
17.07.12
✎
14:44
|
(6) и как же ТЗ параметром? только без подмены понятий
|
|||
8
LivingStar
17.07.12
✎
14:46
|
(6) а ВТ там просто связи же, а мне нужно задать фильтр а не связать!!!
|
|||
9
LivingStar
17.07.12
✎
14:47
|
(4) напомни что там массив? я знаю в массив можно выгрузить как раз нужную колонку из таблицы значений!!!
|
|||
10
HEKPOH
17.07.12
✎
14:47
|
(8) соединение и наложит фильтр
|
|||
11
sivalor
17.07.12
✎
14:48
|
З_АбонентыДомоуправлений.УстановитьПараметр("ТЗДомоуправления",ТзСписокДомоуправлений.ВыгрузитьКолонку("Домоуправление"));
(10) прав |
|||
12
LivingStar
17.07.12
✎
14:50
|
(7) хотелось бы понять как это
(10) в каком случае оно наложит фильтр? |
|||
13
х86
17.07.12
✎
14:50
|
(7)я ТЗ в запрос устанавливаю параметром
|
|||
14
HEKPOH
17.07.12
✎
14:51
|
(13) хоть один запрос отработал? :)
|
|||
15
х86
17.07.12
✎
14:52
|
(12)чем тебе ВТ не устраивает?
|
|||
16
LivingStar
17.07.12
✎
14:52
|
(6) ничего не понял из этого запроса
|
|||
17
х86
17.07.12
✎
14:52
|
(14)в (6) рабочий пример
|
|||
18
HEKPOH
17.07.12
✎
14:53
|
(12) в случае левого и внутреннего соединения
|
|||
19
х86
17.07.12
✎
14:53
|
(16)смотри (5), это твой случай
|
|||
20
LivingStar
17.07.12
✎
14:54
|
(11) а как этот параметр потом в запросе то использовать? ошибка на это:
{Форма.ФормаОтчета.Форма(49)}: Ошибка при вызове метода контекста (Выполнить) ТзСписокАбонПоДомоупр = З_АбонентыДомоуправлений.Выполнить().Выгрузить(); по причине: {(11, 52)}: Ожидается выражение "(" И ЗначенияСвойствОбъектовСрезПоследних.Значение В <<?>>&ТзСписокДомоуправлений |
|||
21
sivalor
17.07.12
✎
14:57
|
(20) | И ЗначенияСвойствОбъектовСрезПоследних.Значение В(&ТЗДомоуправления)";
ты бы может книжек сначала почитал, не? |
|||
22
HEKPOH
17.07.12
✎
14:59
|
(17) и где ты параметризуешь запрос таблицей значений? Ты ТЗ помещаешь в ВТ. Я же сказал, без подмены понятий, а ты юлить начинаешь. Или не силен в предметной области?
|
|||
23
LivingStar
17.07.12
✎
15:02
|
спасибо за подсказки
попробовал так, | АбонентыДомоуправлений = "ВЫБРАТЬ | Контрагенты.Ссылка КАК Домоуправление |ПОМЕСТИТЬ ВТ_Домоуправления |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ | Контрагенты.ПризнакДомоуправление = ИСТИНА | |СГРУППИРОВАТЬ ПО | Контрагенты.Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЗначенияСвойствОбъектовСрезПоследних.Период, | ЗначенияСвойствОбъектовСрезПоследних.Объект, | ЗначенияСвойствОбъектовСрезПоследних.Свойство, | ЗначенияСвойствОбъектовСрезПоследних.Значение, | ВТ_Домоуправления.Домоуправление |ИЗ | РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних(, Свойство = &Участок) КАК ЗначенияСвойствОбъектовСрезПоследних | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Домоуправления КАК ВТ_Домоуправления | ПО ЗначенияСвойствОбъектовСрезПоследних.Значение = ВТ_Домоуправления.Домоуправление"; | завтра буду допиливать, |
|||
24
х86
17.07.12
✎
15:05
|
(22)чо?
|
|||
25
LivingStar
17.07.12
✎
15:16
|
странно, но вот эта конструкция ничего не выбирает (((
З_1_АбонентыДомоуправлений = Новый Запрос; З_1_АбонентыДомоуправлений.Текст = " |ВЫБРАТЬ | Контрагенты.Ссылка КАК Домоуправление |ПОМЕСТИТЬ ВТ_Домоуправления |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ | Контрагенты.ПризнакДомоуправление = ИСТИНА | |СГРУППИРОВАТЬ ПО | Контрагенты.Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЗначенияСвойствОбъектовСрезПоследних.Период КАК Период, | ЗначенияСвойствОбъектовСрезПоследних.Объект КАК Абонент, | ЗначенияСвойствОбъектовСрезПоследних.Свойство КАК Участок, | ЗначенияСвойствОбъектовСрезПоследних.Значение КАК Домоуправление |ИЗ | РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних(, Свойство = &Участок) КАК ЗначенияСвойствОбъектовСрезПоследних | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Домоуправления КАК ВТ_Домоуправления | ПО ЗначенияСвойствОбъектовСрезПоследних.Значение = ВТ_Домоуправления.Домоуправление"; З_1_АбонентыДомоуправлений.УстановитьПараметр("Участок",Справочники.ЗначенияСвойствОбъектов.НайтиПоКоду("000000565")); Тз_1_АбонентовПоДомоупр_1 = З_1_АбонентыДомоуправлений.Выполнить().Выгрузить(); |
|||
26
Рэйв
17.07.12
✎
15:17
|
или Свойсво=&Участок нет такого
или Контрагенты.ПризнакДомоуправление = ИСТИНА отсуствует |
|||
27
х86
17.07.12
✎
15:19
|
РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних(, Свойство = &Участок и Объект в(выбрать * из ВТ_Домоуправления
) |
|||
28
LivingStar
17.07.12
✎
15:22
|
(26) да вы правы, тама за место справочника, ПланыВидовХарактеристик !!!
(27) спасибо и так попробую!!! |
|||
29
LivingStar
17.07.12
✎
15:26
|
З_1_АбонентыДомоуправлений = Новый Запрос;
З_1_АбонентыДомоуправлений.Текст = "ВЫБРАТЬ | Контрагенты.Ссылка КАК Домоуправление |ПОМЕСТИТЬ ВТ_Домоуправления |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ | Контрагенты.ПризнакДомоуправление = ИСТИНА | |СГРУППИРОВАТЬ ПО | Контрагенты.Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЗначенияСвойствОбъектовСрезПоследних.Период КАК Период, | ЗначенияСвойствОбъектовСрезПоследних.Объект КАК Абонент, | ЗначенияСвойствОбъектовСрезПоследних.Свойство КАК Участок, | ЗначенияСвойствОбъектовСрезПоследних.Значение КАК Домоуправление |ИЗ | РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних(, Свойство = &Участок) КАК ЗначенияСвойствОбъектовСрезПоследних | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Домоуправления КАК ВТ_Домоуправления | ПО ЗначенияСвойствОбъектовСрезПоследних.Значение = ВТ_Домоуправления.Домоуправление"; З_1_АбонентыДомоуправлений.УстановитьПараметр("Участок",ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("000000565")); Тз_1_АбонентовПоДомоупр_1 = З_1_АбонентыДомоуправлений.Выполнить().Выгрузить(); выполнилось, но долго долго стояло, пока я запустил просмотр таблицы по Shift+F9+F2 |
|||
30
Kashemir
17.07.12
✎
15:31
|
Если кому нужно, допилил к стандартной консольке с ИСТ возможность использования ТЗ как параметров http://infostart.ru/public/78001/
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |