REFLEX Standard-Report Mahnung

Aus GEVITAS
Wechseln zu: Navigation, Suche

1 Allgemeines

Der Report "Mahnung_Zusammengefasst_Nach_Kunde_Standard_Vxx.fr3" wird für den Druck einer Mahnung verwendet.


1.1 Verzeichnis, Basis-Report

Der Report befindet sich im Formular-Verzeichnis "Mahnung".

Der Report verwendet als Basis für den Kopf- und Fuss-Bereich den Basis-Report "BasisReport_01.fr3". Dieser muss im Verzeichnis "Formular" liegen.


2 Vorschau

In der Vorschau sieht das Formular so aus:

Mahnung Standard Vorschau 01.png


3 Eingabe, Optionen

In REFLEX wird diese Eingabemaske angezeigt:

Mahnung Standard 05 ReflexEingabemaske.png


Hier können Sie z.B. angeben, welche Mahngebühr ab welcher Mahnstufe berechnet werden soll.

4 Mahntexte

Die Texte im Kopf und im Fuss werden über REFLEX festgelegt!

Gehen dazu im Menü auf

Datei
⇒Faktura
⇒Drucken Mahnungen
⇒Button Mahntexte (F9)

Geben Sie hier die Mahntexte für die Mahnstufen an.



5 Bereiche

5.1 Kopf

Dieser Teil hat folgende Bereiche:

Mahnung Standard 02 Kopf.png

Der PageHeader wird vom Basis-Report geerbt.In ihm befindet sich die Kunden-Anschrift.

Im MasterDataKopf steht der Titel der Mahnung. Im Ereignis OnBeforePrint wird folgender Code angegeben:


procedure MasterDataKopfOnBeforePrint(Sender: TfrxComponent);
begin
  // Den Text des Titels festlegen:
  // Im Titel die Mahnstufe unterzubringen ("n. Mahnung") macht keinen Sinn,
  // weil in einer Mahnung unterschiedliche Mahnstufen enthalten sein können.
  // Das Programm sucht die Mahnstufe nach der höchsten vorkommenden Stufe dieser Mahnung aus!
  if <Mahnungstexte."Mahnstufe"> = 1 then
  begin
    if <Mahnungstexte."Sprache"> = 'E' then
    begin
      MemoTitel.Text := 'Reminder';
    end;
    if <Mahnungstexte."Sprache"> = 'F' then
    begin
      MemoTitel.Text := 'Rappel de Paiement';
    end;
    if <Mahnungstexte."Sprache"> = 'D' then
    begin
      MemoTitel.Text := 'Zahlungserinnerung';
    end;
  end
  else
  begin
    if <Mahnungstexte."Sprache"> = 'E' then
    begin
      MemoTitel.Text := 'Payment Reminder';
    end;
    if <Mahnungstexte."Sprache"> = 'F' then
    begin
      MemoTitel.Text := 'Rappel de Paiement';
    end;
    if <Mahnungstexte."Sprache"> = 'E' then
    begin
      MemoTitel.Text := 'Mahnung';
    end;
  end; 

  // Überschriften:
  // (Bitte Leertasten einfügen, damit die Überschrift umbrechen kann!)
  if <Mahnungstexte."Sprache"> = 'E' then
  begin
    MemoTitleRechNr.Text := 'Invoice Number';
    MemoTitleBetreff.Text := 'Subject';
    MemoTitleRechDat.Text := 'Invoice Date';
    MemoTitleMahnDat.Text := 'Reminder Date';
    MemoTitleMahnstufe.Text := 'Reminder level';
    MemoTitleBetrag.Text := 'Amount';
  end;
  if <Mahnungstexte."Sprache"> = 'F' then
  begin
    MemoTitleRechNr.Text := 'Numéro de facture';
    MemoTitleBetreff.Text := 'Subject';
    MemoTitleRechDat.Text := 'Invoice Date';
    MemoTitleMahnDat.Text := 'Reminder Date';
    MemoTitleMahnstufe.Text := 'Reminder level';
    MemoTitleBetrag.Text := 'Amount';
  end;
  if <Mahnungstexte."Sprache"> = 'D' then
  begin
    MemoTitleRechNr.Text := 'Rechn.Nr.';
    MemoTitleBetreff.Text := 'Betreff';
    MemoTitleRechDat.Text := 'Rechn. Datum';
    MemoTitleMahnDat.Text := 'Gemahnt am';
    MemoTitleMahnstufe.Text := 'Mahnstufe';
    MemoTitleBetrag.Text := 'Betrag';
  end; 

  if <MahngebuehrSumme> = 0 then        // Variable, wird vom Programm gefüllt, Name deshalb festgelegt!
    MemoTitleMahngebuehr.Visible := False;

end;

Die Variable <MahngebuehrSumme> ist in dem Report enthalten und wird vom Programm mit der Summe der Mahngebühr gefüllt, wenn der Report ausgeführt wird. Damit kann man so wie hier die Überschrift für die Mahngebühr ausblenden, wenn es keine gibt.

Hinweis
Wenn Sie einen eigenen Report für die Mahnungen erstellen, müssen Sie eine Variable mit dem Namen MahngebuehrSumme anlegen. Klicken Sie dazu im Report auf Report&rArr:Variablen. Dort erstellen Sie eine neue Kategorie (z.B. MeineVariablen) und darin eine neue Variable MahngebuehrSumme. Als Ausdruck für die Variable tragen Sie 0 ein.



5.2 Positionen

In den Positionen stehen im Band DetailDataRechnungen die Rechnungen, die anzumahnen sind. Diese Daten stellt das Programm zur Verfügung.


Mahnung Standard 03 Positionen.png


Der Code dazu:

procedure DetailDataRechnungenOnBeforePrint(Sender: TfrxComponent);
begin
  // Mahngebühren ausschalten, wenn 0:
  if ( <Mahnungen."Mahngebühr"> = 0 )          // Diese Zeile
  or ( <MahngebuehrSumme> = 0 ) then           // Variable, wird vom Programm gefüllt, Name deshalb festgelegt!
    MemoPosMahngebuehr.Visible := False
  else
    MemoPosMahngebuehr.Visible := True;
end;



5.3 Fuss

Im Fuss stehen im Band FooterSummen die Summen der Mahnung.


Mahnung Standard 04 Fuss.png


Auch hier gibt es einen kleinen Code-Bereich:

procedure FooterSummenOnBeforePrint(Sender: TfrxComponent);
begin
  // Wenn es keine Mahngebühren gibt: Felder ausschalten!
  if ( SUM(<Mahnungen."Mahngebühr">,DetailDataRechnungen,1) = 0 ) then
  begin
    MemoFussMahngebührenTitel.Visible := False;
    MemoFussMahngebührenBetrag.Visible := False;
    MemoFussFaelligTitel.Visible := False;
    MemoFussFaelligBetrag.Visible := False;
  end
  else
  begin
    MemoFussMahngebührenTitel.Visible := True;
    MemoFussMahngebührenBetrag.Visible := True;
    MemoFussFaelligTitel.Visible := True;
    MemoFussFaelligBetrag.Visible := True;
  end;
end;

6 Updates

Version Datum Beschreibung
V02 05.01.2016 Variable <MahngebuehrSumme> zum Unterdrücken der Spalte bei 0 Mahngebühren.

7 Standard-Reports

8 Links