Beleg Bedingung Reservierungsregel Verwaltungsregel 2 - Auftrag Sonstige Aufträge Auftrag Lieferung Auftrag Muster Auftrag Lieferung Leihe 10 - Fertigungsauftrag Sonstige Arbeitsgänge Fertigungsauftrag Abgang FA Arbeitsgang Fremdbearbeitung Verbrauch Fremdbearbeitung Abgang Auftrag zur Fremdbearbeitung 36 - Auftrag zur Fremdbearbeitung Verbrauch Fremdbearbeitung Abgang Auftrag zur Fremdbearbeitung
Hinweis
Die Verwaltungsregel wird lediglich zur Bestimmung der zu verwendenden Lagerplätze verwendet.
Bewegung Beleg Bedingung Verwaltungsregel 1 - Sonstiger Zugang 19 - Sonstiger Zugang Sonstiger Zugang 1 - Sonstiger Zugang 2 - Baugruppe Erzeugnis Sonstiger Zugang 1 - Sonstiger Zugang 32 - Demontage Komponente Sonstiger Zugang 3 - Wareneingang 6 - Wareneingang Wareneingang 5 - Wareneingang FA 15 - Rückmeldung Fertigung Zugang FA 7 - Lagerplatzänderung 29 - Bestandsänderung Lagerplatz Subunternehmer & Bewegung + Zugang Transfer Sonstiger Lagerplatz & Bew + Bestandsänderung 8 - Qualitätskontrolle 28 - Qualitätskontrolle Qualitätskontrolle 9 - Statusänderung 29 - Bestandsänderung Bew + Bestandsänderung 12 - Retoure Lieferung 13 - Retoure Kunde Retoure Lieferung 12 - Retoure Lieferung 18 - Gutschrift Kunde Retoure Lieferung 13 - Inventur 19 - Sonstiger Zugang 14 - Standortübergreifender Transfer 29 - Bestandsänderung Bew + Zugang Transfer 6 - Wareneingang Wareneingang für Fremdbearbeitung 18 - Retoure Leihe 13 - Retoure Kunde Retoure Leihe 19 - Materialrückgabe 12 - Rückmeldung Material Materialrückgabe 12 - Neuaufteilung 29 - Bestandsänderung Bew + Bestandsänderung 22 - Einlagerungsplan Originalbeleg Originalbeleg 16 - Retoure Wareneingang Fremdbearbeitung 13 - Retoure Kunde Retoure Lieferung 34 - Analyseanforderung 29 - Bestandsänderung 16 - Wareneingang Fremdbearbeitung
Bewegung | Beleg | Bedingung | Abgangsregel | Verwaltungsregel |
2 - Sonstiger Abgang | 20 - Sonstiger Abgang |
| Interne Bew | Sonstiger Abgang |
2 - Sonstiger Abgang | 31 - Baugruppe | Komponente | Interne Bew | Sonstiger Abgang |
2 - Sonstiger Abgang | 32 - Demontage | Erzeugnis | Interne Bew | Sonstiger Abgang |
4 - Lieferung | 4 - Lieferung |
| Versand | Lieferung |
4 - Lieferung | 5 - Rechnung |
| Versand | Lieferung |
6 - Abgang FA | 12 - Rückmeldung Material | Arbeitsgang Subunternehmer | Verbrauch Subunternehmer | Abgang Auftrag zur Fremdbearbeitung |
Sonstige Arbeitsgänge | Verbrauch Material | Abgang FA | ||
7 - Lagerplatzänderung | 29 - Bestandsänderung | Lagerplatz Subunternehmer & Bewegung - |
| Abgang interner Transfer |
Sonstiger Lagerplatz & Bew - |
|
| ||
9 - Statusänderung | 29 - Bestandsänderung | Bew - |
|
|
13 - Retoure Wareneingang | 13 - Retoure Lieferung |
| Versand | Retoure Wareneingang |
13 - Inventur | 20 - Sonstiger Abgang |
|
|
|
14 - Standortübergreifender Transfer | 29 - Bestandsänderung | Bew - |
| Abgang interner Transfer |
17 - Retoure Leihe | 4 - Lieferung |
| Versand | Lieferung Leihe |
20 - Lieferung für Subunternehmer | 4 - Lieferung |
| Versand Subunternehmer | Lieferung für Subunternehmer |
12 - Neuaufteilung | 29 - Bestandsänderung | Bew - |
|
|
24 - Serviceanfrage | 33 - Serviceanfrage |
| Interne Bew | Serviceanfrage |
25 - Dispo | 34 - Dispositionsplan | Lagerplatz Subunternehmer | Versand Subunternehmer | Dispo |
Sonstige Lagerplätze | Interne Bew | Dispo | ||
29 - Abgang Fremdbearbeitung | 6 - Wareneingang |
| Verbrauch Subunternehmer | Abgang Auftrag zur Fremdbearbeitung |
32 - Retoure Wareneingang für Subunternehmer | 8 - Retoure Lieferant |
| Retoure Wareneingang für Subunternehmer |
In der Maske der Belegpositionen sind (verborgen) diejenigen Felder zu definieren, mit denen der Reservierungsfilter für die Zeile verwaltet wird. Diese Felder sind wie folgt benannt:
Tabellenendevariable (NBLIG)
Trigger | Aktion | Bezeichnung |
Button | SAISTOALL | Erfassung der Reservierungen |
- zu bereits angelegten Positionen | ||
- muss in einer stabilen Situation aufgerufen werden |
Trigger | Aktion | Bezeichnung |
Button | SAIALLFIL | Erfassung des Reservierungsfilters |
Verarbeitung TRTSTOALLA (Zusatz zu TRTSTOALL: Erfassung der Reservierungen)
Verwaltung der Interaktion zwischen einer Belegposition und der manuellen Reservierungserfassung.
Diese Verarbeitung muss vom Entwickler der ursprünglichen Funktion aktualisiert werden. Diese wird mithilfe der Maskenabkürzung (LABR) ermittelt, die der Aktion SAISTOALL (Reservierungen erfassen) als Parameter übergeben wird.
Funktionalitäten:
- Belegung der Erfassungsmaske STOALL: CHARG_PARAM
- Durchführung der Prüfungen vor dem Speichern der erfassten Daten: AVANT_ENR
- Durchführung der Aktualisierungen nach dem Speichern der erfassten Daten: APRES_ENR
Die zu verwendenden Komponenten finden sich in der Verarbeitung STKALL
In den Tabellen der Belegköpfe
In den Maskensteuerungen für Zugänge
In der Maske der Belegpositionen
Felder, die unterstrichen angezeigt werden, sind Mussfelder des Belegs. Die anderen Felder sind auch dann, wenn gemäß dem Artikel ein Wert erfasst werden muss und kann, nur im Auskunftsfenster obligatorisch.
Felder, die fett angezeigt werden, sind Eingabefelder, die aber in der Maskensteuerung verborgen geschaltet werden können.
Felder, die kursive Schrift angezeigt werden, können in der Maskensteuerung verborgen geschaltet werden.
WSTOSAI : Indikator für die zu erfassenden Bestandsfelder.
Trigger | Aktion | Bezeichnung |
Auswahl | STKSELQUA | Auswahl eines Lagerplatzes vom Typ 'Zur Einlagerung' |
Prüfung | STKCTRSRG | Prüfung der Existenz und des Typs des Lagerplatzes |
Nach der Änderung | STKMODSRG | Der erfasste Lagerplatz ersetzt die Lagerplätze der Auskunft |
Trigger | Aktion | Aufruf Verarbeitung / Bezeichnung |
Init-Button | STD | Call STKINIBTN From STKENT |
Zur Anzeige je nach Buttons | ||
- Auskunft oder Änderung | ||
- Chargendaten | ||
- Chargenzusatz | ||
Prüfung | STD | Call STKCTRNBLIG From STKENT |
Verwaltung von gelöschten Positionen | ||
Vor der Position | LECFICENT | Lesen der Bestandstabellen |
Nach der Position | SAISTOENT | Öffnung Fenster 'Bestandsauskunft' |
SAIENTLOT | Öffnung Fenster 'Chargenzusatz' | |
Button 2 | ENTRCLI | Genehmigung zum Öffnen des Auskunftsfensters: GOUVENT = 16384 |
SAISTOENT | Öffnung Fenster 'Bestandsauskunft' | |
Button 3 | STKINFLOT | Chargendaten |
Button 4 | STD | GOUVLOT = GOUVLOT-mod(GOUVLOT,2) |
GOUVENT = 1 | ||
SAIENTLOT | Öffnung Fenster 'Chargenzusatz' | |
Button 5 | SAISTOENTM | Öffnen Fenster 'Bestandsänderung' |
Siehe Objektaktion 'Vor Button' $AB5_NBLIG |
Trigger | Aktion | Bezeichnung |
Nach der Änderung | INIZONENT | - Lesen der Tabellen Artikel und Bestand |
- Zuweisung der Standardwerte | ||
- Deaktivierung der nicht benötigten Felder |
Trigger | Aktion | Bezeichnung |
Auswahl | STKSELUOM | Auswahl der Einheit |
Nach der Änderung | STD | - Aktualisierung PAC/LE-Faktor |
- Aktualisierung LE-Menge | ||
- Falls der Koeffizient PCUSTUCOE verändert werden kann, wird er sensitiv geschaltet |
Trigger | Aktion | Bezeichnung |
Nach der Änderung | STD | - Aktualisierung LE-Menge |
Trigger | Aktion | Bezeichnung |
Nach der Änderung | STD | - Aktualisierung LE-Menge |
Trigger | Aktion | Bezeichnung |
Auswahl | STKSELSTA | - Statusauswahl |
Prüfung | STKCTRSTA | - Statusprüfung |
Trigger | Aktion | Bezeichnung |
Vor der Erfassung | STKSUGTLO | - Vorschlag Lagerplatztyp |
Parameter LOCSEQ = [M]WLOCSEQ(nolign-1) | ||
Auswahl | STKSELTLO1 | - Auswahl Lagerplatztyp |
Prüfung | STKCTRTLO | - Prüfung Lagerplatztyp |
Nach der Änderung | RAZLOC | - Der Inhalt des Feldes LOC wird gelöscht |
Trigger | Aktion | Bezeichnung |
Vor der Erfassung | STKSUGEMP | - Vorschlag Lagerplatz |
Parameter LOCSEQ = [M]WLOCSEQ(nolign-1) | ||
Auswahl | SAIEMPLIB | - Auswahl Lagerplatz |
Prüfung | STKCTREMP | - Prüfung Lagerplatz |
Trigger | Aktion | Bezeichnung |
Auswahl | STKSELBPLN | - Auswahl Lieferantencharge |
Nach der Änderung | STKAMLOF | - Chargenzuweisung, falls Übernahme der Lieferantencharge |
Trigger | Aktion | Bezeichnung |
Init-Button | STKIBLOT | Hinzufügen von Buttons gemäß Bedingungen |
- Leere Charge | ||
- Chargendaten | ||
Prüfung | STKCTRLOT | - Prüfung, ob leere Chargen erlaubt sind |
- Prüfung, ob die Charge eindeutig sein muss | ||
Nach der Änderung | STKAMLOT | - Erneute Berechnung der Subcharge |
Button 1 | STKSELLOT | - Auswahl einer Charge |
Button 2 | LOTNUMCPT | - Nächste Chargennummer (Nummernkreis) |
Button 3 | LOTBLANC | - Leere Charge: Das Feld 'GESLOT' wird mit "B" belegt |
Button 4 | STKINFLOT | - Chargendaten ('leere Charge', 'Nummernkreis', 'Belegnummer') |
Trigger | Aktion | Aufruf Verarbeitung |
Prüfung | STD | - Call STKCTRNBSLO From STKACT |
Die Gültigkeit der Subchargennummer wird geprüft |
Trigger | Aktion | Aufruf Verarbeitung |
Button 2 | STD | - Call RECLASTLO From STKLIB |
Berechnung der letzten Subchargennummer | ||
Prüfung | STD | - Call STKCTRSLO From STKACT |
Die Zuweisung der letzten Subcharge wird geprüft |
Trigger | Aktion | Bezeichnung |
Prüfung | STKCTRSER | - Prüfung der Seriennummer |
Auswahl | STKSELSERN | - Auswahl der Seriennummer |
If !clalev[ENTW] Local Mask STOENTW [ENTW]
[M:ENTW]WZONPCU = "PCU"
[M:ENTW]WZONQUC = "QTYPCU"
[M:ENTW]WZONCCS = "PCUSTUCOE"
[M:ENTW]WZONQUS = "QTYSTU"
"Raz [ENTW]" ist zu vermeiden. Die neuen Belege können per Tunnel aus dem Einlagerungsplan geöffnet werden, zu welchem bereits Daten in STOENTW vorhanden sein können.
If !clalev[STW] Local Mask STOWORK [STW]
Gosub STK_INILOC From STKLOC
Call VIREBOUT(CHAINE,"A") From GOBJET
Call DELSTOENTW (-1,-1,"XXX",1) From STKENT
Call STKDISCOL From STKECR
Call RECSTO_F From STKECR
Wenn bestimmte Daten für die Belegposition keine Bedeutung besitzen, werden sie durch das Zeichen '$' ersetzt.
Call STJSTOENTW From STKENT
Call DELSTOENTW(-1, -1, "XXX", 1) From STKENT
Call DELSTOENTW(-1, -1, "XXX", 1) From STKENT
STA, LOCTYP, LOC, BPSLOT, LOT, NBSLO, SLO, SLOF, GESLOT, SERNUM, SERNUMF, PALNUM, CTRNUM, PRIORD, MVTDES, WSTOSEQ.
Dann erneute Initialisierung.
Call OUVENT From STKENT
Call OUVENT From STKENT
n = Nummer des Buttons "Auskunft ändern".
GOUVENT=2
n = Nummer des Buttons "Auskunft ändern".
mkstat = 4
Call CTLSTOENT From STKECR
Call CTLSTOENT From STKECR
If SIGN=1
Call ALISTOWORK(2,[M:XXX]WSTOSEQ(NOL),LQTA,LSHT,LRET) From STKINT
Call MAJ_STOCK From STKMAJ
Endif
Local Char PARAM(GLONVCR)(1..4) , VALEUR(10)
PARAM(1) = [M:XXX]STOFCY
PARAM(2) = num$([M:XXX]VCRTYP)
PARAM(3) = [M:XXX]VCRNUM
PARAM(4) = [M:XXX]VCRNUM2
Call TRAITE_CHAR(VALEUR,PARAM,"ISTOLBE","SUBSLP","",4,"SPESLP") From GTRAITE
Call REGFROMENT (0,"XXX","[M:XXX]CREFLG(I)=0","ITMREF",[M:XXX]STOFCY) From TRTSHTCOM
Local Char PARAM(GLONVCR)(1..4) , VALEUR(10)
PARAM(1) = [M:XXX]STOFCY
PARAM(2) = num$([M:XXX]VCRTYP)
PARAM(3) = [M:XXX]VCRNUM
PARAM(4) = [M:XXX]VCRNUM2
Call TRAITE_CHAR(VALEUR,PARAM,"ISTOLBE","SUBSLP","",4,"SPESLP") From GTRAITE
Call REGFROMENT (0,"XXX","[M:XXX]CREFLG(I)=0","ITMREF",[M:XXX]STOFCY) From TRTSHTCOM
Call DELSTOENTW (-1,-1,"XXX",1) From STKECR
Verarbeitung TRTSTOENTA (Zusatz zu TRTSTOENT: Erfassung der Zugänge)
Verwaltung der Interaktion zwischen einer Belegposition und der detaillierten Zugangserfassung.
Diese Verarbeitung muss vom Entwickler der ursprünglichen Funktion aktualisiert werden. Diese wird mithilfe des Bewegungstyps (LTYP) und der Maskenabkürzung (LABR) ermittelt, die der Aktion SAISTOENT (Zugänge erfassen) als Parameter übergeben wird.
Funktionalitäten:
Im Unterprogramm CTR_COHERENCE_LIG
GOUVENT > 2: Die Position ist unvollständig, im Beleg wird das Auskunftsfenster geöffnet.
GOUVENT = 1: Der Chargenzusatz muss geöffnet werden, denn die benötigten Daten wurden nicht erfasst.
Im Unterprogramm INIT_GOUVLOT
bit 8 (128) = Ablaufdatum muss erfasst werden
bit 1 = 0: Das Öffnen des Chargenzusatzes wird erzwungen, d. h. das Fenster wird geöffnet, sofern keine Rubrik des Chargenzusatzes erfassbar ist.bit 1 = 1: Das Chargenzusatzfenster wird nur geöffnet, wenn dies notwendig ist, d. h. bei einer nicht vorhandenen oder nicht erfassten Charge.
In den Tabellen der Belegköpfe
In den Maskensteuerungen für Abgänge
Im aufrufenden Objekt
In der Aktion OUVRE
In der Maske der Belegpositionen
Wiederholung
Erfasste, aber nicht angelegte Position: [M]CREFLG(nolign-1)=0
Bereits angelegte Position: [M]CREFLG(nolign-1)<>0
Achtung
Wenn eine Belegposition erfasst wurde (= das Zeilenende erreicht ist), können in den Feldern Charge, Subcharge, Serie, Lagerplatz, Status keine Eingaben mehr gemacht werden. Nur die Menge kann dann noch erfasst werden.
Trigger | Aktion | Aufruf Verarbeitung / Bezeichnung |
Vor der Position | STD | Call INIZONSOR From STKECR |
Prüfung | STD | Call DELSTOSORW From STKSOR |
|
| - im Fall, dass eine in Anlage befindliche Position gelöscht wird |
Init-Button | STD | GOUVSOR=1 |
Button | SAISTOSOR | Erfassung der Abgänge |
|
| - zu einer erfassten, aber nicht angelegten Position |
|
| - zu einer auf einem freigegebenen Beleg erfassten, jedoch nicht freigegebenen Position |
Button | SAISTOSORM | Änderung der Abgänge |
|
| - zu einer auf einem nicht freigegebenen Beleg erfassten Position |
|
| - zu einer auf einem freigegebenen Beleg erfassten freigegebenen Position |
|
| Diese Aktion darf nur in einer stabilen Situation aufgerufen werden |
Nach der Position | SAISTOSOR | Erfassung der Abgänge |
|
| Siehe Objektaktion 'Vor Feld' $AAPRES_NBLIG |
Trigger | Aktion | Aufruf Verarbeitung |
Nach der Änderung | STD | Call INIZONSOR From STKECR |
|
| Call STKINIEMPS From STKLOC |
Trigger | Aktion | Bezeichnung |
Auswahl | STKSELSTA | Auswahl Status |
Prüfung | STKCTRSTA | Prüfung Status |
Trigger | Aktion | Bezeichnung |
Auswahl | STKSELEMP | Auswahl Lagerplatz |
Prüfung | STKCTREMPS | Lagerplatzprüfung |
Trigger | Aktion | Bezeichnung |
Auswahl | STKSELLOT | Chargenauswahl |
Prüfung | STKCTRLOTS | Chargenprüfung |
Trigger | Aktion | Bezeichnung |
Prüfung | STKCTRSLOS | Prüfung Subcharge |
Trigger | Aktion | Aufruf Verarbeitung / Bezeichnung |
Nach der Änderung | STD | Call CTLSORSER From STKSOR |
|
| Seriennummernprüfung und Berechnung der letzten Seriennummer |
If !clalev[ALP] Local Mask ALLPAR [ALP]
If !clalev[SOW] Local Mask STOSORW [SOW]
If !clalev[STW] Local Mask STOWORK [STW]
Vor Gosub LIENS From TABLEAUX
Call RAZSTOSORW From STKSOR
Nach Gosub LIENS From TABLEAUX
Call ETAZONSOR From STKECR
Call RECSTOSOR From STKECR
Call RAZSTOSORW From STKSOR
Call RAZSTOSORW From STKSOR
- zu einer erfassten, jedoch nicht angelegten Position, oder zu einer angelegten Position (Beleg mit Freigabe, nicht freigegeben)
Call OUVSOR From STKSOR
Call CTLSTOSOR From STKECR
Call CTLSTOSOR From STKECR
Call ENRSTOALL From STKALL
Call ALISTOWORK From STKINT (Ursprung = Maske STOSORW)
Call DELSTOSORW From STKECR (mit Zeilennummer =-1)
Verarbeitung TRTSTOSORA (Zusatz zu TRTSTOSOR: Erfassung der Abgänge)
Verwaltung der Interaktion zwischen einer Belegposition und der detaillierten Bestandserfassung.
Diese Verarbeitung muss vom Entwickler der ursprünglichen Funktion aktualisiert werden. Diese wird mithilfe der Maskenabkürzung (LABR) ermittelt, die der Aktion SAISTOSOR (Abgänge erfassen) als Parameter übergeben wird.
Funktionalitäten:
Beleg mit Freigabe, jedoch nicht freigegeben
Die Reservierungen der Originalbelegposition löschen: DELALL From STKALL
Die Reservierungen der Originalbelegposition reduzieren: DIMALL From STKALL
Die Reservierungen der Zielbelegposition generieren: GENSTOALL From STKALL
Prüfung der Abgangsmenge: CTLALL From STKALL
Die Reservierungen der Belegposition übertragen: CHGALL From STKALL
Beleg ohne Freigabe
Die Reservierungen der Originalbelegposition löschen: DELALL From STKALL
Die Reservierungen der Originalbelegposition reduzieren: DIMALL From STKALL
Die Reservierungen der Zielbelegposition generieren: GENSTOALL From STKALL
Belegung der Schnittstellenmaske für die Bestandsaktualisierung: ALISTOWORK From STKINT
Aktualisierung der Bestände: MAJ_STOCK From STKMAJ
Prüfung der Abgangsmenge: CTLALL From STKALL
Die Reservierungen der Belegposition übertragen: CHGALL From STKALL
Belegung der Schnittstellenmaske für die Bestandsaktualisierung: ALISTOWORK From STKINT
Aktualisierung der Bestände: MAJ_STOCK From STKMAJ
Belege können mit dem Button auf dem Abgangsbeleg oder automatisch per Verarbeitung freigegeben werden.
Hierfür sind lediglich die folgenden Unterprogramme aufzurufen:
Call ALISTOWORK From STKINT (Ursprung = Maske STOALL)
Call MAJ_STOCK From STKMAJ
Die Bestandsaktualisierung wird in einer spezifischen Einlagerungsmaske durchgeführt: STOWORK [STW]. Daher muss eine Belegungsschnittstelle für diese Maske verwendet werden.
Die Daten dieser Schnittstellenverarbeitung stammen aus:
Die für die Bestandsaktualisierung notwendigen Daten werden in der Maske STOWORK belegt.
Call ALISTOWORK From STKINT
Call MAJ_STOCK From STKMAJ
Zugänge
Negative Abgänge
Lagerplatzänderung
- Anlage
Bewegung | MAJTYP | MAJCOD | Menge | STOCOU | LOC | LOCDES | Sonstige Felder |
Zugang | E | C | + |
| Zugang |
| Zugang |
Abgang - | S | C | - |
| Zugang |
| Zugang |
Änderung Lagerplatz | C | C | + | Abgang | Abgang | Zugang | Zugang |
Lagerplatzänderung --> negative Bewegung in LOC, positive Bewegung in LOCDES
- Storno
Man spricht von den Ursprungsbewegungen
Bewegung | MAJTYP | MAJCOD | Menge | STOCOU | LOC | LOCDES | Sonstige Felder |
Zugang | E | A | + |
| Zugang |
| Zugang |
Abgang - | S | A | - |
| Zugang |
| Zugang |
Änderung Lagerplatz | C | A | + | Zugang | Abgang |
| Abgang |
Lagerplatzänderung --> positive Bewegung in LOC, negative Bewegung auf dem zum Zugangsbestand gefundenen Lagerplatz
Abgänge
Negative Zugänge
Lagerplatzänderung
- Anlage
Bewegung | MAJTYP | MAJCOD | Menge | STOCOU | LOC | LOCDES | Sonstige Felder |
Abgang | S | C | + | Abgang | Abgang |
| Abgang |
Zugang - | E | C | - | Abgang | Abgang |
| Abgang |
Änderung Lagerplatz | C | C | + | Abgang | Abgang | Zugang | Zugang |
Lagerplatzänderung --> negative Bewegung in LOC, positive Bewegung in LOCDES
- Storno
Man spricht von den Ursprungsbewegungen
Bewegung | MAJTYP | MAJCOD | Menge | STOCOU | LOC | LOCDES | Sonstige Felder |
Abgang | S | A | + |
| Abgang |
| Abgang |
Zugang - | E | A | - |
| Abgang |
| Abgang |
Änderung Lagerplatz | C | A | + | Zugang | Abgang |
| Abgang |
Lagerplatzänderung --> positive Bewegung in LOC, negative Bewegung auf dem zum Zugangsbestand gefundenen Lagerplatz
Die Bewegungstypen entsprechen denen der Abgangsflüsse
WAIFLG = 1
Bewegung | MAJTYP | MAJCOD | Menge |
Abgang | S | A | + |
Zugang - | E | A | + |
Änderung Lagerplatz | C | A | - |
Danach klassische Verarbeitung mit WAIFLG = 0 (Ausgleich der ausgesetzten Bewegungen)
Unterprogramm STOCKALG der Verarbeitung STKALL
Das Ergebnis wird in der Arbeitsmaske ALLPAR als Tabelle gespeichert, die die zu reservierenden oder abzugehenden Bestandspositionen umfasst.
Dieser Algorithmus nutzt zusätzlich die Reservierungs- und Verwaltungsregeln.
Belege, die lediglich für Reservierungen benötigt werden (Aufträge, Fertigungsaufträge und Aufträge zur Fremdbearbeitung), weisen andere Status auf als die anderen Belege:
Die zulässigen Status sind in der Reservierungsregel definiert. Ist keine solche Regel vorhanden, wird lediglich Status A berücksichtigt.
Die zulässigen Status / Substatus sind in der Verwaltungsregel definiert.
Reservierungs- und Abgangsregel
Die verwendete Reservierungs- oder Abgangsregel ist diejenige, die im Datenblatt Kategorie-Standort oder durch die Artikelkategorie festgelegt ist – je nachdem, welche Entsprechungen in den Dokumentationen "Reservierungsparameter" und "Abgangsparameter" definiert wurden.
Ist zum Tupel Artikel-Dokument keine Reservierungsregel vorhanden, so kommen die folgenden Prinzipien zum Tragen:
Verwaltungsregel
Die verwendete Verwaltungsregel ist diejenige, die im Datenblatt Kategorie-Standort oder durch die Artikelkategorie für den zu verarbeitenden Bewegungstyp und den erfassten Bewegungscode festgelegt ist (sofern vorhanden).
Ist keine besondere Verwaltungsregel vorhanden, wird die Standardregel für den zu verarbeitenden Bewegungstyp verwendet.
Für Belege, die sich nicht auf Abgänge beziehen, gibt es keine Verwaltungsregeln. Solche Belege werden also gemäß den in der Dokumentation "Reservierungsparameter" festgelegten Entsprechungen einen Bewegungstyp zugeordnet.
Verwendete Einheiten
Einheiten der Bestandspositionen:
Bei Aufträgen, Lieferungen und Rechnungen:
Bei Lieferantenretouren:
Zu Grunde liegendes Prinzip:
Die betreffenden Bestandspositionen werden gemäß der Reservierungs- und der Verwaltungsregel in die Maskentabelle ALLPAR geladen.
Es wird die der Reservierungsregel zugeordnete generierte Verarbeitung ausgeführt. Diese führt eine Auswahl und eine Klassifizierung der Bestandspositionen der Tabelle ALLPAR
durch.
Die Menge der Bestandspositionen der Tabelle werden per Reservierung oder Abgang verbraucht.
Charge
Ist die Charge im Reservierungsfilter angegeben, wird ein exklusiver Filter auf diesen oder auf dessen Präfix gesetzt (falls *) und die Charge als Fehlcharge gespeichert.
Status
Sind die Status im Reservierungsfilter angegeben, wird ein exklusiver Filter auf diesen oder auf dessen Präfix gesetzt (falls *).
Sonst wird bei Belegen, die nicht zu Aufträgen, FA oder Aufträgen zur Fremdbearbeitung gehören, ein Filter auf die per Verwaltungsregel erlaubten Substatus gelegt.
Wenn zu diesem Zeitpunkt noch kein Filter auf den Status liegt,
es sich um einen Auftrag, FA oder Auftrag zur Fremdbearbeitung handelt und eine Reservierungsregel vorhanden ist, wird ein Filter auf die durch diese Regel erlaubten Status gelegt.
Einheit
Ist eine Reservierungsregel vorhanden, wird ein Filter auf die Einheiten und Koeffizienten gelegt, die bei Anwendung dieser Regel erlaubt sind.
Lagerplätze
Filter auf die internen Lagerplätze.
Je nach Parametrierung des Algorithmus Berücksichtigung von auf Lagerung wartenden Lagerplätzen und Subunternehmerlagerplätzen.
Ist der Lagerplatz im Reservierungsfilter angegeben, wird ein exklusiver Filter auf diesen oder auf dessen Präfix gesetzt (falls *).
Falls Reservierungsregel
mit Lagerplatzfilter
und falls FA oder Rückmeldung zu FA und Arbeitsplatzlagerplatz, Aufnahme des Lagerplatzes in den Filter. Wenn es sich um einen Exklusivlagerplatz handelt, wird er im Fehlteilstandort gespeichert.
Falls Artikellagerplatz, Aufnahme des Lagerplatzes in den Filter. Wenn es sich um einen Exklusivlagerplatz handelt, wird er im Fehlteilstandort gespeichert.
Andernfalls wird der Filter gelöscht.
Andernfalls wird der Filter gelöscht.
Falls Reservierungsregel, Lesen der Chargen in der in der Reservierungsregel definierten Reihenfolge (chargenweise, FIFO, FEFO, LIFO).
Andernfalls Lesen der Chargen in der FIFO-Reihenfolge.
Zu jeder Charge mit verfügbarem Bestand mit einem der zulässigen Status werden die Bestandspositionen gelesen, wobei die Filter auf die Status, Einheiten und Lagerplätze berücksichtigt werden.
Zu jeder Bestandsposition mit verfügbarem Bestand werden die Positionseigenschaften in der Tabelle der betreffenden Positionen belegt.
Auswahl und Klassifizierung der betreffenden Bestandspositionen
Fall eine Reservierungsregel vorhanden ist, wird die ihr zugeordnete generierte Verarbeitung ausgeführt.
Andernfalls wird die im eigentlichen Algorithmus definierte Standardverarbeitung ausgeführt.
Mit dieser Verarbeitung wird geprüft, ob die einzelnen Bestandspositionen zur Reservierungsregel kohärent sind. Weiterhin wird den Positionen ein entsprechender Klassifizierungscode zugewiesen.
Diese Positionen werden anschließend nach diesem Klassifizierungscode sortiert.
Verbrauch dieser Bestandspositionen
Die Menge der Bestandspositionen der Tabelle werden per Reservierung oder Abgang verbraucht.
Dieses Dokument soll den Benutzer bei der Implementierung von Zusatzfeldern in den Tabellen STOJOU und / oder STOCK unterstützen, von der Erfassung in den verschiedenen Masken bis zum Speichern in den Tabellen.
Mit den einem Zugangsfluss zugeordneten Eingabepunkten können neue Felder in den Tabellen STOJOU und STOCK verwaltet werden.
Mit den anderen Flüssen (Abgang, Bestandsänderung) zugeordneten Eingabepunkten können neue Felder in der Tabellen STOJOU verwaltet werden.
Betroffene Masken:
Die neuen Felder müssen in diesen unterschiedlichen Masken und (mit demselben Namen) in die Tabelle STOJOU und / oder STOCK hinzugefügt werden.
Zu verwendende Eingabepunkte:
DOC_ENTW = Maske Belegposition --> Maske STOENTW
STJ_ENM = Tabelle STOJOU --> Maske STOENTM
ENTW_ENT = Maske STOENTW --> Maske STOENT
ENT_ENTW = Maske STOENT --> Maske STOENTW
ENTW_STW = Maske STOENTW --> Maske STOWORK
und Maske STOENTM --> Maske STOWORK
Betroffene Masken:
Die neuen Felder müssen in diesen unterschiedlichen Masken und (mit demselben Namen) in die Tabelle STOJOU hinzugefügt werden.
Zu verwendende Eingabepunkte:
DOC_SOW = Maske Belegposition --> Maske STOSORW
SOW_SOR = Maske STOSORW --> Maske STOSOR
SOR_SOW = Maske STOSOR --> Maske STOSORW
SOW_STW = Maske STOSORW --> Maske STOWORK
und Maske STOSORM --> Maske STOWORK
Betroffene Masken:
Die neuen Felder müssen in diesen unterschiedlichen Masken und (mit demselben Namen) in die Tabelle STOJOU hinzugefügt werden.
Zu verwendende Eingabepunkte:
SCDSQD_SGW = Maske STOCHG --> Maske STOCHGW
und Maske STOQUA --> Maske STOCHGW
SGW_SCD = Maske STOCHGW --> Maske STOCHG
SGW_SQD = Maske STOCHGW --> Maske STOQUA
SGW_STW = Maske STOCHGW --> Maske STOWORK