Piotr Warda

Piotr Warda
informatyk-ekonomist
a

Temat: Sortowanie przy grupowaniu

Witam,

Jak najprościej rozwiązać taki temat:

Mam tabelę, którą potrzebuję posortować po PESEL+DataUpraw, jednocześnie chcę grupować tylko po PESEL - czyli zależy mi na tym, aby chronologicznie wziąć ostatni wpis.

Jednocześnie daty mogą być z różnych lat a dla jednego PESEL może być wiele wpisów, ale conajmniej jeden.

Zabawy z wielokrotnym grupowaniem, częściowym ukrywaniem nie rozwiązują całościowo problemu.
Albo czego nie zrobiłem, albo coś przedobrzyłem.

Pozdrawiam,
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Sortowanie przy grupowaniu

1. Wstaw grupowanie po polu PESEL
2. Wstaw sortowanie rekordów po polu DataUpraw
3. Przenieś szczegóły np. DataUpraw do stopki grupy
4. Ukryj nagłówek grupy oraz szczegóły

Gotowe.

Dzięki temu Crystal pokaże w stopce grupy ostatnią wartość, a więc ostatni wpis w ramach PESEL'u.
Piotr Warda

Piotr Warda
informatyk-ekonomist
a

Temat: Sortowanie przy grupowaniu

Witam,

już od początku miałem to tak zrobione i niestety działalo różnie. Początkowo składałem to na karb tego, iż mogłem coś przedobrzyć ale w końcu znalazłem winowajcę.

Winowajcą okazała się funkcja ToText(), która dla pustej daty po prostu głupiała i wycinała wiersz na wydruku. Pikanterii dodaje fakt próba filtrowania z zastosowaniem IsNull() nie załatwia sprawy, po prostu ToText z datą null rozwala wydruk.

Pozdrawiam,Piotr Warda edytował(a) ten post dnia 15.11.12 o godzinie 08:17
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Sortowanie przy grupowaniu

W jaki sposób ma być traktowana pusta data, czyli wartość null? W ogóle nie ma się pojawiać na raporcie?
Piotr Warda

Piotr Warda
informatyk-ekonomist
a

Temat: Sortowanie przy grupowaniu

W funkcji @Uprawnienia mam taki zapis:

"uprawnienia od "+ToText({tabela.DataUpraw},"dd.MM.yyyy")+iif(IsNull({tabela.DataUprawDo}),"","do "+ToText({tabela.DataUprawDo},"dd.MM.yyyy"))

jeśli jest zapis w takiej postaci:
"uprawnienia od "+ToText({tabela.DataUpraw},"dd.MM.yyyy")

wiersz pojawia się w raporcie

zapis w takiej postaci:
"uprawnienia od "+ToText({tabela.DataUpraw},"dd.MM.yyyy")+"do "+ToText({tabela.DataUprawDo},"dd.MM.yyyy")

już wycina wiersz...

Pole DataUprawDo może mieć wpisaną datę, nawet z przyszłości lub być NULL

Funkcja IsNull() dla daty działa poprawnie - sprawdzałem, wina leży wyłącznie po stronie ToText()

Pozdrawiam,Piotr Warda edytował(a) ten post dnia 15.11.12 o godzinie 20:11
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Sortowanie przy grupowaniu

W takim razie przed funkcją ToText musisz sprawdzić czy wartość jest różna od null za pomocą IsNull. Jeśli nie, to wyświetl jakiś alternatywny tekst.
Piotr Warda

Piotr Warda
informatyk-ekonomist
a

Temat: Sortowanie przy grupowaniu

Witam,

Od początku miałem zapis taki, jak dwa posty poniżej (pełny zapis zawartości formuły @Uprawenienia), jednak mimo, iż IsNull() działa poprawnie, to w połączeniu z ToText wycina wiersz na wydruku raportu.
Ręce mi już opadają, nie potrafię znaleźć w czym tkwi problem...

Pozdrawiam,
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Sortowanie przy grupowaniu

Powtórzę moje pytanie: co chcesz wyświetlić w przypadku gdy nie jest określona data (null)?
Piotr Warda

Piotr Warda
informatyk-ekonomist
a

Temat: Sortowanie przy grupowaniu

Dokładnie tak, jak wygląda to w treści funkcji:

na wydruku powinno byc tak:

a) puste pole DataUprawDo:

uprawnienia od 10.04.2012

a) niepuste pole DataUprawDo:

uprawnienia od 17.08.2012 do 17.08.2015

Pozdrawiam,
Andrzej Curyło

Andrzej Curyło konsultant,
freelancer

Temat: Sortowanie przy grupowaniu

Czy w ustawieniach sortowania rekordów nie jest zamienione pole DataUpraw z polem DataUprawDo ?

Pozdrawiam,

Następna dyskusja:

Ustawienie nazwy pliku przy...




Wyślij zaproszenie do