dev1c:param_name_tab
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версия | |||
| dev1c:param_name_tab [2025/01/31 12:14] – admin16 | dev1c:param_name_tab [2025/01/31 12:18] (текущий) – admin16 | ||
|---|---|---|---|
| Строка 31: | Строка 31: | ||
| | | ||
| | | ||
| + | КонецФункции | ||
| + | </ | ||
| + | |||
| + | Или через сериализацию | ||
| + | |||
| + | < | ||
| + | Функция ПолучитьПараметрыТабличногоДокумента(ТабличныйДокумент) | ||
| + | ОбъектXDTO = СериализаторXDTO.ЗаписатьXDTO(ТабличныйДокумент); | ||
| + | | ||
| + | ИменаПараметров = Новый Соответствие; | ||
| + | Для Каждого ДанныеСтрок Из ОбъектXDTO.rowsItem Цикл | ||
| + | Для Каждого Колонка Из ДанныеСтрок.row.c Цикл | ||
| + | ИмяПараметра = Колонка.c.parameter; | ||
| + | Если ИмяПараметра <> Неопределено Тогда | ||
| + | ИменаПараметров.Вставить(ИмяПараметра); | ||
| + | КонецЕсли; | ||
| + | Если Колонка.c.f > 0 Тогда | ||
| + | Формат = ОбъектXDTO.format[Колонка.c.f - 1]; | ||
| + | Если Формат.fillType = ТипЗаполненияОбластиТабличногоДокумента.Шаблон Тогда | ||
| + | Для Каждого Содержание Из Колонка.c.tl.item Цикл | ||
| + | ПараметрыШаблона = ПараметрыШаблона(Содержание.content); | ||
| + | Для Каждого ИмяПараметра Из ПараметрыШаблона Цикл | ||
| + | ИменаПараметров.Вставить(ИмяПараметра); | ||
| + | КонецЦикла; | ||
| + | КонецЦикла; | ||
| + | КонецЕсли; | ||
| + | КонецЕсли; | ||
| + | КонецЦикла; | ||
| + | КонецЦикла; | ||
| + | | ||
| + | Результат = Новый Соответствие; | ||
| + | Для Каждого КлючИЗначение Из ИменаПараметров Цикл | ||
| + | Результат[КлючИЗначение.Ключ] = ТабличныйДокумент.Параметры[КлючИЗначение.Ключ]; | ||
| + | КонецЦикла; | ||
| + | | ||
| + | Возврат Результат; | ||
| + | КонецФункции | ||
| + | |||
| + | Функция ПараметрыШаблона(Знач Строка) | ||
| + | Результат = Новый Массив; | ||
| + | Пока Истина Цикл | ||
| + | Начало = Найти(Строка, | ||
| + | Если Начало = 0 Тогда | ||
| + | Прервать; | ||
| + | КонецЕсли; | ||
| + | Конец = Найти(Строка, | ||
| + | Если Конец = 0 Тогда | ||
| + | Прервать; | ||
| + | КонецЕсли; | ||
| + | | ||
| + | ИмяПараметра = Сред(Строка, | ||
| + | Если Не ПустаяСтрока(ИмяПараметра) Тогда | ||
| + | Результат.Добавить(ИмяПараметра); | ||
| + | КонецЕсли; | ||
| + | Строка = Сред(Строка, | ||
| + | КонецЦикла; | ||
| + | Возврат Результат; | ||
| КонецФункции | КонецФункции | ||
| </ | </ | ||
dev1c/param_name_tab.1738325692.txt.gz · Последнее изменение: 2025/01/31 12:14 — admin16