SAP Jobsuche bei DV-Treff
mxstml
  • mxstml
  • SAP Forum - User Thema Starter
vor 5 Jahre
Hallo zusammen,

ich bin auf der Suche nach einer Möglichkeit die Sprache in der Nachrichtenfindung in Lieferungen anzupassen. Wir haben unseren Debitorenstamm um eine Z-Tabelle erweitert um VKOrg-abhängig andere Sprachen verwenden zu können. In der Nachrichtenfindung für Kundenaufträge/Angebote/Anfragen und in Fakturen konnte ich die Sprache so anpassen, dass abhängig von der VKOrg aus dem Beleg die Sprache des Debitors gezogen wird, die in unserer Z-Tabelle hinterlegt ist. Nur in der Lieferung stoße ich hier auf Probleme.

Ich habe im Exit MV50AFZ1 einen Baustein eingebaut, der dafür sorgt, dass die Kopf- und Positionstexte mit der gewünschten Sprache angelegt werden.

Die Sprache für Nachrichten wird auch richtig gezogen, aber nur, wenn ich in der Anlage oder im Ändern der Lieferung die Nachrichtenfindung aktiv aufrufe (über Springen --> Liefernachrichten...).

Wenn ich die Lieferung aber anlege und direkt speichere wird die Nachricht in der Sprache angelegt, die im Standard-Sprachfeld hinterlegt ist.

Kennt jemand einen User-Exit oder ein BADI oder ähnliches, um in die Sprache der Nachrichtenfindung einzugreifen? Ich habe schon versucht über eine Bedingung in der Nachricht die Sprache anzupassen, war aber auch damit nicht erfolgreich.

Über Hinweise würde ich mich freuen!

Viele Grüße und danke schonmal

Förderer

wreichelt
vor 5 Jahre
hallo,

leider hast Du nicht geschrieben, wie die Bedingungen ausgeprägt war.

Es kann ein großer Unterschied sein , wenn nur

FORM KOBEV

und nicht

FORM KOBED aus programmiert ist.

Gruß Wolfgang

mxstml
  • mxstml
  • SAP Forum - User Thema Starter
vor 5 Jahre
Hallo Wolfgang,

ich habe sowohl KOBEV als auch KOBED ausgeprägt. Im Debugger wird zumindest KOBED auch durchlaufen, das Ergebnis wird dann von der erzeugten Nachricht aber erfolgreich ignoriert. Ich habe gerade eben nochmal in MV50AFZ1 ein bisschen angepasst und meinen Code-Baustein leicht angepasst in READ_DOCUMENT eingebaut. Bisher hatte ich den Aufruf nur in MOVE_FIELD_TO_LIKP eingebaut. In READ_DOCUMENT scheint das jetzt zu klappen. Ich hatte nicht damit gerechnet, dass ich bei jedem neuen Aufbau der Nachrichten eingreifen muss, solange die Nachricht nicht verarbeitet wurde.

Gruß

SanduhrAnzeigeProgramm
vor 5 Jahre
Kommt drauf an ob dir das bisherige quick n dirty ausreicht oder ob du eine "belastbare" und zukunftsfähige Logik haben möchtest.

Hierzu gekt man wie folgt vor:

Zunächst ist es wichtig neue Felder in die hierfür vorgesehenen dedizierten Kommunikationstabellen aufzunehmen.

Ein LIKP Feld also in die in KOMKBV2 enthaltene Struktur KOMKBZ4.

Wenn es sich um ein Standardfeld in der LIKP handelt, welches im Standard noch nicht in der KOMKBV2 enthalten war, dann wird dieses aufgrund eines "Move Corresponding" im SAP Standard Coding bereits versorgt.

Wenn es sich um ein Z-Fled handelt, dann muss dieses über einen entsprechenden User Exit versorgt werden.

In diesem Beispielfall USEREXIT_KOMKBV2_FILL in RVCOMFZZ.

Für Nachrichtenfindung kannst du keine Wertbeinflussende Formroutine (VOFM) definieren wie in der Preisfindung, sondern nur Bedingungen (wie in der Preisfindung).

Werte kannst du in meinen Augen nur sinnvoll an der Stelle befüllen deren USER EXIT Name USEREXIT_XXXXX_FILL das ja auch schon ausdrückt.

Ich hoffe meine Ausführungen helfen dir weiter.


*... who can do field replacements in the debugger can do anything in the system

*so this check can not stop (him) anyway.

Alpmann
vor 5 Jahre
Hallo mxstml,

mal ein ganz anderer Ansatz der meiner Meinung nach einfacher in der Umsetzung wäre.

Lass die Sprache in der Nachrichtenfindung so wie sie ist, und sag dem Druckprogramm am Anfang das die Sprache nicht das dem Feld NAST-SPRAS kommt, sondern aus euer Z-Tabelle.

Dann kann man zwar nicht mehr in einem Rutsch gucken, wie ein Beleg in mehreren Sprachen gedruckt wird - aber das ist meiner Auffassung nach auch nur ein Sonderfall. So was mache ich nur mal, wenn ich an Formularen etwas angepasst habe und einen Ausdruck in mehreren Sprachen benötige.

Es gibt unter Umständen auch eine Lösung für deinen Weg. Da kann ich dich aber nicht bei unterstützen.

Mit freundlichen Grüßen

Matthias Alpmann

mxstml
  • mxstml
  • SAP Forum - User Thema Starter
vor 5 Jahre
Hallo zusammen!

Vielen Dank für Die super Unterstützung! Ich habe jetzt mit meinem Versuch in READ_DOCUMENT die Sprache zu setzen einigen Erfolg gehabt und werde das als erste Lösung an den Fachbereich zum Testen geben.

Anschließend mache ich mich dann an die saubere Lösung von SanduhrAnzeigeProgramm und mache das ganze stabiler.

@Alpmann, an deine Lösung hatte ich als Notfall auch schon gedacht, das hat aber den großen Nachteil, dass User in der Nachrichtenfindung eine Sprache sehen und sich anschließend wundern, warum im Formular eine andere Sprache gedruckt wird. In Auswertungen über die ausgedruckte Sprache würde dann auch ein falsches Ergebnis bringen.

Die Frage nach der Sprache ist damit für mich ausreichend geklärt. Kann ich den Thread hier eigentlich irgendwie als gelöst markieren?

Vielen Dank nochmal!

Gruß

Max