Megakalkulation: Unterschied zwischen den Versionen
(→Das Grundprinzip) |
|||
Zeile 44: | Zeile 44: | ||
Im Report müssen die Variablen angelegt werden mit '''Report''' ⇒ '''Variablen''' | Im Report müssen die Variablen angelegt werden mit '''Report''' ⇒ '''Variablen''' | ||
+ | == Der Report == | ||
+ | |||
+ | Dem Report wird die Tabelle "MegaKalk" mit den Auftrags- und Kalkulationsdaten übergeben. | ||
+ | |||
+ | Der Report gruppiert die Datensätze nach dem Bereichs-Kennzeichen MegaKalk.Abschnitt. | ||
+ | |||
+ | Die Textfelder für die Überschriften werden im Code gefüllt: | ||
+ | |||
+ | |||
+ | procedure GroupHeaderAbschnittOnBeforePrint(Sender: TfrxComponent); | ||
+ | begin | ||
+ | if ( <MegaKalk."Abschnitt"> = 1 ) then | ||
+ | memoAbschnittCaption.Text := 'Angebote Miete'; | ||
+ | |||
+ | if ( <MegaKalk."Abschnitt"> = 2 ) then | ||
+ | memoAbschnittCaption.Text := 'Aufträge Miete'; // ' oder Aktive Aufträge Miete oder Abgeschlossene Aufträge Miete'; | ||
+ | |||
+ | if ( <MegaKalk."Abschnitt"> = 3 ) then | ||
+ | memoAbschnittCaption.Text := 'Angebote Verkauf/Mietverkauf'; | ||
+ | |||
+ | if ( <MegaKalk."Abschnitt"> = 4 ) then | ||
+ | memoAbschnittCaption.Text := 'Aufträge Verkauf/Mietverkauf'; | ||
+ | |||
+ | if ( <MegaKalk."Abschnitt"> = 5 ) then | ||
+ | memoAbschnittCaption.Text := 'Aktive Aufträge Verkauf/Mietverkauf'; | ||
+ | |||
+ | if ( <MegaKalk."Abschnitt"> = 6 ) then | ||
+ | memoAbschnittCaption.Text := 'Abgeschlossene Aufträge Verkauf/Mietverkauf'; | ||
+ | memoAbschnittCaption2.Text := 'Summe ' + trim(memoAbschnittCaption.Text) + ':'; | ||
+ | end; | ||
+ | |||
== Links == | == Links == | ||
* '''[[FastReport: Anlegen und verwenden von Variablen im Report]]''' | * '''[[FastReport: Anlegen und verwenden von Variablen im Report]]''' |
Version vom 20. Januar 2023, 14:26 Uhr
Inhaltsverzeichnis
1 Allgemeines
Die Megakalkulation ist ein optionales Modul zur Kalkulation von Aufträgen, um sowohl ein Vorausschau als auch einen Rückblick über die finanzielle Bewertung der Aufträge zu erhalten.
2 Das Grundprinzip
- Die Megakalkulation erzeugt eine Liste von REFLEX-Aufträgen anhand der eingegebenen Filter (Zeitraum, Bereiche usw.). In der Liste sind Auftragsdaten, Kalkulationsdaten und ein Bereichskennzeichen "Abschnitt" (s.u.) enthalten.
- Danach werden die betreffenden Aufträge neu durchkalkuliert (wenn man die Option "✅ Aufträge neu megakalkulieren" eingeschaltet hat).
- Anschließend wird der ausgewählte Report gestartet.
- Bereiche
- 1 = Angebote Miete
- 2 = Aufträge Miete oder Aktive Aufträge Miete oder Abgeschlossene Aufträge Miete
- 3 = Angebote Verkauf/Mietverkauf
- 4 = Aufträge Verkauf/Mietverkauf
- 5 = Aktive Aufträge Verkauf/Mietverkauf
- 6 = Abgeschlossene Aufträge Verkauf/Mietverkauf
- Dispo-Aufträge
- Aufträge mit dem Kennzeichen DispoAuftrag werden nicht aufgeführt!
- (MAufKo.DispoAuftrag=1)
- Textaufträge
- Auftragsnummern, die mit 999 beginnen werden nicht aufgeführt!
3 Starten
Aus REFLEX heraus über das Menü "Info, Drucken" ⇒ "Megakalkulation".
4 Prozente für Untergrenzen
Hier im Bereich Untergrenzen in %: kann man Prozente angeben, ab denen die entsprechenden Felder im Report farbig markiert werden sollen. Dort müssen entsprechende Variablen angelegt und abgefragt werden. Außerdem müssen im Report entsprechend Code-Zeilen angegeben werden, die die Variablen abfragen und die Felder entsprechend farbig einstellen.
Variablen:
- UntergrenzeDBSoll
- UntergrenzeDBIst1
- UntergrenzeDBIst2
Im Report müssen die Variablen angelegt werden mit Report ⇒ Variablen
5 Der Report
Dem Report wird die Tabelle "MegaKalk" mit den Auftrags- und Kalkulationsdaten übergeben.
Der Report gruppiert die Datensätze nach dem Bereichs-Kennzeichen MegaKalk.Abschnitt.
Die Textfelder für die Überschriften werden im Code gefüllt:
procedure GroupHeaderAbschnittOnBeforePrint(Sender: TfrxComponent); begin if ( <MegaKalk."Abschnitt"> = 1 ) then memoAbschnittCaption.Text := 'Angebote Miete'; if ( <MegaKalk."Abschnitt"> = 2 ) then memoAbschnittCaption.Text := 'Aufträge Miete'; // ' oder Aktive Aufträge Miete oder Abgeschlossene Aufträge Miete'; if ( <MegaKalk."Abschnitt"> = 3 ) then memoAbschnittCaption.Text := 'Angebote Verkauf/Mietverkauf'; if ( <MegaKalk."Abschnitt"> = 4 ) then memoAbschnittCaption.Text := 'Aufträge Verkauf/Mietverkauf'; if ( <MegaKalk."Abschnitt"> = 5 ) then memoAbschnittCaption.Text := 'Aktive Aufträge Verkauf/Mietverkauf'; if ( <MegaKalk."Abschnitt"> = 6 ) then memoAbschnittCaption.Text := 'Abgeschlossene Aufträge Verkauf/Mietverkauf'; memoAbschnittCaption2.Text := 'Summe ' + trim(memoAbschnittCaption.Text) + ':';
end;