Michał Sekułą a, a
- 1
- 2
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Poprzez zmienne. Musisz zadeklarować zmienną o takiej samej nazwie w raporcie głównym oraz podraporcie i poprzedzić słówkiem shared, czyli zmienna współdzielona.Przykład:
http://www.bogge.info/blog/scripting/share-variables-b...Marcin Sulecki edytował(a) ten post dnia 12.11.12 o godzinie 12:05
Sławosz
Marcisz
inspektor, Wydział
Informatyki UM
Katowice
Temat: Przekazywanie danych z subraportu
Hej,od jakiegoś czasu próbuję przez to przejść i nie wiem, o co chodzi. Robię dwie wartości zgodnie z instrukcją, ale za każdym razem w raporcie głównym pokazuje mi się wartość domyślna / zero. Ta wartość na pewno nie jest poprawna.
Co mam z tym zrobić?
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Upewnij się, że wartość zmiennej w raporcie głównym i podraporcie mają taką samą nazwę oraz obydwie mają słówko kluczowe shared przy deklaracji zmiennej. Poza tym pamiętaj o tym aby położyć formuły na raporcie np. w ReportFooter bo inaczej nie będą wykonane.
Sławosz
Marcisz
inspektor, Wydział
Informatyki UM
Katowice
Temat: Przekazywanie danych z subraportu
W subraporcie mam formułę ilosc_produktow--- Shared NumberVar Product := 41;
położoną w stopce (sprawdzałem dla widocznej -wtedy widziałem wartość na podglądzie całego raportu - i ukrytej)
W raporcie głównym mam formułę ilosc_produktow
--- Shared NumberVar Product;
--- Product
położoną w dowolnym miejscu.
Dalej nie widzę przypisanej wartości (obecnie statycznie 41 dla testu, ale jak już zadziała, to wartość ma być dynamiczna). Korzystam z wersji 14.0.4.738 RTM.
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Według mnie musisz mieć 3 formuły:1. W raporcie głównym w Report Header deklarację zmiennej, np.
Shared NumberVar Product;
true;
2. W podraporcie przypisanie do zmiennej
Shared NumberVar Product := 41;
3. W raporcie głównym np. w Report Footer wyświetlenie zmiennej, np.
Shared NumberVar Product;
Product;
To powinno działać.
Sławosz
Marcisz
inspektor, Wydział
Informatyki UM
Katowice
Temat: Przekazywanie danych z subraportu
Dzięki, zadziałało. Kombinuję dalej i widzę to nawet, jak usunę pierwszą deklarację (przynajmniej chwilowo działa).Ale wstawiając funkcję do pola tekstowego (jako ciąg całego tekstu) wciąż mam format domyślny, pomimo że po wstawieniu pola jako samodzielne - widzę wartość 41 (to mi nie jest w tej chwili potrzebne, ale nie wiem, czy niedługo nie będę musiał w taki sposób działać). Teoretycznie nie powinno to mieć znaczenia, skoro jest widoczna w raporcie głównym wartość, ale może jeszcze trzeba coś zrobić?
EDIT:
Pomyłka ;) Pojawia się wartość w stopce głównego raportu, ale w jego treści wciąż pozostaje 0, nawet po przywróceniu pierwszej procedury w nagłówku raportu...Ten post został edytowany przez Autora dnia 02.10.13 o godzinie 12:09
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Mogę ci podesłać jakiś przykład jeśli problem jest aktualny.
Sławosz
Marcisz
inspektor, Wydział
Informatyki UM
Katowice
Temat: Przekazywanie danych z subraportu
Chętnie przeanalizuję :)
Jolanta
Kokot
informatyk, MPK
Poznań Sp. z o.o.
Temat: Przekazywanie danych z subraportu
W subraporcie mam formułę xshared NumberVar mater_a;
mater_a := Sum ({GEN_LED_VOUCHER_ROW\.AMOUNT} )
położoną w stopce
W raporcie głównym mam formułę x
Shared NumberVar mater_a ;
mater_a;
położoną w nagłówku grupy
i w chwili uruchomienia raportu formuła w raporcie głównym =0
pomimo, że jak nakliknę na nią to wchodzę do subraportu i ona jest widoczna i wyliczona
dlatego nie wiem co robię źle
pozdrawiam
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Podraport nie może być podraportem na żądanie (opcja On Demand), aby działało przekazywanie zmiennej do głównego raportu.
Jolanta
Kokot
informatyk, MPK
Poznań Sp. z o.o.
Temat: Przekazywanie danych z subraportu
To jak zrobić, żeby podraport był "niewidoczny" ale można na niego kliknąć i sie rozwijał i jeszcze żeby kwota była przekazywana z poraportu do raporu za pomocą miennej
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Obawiam się, że nie ma takiej możliwości. Podraport, który generuje się po kliknięciu, nie ma już kontaktu z głównym raportem.Jedynie co mi przychodzi do głowy, to umieszczenie zwykłego podraportu (opcja on demand wyłączona) w grupie i ukrycie grupy (opcja Hide). Użytkownik klika na lupę i pojawia się grupa wraz z podraportem na osobnej zakładce. Wówczas raczej powinno działać przekazywanie zmiennej, choć trzeba to sprawdzić.
Ale nie rozumiem do końca sensu biznesowego. Jak nie kliknę w podraport to wartość nie zostanie przeniesiona do raportu głównego. Żebym otrzymał wynik muszę klikać w podraporty?
Jolanta
Kokot
informatyk, MPK
Poznań Sp. z o.o.
Temat: Przekazywanie danych z subraportu
Nie trzeba klikać, kolega pomógł mi rozwiazać sprawę, ale trzeba jednak włączyć zwykły podraport /nie na żądanie/i ukryć go, a sens biznesowy jest taki, ze muszę na 1 raporcie zmieścić 18 podraportów / wyliczają typy kosztów/ dla wybranych MPK, czyli
MPK x suma kosztów
materiały suma
amortyzacja suma
itd ok.18
MPK y suma kosztów
materiały suma
amortyzacja sama
itd ok.18
itd. dla wszystkich MPK
Jolanta
Kokot
informatyk, MPK
Poznań Sp. z o.o.
Temat: Przekazywanie danych z subraportu
Chciałabym jeszcze zapytać- ile poraportów może być jednocześnie podpiętych do raportu głównego - czy jest jakieś ograniczenie
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Tak, jest ograniczenie do 256 (2^8).Ale swoją drogą nie przesadzaj z ilością podraportów, bo są one mało wydajne.
Jolanta
Kokot
informatyk, MPK
Poznań Sp. z o.o.
Temat: Przekazywanie danych z subraportu
Wszystko mi działam, ale.. chciałabym prznieść /przekopiować?/ wyliczoną w stopce sumę dla zmiennej do nagłówka gdzie mam osadzony podraport, aby kwota była widoczna przy podraporcie a nie pod nim.
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Jeśli używasz zmiennych to będzie problem z przeniesieniem tego do nagłówka raportu, gdyż wartości będą obliczone później. Najlepiej unikać zmiennych i korzystać tylko z formuł, gdyż wówczas nie ma problemu ze wstawieniem podsumowania do nagłówka.Ten post został edytowany przez Autora dnia 03.08.14 o godzinie 21:42
Jolanta
Kokot
informatyk, MPK
Poznań Sp. z o.o.
Temat: Przekazywanie danych z subraportu
nie bardzo rozumiem co oznacza "Najlepiej unikać zmiennych i korzystać tylko z formuł, gdyż wówczas nie ma problemu ze wstawieniem podsumowania do nagłówka." To jak inaczej mam wyliczać kwoty -poproszę o przykład zamiany tej formuły /jak mam przenieść wyliczoną wartość?/Shared NumberVar material := 0;
material := Sum({GEN_LED_VOUCHER_ROW\.AMOUNT})
Marcin
S.
Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...
Temat: Przekazywanie danych z subraportu
Proszę bardzo, podaję rozwiązanie:1. Wstaw grupowanie po MPK
2. Utwórz formułę {GEN_LED_VOUCHER_ROW\.AMOUNT}
3. Wybierz z menu Insert Summary, jako pole do sumowania wskaż powyższą formułę, a w Summary Location wybierz grupę #1 MPK
W ten sposób uzyskasz w stopcje grupy (GroupFooter) sumę dla pojedycznego MPK.
OK, pozostało jeszcze podsumowanie całości.
4. Wybierz z menu Insert Summary, wskaż wcześniejszą formułę a w Summary Location wybierz Grand Total.
W stopce raportu (Report Footer) pojawi się podsumowanie wszystkich pozycji. Teraz taką sumę możesz przenieść do nagłówka raportu (Report Header).
Osobiście zmiennych używam bardzo rzadko i tylko wtedy gdy nie ma innego sposobu na rozwiązanie danego problemu.
Powodzenia!
- 1
- 2
Podobne tematy
-
CRYSTAL REPORTS » Jak zmigrowac istniejace raporty, aby korzystaly z innej... -
-
CRYSTAL REPORTS » Sumowanie danych jednego typu -
-
CRYSTAL REPORTS » ZDJĘCIA POZA BAZĄ DANYCH -
-
CRYSTAL REPORTS » Zdjęcia z bazy danych -
-
CRYSTAL REPORTS » Przedstawienie kilku serii danych na wykresie. -
-
CRYSTAL REPORTS » Wydruk w Crystalu ( z bazą danych w excelu)- błąd w optimie -
-
CRYSTAL REPORTS » Sumowanie danych przekazanych z podraportu -
-
CRYSTAL REPORTS » Przekazywanie podsumowanie na kolejną stronę -
-
CRYSTAL REPORTS » Drążenie danych w raporcie -
-
CRYSTAL REPORTS » Export danych w formacie CSV -
Następna dyskusja: