|
СоединитьСтроки() - как? | ☑ | ||
---|---|---|---|---|
0
Cmyk32
02.08.12
✎
15:04
|
Привет!
Не совсем понимаю, что делает СоединитьСтроки() У меня две строки: Город Сеть Цена Товар1 5,70 |
|||
1
Cmyk32
02.08.12
✎
15:06
|
сорри. случайно отправила
Город Сеть Адрес Коэф. Москва Ригла ул.Тверская,15 1,5 Питер Ригла ул.Мурата, 20 1,5 Могу я с помощью Соединить строки вывести две строки, где 4-ая колонка будет содержать одно общее значение? Город Сеть Адрес Коэф. Москва Ригла ул.Тверская,15 1,5 Питер Ригла ул.Мурата, 20 |
|||
2
Живой Ископаемый
02.08.12
✎
15:07
|
а что такое СоединитьСтроку()? это функция которую вы нафантазировали у себя в уме?
|
|||
3
Fish
02.08.12
✎
15:08
|
(0) Так посмотри, что делает эта функция.
|
|||
4
Cmyk32
02.08.12
✎
15:09
|
(3) Нет по ней инфы, не могу понять где использовать
|
|||
5
Cmyk32
02.08.12
✎
15:09
|
(4) + у МЕНЯ нет по ней инфы
|
|||
6
butterbean
02.08.12
✎
15:10
|
(5) ты ее придумала??
|
|||
7
Fish
02.08.12
✎
15:10
|
(4) Тогда хотя бы код этой функции приведи. или по твоему тут все телепаты?
|
|||
8
GLazNik
02.08.12
✎
15:10
|
(5) а у нас то тем более
|
|||
9
Рэйв
02.08.12
✎
15:10
|
(5)Встань на нее и нажми F12 , юный падаван!:-)
|
|||
10
Ненавижу 1С
гуру
02.08.12
✎
15:10
|
(5) инфы нет, фото нет, беда
|
|||
11
Рэйв
02.08.12
✎
15:11
|
Это скорее всего какая то самописная глобальная функция
|
|||
12
Cmyk32
02.08.12
✎
15:11
|
||||
13
Cmyk32
02.08.12
✎
15:13
|
Сорри, неправильно сформулировала вопрос.
Я хочу понять зачем нужна функция СоединитьСтроки() в СКД и как ее использовать. Она появилась с 8.2.14 версии. |
|||
14
Ненавижу 1С
гуру
02.08.12
✎
15:21
|
(13) по-моему это не для этого
|
|||
15
Cmyk32
02.08.12
✎
15:34
|
апну... вдруг кто знает, что это не "фантазия" и даже не "самописная глобальная функция"
|
|||
16
Kashemir
02.08.12
✎
15:43
|
- В языке выражений системы компоновки данных реализована функция "Массив()". Результатом работы функции является массив, в котором элементом является значение параметра для каждой детальной записи. Если выражение системы компоновки данных содержит функцию "Массив()", то такое выражение считается агрегатным.
Перед параметром функции допустимо указывать ключевое слово "Различные", в этом случае получаемый массив не будет содержать одинаковых значений. В качестве параметра функция может принимать выражение, возвращающее таблицу значений. В этом случае результатом работы функции "Массив()" будет массив, содержащий значения первой колонки переданной таблицы значений. - В языке выражений системы компоновки данных реализована функция "ТаблицаЗначений()". Результатом работы функции является таблица значений, в которой количество колонок равно количеству параметров функции, а данные в колонках получаются из детальных записей. Если выражение системы компоновки данных содержит функцию "ТаблицаЗначений()", то такое выражение считается агрегатным. Перед параметром функции допустимо указывать ключевое слово "Различные", в этом случае получаемая таблица значений не будет содержать строк, содержащих одинаковые данные. _________________________ В языке выражений системы компоновки данных реализована функция "СоединитьСтроки()", предназначенная для объединения строк в одну. __________________________ Возможно, что СоединитьСтроки() является агрегатной функцией для значений Массива или ТЗ ? |
|||
17
Kashemir
02.08.12
✎
15:47
|
Вот примеры из СП:
Например, для пользовательского поля с выражением: ВычислитьВыражениеСГруппировкойМассив("Сумма(СуммаОборот)", "Контрагент") компоновщик макета сгенерирует для вывода следующее выражение: СоединитьСтроки(Массив(Упорядочить(ВычислитьВыражениеСГруппировкойТаблицаЗначений ("Представление(Сумма(НаборДанных.СуммаОборот)), Сумма(НаборДанных.СуммаОборот)", "НаборДанных.Контрагент"), "2"))) Например, пользовательского поля с выражением: ВычислитьВыражениеСГруппировкойТаблицаЗначений ("Контрагент, Сумма(СуммаОборот)", "Контрагент") Компоновщик макета сгенерирует для вывода следующее выражение: СоединитьСтроки(ПолучитьЧасть(Упорядочить(ВычислитьВыражениеСГруппировкойТаблицаЗначений ("НаборДанных.Контрагент, НаборДанных.КонтрагентПредставление, Сумма(НаборДанных.СуммаОборот), Представление(НаборДанных.СуммаОборот), НаборДанных.ПолеУпорядочивание", "НаборДанных.Контрагент"), "5, 1, 3"), "2, 4")) |
|||
18
Kashemir
02.08.12
✎
15:48
|
А вот собственно и описание из СП:
СоединитьСтроки (JoinStrings) Предназначена для объединения строк в одну строку. Синтаксис: СоединитьСтроки (Значение, РазделительЭлементов, РазделителиКолонок) Параметры: Значение - выражения, которые нужно объединить в одну строку. Если является Массивом, то в строку будут объединяться элементы массива. Если является ТаблицаЗначений, то в строку будут объединяться все колонки и строки таблицы; РазделительЭлементов - строка, содержащая текст, который нужно использовать в качестве разделителя между элементами массива и строками таблицы значений. По умолчанию – символ перевода строк; РазделителиКолонок -строка, содержащая текст, который нужно использовать в качестве разделителя между колонками таблицы значений. По умолчанию "; ". Пример: СоединитьСтроки(ТаблицаЗначений(НомерТелефона, Адрес)); |
|||
19
sivalor
02.08.12
✎
15:51
|
(1) почему бы просто не сделать вычисляемое поле Город + " " + Адрес.
|
|||
20
Kashemir
02.08.12
✎
15:52
|
(19) Представь себе что город и адрес это значения разных произвольных строк одной колонки.
|
|||
21
Heckfy
02.08.12
✎
15:54
|
(18) А у меня нету такого :(:(:(
|
|||
22
Kashemir
02.08.12
✎
15:54
|
Значит у тебя версия ниже 8.2.14
|
|||
23
Бледно Золотистый
02.08.12
✎
15:56
|
(21) В СП поиск не находит, в справке искать надо.
|
|||
24
Cmyk32
02.08.12
✎
15:58
|
(23) теперь понятно/
(18)(23) Спасибо! Получается это не то, что мне нужно в (1). |
|||
25
Kashemir
02.08.12
✎
16:00
|
(24) Так тебе нужна обычная конкатенция строк. Операции "+" вполне достаточно( как в (19)).
|
|||
26
Cmyk32
02.08.12
✎
16:02
|
У меня коэффициент находится в одной колонке. Или ты имеешь ввиду при программном выводе результата?
|
|||
27
Kashemir
02.08.12
✎
16:05
|
(26) Что-то я запутался. Объясни еще раз что нужно получить в результате
|
|||
28
Kashemir
02.08.12
✎
16:05
|
(27) Может нужна просто группировка по коэффициенту ?
|
|||
29
Cmyk32
02.08.12
✎
16:08
|
(26) По сути мне нужно тоже самое, что в этом примере http://forum.infostart.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=130981 (кроме группировки "ОДЕЖДА")
Если делать стандартный вывод СКД, то "мужская" и "женская" - будут повторяться в каждой строке. (27) Простая группировка - не читается в моем случае. |
|||
30
Kashemir
02.08.12
✎
16:34
|
(29) Тогда просто сделай свой макет+группировка.
|
|||
31
Cmyk32
02.08.12
✎
16:40
|
(29) Да. Спасибо за помощь.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |