+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

Problem mit Gruppenfuß und Gruppenwechsel


(Guest) #1

Hallo,

In Verwendung: List&Label 15, letztes ServicePack vom Oktober 2010:

Ich habe ein Problem bei der Gruppenfußdarstellung. Es gibt zwei Gruppierungsfelder. Oberste Gruppierung ist ein Feld namens Produkt. Darunter gibt es ein zweites Gruppierungsfeld namens Konto. Unter jedem Konto gibt es 1 bis x Datenzeilen. Nach dem Gruppenwechsel von Produkt und Konto soll eine Fußzeile dargestellt werden, aber nur dann, wenn mindestens zwei Datenzeilen nach dem Konto erschienen sind. In diesem Gruppenfuß sollen Summen von Beträgen aus den Datenzeilen dargestellt werden. Hierfür habe ich eigene Summenvariablen angelegt, die nach dem Gruppenwechsel von Produkt und Konto zurückgesetzt werden sollen.

  1. Versuch: Eine Zählvariable (Summenvariable) habe ich erzeugt, die nach jeder Datenzeile 1 aufzählt. Nach dem Gruppenwechsel Produkt und Konto wird die Zählvariable zurückgesetzt. In der Darstellungsbedingung des Gruppenfußes frage ich die Zählvariable ab: ist sie größer als 1, stelle den Gruppenfuß dar, ansonsten nicht. Das Problem ist, wenn der Gruppenfuß nicht dargestellt wird, wird auch der Gruppenwechsel nicht vollzogen, die Zählvariable und die Summenvariablen werden nicht zurückgesetzt. Spätestens nach dem nächsten Gruppenwechsel erscheint eine Gruppenfußzeile, weil die Zählvariable dann >=2 ist, auch wenn dort nach dem Konto auch nur eine Datenzeile dargestellt wird!
  2. Versuch: Im Gruppenfuß frage ich in der Darstellungsbedingung mit Previous(Konto) das Konto des letzten Datensatzes nach: if(Previous (Konto) = Konto,True,False). Das bedeutet, war das Konto des letzten Datensatzes gleich dem Konto des aktuellen Datensatzes, gibt es mehr als ein Datensatz unter dem Konto, also stelle den Gruppenfuß dar. Resultat: Nach jedem Gruppenwechsel wird ein Gruppenfuß dargestellt, egal, ob ein oder mehrere Datenzeile unter dem Konto vorhanden sind -> Previous(…) funktioniert nicht!
  3. Versuch: Wie 2. Versuch, aber anstatt Previous(…) verwende ich PreviousUsed(…). Jetzt erscheint tatsächlich ein Gruppenfuß nur dann, wenn mehr als ein Datensatz unter dem Konto vorhanden ist. Jedoch: Der Inhalt der Summenvariablen ist falsch. Hier gilt wie in Versuch 1: Wird ein Gruppenwechsel in der Darstellungsbedingung unterdrückt, wird er auch intern nicht vollzogen, d.h. die Summenvariablen werden nicht zurückgesetzt.

HILFE !!!

Viele Grüße,
Dirk Blumenauer


(Guest) #2

Zur Ergänzung:

Anstatt den Summenvariablen die Funktion Sum(…,TRUE) in der Gruppenfußzeile zu verwenden, bringt nicht den gewünschten Erfolg. Auch hier gilt scheinbar, wenn die Gruppenfußzeile aufgrund der Darstellungsbedingung nicht angezeigt wird, werden auch die Werte nicht zurückgesetzt!

Weiterhin habe ich probiert, die Spaltenbreiten auf 0.0 zusetzen, wenn die Zeile nicht dargestellt werden soll. Das Problem bleibt auch dann bestehen!

Viele Grüße,
Dirk Blumenauer


(Guest) #3

Ich denke, hier kommst Du ohne tricksen nicht aus. Ich würde einen zweiten Gruppenfuss anlegen und in den ein unlöschbares Leerzeichen platzieren (chr$(160)). Die Darstellungsbedingung ist invers zu der des eigentlichen Gruppenfusses, gib der Zeile eine feste Höhe (z.B. 1 mm) und evtl. einen negativen unteren Rand (wobei das dann vielleicht auch wieder als “nix gedruckt” interpretiert werden könnte, das musst Du mal testen). Ausserdem natürlich die Summenvariable zurücksetzen. Im Effekt hast Du schlimmstenfalls einen mm Platz, vielleicht geht ja auch ein zehntel/hundertstel mm, denke, so müsstest Du hinkommen.

G.


(Guest) #4

Hallo Günther,

vielen Dank für Deine Antwort.
Mit dem nicht druckbaren Zeichen ist eine gute Idee. Ich werde es ausprobieren.

Da die Zeit drängte, musste ich mir anderes helfen. Wenn die Gruppenfußzeile nicht gedruckt werden soll, setze ich die Schriftfarbe auf weiß. Weiße Schrift auf weißem Papier sieht man nicht. Der Absatz, der bleibt, ist hinnehmbar.

Viele Grüße,

Dirk Blumenauer


(Guest) #5

Und was machst Du, wenn der Kunde farbiges Papier nimmt??? :wink:

[just joking]

Paulchen


(Guest) #6

Unsere Kunden haben nur Laserdrucker. Weiß bedeutet , keinen Toner.

Nein, im Ernst: ich werde das mit dem nicht druckbaren Zeichen chr$(160) im Gruppenfuß ausprobieren.

Viele Grüße,

Dirk Blumenauer


(Guest) #7

Hallo Dirk,

und was ist, wenn du die Summenvariablen im Gruppenkopf zurücksetzt? Der Gruppenkopf wird ja auch bei jedem Wechsel der Bedingung ausgeführt.

Falls du keinen Kopf ausgeben willst, kannst du stattdessen ja auch eine leere Zeile erzeugen. Einen Versuch sollte es wert sein.

Viele Grüße
Hans-Peter