FastReport Tipp Top-Position im Code
Aus GEVITAS
Version vom 24. Februar 2016, 00: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;

