Меню Закрыть

Строку таблицы значений в структуру

Преобразовании Структуры в Таблицу Значений

Похожие FAQ

Еще в этой же категории

Как Свернуть Массив? 2
НовыйМассив = Новый Массив; Соответствие = Новый Соответствие; Для каждого ЭлементМассива Из Массив Цикл Соответствие.Вставить(ЭлементМассива); КонецЦикла; Для каждого КлючИЗначение Из Соответствие Цикл НовыйМассив.Добавить(КлючИЗначение.Знач Структура

Создать структуру и добавить элементы 2
// Создание структуры СозданнаяСтруктура = Новый Структура; // Создание структуры и добавление элементов СтруктураОтбора = Новый Структура; СтруктураОтбора.Вставить(" Качество" , Качество); СтруктураОтбора.Вставить(" Номенклатура" , Номенкла Как создать Фиксированный массив? 2
ФиксированныйМассив , элементами которого могут быть значения перечисленных типов, включая ФиксированныйМассив. ФиксированныйМассив не допускает никаких изменений своего содержимого и может быть сконструирован из объекта типа " Массив" ; А если про Небольшой нюанс при создании двумерного массива 2
Наткнулся на инструкцию по созданию массива: ДвумМассив = Новый Массив; ОднмМассив = Новый Массив(2); //И дальше — заполнять ОднмМассив = "1-й индекс"; ОднмМассив = "1-е значение"; ДвумМассив.Добавить(ОднмМассив); ОднмМассив = "2-й индекс" Посмотреть все в категории Работа с Массивом, Структурой, Соответствием

Выполнить такое преобразование очень просто. Но для этого нужно определиться, как мы будем хранить данные таблицы значений: либо это будет массив структур, либо структура структур. Принципиальной разницы тут нет и каждый может выбрать тот вариант, который больше по душе.

Рассмотрим такое преобразование на примере структуры структур:

Обратите внимание на наличие вложенного цикла. Если планируется использование алгоритма на больших объемах данных, возможно понадобится слегка оптимизировать алгоритм, вынеся вложенный цикл формирования структуры строки за цикл обхода строк.

Выделяет из строки числовые символы и возвращает число
Функция ОставитьЧисловыеСимволыВСтроке ( СтрокаСЧислом , ВернутьЧисло =истина)

ДлинаСтроки = СтрДлина ( СтрокаСЧислом );
СтрокаФинал = «» ;
для й = 1 по ДлинаСтроки цикл
ТекСимвол = Сред ( СтрокаСЧислом ,й, 1 );
Если ТекСимвол >= «0» и ТекСимвол «9» тогда
СтрокаФинал = СтрокаФинал + ТекСимвол ;
КонецЕсли;
КонецЦикла;
Возврат ?( ВернутьЧисло , Число ( СтрокаФинал ), СтрокаФинал );
КонецФункции

Получение описания типа (для динамического добавления колонки в таблицу значений)
Функция ПолучитьОписаниеЦелочисленногоТипа () Экспорт

Читайте также:  Canon powershot sx20 is отзывы

КЧ = Новый КвалификаторыЧисла ( 10 );
Массив = Новый Массив ;
Массив . Добавить ( Тип ( «Число» ));
Возврат Новый ОписаниеТипов ( Массив , , , КЧ );
КонецФункции

Преобразование строки таблицы значений в структуру
Функция СтрокуТЗВСтруктуру ( ТЗ , НомерСтроки = 0 ) Экспорт
Стрктура = новый Структура ;
для каждого Колонка из ТЗ . Колонки цикл
Стрктура . Вставить ( Колонка . Имя , ТЗ [ НомерСтроки ][ Колонка . Имя ]);
КонецЦикла;
возврат Стрктура ;
КонецФункции

Функция для получения описания типов строки, заданной длины
Функция ПолучитьОписаниеТиповСтроки ( ДлинаСтроки )
Массив = Новый Массив ;
Массив . Добавить ( Тип ( «Строка» ));
КвалификаторСтроки = Новый КвалификаторыСтроки ( ДлинаСтроки , ДопустимаяДлина . Переменная );
Возврат Новый ОписаниеТипов ( Массив , , КвалификаторСтроки );
КонецФункции

Функция для получения описания типов числа, заданной разрядности
Функция ПолучитьОписаниеТиповЧисла ( Разрядность , РазрядностьДробнойЧасти = 0 )
Массив = Новый Массив ;
Массив . Добавить ( Тип ( «Число» ));
КвалификаторЧисла = Новый КвалификаторыЧисла ( Разрядность , РазрядностьДробнойЧасти );
Возврат Новый ОписаниеТипов ( Массив , КвалификаторЧисла );
КонецФункции

Функция для получения описания типов даты
Функция ПолучитьОписаниеТиповДаты ( ЧастиДаты )
Массив = Новый Массив ;
Массив . Добавить ( Тип ( «Дата» ));
КвалификаторДаты = Новый КвалификаторыДаты ( ЧастиДаты );
Возврат Новый ОписаниеТипов ( Массив , , , КвалификаторДаты );
КонецФункции

Рекомендуем к прочтению

Добавить комментарий

Ваш адрес email не будет опубликован.