INFOSTART EVENT 2018 EDUCATION

Второй тур голосования за доклады.
Окончание 5 сентября.

Бобрышов Александр | Ведущий программист | ООО "Проф ИТ"

«Как организовать консолидацию данных из трёх десятков предприятий не привлекая программистов на местах?»

Давайте представим, что у нас есть "зоопарк" из разных конфигураций 1С, от разных организаций одного холдинга, занимающихся совершенно непохожей деятельностью (от промышленного производства до туристической деятельности). Бухгалтерские данные должны стекаться из этих предприятий в управляющую компанию, учет в которой ведется в системе, принципиально отличающейся от 1С. Некоторые дочерние организации работают на решениях без штатных программистов и находятся за 1000+ км. Я расскажу, какую архитектуру и технологии выбрать для такого обмена. Как наладить выгрузку данных по одной кнопке без изменения конфигурации предприятия. Как создавать и модифицировать правила обмена для разных предприятий из офиса управляющей компании. Как следить за состоянием обмена из единого центра управления.

План видов характеристик (ПВХ) - с чем его едят

Программирование - Практика программирования

62
План видов характеристик - эта фишка нужна Аналитикам. В данной статье мы рассмотрим пример создания сложного ПВХ по учебнику Хрусталевой/Радченко. А также создадим свой собственный механизм ПВХ с двумя видами отчетов-СКД на выходе.

Как обычно ведется учет в торговом предприятии?

В первые несколько лет - все гонятся за прибылью: побольше закупить, побыстрее продать, никого пока не интересуют зависающие остатки товаров в магазинах и на складах. Объем базы растет как на дрожжах, т.к. пока порядок  оприходуемого товара хаотичный.

Например, вчера купили красный стул, сегодня зеленый стул, поначалу так и вбивают в базу данные: 1) старая позиция - красный стул;2) новая позиция - зеленый стул. Но после инвентаризации - всегда появляется пересорт товара, и здесь приходят к варианту - создать новую позицию, без конкретного описания в названии товара его спец.свойств, т.е. заводят товар так, например, просто "Стул", а две предыдущие позиции товара - помечают на удаление.

Через некоторое время - свободных оборотных средств становится лимитное количество. Здесь возникает вопрос: а какие именно товары имели больший спрос, чтобы вкладывать средства в них, а не в зависающий товар.

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

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

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

Н-р, под товаром "Стул" - пользователь желает указать свойство товара - цвет, это строковое значение данных. Значит в подчиненном справочнике - мы реквизит сделаем строковым. А если он желает указать доп.свойство товара, например, производителя? Тогда мы должны реквизит в подчиненном справочнике сделать ссылочного типа, указывая на др.справочник "Производители". А если пользователь в доп.свойствах к своему товару желает указать сколько ножек у стула? Мы в подчиненном справочнике должны реквизит сделать числовым.....

Отсюда, когда нам нужно дать возможность пользователю самому создавать ТИП данных, в значения которых он будет вносить свою информацию, то нам нужно создавать ПВХ (план видов характеристик).

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Мы создадим в нашем примере сложный ПВХ, чтобы был полноценный механизм описания дополнительных свойств товара.

Но для начала рассмотрим урок по созданию ПВХ из книги (стр.476) "1С_ Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы" Радченко/Хрусталева http://v8.1c.ru/metod/books/book.jsp?id=441

Здесь у нас уже есть справочник Номенклатура. Цель задачи: иметь возможность знать остатки материалов, обладающих некоторым значением характеристики. Для этого создадим в Конфигураторе новые объекты:1) регистр Сведений "ЗначенияСвойствНоменклатуры";2) ПВХ "СвойстваНоменклатуры";3) подчиненный Номенклатуре справочник "ВариантыНоменклатуры", чтобы описывать партии материалов;4) подчиненный ПВХ справочник "ДополнительныеСвойстваНоменклатуры", чтобы задавать значения видов характеристик,для которых нет подходящих типов в конфигурации.

В результате нам достаточно будет выбирать из регистра сведений все элементы подчиненного справочника с этим значением характеристики и затем по ним и их владельцам - получить остатки регистра накоплений.

В создаваемом нами ПВХ в поле "Тип значения характеристик" - укажем составной тип данных: Число,Строка,Дата,Булево,СправочникСсылка.ДополнительныеСвойстваНоменклатуры. А так же в поле ПВХ "Дополнительные значения характеристик" - указываем подчиненный ПВХ справочник "ДополнительныеСвойстваНоменклатуры".

Далее, при создании регистра сведений "ЗначенияСвойствНоменклатуры": указываем регистру два измерения:

1) НаборыСвойств, тип = СправочникСсылка.ВариантыНоменклатуры;

2) ВидСвойства, тип = ПланВидовХарактеристикСсылка.СвойстваНоменклатуры

И создаем ресурс регистра сведений:

Значение, тип = Характеристика.СвойстваНоменклатуры.

Все новые объекты мы создали. Добавлять их в подсистемы (в интерфейс пользователя) не нужно, так как между новыми объектами есть связь, и главное - это подчиненный Номенклатуре справочник "ВариантыНоменклатуры", который мы можем увидеть, открыв любой товар из справочника Номенклатура:

Существует несколько ньюансов при настройки регистра сведений "ЗначенияСвойствНоменклатуры", здесь желательно установить измерение регистра НаборСвойств (сюда попадает выборка из спр.ВариантыНоменклатуры) - как Ведущее, это даст нам возможность из спр."ВариантыНоменклатуры" - вызывать данный регистр Сведений. А так же для  ресурса регистра Значение - установить "Связь по типу" = ВидСвойства  и "Связи параметров выбора" = Отбор.Владелец(ВидСвойства).Данные настройки регистра сведений - упростят ввод пользователем данных.

Кроме того, в книге в данном уроке идет подробное описание - как лучше всего настроить формы списка и основные формы новых объектов, чтобы пользователь видел при заполнении свойств товаров - только необходимую ему информацию. Здесь мы не будем показывать всю эту деталировку.

Просто попробуем в нашем товаре, н-р, "Кабели электрические" - задать дополнительное свойство "Белые кабели", а состав свойства: "тип свойства"=Цвет и "значение свойства" = Белый. Вот по такой схеме открывающихся друг за другом окон:

 

....я не знаю как у вас, но у меня уже закружилась голова и уже не совсем понятно - что мы делаем и зачем))))

А представьте - объяснить такую цепочку пользователю?!?.....Чтобы наш пользователь смог понять того, чего мы уже сами не понимаем - у него должно быть минимум три сертификата по 1С)))

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

....это просто нереально сложно!!! И любой начинающий программист решит, что проще никогда не связываться с ПВХ, чем пытаться в подобной схеме разобраться.....

Чтобы получить итоговый результат задачи - остатки товаров по его свойствам, в книге предлагается в регистр Остатков добавить измерение "НаборСвойств" с сылочным типом на подчиненный Номенклатуре справочник "ВариантыНоменклатуры". Далее в документы прихода/расхода материалов добавить в табличные части поле с таким же названием и типом данных, дописать модулях этих документах проведение по регистру остатков "НаборСвойств". На самом справочнике "ВариантыНоменклатуры" - прописать в его меню Характеристики, что позволит их видеть потом в СКД отчете. И, как окончание, создать сам СКД-отчет по Остаткам Товара с отбором по Характеристикам:

Да, отчет получается интересный, но сам процесс создания дополнительных Характеристик (свойств) товара - очень запутанный, кроме того, пользователь при вводе стольких дополнительных данных при заполнении приходных/расходных накладных - создаст ни одну ошибку.....Начиная с ввода "НабораСвойств" в полях документа....

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

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

Итак, что нам нужно:

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

2. Дать возможность Аналитику исследовать показатели продаж в отборе по Свойствам Товара.

Рассмотрим какие у нас есть варианты при решении первого пункта задачи:

1. Мы можем добавить к справочнику Номенклатура подчиненный справочник, в который пользователь будет описывать только конкретными, заданные нами в Конфигураторе, данные строчного типа....это не подходит, так как при описании Свойств товара может понадобиться "непредсказуемый" нами в Конфигураторе Тип данных: например дата, число, строка, ссылка на др.справочник.

2. Поэтому для создания доп.Свойств Номенклатуры - мы должны создать ПВХ, так как ПВХ - это справочник + Описание Типов данных.

Если мы в справочнике Номенклатура - создадим табличную часть, в которой будет два поля - Тип данных вводимого Свойства товара и,непосредственно, само значение. Это очень просто - одно поле у нас будет ссылаться на ПВХ, др.на Характеристику этого ПВХ.

Но в этом случае, у нас не получится сделать записи уникальными....Только представьте себе вариант, где под товаром,например, Сосиски - можно ввести два вида значения Свойства "Цвет": и красные и зеленые))) 

Поэтому этот метод самый простой, но не дает уникальности в свойствах Номенклатуры.

3. Создадим ПВХ, но его значения будем набирать через регистр Сведений. Регистр Сведений - содержит только уникальные данные.

Это самый универсальный вариант. У нас будут записываться Свойства товара с разными типами данных, причем значения этих свойств для конкретного товара будет уникальным.

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

 

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

Для этого в регистре сведений добавляем два измерения:

1) Номенклатура, тип = СправочникСсылка.Номенклатура. Обязательно ставим галочку "Ведущее", благодаря этой галочки - мы будем видеть данный регистр из справочника Номенклатура!

2) СвойстваНоменклатуры, тип = ПланВидовХарактеристикСсылка.УниверсальныйПВХ.

В ресурсах регистра указываем "ЗначениеСвойства", тип = Характеристика.УниверсальныйПВХ:

 

Пока на данном этапе все, мы создали механизм уникальных свойств товара. Нам еще нужно настроить удобство выбора данных для пользователя.

Выделим ресурс "ЗначениеСвойства" регистра сведений и в меню справа на вкладке "Представления" - создадим связи, чтобы при выборе значения данного регистра в пользовательском режиме - нам выпадал сразу список из измерения данного регистра "СвойствоНоменклатуры". Т.к. помним, что измерение "СвойствоНоменклатуры"-это ПВХ, а ресурс "ЗначениеСвойства" - это и есть Характеристика данного ПВХ. Итак, на этой владке указываем "Связь по Типу" = "СвойствоНоменклатуры".  Теперь, если мы в измерении регистра выбрали Тип данных,н-р, строка, то когда будем вводить значение в ресурс - у нас сразу будет стоить тип строка, а не все возможные перечни типов!

 

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

 

В данном примере Товару "Транзистор Philips 2N2369" - создаем сначала Вид желаемого свойства товара, пусть это будет "Транзисторы", и сразу указываем тип данных для этого свойства - в данном примере мы выбираем вручную тип данных = Строка. Сохраняем. И далее нам нужно задать значения этому виду свойств товара, пусть это будет "Слаботочечные транзисторы":

 

Добавим еще одно Свойство этому товару, например, производитель "Корея". 

Возьмем другой товар, создадим ему свойство "Трансформаторы", тип = строка, значение = "Строчные трансформаторы". А второе свойство, которое мы желаем ввести этому товару будет тоже "Производитель" - его создавать не нужно, оно уже есть у нас в выборке, но вот если мы попробуем ввести то же самое значение этого свойства, равного "Корея", то нам придется набирать его вручную....Это не очень удобно...Хорошо, когда один раз введенное значение - можно подставлять множество раз.

Чтобы добавить данное удобство, перейдем в Конфигуратор и создадим справочник, на вкладке "Владелец" укажем созданный ранее наш "УниверсальныйПВХ". Теперь, если у нас свойства значений будут строковыми, то нам не обязательно постоянно выбирать тип = Строка, достаточно будет дать ссылку на этот подчиненный справочник: в него очень удобно сохранять строковые значения, а кроме того - такой способ позволит нам выбирать уже готовые строковые значения для Свойств товара.

Произведем небольшие настройки ПВХ в связи с появившемся подчиненным ему справочником:

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

С первым пунктом поставленной задачи мы справились - механизм создания уникальных свойств товару создали.

Заполним различные свойства номенклатуры в пользовательском режиме 1с. Обратим внимание, что уже введенные ранее свойства, такие как,н-р, Производитель, уже сразу есть в варианте выборке свойств, а так же нам дается сразу выбрать готовое значение этого свойства,н-р, "Корея".

Теперь перейдем ко второму этапу решения поставленной задачи: дать возможность в отчете делать отбор,н-р, по остаткам товара или по продажам товара от Свойств этого товара.

Сразу скажу, что мы не будем придумывать сложный механизм, добавляя в поля табличных частей документов какие-нибудь свойства товара!!! На практике так нельзя делать, иначе будет такая неразбириха с документами, что потом никаких сил не хватит это исправить....

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

Н-р, у нас есть один товар "Строчный трансформатор Samsung", у которого два свойства:1) "Трансформаторы" = "Строчные трансформаторы";2) "Производитель" = "Корея", и другой товар  "Строчный трансформатор Россия", у которого два свойства:1) "Трансформаторы" = "Строчные трансформаторы";2) "Производитель" = "Россия". Так вот мы никак не можем сказать, что эти два товара одинаковые, а отличаются только свойствами!!! Нет, эти два товара разные, чем мы коротко указываем различие их в Названии, и более подробно - описываем в свойствах данного товара. 

Отсюда, нам не нужно создавать какое-то дополнительное поле в первичных документах, чтобы в нем прописывать одну из характеристик товара (у нас этих характеристик может быть более одной!).

Перепроведем вновь все наши приходные накладные и док.ОказаниеУслуг. (здесь в документах от первого метода из книги - есть поля с доп.характеристиками, но они ни как не влияют на наш только что созданный собственный механизм ПВХ)

В Конфигураторе создадим Отчет по регистру "УникальностьУниверсальногоПВХ". Запишем в запрос СКД-отчета следующий код:

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

В настройках СКД-отчета разрешим использовать в пользовательском режиме "Отбор". При формировании отчета в 1с-Предприятии - в отборе выбирем СвойствоНоменклатуры=Производитель. У нас получится очень интересный отчет:

Заменив регистр остатков на регистр Продаж - создадим второй отчет Продажи с возможностью отбора по свойствам товаров.

Мы выполнили и даже перевыполнили второй пункт задачи - дать возможность Аналитику создавать отчеты в разрезе Свойств товара.

В нашем варианте - механизм ПВХ получился простой, наглядный и быстронастраиваемый.

п.с. при создании данной статьи мне очень помогла информация, прочитанная вот отсюда:

http://1clancer.ru/article/osobennost_ispolzovaniya_mekhanizma_kharakteristik_v_skd_821

http://www.1s-portal.ru/index.php/stati/configuration/16-common-objects/80-pvh-v-1c.html

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Надеюсь, что моя статья пригодится начинающим программистам на платформе 1с 8.3

п.с. в загрузку прилагаю учебную базу, в которой созданы были все текущие примеры. Эту базу я начала писать с нуля по урокам книги  "1С_ Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы" Радченко/Хрусталева http://v8.1c.ru/metod/books/book.jsp?id=441, просто дополняя ее еще и свои наработки.

Успехов в освоении ПВХ, в случае с решением этой непростой задачки - очень подходит лозунг ниже)):

 

 

 

62

Скачать файлы

Наименование Файл Версия Размер
ПВХ -учебная база данных:
.dt 235,83Kb
13.02.18
3
.dt 235,83Kb 3 Скачать

См. также

Комментарии
Сортировка: Древо
1. jan-pechka 131 14.02.18 10:35 Сейчас в теме
Код к второму СКД-отчету по продажам:
ВЫБРАТЬ
	УникальностьУниверсальногоПВХ.СвойствоНоменклатуры,
	УникальностьУниверсальногоПВХ.ЗначениеСвойства,
	ПродажиОбороты.Номенклатура,
	ПродажиОбороты.ВыручкаОборот КАК Выручка
ИЗ
	РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УникальностьУниверсальногоПВХ КАК УникальностьУниверсальногоПВХ
		ПО ПродажиОбороты.Номенклатура = УникальностьУниверсальногоПВХ.Номенклатура
Показать
2. Danil.Potapov 344 14.02.18 21:44 Сейчас в теме
для тех кто ничего не понял, есть хороший пример силы ПВХ. В типовых УТ11\КА2\ERP2 на ПВХ статьи затрат и статьи дохода.
jan-pechka; +1 Ответить
3. boln 978 14.02.18 22:02 Сейчас в теме
Я как-то посмотрел, во что СКД превращает текст запроса с расширением {ХАРАКТЕРИСТИКИ}. Я офигел, запрос запредельно неоптимальный :))) Было, кажется, несколько соединений по полям составного типа.
Yashazz; jan-pechka; +2 Ответить
4. jan-pechka 131 14.02.18 22:51 Сейчас в теме
(3)
СКД превращает текст запроса с расширением {ХАРАКТЕРИСТИКИ}


это не всегда нужно)) А если уж слишком сложный-присложный и дико запутанный СКД -это как в примере учебника, то можно прибегнуть все равно к более простым методам, не мучаясь с настройками Характеристик СКД - в Конфигураторе жмем правую клавишу мыши на справочник "ВариантыНоменклатуры" (пример из книги), выбираем меню Характеристики и настраиваем здесь виды и значения Характеристик для данного объекта (см.рис). После этого - не придется настраивать Характеристики СКД при использовании в нем данного справочника.

п.с. но мне, честно, не нравятся неоправданно сложные механизмы создания ПВХ, чтобы потом еще мучатся с невероятно сложной их настройкой в СКД....Как по мне, так чем проще, тем лучше))

п.с.2 сайт 1с по настройке Характеристик в СКД https://its.1c.ru/db/metod8dev/content/1795/hdoc
Прикрепленные файлы:
5. boln 978 14.02.18 22:58 Сейчас в теме
(4)
После этого - не придется настраивать Характеристики СКД при использовании в нем данного справочника.
И шо? Вы думаете, исполняемый запрос СКД будет другим? :)

Механизм характеристик одинаково реализуется.

И предопределенные характеристики не всегда можно задать.
jan-pechka; +1 Ответить
6. Glebis 10 05.04.18 12:19 Сейчас в теме
Как я коротко объясняю что такое ПВХ:
ПВХ - это тот-же справочник, только у каждого объекта ПВХ есть ещё один стандартный реквизит, для которого выбирается один из допустимых для этого типа ПВХ тип и значение (ссылка на объект) выбранного типа.
Используется ПВХ в случаях, когда для какого-то объекта-владельца (например, элемента "Стул" справочника "Номенклатура") требуется указать тип дополнительного свойства (например, цвет, выбрав справочник "Цвета") и значение выбранного типа дополнительного свойства (ссылка на объект "Зеленый" справочника "Цвета").
Соответствие объекта-владельца и объектов ПВХ, которые содержат все значения его дополнительных свойств хранятся в регистр сведений.

Все.
jan-pechka; +1 Ответить
7. jan-pechka 131 05.04.18 15:18 Сейчас в теме
(6)
Как я коротко объясняю что такое ПВХ


прошу прощения за свой каламбур, но когда Вы сказали что КОРОТКО объясните что такое ПВХ....

мне почему-то подумалось что продолжение будет приблизительно следующим:

"Коротко ПВХ -это прошел/а...видал/а...харэ!!!"))).....

....и здесь все логично, но вот при чем здесь разработчики платформы к ПВХ смысл типа привязали???)) Так бы

и назвали - типично-типовой справочник для справочников...сокращенно Ттсс....

п.с. шутка. Спасибо.
8. the1 323 08.04.18 16:41 Сейчас в теме
Думал статья поможет разобраться, а оказалось наоборот - еще больше запутался
9. jan-pechka 131 09.04.18 09:24 Сейчас в теме
(8)
еще больше запутался

Может остановили ваше чтение на примере из книги??? Там они действительно все запутали)) Прочтите дальше - мой пример построения сложного ПВХ простым языком.

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

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

Давайте представим, что вас отправили с вашей программкой собирать по городу настроение людей.Вам нужно спрашивать только их имя и их настроение.
***********************************************************************************************************************************
***Создадим элементарный справочник с табличной частью: в одной колонке строковый тип- Имя, в другой - строковый тип Настроение.Все просто!

Но вот по дороге вам попался ваш сотрудник, вы его тоже должны опросить, но занести как-то с пометкой для себя - это не просто человек с улицы, а мой сотрудник!!!

В этом случае вам пригодится пример использования самого простого ПВХ. Итак, у вас есть элементарный справочник с табличной частью, но чтобы в него можно было записывать не только обычный текст, а и выбирать из др.справочника - Сотрудники - вы в табличную часть своего элементарного справочника прикручиваете самый элементарный ПВХ.

***Все просто - в конфигураторе жмете на "+" создать новый ПВХ, ничего у него более не указываете, просто даете ему имя, н-р, "Простой ПВХ". И на его закладке Основные в поле "Тип значения характеристик"-ставите галочку "Составной тип" и вкл.все ссылки на существующие у вас справочники, а также на простые типы данных - строка,число,дата,булево. Все-элементарный ПВХ есть!

В созданном элементарном справочнике в его табличной части прикручиваете данный элементарный ПВХ сл.образом: Колонка1=выбираете тип=Простой ПВХ, а в Колонке2=выбираете тип= Характеристику этого ПВХ. (см.рис.1 и рис.2). Возможно именно здесь у начинающих может быть непонятие- как это из одного объекта ПВХ можно выбрать тут же его ДВА типа??????))))
Ну вот такая вот структура у ПВХ - есть ссылка на сам ПВХ, а есть ссылка на его Характеристику....
***********************************************************************************************************************************
Все готово, можно начинать бегать по улице и записывать в только что созданный механизм Простого ПВХ данные опросов настроения людей!!!

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

***Итак, открываем в пользов.режиме наш справочник, назовем первый опрос "Весеннее настроение" - и пошли опрашивать людей (см.рис.3) Да, так как связи мы не настроили в справочнике, то ввод нового опрашиваемого человека - у нас займет немного больше времени))

***И вот вы уже опросили достаточное количество человек - просто посторонних с улицы, и вдруг - вам попадается на встречу ваш сотрудник!!! Вы так же заносите его настроение в свой справочник, только уже выбираете не тип=строковый, а тип=ссылка на справочник Сотрудник! (см.ри.4)

***Ура, на вашем пути вам попадается ваш клиент и говорит что хотел бы на 23567р.сделать вам заказ......ой, а вам и записать некуда такую не круглую сумму....Но вы не теряетесь и добавляете эту запись в свой справочник (с пвх) - см.рис.5 . В поле характеристики в этом случае выберете - число и внесете указанную сумму.

Вот как-то так...
Прикрепленные файлы:
10. e-9 06.07.18 16:51 Сейчас в теме
Надо заметить один существенный нюанс: вариант Радченко/Хрусталевой позволяет вводить ОДНУ номенклатуру, пихая в проводки, отчеты и т.п. разные ее варианты (описываемые разными значениями свойств). Но экземпляр номенклатуры при этом - один.
А ваш вариант вынуждает заводить РАЗНЫЕ номенклатуры - если у разных экземпляров (одной, по своей природе, сущности) наблюдаются отличие хотя бы в одном свойстве.

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

Ну, например, попробую сходу набросать такую задачу: нужно вести учет поедаемых творожных сырков - а их на прилавках огромное многообразие.
В вашем варианте придется вводить десятки элементов номенклатуры вида "Сырок хх% уу гр. Буренка бла-бла-бла" - причем в наименовании заранее отражать самые существенные свойства (жирность/вес/производитель/блаблабла). Это вместо одного элемента "Сырок", по сравнению с книжкой.
И для каждого описывать набор свойств. (Зато, да, не надо заводить десятки вариантов).
В вашем случае в документе, скажем, "Чек", который отражает факт покупки сырка, пользователь должен очень внимательно выбирать номенклатуру, чтобы не перепутать среди десятков похожих наименований. Собственно, та же проблема, как и с вариантами, упрощения не получили.

Предположим, что мы хотим сравнивать цены в разных магазинах по сыркам (найти самый выгодный магазин), или динамику изменения цен с течением времени (чтобы знать, близок ли конец света).
Разумеется, тут надо анализировать не какой-то виртуальный "Сырок" - а конкретные его варианты. В вашем случае - конкретные элементы справочника номенклатуры. Тоже принципиальной разницы нет, какую архитектуру использовать.

Идем далее. В вашем отчете мы видим список схожих по наименованию номенклатур, отобранных по какому-то свойству. Но для системы это никак не связанные между собой объекты. Мы-то понимаем, что все это - сырки. И скорее всего захотим, чтобы и система это "знала" (например, чтобы считать в целом суммарные затраты на сырки).
Не вопрос, любая задача решаема. Можно добавить в справочнике номенклатуры новый реквизит, например, "Виды номенклатуры" - и вбивать в него значения вида "Сырки", "Пельмени" и т.п.; потом использовать этот реквизит в отчетах, проводках и т.п.

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

Это не критика, а именно замечание. В каком прикладном решении по какому пути идти - решать архитектору, исходя из поставленной задачи, с учетом всех ее нюансов.
Оставьте свое сообщение