[УТ 10.3, УПП, КА] Редактор свойств номенклатуры (в режиме одного окна)

Публикация № 196229

Обработки - Обработка справочников

10
Вводная: есть произвольный справочник номенклатуры. Требуется: максимально быстро и удобно задать (изменить) значения свойств у товаров

 

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

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

Поэтому, собственно, и родилась обработка, которую можно скачать из данной публикации. Скачиваем обработку, открываем её в своей информационной базе (все тесты желательно проводить на копии базы или на какой-нибудь тестовой).

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


Суть исправлений заключается в следующем:

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

 

Обработка найдёт такие свойства и заполнит табличную часть "Назначения свойства" всеми элементами справочника "Номенклатура":


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


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


Т.е., по сути, всё останется, как и было, но обраобтка сможет корректно работать.

После того, как обработка выполнит необходимые преобразования (только с согласия пользователя), откроется главная форма обработки, на которой:

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


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


Правая-нижняя часть - "Список значений свойств" - показывает все возможные варианты выбранного в "Списке свойств" свойства. Тут же можно добавить или изменить существующее значение. Если свойство имеет тип значения отличный от "Значение свойств объектов", то "Список значений свойств" не отображается, т.к. подразумевается, что пользователь вводит произвольное значение вручную, а не выбирает его из заранее предопределённого списка.


Собственно и вся обработка: маленькая, но довольно функциональная.

P.S.: модуль закрыт от посторонних глаз.

10

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

Наименование Файл Версия Размер
Обработка "Редактор свойств номенклатуры"
.epf 30,99Kb
01.12.15
106
.epf 30,99Kb 106 Скачать

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. 1psspam 88 01.08.13 17:28 Сейчас в теме
Если есть какие-то вопросы, то готов ответить.
2. zlogistik 01.08.13 17:46 Сейчас в теме
(1) обработка отличная! Автору однозначно плюс! Спасибо!
3. zlogistik 01.08.13 17:48 Сейчас в теме
(1) вот почему фирма 1С не сделает подобный механизм в своих конфигурациях!? Вроде, как возможность сделают, а методы работы с ней - крайне не удобные.
6. 1psspam 88 01.08.13 18:31 Сейчас в теме
(3) zlogistik, потому что, если фирма 1С внедрит все "фишечки", которые размещены на ИнфоСтарте в свои конфигурации, то сначала закроется сам ИнфоСтарт, а потом половина всех разработчиков 1С сменят род деятельности.
4. Ёпрст 1034 01.08.13 18:07 Сейчас в теме
А занафига Назначение свойств заполнять вообще ?
Тем более, всем справочником ?
5. 1psspam 88 01.08.13 18:30 Сейчас в теме
(4) Ёпрст, обработка судит о присутствии того или иного свойства у номенклатуры по наличию этой номенклатуры в табличной части "Назначение свойства". Если табличная часть пуста, то обработка считает, что это свойство не относится ни к одной номенклатуре, хотя на самом деле это свойство относится ко всем элементам справочника номенклатуры. Поэтому "Назначение свойства" и подгоняется под "удобство" работы с ним обработке.
7. Ёпрст 1034 01.08.13 19:05 Сейчас в теме
(5) это не есть гуд, при добавлении новой номенклатуры, назначения свойств .. дырка от бублика.
Или ваша поделка каждый раз проверяет это соответствие ?
8. 1psspam 88 01.08.13 19:09 Сейчас в теме
(7) Ёпрст, "дырка от бублика" будет в любом случае. В вашем - будут свойства, но их значения не будут заполнены. В случае моей обработки: добавили номенклатуру, поставили у неё галки для нужных свойств (галку можно даже не ставить, достаточно заполнить значение свойства и оно автоматически "прикрепится" к этой номенклатуре).
9. 1psspam 88 01.08.13 19:11 Сейчас в теме
(7) Ёпрст, соответствие обработка проверяет при каждом запуске. Если найдены "косяки" с точки зрения обработки, то она предлагает их исправить.
10. kapustinag 01.08.13 19:15 Сейчас в теме
(5) Думаю, такое решение (насчет заполнения "Назначения свойства" всеми элементами номенклатуры), мягко говоря, не слишком удачное. По следующим причинам:
1. Если "Назначение свойства" пустое, то свойство (в типовой функциональности) относится не только ко всем СУЩЕСТВУЮЩИМ элементам справочника Номенклатура, но и ко всем, которые будут созданы впоследствии. Аналогично, если в "Назначении свойства" указана папка справочника - свойство относится не только ко всем существующим элементам, входящим в иерархию этой папки, но и ко всем, которые будут созданы здесь в будущем, либо перемещены сюда из других папок справочника. Ваша обработка, чтобы работали ее алгоритмы, ломает эту типовую функциональность. В результате придется за такими свойствами постоянно следить - перезаполнять назначение свойств после каждого добавления/перемещения элементов номенклатуры.
2. (На самом деле, это продолжение п.1) Те базы, где реально могла бы помочь Ваша обработка, будут иметь очень большой справочник номенклатуры. И очень интенсивно меняющийся. Соответственно, количества строк "Назначение свойства" будут порядка тысяч, десятков тысяч. Чтобы следить за этим хозяйством, придется либо подписки на события делать, либо регламентным заданием перезаполнять, либо что-то еще придумывать.
3. Кроме того, открытие свойств в типовых формах хоть немного, но замедлится - т.к. будут постоянные проверки на вхождение данной ссылки в перечень, содержащий тысячи или более ссылок.

Предлагаю обдумать все это. Может быть, Вашей обработке не так уж необходимо именно такое заполнение "Назначений свойств"?
looxxx; V.Nikonov; +2 Ответить
11. 1psspam 88 01.08.13 19:51 Сейчас в теме
(10) kapustinag, спасибо за подробный комментарий, но не убедили.
Единственное с чем согласен - это "открытие свойств в типовых формах хоть немного, но замедлится" - "немного" будет не заметное, но будет.
Моя обработка "не ломает" типовую функциональность, она улучшает механизм работы с этой "типовой функциональностью" и попросту не использует часть этого "типового функционала".
Про подписки на события я, в принципе тоже согласен, но делать их нужно не для моей обработки, а для "типового функционала". Что будет с заполненными свойствами номенклатуры, если её (номенклатуру) перенести в другую группу (к которой эти свойства не относятся)? Правильно - свойства всё равно будут отображаться в форме номенклатуры, хотя в "Назначении свойств" не будет ни этой номенклатуры, ни её родителей. Тогда да, "В результате придется за такими свойствами постоянно следить - перезаполнять назначение свойств после каждого добавления/перемещения элементов номенклатуры".
Поэтому всё, что Вы описали, с теоретической точки зрения, возможно, верно. С практической - нет. Именно поэтому я выложил данную обработку.
18. V.Nikonov 119 16.04.14 17:43 Сейчас в теме
В поддержку (10) kapustinag, Регистр сведений Назначение свойств - носит ограничительный характер. Его есть смысл использовать только когда действительно надо спрятать некоторые свойства. Но если не ошибаюсь, при открытии элемента справочника в типовых конфигурациях не включается проверка на иерархическое вхождение, как следствие Свойство становится недоступным для ввода у Новых элементов (Однозначно, если в регистре перечислены Элементы)!!!
12. V.Nikonov 119 07.08.13 12:46 Сейчас в теме
Если свойство имеет тип значения отличный от "Значение свойств объектов", то "Список значений свойств" не отображается, т.к. подразумевается, что пользователь вводит произвольное значение вручную, а не выбирает его из заранее предопределённого списка.

А если в качестве свойства указывается элемент из другого справочника? Почему Априори запрещается изменять состав допустимых значений свойства?
Даже если пользователю недостаточно прав на пополнение списка допустимых значений, то всё равно удобнее видеть эти допустимые значения для более осмысленного выбора...
13. 1psspam 88 09.08.13 16:59 Сейчас в теме
(12) V.Nikonov,
А если в качестве свойства указывается элемент из другого справочника?

Пожалуйста, указывайте, обработка это позволяет. При непосредственном выборе значения свойства у конкретного объекта откроется форма списка справочника, из которого можно будет выбрать нужное значение.
14. V.Nikonov 119 09.08.13 18:53 Сейчас в теме
(13) Я имел в виду Нижнюю часть формы со списком допустимых значений.
15. 1psspam 88 14.08.13 07:33 Сейчас в теме
(14) V.Nikonov, т.е. предлагаете выводить в нижнюю часть, например, список элементов справочников?
16. V.Nikonov 119 14.08.13 11:58 Сейчас в теме
(15) Да. Видеть список допустимых значений облегчает задачу выбора правильного значения. Уменьшает вероятность образования Дублей...
Т.к. в качестве значения Свойства может быть не только Справочник.СвойстваОбъектов но и другие справочники, то желательно попытаться вывести эти справочники... (сложнее будет если справочник значений окажется иерархическим!)
Рамзес; 1psspam; +2 Ответить
17. 1psspam 88 15.08.13 07:15 Сейчас в теме
(16) V.Nikonov, теперь понял, о чём речь. Спасибо за комментарий - конструктивно, но, думаю, реализация этого - лишнее пока.
19. Zdan 25.08.14 12:49 Сейчас в теме
Будьте внимательны и не пренебрегайте советом разработчика делать бекап. После преобразования свойств обработкой перестала работать "обмен с сайтом". Просто виснет на первом этапе даже до формирования xml файлов.
20. sobeyko2008 10 31.08.14 17:19 Сейчас в теме
(19) Zdan, Огромное спасибо за предупреждение!
21. sergo48ru 03.03.15 20:20 Сейчас в теме
обработка устарела, рекомендуем скачать обновление.!!!?????
23. 1psspam 88 01.12.15 10:01 Сейчас в теме
(21) sergo48ru, (22) БольшойЧайник, обработка исправлена.
22. БольшойЧайник 188 30.11.15 10:21 Сейчас в теме
При запуске обработки выдается предупреждение. Обработка устарела, скачайте обновление с сайта разработчика.
Обработка скачанная с сайта обработчика выдает такое же предупреждение
автор, исправьте пожта ситуацию
24. Drizer2000 13 09.02.19 18:36 Сейчас в теме
Обработка то рабочая? А то люди ругались выше, а ответа автора нет.
Оставьте свое сообщение