|
Выбрать запросом номенклатуру по уровню | ☑ | ||
---|---|---|---|---|
0
Торин
29.08.12
✎
13:43
|
Уважаемые коллеги. Собссно сабж -- возможно или нет? И ежели возможно, то как?
Задачка такая -- УТ 10.3, немного доработанная. Продажники устанавливают скидки для дистрибьюторов для групп номенклатуры, причем группы могут быть вложенными. Необходимо чтобы в случае нескольких скидок действовала та, которая установлена на группу "самого нижнего" уровня. Задачку я решил, но путем "доработки" результата запроса. Вопрос - можно ли это было сделать в самом запросе? |
|||
1
Ахиллес
29.08.12
✎
13:45
|
Группа самого нижнего уровня это просто Родитель. Или вопрос в чём?
|
|||
2
andrewks
29.08.12
✎
13:45
|
в общем случае, в рамках одного статического запроса - нет.
|
|||
3
Торин
29.08.12
✎
13:46
|
Не самого нижнего для этой номенклатуры, а самого нижнего из тех, для которого установлена скидка...
|
|||
4
Ursus maritimus
29.08.12
✎
13:46
|
Если известна максимально возможная вложенность то можно, если нет, то надо думать
|
|||
5
Торин
29.08.12
✎
13:47
|
(2) а если например известно максимальное количество уровней иерархии?
|
|||
6
Торин
29.08.12
✎
13:47
|
(4) известна...
|
|||
7
andrewks
29.08.12
✎
13:47
|
||||
8
andrewks
29.08.12
✎
13:47
|
(5) тогда можно
|
|||
9
Ursus maritimus
29.08.12
✎
13:47
|
(4)+Подумал. Можно если и не известно
|
|||
10
Торин
29.08.12
✎
13:47
|
максимальная вложенность - 4 уровня
|
|||
11
andrewks
29.08.12
✎
13:48
|
(9) кот в студию
|
|||
12
Торин
29.08.12
✎
13:48
|
(9) да, очень бы хотелось...
|
|||
13
olegves
29.08.12
✎
13:49
|
(0) возможно при ограничении уровней вложенности справочника
ВЫБОР Когда Родитель.Скидка>0 Тогда Родитель.Скидка ИНАЧЕ ВЫБОР КОГДА ЕСТЬNull(Родитель.Родитель.Скидка,0)>0 ТОГДА Родитель.Родитель.Скидка ... и так далее |
|||
14
Ursus maritimus
29.08.12
✎
13:49
|
(11,12) Даром за амбаром
|
|||
15
andrewks
29.08.12
✎
13:50
|
(14) не сделаешь
|
|||
16
vmv
29.08.12
✎
13:50
|
(0) счас тебе напишут 100500 вариантов, приведут архивные темы с дикими вложениями и неоптимальнымы соединениями и т.д., но все это чепуха, которая нагибает систему на больших таблицах.
Когда стоит такая задача, я просто заводу реквизит число "Уровень" в таблице БД. Затем в модуле объекта безусловно и всегда его определяю и устанавливаю в ПередЗаписью. Далее в любом запросе(СКД не в счет - она умеет вычислять уровень) я просто и легко получаю уровень без бубна. |
|||
17
olegves
29.08.12
✎
13:50
|
(13) + только для последнего иначе надо какое-то значение указать
|
|||
18
Торин
29.08.12
✎
13:52
|
(16) наверное, это правильнее, но... я не один прог в компании и любое изменение структуры метаданных надо согласовыватьс Ит-директором...
(17) это-то понятно... хорошо, буду пробовать |
|||
19
vmv
29.08.12
✎
13:53
|
+(16) если реквизит префиксовать например Адд_Уровень и его инициализацию вынести в подписчик, то типовой справочник "Номеклатура" фактически не модифицирован и его можно спокойно обовлять типовыми релизами
|
|||
20
andrewks
29.08.12
✎
13:54
|
(18) 1. шчтобы не нагибать структуру имеющихся метаданных, можно завести отдельный регистр сведений, заполнять его регламентом, и уже потом с ним соединять
|
|||
21
vmv
29.08.12
✎
13:58
|
(20) тогда контроль достоверности данных об уровне будет крайне мал. Ибо то что в объекте - это в объекте, а то что в регистре - хз.
Числовой реквизит Число(3, 0) позволит иметь 999 уровней, хотя хватит и Число(2, 0) - для 99% таблиц и Число(1,0) для 98% таблиц. Это адкое наращивание веса таблицы? не смешите мои яйца |
|||
22
andrewks
29.08.12
✎
13:59
|
(21) я не говорил ничего про вес таблицы, окстись. я предложил это на случай, если ТС наткнётся на полное непонимание со стороны ИТ-дира необходимости добавления такого реквизита в сам справочник
|
|||
23
vmv
29.08.12
✎
14:01
|
(22) адекватные логичные люди всегда поймут и взвесят доводы от различных варинатов решения проблемы и примут правильное решение, а ежели они упираються рогом в ограниченное понимание системы и взаимосвязей в ней, то таким людям место в горах - с козлами
|
|||
24
andrewks
29.08.12
✎
14:04
|
(23) золотые слова. только не всегда все начальники абсолютно адекватны и хорошо разбираются в предмете одновременно
|
|||
25
Serg_1960
29.08.12
✎
15:01
|
(24) +1 "Я начальник, ты - дурак. Ты начальник, я - дурак" :( народная примета :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |