|
|
|
Запрос на получение остатков
|
|||
|---|---|---|---|
|
#18+
Стандартная ситуация – складской учет. Есть две таблицы – приход и расход (пускай pri: pri.naim, pri.kolvo и ras: ras.naim, ras.kolvo). Как лучше посчитать остаток товара на складе? Или сама постановка вопроса не верна и лучше хранить и приходы и расходы в одной таблице (с разными знаками)? Поделитесь опытом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2003, 01:12 |
|
||
|
Запрос на получение остатков
|
|||
|---|---|---|---|
|
#18+
При хранении приходов и расходов в одной и разных таблицах есть свои преимущества и недостатки. Мне, когда я делал склад пару лет назад, больше нравилось хранить в разных таблицах. В то же время моим коллегам - в одной. На этот вопрос ты должен дать себе ответ сам. А это будет только после того, как сам напишеш прогу и увидиш все её недостатки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2003, 11:10 |
|
||
|
Запрос на получение остатков
|
|||
|---|---|---|---|
|
#18+
Можно сделать так: Таблица остатков BALANCE (ID, REST) Таблица истории движения BALANCE_HISTORY (BALANCE_ID, INCOME, OUTCOME) Из всех документов движения делаются записи в таблицу BALANCE_HISTORY, а в ней на триггерах изменяются остатки в BALANCE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2003, 16:30 |
|
||
|
Запрос на получение остатков
|
|||
|---|---|---|---|
|
#18+
Ну лично я для себя решил хранить в двух. Но вот проблемы поиска остатка осталась. Я сейчас, имхо, его очень глупо считаю. В три этапа. 1) с помощью select sum(приходы) ... GROUP BY товар высчитываю общий приход на какой то момент. 2) Аналогично для расходов. 3) SELECT товар.таб_приходов, приходы, расходы LEFT JOIN таблица_расходов ON (товар.таб_придов = товар.таб_расходов) Ну и на основе этой выборке уже все видно. Все это конечно в ХП делается, но на мой взгляд ужасно коряво. Не верю что нет способа легче. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2003, 00:00 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=517&tid=1580449]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 345ms |

| 0 / 0 |
