Имя: Пароль:
1C
1С v8
Собрать из таблицы строку в запросе.
,
0 kudlach
 
30.05.12
11:52
Столкнулся с таким:
Есть отчет по остаткам товаров. У товаров есть места хранения.
Нужно - в отчете вывести отдельную колонку где места хранения перечислены через запятую.

Сейчас задача сводится к такой:
Есть выборка значений
А1
А2
А3
Надо получить строку А1,А2,А3

Как это делается в SQL нашел уже пачку вариантов, но ни один не прилепился к 8.2.
ВЫБРАТЬ
Таб2.Значение,
(ВЫБРАТЬ [реквизит]
ИЗ Таб1
ГДЕ Таб1.Значение=Таб2.Значение)
ИЗ Таб2

Не канает - пишет ошибку по 3-й строке.
Есть мысли ?
1 Wobland
 
30.05.12
11:54
есть. одна: никак.
2 shuhard
 
30.05.12
11:55
(0)  а место хранение строка ?
3 Wobland
 
30.05.12
11:56
(2) а это важно? пусть даже и строка, с удовольствием посмотрю на любой рабочий вариант
4 EasyRider
 
30.05.12
11:59
надо при выводе делать
5 shuhard
 
30.05.12
12:01
(3) ВЫБРАТЬ
   Валюты.Наименование + ":" + Валюты.Наименование КАК Контентенация
ИЗ
   Справочник.Валюты КАК Валюты
6 Wobland
 
30.05.12
12:02
(5) а все валюты через ":"?
7 pessok
 
30.05.12
12:05
(6) пакеты динамически формировать если тока, наверное. но вообще задачка интересная. помница мне давным давно надо было так характеристики выводить строкой в одну колонку. размеры обуви, емнип :) так и не сделал. правда то был франч и не правда :)
8 ILM
 
гуру
30.05.12
12:07
(0) А потом условие на вхождение подстроки проверять будете?
9 Buster007
 
30.05.12
12:07
переделай отчет на СКД
10 kudlach
 
30.05.12
12:11
Я в начале ж указал какой отчет :)
Он на СКД как раз.
Есть вариант в SQl на функции, но тут-то помоему, генерирования функции в языке нету. :(
11 Wobland
 
30.05.12
12:12
(10) >Есть отчет по остаткам товаров
очень указал ;)
в запросе не нужно этого тебе, используй силу СКД
12 shuhard
 
30.05.12
12:14
(10)[но тут-то помоему, генерирования функции в языке нету.]
смотри, язык обидеться и будет мстить
13 kudlach
 
30.05.12
12:15
(4) при вывод не получится - именно по причине компоновки данных в исходнике.
Да и не хочется так - долго будет уже для 1 000 строк.

При выводе это я в печатном документе сделал.

(11)  Бааалин.....    УПП ВедомостьТоваровНаСкладах.
Не знаю я как ту силу использовать - СКД генерит в итоге текст запроса, хочу от текста и пойти. Можешь сверстать по быстрому ? А текст сюда закинуть ?
Мне запросы понятнее, как не странно - физический смысл яснее.
14 kudlach
 
30.05.12
12:16
(12) :)   в текстах типовой УПП не видел, в методичках 1С по запросам - не видел.
Наверное, как суслик - ты его не видишь, а он есть....
15 Wobland
 
30.05.12
12:21
(13) >СКД генерит в итоге текст запроса
ложь
>Можешь сверстать по быстрому?
нет
>А текст сюда закинуть ?
сказал же: никак в запросе
16 kudlach
 
30.05.12
12:22
(8) Нет. Дальше строка просто выводится в отчет без дальнейших операций с ней.
17 kudlach
 
30.05.12
12:24
(15) Ну и очень жаль. Ваша точка зрения всем нам понятна.
18 kudlach
 
30.05.12
12:26
(15) Еще бы направление куда копать и какой мануал посмотреть...
19 kudlach
 
30.05.12
14:03
МестаХранения.МестоХранения for xml path('') ,
- простейший вариант кода в SQL тоже не канает, дает ошибку.

Видимо, придется пойти не очень красивым, но 200 % действующим путем - добавить реквизит в номенклатуре, который собирать перебором при записи элемента.
А уже в запросе к нему обращаться.
20 Reset
 
30.05.12
14:07
(17) Ты себя на Вы чтоль?
21 kudlach
 
30.05.12
14:11
(20) Тоже заработалсЯ ?
Там указано к какой записи относится.
22 Wobland
 
30.05.12
14:11
(20) в (17) не я ;)
23 Buster007
 
30.05.12
14:20
ну так если на СКД, то там можно сделать вычисляемое поле или ресурс с использованием стандартной функции Строка()
24 Reset
 
30.05.12
14:54
(21) " всем нам понятна"
Ты вместо "мне" написал "нам".
Не говори за других, по простому.