kreator писал(а):finsoftrz писал(а): А можете определить в Вашей системе, например, сколько маржи получилось по конкретному поставщику за прошедший квартал?
Поставщиков нет. Контора производственная. Себестоимость продукции считается отдельно. Маржа - типа разница между себестоимостью и оптовой ценой.
Ахах... С этого и надо было начинать. Я думал, у Вас оптово-розничная торговля. Если производство и юрики, то можно применять расчет себестоимости по средним ценам. Это как-бы совсем другая ситуация, на порядок проще, чем парционный учет. Так как не требуется устанавливать соответствие продаж и закупок. Были когда-то заказные системы с учетом по средним ценам, там все считается намного, намного быстрее и проще...
kreator писал(а):
Игорь Столяров писал(а):Да. Но это будет список с уникальным индексом (например для остатков: предприятие, склад, товар, дата),по которому будет производится выборка. Никто ведь не собирается последовательно "лопатить" весь этотсписок при каждом запросе на остатки ...
Тема складского учёта - безразмерная. Давайте отвлечёмся от хранения итогов. Допустим без итогов пока. И, допустим, у нас файл-сервер. Как посчитать остатки. Я бы пошёл по всем проводкам и раскидывал бы товар в очереди товаров. Второй вариант - идти по проводкам по индексу товара. Вы как считаете? А если итоги хранятся где-то, то второй вариант предпочтителен?
Речь мы вроде ведем про приложения со встроенным форматом, работающими на терминальном сервере. Давайте забудем термин "файл-сервер", который в данном контексте некорректен. Не совсем понимаю цели вопроса. У нас расчет может вестись по обоим вариантам, в зависимости от ситуации. Если по всем товарам, то либо от ближайших остатков и по всем последующим документам, либо (если нужно только количество) в обратном порядке от оперативных остатков назад. Если в отчетах накладываются разные ограничения на список товаров, то, в зависимости от размера списка, программа использует первый или второй вариант. Замечу только, что у меня в системе нет "проводок" или "операций", расчет выполняется по документам. Небольшая хитрость с денормализацией и нет необходимости мапить документы, создавая огромные сводные таблицы операций...
C6/C11, ШВС, tps/btrieve.