|
Подскажите по простейшему запросу плз. | ☑ | ||
---|---|---|---|---|
0
BigShmax
30.08.11
✎
17:36
|
Есть документ ЗаказПокупателя и есть регистр сведений с информацией о ЗаказПокупателя/ФИО/Телефон/Адрес. задача если по заказу есть инфа в РС то брать в печатную форму из него, иначе из заказа.
привожу поделку та что с ошибками ЗапросПодстановка = Новый Запрос; ЗапросПодстановка.Текст = "ВЫБРАТЬ | ИнформацияОКонечномПотребителе.ФИОКонтрагента |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИнформацияОКонечномПотребителе КАК ИнформацияОКонечномПотребителе | ПО ЗаказПокупателя.Ссылка = ИнформацияОКонечномПотребителе.ЗаказПокупателя"; .... Область.Параметры.Контрагент = ЗапросПодстановка.Контрагент; ЗапросПодстановка.УстановитьПараметр("ЗаказПокупателя", ЗаказПокупателя); |
3 7 |
||
1
BigShmax
30.08.11
✎
17:37
|
ну параметр ессно идет сразу под запросом а вывод позже
|
|||
2
BigShmax
30.08.11
✎
17:40
|
тьфу
в ВЫБРАТЬ конечно же | ЕСТЬNULL(ИнформацияОКонечномПотребителе.ФИОКонтрагента, ЗаказПокупателя.Контрагент) КАК Контрагент, |
4 |
||
3
Eugene_life
30.08.11
✎
17:41
|
(0) как-то так:
.... запрос затем: ЗапросПодстановка.УстановитьПараметр("ЗаказПокупателя", ЗаказПокупателя); РезультатЗапроса = ЗапросПодстановка.Выполнить().Выбрать(); Пока РезультатЗапроса.Следующий() Цикл Область.Параметры.Контрагент = ЗапросПодстановка.Контрагент; КонецЦикла; |
6 |
||
4
Eugene_life
30.08.11
✎
17:41
|
(2) см выше - запрос надо сначала выполнить и выбрать данные, а потом уже перебирать выборку
|
8 |
||
5
WF72
30.08.11
✎
17:42
|
Параметр не обязательно должен идти под запросом.
Вопроса я не увидел. В чем собсно проблема? |
|||
6
Eugene_life
30.08.11
✎
17:43
|
(3) ошибся маленько:
Пока РезультатЗапроса.Следующий() Цикл Область.Параметры.Контрагент = РезультатЗапроса.ФИОКонтрагента; КонецЦикла; |
|||
7
luckyluke
30.08.11
✎
17:43
|
(0) ты наверное про это:
ВЫБРАТЬ ЕСТЬNULL(ИнформацияОКонечномПотребителе.ФИОКонтрагента, ЗаказПокупателя.Контрагент) КАК Контрагент, .... |
12 |
||
8
BigShmax
30.08.11
✎
17:44
|
я привел запрос после того как проигнорировал ошибки. не могу собрать запрос :-(
(4) Выборка не нужна. на один заказ не больше одной строки в РС мне тупо нужно выбрать контрагента из заказа и из РС . Инфа из РС приоритетнее. |
10 |
||
9
BigShmax
30.08.11
✎
17:47
|
на те заказы на которые нет инфы в РС выводим из документа.
немогу собрать запрос на одно поле из двух таблиц :-( |
11 12 |
||
10
Eugene_life
30.08.11
✎
17:47
|
(8) все равно запрос надо выполнить и выбрать. Просто вместо цикла пишешь
Если РезультатЗапроса.Следующий() Тогда Область.Параметры.Контрагент = РезультатЗапроса.Контрагент; КонецЕсли; |
|||
11
Fram
30.08.11
✎
17:48
|
(9) вроде все верно в запросе.. в чем ошибка?
|
13 |
||
12
luckyluke
30.08.11
✎
17:50
|
||||
13
hhhh
30.08.11
✎
17:52
|
||||
14
BigShmax
30.08.11
✎
17:54
|
ЗапросПодстановка = Новый Запрос;
ЗапросПодстановка.Текст = "ВЫБРАТЬ |ЕСТЬNULL(ИнформацияОКонечномПотребителе.ФИОКонтрагента, ЗаказПокупателя.Контрагент) КАК Контрагент |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИнформацияОКонечномПотребителе КАК ИнформацияОКонечномПотребителе | ПО ЗаказПокупателя.Ссылка = ИнформацияОКонечномПотребителе.ЗаказПокупателя"; ЗапросПодстановка.УстановитьПараметр("ЗаказПокупателя", ЗаказПокупателя); пытаюсь войтиконструктором и получаю ошибку (6,6) Неоднозначное поле "ЗаказПокупателя.Ссылка" ПО <?> ЗаказПокупателя.Ссылка = ИнформацияОКонечномПотребителе.ЗаказПокупателя |
16 |
||
15
BigShmax
30.08.11
✎
17:55
|
фиг с ней с областью откинем все на текущий момент не могу завести запрос.
|
17 |
||
16
Fram
30.08.11
✎
17:58
|
(14) сделай Документ.ЗаказПокупателя КАК ЗаказПокупателя2 например
|
18 |
||
17
shuhard
30.08.11
✎
17:59
|
(15) Неоднозначное поле
и что в ошибке не понятно ? ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя_ххх |
18 |
||
18
BigShmax
30.08.11
✎
18:00
|
19 |
|||
19
Fram
30.08.11
✎
18:04
|
(18) ИнформацияОКонечномПотребителе.ЗаказПокупателя
видишь тут тоже ЗаказПокупателя |
21 |
||
20
BigShmax
30.08.11
✎
18:08
|
ну тада допинайте мой разум чтобы это вывести и я буду счастлив :-)
Результат = ЗапросПодстановка.Выполнить(); Область = Макет.ПолучитьОбласть("ШапкаТовары"); Область.Параметры.Контрагент = Результат.Контрагент; дает {Форма.Форма.Форма(2222)}: Поле объекта не обнаружено (Контрагент) Область.Параметры.Контрагент = Результат.Контрагент; Итоги пробовал по контрагенту |
22 |
||
21
BigShmax
30.08.11
✎
18:09
|
(19) спасиб, ошибка действительно несла в себе всю инфу
|
|||
22
Fram
30.08.11
✎
18:26
|
(20) Открой переменную Результат в отладчике.. Думаю сам поймешь
|
|||
23
BigShmax
30.08.11
✎
18:31
|
ща чайку хлебну разберусь - главное что в консоли открыл то что мне надо там есть :-)
|
|||
24
BigShmax
30.08.11
✎
18:37
|
Метод объекта следующий гооврит не обнаружен :-(
я понимаю что нужно выполнить запрос и взять из него то что вижу в консоли но не дается сволочь. оба обхода ругаются одинаково :-( РезультатЗапроса = ЗапросПодстановка.Выполнить(); Область = Макет.ПолучитьОбласть("ШапкаТовары"); Пока РезультатЗапроса.Следующий() Цикл Область.Параметры.Контрагент = РезультатЗапроса.Контрагент; КонецЦикла; //Если РезультатЗапроса.Следующий() Тогда // Область.Параметры.Контрагент = РезультатЗапроса.Контрагент; //КонецЕсли; |
|||
25
BigShmax
30.08.11
✎
18:38
|
{Форма.Форма.Форма(2225)}: Метод объекта не обнаружен (Следующий)
Пока РезультатЗапроса.Следующий() Цикл |
26 |
||
26
Eugene_life
30.08.11
✎
18:39
|
(25) РезультатЗапроса = ЗапросПодстановка.Выполнить().Выбрать();
|
27 |
||
27
BigShmax
30.08.11
✎
18:42
|
28 |
|||
28
Fram
30.08.11
✎
19:18
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |