Показать сообщение отдельно
  #10  
Старый 26.11.2014, 19:15
davidkoko davidkoko вне форума
Прохожий
 
Регистрация: 11.02.2011
Сообщения: 8
Репутация: 10
Подмигивание

Цитата:
Сообщение от Freeman
А в деле хранения остатков я бы посоветовал опереться на бизнес-процессы. Как часто проводится инвентаризация? Взять ее за точку отсчета и пересчитывать приход/расход на за весь период, а с момента последней инвентаризации.
То, что остатки надо получить из документов прихода/расхода, это все знают. Я уже объяснял для чего дополнительные таблицы остатков или "хранимые агрегаты". дело в том, что через некоторое время, когда в БД накопится очень много записей документов, запроси, основанные на первичные документы прихода/расхода, все равно замедляются (много таких тем видел на SQL.RU и на других сайтах). А выход из этой ситуации описан тут: http://www.sql.ru/forum/998443-6/osn...-v-2.(особенно IV-V вариант).
Эта будет таблица только для остатков . Никто не говорит что все запроси сделать из этих таблиц, только запроси об остатках/оборотах, по причине быстрой выборки.

Цитата:
Сообщение от Freeman
Про шапки не понял.
Doc-таблица накладных приходов/расходов-то есть master table(шапкой еще называют), а Docin,Docout,DocServ- подчинённые таблицы(Datail tables) для записей. конкретно: Docin- для записей в накладной прихода, Docout-записи в накладной прихода, DocServ-записи в накладной услуг.

Цитата:
Сообщение от Freeman
Не нужно тут дублировать одно и то же по несколько раз
Когда ясно всё написано и все равно вопросы,придётся "дублировать"
Ответить с цитированием