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