FastReport Tipp Top-Position im Code
Aus GEVITAS
Version vom 23. Februar 2016, 23:34 Uhr von Gevitas (Diskussion | Beiträge)
Inhaltsverzeichnis
1 Allgemeines
In diesem Artikel wird ein beschrieben, wie man im Fuss eines Bestellung Felder nach oben schieben kann, wenn die "Zeile" darüber ausgeschaltet wurde.
2 Beispiel
In einem Report für eine Bestellung gibt es im Fuss rechts die Felder für die Netto-Summe, die Mehrwertsteuer-Zeilen und den Brutto-Betrag:
3 Die Vorgaben
Es soll folgendes passieren:
- Wenn es alle beiden Mehrwertsteuer-Beträge gibt, sollen alle "Zeilen" angezeigt werden (in Anführungszeichen, weil es ja keine Zeilen im Sinne eines Texteditors gibt).
- Wenn es nur die erste Mehrwertsteuer gibt, soll die zweite Zeile unterdrückt werden und die Brutto-Zeile nach oben "rutschen".
- Wenn es gar keine Mehrwertsteuer-Beträge gibt, sollen nur die Netto-Zeile angezeigt werden.
4 Der Code
Im Ereignis FussPositionen⇒OnBeforePrint
muss man dazu folgenden Code eingeben:
procedure FussPositionenOnBeforePrint(Sender: TfrxComponent); begin // Ohne Mwst. 2: Felder unterdrücken: if <BestellFuss."MwstBetrag2"> <= 0 then begin // Mwst 2 ist 0, also Zeile ausblenden: MemoFussMwstSatz2.Visible := False; MemoFussMwstBetrag2.Visible := False; // Die Brutto-Summenzeile dahin setzen, wo die Mwst2 steht: memoFussGesamtbetragText.Top := MemoFussMwstSatz2.Top; memoFussGesamtBetragBrutto.Top := MemoFussMwstSatz2.Top; end; // Wenn es GAR KEINE MWst. gibt: Brutto-Zeile ausblenden: if ( <BestellFuss."MwstBetrag1"> <= 0 ) and ( <BestellFuss."MwstBetrag2"> <= 0 ) then begin memoFussGesamtbetragText.Visible := False; memoFussGesamtBetragBrutto.Visible := False; end; end;