Чтение структуры справочников
Цикл по справочникам
КолвоСправочниковВКонфигурации = Метаданные.Справочник(); Для Ном=1 По КолвоСправочниковВКонфигурации Цикл кфгСпр = Метаданные.Справочник(Ном); Идентификатор = кфгСпр.Идентификатор(); ПолныйИдентификатор = кфгСпр.ПолныйИдентификатор(); Синоним = кфгСпр.Синоним(); Комментарий = кфгСпр.Комментарий(); КоличествоУроней = кфгСпр.КоличествоУроней(); ПодчиненЛи = кфгСпр.Владелец().Выбран(); Владелец = кфгСпр.Владелец(); ИдентификаторВладельца = кфгСпр.Владелец().Идентификатор; .....<и так далее> КонецЦикла;
т.е. если вызвать метод Метаданные.Справочник() без параметров, то он вернет общее количество справочников в конфигурации. Если передать ему в качестве параметра номер или название справочника, то он вернет справочник как объект конфигурации.
Цикл по реквизитам справочника
кфгСпрСотр = Метаданные.Справочник(“Сотрудники”); КолвоРеквизитов = кфгСпрСотр.Реквизит(); Для Ном=1 По КолвоРеквизитов Цикл кфгРекв = кфгСпрСотр.Реквизит(Ном); Идентификатор = кфгРекв.Идентификатор(); ПолныйИдентификатор = кфгРекв.ПолныйИдентификатор(); Синоним = кфгРекв.Синоним(); Комментарий = кфгРекв.Комментарий(); Тип = кфгРекв.Тип(); //“Строка”, “Число”, “Справочник” Вид = кфгРекв.Вид(); //напр. “Сотрудники” Длина = кфгРекв.Длина(); Точность = кфгРекв.Точность(); Периодический = кфгРекв.Периодический(); .....<и так далее> КонецЦикла;
т.е. если вызвать метод Метаданные.Справочник(Х).Реквизит() без параметров, то он вернет общее количество реквизитов справочника Х в конфигурации. Если передать ему в качестве параметра номер или название реквизита, то он вернет реквизит справочника как объект конфигурации.
|