Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / не групирует данные в отчете...ж...ж...ж.... / 9 сообщений из 9, страница 1 из 1
20.01.2005, 18:26
    #32875700
help123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
СОЗДАЮ ОТЧЕТ:
Код: 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.
35.
36.
37.
&& begin zSELLER (parent)
SELECT DISTINCT mparent.sellerk AS sellerk,;
	sell.seller AS seller;
FROM tranzit!mparent;
 LEFT OUTER JOIN tranzit!sell;
  ON  mparent.sellerk = sell.sellerk;
WHERE mparent.dakt!={} .AND. mparent.dsend>=v_rsfrom .AND. mparent.dsend<=v_rsto;
ORDER BY sell.seller ASC;
INTO CURSOR zseller NoFilter
&& end

&& begin zMPAR (child1)
SELECT mparent.sellerk AS sellerk,;
	mparent.dsend AS dsend,;
	stations.station AS station,;
	receive.receiver AS receiver,;
	mparent.vagon AS vagon,;
	mparent.ticket4 AS ticket4,;
	IIF(tariffrtrn=.T.,mparent.tariff,00000 . 00 ) AS tariff,;
	mparent.akt AS akt,;
	mparent.dakt AS dakt;
FROM tranzit!mparent;
 LEFT OUTER JOIN tranzit!stations;
  ON  mparent.sta_sendk = stations.stationk;
 LEFT OUTER JOIN tranzit!receive;
  ON  mparent.receiverk = receive.receiverk;
WHERE mparent.dakt!={} .AND. mparent.dsend>=v_rsfrom .AND. mparent.dsend<=v_rsto;
INTO CURSOR zmpar NoFilter
&& end

SELECT zseller
INDEX ON sellerk TAG sellerk
SELECT zmpar
SET RELATION TO sellerk INTO zseller
SET SKIP TO zseller

REPORT FORM report1.frx PREVIEW
В отчете создаю группу по zseller.sellerk в Details размещаю zmpar.dsend ....
А данные не групируются по zseller.sellerk - в отчете повторяющиеся sellerk
Почему не групируются.... непойму....
...
Рейтинг: 0 / 0
20.01.2005, 21:45
    #32875889
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
details выводит все записи. Группа означает, что перед и после одинаковыми по признаку группировки записями могут быть выведены group header и group footer, ну и агрегирование в отчете по группе возможно.

А тебе, видимо, не такая группировка нужна. Тебе надо уже select делать с group by или же для полей в details включить опцию "игнорировать повторяющиеся значения", а для всей области details выставить "схлопнуть пустые строки". Предпочтительнее уже в select сгруппировать, как надо.
...
Рейтинг: 0 / 0
21.01.2005, 00:21
    #32875948
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
Для начала, в данном случае вовсе не нужны 2 курсора. Можно обойтись одним. Просто добавить в zmpar поле sell.seller. Как-то так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
SELECT mparent.sellerk AS sellerk,;
	sell.seller AS seller;
	mparent.dsend AS dsend,;
	stations.station AS station,;
	receive.receiver AS receiver,;
	mparent.vagon AS vagon,;
	mparent.ticket4 AS ticket4,;
	IIF(tariffrtrn=.T.,mparent.tariff, 00000 . 00 ) AS tariff,;
	mparent.akt AS akt,;
	mparent.dakt AS dakt;
FROM tranzit!mparent;
 LEFT OUTER JOIN tranzit!sell;
  ON  mparent.sellerk = sell.sellerk;
 LEFT OUTER JOIN tranzit!stations;
  ON  mparent.sta_sendk = stations.stationk;
 LEFT OUTER JOIN tranzit!receive;
  ON  mparent.receiverk = receive.receiverk;
WHERE mparent.dakt!={} .AND. mparent.dsend>=v_rsfrom .AND. mparent.dsend<=v_rsto;
ORDER BY sell.seller ASC, mparent.sellerk ;
INTO CURSOR zmpar NoFilter

Далее строишь отчет по одному этому курсору и в качестве признака группировки указываешь его поле zmpar.sellerk

Если тебе не надо выводить в отчете повторяющиеся значения (деталировку), то либо не используй полосу Detail, либо в команде REPORT добавь опцию SUMMARY (эта опция подавляет печать полосы Detail).
...
Рейтинг: 0 / 0
21.01.2005, 13:52
    #32877190
help123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....

Вот выложил пример....
Люди помогите: а то я уже на первой стадии депрессии....
Ну только недавно сделал ну точно такой же по структуре отчет
и все летает.....
А этот......... жж..жж..
...
Рейтинг: 0 / 0
21.01.2005, 19:52
    #32878120
help123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
HELP...
...
Рейтинг: 0 / 0
21.01.2005, 21:05
    #32878191
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
Код: plaintext
1.
2.
3.
4.
SELECT zmch
SET RELATION TO vagon INTO zmpar
SET SKIP TO zmpar
* А вот тут!!!
INDEX ON zmpar.sellerk + zmpar.dsend + zmpar.vagon TAG i1
Это шутка, конечно. ;-)
Но просто порядок следования записей в конечном итоге должен быть именно такой.
Повторяющиеся группы обусловлены другим фактическим порядком следования записей.
Замени всю сложную конструкцию из трех селектов и релейшнов со скипами на один запрос из трех таблиц. Чтобы ORDER BY в нем был такой:
1. sellerk
2. dsend
3. vagon
и проблема решится. ;-)
...
Рейтинг: 0 / 0
21.01.2005, 21:28
    #32878205
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
Это про то, что в проекте было написано. А если брать кусок кода из первого поста, то так и будет:
Код: plaintext
1.
2.
SELECT zmpar
SET RELATION TO sellerk INTO zseller
INDEX ON zmpar.sellerk + zmpar.dsend + zmpar.vagon TAG i1
Или прямо в ORDER BY запроса, формирующего zmpar.
...
Рейтинг: 0 / 0
22.01.2005, 21:16
    #32878670
help123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
Да действительно все было в ORDER BY... как не странно, ведь насколько я понимаю это просто сортировка... почему она влияет на групировку записей...пока непойму. Также переделал все в один курсор как и советовали...
Спасибо большущее за советы... без Вас бы не разобрался... а в книгах почти ничего такого не написано... или написано так... что не с первого разу разберешься...
...
Рейтинг: 0 / 0
22.01.2005, 23:59
    #32878738
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не групирует данные в отчете...ж...ж...ж....
Hi help123!

Потому что так работает репорт - он "идёт" по таблице в той
последовательности, что и например SCAN (если нету индекса - то в порядке
физического следования записей, для запроса это будет порядок указанный в
ORDER BY), а группировку навешивает "наверх" - т.е. поменялось значение в
группирующем поле - значит надо начинать новую группу :)

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / не групирует данные в отчете...ж...ж...ж.... / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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