Seite 1 von 1

Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Do, 28. Okt 2021 16:52
von Diller
Hallo,

ich habe ein Problem in List und Label. Ich möchte eine Zeile entfernen wenn bestimmter Inhalt vorkommt.

z.B. wenn "Serviceauftrag-Nr.:" vorkommt soll die Zeile nicht angezeigt werden.

Ich bedanke mich schonmal im Voraus.

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Do, 28. Okt 2021 17:00
von Tom
Tabellenzellen und -zeilen haben Darstellungsbedingungen, die sind in aller Regel mit TRUE vorbelegt, aber man kann da auch Formeln reinschreiben, z.B. "Len(ATrim$(<meinfeldname>)) > 0". Das gilt auch für Einzeltexte.
darstellung.png
darstellung.png (94.77 KiB) 3877 mal betrachtet

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 8:47
von Diller
Hallo Tom,

vielen Dank für die schnelle Rückmeldung.

Habe es gerade versucht leider ohne Erfolg. Bin leider noch nicht so fit in List und Label :doubt:

Habe folgendes Probiert --> Len(ATrim$(Bezeichnung,"Serviceauftrag-Nr.:")) > 0

wenn Serviceauftrag-Nr.: Feld Bezeichnung vorkommt soll es auf dem Formular ausgeblendet werden.

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 8:51
von Martin Altmann
Dein Ausdruck liefert aber true zurück, wenn es vorkommt. Damit wird es angezeigt!
Du müsstest also Deine Formel wie folgt aufbauen:

Code: Alles auswählen

Len(ATrim$(Bezeichnung,"Serviceauftrag-Nr.:")) = 0 
Viele Grüße,
Martin

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 9:35
von Tom
Das war nur ein Beispiel für eine Formel (in diesem Fall: Zeige etwas nicht, wenn eine bestimmte Variable leer ist). Wenn die Zelle, Zeile oder sonstwas NICHT angezeigt werden soll, wenn Feld oder Variable "Bezeichnung" den fraglichen Text enthält, dann müsste die Formel lauten:

Code: Alles auswählen

Bezeichnung <> "Serviceauftrag-Nr.:"
Wenn die Stelle nicht angezeigt werden soll, wenn "Bezeichnung" diesen Text ENTHÄLT, dann wäre diese Formel für die Darstellungsbedingung richtig:

Code: Alles auswählen

NOT CONTAINS(Bezeichnung,"Serviceauftrag-Nr.:")
Einfach mal die verfügbaren Funktionen und Operatoren anschauen, L&L ist exzellent dokumentiert!

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 9:47
von HaPe
Hallo Diller !
ich habe ein Problem in List und Label. Ich möchte eine Zeile entfernen wenn bestimmter Inhalt vorkommt.
z.B. wenn "Serviceauftrag-Nr.:" vorkommt soll die Zeile nicht angezeigt werden.
Ich gehe bei meinen Berichten immer einen ganz anderen Weg:
Soll etwas nicht gedruckt werden, bereite ich die Daten für den Druck entsprechend auf:
- Ein kompletter Datensatz, der nicht zu drucken ist, kommt erst gar nicht in das ResultSet für den Ausdruck.
- Inhalte von Feldern, die nicht auszudrucken sind und nicht als Einzige in der Detail-Zeile sind, werden geleert.

Als Datenbankler ist die Aufbereitung der Daten einfacher als komplizierte Bedingungen im Bericht unterzubringen.
Meine Meinung ...

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 10:00
von Tom
Ich gehe bei meinen Berichten immer einen ganz anderen Weg:
Und wir gehen immer den gegenteiligen: Was irgendwer in Berichten oder Formularen möglicherweise verwenden will, bekommt das Formular auch an Daten (was ja noch nicht heißt, dass es im Formular sichtbar ist). Und L&L erlaubt auf jeder Ebene und bei jeder Art von Formularelement Darstellungsbedingungen (und Eigenschaften aller Art), die Formel verwenden. Wenn der eine Kunde das nicht will, können das die Formularleute im Formulare regeln, und wenn der andere Kunde das und das unbedingt haben will, ist es sowieso schon da.

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 10:30
von Tom
Das ist auch kein Entweder-Oder. Natürlich werden Datensätze, die nicht zu drucken wären, überhaupt nicht an ein Formular übermittelt, alles andere wäre auch kompletter Blödsinn. Aber hier geht es darum, dass ein bestimmter Kunde ein bestimmtes Element nicht will, das möglicherweise andere Kunden wollen - oder um ähnliche Fälle. Und da erlauben es u.a. die Darstellungsbedingungen in den Formularen, so etwas zu customizen, ohne am Programmcode herumpopeln zu müssen, der möglicherweise während der fraglichen Schulung auch überhaupt nicht dabei ist. Und man kann die individuelle Anpassung als Service verkaufen.

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 13:07
von Werner_Bayern
Servus Tom,

wie macht ihr das dann, wenn sich mal was wichtiges an einem Formular ändert? Z. B. soll ab sofort eine neue Spalte angezeigt werden, oder es war ein Fehler in einer Formel. Dann muss bei allen Kunden manuell Hand angelegt werden?

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 13:13
von Tom
@Werner_Bayern: Standardformulare (Formularordner) werden mit Updates automatisch aktualisiert, und es gibt einen zusätzlichen Formularordner für individuelle Anpassungen, dessen Inhalt Vorrang hat. Außerdem kann man jedes beliebige Standardformular über den Kundenzugang unserer Website herunterladen.

Aber solche Fehler passieren uns sowieso nicht. 8)

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 15:03
von Werner_Bayern
Also werden bei Standardformularen keine Anpassungen gemacht, bzw. ist von Euch gesperrt?

Ich denke da bei Euch z. B. an eins der unzähligen Dokumentations-Formulare. Das wollen doch sicherlich viele individuell angepasst haben. Dann gibt's irgendwann eine gesetzliche Änderung und es muss z. B. ein Satz geändert oder ein neues Feld mit eingefügt werden.

Das geht dann auch mit Master / Vererbung nicht wirklich elegant?

Re: Zeilen löschen, wenn Zeile bestimmten Inhalt hat

Verfasst: Fr, 29. Okt 2021 15:49
von Marcus Herz
Wenn sich ein Formular so essentiell ändert, wird es als eine neue Version geführt