Таблица предопределенных данных.
Функция ТаблицаПредопределенныхДанных() Экспорт
ТаблицаПредопределенных = Новый ТаблицаЗначений;
ТаблицаПредопределенных.Колонки.Добавить("ИмяТаблицы");
ТаблицаПредопределенных.Колонки.Добавить("ИмяТипаXML");
ТаблицаПредопределенных.Колонки.Добавить("Ссылка");
ТаблицаПредопределенных.Колонки.Добавить("ИмяПредопределенныхДанных");
ВидыМетаданных = Новый Массив;
ВидыМетаданных.Добавить(Метаданные.Справочники);
ВидыМетаданных.Добавить(Метаданные.ПланыВидовРасчета);
ВидыМетаданных.Добавить(Метаданные.ПланыВидовХарактеристик);
ВидыМетаданных.Добавить(Метаданные.ПланыСчетов);
ПакетЗапросов = Новый Массив;
СчетчикТаблиц = 0;
ТекстЗапроса = "";
Для Каждого ВидМетаданных Из ВидыМетаданных Цикл
Для Каждого ТекущиеМетаданные Из ВидМетаданных Цикл
Если СчетчикТаблиц = 256 Тогда
ПакетЗапросов.Добавить(Новый Запрос(ТекстЗапроса));
СчетчикТаблиц = 0;
ТекстЗапроса = "";
КонецЕсли;
СчетчикТаблиц = СчетчикТаблиц + 1;
Если СчетчикТаблиц > 1 Тогда
ТекстЗапроса = ТекстЗапроса + "
|ОБЪЕДИНИТЬ ВСЕ";
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + СтрЗаменить("
|ВЫБРАТЬ
| ""#ИмяТаблицы"" КАК ИмяТаблицы,
| Т.Ссылка КАК Ссылка,
| Т.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
|ИЗ
| #ИмяТаблицы КАК Т
|ГДЕ
| Т.ИмяПредопределенныхДанных <> """"",
"#ИмяТаблицы",
ТекущиеМетаданные.ПолноеИмя());
КонецЦикла;
КонецЦикла;
Если СчетчикТаблиц > 1 Тогда
ПакетЗапросов.Добавить(Новый Запрос(ТекстЗапроса));
КонецЕсли;
Для Каждого ТекущийЗапрос Из ПакетЗапросов Цикл
Выборка = ТекущийЗапрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
СтрокаПредопределенных = ТаблицаПредопределенных.Добавить();
ЗаполнитьЗначенияСвойств(СтрокаПредопределенных, Выборка);
СтрокаПредопределенных.ИмяТипаXML = XMLТипЗнч(СтрокаПредопределенных.Ссылка).ИмяТипа;
КонецЦикла;
Выборка = Неопределено;
КонецЦикла;
Возврат ТаблицаПредопределенных;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ОтметитьСсылкиНаПредопределенныеДанные (БСП)
ТипыСопоставляемыхОбщихДанныхПоПредопределенномуИмени (БСП)
ЭтоСсылочныеДанныеПоддерживающиеПредопределенныеЭлементы (БСП)
ПриОбнаруженииНеУникальностиПредопределенного (БСП)
Дополнить таблицу значений - приемника данными из таблицы значений - источника
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)