|
Нужен совет, как лучше реализовать поиск элемента справочника.
| ☑ |
0
Xammsa
01.10.21
✎
12:21
|
А у справочника нет нумерации.
Например, в конфигурации "1С: Документооборот" полно таких справочников, так что НайтиПоКоду() не работает, а НайтиПоНаименованию() использовать нежелательно, т.к. пользователи могут редактировать наименование.
В частности, дополнительные свойства документа хранятся как раз в справочнике без нумерации, и нужно предусмотреть разные алгоритмы в зависимости от значения того или иного свойства.
У меня две идеи:
- создать у справочника реквизит "Код" или "Идентификатор" (недоступный для редактирования пользователям), куда при записи элемента записывать уникальное значение для последующего поиска по нему;
- создать регистр сведений, в котором измерениями будут, скажем: ВидДокумента, ВидСвойства, а ресурсом - значение свойства типа "СправочникСсылка".
А как обычно делают в подобных случаях?
|
|
1
Garykom
гуру
01.10.21
✎
12:22
|
(0) уид
|
|
2
Garykom
гуру
01.10.21
✎
12:23
|
(0) или отдельная хрень куда записаны ссылки (по сути уиды) нужных элементов справочников
ну настройки по сути
можно РС или Спровочник или что хочешь использовать например в расширении
"- создать регистр сведений, в котором измерениями будут, скажем: ВидДокумента, ВидСвойства, а ресурсом - значение свойства типа "СправочникСсылка"."
-пойдет
|
|
3
youalex
01.10.21
✎
12:23
|
НайтиПоКоду() не менее нежелательно
|
|
4
Ёпрст
01.10.21
✎
12:24
|
(0) для каких целей нужен поиск?
|
|
5
Ёпрст
01.10.21
✎
12:25
|
Если нужны конкретные элементы справочника, сделай их предопределенными и поиск не нужен будет
|
|
6
Dmitry77
01.10.21
✎
12:58
|
В типовых есть регистр соответствие обектов для поиска по Гуид объекта. Можно в него нужную запись добавить и Гуид строкой и по ней искать.
|
|
7
Мультук
гуру
01.10.21
✎
13:25
|
(0)
Я пользуюсь
Возврат XMLЗначение(Тип("СправочникСсылка.ДополнительныеОтчетыИОбработки"), "f746588c-228b-11ec-96f4-3cecef453c5d");
Для генерации простая обработка с процедурой
Процедура СсылкуВТекстНаСервере(ЛюбаяСсылка)
тт = XMLСтрока(ЛюбаяСсылка);
пТип = ОбщегоНазначения.СтроковоеПредставлениеТипа(ТипЗнч(ЛюбаяСсылка));
пСтр = СтрШаблон("XMLЗначение(Тип(""%1""), ""%2"");", пТип, тт);
Сообщить(пстр);
КонецПроцедуры
|
|