Имя: Пароль:
1C
1С v8
Лучший способ сохранение ссылок
, ,
0 Фанат1с
 
22.10.15
14:39
1. Создаю предопределенный 46% (6)
2. Сохраняю в базе 38% (5)
3. Ищу по наименованию 15% (2)
4. Ищу по гуиду 0% (0)
Всего мнений: 13

Какой способ вы используете при необходимости сослаться в коде на определенный элемент справочника
1 Волшебник
 
модератор
22.10.15
14:42
То что доктор прописал

Создаю предопределенный
2 Живой Ископаемый
 
22.10.15
14:43
зачем по гуиду искать? ты хотел сказать "получаю по гуиду"?
3 Timon1405
 
22.10.15
14:46
4 GANR
 
22.10.15
14:54
Лучше всего, конечно же

Сохраняю в базе
5 GANR
 
22.10.15
14:54
Но если нужно облегченное решение

Создаю предопределенный
6 GANR
 
22.10.15
14:55
А если надо убедить постановщиков, что НайтиПоНаименование - однозначно плохо, то

Ищу по наименованию
7 Stim
 
22.10.15
14:56
странный опрос.
способ решения зависит от многих параметров
8 Mort
 
22.10.15
14:58
При необходимости сослаться в коде на определенный элемент справочника встаю и иду пить пивко.

Наутро проспавшись пересматриваю архитектуру решения и в 99% случаев необходимость в том чтобы "сослаться в коде на определенный элемент" отпадает.
9 Mort
 
22.10.15
14:59
+(8) Сорри,  ,,,,, - вот запятые, сами расставьте
10 Фанат1с
 
22.10.15
15:43
(2) именно так
11 Фанат1с
 
22.10.15
15:47
(3) Это аналог "сохраняю в базе"
12 Фанат1с
 
22.10.15
15:48
по моему лучше не придумаешь

Сохраняю в базе
13 disla
 
22.10.15
16:33
(3) автор забыл, что ещё надо дать права на этот справочник, а это нужно добавить ещё и роль в конфигурацию.

А проблемы с обновлением типовых конфигураций, в которых добавлен свой предопределённый элемент, не возникает никаких.

Создаю предопределенный
14 Timon1405
 
22.10.15
16:36
(13) Особенно когда разработчики типовой добавляют новый предопределенный, код которого совпадает с вашим
15 disla
 
22.10.15
16:39
(14) ну так надо по-умному код-то ставить, чтоб не совпадал
16 Kyon8
 
22.10.15
16:41
ПВХ+РС. Элементы ПВХ предопределенные.

Сохраняю в базе
17 vde69
 
22.10.15
16:41
почему нет такого варианта

НужныйЭлемент = МодульПовторногоИспользования.НужныйЭлемент()
18 Cyberhawk
 
22.10.15
16:45
Заводу его константой обычно

Сохраняю в базе
19 Живой Ископаемый
 
22.10.15
16:47
2(17) а внутри функции МодульПовторногоИспользования.НужныйЭлемент() не будет "ищу по наименованию" или "получаю по UIDу"? клево...
20 Михаил Козлов
 
22.10.15
17:37
В свое время Гений 1С предложил механизм, который оказался достаточно удобным. Особенно когда "предопределенный" может меняться.
Коротко суть:
- добавляем новый справочник - Предопределенные с реквизитом "Значение", тип которого, например, ЛюбаяСсылка, булево, число и пр.
- в этом справочнике заводим свои предопределенные элементы;
- в этих элементах устанавливаем нужные значения.
Например, для каких-то целей используется определенный элемент справочника "Справочник" - А. Потом решили, что нужно использовать элемент Б. В "нужном" предопределенном элементе справочника "Предопределенные" меняем значение А на Б. В коде (и запросах) используем Справочники.Предопределенные.<нужный>.Значение, поэтому в коде ничего править не нужно.
21 Леха Дум
 
22.10.15
17:37
Страшно злой от поисков по наименованию

Создаю предопределенный
22 DexterMorgan
 
22.10.15
17:56
(20) Типа (3)
23 Михаил Козлов
 
22.10.15
18:23
(22) Да. Только я это решение увидел лет 7-8 назад.
24 Злопчинский
 
22.10.15
18:29
(20) осталось при старте прописать проверку наличия нужных предопределенных...
25 Mort
 
22.10.15
18:29
Это новички лепят кучи предопределенных элементов. Самые неразумные из них, даже создают помоечные хранилища таковых в специальных справочниках.

Чтобы делать элемент предопределенным, он должен обладать такими уникальными характеристиками, которыми в принципе не должны обладать другие элементы. Даже те, которые могут быть заведены в будущем, при стечении самых невероятных обстоятельств.
И назвать такие уникальные характеристики очень трудно. На поверку оказывается, что нужен нам не предопределенный элемент, а на худой конец флажок в справочнике.
26 Fragster
 
гуру
22.10.15
19:00
Где вариант "создаю константу"?
27 DexterMorgan
 
22.10.15
22:45
(26) четыре же
28 GenV
 
22.10.15
22:54
Смотря по ситуации.
А то в Консолидации особенно вариантов не много, когда нужно сделать один отчет на основе другого )
Поиск показателей по коду наше все ...

Ищу по наименованию
29 MSOliver
 
22.10.15
22:55
(0) Самый надежный способ сохранения ссылки это её распечатать!
30 Fragster
 
гуру
22.10.15
22:56
(27) нет. "сохраняю в базе" - это вообще какая-то лажа.
31 DexterMorgan
 
22.10.15
23:01
(30) значение константы не в базе хранится?
32 MSOliver
 
22.10.15
23:05
(31) предопределенных может быть множество - одного типа (товар, работа, услуга) три константы заводить?
33 MSOliver
 
22.10.15
23:06
Перечисление vs Предопределённый элемент спр.
34 Garykom
 
гуру
22.10.15
23:07
Почему нет варианта не использую "сослаться в коде на определенный элемент справочника" ?
Обычно предоставляю пользователю/оператору юзающему код возможность самостоятельно указать в форме эти требуемые элементы

А если они должны не выбираться в быть дефолтовыми, т.е. нечто вроде настроек ТО и т.д. то

Сохраняю в базе
35 snegovik
 
23.10.15
05:29
Простите, а что значит "Сораняю в базе"?
36 snegovik
 
23.10.15
05:29
(35) "Сохраняю в базе"
37 Лефмихалыч
 
23.10.15
08:27
Всегда, когда только возможно

Создаю предопределенный
38 Лефмихалыч
 
23.10.15
08:30
а когда не возможно изобретаю способ, чтобы задача была решена без поиска по гуиду, по наименованию, по коду, по реквизиту, т.к. эти штуки в продуктиве - часовая бомба
39 Рэйв
 
23.10.15
08:50
(0)Если для себя в обработке какойнить, то делаю реквизитом на форме и не парюсь.
Если для частого использования, то предопределенный элемент.
Если в РИБ и надо разное для разных баз - делаю немигрирующую константу.
40 Domovoi
 
23.10.15
09:06
(0)Предопределенные, редко константа, справочник настроек с предопределенными, реквизит+перечисление - все зависит от ситуации.

Создаю предопределенный
41 User_Agronom
 
23.10.15
09:17
(39) ...Если для себя в обработке какойнить, то делаю реквизитом на форме и не парюсь....

А в обработчике ПриОткрытии формы есть такой код:
РеквизитТакойТо = Справочники.Тип.найтиПоКоду(...

А то при тестировании  каждый раз выбирать нужный приходится)))
42 vde69
 
23.10.15
09:18
(19) внутри ОДНОГО места можно поставить все, что угодно...
сначала поиск по коду, если будут проблемы поменять на предопределенный и т.д.

кстати указанный мною способ является рекомендуемый 1с :)
43 Рэйв
 
23.10.15
09:19
(41)Есть еще сохраняемые значения для формы:-)
45 rphosts
 
25.10.15
18:57
(0) зависит от цели использования. Предопределённый элемент, константа, РС для хранения настроек (напрмер для каждого пользователя). Нет серебряной пули - есть частные решения для несферического хранения ссылок.