Belege: Unterschied zwischen den Versionen
Zeile 195: | Zeile 195: | ||
IF GESAMT_ANZAHL="0" THEN "FERTIG" | IF GESAMT_ANZAHL="0" THEN "FERTIG" | ||
LET SIEBKJOS_ANZAHL = SQL("select SUM(POSTEN.MENGE) from POSTEN join ARTIKEL on (POSTEN.ARTIKEL_R=ARTIKEL.RID) and (ARTIKEL.VERLAG_R in (142,457,495,2595988)) where (POSTEN.BELEG_R=" & BELEG_R & ")") | LET SIEBKJOS_ANZAHL = SQL("select SUM(POSTEN.MENGE) from POSTEN join ARTIKEL on (POSTEN.ARTIKEL_R=ARTIKEL.RID) and (ARTIKEL.VERLAG_R in (142,457,495,2595988)) where (POSTEN.BELEG_R=" & BELEG_R & ")") | ||
PRINT "Gesamt : " & GESAMT_ANZAHL | PRINT "Gesamt : " & GESAMT_ANZAHL | ||
PRINT "SIEBKJOS : " & SIEBKJOS_ANZAHL | PRINT "SIEBKJOS : " & SIEBKJOS_ANZAHL | ||
LET PERCENT = VAL((SIEBKJOS_ANZAHL / GESAMT_ANZAHL) * "100","2","1") | LET PERCENT = VAL((SIEBKJOS_ANZAHL / GESAMT_ANZAHL) * "100","2","1") | ||
PRINT "Percent : " & PERCENT & "%" | PRINT "Percent : " & PERCENT & "%" | ||
Version vom 27. September 2022, 14:03 Uhr
Weitere Themen
Definition
Belege sind auftragsbezogene Dokumente, die sich an den Kunden richten.
Unterteilung
Angebote In Vorbereitung eines Auftrages.
Verträge Vorlagen zur Autoerzeugung von Rechnungsbelegen aus den Vertragsdaten heraus. Verträge werden dann gepflegt, sobald eine mehrfache Rechnungsstellung erwartet wird.
Packlisten Dienen dem Kommisionierer als Hinweisliste für Lagerplätze und richtliste.
Lieferscheine Als Beilage zur aktuellen Lieferung beschreiben sie den Umfang der aktuellen Lieferung.
Rechnungen Formulierung von Leistungen und Stellung von Forderungen an den Kunden.
Garantielisten Ein Garantiebeleg enthält alle relevanten Daten, die für einen eventuellen spätere Garantieabwicklung notwendig sind
Der Begriff 'Beleg' wurde als Überbegriff gewählt, um zu verdeutlichen, dass es sich um eine Zusammenstellung von mehreren Belegposten zu einem Belegdokument handelt.
Belegkopf Eingenschaften
STATUS
Rechnungsbelege
STATUS 1fabrg ^^^^^ ││││└Geliefert │││└Rechnung ││└Bestellt │└Agent └Fehler
Oderbelege
STATUS 1fuzeg ^^^^^ ││││└Geliefert │││└Erwartet ││└Zurück │└unbestellt └Fehler
TYP
* normale Versandartikel Logik verwenden. p (kleines P) bedeutet "portofrei" in allen Teillieferungen. Es wird gar keine Versandregel angewendet. P (grosses P) bedeutet "Porto erzwingen" in allen Teillieferungen
GN
GENERATION ist ein Zähler der sich bei Relevanten Änderungen aus Kundensicht ändert. Relevante Änderungen sind die, die den Auftrag verändern so dass ein erneuter Ausdruck notwendig wird. So zum Beispiel MENGEN Änderungen, PREIS Änderung, Änderungen in den ZUTATEN
Vorlage-Präfix
- Internes Datenbank-Feld
VORLAGE_PREFIX
- die Wahl des Namens der HTML-Vorlage bei der Beleg-Ausbelichtung kann umfassend gesteuert werden
- Zwingend kann man hier einen vorangestellten Namens-Vorspann speichern, z.B. "Alt"
- danach wird die HTML-Vorlage "AltRechnung.html" gesucht, anstelle von "Rechnung.html"
- Des weiteren gelten die Einstellungen in der Spalte STA ...
STA
- internes Datenbankfeld
BSTATUS
- beinflusst die Wahl der Druckvorlage, die zum Ausbelichten verwendet wird
- beinflusst das Verbuchen (Briefumschlag)
- entweder wird das Ausbelichtete Dokument nur dauerhaft umbenannt uns wegkopiert (z.B. bei "Z")
- oder es wird eine echte Verbuchung des Beleges durchgeführt
STA Bedeutung Vorlage * default, normale Rechnung "Rechnung3spaltig_n.html" wenn nicht vorhanden "Rechnung.html" A Angebot "Angebot.html" G Garantiebeleg "Garantie.html" Z Zeiterfassungsbeleg (ohne Ausgangsrechnungsbuchung) "Zeitabrechnung.html" V Vertrag wie default [x] als Lieferschein "Lieferschein.html"
TLL
<leer> in Teillieferungen 3 an den 3 angegebenen (Wunsch) Terminen Z Alles zusammen in einer Lieferung sobald alles da.
N
- N Netto JA/NEIN Feld
bei Rechnungen in der Regel angekreuzt. Diese Einstellung wird bei der Neuanlage eines Beleges aus dem Systemparameter EinzelpreisNetto übernommen. Sieht auch dortige Erklärung.
In Der Buchführung ergibt sich aus der MwSt Problematik ein Rundungsproblem, da hier besprochen wird.
Belege wählen sich über die Person, an die sie gerichtet ist, den Nummernkreis. Siehe dazu Stempel.
INTERN_INFO
- Druckauftrag=JA|NEIN: bewirkt eine Kopie des html Beleges in das Spool-Verzeichnis "Druckauftrag"
- verbuchen=JA|NEIN: bewirkt sofortiges verbuchen beim Kopieren!
- label=JA|NEIN: bewirkt eine "JA" für den Paket-Kleber Aufdruck!
Spalteneinstellungen
Spalten Speicherungs Symbol Taste
Jedes Mal, wenn Sie an den Spalteneinstellungen etwas geändert haben müssen Sie diese Taste oberhalb der Tabelle drüchen. Sie symbolisiert eine Spaltengrenze mit 2 Pfeilen.
| <-|-> |
Spaltenbreiten
Sie könnenn bei der Beleg-Tabelle, sowie bei der Postentabelle die Breite der Spalten anpassen. Bewegen Sie dazu die Maus auf die Tabellenüberschriften. Zielt man genau auf die Grenzen zwischen 2 Spalten verändert sich der Mauszeiger, und man kann durch gedrückthalten der linken Maustaste die Grenze verschieben.
Spalten unterdrücken
Spalten, die für Sie völlig unterinteressant sind schieben Sie auf nur wenige Pixel zusammen. Bei Speichern wird die Spalte dann entfernt.
Spalten wiederherstellen
Rechter Mausklick auf die "Spalten Speicherungs Symbol Taste".
- Art
A (grosses A) bedeutet der Belege ist ein ANGEBOT G (grosses G) bedeutet der Belege ist ein GARANTIERBELEG
Postenblock
linker Mausklick auf die "rote" Belegsumme liefert mehr Berechnungs-Infos.
"Texte"-Reiter ist dunkelblau sobald hier Text enthalten sind
Mengenlogik
-negative Rechnungsmengen vermindern die Auftragsmenge
-positive Rechnungsmengen erhöht die Rechnungsmenge
spezielle Aufgaben
Bei jeder Belegberechnung kann eine freie Programmierung für besondere Aufgaben verwendet werden. Dazu wird das in den OrgaMon integrierte D - BASIC verwendet. Im Verzeichnis D-BASIC des OrgaMon Ordners können entsprechende Programme in Form von .txt Dateien angelegt werden.
BerechneBeleg-1.txt
Im Beispiel wird eine Artikel-Zugabe zum Beleg hinzugebucht wenn der Kunde diese nicht bereits erhalten hat.
LET ZUGABE_ARTIKEL_R="164312" LET ZUGABE_TEXT = "Susi Polka - Musikstück" LET COUNT = SQL("select COUNT(BELEG.RID) from BELEG join POSTEN on (POSTEN.ARTIKEL_R=" & ZUGABE_ARTIKEL_R & ") and (POSTEN.BELEG_R=BELEG.RID) where BELEG.PERSON_R=" & PERSON_R) IF COUNT>"0" THEN "ENDE" PRINT SQL("insert into POSTEN (RID,POSNO,BELEG_R,MENGE,ARTIKEL_R,PREIS,ARTIKEL,ZUTAT) VALUES (0,1," & BELEG_R & ",1," & ZUGABE_ARTIKEL_R & ",0,'" & ZUGABE_TEXT & "','Y')") "ENDE"
BelegStatusBuchen-1.txt
Im Beispiel wird der Beleg-Prefix gesetzt, abhängig davon ob mehr als 45% Umsatz des Beleges aus einem gewissen Sortiment stammen. Ein anderer Prefix ermöglicht es ganz andere HTML-Vorlagen zu verwenden für die Ausbelichtung des Beleges.
PRINT "BelegStatusBuchen-1-Version 16.03.2018" LET PREFIX=SQL("select VORLAGE_PREFIX from BELEG where RID=" & BELEG_R) PRINT "Aktueller Prefix : '" & PREFIX & "'" IF PREFIX="" THEN "DO_JOB" IF PREFIX="SIEBKJOS" THEN "DO_JOB" PRINT "Respektiere alternativen Prefix!" GOTO "FERTIG" "DO_JOB" IF PERSON_R="289" THEN "DO_SIEBKJOS" LET GESAMT_ANZAHL = SQL("select SUM(POSTEN.MENGE) from POSTEN where (BELEG_R=" & BELEG_R & ") and ((ZUTAT<>'Y') or (ZUTAT is null))") LET GESAMT_ANZAHL = VAL(GESAMT_ANZAHL,"0","0") IF GESAMT_ANZAHL="0" THEN "FERTIG" LET SIEBKJOS_ANZAHL = SQL("select SUM(POSTEN.MENGE) from POSTEN join ARTIKEL on (POSTEN.ARTIKEL_R=ARTIKEL.RID) and (ARTIKEL.VERLAG_R in (142,457,495,2595988)) where (POSTEN.BELEG_R=" & BELEG_R & ")") PRINT "Gesamt : " & GESAMT_ANZAHL PRINT "SIEBKJOS : " & SIEBKJOS_ANZAHL LET PERCENT = VAL((SIEBKJOS_ANZAHL / GESAMT_ANZAHL) * "100","2","1") PRINT "Percent : " & PERCENT & "%" IF PERCENT="45,0" THEN "DO_HEBU" IF PERCENT<"45,0" THEN "DO_HEBU" "DO_SIEBKJOS" PRINT "DO_SIEBKJOS" IF PREFIX="SIEBKJOS" THEN "FERTIG" PRINT "Trage 'SIEBKJOS' ein" PRINT SQL("update BELEG set VORLAGE_PREFIX='SIEBKJOS' where RID=" & BELEG_R) GOTO "FERTIG" "DO_HEBU" PRINT "DO_HEBU" IF PREFIX="" THEN "FERTIG" PRINT "Lösche 'SIEBKJOS' raus" PRINT SQL("update BELEG set VORLAGE_PREFIX=null where RID=" & BELEG_R) "FERTIG" PRINT "ENDE" END
Storno
- Rechnungsstorno: In "Z" die Forderung löschen. Den "Rechnungsbetrag" des Beleges um den in "Z" gelöschten Betrag vermindern.
Verbuchte Rechnung rückabwickeln
- (Arbeitszeit) Alle Arbeitszeiten wieder in den Zustand "Nicht abgerechent" setzen.
Budget->Reiter "Arbeitszeit Belege"->bei "abgerechnetes in den Belegen" die Belegnummer eintragen.
In der Spalte Beleg steht eingeklammert die RIDs der einzelnen Zeiteinträge. Bei all diesen RIDs muss die Spalte BELEG_R gelöscht werden; dies erfolgt im Programmpunkt "Zeiterfassung". - (Rechnungsbeleg) Vor Löschung, wenn gewünscht den Beleg mit der Kopie-Funktion in eine Neuanlage kopieren. Beleg nun mit "-" löschen.
- (Forderungen löschen) Durch die Beleglöschung werden die dazugehörigen Forderungen nicht ausgeglichen. Dies muss manuell storniert oder gelöscht werden. Durch "Z" beim Kunden. Danach auf den grünen Stern bei "Beleg" um ALLE Beleg anzuzeigen (danach auf Start). Der entsprechenden Forderung wurde bereits durch die Beleglöschung die Belegnummer entzogen. Die entsprechende Forderung mit "-" löschen.