Имя: Пароль:
1C
1С v8
Как правильно именовать объекты подсистемы с учетом префиксов?
0 Сниф
 
24.03.14
22:58
Как идеологически верно с точки зрения стандартов 1С давать префиксы объектам подсистемы "МояПодсистема":
МояПодсистема_МоеПеречисление
или просто
МоеПеречисление?
1 GedKo
 
24.03.14
23:07
МояОрганизация_МоеФИО_МояПодсистема_МоеПеречисление

зы. кроме фио можно и адрес проживания добавить. следующий прог может приедет сказать "спасибо".
2 Сниф
 
24.03.14
23:11
+ (1) кличку любимой собаки

А если серьезно? Ведь надо как-то обеспечить уникальность имени. Например, перечисление "Важность". Пока подсистема тестируется сама по себе - всё отлично. А если накатить на УТ 10.3, где такое перечисление уже есть, то полная ерунда получится.
3 GedKo
 
24.03.14
23:13
(2) дык думай заранее. если у тебя есть пересекающиеся с типовой объекты - используй их. а фильтровать - по подсистемам и нужно.
4 Сниф
 
24.03.14
23:30
(3) да я и пытаюсь заранее подумать) Если предполагается, что подсистема самодостаточна и сможет интегрироваться в ЛЮБУЮ конфигурацию при желании, получается, что надо проверять уникальность имен во всех конфигурациях. Или придумывать что-то точно уникальное МоеПеречислениеЯЗнаюТакогоНетНиУКого.
5 xReason
 
24.03.14
23:32
А ты в Важности добавь еще одно слово, это Важность чего?
6 xReason
 
24.03.14
23:32
как пример - ВажностьДокументаОплаты
7 Сниф
 
24.03.14
23:45
Я понял, префиксы использовать не надо.
Меня только слегка удивляет, что вся логика подсистемы держится на Вере в то, что в основной конфигурации у конечного пользователя не будет общего модуля таким названием, как у меня.
8 GedKo
 
24.03.14
23:58
(7) тогда гуид вставляй вместо префикса - точно не совпадет.

это вера в здравый смысл. зачем плодить в конфигурации: контрагент, префикс1_контрагент, префикс2... ?

и, в принципе корректировка наименования для разных по сути объектов-тезок - пара часов.
9 Сниф
 
25.03.14
00:12
(8) если планировать обновления подсистемы, то корректировки наименования быть не должно в принципе.

В конфигурации "Библиотека стандартных подсистем Демо" сама фирма 1С использует у метаданных префикс "_Демо", например, _ДемоНоменклатура.
10 GedKo
 
25.03.14
00:16
(9) 1. почему? :)

2. это чтобы в свои конфигурации не внедряли эти подсистемы.
11 Сниф
 
25.03.14
00:22
(10) допустим мы продали подсистему, предполагая, что для ее внедрения будет достаточно просто накатить наши метаданные. И тут выясняется, что у клиента ничего не работает из-за конфликта имен. Мы потратим пару часов на внедрение (не предусмотренное, которое выглядит как наш косяк) пару часов. А через неделю обнаружим баг или просто выпустим новую версию. И, получается, опять пройти через корректировку наименований? :)
12 EugeniaK
 
25.03.14
00:31
Правильно МояПодсистема_МоеПеречисление
Только так.

Даже доработки под клиента обычно делаются как
ИмяФранча_МоеПеречисление
Хоть это и не универсальные модули, а под конкретного клиента
13 Сниф
 
25.03.14
00:43
(12) приятно услышать подтверждение своим мыслям из уст прекрасной дамы.
14 Armando
 
25.03.14
01:41
(12) потом приходит другой франч и рождает свои префиксы...
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший