[Access 2010] warunkowe wyświetlanie etykiety w raporcie

0

W raporcie mam etykietę "Numer protokołu" oraz pole [nr_protokołu]. Nie każdy rekord zawiera dane w polu [nr_protokołu]. Zatem w raporcie w każdym rekordzie jest wyświetlana etykieta "Numer protokołu", ale nie w każdym rekordzie jest są wyświetlane dane z pola [nr_protokołu]. Czy można zrobić tak, aby gdy pole [nr_protokołu] jest puste nie wyświetlała się etykieta "Numer protokołu"?

0

Najprościej bez kodu to zmienienie tej etykiety na pole tekstowe i żródle dać coś takiego:

 iif(isnull([nr_protokołu]),null,"Numer protokołu")
0

Super, działa. Bardzo dziękuję za pomoc.

0

To zapytam jeszcze o jedno. Co zrobić w przypadku, gdy pole nie wyświetla się z powodu braku danych (przypadek powyżej), a pod nim i nad nim są inne wyświetlające się pola i chciałbym, aby nie było przerwy pomiędzy polem górnym a dolny? Krótko mówiąc, aby w takiej sytuacji pole dolne przesuwało się o jeden wiersz do góry. Czy jest to wykonalne? Próbowałem ustawiać właściwość "Można zmniejszać", ale to nic nie zmienia.

0

To już inna zabawa, ustaw właściwość można zwiększać na tak i ustaw wysokość kontrolki na minimalną wartość chyba 0,01 cm, (oczywiście kontrolki poniżej wyrównaj do tej małej wielkości) wtedy pusta się nie powiększy, a wypełniona będzie ok.

0

Zrobiłem tak jak sugerujesz (kontrolka ma wysokość 0, 002 mm i "Można zwiększać" - tak) i co do zasady wszystko działa. Tylko, że raport ma postać tabeli i gdy kontrolka ma zawartość i się powiększa to powiększa się cały wiersz tabeli, a nie sama kontrolka. Czy można to wyeliminować?

0

Ja nie rozumiem, przecież zmieniasz etykietę która ma stałą nazwę, więc zaprojektuj tak aby się mieściła.

0

Chyba się nie rozumiemy. Etykieta w szerokości kontrolki się mieści. Natomiast, gdy kontrolka się powiększa w pionie, bo posiada zawartość to w dół przesuwa się to co jest pod nią, a także wszystko co znajduje się na prawo i na lewo od niej na tym samym poziomie. Czyli przesuwa się cały wiersz.

0

To ustaw porządany rozmiar, wyłącz można powiększać, i w zdarzeniu Przy Formatowaniu sekcji szczegółów daj taki kod:

me.nazwakontrolki.visible = Not isnull(me.nazwakontrolki)
0

Wszystko działa fajnie, gdy raport jest pokazywany w trybie raportu. Gdy jest uruchamiany w trybie wydruku pojawia się błąd i komunikat "Nie można uruchomić makra niestandardowego w tym raporcie, co uniemożliwia renderowanie raportu."

0

@Miromat: nie ma szkalnej kulu, albo dasz przykład w postaci pliku accdb, albo nie będe wstanie pomóc

0

Już jest OK. Nie zgadzały się nazwy kontrolek.

1 użytkowników online, w tym zalogowanych: 0, gości: 1