04.02.2020 Денис Белоконенко 32253
Произвольная иерархия в 1С СКД

Содержание

1.    Построение иерархии ссылочного типа

2.    Пример с реквизитом «Спецификация» справочника Номенклатура  

 

1.      Построение иерархии ссылочного типа

 

Для построения иерархии для ссылочного типа в 1С СКД в настройках группировки проставляется «Иерархия» либо «Только иерархия». При таком установке СКД создает невидимый для пользователя дополнительный большой набор данных.


Приведем простой пример. Есть набор «Остатки» с запросом:


ВЫБРАТЬ

            ТоварыНаСкладахОстатки.НоменклатураКАК Номенклатура,

            ТоварыНаСкладахОстатки.ВНаличииОстатокКАК Остаток

ИЗ

            РегистрНакопления.ТоварыНаСкладах.ОстаткиКАК ТоварыНаСкладахОстатки

    

Для вывода иерархии СКД создаст дополнительный набор вида:


ВЫБРАТЬ

            Номенклатура.СсылкаКАК Номенклатура,

            Номенклатура.ПредставлениеКАК Представление,

            Номенклатура.РодительКАК Родитель,

            Номенклатура.НаименованиеКАК Наименование

ИЗ

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

ГДЕ

            Номенклатура.СсылкаВ(&Ссылки)

 

Помимо этого будут прописаны связи между этими наборами.




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


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

Зная, как отчет СКД формирует иерархию группы, можно таким же построением сделать свой собственный метод иерархии.


Приведем пример. Нужно по остаткам номенклатуры создать иерархию, по созданному реквизиту «Номенклатура разборки». «Номенклатура разборки» имеет тот же тип номенклатуры, причем он тоже может иметь свою номенклатуру разборки. Создадим два набора данных.


ВЫБРАТЬ

            ТоварыНаСкладахОстатки.НоменклатураКАК Номенклатура,

            ТоварыНаСкладахОстатки.ВНаличииОстатокКАК Остаток

ИЗ

            РегистрНакопления.ТоварыНаСкладах.ОстаткиКАК ТоварыНаСкладахОстатки

ВЫБРАТЬ

            Номенклатура.СсылкаКАК Номенклатура,

            Номенклатура.НоменклатураРазборкиКАК Родитель

ИЗ

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

ГДЕ

            Номенклатура.СсылкаВ(&Ссылки)

 

Соединим их по аналогии с прошлым примером.




Формируем отчет. Получим:




Тут есть одно «но». Механизм отбора «В группе» по номенклатуре будет работать некорректно. Чтобы это исправить нужно добавить еще один набор вида:


ВЫБРАТЬ

            Номенклатура.СсылкаКАК Номенклатура,

            Номенклатура.НоменклатураРазборкиКАК Родитель

ИЗ

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

ГДЕ

                        Номенклатура.НоменклатураРазборкиВ(&НоменклатураРазборки)

 

Делаем связь между собой. В источнике у нас будет «Номенклатура», в приемнике «Родитель». Указываем параметр. В главном наборе данных нужно будет указать напротив «Номенклатуры» проверку иерархии. Указываем набор, который только что создали, и параметр. Отчет готов.  

  


2.  Пример с реквизитом «Спецификация» справочника Номенклатура


Рассмотрим более сложный пример. Когда нужно сформировать иерархию по реквизиту отличающего от типа источника. К примеру, по реквизиту «Спецификация» справочника Номенклатура. Для полноценного вывода нам нужно сделать объединение во втором наборе по справочнику «Спецификация»1 С. Данные запросов будут выглядеть так:


ВЫБРАТЬ

            ТоварыНаСкладахОстатки.НоменклатураКАК Номенклатура,

            ТоварыНаСкладахОстатки.ВНаличииОстатокКАК Остаток

ИЗ

            РегистрНакопления.ТоварыНаСкладах.ОстаткиКАК ТоварыНаСкладахОстатки

 

ВЫБРАТЬ

            Номенклатура.СсылкаКАК Номенклатура,

            Номенклатура.СпецификацияКАК Спецификация

ИЗ

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

ГДЕ

            Номенклатура.СсылкаВ(&Ссылки)

            И НЕ Номенклатура.ЭтоГруппа

 

ОБЪЕДИНИТЬ ВСЕ

    

ВЫБРАТЬ

            Спецификация.Ссылка,

            NULL

ИЗ

            Справочник.СпецификацияКАК Спецификация

    

Связи будут выглядеть вот так:




Вот таким образом можно создавать произвольную иерархию в 1С СКД.


Специалист компании ООО «Кодерлайн» 

Денис Белоконенко.

Наши проекты

Филиал ГлавУпДК при МИД России фирма «Инпредкадры»
Филиал ГлавУпДК при МИД России фирма «Инпредкадры»

Отрасль:
Государственное управление

Внедренное типовое решение:
1С:Бухгалтерия

- Расчеты с контрагентами;
- Управленческий учет;
- Формирование отраслев...

Внедрение 1С:Управление торговлей
ООО «Амперсенд»

Отрасль:
Оптовая торговля

Внедренное типовое решение:
1С:Управление торговлей

- Оформление заказов поставщикам;
- Управление отношениями с поставщиками;...

ООО "Смена"
ООО "Смена"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Комплексная автоматизация

Банк и касса
Расчеты с контрагентами
Торговые операции
Взаиморасчеты с...

Автоматизация кадрового учета на базе ПП "1С:Зарплата и управление персоналом" в ТД НМК
ООО «Торговый дом Нальчикский молочный комбинат»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Кадровый учет;
- Расчет зарплаты;
- Регламентированная отчетность;
- А...

ООО "РУКАРД-АУРА"
ООО "РУКАРД-АУРА"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Комплексная автоматизация

- Налоговый учет;...

Внедрение ПП «1С:Предприятие 8. Аренда и управление недвижимостью на базе "1С:Бухгалтерия 8"» в компании «Бутово Молл»
ООО «Бутово Молл»

Отрасль:
Недвижимость

Внедренное типовое решение:
1С:Аренда и управление недвижимостью на базе «1С:Бухгалтерия 8»

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Оформление зак...

Установка программного продукта БИТ.Финанс для 1С:Бухгалтерия 8
ООО «Джи Эй Си Шиппинг энд Лоджистикс»

Отрасль:
Транспорт

Внедренное типовое решение:
БИТ.Финанс

Построение единого информационного пространства финансовой службы;
Учет ...

АО «Вертолетная сервисная компания»
АО «Вертолетная сервисная компания»

Отрасль:
МТО эксплуатации вертолетной техники

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Консультации по сложным вопросам налогового и бухгалтерского учета;
- Ра...

ФГОУ ВПО «Горский государственный аграрный университет»
ФГОУ ВПО «Горский государственный аграрный университет»

Отрасль:
Образование

Внедренное типовое решение:
1С:Колледж ПРОФ

- Управление персоналом и кадровый учет (HRM):
Кадровый учет
Управление об...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)
ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)

Отрасль:
Оптовая торговля транспортными средствами и оборудованием

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский уче...

МИР ХОББИ
МИР ХОББИ

Отрасль:
Торговля. Интернет магазин

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Оформление заказов поставщикам
Взаиморасчеты с покупателями
Оформление...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение