Ansicht
Dokumentation

EXIT_SAPLV45L_004 - Rücksetzen der Lieferfortschrittszahl zum Geschäftsjahresende

EXIT_SAPLV45L_004 - Rücksetzen der Lieferfortschrittszahl zum Geschäftsjahresende

CPI1466 during Backup   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Diese Kundenfunktion dient der Steuerung des Rücksetzens der Fortschrittszahlen beim Geschäftsjahreswechsel. Über diese Funktion kann das Rücksetzen der Fortschrittszahlen abgeschaltet werden.

Wird ein neuer Abruf angelegt, dann wird die Kundenfunktion EXIT_SAPLV45L_004 aufgerufen, wobei die folgenden Parameter übergeben werden:

  • I_KUNNR: Kundennummer (Auftraggeber)
  • I_MATNR: Materialnummer
  • I_KDMAT: Kundenmaterialnummer
  • I_VBELN: Nummer des Lieferplans
  • I_POSNR: Nummer der Lieferplanposition

Anhand dieser Parameter können Sie in der Kundenfunktion bestimmen, ob es sich um einen Lieferplan handelt, bei dem die Fortschrittszahlen zum Jahreswechsel nicht zurückgesetzt werden dürfen.

Über den folgenden Parameter muss die Kundenfunktion dann mitteilen, ob die Fortschrittszahlen zurückgesetzt werden sollen oder nicht:

  • E_RESET_CDQ: Rücksetzen der Lieferfortschrittszahl

    Die Kundenfunktion kann den Parameter mit folgenden Werten belegen:
  • 'A' - Rücksetzen der Fortschrittszahlen bei Geschäftsjahreswechsel
    Dieser Wert stellt das Standardverhalten dar: es wird die gleiche Logik angewandt, wie wenn die Kundenfunktion gar nicht existieren würde: beim Geschäftsjahreswechsel werden die Fortschrittszahlen zurückgesetzt.
    Die Lieferfortschrittszahl bestimmt sich nur aus den Lieferungen, die zum aktuellen Jahr gehören.

  • 'B' - Kein Rücksetzen der Fortschrittszahlen bei Geschäftsjahreswechsel
    Wird dieser Wert zurückgegeben, wird beim Geschäftsjahreswechsel kein Rücksetzen der Fortschrittszahlen durchgeführt. Das Geschäftsjahr wird auf "0" gestellt.
    Die Lieferfortschrittszahl bestimmt sich aus allen (!!!) existierenden Lieferungen

  • 'C' - Rücksetzen der Fortschrittszahlen mittels Korrekturlieferung

Diese Art der Rücksetzung kann nicht angewendet werden, wenn der Lieferplan im APO geplant wird.
  • 'D' - Manuelles Rücksetzen der Fortschrittszahlen mittels Korrekturmengen

Diese Art der Rücksetzung kann nur angewendet werden, wenn der Lieferplan im APO geplant wird, d.h. er sich in einem aktiven Integrationsmodell befindet. Das Rücksetzen der Fortschrittszahlen kann hierbei nicht im mySAP ERP sondern nur im APO erfolgen.
  • Sonstige Werte - Rücksetzen der Fortschrittszahlen bei Geschäftsjahreswechsel
    Dieser Wert wirkt wie 'A', sollte aber nicht genutzt werden, da er für zukünftige Entwicklungen reserviert ist.

Beispiel

Um z.B. für den Kunden 100 das Rücksetzen der Fortschrittszahlen zum Geschäftsjahreswechsel zu verhindern, müssten Sie folgendes Coding implementieren:

IF I_KUNNR EQ '0000000100'.
* Do not reset cums
E_RESET_CDQ = 'B'.
ELSE
* Reset cums if year changes
E_RESET_CDQ = 'A'.
ENDIF.

Hinweise

Die nachfolgende Beschreibung ist nur relevant, wenn mit E_RESET_CDQ = 'B' oder 'C' gearbeitet wird:

Das Rücksetzen der Fortschrittszahlen wird dadurch verhindert, dass ab dem Zeitpunkt, ab dem die Kundenfunktion E_RESET_CDQ = 'B' oder 'C' zurückgibt, die beiden Felder 'Geschäftsjahr des Kunden (VBLB-GJKUN)' und 'Vorjahr des Kunden (VBLB-VJKUN)' auf '0000' bleiben.
Hierdurch werden jeweils ALLE S073-Einträge zum Lieferplan (und nicht nur die des aktuellen Jahres) für die Errechnung der Lieferfortschrittszahl verwendet.
Die Kundenfunktion wird nur bei der Anlage eines neuen Abrufs aufgerufen. Das bedeutet, dass bei einem existierenden Abruf die Lieferfortschrittszahl durch diese Kundenfunktion nicht beeinflusst wird.
BEVOR DIESE KUNDENFUNKTION EINGESETZT WIRD, MUSS UNBEDINGT GEPRÜFT WERDEN, OB DIE EXISTIERENDEN KORREKTURLIEFERUNGEN KORREKT ERFASST WURDEN:

E_RESET_CDQ = 'B'

Die nachfolgende Beschreibung ist nur relevant, wenn mit E_RESET_CDQ = 'B' gearbeitet wird:

Wenn man diese Kundenfunktion direkt aktiv schalten würde, könnte es zu falschen Fortschrittszahlen kommen, wenn

  • der Kunde immer ohne Rücksetzen gearbeitet hat und die Korrekturlieferungen in der Vergangenheit nicht korrekt eingepflegt wurden:

    Hat der Kunde immer ohne Rücksetzen der Eingangsfortschrittszahl gearbeitet, dann mussten bei jedem Jahreswechsel Korrekturlieferungen erfasst werden, damit die eigene Lieferfortschrittszahl der Eingangsfortschrittszahl des Kunden angepasst wird:

    Beispiel:
Jahr   Liefermenge Liefer-FZ Eingangs-FZ
1998 Lieferung 10 St. 10 10
Lieferung 15 St. 25 25
Korrekturlieferung -25 St. 0
1999 Korrekturlieferung 25 St. 25
Lieferung 10 St. 35 35
Korrekturlieferung -35 St. 0
2000 Korrekturlieferung 35 St. 35
Lieferung 20 St. 55 55
Neue FZ ohne Rücksetzen 55 St.( = 55)

Wurden die entsprechenden Korrekturlieferungen jeweils ausbuchend (negativ) zum Jehresende und einbuchend (positiv) zum Jahresanfang gemacht, stimmt die Fortschrittszahl auch ohne Zurücksetzen noch: Es werden alle Lieferungen summiert, wobei sich die Korrekturlieferungen jeweils aufheben.

Wurden jedoch nur die positiven Korrekturlieferungen im neuen Jahr gemacht, hätte die Lieferfortschrittszahl nach dem bisherigen Verfahren auch immer noch gestimmt:

Beispiel:
Jahr   Liefermenge Liefer-FZ Eingangs-FZ
1998 Lieferung 10 St. 10 10
Lieferung 15 St. 25 25
1999 Korrekturlieferung 25 St. 25
Lieferung 10 St. 35 35
2000 Korrekturlieferung 35 St. 35
Lieferung 20 St. 55 55
Neue FZ ohne Rücksetzen 105 St. (<> 55)

Mit dem Algorithmus 'ohne Zurücksetzen' erhält man jedoch eine abweichende Lieferfortschrittszahl und passt damit nicht mehr zur Eingangsfortschrittszahl, die der Kunde gemeldet hat.

Das gleiche falsche Resultat erhielte man bei Einsatz des Algorithmuses ohne Zurücksetzen auch, wenn in vergangenen (bisher nicht berücksichtigten) Jahren fehlerhafte Korrekturlieferungen erfasst worden wären.
In diesem Fall könnte die errechnete Lieferfortschrittszahl zu groß oder zu klein werden.
  • der Kunde während der Existenz des Lieferplans von Zurücksetzen auf Nicht-Zurücksetzen umgeschaltet hat und erst seit diesem Zeitpunkt, die Fortschrittszahl aufsummieren lässt.

    In diesem Fall würde die Lieferfortschrittszahl zu groß, wenn man das Rücksetzen der Lieferfortschrittszahl direkt ausschalten würde.

    Beispiel:
Jahr   Liefermenge Liefer-FZ Eingangs-FZ
1998 Lieferung 10 St. 10 10
Lieferung 15 St. 25 25
1999 Der Kunde setzt letzmalig zurück   0
Lieferung 10 St. 10 10
Korrekturlieferung -10 St. 0
2000 Korrekturlieferung 10 St. 10
Lieferung 20 St. 30 30
Neue FZ ohne Rücksetzen 55 St.(<> 30)

Würde man das Zurücksetzen der Lieferfortschrittszahl zum Jahresende ausschalten, dann wäre die Lieferfortschrittszahl um die Summe aller Lieferung vor dem Jahr, zu dem der Kunde letztmalig zurückgesetzt hat, zu hoch.

In beiden Fällen ist es notwendig, entsprechende Korrekturlieferungen zu erfassen, so dass mit und ohne Zurücksetzen der Fortschrittszahlen die gleiche Lieferfortschrittszahl errechnet wird.

Hierfür gibt es den Report SDLIPL_TEST_CDQ. Mit diesem ist es möglich, zu überprüfen, ob die Fortschrittszahlen nach Aktivierung der Kundenfunktion noch korrekt wären:

Der Report hat die gleichen Parameter, die auch die Kundenfunktion EXIT_SAPLV45L_004 zum Ausschalten des Rücksetzens der Lieferfortschrittszahlen beinhaltet. Mit genau den Parametern, die Sie auch in der Kundenfunktion nutzen wollen, muss der Report aufgerufen werden:

  • Auftraggeber (S_KUNAG)
  • Material (S_MATNR)
  • Kundenmaterial (S_KDMAT)
  • Lieferplan (S_VBELN)
  • Position (S_POSNR)

Der Report liefert die folgenden Daten:

  • Lieferplan
  • Pos. (Position des Lieferplans)
  • Abart (Abrufart: 1=Lieferabruf, 2=Feinabruf, 5=Planabruf)
  • EFZ (Eingangsfortschrittszahl des Kunden)
  • Jahr (Geschäftsjahr, in dem sich die Lieferplanposition befindet. Wird hier nichts angezeigt, dann ist dieser Abruf bereits so eingestellt, dass ohne Rücksetzen der Fortschrittszahlen gearbeitet wird.)
  • LFZ akt. Jahr (Lieferfortschrittszahl bezogen auf 'Jahr')
  • LFZ gesamt (Lieferfortschrittszahl, die sich ergäbe, wenn bei der Anlage des Abrufes ohne ohne Rücksetzen der Fortschrittszahlen gearbeitet worden wäre.)
  • Differenz (Differenz zwischen den beiden Lieferfortschrittszahlen)

Gibt es Lieferplanpositionen, bei denen eine Differenz ausgewiesen wird, muss die entsprechende Position mittels Korrekturlieferungen korrigiert werden.

Unterscheiden sich die Differenzen innerhalb einer Position bei unterschiedlichen Abrufarten, muss genau analysiert werden, warum dies der Fall ist und wie korrigiert werden muss.
Unterschiede könnte es geben, falls bei einer Position ein Feinabruf für das aktuelle Jahr existiert, im aktuellen Jahr aber noch kein neuer Lieferabruf angelegt wurde (das Feld 'Jahr' in den ensprechenden Zeilen muss unterschiedlich sein.

Sobald alle Lieferplanpositionen korrekt sind und der Report keine Differenzen mehr ausweist, kann die Kundenfunktion aktiviert werden.

E_RESET_CDQ = 'C'

Die nachfolgende Beschreibung ist nur relevant, wenn mit E_RESET_CDQ = 'C' gearbeitet wird:

Die Variante C führt keinen Geschäftsjahreswechsel im herkömmlichen Sinne durch, da keine Geschäftsjahre verwendet werden. Somit entspricht sie der Variante 'B'. Allerdings wird, wenn notwendig, automatisch eine Korrekturlieferung erzeugt, um die Lieferfortschrittszahl mit der vom Kunden gemeldeten Eingangsfortschrittszahl in Einklang zu bringen. Wie bei Variante 'B' befindet sich die Lieferplanposition sozusagen immer in einem bzw. im gleichen Geschäftsjahr '0000'. Durch die Möglichkeit der Erzeugung einer automatischen (negativen) Korrekturlieferung wird jedoch erreicht, daß die Fortschrittszahlen reduziert werden und somit eine Simulation von einem Geschäftsjahreswechsel durchgeführt wird. Daher wird auch weiterhin von Geschäftsjahren und Geschäftsjahreswechseln gesprochen.

  • Einflußparameter des Geschäftsjahreswechsel
Es gibt drei verschiedene Einflußparameter, über die das System bei deren Variation in Abhängigkeit anderer Abrufparameter den Jahreswechsel über die Erzeugung einer automatischen Korrekturlieferung vollziehen kann. Die primär für eine Reduzierung der Fortschrittszahlen maßgebenden Daten sind
  • die Eingangsfortschrittzahl (Feld VBLB-ABEFZ, kurz CRQ)

  • die vom Kunden gemeldete letzte Lieferung (Feld VBLB-LFNKD, kurz LDN)

  • das Nullstellungsdatum (Feld VBLB-CYDAT, kurz CYD)

Sekundären Einfluß auf die Reduzierung der Fortschrittszahlen nehmen
  • die Liefer- und Warenausgangsfortschrittszahl (Felder RV45Z-LIFFZ und RV45Z-WAGFZ, kurz CDQ und CGQ) des aktuellen Geschäftsjahres

  • das Abrufdatum (Feld VBLB-ABRDT, kurz RD)

  • das Lieferdatum der zuletzt verbuchten automatischen Korrekturlieferung

Man unterscheidet entsprechend der oben genannten primären Parameter drei Möglichkeiten, den Jahreswechsel umzusetzen, und berücksichtigt folgende Konstellationen im Abruf, bei denen die Reduzierung der Fortschrittszahlen erfolgt in Abhängigkeit von
  • der Eingangsfortschrittszahl, wobei keine vom Kunden gemeldete letzte Lieferung und kein Nullstellungsdatum angegeben ist;

  • der Eingangsfortschrittszahl, wobei eine vom Kunden gemeldete letzte Lieferung, jedoch kein Nullstellungsdatum angegeben ist;

  • von einem mitgegeben Nullstellungsdatum.

Unabhängig von den oben erwähnten Möglichkeiten des Jahreswechsels ist die wesentlichste Voraussetzung, um einen Geschäftsjahreswechsel durchzuführen, die Information des Kunden vom Zulieferer, daß dies zu einem bestimmten Zeitpunkt erfolgen soll. Der Parameter, der die Absicht eines Geschäftsjahreswechsels im Lieferplan zum Ausdruck bringt, ist die vom Kunden zurückgemeldete Eingangsfortschrittszahl. Wenn diese bezogen auf die Angabe im vorangegangenen Abruf bzw. bezogen auf den verbuchten Wert im aktuellen Abruf reduziert wird und nur dann kann der Geschäftsjahreswechsel im Lieferplan vollzogen werden. Ob dies dann tatsächlich stattfindet, hängt unter Umständen von weiteren Parametern und Datenkonstellationen ab (siehe unten).
Wenn zu einer Lieferplanposition mehrere Abrufarten parallel verwendet werden (Liefer- und Feinabruf), dann wird zum Vergleich der Eingangsfortschrittszahlen immer die letzte verbuchte Eingangsfortschrittszahl des Abrufs mit dem zeitlich letzten Abrufdatum verwendet. Generell gilt in diesem Zusammenhang auch, daß ein Jahreswechsel immer nur für den bezogen auf das Abrufdatum zeitlich aktuelleren der beiden verschiedenen Abrufe vollzogen werden kann.
Weiter gilt, daß keine automatische Korrekturlieferung angelegt wird, wenn während der Abrufbearbeitung bereits eine manuell erzeugte Korrekturlieferung erstellt worden ist und wenn das Abrufdatum nicht größer ist als das Lieferdatum der zuletzt verbuchten automatisch erzeugten Korrekturlieferung.
  • Jahreswechsel ohne letzte Lieferscheinnummer und ohne Nullstellungsdatum

Für den im Folgenden beschriebenen Algorithmus gilt, daß weder eine letzte Lieferscheinnummer vom Kunden (LDN) noch ein Nullstellungsdatum (CYD) im Abruf angegeben ist.
Wird die Eingangsfortschrittszahl reduziert, so wird damit zum Ausdruck gebracht, daß die Summe aller gelieferten Mengen in Höhe der vorherigen Eingangsfortschrittszahl zum abgeschlossenen Geschäftsjahr gehören, und daß mit der neuen (reduzierten) Eingangsfortschrittszahl die Vereinnahmung der gelieferten Mengen im neuen Geschäftsjahr zurückgemeldet werden soll. Der Kunde beginnt dadurch mit einer neuen Zählung der erhaltenen Ware entsprechend einem neu begonnenen Geschäftsjahr.
Der Betrag der (negativen) Korrekturmenge ergibt sich aus dem Wert der vorherigen Eingangsfortschrittszahl, das Datum der Korrekturlieferung aus dem Lieferdatum der Lieferung, deren zugeordnete Lieferfortschrittszahl die vorherige Eingangsfortschrittszahl vollständig abdeckt (siehe Liste der Lieferungen). Diese Lieferung und alle gemäß dem Lieferdatum davor positionierten Lieferungen werden somit dem abzuschließenden Geschäftsjahr zugeordnet.
Folgendes (abstrakte) Beispiel möge dies veranschaulichen. Ausgangspunkt hierfür (und für alle weiteren Fallbeispiele) ist ein Abruf mit folgenden Daten:
  • Lieferfortschrittszahl (CDQ) = 60,

  • Warenausgangsfortschrittszahl (CGQ) = 40,

  • Eingangsfortschrittszahl (CRQ) = 33,

  • Unterwegsmenge (QIT) = 27.

Zu dieser Lieferplanposition mögen sechs Lieferungen (Lieferscheinnummer DN) existieren mit jeweils einer Liefermenge (DQ) von 10 Stück. Vier der sechs Lieferungen sind Warenausgang gebucht (GI = X).

Beispiel 1a)
CGQ = 40   LND = initial
CDQ = 60   CYD = initial
CRQ = 33
QIT = 27

DD DN GI DQ CDQ
30.10.2002 80000006   10 60
25.10.2002 80000005   10 50
20.10.2002 80000004 x 10 40
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Im Regelfall wird der Jahreswechsel durch das Setzen der Eingangsfortschrittszahl auf 0 eingeleitet. Damit werden die zuvor rückgemeldeten Liefermengen in Höhe von 33 dem abzuschliesenden Jahr zugeordnet und für das neu begonnene Jahr noch keine Liefermengen vereinnahmt. In diesem Fall bleibt die Unterwegsmenge von 27 im neuen Jahr erhalten. Mit der ursprünglichen Eingangsfortschrittszahl von 33 ist die Lieferung 80000004 nicht als vollständig vereinnahmt gemeldet worden. Es verbleibt eine Liefermenge Menge von 7 als offen. Mit dieser Lieferung wird jedoch durch die ihr zugeordnete Lieferfortschrittszahl von 40 die vorherige Eingangsfortschrittszahl von 33 voll abgedeckt. Die Korrekturlieferung wird zum Lieferdatum der Lieferung 80000004 angelegt und sortiert sich immer oberhalb dieser Lieferung ein. Die Restmenge von 7 erscheint als Übertrag in Form der der Korrekturlieferung zugeordneten Lieferfortschrittszahl.
Beispiel 1b)
CGQ = 7   LND = initial
CDQ = 27   CYD = initial
CRQ = 0
QIT = 27

DD DN GI DQ CDQ
30.10.2002 80000006   10 27
25.10.2002 80000005   10 17
20.10.2002 80000007 x 33- 7
20.10.2002 80000004 x 10 40
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Die neue Eingangsfortschrittszahl hat gemäß der im neuen Jahr gültigen Warenausgangsfortschrittszahl eine Variationsbreite von Werten zwischen 0 und 7, ohne daß damit die aktuelle Warenausgangsfortschrittszahl von 7 überschritten wird, was nicht zulässig ist. Mit einer neuen Eingangsfortschrittszahl von 7 würden im neuen Jahr bereits alle Warenausgang gebuchten Lieferungen zurückgemeldet.
Beispiel 1c)
CGQ = 7   LND = initial
CDQ = 27   CYD = initial
CRQ = 7
QIT = 20

DD DN GI DQ CDQ
30.10.2002 80000006   10 27
25.10.2002 80000005   10 17
20.10.2002 80000007 x 33- 7
20.10.2002 80000004 x 10 40
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Bei einer neuen Eingangsfortschrittszahl größer als 7 würde das System keinen Jahreswechsel durch Erzeugen einer automatischen Korrekturlieferung vollziehen, da die neue Warenausgangsfortschrittszahl überschritten werden würde. Das System prozessiert in diesem Fall die Warnmeldung V4 019 'Die Eingangsfortschrittszahl wurde ohne Jahreswechsel erniedrigt'.
Die genannte Meldung kann als Error-Meldung gecustomized werden (bitte beachten Sie hierbei den Hinweis 88713), um zu verhindern, daß die reduzierte Eingangsfortschrittszahl bei verhindertem Jahreswechsel nicht abgespeichert wird.
Es gilt allgemein, daß wenn die Summe aus der vorherigen und der neuen Eingangsfortschrittszahl die vorherige Warenausgangsfortschrittszahl (des noch nicht abgeschlossenen Geschäftsjahres) übersteigt, vom Kunden zuviel im neuen Jahr zurückgemeldet wird.
Von einem anderen Gesichtspunkt aus betrachtet, könnte man auch sagen, daß die im neuen Jahr zuviel zurückgemeldete Menge bereits im abgeschlossenen Jahr zurückgemeldet worden ist, jedoch diesem nicht mehr zugeordnet werden soll, sondern rückwirkend als geliefert im neuen Jahr zu betrachten ist.
Wenn eine derartige Logik in Anspruch genommen werden soll, so läßt sich über den Customer-Exit EXIT_SAPLV45L_004 der Exportparameter E_RESET_TO_CRQ mit einem Wert versehen, der der gelieferten Menge entspricht, die über die (überhöhte) Eingangsfortschrittszahl rückwirkend aus dem abzuschliessenden Geschäftsjahr ins neue Jahr übertragen werden kann, ohne das es im Rahmen einer Konsistenzprüfung zu einer Fehlermeldung kommt ( V4 019 als Error-Meldung ) oder der Jahreswechsel unterbunden wird ( V4 019 als Warn- oder Info-Meldung ).
Der Mengenübertrag wird dadurch realisiert, daß das Datum der automatisch erzeugten Korrekturlieferung entsprechend weit in die Vergangenheit gelegt wird, bis alle nach dem und zum Korrekturdatum positionierten Warenausgang gebuchten Lieferungen mit ihren Mengen die neue Eingangsfortschrittszahl abdecken. Als Resultat erhält man nach dem Geschäftsjahreswechsel immer eine neue Warenausgangsfortschrittszahl, die genau der neuen Eingangsfortschrittszahl entspricht. Der Betrag der (negativen) Korrekturmenge ergibt sich hierbei aus der Differenz der dem noch nicht abgeschlossenen Geschäftsjahr zugeordneten Warenausgangsfortschrittszahl minus der neuen Eingangsfortschrittszahl.
Zur Veranschaulichung möge folgendes Beispiel dienen. Ausgangspunkt ist wieder die in Beispiel 1a) abgebildete Datenkonstellation. Der Parameter E_RESET_TO_CRQ ist auf 15 festgelegt. Damit ist es möglich, die neue Eingangsfortschrittszahl bei einer Warenausgangsfortschrittszahl im noch nicht abgeschlossenen Geschäftsjahr von 40 und der vorherigen Eingangsfortschrittszahl von 33 auf einen maximalen Wert von 22 zu setzen.
Die Beispiele 1d) und 1e) geben das Resultat mit Jahreswechsel für die reduzierten Eingangsfortschrittszahlen von 15 und 22 wieder.
Beispiel 1d)
CGQ = 15   LND = initial
CDQ = 25   CYD = initial
CRQ = 15
QIT = 10

DD DN GI DQ CDQ
30.10.2002 80000006   10 35
25.10.2002 80000005   10 25
20.10.2002 80000004 x 10 15
15.10.2002 80000007 x 25- 5
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Beispiel 1e)
CGQ = 22   LND = initial
CDQ = 42   CYD = initial
CRQ = 22
QIT = 20

DD DN GI DQ CDQ
30.10.2002 80000006   10 42
25.10.2002 80000005   10 32
20.10.2002 80000004 x 10 22
15.10.2002 80000003 x 10 12
10.10.2002 80000007 x 18- 2
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

  • Jahreswechsel mit letzter Lieferscheinnummer und ohne Nullstellungsdatum

Für den im Folgenden beschriebenen Algorithmus gilt, daß eine letzte Lieferscheinnummer vom Kunden (LDN), aber kein Nullstellungsdatum (CYD) angegeben ist.
Wenn beim Anlegen eines neuen Abrufs die Eingangsfortschrittszahl reduziert und gleichzeitig eine letzte vom Kunden erhaltene Lieferscheinnummer angegeben wird, so nimmt diese Lieferung Einfluß auf die Positionierung der automatisch erzeugten Korrekturlieferung.
Die Angabe der zuletzt erhaltenen Lieferung wird jedoch nur dann berücksichtigt, wenn dies gewünscht wird. Diese explizite Vorentscheidung kann über den Parameter E_RESET_WITH_LFNKD im Customer-Exit EXIT_SAPLV45L_004 getroffen werden, indem man den Parameter mit dem Wert 'X' versieht.
Ebenso ist entscheidend, ob die letzte genannte Lieferung Warenausgang gebucht ist und dass die Lieferscheinnummer zur Lieferplanposition überhaupt existiert. Trifft dies nicht zu, so bleibt die Lieferscheinnummer unberücksichtigt und das System führt den Jahreswechsel nur gemäß der Reduzierung der Eingangsfortschrittszahl durch (siehe oben).
Befindet sich die letzte rückgemeldete Lieferung vom Lieferdatum her in einem bereits abgeschlossenen Geschäftsjahr, also vor dem Lieferdatum einer bereits verbuchten automatischen Korrekturlieferung, dann wird kein Jahreswechsel durchgeführt.
Bei Reduzierung der Eingangsfortschrittszahl zur Durchführung eines Jahreswechsels ist eine Entscheidung zu treffen bezüglich der Frage, ob die letzte vom Kunden erhaltene Lieferung zum neuen Jahr zugehörig gilt oder dem abzuschließenden Jahr zuzurechnen ist. Die Entscheidung darüber fällt in Abhängigkeit von der neuen (reduzierten) Eingangsfortschrittszahl, wobei immer das Kriterium erfüllt sein muß, daß die Eingangsfortschrittszahl die Warenausgangsfortschrittszahl des neuen Jahres nicht übersteigen darf.
Im folgenden Beispiel, welches wiederum auf den Ausgangszustand von Beispiel 1a) basiert, stellt die Lieferung 80000003 die letzte vom Kunden vereinnahmte Lieferung dar. Die Eingangsfortschrittszahl wird von 33 auf 7 reduziert. In der Regel wird versucht, daß Geschäftsjahr mit der letzt genannten Lieferung abzuschließen. Nach der Lieferung 80000003 erfolgte die Lieferung 80000004 mit einer Liefermenge von 10 Stück als einzige, die ebenfalls Warenausgang gebucht ist. Somit besteht also für die Eingangsfortschrittszahl im neuen Geschäftsjahr eine Variantionsbreite von 10 Stück, ohne daß die Summe der Warenausgang gebuchten Mengen überschritten wird. Die Korrekturlieferung kann somit zum 15.10.2002 angelegt werden, so daß die als zuletzt vereinnahmt gemeldete Lieferung zum abzuschließenden Jahr gezählt werden kann.
Beispiel 2a)
CGQ = 10   LND = 80000003
CDQ = 30   CYD = initial
CRQ = 7
QIT = 23

DD DN GI DQ CDQ
30.10.2002 80000006   10 30
25.10.2002 80000005   10 20
20.10.2002 80000004 x 10 10
15.10.2002 80000007 x 30- 0
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Würde die Eingangsfortschrittszahl auf 11 reduziert (Beispiel 2b), so überstiege dieser Wert die Summe der Warenausgang gebuchten Liefermengen von 10. Es ist daher erforderlich, die als zuletzt vereinnahmt gemeldete Lieferung zum neuen Jahr zuzurechnen und das Lieferdatum der Korrekturlieferung einen Tag vor dieser Lieferung zu setzten. Dadurch wird die Warenausgangsfortschrittszahl im neuen Jahr auf 20 aufgestockt und es tritt im Zusammenspiel mit der Eingangsfortschrittszahl keine Inkonsistenz auf.
Beispiel 2b)
CGQ = 20   LND = 80000003
CDQ = 40   CYD = initial
CRQ = 11
QIT = 29

DD DN GI DQ CDQ
30.10.2002 80000006   10 40
25.10.2002 80000005   10 30
20.10.2002 80000004 x 10 20
15.10.2002 80000003 x 10 10
14.10.2002 80000007 x 20- 0
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Über den Parameter E_RESET_WITH_LFNKD kann aber auch gesteuert werden, daß man generell die als zuletzt vereinnahmt gemeldete Lieferung immer zum alten (E_RESET_WITH_LFNKD = '+') oder zum neuen Jahr (E_RESET_WITH_LFNKD = '-') gezählt haben möchte.

  • Vorausvereinnahmung von Lieferungen

Die bisherigen Betrachtungen haben das Abrufdatum (RD) außer Acht gelassen. Generell gilt, daß eine automatische Korrekturlieferung niemals zum oder nach dem Abrufdatum erzeugt wird. Wenn eine Lieferung als zuletzt vereinnahmt angegeben wird, so besteht die Möglichkeit, daß das dazugehörige Lieferdatum nach dem Abrufdatum liegt. Zum Zeitpunkt des neuen Abrufs kann diese Lieferung eigentlich noch nicht beim Kunden angekommen sein; es sei denn, daß die Ware früher versandt worden ist und den Kunden vor dem errechneten Lieferdatum erreicht hat oder sonstige Umstände, die nicht mit dem Programm abgebildet werden können, zu dieser Konstellation führen. Man kann dann von einer sogenannten Vorausvereinnahmung der Lieferung sprechen.
Bei einem Jahreswechsel, der zusammen mit einer derartigen vorausvereinnahmten Lieferung durchgeführt wird, würde unter Umständen ein Korrekturdatum ermittel werden, welches nach dem Abrufdatum liegt. In diesem Fall setzt das System das Korrekturdatum einen Tag vor das Abrufdatum. Beispiel 2c) illustriert diesen Fall mit dem Ergebnis aus Beispiel 2a) unter Berücksichtigung eines Abrufdatums von 12.10.2002. Man erkennt in der Liste der Lieferungen an den ihnen zugeordneten negativen Lieferfortschrittszahlen, daß es sich hier mit Bezug zum Abrufdatum um im voraus vereinnahmte Lieferungen handelt.
Beispiel 2c)
CGQ = 10   LND = 80000003
CDQ = 30   CYD = initial
CRQ = 7   RD = 12.10.2002
QIT = 23

DD DN GI DQ CDQ
30.10.2002 80000006   10 30
25.10.2002 80000005   10 20
20.10.2002 80000004 x 10 10
15.10.2002 80000003 x 10 0
11.10.2002 80000007 x 30- 10-
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

  • Jahreswechsel mit Nullstellungsdatum

Die letzte der drei Möglichkeiten, einen Geschäftsjahreswechsel einzuleiten, besteht in der direkten Angabe des Datums (Feld VBLB-CYDAT), an dem der Jahreswechsel stattfinden soll. Alle Warenausgang gebuchten Lieferungen mit einem Lieferdatum vor dem sogenannten Nullstellungsdatum (kurz CYD) werden dem abzuschließenden Jahr zugerechnet. Die Korrekturlieferung wird auf einen Tag vor das Nullstellungsdatum datiert. Der Betrag der Korrekturmenge ergibt sich aus der Summe der Liefermengen aller dem abzuschließenden Jahr zugerechneten Lieferungen.
Es besteht zudem die Möglichkeit, die dem abzuschließenden Jahr zuzurechnenden Liefermengen und somit die Höhe der automatischen Korrekturlieferung explizit über die Nullstellungsmenge (Feld VBLB-CYEFZ, kurz CYQ) anzugeben. Diese Menge entspricht der zum Datum der Nullstellung erreichten (Eingangs-) Fortschrittszahl. Es sei erwähnt, daß die Angabe der Nullstellungsmenge ohne Angabe des Nullstellungsdatums ohne Auswirkung bleibt.
Das Nullstellungsdatum findet keine Berücksichtigung, wenn es nach dem Abrufdatum liegt und somit als noch nicht aktuell bzw. als zukünftig gilt.
Ebenso außer Acht gelassen wird das Nullstellungsdatum, wenn sich ein Tag vor diesem bereits eine verbuchte automatische Korrekturlieferung befindet. Das soll verhindern, daß ein Nullstellungsdatum mehrfach einen Jahreswechsel initiiert.
Wenn das Nullstellungsdatum kleiner oder gleich dem Lieferdatum einer bereits verbuchten automatischen Korrekturlieferung ist, so würde das Nullstellungsdatum in ein bereits abgeschlossenes Geschäftsjahr fallen und damit als veraltet anzusehen sein. In diesem Fall wird zum Datum der Nullstellung auch kein Jahreswechsel vollzogen.
Mit einem angegebenen Nullstellungsdatum bleibt eine als zuletzt vom Kunden vereinnahmte Lieferung unberücksichtigt.
Um einen Jahreswechsel gemäß Nullstellungsdatum durchzuführen ist eine Reduzierung der Eingangsfortschrittszahl notwendig, um eine Konsistenz zur neu errechneten Warenausgangsfortschrittszahl zu erreichen. Im Gegensatz zu den beiden anderen Methoden (Eingangsfortschrittszahl reduzieren mit und ohne letzte Lieferscheinnummer) besteht jedoch nicht die Möglichkeit, dass das System den Jahreswechsel ignoriert, wenn die neue Eingangsfortschrittszahl nicht konsistent zur neuen Warenausgangsfortschrittszahl ausfählt. Wenn ein mitgegebenes Nullstellungsdatum für das laufende Geschäftsjahr relevant ist, wird vom System ein Geschäftsjahreswechsel verlangt. Sollte dies aufgrund einer nicht reduzierten oder zu gering reduzierten Eingangsfortschrittszahl nicht möglich sein, wird eine Fehlermeldung prozessiert, die darauf hinweist, das die (reduzierte) Eingangsfortschrittszahl die (neue) Warenausgangsfortschrittszahl übersteigt. Der Beleg kann somit nicht mit dieser Konstellation gesichert werden, ohne dass eine Anpassung der Eingangsfortschrittszahl vorgenommen wird.
Folgende drei Beispiele geben den Jahreswechsel unter Angabe eines Nullstellungsdatums einmal mit und zweimal ohne Nullstellungsmenge wieder. Ausgangspunkt dieser Beispiele ist wieder die Datenkonstellation vor dem Jahreswechsel aus Beispiel 1a).
Beispiel 3a)
CGQ = 10   LND = initial
CDQ = 30   CYD = 18.10.2002
CRQ = 7   CYQ = 0
QIT = 23

DD DN GI DQ CDQ
30.10.2002 80000006   10 30
25.10.2002 80000005   10 20
20.10.2002 80000004 x 10 10
17.10.2002 80000007 x 30- 0
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Beispiel 3b)
CGQ = 7   LND = initial
CDQ = 27   CYD = 18.10.2002
CRQ = 7   CYQ = 33
QIT = 20

DD DN GI DQ CDQ
30.10.2002 80000006   10 27
25.10.2002 80000005   10 17
20.10.2002 80000004 x 10 7
17.10.2002 80000007 x 33- 3-
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Beispiel 3c)
CGQ = 13   LND = initial
CDQ = 33   CYD = 18.10.2002
CRQ = 7   CYQ = 27
QIT = 26

DD DN GI DQ CDQ
30.10.2002 80000006   10 33
25.10.2002 80000005   10 23
20.10.2002 80000004 x 10 13
17.10.2002 80000007 x 27- 3
15.10.2002 80000003 x 10 30
10.10.2002 80000002 x 10 20
05.10.2002 80000001 x 10 10

Wenn das Nullstellungsdatum nicht gefüllt ist bzw. nicht mitgegeben wird, jedoch die Eingangsfortschrittszahl reduziert wird, so erfolgt der Jahreswechsel primär nach den Kriterien, die durch die Eingangsfortschrittszahl selbst und der als zuletzt vereinnahmten Lieferung bestimmt werden. Möchte man generell den Jahreswechsel nur über das Nullstellungsdatum steuern, so läßt sich dies über den Parameter E_RESET_WITH_CYDAT festlegen, der im Customer-Exit EXIT_SAPLV45L_004 gesetzt werden kann (= 'X').
  • Die automatische Korrekturlieferung

Eine automatisch erzeugte Korrekturlieferung zum Zwecke der Reduzierung der Fortschrittszahlen unterscheidet sich von einer manuell erzeugten Korrekturlieferung dahingehend, daß für diese die externe Identifikation des Lieferscheins (Feld LIKP-LIFEX) gefüllt wird und zwar mit einem systemintern vergebenen Wert.
In der Liste der zur Lieferplanposition existierenden Lieferungen wird eine Korrekturlieferung (dynamisch) durch die externe Lieferungsnummer (entspricht nicht dem Datenbankfeld LIKP-LIFEX) 'Korrekturlieferung' hervorgehoben. Eine automatisch erzeugte Korrekturlieferung wird durch die externe Lieferungsnummer 'Korrekturlieferung (auto.)' hervorgehoben.
In Wesentlichen verhält sich die automatisch erzeugte Korrekturlieferung analog zu einer manuell erzeugten Korrekturlieferung. Beide haben den Zweck, die Lieferfortschrittszahl zu manipulieren bzw. zu korrigieren.
Eine automatisch erzeugte Korrekturlieferung wird nur für die aktuellen Abrufe berücksichtigt, deren Abrufdatum nach dem Lieferdatum der automatischen Korrekturlieferung liegt. Befindet sich ein Abruf gemäß seinem Abrufdatum zeitlich vor einem anderen Abruf vom anderen Typ (Liefer- und Feinabruf), jedoch nach dem Lieferdatum einer automatischen Korrekturlieferung und fällt die Eingangsfortschrittszahl des älteren Abrufs höher aus als die Warenausgangsfortschrittszahl des aktuellen Geschäftsjahres, so wird die automatische Korrekturlieferung ebenfalls nicht berücksichtigt. Sie wird in diesem Fall als inaktiv angesehen, was in der Liste der Lieferungen daran zu erkennen ist, dass der autoamtischen Korrekturlieferung die Menge Null zugeordnet ist. Durch das Inaktivieren einer automatischen Korrekturlieferung wird unter anderem erreicht, dass der Jahreswechsel für mehrere parallel verwendete Abrufe nicht gleichzeitig durchgeführt wird, sondern erst bei der Neuanlage oder zeitlichen Aktualisierung des jeweiligen Abrufs erfolgt.

  • Umstellung auf Variante 'C'

Bevor für einen Lieferplan Variante 'C' für den Geschäftsjahreswechsel verwendet werden kann, ist eine Umstellung von bereits bestehenden Lieferplanpositionen nötig, die mit der herkömmlichen Geschäftsjahreslogik (Variante 'A') gearbeitet haben.
Da mit der Variante 'C' keine expliziten Geschäftsjahre mehr definiert sind (VBLB-GJKUN und VBLB-VJKUN initial), werden zur Ermittlung der Lieferfortschrittszahl alle Liefermengen aus allen Geschäftsjahren aufsummiert. Um bei der Umstellung auf Variante 'C' keinen sprunghaften Anstieg der Lieferfortschrittszahl zu erhalten, ist es notwendig, manuell eine Korrekturlieferung in eine abgeschlossene Periode zu buchen, so daß die Lieferfortschrittszahl aus dem aktuell laufenden Geschäftsjahr mit der Lieferfortschrittszahl übereinstimmt, die sich aus allen Geschäftsjahren zusammen ergibt.
Hierfür gibt es den Report SDLIPL_TEST_CDQ_VC. Mit diesem ist es möglich, zu überprüfen, ob die Fortschrittszahlen nach Aktivierung der Kundenfunktion noch korrekt wären:
Der Report hat die gleichen Selektionsparameter, die auch in der Kundenfunktion EXIT_SAPLV45L_004 zum Setzen der Geschäftsjahreswechselvariante verwendet wird. Mit genau den Parametern, die Sie auch in der Kundenfunktion nutzen wollen, muss der Report aufgerufen werden:
  • Auftraggeber

  • Material

  • Kundenmaterial

  • Lieferplan

  • Position

Der Report liefert die folgenden Daten:
  • Anzahl der selektierten Lieferpläne

  • Lieferplan

Geprüft wird, ob für einen Lieferplan eine Umstellung auf die Variante 'C'vorgesehen ist. Nicht vorgesehen ist die Variante 'C' für:
- Lieferpläne ohne Abrufe,
- Lieferpläne mit externem Diestleister (EDL) und
- Lieferpläne mit Auslieferungsaufträgen (MAIS).
  • Position des Lieferplans

  • GJW

Derzeit eingestellte Variante des Geschäftsjahreswechsels im Customer-Exit EXIT_SAPLV45L_004. Ist keine Geschäftsjahresvariante eingestellt, so entspricht dies der Variante 'A'.
  • ABGRU

Absagegrund der Lieferplanposition
  • WE

Warenempfänger der Lieferplanposition
  • PERIV

Geschäftsjahresvariante des Warenempfängers
  • PLAVO

Planabrufvorschrift der Lieferplanposition
  • Wechsel zu Variante C

- möglich
- m. Korr.Lief. (möglich, Korrekturlieferung erforderlich)
- erfolgt
- Wechsel B->C
- nicht möglich
- nicht vorgesehn (Lieferplan ohne Abrufe, EDL - oder MAIS-Lieferplan)
  • Daten der Korrekturlieferung, falls erfoderlich und bestimmbar

Daten für eine notwendige Korrekturlieferung können nur ermittelt weden, wenn noch für mindestens einen Abruf ein Geschäftsjahr im Abrufkopf eingetragen ist (VBLB-VJKUN ungleich '0000'). Werden mehrere Abrufarten eingesetzt (Lieferabruf, Feinabruf, Planabruf), so müssen sich alle Abrufe im selben Geschäftsjahr befinden. Dies gilt auch für inaktive Feinabrufe (VBAK-ABDIS = E) und inaktive Planabrufe (auf dem Reiter Abrufsteuerung ist keine Planabrufvorschrift eingetragen).
  • Abart

Abrufart: 1=Lieferabruf, 2=Feinabruf, 5=Planabruf
  • Jahr

Geschäftsjahr, in dem sich der Abruf befindet.
  • Info (zum Abruf)

I1: Pos. in C, Abruf ohne GJ: Umstellung nach C erfolgt
I2: Pos. in B, Abruf ohne GJ: Umstellung von B->C
I3: Pos. in A, Abruf mit GJ: Korr.Lief. notwendig
I4: Pos. in A, Abruf mit GJ: keine Korr.Lief. notwendig
W1: FAB existiert, aber inaktiv: VBAK-ABDIS = E
W2: PAB existiert ohne Planabrufvorschrift: inaktiv
E1: Pos. in B/C: Notwendige Korr.Lief. noch nicht erfolgt
E2: Pos. in A, Abruf ohne GJ: Korr.Lief. nicht bestimmtbar
E3: Fehler im FB SD_DELIVERY_CUMULATIVE_DETERM

Sobald alle Lieferplanpositionen korrekt sind und der Report keine Korrekturlieferung mehr ausweist, kann die Kundenfunktion aktiviert werden.
  • Anzahl berücksichtigter Lieferungen

Wenn vom System geprüft wird, ob eine Korrekturlieferung angelegt werden soll, dann wird in der Regel auch immer auf die bereits zur Lieferplanposition existierenden Lieferungen zurückgegriffen. Dies gilt insbesonderer dann, wenn festzulegen ist, wo zeitlich eine automatische Korrekturlieferung einzuordnen ist, um festzulegen welche Lieferungen zu welchem Jahr zuzuordnen sind.
Aus Performance-Gründen werden während der Belegverarbeitung intern vom System nur die letzten 50 Lieferungen berücksichtigt; in der IDOC-Verarbeitung sogar nur die letzten 10 Lieferungen.
Wenn insbesondere mit dem Nullstellungsdatum rückwirkend ein Jahreswechsel vollzogen werden soll, so kann dies theoretisch in einen Zeitraum fallen, der durch die oben genannte Anzahl von Lieferungen nicht mehr abgedeckt ist. Die Folge wäre, daß das System das Nullstellungsdatum nicht mehr einordnen kann und der Jahreswechsel ausbleibt.
Über den Customer-Exit EXIT_SAPLV45L_004 läßt sich die Anzahl der zu berücksichtigenden Lieferungen während der Ermittlung einer Korrekturlieferung erhöhen, so daß die beschriebene Problematik ausbleibt. Es handelt sich hierbei um den (Export-) Parameter E_NO_OF_DEL, der mit dem gewünschten Wert der Anzahl der zu berücksichtigenden Lieferungen zu versehen ist.
Als Vorgabe gilt, daß für E_NO_OF_DEL ein Wert größer als 50 zu vergeben ist. Ansonsten bleibt dieser Parameter ohne Auswirkungen.
  • Customer-Exit EXIT_SAPLV45L_005

Über den Customer-Exit EXIT_SAPLV45L_005 besteht die Möglichkeit zu einer kundeneigenen Festlegung der Korrekturmenge und des Korrekturdatums. Es muß jedoch darauf hingewiesen werden, daß der Aufruf dieser Funktion gewissen Restriktionen unterliegt, die sich aus der oben beschriebenen Standardlogik ergeben.
Der eingeschränkte Aufruf ist notwendig, um keine Dateninkonsistenzen zu verursachen. Darüber hinaus gilt generell, daß eine kundeneigene Festlegung der automatisch zu erzeugenden Korrekturlieferung und die daraus resultierenden Konsequenzen immer in Verantwortung des Kunden selbst geschieht.
Wenn der Standard einen Jahreswechsel über das Anlegen einer Korrekturlieferung durchführen würde, so kann über den Customer-Exit EXIT_SAPLV45L_005 verhindert werden, daß dies bei der Hintergundverarbeitung im EDI-Eingang (IDoc) automatisch erfolgt, indem die Ausnahme NO_RAZ ausgelöst wird.
  • Anmerkungen

Mit der Variante 'C' wird ein automatischer Vorschlag der Eingangsfortschrittszahl nicht unterstützt.

Weiterführende Informationen





Parameter

E_NO_OF_DEL
E_RESET_CDQ
E_RESET_TO_CRQ
E_RESET_WITH_CYDAT
E_RESET_WITH_LFNKD
I_KUNNR
I_MATNR
I_POSNR
I_VBELN

Ausnahmen

Funktionsgruppe

X45L

General Data in Customer Master   TXBHW - Original Tax Base Amount in Local Currency  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 73283 Date: 20240523 Time: 105943     sap01-206 ( 877 ms )