powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / по моему виновата структура БД
6 сообщений из 6, страница 1 из 1
по моему виновата структура БД
    #33249140
voffka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
БД- склад
есть таблица движение
id
дата
от кого
кому
основание
общая сумма

другая таблица детали движения
id_движения
товар
количество
цена
....
проблема в следующем
как сделать оборотку тоесть

name от кого кому количество
--------------------------------------------------------
картошка А В 500
картошка В С 300
картошка С D 15

а необходимо получить

субконто : сальдо на начало: приход :расход: сальдо на конец
-------------------------------------------------------------------------
картошка : : 815 : 815 :
А 500
В 500 : 300
С 300 : 15
D 15 :
как можно это изобразить с помошью имеющихся таблиц?
если надо менять структуру
то подскажитечто конкретно и почему
...
Рейтинг: 0 / 0
по моему виновата структура БД
    #33249192
voffka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
столбцы съехали
...
Рейтинг: 0 / 0
по моему виновата структура БД
    #33254775
Фотография UK0IAI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
делается за 1 запрос. Из 3-х запросов через UNION.
Во вск таблицы - добавить поле - тип дока И просто флаг - (1 или -1)
Чтобы четко различать приход_расход. Тпп дока поможет "исключать" из выборки , например, внутренние обороты (перемещение).

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
select 
   ID_товар,
   sum(Приход),
   sum(Расход),
   sum(Приход) - sum(Расход) as СТАЛО
from
(  
select
    ID_товар, 
   sum (общая сумма * flag) as БЫЛО,
    0   as ПРИХОД,
    0   as РАСХОД
from ......
where .....
group by ID_товар
UNION
select 
   ID_товар, 
    0   as БЫЛО,
   общая сумма  as ПРИХОД,
    0   as РАСХОД
from ......
where flag =  1 .....
group by ID_товар
UNION
select 
   ID_товар, 
    0   as БЫЛО,
    0  as ПРИХОД,
   общая сумма  as РАСХОД
from ......
where flag = - 1 .....
group by ID_товар
) 
group by ID_товар
...
Рейтинг: 0 / 0
по моему виновата структура БД
    #33254896
Фотография Валентин К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Непонятно, зачем движение разложили на 2 таблицы, но сделать оборотку не проблема, смысл в типах документов, т.е. приход - по приходным, расход по расходным, остаток приходы-расходы+нач остаток либо, если есть регистры текущего состояния, тогда расчет остатка от конца остаток - приход+расход все естественно с учетом периода или даты, на которую считается остаток.
...
Рейтинг: 0 / 0
по моему виновата структура БД
    #33254954
Валентин КНепонятно, зачем движение разложили на 2 таблицы.

IMHO по одному коду движения перемещаются различные товары...

ИМХО а трудно было не понять?
...
Рейтинг: 0 / 0
по моему виновата структура БД
    #33256279
Фотография Валентин К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
erwertwrwerwerwerwerwr Валентин КНепонятно, зачем движение разложили на 2 таблицы.

IMHO по одному коду движения перемещаются различные товары...

ИМХО а трудно было не понять?

Смысл в хранении движения, а не того, что разные товары перемещаются, это и так понятно, если подразумевается движение товара. Есть несколько подходов к данной реализации и та, которая у автора вопроса - не самая удачная, что я собственно и осветил. Но она не настолько неудачная, чтобы с ней нельзя было нормально работать...
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / по моему виновата структура БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]