|
Общий нумератор для разных справочников | ☑ | ||
---|---|---|---|---|
0
Asmody
17.04.12
✎
16:46
|
Хочется для нескольких справочников сделать общий нумератор с поддержкой уникальности. И так, чтобы минимум кода было. Что-то ничего адекватного в голову не приходит.
|
|||
1
Asmody
17.04.12
✎
16:47
|
т.е. аналог нумератора документов, только для справочников
|
|||
2
SpellKeeper
17.04.12
✎
16:51
|
Вопрос, что называть минимумом.
Вот вариант. В данном случае понятно, что код надо вручную считать. В общем модуле делаешь процедуру, где в запросе делаешь выборку кода из всех нужных справочников с поиском максимума. К результату прибавляешь единицу - получаешь новый код. Если код строковый, то необходимо сделать переводы из строки в число. Собственно, не так уж и много кода. |
|||
3
SpellKeeper
17.04.12
✎
16:52
|
Процедуру вызываешь в процедуре ПередЗаписью.
|
|||
4
vmv
17.04.12
✎
16:53
|
документооборот - подсистема нумерации, сложновата, но позволяет строить нумераторы как между классами данных, там и с включением в перфикс доп данных(код подразделения, объекта, размера сисек секретарши и т.д.)
|
|||
5
Asmody
17.04.12
✎
17:16
|
(2) (4) не, это жуть какая-то…
|
|||
6
Asmody
17.04.12
✎
17:18
|
задачка-то элементарная, называется «инвентарные номера» для внутренней системы учёта. только эти номера лепятся на всё подряд: от системников до «коней с крыльями». городить справочник «ИнвентарнаяЕдиница» что-то нет желания
|
|||
7
MRAK
17.04.12
✎
17:19
|
(0) подписку на событие "ПриУстановкеНовогоКода" для СправочникОбъект.
|
|||
8
MRAK
17.04.12
✎
17:19
|
(6) а здесь я все-таки предпочел бы РС
|
|||
9
MRAK
17.04.12
✎
17:20
|
+ хотя можно и совместить.
|
|||
10
Asmody
17.04.12
✎
17:21
|
(7) как вариант… только всё равно: следующий либо хранить, либо вычислять…
|
|||
11
MRAK
17.04.12
✎
17:22
|
(10) ну так совмести с РС. Заодно потом можно все это безобразие во всякие отчеты выводить
|
|||
12
vmv
17.04.12
✎
17:25
|
(6) Справочники "Инвестиции", "НематериальныеАктивы", "Основные Средства" с присвоением внутреннего иныентарного с момента покупки до списания?
Ну да либо РС, либо подписка. верно сказано в подписке писать в РС: - Измерение "ИнвентарныйОбъект" составной тип: "Инвестиции", "НематериальныеАктивы", "Основные Средства", либо тип объявить характеристкой, а сами типы в ПВХ, чтобы не проводить реструктуризацию регистра - Ресур "ИнвНомер" тип: число, строка |
|||
13
Kreont
17.04.12
✎
17:27
|
(0) если только для внутр.потребностей тогда главное уникальность а не то что сразу большой будет номер, можно просто разделить префиксами (цифровыми):
Инвестиции: 10000000000 НематериальныеАктивы:20000000000 Номенклатура:30000000000 и т.п. |
|||
14
MRAK
17.04.12
✎
17:34
|
(12) +100, воот.
(0) посмотри, как в типовой, тойже БП учет инв. номеров по ОС сделан |
|||
15
GenV
17.04.12
✎
17:36
|
Можно сделать как отдельный справочник - типа штрих-кодов.
|
|||
16
Vladal
17.04.12
✎
17:36
|
(3) В подписке, не?
|
|||
17
MRAK
17.04.12
✎
17:37
|
(15) чем справочник лучше РС? Кстати, в УТ шрихкоды в РС
|
|||
18
trad
17.04.12
✎
17:38
|
Я бы сделал на РС. В общих чертах:
измерение - ИДНумератора (можно типа строка) для перспективы заводить всякие разные нумераторы; ресурс - Номер; В модуле менеджера РС одну простенькую функции получения следующего номер по ИД с блокировкой в транзакции для изменения. В ней же установка номер+1 И вызов этой функции в ПередЗаписью объекта если у этого объекта Номер еще не присвоен. Но это только последовательная нумерация, без контроля уникальности. Если с контролем уникальности, то в РС нужно добавить измерение типа ЛюбаяСсылка. |
|||
19
Vladal
17.04.12
✎
17:38
|
Ну и отработать вариант, когда N пользователей, хотя, нет, N - мало, возьмём Z пользователей, одновременно будут записывать элменты разных справочников, ну или одного, а попутно робот из задания тоже будет что-то там писать в какой-то справочник.
|
|||
20
Vladal
17.04.12
✎
17:39
|
Asmody, ну вот меня раздирает любопытство праздное - где такое применить?
|
|||
21
GenV
17.04.12
✎
17:40
|
(17) Я не говорю лучше. Элемент справочника можно вручную выбрать.
|
|||
22
Vladal
17.04.12
✎
17:44
|
(21) Да и записть в РС тоже...
|
|||
23
Vladal
17.04.12
✎
17:45
|
*запись
|
|||
24
GenV
17.04.12
✎
17:45
|
(22) Да, но уже не минимальным кодом.
|
|||
25
Asmody
17.04.12
✎
17:47
|
(20) ну в (6) же
|
|||
26
Bober
17.04.12
✎
17:59
|
новый справочник. 1 реквизит: вид объекта(управляет префиксом нового кода объекта)
- записываешь объект. - получаешь его код без префикса решение с РС тебя не спасет, если параллельно будет идти вызов. |
|||
27
nbIx
17.04.12
✎
18:05
|
Я бы извратился.
Создал бы новый справочник для нумерации. При записи этих двух справочников, добавлял бы новый элемент в этот справочник с таким же кодом. Ну дальше все понятно. |
|||
28
zva
17.04.12
✎
18:20
|
Я бы так сделал:
Допустим 5 видов справочников. Обработкой изменить нумерацию существующих: у первого типа номера 5n, у второго 5n+1,.. у пятого 5n+4 Дальше стандартный механизм присвоения нового номера, только вместо 1 прибавляеся 5. |
|||
29
catena
17.04.12
✎
18:24
|
(15)Справочник сам будет новый номер создавать. Плюс, можно назначить префикс нумерации разным группам объектов и вести все номера одним справочником :) Вычислять ничего не надо - только создавать элемент и присваивать его код своему объекту.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |