Как сделать иерархический справочник в 1с

Обновлено: 05.07.2024

Есть несколько вариантов того, как можно получить элементы из определенной группы справочника. Предположим, что у нас на форме есть поле выбора ПолеВводаРодитель в котором указываем родителя (группу).

Вариант 1

[php]
Выборка = Справочники.Номенклатура.Выбрать(ПолеВводаРодитель);
Пока Выборка.Следующий() Цикл
Наименование = Выборка.Наименование;
КонецЦикла;
[/php]

Вариант 2

[php]
Запрос = Новый Запрос("
|ВЫБРАТЬ
| Ссылка,
| Наименование
|ИЗ
| Справочник.Номенклатура
|ГДЕ
| Родитель = &Родитель
|АВТОУПОРЯДОЧИВАНИЕ");
Запрос.УстановитьПараметр("Родитель", ПолеВводаРодитель);
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
Наименование = Результат.Наименование;
КонецЦикла;
[/php]

Вариант 3 (с иерархией)

[php]
Выборка=Справочники.Номенклатура.ВыбратьИерархически(ПолеВводаРодитель);
Пока Выборка.Следующий() Цикл
Наименование = Выборка.Наименование;
КонецЦикла;
[/php]

Вариант 4 (с иерархией)

[php]
Запрос = Новый Запрос("
|ВЫБРАТЬ
| Ссылка,
| Наименование
|ИЗ
| Справочник.Номенклатура
|ГДЕ
| Родитель В ИЕРАРХИИ(&Родитель)
|АВТОУПОРЯДОЧИВАНИЕ");
Запрос.УстановитьПараметр("Родитель", ПолеВводаРодитель);
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
Наименование = Результат.Наименование;
КонецЦикла;
[/php]

Про справочник и его окно редактирования можно прочитать здесь.

1. Запустим информационную базу в режиме “конфигуратор” (описание).

2. Откроем конфигурацию (Пункт меню “Конфигурация” -> открыть конфигурацию, либо выбрав одноименную кнопку на панели инструментов)

3. В дереве конфигурации выберем соответствующую ветку “Справочники”.

4. Создадим справочник для этого воспользуемся пунктом “Действия – Добавить”, также можно воспользоватся контекстным меню, нажав по соответствующей группе.

5. В результате откроется окно редактирования (рис.1).

А в поле синоним вводим имя которое будет видеть пользователь, его можно изменять постоянно, в отличии от имени.

Имя для программы (использования в коде), а синоним для пользователя (визуальный). При изменении имени придется менять только код программы, т.к. ссылки на справочник в данных изменяется автоматически.

Также можно указать синонимы для каждого вида окна.


На закладке подсистемы указываете наиболее подходящую для него подсистему или несколько.


Если вы хотите сделать справочник иерархическим, указываете это в закладке Иерархия. К примеру у сотрудников это может быт Подразделения.


Если у вас будет несколько организаций (к примеру), то можно задать с помощью Владельца. Т.к. поле обязательно всем, но можно использовать и иерархию.


Самое главное это создание реквизитов. Я увеличил длину наименования, т.к. будет содержать ФИО сотрудника. Чтобы удалить/отключить наименование или код, просто укажите длину 0.


Результат, форма нового элемента. Заметьте Табельный номер это Код, и его изменять нельзя.


Т.к. Код не должен заполнятся автоматически, убираем галку Автонумерация на закладке Нумерация.

Продолжение одинэсной темы, ответы на книгу Радченко, занятие 2 и 3.

Для чего используется объект конфигурации "Подсистема"?
Подсистема - основной элемент для построения интерфейса 1С:Предприятие. Подсистемы выделяют в конфигурации функциональные части, на которые логически разбивается прикладное решение.

Как описать логическую структуру при помощи Подсистем?
При помощи разделения на функциональные части, представляющие собой отдельные предметные области.

Как управлять порядком вывода и отображения подсистем в конфигурации?
Правый клик мыши по конфигурации, выбираем команду "Открыть командный интерфейс конфигурации", поменять позиции можно с помощью стрелочек.


Управление порядком вывода подсистем.


Что такое окно редактирования объекта конфигурации и в чем его отличие от панели свойств?

Окно редактирования - в основном используется для создания новых объектов.
Палитра свойств - не привязано к конкретному объекту конфигурации.

Для чего предназначен объект конфигурации Справочник?
Справочник предназначен для работы со списками данных, описания их свойств и структуры.

Какие характерные особенности объекта конфигурации Справочник?
Справочник состоит из элементов; Каждый элемент представляет собой отдельную запись в таблице, хранящей информацию из этого справочника;
Элемент также может содержать дополнительную информацию, которая подробнее описывает этот элемент - одинаковый для всех элементов справочника - реквизит; Реквизит также является объектом конфигурации;

Для чего используются реквизиты и табличные части справочника?
Реквизиты используются для описания дополнительной информации, описывающей элемент справочника;
Табличная часть используется для описания информации элемента справочника, одинаковой по структуре, но различной по количеству.

Зачем нужны иерархические справочники и что такое Родитель?
Иерархические справочники нужны для группировки элементов справочника по какому-либо признаку или принципы. Различаются несколько типов иерархий: иерархия групп и элементов - элемент справочника, представляющий группу - родитель для всех элементов и групп, входящих в эту группу;
Иерархия элементов - родителем является не группой элементов справочника, а непосредственно сам элемент.

Зачем нужны подчиненные справочники и что такое Владелец?
Элементы одного справочника могут быть подчинены элементам другого справочника, и в таком случае устанавливается связь один-ко-многим. Так же может быть использована связь один-к-одному, когда каждый элемент подчиненного справочника связан с одним из элементов справочника-владельца.

Какие основные формы существуют у справочника?
Форма элемента - для редактирования или создания элемента справочника;
Форма группы - для редактирования или создания группы справочника;
Форма списка - для отображения списка элементов в справочнике;
Форма выбора группы - для выбора одной из группы справочника;

Что такое предопределенные элементы справочника?
Элементы справочника, создающиеся в конфигураторе, данные элементы пользователь удалить не может; Служат для хранения информации всегда, независимо от действий пользователя;

Чем с точки зрения конфигурации отличается обычный элемент от предопределенного?
На предопределенные элементы могут быть завязаны алгоритмы работы конфигурации, следовательно, система добавляет эти элементы в структуру базы данных сама, без участия пользователя.


Как пользователь может отличить обычный элемент от предопределенного?
С помощью пиктограммы


Как создать объект конфигурации справочник и описать его структуру?
Создать новый справочник - структура - на вкладках иерархия, данные, рисунки сюда


На вкладке Иерархия можно выбрать тип иерархии элементов.

На вкладке Данные происходит определение реквизитов и табличных частей

Для добавления элемента необходимо нажать на кнопку "Создать".

Как создать группу справочника?
Через режим 1С:Предприятие


Если данный справочник поддерживает возможность создания групп (иерархический справочник), то будет активна кнопка "добавить группу"


Зачем нужна основная конфигурация и конфигурация Базы Данных?
Основная конфигурация - конфигурация для разработчика. Конфигурация Базы Данных - для работы с пользователями.

Как изменить конфигурацию Базы Данных?
Никак. Можно только провести обновление до состояния основной конфигурации.

Как связаны объекты конфигурации и объекты базы данных?
Объекты конфигурации описывают хранилища, таблицы. А объекты Базы Данных - записи, которые содержатся в этих таблицах.

Что такое подчиненные объекты конфигурации?
Реквизиты, табличные части и др.

Зачем нужна проверка заполнения реквизитов у справочника?
Чтобы пользователь не мог ввсети пустые или некорректные записи.

Что такое быстрый выбор и когда его использовать?
Для выбора элементов не из отдельной формы, а из выпадающего списка, заполненного элементами этого справочника.

Как отобразить справочник и определить его представление в различных разделах интерфейса приложения?
Чтобы отобразить - правый клик по справочнику, вкладка "Изменить", вкладка "Подсистемы".
Представление справочника - вкладка "Основные", потом Общие - подсистемы - все подсистемы. сюда рисунки

Как отобразить команды создания нового элемента справочника в интерфейсе подсистем?
Общие - подсистемы - все подсистемы - галка "Номенклатура: создать"


Как редактировать командрый интерфейс подсистемы?
Общие - подсистемы - все подсистемы. Вверху - поле "Командный интерфейс"


22 комментария:

А на последний вопрос))) Такой же лентяй ))


а какой там последний вопрос?

Также он пропустил и 11-ый вопрос к занятию 3 - "Как задать синоним стандартного реквизита?".
Отвечаю на него:
На закладке "Данные" нажмём внизу окна кнопку "Стандартные реквизиты". Выделим в списке нужный реквизит и двойным щелчком мыши откроем его палитру свойств. Установим свойство "Синоним" такое, какое нам нужно.

пы сы:
Благодарю за проделанный труд!! (ИльяНН)


Спасибо вам, добавил в пост ваш ответ. А я еще в 2013 году лоханулся и купил книгу издательства 2010 года, так что за 6 лет действительно могли набежать изменения)

Этот комментарий был удален автором.

В вопросе: "Какие основные формы существуют у справочника?", не хватает одной формы.
1.Форма элемента
2.Форма группы
3.Форма списка
4.Форма выбора (вот она)
5.Форма выбора группы
(5 форм всего, а у Вас четыре).

Как настроить командный интерфейс разделов приложения?

Братан ты лучший

Если срочно нужны средства, Рейтинг кредитов Тогда мфк является быстрым и эффективным союзником в решении возникшей проблемы. Мфк предоставляет возможность оформлять кредиты всем категориям физических лиц. Есть онлайн-регистрация, при этом потребителю не нужно куда-то ехать, и оформлять огромный пакет бумаг. Интернет-сервисы позволяют покупать деньги не позднее, чем через короткое время после регистрации формы. Существует мгновенный обзор анкеты. Практически любой желающий может воспользоваться уникальным и выгодным предложением. Чтобы соответствовать такому правилу, вам необходимо будет соответствовать следующим параметрам: - • Возраст - старше примерно 20 лет; - * гражданство - российская федерация. Все. Никаких дополнительных критериев нет. Некоторые мфк указывают на наличие стабильного дохода и не регрессирующего в размере государства. Но почти никто не потребует от вас наличия корочек, подтверждающих этот статус. Частные предприниматели имеют возможность получить кредит при отсутствии справки о доходах, трудовой книжки и т. Д. Для подписания кредитного договора вам понадобится только паспорт гражданина российской федерации. Ряд учреждений дополнительно запрашивают снилс. Что касается технического оснащения, вам нужна онлайн-почта, банковская карта, смартфон и онлайн-пространства для размещения заказа. Зарабатывать деньги можно после того, как появится альтернативное программное обеспечение компании, и ей будет выдана услуга. Процедура получения занимает не более 12 минут. Существует автоматизированная сеть рассмотрения заявок. Алгоритм проектирования выглядит следующим образом: - 1. Определите методы кредитования. - 2. Отправьте запрос в выбранную мфк. При необходимости предварительно зарегистрируйтесь; - 3. Подпишите электронный договор по электронной почте или в своем офисе; - 4. Получите кредитную карту. Мы оказываем помощь в поиске и приобретении банковских услуг, мы поможем вам заказать подходящую микрофинансовую компанию, в которой вам будет одобрен быстрый кредит и вам гарантированы деньги.

С этого года в нашей стране действуют юридические табу на переплату по кредитам в течение полугода, даже по максимальной ставке по всем кредитам (менее 1% в день). Нововведения оказали наибольшее влияние на более выгодные кредиты для мфо "до зарплаты" - выдача таких кредитов для многих компаний стала "экономически нецелесообразной", отмечают аналитики. В финале участники рынка начали сокращать долю краткосрочных кредитов и увеличивать сроки погашения кредитов. Мфо хотели выдавать больше кредитов, не включая долговое бремя финансирования клиентов Отныне происходит одно, а также в сегменте интернета - компании доработали продукты так, что формально кредиты pdl не считаются кредитами, говорит иван уклеин, директор департамента рейтингов кредитных организаций "эксперт ра": "ни одна мфо не переориентировалась с краткосрочных микрозаймов на долгосрочные продукты с аннуитетными платежами (180-360 дней под 150-200%), после чего на промежуточный продукт (31 - пара месяцев под 365%) с синхронным увеличением счета до ста процентов тысяч рублей. Что при той же ставке позволяет кредитору зарабатывать больше, не отражая такой микрокредит в отчетности как pdl." По данным банка российской федерации, в другом квартале следующего года портфель мфо вырос на семь%, до 286 млрд рублей, что соответствует докризисным уровням текущего года. Развитие рынка происходило и происходит в основном за счет цифровизации и предоставления потребительских микрокредитов онлайн, подчеркивает центральный банк. Такие кредиты сейчас составляют 28 % портфеля, но за квартал портфель среднесрочных онлайн-кредитов вырос на тридцать, а краткосрочных – на 12 %. Всего за один квартал мфо дистанционно заключили семь, восемь миллионов новых договоров - 71 % от общего числа. За 6 месяцев число россиян, имеющих микрозаймы, выросло абсолютно на 20%. Финансы Как отмечает уклейн, такая "номинальная" миграция на пути к среднесрочным кредитам должна вызывать тревогу. "Промежуточные продукты, проще говоря, являются точно такими же pdl с погашением в конце срока, однако теперь это предоставляется на более длительный срок и в очень высокой сумме. С точки зрения макропруденциальных рисков это повышает кредитоспособность заемщиков, поскольку ставка по таким микрозаймам остается близкой к 365 % годовых", - поясняет аналитик. Рбк разослал тему крупнейшим мфо в портфеле потребительских кредитов. Группа "финбридж" (бренды "куш немедленно" и lemon.Онлайн) сообщил, как в другом квартале "они специально не отказались от продуктов pdl", но обновили линейку благодаря среднесрочным кредитам. " Структура спроса меняется, накапливается все больше заемщиков, склонных к большим расходам и долгосрочному финансовому планированию", - пояснил управляющий партнер группы леонид корнилов. По его словам, основной причиной изменения тренда в следующем году является более необычный продукт, и довольно часто компании только сейчас смогли оформить структуру онлайн. Остальные микрофинансовые компании не брали трубку по просьбе рбк. У владельцев есть некоторые вопросы о том, где и можете ли вы использовать займ до зарплаты, У вас может быть возможность посетить нас на нашем портале.

В данном разделе показаны примеры решения типовых задач при работе с иерархическими справочниками.

Получение элементов иерархического справочника, находящихся в подчинении заданной группы

Для получения подчиненных элементов иерархического справочника в языке запросов предусмотрена конструкция В ИЕРАРХИИ. Пример использования В ИЕРАРХИИ:

ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Наименование КАК Наименование,
Номенклатура.ЗакупочнаяЦена
ИЗ
Справочник.Номенклатура КАК Номенклатура

ГДЕ
Номенклатура.Ссылка В ИЕРАРХИИ(&Группа)

В данном примере будут получены все записи справочника Номенклатура, находящиеся в группе &Группа, включая ее саму, ее подчиненные группы и элементы, принадлежащие подчиненным группам.

Если же нас интересуют только элементы и группы, находящиеся непосредственно в заданной группе, то такие элементы мы можем получить установив условие на поле Родитель. Пример:

ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Наименование КАК Наименование,
Номенклатура.ЗакупочнаяЦена
ИЗ
Справочник.Номенклатура КАК Номенклатура

ГДЕ
Номенклатура.Родитель = &Группа

Такой запрос выберет группы и элементы, находящиеся в подчинении группы со ссылкой &Группа.

Проверка наличия подчиненных элементов у элемента справочника

Для проверки наличия подчиненных записей элемента справочника можно пользоваться запросом, аналогичным представленному:

ВЫБРАТЬ ПЕРВЫЕ 1
Номенклатура.Ссылка
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
Номенклатура.Родитель = &Родитель

Получение всех родителей элемента

В языке запросов не предусмотрено специальных средств для получения всех родителей элемента. Для выполнения задачи можно воспользоваться иерархическими итогами, однако получение иерархических итогов оптимизировано для построения итогов большого количества записей, и не вполне эффективно для получения родителей одного элемента. Для более эффективного получения всех родительских записей элемента, рекомендуется перебирать в цикле его родителей небольшими порциями. Пример:

Если ТекущийЭлементНоменклатуры = Справочники.Номенклатура.ПустаяСсылка() Тогда
Прервать;
КонецЕсли;
КонецЦикла;

Если число уровней в справочнике ограничено и невелико, то возможно получение всех родителей одним запросом без цикла.

Вывод иерархического справочника в отчет

Для вывода иерархического справочника в отчет с сохранением иерархии необходимо пользоваться запросом аналогичным следующему:

ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Наименование КАК Наименование,
Номенклатура.ЗакупочнаяЦена
ИЗ
Справочник.Номенклатура КАК Номенклатура
УПОРЯДОЧИТЬ ПО
Наименование ИЕРАРХИЯ

Данный запрос выбирает все записи из справочника и производит упорядочивание по иерархии. Результат будет упорядочен по наименованию, с учетом иерархии.

Для того чтобы группы справочника размещались выше элементов необходимо в данном запросе заменить предложение УПОРЯДОЧИТЬ ПО на следующее:

УПОРЯДОЧИТЬ ПО
Номенклатура.ЭтоГруппа ИЕРАРХИЯ,
Наименование

Результат по-прежнему будет упорядочен по иерархии, однако группы будут располагаться выше элементов.

Возможна также замена предложения УПОРЯДОЧИТЬ ПО на предложение АВТОУПОРЯДОЧИВАНИЕ. В этом случае результат будет упорядочен в соответствии с настройками справочника, т.е. если в справочнике указано, что группы должны располагаться выше элементов, то они будут расположены выше.

Получить иерархическую структуру справочника также возможно и при помощи итогов.

ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Наименование КАК Наименование,
Номенклатура.ЗакупочнаяЦена

ИЗ Справочник.Номенклатура КАК Номенклатура

ГДЕ
(Номенклатура.ЭтоГруппа = ЛОЖЬ)

УПОРЯДОЧИТЬ ПО Наименование

ИТОГИ ПО Номенклатура.Ссылка ТОЛЬКО ИЕРАРХИЯ

Получение итогов по иерархии

ВЫБРАТЬ
УчетНоменклатурыОбороты.Номенклатура КАК Номенклатура,
УчетНоменклатурыОбороты.Номенклатура.Представление,
УчетНоменклатурыОбороты.КоличествоОборот КАК КоличествоОборот
ИЗ
РегистрНакопления.УчетНоменклатуры.Обороты КАК УчетНоменклатурыОбороты
ИТОГИ СУММА(КоличествоОборот) ПО
Номенклатура ИЕРАРХИЯ

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

В случае, когда не нужны итоги по элементам, а нужны итоги только по группам, нам необходимо использовать в итогах конструкцию ТОЛЬКО ИЕРАРХИЯ. Пример:

ВЫБРАТЬ
УчетНоменклатурыОбороты.Номенклатура КАК Номенклатура,
УчетНоменклатурыОбороты.Номенклатура.Представление,
УчетНоменклатурыОбороты.КоличествоОборот КАК КоличествоОборот
ИЗ
РегистрНакопления.УчетНоменклатуры.Обороты КАК УчетНоменклатурыОбороты
ИТОГИ СУММА(КоличествоОборот) ПО
Номенклатура ТОЛЬКО ИЕРАРХИЯ

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

Для вывода иерархического справочника в отчет с сохранением иерархии необходимо пользоваться запросом аналогичным следующему:
Код 1C v 8.х

Данный запрос выбирает все записи из справочника и производит упорядочивание по иерархии. Результат будет упорядочен по наименованию, с учетом иерархии.

Для того чтобы группы справочника размещались выше элементов необходимо в данном запросе заменить предложение УПОРЯДОЧИТЬ ПО на следующее:
Код 1C v 8.х

Результат по-прежнему будет упорядочен по иерархии, однако группы будут располагаться выше элементов.

Возможна также замена предложения УПОРЯДОЧИТЬ ПО на предложение АВТОУПОРЯДОЧИВАНИЕ. В этом случае результат будет упорядочен в соответствии с настройками справочника, т.е. если в справочнике указано, что группы должны располагаться выше элементов, то они будут расположены выше.

Получить иерархическую структуру справочника также возможно и при помощи итогов.
Код 1C v 8.х

Проконсультироваться
со специалистом 1С


Для вывода иерархического справочника в отчет с сохранением иерархии необходимо пользоваться запросом аналогичным следующему:
Код 1C v 8.х

Данный запрос выбирает все записи из справочника и производит упорядочивание по иерархии. Результат будет упорядочен по наименованию, с учетом иерархии.

Для того чтобы группы справочника размещались выше элементов необходимо в данном запросе заменить предложение УПОРЯДОЧИТЬ ПО на следующее:
Код 1C v 8.х

Результат по-прежнему будет упорядочен по иерархии, однако группы будут располагаться выше элементов.

Возможна также замена предложения УПОРЯДОЧИТЬ ПО на предложение АВТОУПОРЯДОЧИВАНИЕ. В этом случае результат будет упорядочен в соответствии с настройками справочника, т.е. если в справочнике указано, что группы должны располагаться выше элементов, то они будут расположены выше.

Получить иерархическую структуру справочника также возможно и при помощи итогов.
Код 1C v 8.х

Читайте также: