Имя: Пароль:
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) " всем нам понятна"
Ты вместо "мне" написал "нам".
Не говори за других, по простому.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn