Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.13;
Скачать: CL | DM;

Вниз

помогите разобраться с реляционной структурой   Найти похожие ветки 

 
atmamont ©   (2002-12-18 23:33) [0]

Ситуация:
в базе нужно отразить документ, у которого есть некоторые реквизиты и предусмотреть возможность изменения этих реквизитов во времени с помощью объекта "Доп. соглашение" с сохранением старых реквизитов.

Мне сложно положить эту модель на реляционную структуру, потому как совсем мало опыта проектирования таких ситуаций. К примеру, в 1С это тривиально решается с помощью периодических реквизитов документа либо с помощью подчиненного документа, который хранит старые и новые реквизиты и при проведении меняет условия родительского документа. А тут что-то сложно придумать красивое и удобное решение.

Может у кого был опыт проектирования таких баз либо присутствует голова светлая?.. :)
Если можно, приведите пример в пару таблиц.


 
Jeer ©   (2002-12-19 00:11) [1]

Поля - версия документа и дата.
Неуникальные поля копируются, затем модифицируются.
Варианты модификации
- только текущий документ
- вниз
- вверх
- сквозная


 
atmamont ©   (2002-12-19 00:21) [2]

правильно ли я понял?

TABLE
ID | MOD_ID | DATE_MOD | A1 | ... | AN
----------------------------------------
1 | 1 | date1 | 5 | | 332
1 | 2 | date2 | 10 | | 300
1 | 3 | date3 | 11 | | 310

A1 .. AN - реквизиты документа
ID - к примеру номер документа как он должен быть
MOD_ID - номер модификации (доп.соглашения)
DATE_MOD - дата допсглашения
В результате получает на нужную дату по date_mod кортеж необходимых реквизитов... Вроде все сходится

А вот насчет вариантов модификации можно подробнее? Первый раз сталкиваюсь с такими.


 
atmamont ©   (2002-12-19 00:24) [3]

И получается, что primary key будет уже ID+MOD_ID


 
Jeer ©   (2002-12-19 00:35) [4]

Не обязательно ID+MOD_ID
Введи ссылку на parent

ID
PARENT (ссылка на ID)
VERS версия (больше для человека чем для базы тк дублирует ID+PARENT)
VDATE дата версии
...


 
Jeer ©   (2002-12-19 00:38) [5]

А варианты модификации определяют правила каскадных изменений зависимых документов.
Цепочка изменений может прерываться на проведенном документе (те том, где или после которого ничего менять уже нельзя по причине завершения бизнес-транзакции)


 
atmamont ©   (2002-12-19 01:12) [6]

Спасибо, идею понял.



Страницы: 1 вся ветка

Текущий архив: 2003.01.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
3-36986
Oxy
2002-12-18 13:25
2003.01.13
Проблема с TField.SetData


4-37454
rhf
2002-11-24 19:14
2003.01.13
Popup меню из ресурса


14-37293
Ich Hasse
2002-12-22 19:29
2003.01.13
SQL прммеры


14-37323
Metallica
2002-12-21 18:44
2003.01.13
Где можно взять анализатор HTML-кода?


14-37386
Sergy
2002-12-25 11:14
2003.01.13
Kylix + MySql + Windows