![]() |
|
Модераторы: Akina |
![]()
|
|
| Ronin08 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 16.2.2008 Где: г.Москва Репутация: нет Всего: 1 |
Доброго времени суток!
Наверное не совсем корректное название темы, но суть вот в чем: Имеется таблица "Расходы" в ней поле "Статья расхода". Это поле должно содержать древовидную структуру, Например: -Продукты -Мясо -Фрукты -Одежда -Зимняя -Классика -Спортивная -Летняя и т.д. И когда пользователь смотрит свои расходы то видел всю цепочу вывода (например, Одежда-> Зимняя ->Классика или Продукты->Мясо) Проблема в том, что для каждого пользователя уровень вложенности "Статья расхода" будет разный. Как это лучше организовать? Это сообщение отредактировал(а) Ronin08 - 21.2.2009, 23:26 --------------------
Зачем вставать рано или поздно? Надо вставать вовремя |
|||
|
||||
| boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 15 Всего: 35 |
Навскидку, структура таблицы для дерева:
есть также таблица категорий и пользователей. -------------------- Никогда не говори никогда |
|||
|
||||
| FINANSIST |
|
|||
|
Статус: Жив ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 11.4.2008 Где: Москва Репутация: 1 Всего: 23 |
Судя по информации автора топика товарная номенклатура достаточно разнородная т.е. аналитика ОДНИХ И ТЕХ ЖЕ уровней для РАЗНЫХ категорий товаров имеют разную характеристику.
Например 2 уровень вложенности ПРОДУКТЫ раскрывает аналитику по видам продукции, а абсолютно тот же 2 уровень для одежды уже представляет сезонную детализацию Что бы решить проблему, стоит определиться с максимально возможным количеством вложенных аналитик (то есть ветвей "Статья расхода"). Допустим, максимальное количество вложенности - 10 уровней. Учитывая разрозненность смысловой нагрузки одних и тех же уровней аналитик для разных SKU, предлагаю ввести некую унификацию, т.е. назвать данные аналитики как "субконто1","субконто2"...субконто10.(по аналогии с 1С) ФРАГМЕНТ таблицы SKU | субконто1 | субконто2| субконто3 | субконто n| ----------------------------------------------------------------------------------------------------------------------------------------------------------- тушёнка |Продукты | Консервы | ....................................................... Шапка |Одежда | Зимняя |Классика | ------------------------------------------------------------------------------------------------------------------------------------------------------------ Чтобы систематизировать кажущийся хаос в содержательной части одних и тех же уровней разных SKU, я например в подобной ситуации вводил некий "справочник субконто", т.е. таблицу , где для каждого товарного SKU прописана характеристика аттрибутивных группировок субконто, которые присущи данным SKU. То есть: Субконто1 | Тип субконто1 |Тип субконто2 |Тип субконто3 |....Тип субконто n| ----------------------------------------------------------------------------------------------------------------------------------------------------------- Продукты |Детализация по товарным категориям| Детализация по группам продуктов| ....................................................... Одежда |Детализация по товарным категориям| Детализация по сезонам |Детализация по стилю | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ естественно эти таблицы должны быть связаны. В результате получишь для всех своих SKU динамически изменяемый набор характеристик + структуру базы, непротиворечущую нормализации Это сообщение отредактировал(а) FINANSIST - 23.2.2009, 19:14 -------------------- “...Брали корову рыжую одну, отдавать будем корову рыжую одну, чтобы не нарушать отчетности” Эдуард Успенский, “Каникулы в Простоквашино” |
|||
|
||||
| Ronin08 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 16.2.2008 Где: г.Москва Репутация: нет Всего: 1 |
Спасибо, помог, держи "+"
--------------------
Зачем вставать рано или поздно? Надо вставать вовремя |
|||
|
||||
| Deniz |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 1 Всего: 44 |
Ronin08, а почему не использовать нормальное дерево?
IDTree, IDParent, Name, ... - справочник для твоей структуры. IDUser, IDTree, ... - кто что купил Цепочку по IDTree вверх к родителю собрать не проблема. В этом варианте нет ограничения по вложенности и более компактная структура хранения, но несколько усложнятся SQL-запросы. -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
![]()
|
| Правила форума "MS SQL" | |
|
|
Запрещается! Публиковать ссылки и обсуждать взлом чего бы то ни было.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MS SQL Server | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |