Как вывести итоговую таблицу значений после распределения суммы?
Для вывода итоговой таблицы значений после распределения суммы в 1С можно использовать несколько подходов в зависимости от контекста: форма обработки, сообщение пользователю, лог-файл, журнал регистрации или экспорт. Ниже подробно рассмотрим вывод итоговой таблицы значений через сообщение пользователю (для отладки и визуального контроля) и через вывод на форму (для работы в интерактивной обработке).
📌 1. Формат таблицы значений
Предположим, у вас есть таблица ТаблицаЗначений со следующими колонками:
-
Наименование — строка
-
Количество — число
-
Сумма — число (распределённая сумма)
Пример содержимого после распределения:
Наименование | Количество | Сумма |
---|---|---|
Товар 1 | 2 | 13 |
--- | --- | --- |
Товар 2 | 3 | 20 |
--- | --- | --- |
Товар 3 | 1 | 7 |
--- | --- | --- |
📌 2. Вывод в сообщение пользователю (Сообщить)
Можно использовать цикл для формирования текстовой таблицы и вывести её:
СтрокаВывода = "Результаты распределения:" + Символы.ПС;
СтрокаВывода = СтрокаВывода + "Наименование | Количество | Сумма" + Символы.ПС;
СтрокаВывода = СтрокаВывода + "----------------------------------" + Символы.ПС;
Для Каждого Стр Из ТаблицаЗначений Цикл
СтрокаВывода = СтрокаВывода +
Формат(Стр.Наименование, "X20") + " | " +
Формат(Стр.Количество, "ЧГ=0") + " | " +
Формат(Стр.Сумма, "ЧГ=0") + Символы.ПС;
КонецЦикла;
Сообщить(СтрокаВывода);
-
Формат(значение, "ЧГ=0") — форматирование числа без дробной части.
-
Символы.ПС — перевод строки.
-
Формат(строка, "X20") — выравнивание строки по ширине 20 символов.
📌 3. Вывод на форму
Если вы работаете в управляемой форме внешней обработки:
Шаги:
-
В модуле формы создайте реквизит формы типа ТаблицаЗначений.
-
Назначьте ему ту таблицу, где хранятся результаты распределения.
-
Свяжите с элементом управления на форме (например, Таблица).
-
После выполнения распределения обновите данные формы:
ЭлементыФормы.ТаблицаРезультатов.Обновить();
📌 4. Форматирование чисел и выравнивание
Если вам важен внешний вид в сообщении, можете использовать ручное выравнивание:
ФорматированнаяСтрока = СтрЗаменить(Формат(Стр.Количество, "ЧГ=0"), " ", "") + ...;
Или используйте "ЧЦ=15; ЧГ=0" — это число шириной 15 символов, без дробной части.
📌 5. Вывод в таблицу значений с итогой
Если вы хотите вывести таблицу в отладчик, можно так:
ТаблицаЗначений.ВыгрузитьКоллекцию().Вывести();
Или использовать Обработка.Форма.Таблица = ТаблицаЗначений; при выводе на форму.
📌 6. Альтернативные способы вывода
- **В файл (CSV):
**
Файл = Новый ТекстовыйДокумент;
Файл.ДобавитьСтроку("Наименование;Количество;Сумма");
Для Каждого Стр Из ТаблицаЗначений Цикл
Строка = Стр.Наименование + ";" + Формат(Стр.Количество, "ЧГ=0") + ";" + Формат(Стр.Сумма, "ЧГ=0");
Файл.ДобавитьСтроку(Строка);
КонецЦикла;
Файл.Записать("C:\\Temp\\Результат.csv");
- **В журнал регистрации:
**
ЖурналРегистрации.ДобавитьСообщение("Результат: " + ЗначениеПеременной);
Таким образом, наиболее удобный способ — это использовать Сообщить() с форматированием или привязку таблицы к форме обработки. Это даёт наглядный результат и не требует дополнительной интеграции.