|
|
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
В общем такая ситуация. Имеютються две таблици Приход товара которой есть Код товара Код Склада - куда пришел товар Код поставшика - от кого пришел Колличество Засход товара код Товара Код магазина -куда из склада ушел товар Код склада - из какого склда ушел количевтво. _________________________________ Врезультате нужно получить оттаток на всех складах и в каждом отдельности. Как такое можно реализовать Подскажите SQL запрос а то что то у меня не то получаеться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2004, 23:50 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
Ты лучше показывай то, что не получается, а мы поправлять будем... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 00:20 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 02:08 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
А какой метод списания (LIFO, FIFO и т.п.)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 05:27 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
Вот расмотрим частный случай учет по складу номер 2 SELECT `Приход Склады`.`Код Товара`, `Приход Склады`.`Код Склада`, SUM(`Приход Склады`.Количество) AS Приход, (SELECT SUM(`Расход Склады`.Количество) FROM `Расход Склады` WHERE `Приход Склады`.`Код Склада` = `Расход Склады`.`Код Склада` AND `Приход Склады`.`Код Товара` = `Расход Склады`.`Код Товара`) AS Расход, (Приход - Расход) AS Остаток FROM `Приход Склады` GROUP BY `Приход Склады`.`Код Товара`, `Приход Склады`.`Код Склада` HAVING (`Приход Склады`.`Код Склада` = 2) _______________________________________________ все считает нормально но как избежать такой ситуации допустим когда расходу товара небыло тое есть ситуация такая Код товара Код склада Приход Расход Остаток 1 2 5176 100 5076 2 2 1222 700 522 3 2 555 <NULL> <NULL> Как избежать пустого поля я точно не помню там помоему протое условие ставиться если поле пустое тогда оно равно 0 и все нормально работатет только я забыл малость. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 06:44 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
делай между приходом и расходом промежуточную таблицу, реализующую отношение многие-ко-многим и не парься, а то устанешь потом извращаться с методами списания и калькуляции себестоимости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 07:08 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
выгледить это должно примертно так Код товара | Код склада | Приход | Расход | Остаток 1 | 2 | 5176 | 100 | 5076 2 | 2 | 1222 | 700 | 522 3 | 2 | 555 | 0 | 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 07:08 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
Т.е. так Код товара | Код склада | Приход | Расход | Остаток 1 | 2 | 5176 | 100 | 5076 2 | 2 | 1222 | 700 | 522 3 | 2 | 555 | 0 | 555 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 07:09 |
|
||
|
Приход-Расход =Остаток как зделать?
|
|||
|---|---|---|---|
|
#18+
А все вроде догнал SELECT `Приход Склады`.`Код Товара`, `Приход Склады`.`Код Склада`, SUM(`Приход Склады`.Количество) AS Приход, (SELECT SUM(`Расход Склады`.Количество) FROM `Расход Склады` WHERE `Приход Склады`.`Код Склада` = `Расход Склады`.`Код Склада` AND `Приход Склады`.`Код Товара` = `Расход Склады`.`Код Товара`) AS Расход, (Приход - iif(ISNULL(Расход), 0, Расход)) AS Остаток FROM `Приход Склады` GROUP BY `Приход Склады`.`Код Товара`, `Приход Склады`.`Код Склада` HAVING (`Приход Склады`.`Код Склада` = 2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2004, 07:52 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1654&tid=1675557]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
53ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 359ms |

| 0 / 0 |
