Проект

Общее

Профиль

Универсальные процедуры и функции (метаданные) » История » Версия 2

Версия 1 (Всеволод Дорофеев, 04.06.2017 06:43) → Версия 2/3 (Всеволод Дорофеев, 04.06.2017 06:45)

h1. Универсальные процедуры и функции (метаданные)

h3. Возвращает полное имя объекта метаданных по переданному значению ссылки

<pre>
// Возвращает полное имя объекта метаданных по переданному значению ссылки
// Например,
// "Справочник.Номенклатура";
// "Документ.ПриходнаяНакладная"
//
// Параметры:
// Ссылка - ЛюбаяСсылка - значение ссылки, для которого необходимо получить имя таблицы ИБ
//
// Возвращаемое значение:
// Строка - полное имя объекта метаданных для указанного значения ссылки
//
Функция ИмяТаблицыПоСсылке(Ссылка) Экспорт

Возврат Метаданные.НайтиПоТипу(ТипЗнч(Ссылка)).ПолноеИмя();

КонецФункции
</pre>

h3.
Получение реквизитов объектов (справочников и документов)

Получения реквизитов документа:
<pre>
Для Каждого Реквизит Из Документ.Метаданные().Реквизиты Цикл
НоваяСтрока = РеквизитыДокумента.Добавить();
НоваяСтрока.Реквизит = Реквизит.Имя;
НоваяСтрока.Значение = Документ[Реквизит.Имя];
КонецЦикла;
</pre>

РеквизитыДокумента - таблица значений с двумя полями "Реквизит" и "Значение".

Получение табличных частей документа и их реквизитов:
<pre>
Для Каждого ТабличнаяЧасть Из Документ.Метаданные().ТабличныеЧасти Цикл
Сообщить(ТабличнаяЧасть);
Для Каждого РеквизитТЧ Из ТабличнаяЧасть.Реквизиты Цикл
Сообщить(" - " + РеквизитТЧ);
КонецЦикла
КонецЦикла;
</pre>