Справочники 1С — специализированный объект древа метаданных, который служит для хранения статичной информации справочного характера. Например, в типовых конфигурациях можно увидеть следующие виды: , Номенклатура, Сотрудники, Основные средства и т.д. Информация в справочниках, как правило, часто не изменяется. Справочники в дальнейшем используются практически во всех объектах учета как разрез учета или справочная информация.
Ниже мы рассмотрим настройку и проектирование справочника из конфигуратора на примере справочника «Номенклатура».
Вкладка «Основные»
На вкладке «Основные» указывается имя, синоним, представление объектов, описание назначения.
Вкладка «Иерархия справочника»
Здесь устанавливается иерархичность справочника.
Иерархия в 1С 8.3 бывает двух типов — «групп и элементов » и «элементов «. Отличается тем, что в первом случае родителем (папкой) может быть только папка (группа), а во втором случае родителем может быть и элемент.
«Размещать группы сверху» — флаг отвечает за отображение групп в форме списка.
Также в настройках можно ограничить количество групп иерархии справочника соответствующей настройкой.
Вкладка «Владельцы»
Справочник может быть подчинен другому справочнику. С точки зрения конфигурирования 1С 8.3 это значит, что у подчиненного элемента становится обязательным реквизит «Владелец». Пример такой связи справочников в типовых конфигурациях «Номенклатура — Единицы Измерения», «Контрагенты-Договоры Контрагентов».
Владельцем справочника могут также быть следующие объекты метаданных: , .
Вкладка «Данные»
Получите 267 видеоуроков по 1С бесплатно:
Самая важная вкладка с точки зрения программиста. На ней указываются реквизиты справочника.
У справочника есть набор стандартных реквизитов, которые не редактируются программистом 1С 8.2, список их можно увидеть, нажав кнопку «Стандартные реквизиты»:
Остановлюсь на каждом подробнее:
- ЭтоГруппа — реквизит с типом булево, показывающий, группа это или элемент. Доступен только в иерархическом справочнике. Обратите внимание, значение этого реквизита невозможно изменить в режиме 1С: Предприятие .
- Код — реквизит, тип число или строка (как правило строка). Номер, присваиваемый системой автоматически. Как правило, рассчитывается как (предыдущий код + 1). Рекомендую использовать именно строковый тип, потому как сортировка числовых значений происходит не так, как нужно. Можно использовать как представление справочника в списке и в полях ввода. Как правило, используется для поиска элемента при вводе по строке. Если Вам нужно убрать поле Код, укажите в длине строки ноль.
- Наименование — реквизит, обязательный к заполнению, строкового типа. Максимальная длина строки — 150 символов. Можно использовать как представление справочника в списке и в полях ввода. Как правило, используется для поиска элемента при вводе по строке. Если Вам нужно убрать поле Наименование, укажите в длине строки ноль.
- Родитель — реквизит, имеющий тип СправочникСсылка.<ИмяТекущегоСправочника>. Доступен только в иерархическом справочнике. Указывает на вышестоящего родителя в иерархии. Если Элемент или Группа находятся в корне справочника, указывается значение Справочник.<ИмяТекущегоСправочника>.ПустаяСсылка.
- Владелец — ссылка на элемент-владелец текущего элемента (группы) справочника. Доступен только в подчиненном справочнике 1С .
- ПометкаУдаления — реквизит с типом булево. Отвечает за отображение «пометки удаления» в системе. Помеченный на удаление элемент считается непригодным к использованию, однако на нём могут оставаться старые движения в документах.
- Ссылка — поле строкового типа. В этом реквизите хранится уникальный идентификатор объекта — GUID. То, что в системе мы видим в визуальном отображении под название «ссылка», — это всего лишь представление объекта. Невозможно изменить.
- Предопределенный — тип булево, отображает, является ли элемент предопределенным, об этом позже. Невозможно изменить.
На вкладке «Данные» так же указывается представление справочника в системе, до версии 8.2.16 представление могло быть лишь Кодом или Наименованием. В свежих версиях платформы (начиная с 8.3) представление можно описать самостоятельно в модуле менеджера с помощью обработчика «ОбработкаПолученияПредставления».
Вкладка «Нумерация»
Здесь указываются настройки справочника по части нумерации. Рекомендуется использовать именно автонумерацию. Контроль уникальности — флаг, который помогает, если нужно, сделать код уникальным. Если с установленным флагом Вы попытаетесь записать элемент справочника с неуникальным кодом, в 1С Вы получите сообщение «Код справочника стал неуникальным».
Серия кодов — определяет, как нумеровать справочник, можно ввести нумерацию справочника в разрезе владельца. Например, у контрагента «Рога и копыта» будет иметься своя нумерация договоров — «1, 2, 3» и тд.
Вкладка «Формы»
Тут описываются формы для справочника. Если конфигурация запускается как в обычном, так и управляемом режиме, тогда вкладок с формами по умолчанию будет две: «основные» и «дополнительные» — для обычного и управляемого приложения разные.
На этой странице есть немаловажное свойство справочника — ««. Это очень удобная функция 1С 8, позволяющая при заполнении данных в поле ввода не заходить в справочник, а набрать его наименование, код или т.п. и выбрать из выпадающего списка нужный элемент. Выглядит это так:
Вкладка «Прочее»
На вкладке можно получить быстрый доступ к основным модулям справочника — модулю объекта и модулю менеджера.
На странице можно также определить список предопределенных элементов справочника. Это элементы, которые невозможно удалить в режиме Предприятия. К предопределенным элементам можно обратиться в конфигураторе напрямую, по имени, например: Справочники.Номенклатура.Услуга.
На этой вкладке также определяется режим блокировки — автоматический или управляемый. Использование полнотекстового поиска, а также справочная информация о справочнике, доступная в режиме 1С: Предприятия.
Клюев В.В.
http://prof1c.kklab.ru
Подчинённые справочники
Скорее всего Вы уже неоднократно замечали в обычных типовых конфигурациях, взаимосвязанные между собой справочники, когда при выборе элемента справочника(справочник1), значение другого справочника(справочник2) «фильтруется» по этому значению - то есть выбираются значения, принадлежащие только текущему элементу справочника1; к примеру - это Справочник «Подразделения», владельцем которого является Справочник «Организации».
Для того, чтобы сразу вникнуть в суть происходящего, давайте посмотрим что происходит на практике. Для этого, вы можете, создать пустую конфигурацию с нуля, либо зайти в какую-либо имеющуюся копию информационной базы и в конфигураторе создать 2 справочника.
Справочник1 и Справочник2. В справочнике2 перейдите на вкладку «Владельцы» и выберите владельца - «Справочник1», смотрите как показано на рисунке.
Теперь при создании элементов в «Справочнике2», система будет просить ввести владельца справочника1. Есть опция - Использование подчинения - когда задается подчинение Элементам, группам, или группам и элементам.
Казалось бы всё просто, но проблемы возникают у пользователей. Пользователь при открытии «Справочника2» видит все элементы в совершенно непонятном порядке, да и к тому же, если вы работали с типовыми конфигурациями, то могли заметить, что напрямую в справочнике «Подразделения» вы нигде не задаёте владельца, а при открытии справочника можете выбирать организацию и в зависимости от этого получать элементы, подчинённые той или иной организации; при этом при создании элемента справочника «Подразделения» по умолчанию вы получите того владельца, которого выбрали в форме списка подразделений.
Итак приступим, и создадим «Форму списка» для нашего «Справочника2», пока предоставьте это 1С, не внося никаких изменений, позже мы подкорректируем созданную конструктором форму.
В «Справочнике2» перейдите на вкладку Формы и добавьте (+) новую Форму списка справочника и нажмите Готово.
Создадим реквизит формы с типом данных «Справочник1.Ссылка», с именем «ОтборСправочник1», и перетащим этот реквизит на форму, задайте заголовок «Справочник1».
Теперь, для того, чтобы «сие чудо» заработало, необходимо написать код, который будет выполнять отбор при выборе Элемента Справочника1.
8.2, 8.3 Управляемые формы
Для того, чтобы отобразить в форме списка справочника только необходимые нам элементы по выбранному элементу Справочника1, необходимо программно сделать отбор - по выбранному элементу, для этого воспользуемся предопределенной процедурой элемента управления ОтборСправочник1, и напишем код, выполняющие указанную задачу.
В верхней части выберите «ОтборСправочник1» нажмите на правую клавишу мыши и выберите «Свойства», в появившемся окне найдите свойство «ПриИзменении» и нажмите лупу, тем самым перейдя в модуль формы; автоматически создается процедура «ОтборСправочник1ПриИзменении(Элемент)»
В процедуре введите следующий текст:
& НаКлиенте Процедура ОтборСправочник1ПриИзменении(Элемент) Список. Отбор. Элементы. Очистить() ; // ЭлементОтбора = Список. Отбор. Элементы. Добавить(Тип(" ЭлементОтбораКомпоновкиДанных " ) ) ; ЭлементОтбора. ЛевоеЗначение = Новый ПолеКомпоновкиДанных(" Владелец " ) ; ЭлементОтбора. ВидСравнения = ВидСравненияКомпоновкиДанных. Равно; ЭлементОтбора. Использование = Истина ; ЭлементОтбора. ПравоеЗначение = ОтборСправочник1; ЭлементОтбора. РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных. Недоступный; КонецПроцедуры8.2 Обычные формы
При построении форм - всё то же самое, только формы необходимо создавать обычные, управляемые формы в обычном приложении не работают.
Разница будет состоять в процедуре отбора для элемента в форме списка и создании реквизита.
Чтобы добавить реквизит на обычную форму нажмите кнопку
Предпоследней строкой(?) - запрещаем изменять отбор при открытии параметров отбора пользователем - только через элемент управления!
Видео (без звука - все понятно без звука)
Вопрос: обновление Учет в управляющих компаниях ЖКХ 3.0.44.17 на 3.0.44.18
При попытке обновить конфигурацию "Учет в управляющих компаниях ЖКХ, ТСЖ и ЖСК " с 3.0.44.17 на 3.0.44.18 вылезает ошибка "Не может быть изменен владелец у справочника: Формы статистики". Тестирование и исправление не выявляет никаких ошибок. Предыдущие обновления ставились подряд и никаких проблем не вызывали.Подскажите куда копать?
Ответ:
Косяк разрабов. Я решил эту проблему так:
- В исходной конфе добавляем владельца справочник "РегламентированныеОтчеты"
- Обработкой меняем владельцев (по коду) с "УдалитьРегламентированныеОтчеты" на "РегламентированныеОтчеты"
- Удаляем владельца "УдалитьРегламентированныеОтчеты" из списка владельцев в конфигурации
- Обновляем
Вопрос: "Обмен данными с ГИС ЖКХ" не грузит идентификаторы лицевых счетов (Учет в УК ЖКХ, ТСЖ и ЖСК 3.0.56.1
Ответ:
Вопрос: 1С Учет в управляющих компаниях ЖКХ, ТСЖ и ЖСК.
ЖКХ-шники есть кто юзает сей продукт ред 3.0?
Не понимаю как завести услугу, которая рассчитается из других услуг.
Вопрос, в частности, по водоотведению. Объем водоотведения должен считаться как сумма объемов услуг оснований - это ХВС и ГВС. Правило должно работать как по нормативу, так и по счетчикам.
Кто подскажет?
Ответ:
спасибо
Вопрос: Вопрос по 1С бухгалтерия(Учет в управляющих компаниях ЖКХ)