Megakalkulation: Unterschied zwischen den Versionen
(→Aufteilung der Umsätze, Erlöse und Kosten) |
(→Aufteilung der Umsätze, Erlöse und Kosten) |
||
| Zeile 31: | Zeile 31: | ||
;Material Miete | ;Material Miete | ||
| − | ;Material Kauf | + | ;Material Kauf (Verkauf) |
;Dienstleistungen/Transport | ;Dienstleistungen/Transport | ||
;Arbeitszeit/Personal | ;Arbeitszeit/Personal | ||
| Zeile 41: | Zeile 41: | ||
[[Datei:StammdatenKostenarten.png]] | [[Datei:StammdatenKostenarten.png]] | ||
| + | |||
| + | == Spalten der Kalkulation == | ||
| + | |||
| + | === Umsatz === | ||
| + | |||
| + | Umsatz aus den Auftragspositionen, aufgeteilt nach den Kostenarten. | ||
| + | |||
| + | |||
| + | === SOLL === | ||
| + | |||
| + | Soll-Kosten aus den Selbstkosten aus den Auftragspositionen. | ||
| + | |||
| + | |||
| + | === IST 1 === | ||
| + | |||
| + | Ist-Kosten aus den Bestellungen. | ||
| + | |||
| + | |||
| + | === IST 2 === | ||
| + | |||
| + | Ist-Kosten aus den Eingangsrechnungen. Wenn noch keine Eingangsrechnungen vorhanden sind, werden die Bestellungen verwendet. | ||
== Starten == | == Starten == | ||
Version vom 29. Februar 2024, 13:37 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 Aufteilung der Umsätze, Erlöse und Kosten
Umsätze, Erlöse und Kosten sind in diese Bereiche aufgeteilt:
- Material Miete
- Material Kauf (Verkauf)
- Dienstleistungen/Transport
- Arbeitszeit/Personal
- Sonstiges
Die Zuordnung der Zahlen erfolgt über die Kostenarten, die in den Stammdaten der Kostenarten angelegt werden. Bei jeder Kostenart kann an den Bereich festlegen.
Beispiel:
4 Spalten der Kalkulation
4.1 Umsatz
Umsatz aus den Auftragspositionen, aufgeteilt nach den Kostenarten.
4.2 SOLL
Soll-Kosten aus den Selbstkosten aus den Auftragspositionen.
4.3 IST 1
Ist-Kosten aus den Bestellungen.
4.4 IST 2
Ist-Kosten aus den Eingangsrechnungen. Wenn noch keine Eingangsrechnungen vorhanden sind, werden die Bestellungen verwendet.
5 Starten
Aus REFLEX heraus über das Menü "Info, Drucken" ⇒ "Megakalkulation".
6 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
7 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;
Die Felder werden teilweise farbig markiert, z.B. so:
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
// Default:
memoRohDBSollProz.Font.Color := clBlack;
memoRohDBSollBetrag.Font.Color := clBlack;
// DB-Prozent über 100 markieren:
if <MegaKalk."DBSollSumme"> > 100 then
begin
memoRohDBSollProz.Color := clRed;
memoRohDBSollBetrag.Color := clRed;
memoRohDBSollProz.Font.Color := clWhite;
memoRohDBSollBetrag.Font.Color := clWhite;
end
else
// Gelb, wenn über der angegebenen Prozentgrenze:
if <MegaKalk."DBSollSumme"> < <UntergrenzeDBSoll> then
begin
memoRohDBSollProz.Color := clYellow;
memoRohDBSollBetrag.Color := clYellow;
end
else
begin
memoRohDBSollProz.Color := $00FFECEC; // hellblau statt clNone
memoRohDBSollBetrag.Color := $00FFECEC;
end;
if <MegaKalk."DBIst1Summe"> < <UntergrenzeDBIst1> then
begin
memoDBIst1Proz.Color := clYellow;
memoDBIst1Betrag.Color := clYellow;
end
else
begin
memoDBIst1Proz.Color := clNone;
memoDBIst1Betrag.Color := clNone;
end;
if <MegaKalk."DBIst2Summe"> < <UntergrenzeDBIst2> then
begin
memoDBIst2Proz.Color := clYellow;
memoDBIst2Betrag.Color := clYellow;
end
else
begin
memoDBIst2Proz.Color := $00B0FDBA;
memoDBIst2Betrag.Color := $00B0FDBA;
end;
end;
Es wird hier das Prozent- und Betragsfeld markiert.
