AufPosPost()
Speichern einer Auftragsposition
Die Funktion dient dem Speichern einer im Editiermodus befindlichen Auftragsposition. Diese muss zuvor von der Funktion AufPosEdit() in den Editiermodus versetzt worden sein.
Die Funktion analysiert die Veränderung im Datensatz und schreibt ggf. Terminraster, Statistik, Auftragskopfwerte, etc.
Die beiden Memory-Tabellen müssen vor Aufruf der Funktion erzeugt und an AufPosEdit() übergeben worden sein.
Wird lCheckVMENGE übergeben, muss auch oCalc320 übergeben werden! lCheckVMENGE = true führt alle Verfügbarkeitsprüfungen und Validierung der Auftragserfassung auf des Feld VMENGE aus !
Hinweis
Die Funktion sollte nicht mehr verwendet werden. Verwenden Sie stattdessen AufPosPost2()!
Parameter | Beschreibung |
---|---|
nOrderNo:N | Auftragsnummer |
nOrderPos:N | Auftragsposition |
oDab000:O | Tabellenobjekt DAB000 |
oDab050:O | Tabellenobjekt DAB050 |
oDab055:O | Tabellenobjekt DAB055 |
oDab010:O | Tabellenobjekt DAB010 |
oMem050:O | TMemCalcTable-Object |
oMem055:O | TMemCalcTable-Object |
oCalc000:O | Tabellenobjekt DAB000 für Kalkulationen |
oCalc020:O | Tabellenobjekt DAB020 für Kalkulationen |
oCalc040:O | Tabellenobjekt DAB040 für Kalkulationen |
oCalc055:O | Tabellenobjekt DAB055 für Kalkulationen |
oCalc035:O | Tabellenobjekt DAB035 für Kalkulationen |
oCalc062:O | Tabellenobjekt DAB062 für Kalkulationen |
oCalc210:O | Tabellenobjekt DAB210 für Kalkulationen |
oCalc240:O | Tabellenobjekt DAB240 für Kalkulationen |
oCalc255:O | Tabellenobjekt DAB255 für Kalkulationen |
oCalc310:O | Tabellenobjekt DAB310 für Kalkulationen |
oCalc410:O | Tabellenobjekt DAB410 für Kalkulationen |
oCalc510:O | Tabellenobjekt DAB510 für Kalkulationen |
oCalc520:O | Tabellenobjekt DAB520 für Kalkulationen |
oCalc610:O | Tabellenobjekt DAB610 für Kalkulationen |
oCalc710:O | Tabellenobjekt DAB710 für Kalkulationen |
oCalc720:O | Tabellenobjekt DAB720 für Kalkulationen |
oCalc730:O | Tabellenobjekt DAB730 für Kalkulationen |
oCalc320:O | Tabellenobjekt DAB320 für Kalkulationen; default = nil |
lCheckVMENGE:L | VMENGE überprüfen; default = false |
oCalc160:O | Tabellenobjekt DAB160 für Kalkulationen; default = nil |
lVarPriceCalc:L | Varianten/Set-Preis neu berechnen; default = false |
lQuiet:L | Rückfragen wie "Menge <0> bestätigen ?" oder "Abweichung von Verpackungs-Einheit bestätigen ?" unterdrücken; default = true |
lCheckRMENGE:L | RMENGE überprüfen; default = false |
lProdOrdPLRebuild:L | Zugehörige Produktions-Stückliste neu aufbauen |
Rückgabewert
Logisch / Boolean - Post erfolgreich
Beispiel
| oDab000:DB := 'waDAB000, 1', oDab050:DB := 'waDAB050, DAB051', oDab055:DB := 'waDAB055, DAB056',
oDab010:DB := 'waDAB010, DAB011', oCalc062:DB := 'waDAB062, DAB063', oCalc000:DB := 'waDAB000, 1',
oCalc520:DB := 'waDAB520, DAB521', oCalc020:DB := 'waDAB020, DAB021', oCalc310:DB := 'waDAB310, DAB311',
oCalc510:DB := 'waDAB510, DAB511', oCalc710:DB := 'waDAB710, DAB711', oCalc040:DB := 'waDAB040, DAB041',
oCalc110:DB := 'waDAB110, DAB111', oCalc130:DB := 'waDAB130, DAB131', oCalc055:DB := 'waDAB055, DAB056',
oCalc035:DB := 'waDAB035, DAB036', oCalc210:DB := 'waDAB210, DAB211', oCalc240:DB := 'waDAB240, DAB241',
oCalc255:DB := 'waDAB255, DAB256', oCalc410:DB := 'waDAB410, DAB411', oCalc610:DB := 'waDAB610, DAB611',
oCalc720:DB := 'waDAB720, DAB721', oCalc730:DB := 'waDAB730, DAB731', oMem050, oMem055, nNummer, nPos |
oMem050 := CreateObject('TMemCalcTable'),
oMem055 := CreateObject('TMemCalcTable'),
nNummer := 123456,
startseq,
DBStartTrans(),
nPos := AufPosNeu(nNummer, 'BSP_ART', oDab000, oDab050, oDab055,
oDab010, oCalc000, oCalc020, oCalc040, oCalc062,
oCalc110, oCalc130, oCalc310, oCalc510, oCalc520,
oCalc710, true, oMem050, oMem055),
if nPos = 0 then
DBRollBack(),
else
if DBState(oDab055) = dsInsert then
oDab055:BMENGE := 10,
oDab055:VMENGE := 5,
if AufPosPost(nNummer, nPos, oDab000, oDab050, oDab055, oDab010,
oMem050, oMem055, oCalc000, oCalc020, oCalc040,
oCalc055, oCalc035, oCalc062, oCalc210, oCalc240,
oCalc255, oCalc310, oCalc410, oCalc510, oCalc520,
oCalc610, oCalc710, oCalc720, oCalc730) then
DBCommit(),
else
DBRollBack(),
endif,
endif,
endif,
onerror,
DBRollBack(),
Meld(GetErrorText()),
stopseq,