powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / пмогите с запросом, уф?
5 сообщений из 5, страница 1 из 1
пмогите с запросом, уф?
    #36555084
Volodya_zh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть 2 таблицы 1.поступление и 2.отгрузка с полями
1. поставщик | дата поставки | кол.поставки
2. поставщик | дата отгрузки | кол.отгрузки

хочется такой отчет:

поставщик | остаток на начало года | остаток на начало месяца | поступление за год | поступление за месяц | отгружено за год | отгружено за месяц | остаток на сегодня




VFP 9

ps таких пар-таблиц 5, как всунуть в один отчет, с разбивкой в конце каждой выборки д.б сумма по колонке
...
Рейтинг: 0 / 0
пмогите с запросом, уф?
    #36555450
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Volodya_zh,

Код: 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.
DATN=DATE()-DAY(DATE())+ 1  && НАЧ,МЕСЯЦА
DATK=GOMONTH(DATN, 1 )- 1  && КОН. МЕС.
DATNG=GOMONTH(DATN,-MONTH(DATN)+ 1 ) && НАЧ,ГОДА
SELECT  0  
CREATE CURSOR POST (POST I( 4 ),DAT_OP D( 8 ),KOD_TOV I( 4 ),KOL N( 10 , 3 ))
SELECT  0  
CREATE CURSOR OTGR (POST I( 4 ),DAT_OP D( 8 ),KOD_TOV I( 4 ),KOL N( 10 , 3 ))

SELECT POST,KOD_TOV,SUM(OSTNG) OSTNG,SUM(OSTNM) OSTNM,SUM(POSTNG) POSTNG,SUM(POSTNM) POSTNM,SUM(OTGNG) OTGNG, ;
SUM(OTGMS) OTGMS,SUM(OSTNG+POSTNG-OTGNG) OSTTEK   FROM ;
(SELECT POST,KOD_TOV,KOL* 1  OSTNG,KOL* 0  OSTNM,KOL* 0  POSTNG,KOL* 0  POSTNM,KOL* 0  OTGNG,KOL* 0  OTGMS FROM POST WHERE DAT_OP <DATNG;
UNION ALL ;
SELECT POST,KOD_TOV,KOL*(- 1 ) OSTNG,KOL* 0  OSTNM,KOL* 0  POSTNG,KOL* 0  POSTNM,KOL* 0  OTGNG,KOL* 0  OTGMS FROM OTGR WHERE DAT_OP <DATNG;
UNION ALL ;
SELECT POST,KOD_TOV,KOL* 0  OSTNG,KOL* 1  OSTNM,KOL* 0  POSTNG,KOL* 0  POSTNM,KOL* 0  OTGNG,KOL* 0  OTGMS FROM POST WHERE DAT_OP <DATN;
UNION ALL ;
SELECT POST,KOD_TOV,KOL* 0  OSTNG,KOL*(- 1 ) OSTNM,KOL* 0  POSTNG,KOL* 0  POSTNM,KOL* 0  OTGNG,KOL* 0  OTGMS FROM OTGR WHERE DAT_OP <DATN;
UNION ALL ;
SELECT POST,KOD_TOV,KOL* 0  OSTNG,KOL* 0  OSTNM,KOL* 1  POSTNG,KOL* 0  POSTNM,KOL* 0  OTGNG,KOL* 0  OTGMS FROM POST WHERE DAT_OP BETWEEN DATNG AND DATN;
UNION ALL ;
SELECT POST,KOD_TOV,KOL* 0  OSTNG,KOL* 0  OSTNM,KOL* 0  POSTNG,KOL* 1  POSTNM,KOL* 0  OTGNG,KOL* 0  OTGMS FROM POST WHERE DAT_OP BETWEEN DATN AND DATK;
UNION ALL ;
SELECT POST,KOD_TOV,KOL* 0  OSTNG,KOL* 0  OSTNM,KOL* 0  POSTNG,KOL* 0  POSTNM,KOL* 1  OTGNG,KOL* 0  OTGMS FROM OTGR WHERE DAT_OP BETWEEN DATNG AND DATN;
UNION ALL ;
SELECT POST,KOD_TOV,KOL* 0  OSTNG,KOL* 0  OSTNM,KOL* 0  POSTNG,KOL* 0  POSTNM,KOL* 0  OTGNG,KOL* 1  OTGMS FROM POST ;
WHERE DAT_OP BETWEEN DATN AND DATK ) CUN GROUP BY  1 , 2  INTO CURSOR OBOROTKA
...
Рейтинг: 0 / 0
пмогите с запросом, уф?
    #36555465
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LUCIAN,
Последн строки надо так
Код: plaintext
1.
2.
3.
UNION ALL ;
SELECT POST,KOD_TOV,KOL* 0  OSTNG,KOL* 0  OSTNM,KOL* 0  POSTNG,KOL* 0  POSTNM,KOL* 0  OTGNG,KOL* 1  OTGMS FROM OTGR ;
WHERE DAT_OP BETWEEN DATN AND DATK ) CUN GROUP BY  1 , 2  INTO CURSOR OBOROTKA
...
Рейтинг: 0 / 0
пмогите с запросом, уф?
    #36555637
Volodya_zh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LUCIAN,

спасибо, а можно немножко коментариев
...
Рейтинг: 0 / 0
пмогите с запросом, уф?
    #36555814
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Volodya_zhLUCIAN,

спасибо, а можно немножко коментариев

необходимо получить таблицу такой структуры:

POST I(4,0) -код поставщика
KOD_TOV I(4,0) -код товара
OSTNG N(16,3) -остаток на н.г. формируется с помощью подзапросов :
SELECT POST,KOD_TOV,KOL*1 OSTNG,KOL*0 OSTNM,KOL*0 POSTNG,KOL*0 POSTNM,KOL*0 OTGNG,KOL*0 OTGMS FROM POST WHERE DAT_OP <DATNG;
UNION ALL ;
SELECT POST,KOD_TOV,KOL*(-1) OSTNG,KOL*0 OSTNM,KOL*0 POSTNG,KOL*0 POSTNM,KOL*0 OTGNG,KOL*0 OTGMS FROM OTGR WHERE DAT_OP <DATNG;

OSTNM N(16,3) -остаток на н.мес. формируется с помощью подзапросов :
SELECT POST,KOD_TOV,KOL*0 OSTNG,KOL*1 OSTNM,KOL*0 POSTNG,KOL*0 POSTNM,KOL*0 OTGNG,KOL*0 OTGMS FROM POST WHERE DAT_OP <DATN;
UNION ALL ;
SELECT POST,KOD_TOV,KOL*0 OSTNG,KOL*(-1) OSTNM,KOL*0 POSTNG,KOL*0 POSTNM,KOL*0 OTGNG,KOL*0 OTGMS FROM OTGR WHERE DAT_OP <DATN;

POSTNG N(16,3) -поступило с н.г.формируется с помощью подзапроса:
SELECT POST,KOD_TOV,KOL*0 OSTNG,KOL*0 OSTNM,KOL*1 POSTNG,KOL*0 POSTNM,KOL*0 OTGNG,KOL*0 OTGMS FROM POST WHERE DAT_OP BETWEEN DATNG AND DATN;

POSTNM N(16,3) -поступило с н.мес.формируется с помощью подзапроса:
SELECT POST,KOD_TOV,KOL*0 OSTNG,KOL*0 OSTNM,KOL*0 POSTNG,KOL*1 POSTNM,KOL*0 OTGNG,KOL*0 OTGMS FROM POST WHERE DAT_OP BETWEEN DATN AND DATK;

OTGNG N(16,3) -отгруж. с н.г.формируется с помощью подзапроса:
SELECT POST,KOD_TOV,KOL*0 OSTNG,KOL*0 OSTNM,KOL*0 POSTNG,KOL*0 POSTNM,KOL*1 OTGNG,KOL*0 OTGMS FROM OTGR WHERE DAT_OP BETWEEN DATNG AND DATN;
OTGMS N(16,3) -отгруж. с н.мес.формируется с помощью подзапроса:
SELECT POST,KOD_TOV,KOL*0 OSTNG,KOL*0 OSTNM,KOL*0 POSTNG,KOL*0 POSTNM,KOL*0 OTGNG,KOL*1 OTGMS FROM OTGR WHERE DAT_OP BETWEEN DATN AND DATK

OSTTEK N(16,3) -остаток на конец мес вычисляется по формуле:
OSTNG+POSTNG-OTGNG
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / пмогите с запросом, уф?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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