|
язык запросов: два реквизита в одно поле | ☑ | ||
---|---|---|---|---|
0
PiotrLoginov
24.01.13
✎
11:50
|
Здравствуйте всем и удачного дня. Если нетрудно, дайте пожалуйста пример объединения двух реквизитов в одно поле. Поясню: мне нужно получить список партнеров и родитель в одном поле из такого запроса:
ВЫБРАТЬ Партнеры.Ссылка КАК Партнер, ВложенныйЗапрос.Ссылка КАК Родитель ИЗ (ВЫБРАТЬ Партнеры.Ссылка КАК Ссылка ИЗ Справочник.Партнеры КАК Партнеры ГДЕ Партнеры.Клиент = &Клиент) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Партнеры КАК Партнеры ПО ВложенныйЗапрос.Ссылка = Партнеры.Родитель Сейчас результат запроса - два поля Партнер и Родитель. Надо результаты запроса поместить в одно поле. Заранее спасибо за подсказку. |
|||
1
ssh2006
24.01.13
✎
11:51
|
(0) > Надо результаты запроса поместить в одно поле.
Объединение |
|||
2
DrShad
24.01.13
✎
11:52
|
(1) +1 вместо СОЕДИНЕНИЕ
|
|||
3
dk
24.01.13
✎
11:54
|
либо объединить
либо выбор когда... |
|||
4
Wobland
24.01.13
✎
11:59
|
получить представление и посложить?
|
|||
5
Wobland
24.01.13
✎
12:00
|
(4) или наименование
|
|||
6
Reset
24.01.13
✎
12:00
|
(5) Наименование разве :)
|
|||
7
PiotrLoginov
24.01.13
✎
12:06
|
Синтаксис подскажете? Может быть так:
ВЫБРАТЬ ВложенныйЗапрос.Родитель КАК Родитель, Партнеры.Ссылка КАК Подразделение ИЗ (ВЫБРАТЬ Партнеры.Ссылка КАК Родитель ИЗ Справочник.Партнеры КАК Партнеры) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Партнеры КАК Партнеры ПО ВложенныйЗапрос.Родитель = Партнеры.Родитель ОБЪЕДИНИТЬ ВСЕ но как указать наименование поля, в которое в итоге объединятся Родитель и Подразделение ? |
|||
8
Wobland
24.01.13
✎
12:07
|
поле1+поле2 как поле3
|
|||
9
Reset
24.01.13
✎
12:09
|
(8)
(7), очевдно, к (1)(2)(3) До твоего вариfнта он еще не дошел :) |
|||
10
plastinin
24.01.13
✎
12:09
|
Типа такого:
ВЫБРАТЬ Контрагенты.Ссылка, Контрагенты.Наименование ПОМЕСТИТЬ ВтРодитель ИЗ Справочник.Контрагенты КАК Контрагенты ГДЕ Контрагенты.Ссылка = &Клиент ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Контрагенты.Наименование + " " + ВтРодитель.Наименование КАК Поле1 ИЗ ВтРодитель КАК ВтРодитель ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты ПО ВтРодитель.Ссылка = Контрагенты.Родитель |
|||
11
PiotrLoginov
24.01.13
✎
12:09
|
написал
ВЫБРАТЬ ВложенныйЗапрос.Родитель КАК Родитель, Партнеры.Ссылка КАК Подразделение ИЗ (ВЫБРАТЬ Партнеры.Ссылка КАК Родитель ИЗ Справочник.Партнеры КАК Партнеры) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Партнеры КАК Партнеры ПО ВложенныйЗапрос.Родитель = Партнеры.Родитель ОБЪЕДИНИТЬ Родитель + Подразделение = Партнер Пишет "ожидается выражение выбрать"... |
|||
12
Wobland
24.01.13
✎
12:09
|
поможем дойти. что такое объединение полей в одно? какой тип в итоге ожидается?
|
|||
13
PiotrLoginov
24.01.13
✎
12:11
|
Подождите, мне надо получить не одной строкой название подразделения и родителя, а список из подразделений и родителей
|
|||
14
Reset
24.01.13
✎
12:12
|
(13) т.е.
НекийПартнер НекийПартнер2 РодительнекоегоПартнера РодительнекоегоПартнера2 ? |
|||
15
Wobland
24.01.13
✎
12:12
|
(13) что такое список? все значения слепить в одно? один хрен вопрос: какого типа поле ожидается?
ну и самое главное: в запросе зачем? |
|||
16
PiotrLoginov
24.01.13
✎
12:13
|
У меня в результате это
ПОДРАЗДЕЛЕНИЕ РОДИТЕЛЬ дочь Пупкина Пупкин сын пупкина Пупкин А мне надо ПАРТНЕР Пупкин дочь Пупкина сын Пупкина |
|||
17
PiotrLoginov
24.01.13
✎
12:13
|
(14) именно так
|
|||
18
Reset
24.01.13
✎
12:13
|
(16) Тогда иди путем (1)(2)(3)
:) |
|||
19
Wobland
24.01.13
✎
12:14
|
выбрать
пратнёров объединить выбрать родителей |
|||
20
PiotrLoginov
24.01.13
✎
12:16
|
дык я понял, что мне поможет ОБЪЕДИНЕНИЕ. Но какой синтаксис?
|
|||
21
PiotrLoginov
24.01.13
✎
12:18
|
(7) не прокатило. Да и надо ведь как-то указать название поля, в которое будт объединяться Родитель и Подразделение
|
|||
22
Wobland
24.01.13
✎
12:18
|
(21) алиасы указываются в первом запросе
|
|||
23
Reset
24.01.13
✎
12:20
|
вот пример синтаксиса. Хотя следовало бы тебя в справку послать.
ВЫБРАТЬ Партнеры.Ссылка КАК Ссылка Поместить Родители ИЗ Справочник.Партнеры КАК Партнеры ГДЕ Партнеры.Клиент = &Клиент ВЫБРАТЬ Родители.Ссылка КАК ОбщееПоле из Родители Объединить ВЫБРАТЬ Партнеры.Ссылка КАК Ссылка ИЗ Справочник.Партнеры КАК Партнеры ГДЕ Партнеры.Родитель в (выбрать Родители.Ссылка из Родители) |
|||
24
Reset
24.01.13
✎
12:21
|
в последнем выбрать "КАК Ссылка" лишнее, оно будет проигнорировано, т.к. (22) верно
|
|||
25
Wobland
24.01.13
✎
12:26
|
а времеення таблица зачем?
|
|||
26
Reset
24.01.13
✎
12:29
|
(25) Чтобы избежать дважды в одном запросе Клиент = &Клиент
|
|||
27
Reset
24.01.13
✎
12:30
|
(25) вот без вт
ВЫБРАТЬ Партнеры.Ссылка КАК Общее ИЗ Справочник.Партнеры КАК Партнеры ГДЕ Партнеры.Клиент = &Клиент Объединить Партнеры.Ссылка ИЗ Справочник.Партнеры КАК Партнеры ГДЕ Партнеры.Родитель.Клиент = &Клиент |
|||
28
Reset
24.01.13
✎
12:32
|
Еще есть простор для раскрытия темы в случае, если автору нужны не только непосредственные дочки, но и все ниже по иерархии
|
|||
29
lapinio
24.01.13
✎
12:32
|
Может туплю. 1)Не понятно зачем вложенный запрос. 2) Не проще использовать итоги. Родителя в итоги, а подразделение в итоговое поле.
|
|||
30
Wobland
24.01.13
✎
12:35
|
(29) а как вариант, кстати
|
|||
31
PiotrLoginov
24.01.13
✎
12:38
|
(23) гм. честно: я не понял, как это работает. Здесь три запроса. При попытке скормить их контруктору он пишет "Синтаксическая ошибка "ВЫБРАТЬ"<<?>>ВЫБРАТЬ"
Первый запрос получает таблицу Родители? Второй превращает её в ОбщееПоле ? Третий находит партнеров, чей родитель содержится в Родители ? В чем смысл ? ------------ Я написал запрос для формирования сегмента, состоящего из Партнеров-родителей. Сегмент формируется исходя из обслуживающего этого самого Партнера и его подразделения конкретного физ. лица - торгового представителя. Все работало чудесно. Теперь оказалось, что мне надо включить в список Партнеров, входящих в сегмент, не только Родителей, но и их подразделения. Я добавил в исходный запрос строку "ЗапросПартнеров.Подразделение КАК Подразделение", и получилось вот что: ВЫБРАТЬ РАЗРЕШЕННЫЕ ЗапросПартнеров.Родитель КАК Партнер, ЗапросПартнеров.Подразделение КАК Подразделение, УсловияОбслуживанияПартнеровТорговымиПредставителями.Ссылка КАК Представитель {ВЫБРАТЬ Партнер} ИЗ (ВЫБРАТЬ ВложенныйЗапрос.Родитель КАК Родитель, Партнеры.Ссылка КАК Подразделение ИЗ (ВЫБРАТЬ Партнеры.Ссылка КАК Родитель ИЗ Справочник.Партнеры КАК Партнеры) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Партнеры КАК Партнеры ПО ВложенныйЗапрос.Родитель = Партнеры.Родитель) КАК ЗапросПартнеров ЛЕВОЕ СОЕДИНЕНИЕ Справочник.УсловияОбслуживанияПартнеровТорговымиПредставителями КАК УсловияОбслуживанияПартнеровТорговымиПредставителями ПО ЗапросПартнеров.Подразделение = УсловияОбслуживанияПартнеровТорговымиПредставителями.Владелец {ГДЕ ЗапросПартнеров.Родитель.* КАК Партнер, УсловияОбслуживанияПартнеровТорговымиПредставителями.Ссылка.* КАК Представитель} Но мне не нужен список партнеров и их подразделений, подобный РОДИТЕЛЬ ПОДРАЗДЕЛЕНИЕ Пупкин дочь Пупкина Пупкин сын пупкина Мне надо получить в итоге для СКД лишь список партнеров и их подразделений: ПАРТНЕР Пупкин дочь Пупкина сын Пупкина |
|||
32
lapinio
24.01.13
✎
12:40
|
В СКД делается элементарно. Групировочное поле родитель, детальные записи подразделение
|
|||
33
Reset
24.01.13
✎
12:41
|
(29) Типа так? :
Партнеры.Ссылка как Общее ИЗ Справочник.Партнеры КАК Партнеры ГДЕ Партнеры.Родитель.Клиент = &Клиент /// 1 уровень вложенности опять хотя Итоги по Партнеры.Ссылка иерархия КАК Общее |
|||
34
Reset
24.01.13
✎
12:43
|
(31) Точку с запятой (;) добавить перед втрым ВЫБРАТЬ
|
|||
35
lapinio
24.01.13
✎
12:44
|
(33) Как то да. Ему вообще нужен простой отчет на скд. Зачем изголяться в запросе. Непонятно
|
|||
36
PiotrLoginov
24.01.13
✎
12:46
|
(34) Оо-о .. кажется начинает структурироваться каша в моей голове :)
|
|||
37
PiotrLoginov
24.01.13
✎
12:47
|
(35) Проще написать запрос, сразу дающий искомое. И на будущее пригодится.
|
|||
38
PR
24.01.13
✎
13:12
|
(0) Дурдом какой-то. От конфигуратора отлучать за такое :))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |