unter der Verwendung von “Exists” und “GetValue” ist das möglich. Die Umsetzung erfordert jedoch eine geschickte Handhabung der Bedingungen, beispielsweise für die gleichmäßige Verteilung der Spaltenbreiten. Obwohl die Umsetzung herausfordernd sein kann, ist dies dennoch möglich.
Falls die Datenquelle hingegen direkt im Code generiert wird, wäre es wahrscheinlich einfacher sicherzustellen, dass die Spaltenbreite konstant bleibt und die Daten bei Bedarf mit NULL aufgefüllt werden. Dennoch ist List & Label in der Lage, mit beiden Ansätzen umzugehen.
Eine andere Möglichkeit wäre hier per DOM die Tabelle zu gestalten und mit den Spalten und Eigenschaften zu füllen, oder du zählst vorher die Spalten und übergibst eine Variable welche die Anzahl der Spalten enthält, dann verwendest du für die Breite der Spalten die Funktion TableWidth() / AnzahlSpalten (dann hat jede Spalte die gleiche Größe), für den Inhalt kannst ja das was Martin geschrieben hat (Exist und GetValue) verwenden.
Ich habe nun abklären können, dass es nun konstant 10 Spalten gibt. Allerdings diese dann dynamisch gefüllt und der Rest soll dann lediglich ausgeblendet werden.
Kann ich anhand der Anzahl der Datensätze in der Liste die übrigen Spalten ausblenden lassen?
Hi, also wie schon vorher geschrieben (vom Martin) könntest du z.B. mittels Exists in der Darstellungsedingung der jeweiligen Spalte das Feld abfragen, ob es existiert, ob es ein Value gibt usw. usw. dann wird es angezeigt oder eben nicht, die Spaltenbreiten würde ich mittels einer Variable und TableWidth() / Variable lösen, also die Variable welche die Spaltenanzahl beinhaltet, du weißt ja zum Zeitpunkt der Anmeldung was du für Daten hast.
Aber die beste und empfohlene Lösung ist es per DOM zu lösen.
Zum Designen kannst alle Spalten einfügen und vor dem Druck / Export öffnest das Projekt im DOM und entfernst die nicht benötigten Spalten und setzt die Breiten TEMPORÄR und fertig.
Verwende z.B. das AutoDefineNewPage Event und hol dir das gerade geladene Projekt mittels → GetFromParent Methode