1С 8.3 Преобразование Таблицы Значений в Массив
Данные > Примеры кода 1С > 1С 8.3 Массив
Перейти в раздел примеры кода 1С 8.3:
При наличии в конфигурации БСП, можно использовать метод ТаблицаЗначенийВМассив.
Вариант 1: Преобразование ТЗ в массив в 1С 8.3:
// Функция преобразует ТаблицуЗначений в Массив из структур.
//
&НаСервереБезКонтекста
Функция ПреобразованиеТаблицыЗначенийВМассив(ТЗ)
Массив = Новый Массив;
// Запишем в массив
Для Каждого Строка Из ТЗ Цикл
СтрТЗ = Новый Структура;
Для Каждого ИмяКолонки Из ТЗ.Колонки Цикл
СтрТЗ.Вставить(ИмяКолонки.Имя, Строка[ИмяКолонки.Имя]);
КонецЦикла;
Массив.Добавить(СтрТЗ);
КонецЦикла;
Возврат Массив;
КонецФункции
//
&НаСервереБезКонтекста
Функция ПреобразованиеТаблицыЗначенийВМассив(ТЗ)
Массив = Новый Массив;
// Запишем в массив
Для Каждого Строка Из ТЗ Цикл
СтрТЗ = Новый Структура;
Для Каждого ИмяКолонки Из ТЗ.Колонки Цикл
СтрТЗ.Вставить(ИмяКолонки.Имя, Строка[ИмяКолонки.Имя]);
КонецЦикла;
Массив.Добавить(СтрТЗ);
КонецЦикла;
Возврат Массив;
КонецФункции
Вариант 2: Преобразование ТЗ в массив в 1С 8.3:
// Функция преобразует ТаблицуЗначений в Массив из структур.
//
&НаСервере
Функция ПреобразованиеТаблицыЗначенийВМассив2(Знач ТЗ) Экспорт
Массив = Новый Массив;
КолонкиМ = Новый Массив;
Для Каждого Колонка Из ТЗ.Колонки Цикл
Если КолонкиМ.Найти(Колонка.Имя) = Неопределено Тогда
КолонкиМ.Добавить(Колонка.Имя);
КонецЕсли;
КонецЦикла;
Для Каждого Строка Из ТЗ Цикл
СтрТЗ = Новый Структура;
Для Каждого ЭлементМассива Из КолонкиМ Цикл
СтрТЗ.Вставить(ЭлементМассива, Строка[ЭлементМассива]);
КонецЦикла;
Массив.Добавить(СтрТЗ);
КонецЦикла;
Возврат Массив;
КонецФункции
//
&НаСервере
Функция ПреобразованиеТаблицыЗначенийВМассив2(Знач ТЗ) Экспорт
Массив = Новый Массив;
КолонкиМ = Новый Массив;
Для Каждого Колонка Из ТЗ.Колонки Цикл
Если КолонкиМ.Найти(Колонка.Имя) = Неопределено Тогда
КолонкиМ.Добавить(Колонка.Имя);
КонецЕсли;
КонецЦикла;
Для Каждого Строка Из ТЗ Цикл
СтрТЗ = Новый Структура;
Для Каждого ЭлементМассива Из КолонкиМ Цикл
СтрТЗ.Вставить(ЭлементМассива, Строка[ЭлементМассива]);
КонецЦикла;
Массив.Добавить(СтрТЗ);
КонецЦикла;
Возврат Массив;
КонецФункции
0
комментарии
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник