Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
запросы_к_регистрам [2019/09/03 09:25] timofeev создано |
запросы_к_регистрам [2019/09/03 09:30] (текущий) timofeev [Долг по таре клиента] |
||
---|---|---|---|
Строка 18: | Строка 18: | ||
''SELECT KONTRAGENT,DOGOVOR, SUM(IIF(P_SUMMA IS NULL,0, P_SUMMA))- | ''SELECT KONTRAGENT,DOGOVOR, SUM(IIF(P_SUMMA IS NULL,0, P_SUMMA))- | ||
SUM(IIF(R_SUMMA IS NULL,0, R_SUMMA)) AS DOLG | SUM(IIF(R_SUMMA IS NULL,0, R_SUMMA)) AS DOLG | ||
- | FROM r_vzaimorashety GROUP BY KONTRAGENT,DOGOVORЭтот запрос выдаст долги по всем контрагентам и договорам на конец базыSELECT SUM(IIF(P_SUMMA IS NULL,0, P_SUMMA))-SUM(IIF(R_SUMMA IS NULL,0, R_SUMMA)) FROM r_vzaimorashety WHERE DATADOC<='03.09.2019' | + | FROM r_vzaimorashety GROUP BY KONTRAGENT,DOGOVOR'' |
- | AND KONTRAGENT=1000000000001'' | + | |
- | Этот запрос выдаст долг клиента с кодом 1000000000001 на утро 3.09.2019. | + | Этот запрос выдаст долги по всем контрагентам и договорам на конец базы |
+ | |||
+ | |||
+ | ''SELECT SUM(IIF(P_SUMMA IS NULL,0, P_SUMMA))-SUM(IIF(R_SUMMA IS NULL,0, R_SUMMA)) FROM r_vzaimorashety WHERE DATADOC<='03.09.2019' AND KONTRAGENT=1000000000001'' | ||
+ | |||
+ | выдаст долг клиента с кодом 1000000000001 на утро 3.09.2019. | ||
====== Регистры учета тары ====== | ====== Регистры учета тары ====== | ||
Строка 35: | Строка 39: | ||
FROM R_VKK WHERE DATADOC<='03.09.2019' AND ADRES=1000000000001 | FROM R_VKK WHERE DATADOC<='03.09.2019' AND ADRES=1000000000001 | ||
'' | '' | ||
+ | |||
Этот запрос вернет остаток (НО НЕ ЗАДОЛЖЕННОСТЬ) по таре ВСЕХ ВИДОВ по адресу с кодом 1000000000001. | Этот запрос вернет остаток (НО НЕ ЗАДОЛЖЕННОСТЬ) по таре ВСЕХ ВИДОВ по адресу с кодом 1000000000001. | ||
''SELECT SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) | ''SELECT SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) | ||
- | FROM R_VKK WHERE TARA=1000000000001 AND ADRES=1000000000001 AND DATADOC<='03.09.2019' | + | FROM R_VKK WHERE DATADOC<='03.09.2019' AND TARA=1000000000001 AND ADRES=1000000000001 |
'' | '' | ||
+ | |||
Аналогичный запрос, но только по одному виду тары | Аналогичный запрос, но только по одному виду тары | ||
+ | |||
===== Регистр собственной тары===== | ===== Регистр собственной тары===== | ||
Строка 48: | Строка 55: | ||
FROM R_SKK WHERE DATADOC<='03.09.2019' AND TARA=1000000000001 AND ADRES=1000000000001 | FROM R_SKK WHERE DATADOC<='03.09.2019' AND TARA=1000000000001 AND ADRES=1000000000001 | ||
'' | '' | ||
+ | |||
Этот запрос вернет количество выкупленной по адресу 1000000000001 тары определенного вида по данным на утро 3.09.2019. | Этот запрос вернет количество выкупленной по адресу 1000000000001 тары определенного вида по данным на утро 3.09.2019. | ||
Строка 57: | Строка 65: | ||
FROM R_ZAL WHERE DATADOC<='03.09.2019' AND TARA=1000000000001 AND ADRES=1000000000001 | FROM R_ZAL WHERE DATADOC<='03.09.2019' AND TARA=1000000000001 AND ADRES=1000000000001 | ||
'' | '' | ||
+ | |||
Запрос вернет количество залоговой тары по адресу 1000000000001 тары определенного вида по данным на утро 3.09.2019. | Запрос вернет количество залоговой тары по адресу 1000000000001 тары определенного вида по данным на утро 3.09.2019. | ||
Строка 62: | Строка 71: | ||
Как уже говорилось выше, задолженность клиента по таре = остаток - собственная тара - залог.\\ | Как уже говорилось выше, задолженность клиента по таре = остаток - собственная тара - залог.\\ | ||
Пример запроса, получающего долг адреса доставки по таре:\\ | Пример запроса, получающего долг адреса доставки по таре:\\ | ||
- | '' | + | |
- | SELECT SUM(OST_-SOB_-ZAL_) FROM | + | ''SELECT SUM(OST_-SOB_-ZAL_) FROM |
- | (SELECT SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) AS OST_, | + | (SELECT SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) AS OST_,0 AS SOB_, 0 AS ZAL_ FROM R_VKK WHERE TARA=1000000000001 AND ADRES=1000000000001 AND DATADOC<='03.09.2019'\\ |
- | 0 AS SOB_, 0 AS ZAL_ | + | UNION ALL\\ |
- | FROM R_VKK WHERE TARA=1000000000001 AND ADRES=1000000000001 AND DATADOC<='03.09.2019' | + | |
- | UNION ALL | + | |
SELECT | SELECT | ||
0 AS OST_, SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) AS SOB_, | 0 AS OST_, SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) AS SOB_, | ||
0 AS ZAL_ | 0 AS ZAL_ | ||
- | FROM R_SKK WHERE TARA=1000000000001 AND ADRES<>1000000000001 AND DATADOC<='03.09.2019' | + | FROM R_SKK WHERE TARA=1000000000001 AND ADRES=1000000000001 AND DATADOC<='03.09.2019'\\ |
- | UNION ALL | + | UNION ALL\\ |
SELECT 0 AS OST_, 0 AS SOB_, | SELECT 0 AS OST_, 0 AS SOB_, | ||
SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) AS ZAL_ | SUM(IIF(P_KOLICHESTVO IS NULL,0, P_KOLICHESTVO))-SUM(IIF(R_KOLICHESTVO IS NULL,0, R_KOLICHESTVO)) AS ZAL_ | ||
- | FROM R_ZAL WHERE TARA=1000000000001 AND ADRES<>1000000000001 AND DATADOC<='03.09.2019') | + | FROM R_ZAL WHERE TARA=1000000000001 AND ADRES=1000000000001 AND DATADOC<='03.09.2019') |
'' | '' | ||