helpf.pro
Регистрация
 0 
Распечатать

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

Код 1C v 8.х
 Процедура ПреобразоватьТЗвТЗсОписаниемТипов(ТЗ)
ТипизированнаяТЗ = Новый ТаблицаЗначений;
    Для й=1 По Тз.Количество() Цикл ТипизированнаяТЗ.Добавить(); //Создаем строки
    КонецЦикла;    
    
    ДЗТипов = Новый ДеревоЗначений;
    ДЗТипов.Колонки.Добавить("ИмяКолонки");
    ДЗТипов.Колонки.Добавить("ТипЗначений");
    
    Для Каждого Колонка из Тз.Колонки Цикл
        СтрокаКолонки = ДЗТипов.Строки.Добавить();
        СтрокаКолонки.ИмяКолонки = Колонка.Имя;
        
        ТекСТрокаТипа = СтрокаКолонки.Строки.Добавить();
        ТекСТрокаТипа.ИмяКолонки = Колонка.Имя; //Заполняется для красоты
        ТекСТрокаТипа.ТипЗначений = ТипЗнч(тз[0][Колонка.Имя]);
        Для Каждого СтокаТЗ из Тз Цикл
            ТекТип = ТипЗнч(СтокаТЗ[Колонка.Имя]);
            Если НЕ ТекТип = ТекСТрокаТипа.ТипЗначений Тогда
                Если СтрокаКолонки.Строки.Найти(ТекТип, "ТипЗначений")=Неопределено Тогда
                    ТекСТрокаТипа = СтрокаКолонки.Строки.Добавить();
                    ТекСТрокаТипа.ИмяКолонки = Колонка.Имя;//Заполняется для красоты
                    ТекСТрокаТипа.ТипЗначений = ТекТип;
                КонецЕслИ;
            КонецЕслИ;
        КонецЦикла;
        
        МассивТипов = СтрокаКолонки.Строки.ВыгрузитьКолонку("ТипЗначений");
        ТипизированнаяТЗ.Колонки.Добавить(Колонка.Имя, Новый ОписаниеТипов(МассивТипов),Колонка.Заголовок);
        ТипизированнаяТЗ.ЗагрузитьКолонку(Тз.ВыгрузитьКолонку(Колонка),Колонка.Имя);
    КонецЦикла;
КонецПроцедуры

Источник

Разместил:   Версии: |  Дата:   Прочитано: 2548
 0 
Распечатать
Возможно, вас также заинтересует
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 12
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно...
1С 7.x : Как получить курсы валют с сайта НБУ http://www.bank.gov.ua/ за любую дату ? 4
Функция ПолучитьТаблицуКурсовНБУ(ДатаКурса, Ежедневно = 1) // если в качестве второго параметра указать число отличное от 1 - получем валюты, которые котируются на ежемесячной основе Перем Reader, Url, Точки, HtmlTab, Строк, Р,...
Cклонения по падежам 4
НаКлиенте Процедура Команда1(Команда) ФИО = " Иванов Иван Иванович" ; Падеж = 2; Пол = 1; Результат = СклонениеФИО(ФИО, Падеж, пол); Сообщить(Результат); КонецПроцедуры НаСервере Функция СклонениеФИО(ФИО, Падеж, пол) ...
Cодержимое указанного ниже веб-сайта в этом приложении блокируется... Aboutsecurity_1cv8c.exe 1
Проблема: После обновления на 1С:Бухгалтерию предприятия 3-й версии, при нажатии на закладку командного интерфейса 1С:предприятие, выскакивает ошибка: Aboutsecurity_1cv8c.exe или Aboutsecurity_1cv8.exe «Содержимое указанного ниже...
Excel файл как Внешний источник данных 6
Подключимся и загрузим из файла Excel данные в таблицу значений 1С. Сделать теперь это очень просто. 1. В конфигурации добавляет новый объект метаданных типа " Внешние источники данных" и назовем его просто " Excel" . ...
Посмотреть все результаты поиска похожих
Комментарии
myr4ik07
16.04.2017 22:32Комментарий: 1
myr4ik07

Ну ти заряжаєш, ти хоть бачиш шо ти скопіював?))))) При чому тут твій вставлений код до тимчасової таблиці?)))) Роззуй очі ))))) Ти б краще без свого куска коду залишив тільки джерело, там дійсно описується те, що ти в назві замітки написав ))).

Ну ти і уважний ))))

Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.