![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проектирование БД [D7, MSSQL]
Tualan © (2005-10-31 19:32:00)Ув. Гуру, топчусь на месте уже долгое время, не могу придумать схему реализации, видимо опыта маловато. Может у кого-то была похожая реализация(предметная область я думаю не очень важна), поделитесь советом.
Вопрос вот в чём:
Есть счета, на которых соответсвенно деньги. Определенное кол-во денег на счете может находиться в разных статусах(1,2,3,4), может только в одном, может в нескольких.
Есть операции, которые сводяться к изменению статусов. На низком уровне делаю таблицу - реестр:
счет | кол-во | статус | дата
и соответственно при переводе из статуса 1 в 2:
счет | кол-во | статус | дата
--------------------------------
NNN | - N | 1 | сегодня 19-25
NNN | + N | 2 | сегодня 19-26
Соответственно информацию о статусах на определенную дату (что и требуется в результате), получаю суммированием таблицы до указанной даты, с группировкой по статусу.
Собственно вопрос, как можно реализовать в этом ключе операции со всеми активами счета, т.е. сделать переводы всех денег со статуса 1 в 2, и т.п.
И как получать при этом оперативную инфрмацию о состоянии счета.
Написал, как мог, если что-то не понятно я напишу подробнее.
Спасибо всем откликнувшимся.
Курдль (2005-11-01 12:04:00) [21]
> Sergey13 © (01.11.05 11:13) [9]
А тебе какую? "Организаций и предприятий" или "Кредитную"?
Sergey13 (2005-11-01 11:57:00) [22]2[10] msguns © (01.11.05 11:44)
В общем "Бухгалтерию за 21 день" мне не найти. Жаль. Ну, и на том спасибо.
msguns (2005-11-01 11:51:00) [23]Что-то мне подсказывает, что под словом "счет" у автора сабжа "прячется" некие финресурсы клиента. Что-то вроде расчетного счета в банке. Которыми может распоряжаться как сам клиент, так и "траст" (в известных пределах). Например, так работают кредитные схемы, когда открываются кредитные линии, из которых могут оплачиваться как текущие счета клиента, так и производиться текущие проплаты по обслуживанию. Т.е. "счет" (а именно клиент) один, а "кредитных линий" несколько, при этом ресурсы могут перетекать из одной линии в другую (хотя, насколько я знаю, это очень не приветствуется).
msguns (2005-11-01 11:44:00) [24]>Sergey13 © (01.11.05 11:13) [9]
Хехехе.. Ну ты дал стране угля ! Это ж хлеб многочисленной армии преподавателей и ведущих всяческих бухкурсов. Хорошей книгипо бухучету я не встечал. Т.е. их огромное кол-во, но они слишком замудренные ;)
Я в свое время изучал бухучет так: смотрел, как работает наш (и не только) главбух, внимательно штудировал Гл.Книгу, Журналы, Мемориальные ордера (в бюджете, например, принята мемориально-ордерная система учета). И есть у меня книжонка (тоненькая такая, беленькая, невзрачненькая). "2000 типовых проводок в бухгалтерии", где кратенько изложены допустимые корреспонденции счетов, субсчета и их назначение, рекомендации по схеме бухгалтерской записи (проводки) операций по счетам (журналам).
Правда, некоторые схемы устарели, ибо сильно зависят от законодательства (например, при переходе на европлан счетов был упразднены как таковые счета "отгрузка" (45) и "реализация" (46). Для инфы о новых схемах лучше иметь под рукой какой-нибудь хороший бухгалтерский периодический журнал.
И еще. При всей "догматичности" бухучета существует достаточно много вариаций проводок в зависимости от специфики предприятия. Например, несколько отличается налоговый учет в производстве и торговле. "По разному" ведется учет в строительстве и сельском хозяйстве и т.д. Банковская бухгалтерия - это вообще нечто стоЯщее в стороне ;))
Хотя, конечно, принцип двойной записи, виды и категории счетов, принцип их "взаимодействия", журнальная запись, баланс и т.д. едины.
Sergey13 (2005-11-01 11:13:00) [25]2[8] msguns © (01.11.05 11:06)
Офтоп.
Сергей, не подскажешь какую нить книженцию (в эл.фомате желательно) типа "Справочник молодого бухгалтера" или "бухгалтерия для чайников". Искал в инете - или шибко специализированное что-то или уж сильно общее и громозкое. А хотелось бы попроще и по азам для общего (правильного!!!) представления.
msguns (2005-11-01 11:06:00) [26]>Tualan (01.11.05 10:46) [7]
Может все-таки назвать предметную область ?
Совеьую осзнакомиться с основами счетоводства и бухгалтеского учета
Tualan (2005-11-01 10:46:00) [27]Сложность именно в операциях со всем счетом, т.е перевод всех активов счета, в определенное состояние. Т.е. когда жестко указываем цифру все понятно, но когда весь счет???? При этом операции могут проводиться и задним числом и отменяться.
Курдль (2005-11-01 10:30:00) [28]
> Есть счета, на которых соответсвенно деньги.
Ассоциировать остатки на счетах с "деньгами на счетах" - это смертельная ошибка для любой бухгалтерии. На счетах отражаются требования либо обязательства.
msguns (2005-11-01 10:05:00) [29]>Есть счета, на которых соответсвенно деньги. Определенное кол-во денег на счете может находиться в разных статусах(1,2,3,4),
Ерунда ! На одном счете не может быть несколько статусов - это противоречит основам бухгалтерского учета. Для каждого "статуса" должен быть свой счет (субсчет), тогда и путаницы не будет
ANB (2005-11-01 09:43:00) [30]Таки предметную область желательно уточнить. Хотя логически все понятно. Я бы сделал так (все ИМХО, с русского потом перевести на английский):
1. Создал таблички "Счет"
(
ID,
Привязки к хозяину и прочие атрибуты реального счета
);
"Суммы счета со статусами"
(
ID,
ID счета,
сумма,
статус
);
"Движение по статусам"
(
ID суммы со статусами откуда,
ID суммы со статусами куда,
сумма,
дата
);
В табличку "суммы со статусами" хранить текущие состояния счетов, т.е. при движении эта табличка должна корректироваться.
Выборки на "сегодня" будут работать очень шустро, т.к. будут идти по одной таблице, а выборки на любую дату - считать обратным хотом, т.е. минусовать приход и плюсовать расход. Получится, чем раньше дата - тем тромознее, но как правило пользователя интерисует чаще оперативная информация, в противном случае - пусть ждет. Логику изменения таблиц лучше всего запихнуть в хранимки.
Sergey13 (2005-11-01 09:36:00) [31]2Tualan (31.10.05 19:32)
А число статусов - жесткое?
ИМХО, можно подумать над таким вариантом. Вести таблицу остатков
(Id, счет, денег_по_статусу1, денег_по_статусу2, денег_по_статусу3, денег_по_статусу4, дата_последней операции). А ту, что нарисована у тебя заполнять тригерами на изменение "головной" таблицы. "На дату" получать "обратным отсчетом" - быстрее может получиться.
app (2005-11-01 09:11:00) [32]Tualan (31.10.05 19:32)
предметная область я думаю не очень важна
Как раз все в предметной области.
АлексейК (2005-11-01 05:42:00) [33]А чем собственно сложности?