1с скд сложить строки

Допустим, в вашем отчете на СКД есть ресурс типа Строка, и вам в итогах по группировкам необходимо объединить значения этого ресурса. Для решения этой задачи следует использовать функцию языка выражений СоединитьСтроки.

СОЕДИНИТЬСТРОКИ (JOINSTRINGS)- агрегатная функция, позволяющая объединять строки в одну строку.

  • Значения, которые нужно объединить в одну строку. Если является массивом, то в строку будут объединяться элементы массива. Если является таблицей значений, то в строку будут объединяться все колонки и строки таблицы;
  • Разделитель элементов. Строка, содержащая текст, который нужно использовать в качестве разделителя между элементами массива и строками таблицы значений. По умолчанию – символ перевода строк;
  • Разделители колонок. Строка, содержащая текст, который нужно использовать в качестве разделителя между колонками таблицы значений. По умолчанию «;».

Отчет вводит данные табличной части Товары документа Реализация товаров и услуг. Необходимо в итогах по документу выводить наименования всех товаров присутствующих в нем.

На закладке Ресурсы, схемы компоновки данных отчета, укажем выражение СоединитьСтроки(Номенклатура, “,”) для ресурса Номенклатура.

На закладке Настройки зададим поля и группировки нужные нам в отчете.

вторник, 12 февраля 2019 г.

СКД. Пользовательские поля. Сложение строк (Конкатенация, объединение строк).

Задача вывести итоги по валюте с отличным представлением от типового и сделать это средствами СКД (на стороне пользователя в том числе)

1. Добавляем пользовательское поле Выражения (формула значения поля и итоговой записи ниже)

// так неправильно, будет получена ошибка формирования результата СКД
«Итого, » + [Договор контрагента.Валюта] + » облигации:»

// так правильно
Представление(«Итого, «) + Представление([Договор контрагента.Валюта]) + Представление(» облигации: «)

2. В условном оформлении для поля в группировке (в моем случае [Договор контрагента.Валюта]) устанавливаем Текст = Поле компоновки данных наше пользовательское поле

Доброго времени суток, уважаемые читатели нашего блога! Сегодня я хочу рассказать, на реальном примере, как
использовать функции СКД Массив (Array) и СоединитьСтроки (JoinStrings). В статье об
СКД
немного упоминалось, как работать с
функциями языка выражений СКД на закладке
«Вычисляемые поля», также уже объяснялось как
настроить итоги в схеме компоновки данных 1С, используя закладку «Ресурсы». Сегодня мы ещё раз обратим внимание на эти
закладки в свете нашей темы.

Содержание

Внешний вид примера отчета 1С с использованием двух функций СКД Массив и СоединитьСтроки следующий:

Постановка задачи для применения функций СКД Массив (Array) и СоединитьСтроки (JoinStrings)

Задача: Нужно все номера реализаций по одному товару вставить в одну ячейку.

Что-то вроде: номенклатура | кол-во | 001, 002, и т.д. |

Будем использовать запрос к регистру накопления «РеализацияТМЗ».

Регистру накопления «РеализацияТМЗ» существует как в конфигурации Бухгалтерия, так и в конфигурации Управление торговым предприятием (УТП). Узнайте, как в конфигурации УТП установить свойство «Услуга» в элементе справочника «Номенклатура». Поэтому, после скачивания, для проверки его работоспособности вы можете запускать этот отчёт в обеих конфигурациях.

Реализация поставленной задачи с применением функций СКД Массив и СоединитьСтроки

  1. Создадим новый набор данных.
  2. Вставим в него, вышеуказанный запрос.
  3. Перейдём на закладку «Вычисляемые поля» и добавим новую запись.
  4. В поле «Путь к данным» напишем МассивНомеров.
  5. В поле «Выражение» напишем Массив(РегистраторНомер).

  • Перейдём на закладку «Ресурсы» и добавим новые записи из раздела «Доступные поля», используя кнопку «>».
  • Добавим МассивНомеров.
  • В поле «Выражение» напишем СоединитьСтроки(Массив(РегистраторНомер),»,»,»»).
  • В поле «Рассчитывать по…» выберем Номенклатура.
  • Добавим КоличествоОборот.
  • В поле «Выражение» напишем Сумма(КоличествоОборот).
  • В поле «Рассчитывать по…» выберем Номенклатура.

  • Перейдём на закладку «Настройки» и добавим новую группировку номенклатура.
  • Зесь же на закладке «Выбранные поля» добавим новые поля из раздела «Доступные поля», используя кнопку «>».
    Выберем три поля «Номенклатура», «МассивНомеров», «КоличествоОборот».

  • И наконец, перейдём на закладку «Другие настройки» и изменим две строки
    «Расположение общих итогов по горизонтали» и «Расположение общих итогов по вертикали».
  • В поле «Значение» установим значение «Нет». Это необходимо для запрета вывода итогов.

    Такие же шаги, но с некоторыми дополнениями, были использованы при созданиии

    отчёта о продаже номенклатуры по ГТД.

    Описание функции СоединитьСтроки (JoinStrings)

    СоединитьСтроки (JoinStrings)

    Используется для объединения строк в одну строку.

    СоединитьСтроки (Значение, РазделительЭлементов, РазделителиКолонок)

    1. Значение — выражения, которые нужно объединить в одну строку.
      Если является Массивом, то в строку будут объединяться элементы массива.
      Если является ТаблицаЗначений, то в строку будут объединяться все колонки и строки таблицы;
    2. РазделительЭлементов — строка, содержащая текст, который нужно использовать в качестве
      разделителя между элементами массива и строками таблицы значений. По умолчанию – символ перевода строк;
    3. РазделителиКолонок -строка, содержащая текст, который нужно использовать в качестве разделителя
      между колонками таблицы значений. По умолчанию «;».

    Пожалуйста, Войдите или Зарегистрируйтесь чтобы получить ссылку на скачивание.

  • Понравилась статья? Поделиться с друзьями:
    Vkontakte.INFO
    Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: