Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проектирование БД / 7 сообщений из 7, страница 1 из 1
31.10.2005, 19:35
    #33354078
Tualan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проектирование БД
Ув. Гуру, топчусь на месте уже долгое время, не могу придумать схему реализации, видимо опыта маловато. Может у кого-то была похожая реализация(предметная область я думаю не очень важна), поделитесь советом.

Вопрос вот в чём:

Есть счета, на которых соответсвенно деньги. Определенное кол-во денег на счете может находиться в разных статусах(1,2,3,4), может только в одном, может в нескольких.

Есть операции, которые сводяться к изменению статусов. На низком уровне делаю таблицу - реестр:

счет | кол-во | статус | дата

и соответственно при переводе из статуса 1 в 2:

счет | кол-во | статус | дата
--------------------------------
NNN | - N | 1 | сегодня 19-25
NNN | + N | 2 | сегодня 19-26

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

Собственно вопрос, как можно реализовать в этом ключе операции со всеми активами счета, т.е. сделать переводы всех денег со статуса 1 в 2, и т.п.

И как получать при этом оперативную инфрмацию о состоянии счета.

Написал, как мог, если что-то не понятно я напишу подробнее.

Спасибо всем откликнувшимся.
...
Рейтинг: 0 / 0
31.10.2005, 21:14
    #33354161
dimka@ultra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проектирование БД
IMHO. Проконсультируйтесь у ближайшего бухгалтера - он (она) расскажет про двоную запись и реализацию этой хреновины году этак в 1600 (или около того)....
Баланс опять-таки и оборотные ведомости.
-------
Если чо не так, пусть старшие товарищи поправят...
...
Рейтинг: 0 / 0
01.11.2005, 10:47
    #33354624
Tualan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проектирование БД
Уже консультировался, сложность именно в операциях со всем счетом, т.е перевод всех активов счета, в определенное состояние. Т.е. когда жестко указываем цифру все понятно, но когда весь счет???? При этом операции могут проводиться и задним числом и отменяться.
...
Рейтинг: 0 / 0
01.11.2005, 11:16
    #33354745
gardenman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проектирование БД
Появните следующее ваше высказывание:
авторОпределенное кол-во денег на счете может находиться в разных статусах(1,2,3,4),
Это что же получается? что на самом деле у вас 4 счета?
...
Рейтинг: 0 / 0
01.11.2005, 11:20
    #33354762
Tualan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проектирование БД
Да в общем неважно, пусть будут разделы счата, субсчета или по другому. Как проводить операции не с количеством?
...
Рейтинг: 0 / 0
01.11.2005, 11:30
    #33354787
gardenman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проектирование БД
...
Рейтинг: 0 / 0
02.11.2005, 10:12
    #33356733
ModelR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проектирование БД
Остаток по счету изменяется любыми операциями, в том числе и закрытием счета как вам нужно. Закрытие = определить остаток и сформировать операцию на всю сумму остатка.
Вопрос в том, что через секунду после закрытия возможно произойдет опять какая-то операция и остаток снова возникнет. Предотвратить это можно введя понятие блокирования операций по счету в периоде. На уровне структур данных для операций это ни на что не влияет. Просто создайте табличку с информацией о блокировании счетов и проверяйте блокирование триггерами или иным программным кодом.
Про хранение / динамическое вычисление остатков также обсуждалось, сейчас к сожалению не помню топик.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проектирование БД / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]