BestPosBuch2() – Automatische Bestellrückstandsbuchung
Wird eine Bestell-Nr. übergeben, wird der entsprechende Bestell-Rückstand verbucht und ggf. die Restbestellung gelöscht, falls der entsprechende Parameter gesetzt wurde.
Wird keine Bestell-Nr. übergeben, wird eine Buchung ohne Rückstand durchgeführt und ggf. offene Rückstände aufgelöst, falls der entsprechende Parameter gesetzt wurde.
|
Parameter |
Beschreibung |
|---|---|
|
oDM:O |
Datamodul |
|
nLiefNr:N |
Lieferaten-Nummer |
|
nID:N |
ID der DAB035 |
|
cArtNr:C |
Artikelnummer (erforderlich, leer erlaubt, falls Bestell Nr./-Pos. übergeben wird) |
|
nZugMengeEK:N |
Zugangsmenge Wareneingang |
|
nZugMengeLAG:N |
Zugangsmenge Lager |
|
dZugDatum:D |
Zugangsdatum |
|
cLager:C |
Zugangslager, default = Default Lager für Rückstände |
|
cBestTermin:C |
Termin (im Format TT.MM.JJ oder KW.WW.JJ); default leer |
|
cBestKommiss:C |
Kommission; default leer |
|
cBelegNr:C |
Belegnummer; default leer |
|
lRueckAufloes:L |
Automatische Bestell. Rückstandsauflösung; default = false
|
|
lRestLoesch:L |
Rest-Bestellung Löschen; default = false |
|
lAbrufErh:L |
Abruf-Bestellung um Differenz erhöhen; default = false |
|
lKdAuftrAuloes:L |
Dialog "Kunden-Rückstände auflösen" anzeigen; default = false |
|
lEtikDruck:L |
Artikel-Etikette drucken; default = false |
|
aKomissDetail:A |
Detailierte Kommissionsnummer-Information (wichtig für Lagerplatzbuchung!) im Fomat {{Kommiss, Menge, Lagerplatz},..} default leer, d.h. schon gespeicherte Kommissionen in DAB035 |
|
dLiefDatum:D |
Lieferungsdatum, default = heute |
|
lProdFreigabe:L |
Produktions-Freigabe Dialog anzeigen; default = true |
|
lQuiet:L |
keine Meldungen anzeigen; default = false |
|
lResetTableStates:L |
Verwendete Tabellen nach dem Aufruf der Funktion auf ursprünglichen Stand zurück setzen; default = false |
Hinweis
lQuiet übersteuert nicht folgende Parameter welche ggf. wieder Meldungen und Dialoge anzeigen können
-
lRueckAufloes - Automatische Bestell. Rückstandsauflösung; default = Dialog anzeigen
-
lEtikDruck - Artikel-Etikette drucken; default = keine Etikette drucken
-
lProdFreigabe - Produktions-Freigabe Dialog; default = Dialog anzeigen
Rückgabewert
Alphanumerisch - Dispo-Nr.
Beispiel
| oDM, aKommiss, oDAB035, oDab735, cBestPosNr, nLifNr, cArtNr, cTermin |
oDM := CreateObject('TBeDBget'),
cArtNr := '1.4104 X14CRMOS1 ZS',
cBestPosNr := '100000 1',
nLifNr := 700002,
cTermin := 'KW.46.21',
aKommiss := {{'171717' , 1, ''}},
oDAB735 := DBGetTable(oDM, waDab735),
oDAB035 := DBGetTable(oDM, waDab035),
oDab035.IndexName := 'DAB03B', // BESTPOSNR;LIEFNR;TERM_INDEX
if not oDab035.CbFindKey({cBestPosNr}) then
writeln('Dab035 Datensatz nicht gefunden'),
abort(true),
endif,
startseq,
DBStartTrans(oDM.ADSConnection),
BestPosBuch2(oDM, nLifNr, oDAB035:ID, cArtNr, 1, 1, Date(),
'0', cTermin, '', 'BELEG123', , , , , , aKommiss, Date()),
DBGoBottom(oDab735),
DBEdit(oDab735),
oDAB735:MHD_DATUM := now(),
DBPost(odab735),
DBRollback(oDM.ADSConnection), // Änderungen zurücksetzen
//DBCommit(oDM.ADSConnection),
onerror,
DBRollBack(oDM.ADSConnection),
Meld(GetErrorText()),
stopseq,
Weitere Verknüpfungen