Иногда, в процессе разработки на 1с, возникает необходимость преобразования массива структур в тз, ниже простая функция для выполнения данного действия:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
Функция МассивВТЗ(МассивСтруктур) Экспорт ТабЗнач = Новый ТаблицаЗначений; Для Каждого Элемент Из МассивСтруктур Цикл Если ТабЗнач.Колонки.Количество() = 0 Тогда Для Каждого ЭлементСтруктура Из Элемент Цикл ТипыМассив = Новый Массив; ТипКолонки = ТипЗнч(ЭлементСтруктура.Значение); ТипыМассив.Добавить(ТипКолонки); ТипыОписание = Новый ОписаниеТипов(ТипыМассив); ТабЗнач.Колонки.Добавить(ЭлементСтруктура.Ключ, ТипыОписание); КонецЦикла; КонецЕсли; СтрТЗ = ТабЗнач.Добавить(); Для Каждого ЭлементСтруктура Из Элемент Цикл СтрТЗ[ЭлементСтруктура.Ключ] = ЭлементСтруктура.Значение; КонецЦикла; КонецЦикла; Возврат ТабЗнач; КонецФункции |
Меня зовут Лорян Карен. Я разработчик 1С и сделал этот сайт в первую очередь для себя, как место, в котором я могу копить собственную базу знаний. Я рад, если этот сайт оказался полезным и для вас 🙂