OBS/Makros und Scripting/Allgemeines/Klassen/Vorgänge
Es gibt für die Generierung von Vorgängen eigene Klassen. Da es zwischen den Vorgängen immer irgendwelche Unterschiede gibt, existiert auch für jeden Vorgangs-Typ eine eigene Klasse.
Übersicht Klassen:
- Angebot
- Auftrag
- Reparaturauftrag
- Produktionsauftrag
- Lieferschein
- Rechnung
- Bestellung
- Einkaufslieferschein
- Einkauf
Datentypen
Enumerationen
TVB_PosType
Positionstyp einer TVorgangPos. Wird über die Property Typ gelesen/gesetzt.
Die zugehörigen String-Konstanten sind unter Konstanten beschrieben.
| Wert | Bezeichner | Beschreibung |
|---|---|---|
| 0 | ptPosition |
Normale Artikelposition |
| 1 | ptText |
Textzeile / Memorundzeile |
| 2 | ptLeerzeile |
Leere Trennzeile |
| 3 | ptZwischensumme |
Zwischensummen-Position |
| 4 | ptTitelsumme |
Titelsummen-Position |
| 5 | ptTitel |
Titelzeile |
| 6 | ptGewerk |
Gewerk-Kopfzeile |
| 7 | ptSeitenumbruch |
Manueller Seitenumbruch |
| 8 | ptBild |
Bildposition |
TVB_MaterMode
Steuert den Materialmodus beim Lesen von Positionsdaten.
| Wert | Bezeichner | Beschreibung |
|---|---|---|
| 0 | mmNone |
Kein spezieller Materialmodus |
| 1 | mmMD5 |
Materialprüfung per MD5-Hash |
| 2 | mmReadUID |
Material-UID direkt lesen |
TVorgangFehlerTyp
Klassifiziert einen Eintrag in der internen Fehlerliste eines TVorgang. Wird im Record TVorgangFehler verwendet.
| Wert | Bezeichner | Beschreibung |
|---|---|---|
| 0 | vftOther |
Sonstiger Hinweis |
| 1 | vftCritical |
Kritischer Fehler (blockiert Speichern) |
| 2 | vftSaveCheck |
Prüfung beim Speichern |
| 3 | vftPosInfo |
Positionsbezogene Information |
TVorgangFehlerLoeschenLesen
Steuert, welche Fehler nach dem Lesen via leseFehler aus der Liste gelöscht werden.
| Wert | Bezeichner | Beschreibung |
|---|---|---|
| 0 | vfllNone |
Kein Fehler nach dem Lesen löschen |
| 1 | vfllAll |
Alle Fehler nach dem Lesen löschen |
| 2 | vfllSkipCritical |
Nur nicht-kritische Fehler löschen (Standard) |
Records
TVorgangPosOriginal
Enthält Referenzinformationen der Ursprungsposition (z. B. bei der Vorgangsübernahme).
Wird über die Property OriginalPos einer TVorgangPos geliefert.
| Feld | Typ | Beschreibung |
|---|---|---|
rDMS |
TDMSType | DMS-Typ des Ursprungsvorgangs |
cNr |
String | Vorgangsnummer des Ursprungs |
cUid |
String | UID der Ursprungsposition |
cSysUid |
String | System-UID der Ursprungsposition |
TVorgangPosParams_AktualisiereDaten
Steuert, welche Datenbereiche bei AktualisiereDaten aktualisiert werden sollen.
Wird über die Property ParameterPositionsdatenAktualisieren von TVorgang gesetzt.
| Feld | Typ | Beschreibung |
|---|---|---|
lTexte |
Boolean | Bezeichnungen/Texte aktualisieren |
lEK |
Boolean | Einkaufspreise aktualisieren |
lVK |
Boolean | Verkaufspreise aktualisieren |
TVorgangPosSummen
Speichert Zwischen- und Titelsummen-Beträge je Ebene (1 bis VB_MAX_SummenEbenen).
| Feld | Typ | Beschreibung |
|---|---|---|
aZw[1..9] |
Double | Zwischensummen-Beträge je Ebene |
aTit[1..9] |
Double | Titelsummen-Beträge je Ebene |
Methoden:
| Signatur | Beschreibung |
|---|---|
procedure Clear |
Setzt alle Summen auf 0 |
procedure ClearZw(const nEbene: integer) |
Setzt Zwischensumme der Ebene nEbene auf 0 |
procedure ClearTit(const nEbene: integer) |
Setzt Titelsumme der Ebene nEbene auf 0 |
procedure AddZw(const nBetrag: double) |
Addiert Betrag zur aktiven Zwischensummen-Ebene |
procedure AddTit(const nBetrag: double) |
Addiert Betrag zur aktiven Titelsummen-Ebene |
function ReadZw(const nEbene: integer): double |
Liefert den Zwischensummen-Betrag der Ebene |
function ReadTit(const nEbene: integer): double |
Liefert den Titelsummen-Betrag der Ebene |
TVorgangEigenschaft
Repräsentiert ein Vorgangsmerkmal (Eigenschaft), das per EigenschaftSetzen gesetzt wird.
| Feld | Typ | Beschreibung |
|---|---|---|
cNr |
String | Merkmalsnummer |
lMode |
Boolean | True = setzen, False = löschen |
TVorgangFehler
Ein Eintrag in der internen Fehlerliste von TVorgang.
Wird per leseFehler ausgelesen.
| Feld | Typ | Beschreibung |
|---|---|---|
cTitel |
String | Fehlertitel (Kurzbeschreibung) |
cText |
String | Fehlertext (Detailbeschreibung) |
eTyp |
TVorgangFehlerTyp | Fehlerklassifikation |
Konstanten
| Konstante | Wert | Beschreibung |
|---|---|---|
POSTYP_POS |
'0' |
Positionstyp normale Artikelposition (entspricht ptPosition) |
POSTYP_TXT |
'1' |
Positionstyp Textzeile (entspricht ptText) |
POSTYP_ELN |
'2' |
Positionstyp Leerzeile (entspricht ptLeerzeile) |
POSTYP_ZWS |
'3' |
Positionstyp Zwischensumme (entspricht ptZwischensumme) |
POSTYP_TIS |
'4' |
Positionstyp Titelsumme (entspricht ptTitelsumme) |
POSTYP_TIT |
'7' |
Positionstyp Titel (entspricht ptTitel) |
POSTYP_GEW |
'8' |
Positionstyp Gewerk (entspricht ptGewerk) |
POSTYP_PBR |
'17' |
Positionstyp Seitenumbruch (entspricht ptSeitenumbruch) |
POSTYP_PIC |
'19' |
Positionstyp Bild (entspricht ptBild) |
VB_DEFAULT_BezZwischensumme |
'ZWISCHENSUMME :' |
Standard-Bezeichnung für Zwischensummen-Positionen |
VB_DEFAULT_BezTitelsumme |
'TITELSUMME :' |
Standard-Bezeichnung für Titelsummen-Positionen |
VB_MAX_SummenEbenen |
9 |
Maximale Anzahl von Summenebenen (Zwischen- und Titelsummen) |
Basisklassen Vorgangsgenerierung
TVorgang
Variablen
| Name | Typ | Zugriff | Beschreibung |
|---|---|---|---|
oMyDB |
TxDB | Lesen/Schreiben | Datenbankverbindung des Vorgangs |
oProtokoll |
TStringList | Lesen/Schreiben | Protokoll-Liste (Meldungen/Log) |
lMeldung |
Boolean | Lesen/Schreiben | Steuert Anzeige von Benutzer-Meldungen |
lSetPSBemAuto |
Boolean | Lesen/Schreiben | Automatische Positionsbemerkung setzen |
cVorgNr |
String | Lesen/Schreiben | Vorgangsnummer |
cProjNr |
String | Lesen/Schreiben | Projektnummer |
lBrutto |
Boolean | Lesen/Schreiben | Brutto-Modus aktiv |
cLanguage |
String | Lesen/Schreiben | Sprach-Code (intern, z. B. für Formulare) |
cLagNr |
String | Lesen/Schreiben | Lagernummer |
cTyp |
String | Lesen/Schreiben | Vorgangstyp-Kürzel |
dVorgDat |
TDateTime | Lesen/Schreiben | Vorgangsdatum |
dFaelligDat |
TDateTime | Lesen/Schreiben | Fälligkeitsdatum |
dBuchDat |
TDateTime | Lesen/Schreiben | Buchungsdatum |
dAufDat |
TDateTime | Lesen/Schreiben | Auftragsdatum |
cKdNr |
String | Lesen/Schreiben | Kundennummer |
cAnrede |
String | Lesen/Schreiben | Anrede des Kunden |
cName |
String | Lesen/Schreiben | Name des Kunden |
cVorname |
String | Lesen/Schreiben | Vorname des Kunden |
cZusatz1 |
String | Lesen/Schreiben | Adresszusatz 1 |
cZusatz2 |
String | Lesen/Schreiben | Adresszusatz 2 |
cStrasse |
String | Lesen/Schreiben | Straße der Lieferadresse |
cPostfach |
String | Lesen/Schreiben | Postfach |
cLK |
String | Lesen/Schreiben | Länderkennzeichen |
cPLZ |
String | Lesen/Schreiben | Postleitzahl |
cOrt |
String | Lesen/Schreiben | Ort |
cAngebNr |
String | Lesen/Schreiben | Angebotsnummer |
cLSNr |
String | Lesen/Schreiben | Lieferscheinnummer |
cRechNr |
String | Lesen/Schreiben | Rechnungsnummer |
cAuftNr |
String | Lesen/Schreiben | Auftragsnummer |
cRepaNr |
String | Lesen/Schreiben | Reparaturauftragsnummer |
cEinkaufsNr |
String | Lesen/Schreiben | Einkaufsnummer |
cBestellNr |
String | Lesen/Schreiben | Bestellnummer |
cPosText |
String | Lesen/Schreiben | Positionstext (globaler Standardtext) |
cLProjNr |
String | Lesen/Schreiben | Leistungsprojektnummer |
cKopftext |
String | Lesen/Schreiben | Kopftext des Vorgangs |
cFusstext |
String | Lesen/Schreiben | Fußtext des Vorgangs |
nNBetrag |
Double | Lesen/Schreiben | Nettobetrag gesamt |
nBBetrag |
Double | Lesen/Schreiben | Bruttobetrag gesamt |
nEKBetrag |
Double | Lesen/Schreiben | Einkaufsbetrag gesamt |
nRabattBetrag |
Double | Lesen/Schreiben | Rabattbetrag gesamt |
nRabattProz |
Double | Lesen/Schreiben | Rabattprozentsatz gesamt |
nAnzahlung |
Double | Lesen/Schreiben | Anzahlungsbetrag |
nPorto |
Double | Lesen/Schreiben | Portokosten |
nVerpackung |
Double | Lesen/Schreiben | Verpackungskosten |
lSplitPoVe |
Boolean | Lesen/Schreiben | Porto und Verpackung getrennt ausweisen |
cVersand |
String | Lesen/Schreiben | Versandart |
cWaehr |
String | Lesen/Schreiben | Währungskürzel |
cFormul |
String | Lesen/Schreiben | Formularnummer/-kürzel |
cVAnr |
String | Lesen/Schreiben | Versandanrede |
cVName1 |
String | Lesen/Schreiben | Versandname 1 |
cVName2 |
String | Lesen/Schreiben | Versandname 2 |
cVZusatz |
String | Lesen/Schreiben | Versandadresse Zusatz |
cVStrasse |
String | Lesen/Schreiben | Versandstraße |
cVLK |
String | Lesen/Schreiben | Versand-Länderkennzeichen |
cVPLZ |
String | Lesen/Schreiben | Versand-PLZ |
cVOrt |
String | Lesen/Schreiben | Versandort |
cVUID |
String | Lesen/Schreiben | Versandadresse UID |
cPrio |
String | Lesen/Schreiben | Priorität des Vorgangs |
cAuftNrKd |
String | Lesen/Schreiben | Auftrags-/Bestellnummer des Kunden |
cBesteller |
String | Lesen/Schreiben | Besteller (Person) |
cSachb |
String | Lesen/Schreiben | Sachbearbeiter |
cRabPosJN |
String | Lesen/Schreiben | Positionsrabatt anzeigen J/N |
cMWSTJN |
String | Lesen/Schreiben | Mehrwertsteuer ausweisen J/N |
cSText1 |
String | Lesen/Schreiben | Sondertext 1 |
cSText2 |
String | Lesen/Schreiben | Sondertext 2 |
cSText3 |
String | Lesen/Schreiben | Sondertext 3 |
cSText4 |
String | Lesen/Schreiben | Sondertext 4 |
cSText5 |
String | Lesen/Schreiben | Sondertext 5 |
cSText6 |
String | Lesen/Schreiben | Sondertext 6 |
cSText7 |
String | Lesen/Schreiben | Sondertext 7 |
cPreisJN |
String | Lesen/Schreiben | Preis auf Dokument drucken J/N |
cMwStAbs |
String | Lesen/Schreiben | MwSt-Absetzungstext/-Kürzel |
dLiefDat |
TDateTime | Lesen/Schreiben | Lieferdatum |
cDeleted |
String | Lesen/Schreiben | Gelöscht-Kennzeichen |
dLDat2 |
TDateTime | Lesen/Schreiben | Zweites Lieferdatum |
cSprache |
String | Lesen/Schreiben | Sprache des Vorgangs |
cReEmpf |
String | Lesen/Schreiben | Rechnungsempfänger-Nummer |
cReAnrede |
String | Lesen/Schreiben | Rechnungsempfänger-Anrede |
cReName |
String | Lesen/Schreiben | Rechnungsempfänger-Name |
cReVorname |
String | Lesen/Schreiben | Rechnungsempfänger-Vorname |
cReZusatz1 |
String | Lesen/Schreiben | Rechnungsempfänger-Adresszusatz 1 |
cReZusatz2 |
String | Lesen/Schreiben | Rechnungsempfänger-Adresszusatz 2 |
cReStrasse |
String | Lesen/Schreiben | Rechnungsempfänger-Straße |
cRePostfach |
String | Lesen/Schreiben | Rechnungsempfänger-Postfach |
cReLK |
String | Lesen/Schreiben | Rechnungsempfänger-Länderkennzeichen |
cRePLZ |
String | Lesen/Schreiben | Rechnungsempfänger-PLZ |
cReOrt |
String | Lesen/Schreiben | Rechnungsempfänger-Ort |
cVertreter |
String | Lesen/Schreiben | Vertreter-Kürzel |
cVerbucht |
String | Lesen/Schreiben | Verbucht-Kennzeichen |
cLager |
String | Lesen/Schreiben | Lager-Kürzel |
cRechFrei |
String | Lesen/Schreiben | Rechnungsfreigabe-Kennzeichen |
cBonNr |
String | Lesen/Schreiben | Bonnummer (Kasse) |
cMandant |
String | Lesen/Schreiben | Mandantenkürzel |
nMwStDM |
Double | Lesen/Schreiben | MwSt-Betrag in DM (Altwährung) |
nKursDM |
Double | Lesen/Schreiben | Wechselkurs DM |
nAbschlag |
Double | Lesen/Schreiben | Abschlagsbetrag |
nZBetrag |
Double | Lesen/Schreiben | Zahlungsbetrag |
nZSkonto |
Double | Lesen/Schreiben | Skonto-Betrag |
dZDatum |
TDateTime | Lesen/Schreiben | Zahlungsdatum |
cMemo |
String | Lesen/Schreiben | Memofeld des Vorgangs |
nValuta |
Integer | Lesen/Schreiben | Valutatage |
cKostenst |
String | Lesen/Schreiben | Kostenstelle |
cKostentraeger |
String | Lesen/Schreiben | Kostenträger |
cKalkGr |
String | Lesen/Schreiben | Kalkulationsgruppe |
cFrachtV |
String | Lesen/Schreiben | Frachtart/-vorschrift |
nFrachtK |
Double | Lesen/Schreiben | Frachtkosten |
nFrachtG |
Integer | Lesen/Schreiben | Frachtgewicht |
cGruppe |
String | Lesen/Schreiben | Vorgangsgruppe |
nPosInc |
Integer | Lesen/Schreiben | Positionsnummer-Inkrement |
cFiliale |
String | Lesen/Schreiben | Filialkürzel |
cRabText |
String | Lesen/Schreiben | Rabatttextfeld (kurz) |
cErfasser |
String | Lesen/Schreiben | Erfasser des Vorgangs |
nSKFBetrag |
Double | Lesen/Schreiben | Skontofähiger Betrag |
lLiefStrecke |
Boolean | Lesen/Schreiben | Lieferstreckengeschäft aktiv |
cBetreff |
String | Lesen/Schreiben | Betreffzeile |
cMemoDruck |
String | Lesen/Schreiben | Druckmemo (erscheint auf Dokument) |
cLieferLiefNr |
String | Lesen/Schreiben | Lieferanten-Lieferscheinnummer |
cRabattText |
String | Lesen/Schreiben | Rabatttext (lang) |
cSysUid |
String | Lesen/Schreiben | System-UID des Vorgangs |
lLeistPreis2 |
Boolean | Lesen/Schreiben | Leistungspreis 2 verwenden |
cFunction |
String | Lesen/Schreiben | Funktionskürzel (Scripting-Hook) |
lSaveAllowed |
Boolean | Lesen/Schreiben | Speichern erlaubt |
lVorgangsSperre |
Boolean | Lesen/Schreiben | Vorgang gesperrt |
Properties
| Name | Typ | Zugriff | Beschreibung |
|---|---|---|---|
DmsTyp |
String | Lesen/Schreiben | DMS-Typ des Vorgangs (z. B. AN, AU, LS, RE) |
MainTable |
String | Lesen/Schreiben | Haupttabelle des Vorgangs (Datenbankname) |
PosTable |
String | Lesen/Schreiben | Positionstabelle des Vorgangs |
cPosFormat |
String | Lesen/Schreiben | Positionsnummern-Format |
ParameterPositionsdatenAktualisieren |
TVorgangPosParams_AktualisiereDaten | Lesen/Schreiben | Parameter für Massenaktualisierung von Positionsdaten |
PnPosCnt |
Integer | Lesen/Schreiben | Anzahl der Positionen im Vorgang |
PaPositionen[Index] |
TVorgangPos | Lesen/Schreiben | Array der Positionsobjekte (0-basiert) |
PcRabGrPers |
String | Nur Lesen | Rabattgruppe der Person (aus Stammdaten ermittelt) |
PcVKdNr |
String | Lesen/Schreiben | VK-Kundennummer (alternativ zur cKdNr für Preisfindung) |
nNet1 |
Double | Lesen/Schreiben | Nettobetrag MwSt-Schlüssel 1 |
nNet2 |
Double | Lesen/Schreiben | Nettobetrag MwSt-Schlüssel 2 |
nNet3 |
Double | Lesen/Schreiben | Nettobetrag MwSt-Schlüssel 3 |
nBrutto1 |
Double | Lesen/Schreiben | Bruttobetrag MwSt-Schlüssel 1 |
nBrutto2 |
Double | Lesen/Schreiben | Bruttobetrag MwSt-Schlüssel 2 |
nBrutto3 |
Double | Lesen/Schreiben | Bruttobetrag MwSt-Schlüssel 3 |
nMwSt1 |
Double | Lesen/Schreiben | MwSt-Betrag Schlüssel 1 |
nMwSt2 |
Double | Lesen/Schreiben | MwSt-Betrag Schlüssel 2 |
nMwSt3 |
Double | Lesen/Schreiben | MwSt-Betrag Schlüssel 3 |
cMwStSchl1 |
String | Lesen/Schreiben | MwSt-Schlüssel 1 |
cMwStSchl2 |
String | Lesen/Schreiben | MwSt-Schlüssel 2 |
cMwStSchl3 |
String | Lesen/Schreiben | MwSt-Schlüssel 3 |
cKeineVersPausch |
String | Lesen/Schreiben | Keine Versandpauschale berechnen J/N |
cZahlBed |
String | Lesen/Schreiben | Zahlungsbedingung |
lNewVorgang |
Boolean | Nur Lesen | Neuer (noch nicht gespeicherter) Vorgang |
cKopfNr |
String | Lesen/Schreiben | Kopftextbaustein-Nummer |
cFussNr |
String | Lesen/Schreiben | Fußtextbaustein-Nummer |
cLiefStrecke |
String | Lesen/Schreiben | Lieferstrecken-Kürzel |
cStatus |
String | Lesen/Schreiben | Status des Vorgangs |
cStatM |
String | Lesen/Schreiben | Material-Status |
cStatS |
String | Lesen/Schreiben | Service-Status |
cStatL |
String | Lesen/Schreiben | Lieferstatus |
cStatR |
String | Lesen/Schreiben | Rechnungsstatus |
cColStatus |
String | Lesen/Schreiben | Farb-/Anzeigestatus (für UI) |
cZustand |
String | Lesen/Schreiben | Zustandskenner des Vorgangs |
cArt |
String | Lesen/Schreiben | Vorgangsart-Kürzel |
cBonusJN |
String | Lesen/Schreiben | Bonus berechnen J/N |
cVersandkostenMBW |
String | Lesen/Schreiben | Versandkosten-Mindestbestellwert-Kennzeichen |
cWKNr |
String | Lesen/Schreiben | Werbungskosten-Nummer |
Methoden
| Signatur | Beschreibung |
|---|---|
constructor Create(const cUid: string; oxDB: TxDB; cDmsType: string) |
Erstellt einen neuen Vorgang mit UID, Datenbankverbindung und DMS-Typ |
destructor Destroy |
Gibt den Vorgang und alle Ressourcen frei |
function SemaphoreCreate(cFName: string; lMeldung: boolean = False; cWait: string = ): boolean |
Erstellt eine Datei-Semaphore (Sperrdatei); gibt True zurück wenn erfolgreich |
function SemaphoreInUse(cFName: string): boolean |
Prüft ob die Semaphore-Datei bereits in Verwendung ist |
procedure SemaphoreReleaseAll |
Gibt alle Semaphoren dieses Vorgangs frei |
procedure SemaphoreRelease(cFName: string) |
Gibt eine bestimmte Semaphore frei |
function IstAngebot(): boolean |
Gibt True zurück wenn der Vorgang ein Angebot ist |
function IstAuftrag(): boolean |
Gibt True zurück wenn der Vorgang ein Auftrag ist |
function IstReparaturAuftrag(): boolean |
Gibt True zurück wenn der Vorgang ein Reparaturauftrag ist |
function IstLieferschein(): boolean |
Gibt True zurück wenn der Vorgang ein Lieferschein ist |
function IstRechnung(): boolean |
Gibt True zurück wenn der Vorgang eine Rechnung ist |
function IstBestellung(): boolean |
Gibt True zurück wenn der Vorgang eine Bestellung ist |
function IstAnfrage(): boolean |
Gibt True zurück wenn der Vorgang eine Anfrage ist |
function IstEKLieferschein(): boolean |
Gibt True zurück wenn der Vorgang ein EK-Lieferschein ist |
function IstEinkauf(): boolean |
Gibt True zurück wenn der Vorgang ein Einkaufsvorgang ist |
function IstVG_VK(): boolean |
Gibt True zurück wenn es sich um einen Verkaufsvorgang handelt |
function IstVG_EK(): boolean |
Gibt True zurück wenn es sich um einen Einkaufsvorgang handelt |
function NeuNumLock(): boolean |
Sperrt die Neunummerierung (verhindert parallele Vergabe) |
procedure NeuNumLockRelease |
Gibt die Neunummerierungssperre wieder frei |
function VorgNeuNum(cFilter: string = ; lAbweichend: boolean = false): string |
Ermittelt und setzt eine neue Vorgangsnummer; gibt die Nummer als String zurück |
function VorgNeuNumBool(cFilter: string = ; lAbweichend: boolean = false): boolean |
Wie VorgNeuNum, gibt True/False zurück (für Fehlerbehandlung) |
function IstVorgNrGueltig(cUID: string = ): boolean |
Prüft ob die aktuelle Vorgangsnummer gültig (eindeutig) ist |
function NeuePositionBase(const cUID: string): TVorgangPos |
Legt eine neue Positionsinstanz an und fügt sie dem Vorgang hinzu |
procedure NeuePositionBaseMS(const cUID: string; oOrgPos: TVorgangPos) |
Legt eine neue Position als Multi-Steuer-Folgeposition an |
function LoeschePositionBase(nDel: integer): Boolean |
Löscht die Position mit dem angegebenen Index |
procedure VerschiebePositionBase(nPos: integer; nZiel: integer) |
Verschiebt Position von Index nPos zu Index nZiel |
function CheckIfNotNull(): Boolean |
Prüft ob Pflichtfelder des Vorgangs befüllt sind |
function CheckIfFirstPosOption(): Boolean |
Prüft ob die erste Position eine Optionsposition ist |
function IsPosBerechnung(cPosArt: string): boolean |
Prüft ob eine Positionsart als Berechnungsposition gilt |
procedure CopyFrom(oSrc: TVorgang) |
Kopiert alle Felder aus einem anderen Vorgang |
procedure KalkAll(lZusatz: boolean = true) |
Kalkuliert alle Positionen und Gesamtsummen neu |
procedure Check_Multisteuer(oOrgPos: TVorgangPos; const cTable, cMUID, cRefNr: string) |
Prüft und setzt Multi-Steuer-Verknüpfung für eine Position |
function CopyPosmenge(cFromUID: string): string |
Kopiert Positionsmengen aus einem anderen Vorgang (per UID) |
function CopyPosverp(cFromUID: string): string |
Kopiert Positionsverpackungen aus einem anderen Vorgang (per UID) |
procedure fillVersandkostenMBW(const cPsNr: string; const cPsVersand: string = ; const PsZusatz: string = ) |
Berechnet und setzt Versandkosten auf Basis Mindestbestellwert |
procedure FillPersonBase(qPers: TxFQuery) |
Befüllt Adressfelder des Vorgangs aus einem Personen-Query |
function FillReEmpf(const AReEmpf: string; const AZahlBed: string = ): boolean |
Setzt Rechnungsempfänger und optionale Zahlungsbedingung |
function SaveRecord(cUID: string = ; lAlleSpeichern: boolean = false): Boolean |
Speichert den Vorgang (abstrakt – muss in abgeleiteter Klasse implementiert werden) |
function ReadVorgangTypBase(cDmsTyp: string; const cNr: string; lPos: boolean = false; lNeg: boolean = false): boolean |
Liest einen Vorgang anhand DMS-Typ und Nummer in das Objekt |
function JahrNr(): string |
Gibt das Jahr der Vorgangsnummer zurück |
procedure NeuNumPos(const lNurPos: boolean = True) |
Nummeriert alle Positionen neu |
function EigenschaftSetzen(const ANr: string; const AMode: boolean): boolean |
Setzt oder löscht eine Vorgangseigenschaft (Merkmal) per Nummer |
procedure AdresseLeeren |
Leert alle Adressfelder des Vorgangs |
procedure VersandLeeren(lRef: boolean = True) |
Leert alle Versandadressfelder |
procedure ReEmpfLeeren(const lNurAdr: boolean = False) |
Leert Rechnungsempfänger-Felder (optional nur Adresse) |
procedure DoServiceTouch(cStatus: string = ) |
Aktualisiert Service-Zeitstempel und optionalen Status |
function AuswahlParameterPositionsdatenAktualisieren(const cXDataTable: string): boolean |
Zeigt Dialog zur Auswahl der Aktualisierungsparameter für Positionsdaten |
function ZusatzkostenAktiv(): boolean |
Gibt True zurück wenn Zusatzkostenmodul für diesen Vorgang aktiv ist |
function leseFehler(out rFehler: TVorgangFehler; var nIdx: integer; const eLoeschenNachLesen: TVorgangFehlerLoeschenLesen = vfllSkipCritical): boolean |
Liest den nächsten Fehler aus der internen Fehlerliste |
TVorgangPos
Variablen
| Name | Typ | Zugriff | Beschreibung |
|---|---|---|---|
nPosIndex |
Integer | Lesen/Schreiben | Laufender Index der Position im Positions-Array |
cNr |
String | Lesen/Schreiben | Interne Positionsnummer (Datenbankfeld) |
cKundNr |
String | Lesen/Schreiben | Kundennummer an der Position |
cAuftragsNr |
String | Lesen/Schreiben | Referenz-Auftragsnummer |
cBestellNr |
String | Lesen/Schreiben | Referenz-Bestellnummer |
cPosText |
String | Lesen/Schreiben | Positionstext (Langtextfeld) |
cLProjNr |
String | Lesen/Schreiben | Leistungsprojektnummer |
cLS_azUid |
String | Lesen/Schreiben | Lieferschein-Abrechnungszeilen-UID |
cVersandNr |
String | Lesen/Schreiben | Versandnummer |
cPosNr |
String | Lesen/Schreiben | Positionsnummer (formatiert) |
cPosNr2 |
String | Lesen/Schreiben | Zweite Positionsnummer (alternativ) |
cPosKas |
String | Lesen/Schreiben | Kassier-Positionsnummer |
cLeistungsNr |
String | Lesen/Schreiben | Leistungsnummer |
cBezeichnung1 |
String | Lesen/Schreiben | Bezeichnung Zeile 1 |
cBezeichnung2 |
String | Lesen/Schreiben | Bezeichnung Zeile 2 |
nUrMenge |
Double | Lesen/Schreiben | Ursprungsmenge (vor Änderungen) |
nLeistFaktor |
Double | Lesen/Schreiben | Leistungsfaktor (Multiplikator für Mengenberechnung) |
cEinheit |
String | Lesen/Schreiben | Mengeneinheit |
nMengeG |
Integer | Lesen/Schreiben | Mengenganz (ganzzahliger Mengenanteil) |
nKolli |
Integer | Lesen/Schreiben | Kollianzahl |
cVerpackung |
String | Lesen/Schreiben | Verpackungsart/-kürzel |
nInhalt |
Double | Lesen/Schreiben | Inhalt pro Verpackungseinheit |
nEPreis |
Double | Lesen/Schreiben | Einzelpreis (Netto) |
nBEPreis |
Double | Lesen/Schreiben | Brutto-Einzelpreis |
nOBPreis |
Double | Lesen/Schreiben | Original-Brutto-Einzelpreis (vor Rabatt) |
nUrPreis |
Double | Lesen/Schreiben | Ursprungspreis (Listenpreis VK) |
nUrPreisEK |
Double | Lesen/Schreiben | Ursprungspreis Einkauf |
nGPreis |
Double | Lesen/Schreiben | Gesamtpreis (Netto) |
nBGPreis |
Double | Lesen/Schreiben | Brutto-Gesamtpreis |
nEKPreis |
Double | Lesen/Schreiben | Einkaufspreis |
nEKSPreis |
Double | Lesen/Schreiben | Einkaufssonderpreis |
cManPreis |
String | Lesen/Schreiben | Manueller Preis J/N-Kennzeichen |
nRabatt |
Double | Lesen/Schreiben | Gesamtrabatt in Prozent |
nRabatt1 |
Double | Lesen/Schreiben | Rabatt 1 in Prozent |
cRabArt1 |
String | Lesen/Schreiben | Rabattart 1 (Herkunftskennzeichen) |
nRabatt2 |
Double | Lesen/Schreiben | Rabatt 2 in Prozent |
cRabArt2 |
String | Lesen/Schreiben | Rabattart 2 |
nRabatt3 |
Double | Lesen/Schreiben | Rabatt 3 in Prozent |
cRabArt3 |
String | Lesen/Schreiben | Rabattart 3 |
nRabatt4 |
Double | Lesen/Schreiben | Rabatt 4 in Prozent |
cRabArt4 |
String | Lesen/Schreiben | Rabattart 4 |
nRabatt5 |
Double | Lesen/Schreiben | Rabatt 5 in Prozent |
cRabArt5 |
String | Lesen/Schreiben | Rabattart 5 |
nAddSub |
Double | Lesen/Schreiben | Additions-/Subtraktionsbetrag (Zuschlag/Abzug absolut) |
cKonto |
String | Lesen/Schreiben | Buchungskonto |
cLagNr |
String | Lesen/Schreiben | Lagernummer der Position |
cLagONr |
String | Lesen/Schreiben | Lager-Ortsnummer |
cVerkaufer |
String | Lesen/Schreiben | Verkäuferkürzel |
cStatus |
String | Lesen/Schreiben | Positionsstatus |
cAngebotsNr |
String | Lesen/Schreiben | Referenz-Angebotsnummer |
cUID |
String | Lesen/Schreiben | Eindeutige ID der Position (GUID) |
cMUID |
String | Lesen/Schreiben | Multi-Steuer-UID (Verknüpfung bei Multisteuer) |
cRTVon |
String | Lesen/Schreiben | Rücktragungs-Referenz (von welcher Position) |
cSpNr |
String | Lesen/Schreiben | Speditionsnummer |
cBestellUID |
String | Lesen/Schreiben | UID der verknüpften Bestellposition |
cMaterialUID |
String | Lesen/Schreiben | UID des verknüpften Materialeintrags |
cEiliUID |
String | Lesen/Schreiben | UID der Eillieferungsposition |
cXUID1 |
String | Lesen/Schreiben | Erweiterungs-UID 1 (freie Verknüpfung) |
cXUID2 |
String | Lesen/Schreiben | Erweiterungs-UID 2 |
cXUID3 |
String | Lesen/Schreiben | Erweiterungs-UID 3 |
cXUID4 |
String | Lesen/Schreiben | Erweiterungs-UID 4 |
cKommentar |
String | Lesen/Schreiben | Kommentarfeld der Position |
nProvision |
Double | Lesen/Schreiben | Provisionsanteil in Prozent |
cLiefKz |
String | Lesen/Schreiben | Lieferkennzeichen |
cProdGr |
String | Lesen/Schreiben | Produktgruppe |
nFrachtV |
Double | Lesen/Schreiben | Frachtvolumen der Position |
cLSNr |
String | Lesen/Schreiben | Lieferscheinnummer der Position |
dLSDatum |
TDateTime | Lesen/Schreiben | Lieferscheindatum der Position |
cPosArt |
String | Lesen/Schreiben | Positionsart (z. B. N=Normal, O=Optional) |
cSKFJN |
String | Lesen/Schreiben | Skontofähig J/N |
cEKHerkunft |
String | Lesen/Schreiben | EK-Preisherkunft-Kürzel |
cLiefNr |
String | Lesen/Schreiben | Lieferantennummer |
cLagStreck |
String | Lesen/Schreiben | Lager-Streckenkennzeichen |
cAufschlag |
String | Lesen/Schreiben | Aufschlagskürzel |
nStaffelPreis |
Integer | Lesen/Schreiben | Staffelpreisstufe (Index) |
nStaffelmenge |
Double | Lesen/Schreiben | Staffelmenge für Preisfindung |
lAktionspreis |
Boolean | Lesen/Schreiben | Aktionspreis aktiv |
cAusdruckJN |
String | Lesen/Schreiben | Position drucken J/N |
cMemoDruck |
String | Lesen/Schreiben | Druckmemo der Position |
cBildUID |
String | Lesen/Schreiben | UID des verknüpften Bildes |
cCMPUID |
String | Lesen/Schreiben | CMP-Objekt-UID |
cZeit_CMPUID |
String | Lesen/Schreiben | Zeiterfassungs-CMP-UID |
cZeit_Text |
String | Lesen/Schreiben | Zeiterfassungstext |
cZeit_Mitarb |
String | Lesen/Schreiben | Mitarbeiter der Zeiterfassung |
dZeit_Date |
TDateTime | Lesen/Schreiben | Datum der Zeiterfassung |
cZeit_NurLei |
String | Lesen/Schreiben | Zeiterfassung: nur Leistung J/N |
cKostst |
String | Lesen/Schreiben | Kostenstelle der Position |
dAbrechVon |
TDateTime | Lesen/Schreiben | Abrechnungszeitraum von |
dAbrechBis |
TDateTime | Lesen/Schreiben | Abrechnungszeitraum bis |
lNeuNum |
Boolean | Lesen/Schreiben | Neunummerierung für diese Position ausführen |
cSysUID |
String | Lesen/Schreiben | System-UID der Position |
cGeraetNr |
String | Lesen/Schreiben | Gerätenummer (für Servicepositionen) |
Properties
| Name | Typ | Zugriff | Beschreibung |
|---|---|---|---|
oMyDB |
TxDB | Nur Lesen | Datenbankverbindung (vom Vorgang geerbt) |
ShopNr |
String | Nur Lesen | Shop-Nummer (für Mehrshop-Preisfindung) |
cArtikelNr |
String | Lesen/Schreiben | Artikelnummer (Zugriff über Property wegen Seiteneffekten) |
PcMWSTSch |
String | Lesen/Schreiben | MwSt-Schlüssel (Parameter-Feld) |
PcMengeIn |
String | Lesen/Schreiben | Mengeneingabe als String (Parameter) |
PnMengeIn |
Double | Lesen/Schreiben | Mengeneingabe als Zahl (Parameter) |
PnMengeInFak |
Double | Lesen/Schreiben | Mengeneingabe-Faktor (Parameter) |
PcMemofeld |
String | Lesen/Schreiben | Memofeld der Position (Parameter-Feld, Unicode) |
PcMemofeldAnsi |
String | Lesen/Schreiben | Memofeld ANSI-Version (Parameter-Feld) |
cPosLaufend |
String | Lesen/Schreiben | Laufende Positionsnummer als String |
lVerbrauchsMater |
Boolean | Lesen/Schreiben | Verbrauchsmaterial-Kennzeichen |
nMenge |
Double | Lesen/Schreiben | Menge der Position (mit Seiteneffekten bei Schreiben) |
cTyp |
String | Lesen/Schreiben | Positionstyp als String – siehe Konstanten (POSTYP_*) |
Typ |
TVB_PosType | Lesen/Schreiben | Positionstyp als Enum (ptPosition, ptText, ptLeerzeile …) |
OriginalPos |
TVorgangPosOriginal | Nur Lesen | Ursprungspositionsdaten (DMS-Referenz, Nr, UID, SysUID) |
Methoden
| Signatur | Beschreibung |
|---|---|
constructor Create(oxVorgang: TVorgang; cPosTbl: string) |
Erstellt eine neue Position für den angegebenen Vorgang (veraltet, UID-Variante bevorzugen) |
constructor Create(cUid: string; oxVorgang: TVorgang; cPosTbl: string) |
Erstellt eine neue Position mit vorgegebener UID |
destructor Destroy |
Gibt die Position frei |
procedure PositionsVorbelegung |
Befüllt die Position mit Standardwerten aus den Vorgangsdaten |
procedure GenNewUid |
Generiert eine neue UID für diese Position |
function CopyPosmenge(cFromUID: string): string |
Kopiert Mengen aus einer anderen Position (per UID) |
function CopyPosverp(cFromUID: string): string |
Kopiert Verpackungsdaten aus einer anderen Position (per UID) |
procedure CopyFrom(oSrc: TVorgangPos; lFull: boolean = False) |
Kopiert alle Felder aus einer anderen Position; lFull=True kopiert auch interne Felder |
procedure QueryToPos(qTmp: TxFQuery; lReadAsNew: boolean = false) |
Befüllt die Position aus einem Datenbankquery (Überladung 1) |
procedure QueryToPos(qTmp: TxFQuery; const cFromTable: string; lVerpack: Boolean = False; lUmkehr: boolean = False) |
Befüllt die Position aus einem Query mit expliziter Quelltabelle (Überladung 2) |
procedure DBPosToPos(const cFromTable: string; const cSysUid: string; lVerpack: Boolean = False; lUmkehr: boolean = False) |
Liest eine Position direkt aus der Datenbank per SysUID |
function FillArtikel(cArtNr: string): boolean |
Befüllt die Position mit Artikelstammdaten; gibt True bei Erfolg zurück |
function SetzeLieferant(const cLiefNr: string; lEKNeu: boolean = True; lDefaultEK1: boolean = False): boolean |
Setzt den Lieferanten und aktualisiert EK-Preise |
procedure FillLeistung(cLeistNr: string) |
Befüllt die Position mit Leistungsstammdaten |
function SumPosBez(const eZielTyp: TVB_PosType; const cBezVorb: string): string |
Gibt die Bezeichnung für eine Summenposition zurück |
procedure Typ_Pos |
Setzt den Positionstyp auf „normale Position“ |
procedure Typ_Text(const cText: string) |
Setzt den Positionstyp auf „Textzeile“ mit dem angegebenen Text |
procedure Typ_Leerzeile |
Setzt den Positionstyp auf „Leerzeile“ |
procedure Typ_Zwischensumme(const cBez: string = ) |
Setzt den Positionstyp auf „Zwischensumme“ (Ebene 1) |
procedure Typ_ZwischensummeEbene(const nEbene: integer; const cBez: string = ) |
Setzt den Positionstyp auf „Zwischensumme“ der angegebenen Ebene |
procedure Typ_Titelsumme(const cBez: string = ) |
Setzt den Positionstyp auf „Titelsumme“ (Ebene 1) |
procedure Typ_TitelsummeEbene(const nEbene: integer; const cBez: string = ) |
Setzt den Positionstyp auf „Titelsumme“ der angegebenen Ebene |
procedure Typ_Titel(const cBez: string) |
Setzt den Positionstyp auf „Titel“ |
procedure Typ_Gewerk(const cBez: string) |
Setzt den Positionstyp auf „Gewerk“ |
procedure Typ_NeueSeite |
Setzt den Positionstyp auf „Seitenumbruch“ |
procedure Typ_Bild(const cBild: string) |
Setzt den Positionstyp auf „Bild“ mit dem angegebenen Bildpfad/-UID |
procedure UStKorrektur(const dCheckDate: TDateTime) |
Korrigiert den Umsatzsteuerschlüssel gemäß Datum (Steuersatzänderungen) |
procedure KalkPos |
Kalkuliert Gesamtpreis und abgeleitete Felder dieser Position neu |
function PosNrAllowed(): boolean |
Gibt True zurück wenn dieser Positionstyp eine Positionsnummer erhält |
procedure SetPosNr(cP: string; cT: string = ; cG: string = ; cFormat: string = ) |
Setzt die Positionsnummer aus String-Komponenten (Überladung 1) |
procedure SetPosNr(nP: integer; nT: integer = -1; nG: integer = -1; cFormat: string = ) |
Setzt die Positionsnummer aus numerischen Komponenten (Überladung 2) |
function PosLaufend(iPos: integer = 0): string |
Gibt die laufende Positionsnummer als formatierten String zurück |
procedure Preisfindung(cShopNr: string = CONST_NO_SHOP) |
Führt die Preisfindung für diese Position aus |
function SetOpenBookLieferant(): boolean |
Setzt den Open-Book-Lieferanten für diese Position |
procedure AddToMemo(const cText: string; const lNewLine: boolean = False) |
Fügt Text zum Memofeld hinzu |
procedure AktualisiereDaten |
Aktualisiert Texte, EK- und VK-Preise gemäß ParameterPositionsdatenAktualisieren |
procedure EKCalcMengeIn(var nEkFak: double) |
Berechnet den EK-Mengeneingabe-Faktor (Rückgabe per var-Parameter) |
function CanSave(): boolean |
Prüft ob diese Position gespeichert werden kann/darf |
procedure qSqlSet(AqSql: TqSql) |
Setzt das SQL-Objekt für erweiterte DB-Operationen dieser Position |
Globale Methoden
| Signatur | Beschreibung |
|---|---|
function IstVKVorgang(cMainTable: string): boolean |
Gibt True zurück, wenn die Haupttabelle ein VK-Vorgang ist |
function IstVKVorgangPos(cPosTable: string): boolean |
Gibt True zurück, wenn die Positionstabelle zu einem VK-Vorgang gehört |
function CopyPosmengeDB(oMyDB: TxDB; cFromUID: string): string |
Kopiert Positionsmengen aus einem anderen Vorgang (direkt per Datenbankzugriff) |
function CopyPosverpDB(oMyDB: TxDB; cFromUID: string): string |
Kopiert Positionsverpackungen aus einem anderen Vorgang (direkt per Datenbankzugriff) |
function CopyRTFLan(oMyDB: TxDB; cVonTable, cVonRef, cNachTable, cNachRef: String): String |
Kopiert RTF-Langtexte zwischen Vorgangs-Positionen |
procedure CopyKalkulationAN2AU(oMyDB: TxDB; cANRef1, cANRef2, cAURef1, cAURef2: String; fPosmenge: Double) |
Kopiert Kalkulation von Angebot nach Auftrag (mit Mengenfaktor) |
procedure CopyKalkulationAU(oMyDB: TxDB; cANRef1, cANRef2, cAURef1, cAURef2: String) |
Kopiert Auftragskalkulation zwischen zwei Positionen |
procedure CopyKalkulationAN(oMyDB: TxDB; cANRef1, cANRef2, cAURef1, cAURef2: String) |
Kopiert Angebotskalkulation zwischen zwei Positionen |
function PosNrFormatCheck(const cFormat: string): boolean |
Prüft, ob ein Positionsnummern-Format gültig ist (Überladung 1) |
function PosNrFormatCheck(oMyDB: TxDB; const cFormat: string): boolean |
Prüft Format gegen Datenbankeinstellungen (Überladung 2) |
function PosNrFormatCounts(const cFormat: string; out nG, nT, nP: integer): boolean |
Liefert die Stellenzahlen für Gewerk, Titel und Position aus dem Format (Überladung 1) |
function PosNrFormatCounts(oMyDB: TxDB; const cFormat: string; out nG, nT, nP: integer): boolean |
Wie oben, mit Datenbankzugriff (Überladung 2) |
function PosNrSplit(oMyDB: TxDB; const cFormat, cPosTyp: string; cPosNr: string; out nG, nT, nP: integer): boolean |
Zerlegt eine formatierte Positionsnummer in ihre Bestandteile |
function GetVorgangMandant(oMyDB: TxDB; const cTable, cNr: string): string |
Gibt den Mandanten-Schlüssel für einen Vorgang zurück |
function GetVorgangTextTB(const nPMode: integer; out cTB_Nr: string; cFiliale: string = ): boolean |
Ermittelt die Textbaustein-Nummer für den angegebenen Positionsmodus |
function GetVorgangTextTBPers(oMyDB: TxDB; const cPsNr: string; const nPMode: integer; out cTB_Nr: string; cFiliale: string = ): boolean |
Wie GetVorgangTextTB, zusätzlich personenbezogen |
function KopfTextPlatzhalter(var cKopfText: string; const cBrief1, cBrief2: string): boolean |
Ersetzt Platzhalter im Kopftext durch Briefanredefelder |
function VorgangArt(oMyDB: TxDB; const cDMS, cNr: string): integer |
Gibt die Vorgangsart als Integer-Kennziffer zurück |
function VorgangStatus(oMyDB: TxDB; const cDMS, cNr: string): string |
Gibt den aktuellen Status eines Vorgangs aus der Datenbank zurück |
function VorgangVerbucht(oMyDB: TxDB; const cDMS, cNr: string): boolean |
Gibt True zurück, wenn der Vorgang verbucht ist |
function VorgangUstEnthalten(oMyDB: TxDB; const cDMS, cNr, cUstSchl: string; cFeld: string = ): boolean |
Prüft, ob ein bestimmter USt-Schlüssel im Vorgang verwendet wird |
function PortoVerpackKannSkonto(): boolean |
Gibt True zurück, wenn Porto/Verpackung skontofähig ist (laut Systemeinstellung) |
function GetPosBild(oMyDB: TxDB; cArtNr: string; var cBildUID: string): boolean |
Ermittelt die Bild-UID eines Artikels für eine Positions-Bildposition |
function VorgangVertreterVorb(oMyDB: TxDB; const cVertreter: string): string |
Gibt den vorgebelegten Vertreter-Schlüssel zurück |
function VorgangVertreterPrio(oMyDB: TxDB; const cAktVertreter: string): string |
Gibt den Vertreter mit höchster Priorität zurück |
function GenerierePositionskommentar(cUrsprung, cKommentar: String): String |
Kombiniert Ursprungs- und Kommentartext zu einem Positions-Kommentar |
function ReplacePlatzhalterReparaturAuftrag(cRAufNr: String; cText: String = ): String |
Ersetzt Platzhalter im Text durch Reparaturauftragsdaten |
function ReplacePlatzhalterPosErfassung(oMyDB: TxDB; const cBuffer, cTable, cNr: string; const lDef: Boolean = False; const lRepa: Boolean = False): String |
Ersetzt Platzhalter im Text bei der Positionserfassung |
function LoadPlatzhalterVorgang(oMyDB: TxDB; const cTable, cNr: string; var oPlatzhalter: TPlatzhalterVorgang): Boolean |
Lädt Platzhalter-Daten eines Vorgangs aus der Datenbank |
function PlatzhalterVorgang(const cText, cNr: string; const oPlatzhalter: TPlatzhalterVorgang; const lDef: Boolean = false; const lRepa: Boolean = false): string |
Ersetzt Platzhalter im Text mit den geladenen Vorgang-Platzhaltern |
function GetPosVorb_ErlKto(oMyDB: TxDB; const cErlJahr, cManNr, cFiliale: string): string |
Gibt das Erlöskonto für eine Positionsvorbelegung zurück |
procedure ChangePosPreisFromLeistPreis2(oVorgang: TVorgang) |
Wechselt für alle Positionen auf den alternativen Leistungspreis 2 |
function Vorgang_ToXMLStr(oMyDB: TxDB; const cTable, cPosTable, cVorgNr: String): string |
Exportiert einen Vorgang als XML-String |
function Vorgang_ToDelArchiv(oMyDB: TxDB; const cTable, cPosTable, cVorgNr: String): Boolean |
Verschiebt einen Vorgang ins Löscharchiv |
function Vorgang_ToXMLFile(oMyDB: TxDB; const cFile, cTable, cPosTable, cVorgNr: String): Boolean |
Exportiert einen Vorgang in eine XML-Datei |
function XMLFile_ToVorgang(oMyDB: TxDB; const cData: String; var cNewNr, cOldNr: String): Boolean |
Importiert einen Vorgang aus einem XML-String/-Datei |
function DelArchivTo_Vorgang(oMyDB: TxDB; const cTabelle, cVorgang: String): String |
Stellt einen archivierten Vorgang wieder her |
function Vorgang_Runden_MengeInFak(oMyDB: TxDB; const cTabMain, cTabPos: string; nValue: double): double |
Rundet den Mengeneingabe-Faktor gemäß Tabelleneinstellung |
function Vorgang_Rohertrag(oMyDB: TxDB; const cDMSTyp, cVorgNr: String; nNettoBetrag: Double): String |
Berechnet den Rohertrag eines Vorgangs |
function Vorgang_Rohertrag_Ext(oMyDB: TxDB; const cDMSTyp, cVorgNr: String; nNettoBetrag: Double; lSollStunden: Boolean): string |
Berechnet den Rohertrag erweitert (mit Sollstunden) |
function VorgangFelder(cTyp: String; lPosition, lArtikel, lMaterial, lAuswertung, lMessen: Boolean; lSchiff: Boolean = False): String |
Gibt die aktiven Feldgruppen eines Vorgangstyps als String zurück (Überladung 1) |
function VorgangFelder(oMyDB: TxDB; cTyp: String; lPosition, lArtikel, lMaterial, lAuswertung, lMessen: Boolean; lSchiff: Boolean = False): String |
Wie oben, mit Datenbankzugriff (Überladung 2) |
function Vorgang_IstGesperrt(oMyDB: TxDB; const cTyp, cRef: string; const cFeld: string = 'a_nr'): boolean |
Prüft, ob ein Vorgang gesperrt ist (Überladung 1) |
function Vorgang_IstGesperrt(oMyDB: TxDB; const rDMS: TDMSType; const cRef: string; const cFeld: string = 'a_nr'): boolean |
Prüft Sperrung per DMS-Typ (Überladung 2) |
function Vorgang_FilterSperrung(oMyDB: TxDB; const cTyp, cRef: string; out cOffen, cGesperrt: string; const cFeld: string = 'a_nr'): boolean |
Gibt SQL-Filter-Strings für offene/gesperrte Vorgänge zurück |
function Vorgang_FilterSperrung_Offen(oMyDB: TxDB; const cTyp, cRef: string; out cOffen: string; const cFeld: string = 'a_nr'): boolean |
Gibt nur den Filter für offene (nicht gesperrte) Vorgänge zurück |
function Vorgang_UbernahmeMassen(oMyDB: TxDB; const cVonUid, cNachDmsTyp, cNachVorgNr, cNachUid: string): boolean |
Massenweise Positionsübernahme zwischen Vorgängen |
function Vorgang_GetMenge(oMyDB: TxDB; const cPosTable, cKeyField, cUID: String; out nUrmenge: Double; const cEigUID: String = ): Double |
Liest die aktuelle und Ursprungsmenge einer Position aus der Datenbank |
function Vorgang_CheckPosTyp(const cTyp: string): boolean |
Prüft, ob ein Positionstyp-Schlüssel gültig ist |
function Vorgang_HatReEmpfAdr(qVorgangData: TxFQuery): boolean |
Gibt True zurück, wenn der Vorgang eine Rechnungsempfänger-Adresse hat (Überladung 1) |
function Vorgang_HatReEmpfAdr(qVorgangData: TxQuery): boolean |
Wie oben, für TxQuery (Überladung 2) |
function Vorgang_AnzeigeReEmpf(oMyDB: TxDB; qMain: TxFQuery; const cMainTable: string; cAdressBez: string = ; lUseReportLang: boolean = True): string |
Gibt die anzuzeigende Rechnungsempfänger-Adresse als formatierten Text zurück (Überladung 1) |
function Vorgang_AnzeigeReEmpf(oMyDB: TxDB; qMain: TxQuery; const cMainTable: string; cAdressBez: string = ; lUseReportLang: boolean = True): string |
Wie oben, für TxQuery (Überladung 2) |
function Vorgang_PortoVerpackBerechnet(oMyDB: TxDB; const cDmsVon, cDmsSetzen, cNrSetzen: string): boolean |
Prüft, ob Porto/Verpackung bereits berechnet wurde und setzt Kennzeichen |
function VorgangVorb_Waehrung(oMyDB: TxDB; const cValue: string = '01'): string |
Gibt den Standardwährungsschlüssel für Vorgangsvorbelegung zurück |
function VorgangVorb_RechKreis(oMyDB: TxDB; const cValue: string = '01'): string |
Gibt den Standardrechnungskreis-Schlüssel zurück |
function VorgangVorbPos_VomLager(const nTokenPos: integer; const cLagStreck: string): string |
Gibt das Lager/die Strecke für eine Positionsvorbelegung zurück |
function Vorgang_VersandkostenMBW(oMyDB: TxDB; const cDmsTyp: string; const lGen: boolean; const cPsNr: string; const cPsVersand: string = ; const cPsZusatz: string = ): string |
Berechnet Versandkosten auf Basis des Mindestbestellwerts |
function Vorgang_PdfFile(oMyDB: TxDB; const cDmsTyp, cNr, cKdNr: string; out cPdfFile: string): boolean |
Ermittelt den Pfad zur archivierten PDF-Datei eines Vorgangs |
function Vorgang_PdfAsBase64File(oMyDB: TxDB; const cDmsTyp, cNr, cKdNr: string; out cBase64File: string): boolean |
Liefert die PDF-Datei als Base64-kodierten Pfad |
function Vorgang_PdfAsBase64Parts(oMyDB: TxDB; const cDmsTyp, cNr, cKdNr: string; const nPart: integer; out cBase64: string; out nParts: integer; nPartSize: integer = 0): boolean |
Liefert die PDF in Teilen als Base64 (mit KdNr, Überladung 1) |
function Vorgang_PdfAsBase64Parts(oMyDB: TxDB; const cDmsTyp, cNr, cKdNr: string; const nPart: integer; out cBase64: string; out nParts: integer; cPartSize: string): boolean |
Wie oben, Teilgröße als String (Überladung 2) |
function Vorgang_PdfAsBase64Parts(oMyDB: TxDB; const cDmsTyp, cNr: string; const nPart: integer; out cBase64: string; out nParts: integer; nPartSize: integer = 0): boolean |
Wie oben, ohne KdNr (Überladung 3) |
function Vorgang_PdfAsBase64Parts(oMyDB: TxDB; const cDmsTyp, cNr: string; const nPart: integer; out cBase64: string; out nParts: integer; cPartSize: string): boolean |
Wie oben, Teilgröße als String (Überladung 4) |
function Vorgang_PdfAsBase64(oMyDB: TxDB; const cDmsTyp, cNr: string; out cBase64: string): boolean |
Liefert die gesamte PDF als Base64-String |
function Vorgang_PosUebernommen(oMyDB: TxDB; const cVonDmsTyp, cVonNr, cPosUid: string): TVorgangPosOriginalListe |
Gibt eine Liste aller Vorgänge zurück, in die diese Position übernommen wurde |
function Vorgang_GetPosRef(oMyDB: TxDB; const cVonDmsTyp, cVonNr, cPosUid, cRefDmsTypen: string): TVorgangPosOriginalListe |
Gibt Referenzen einer Position auf andere DMS-Typen zurück |
function Vorgang_ArtBox(const cDMSTyp: string): string |
Gibt die Vorgangsart-Box (Auswahlstring) für einen DMS-Typ zurück |
function Vorgang_SummenEbene(const nEbene: integer): integer |
Validiert und normiert eine Summen-Ebene (1..VB_MAX_SummenEbenen) |
function Vorgang_SummenEbeneAusMenge(const nMenge: double): integer |
Berechnet die Summenebene aus einem Mengenwert |
function Vorgang_KalkAufschlagPos(const nSatz, nZwSumme, nMengeIn, nMengeInFak, nRabatt: double): double |
Berechnet den Aufschlagsbetrag für eine Position |
function Vorgang_SumPosText(const eTyp: TVB_PosType; const cLanguage: string): string |
Gibt den lokalisierten Standardtext für eine Summenposition zurück |
function Vorgang_SumPosTextZw(cLang: string = ): string |
Gibt den lokalisierten Text für Zwischensummen-Positionen zurück |
function Vorgang_SumPosTextTit(cLang: string = ): string |
Gibt den lokalisierten Text für Titelsummen-Positionen zurück |