Die SAP Meldungen werden oft in einem Pop-Up dargestellt. Dazu ist es so, dass immer dasselbe Dynpro zur Anwendung kommt (SAPMSDYP.0010). Dies erschwert das Erkennen des jeweiligen Falles. Leider steht in diesem Fall im GuiXT auch keine Systemvariable zur Verfügung, aus der man die Meldungsnummer entnehmen könnte. Damit man trotzdem erkennen kann ob es jetzt der gewünschte Fall ist, habe ich folgende Vorgehensweise entwickelt. Diese Vorgehensweise ist auch praktisch, wenn man mehrere Sprachen im Einsatz hat, da es sprachunabhängig ist. Diese Lösung setzt jedoch mindestens GuiXT Version 2014 Q1 1 voraus und einen RFC Zugriff für GuiXT.
1. Man sucht sich über das entsprechende Pop-Up die richtige Meldungsnummer heraus.
2. Über die Meldungsnummer identifiziert man Arbeitsgebiet (Nachrichtenklasse) und Nachrichtennummer
Arbeitsgebiet = V1
Nachrichtennummer = 081 (diese Nummer ist immer 3 stellig)
3. Script mit Textvergleich zu Meldungstext
Mit folgendem Script kann man auf dem Pop-Up den entsprechenden Vergleich anstellen:
// Beispiel zum Vergleichen der Meldungsnummer // 19.02.2014 / Gérald Koehn / Koehn Consulting / www.guixt.ch if Q[Transaction=VA02] set V[messgtext] "&F[MESSTXT1]" message Id="V1" Number="081" setvariable="mess_v1081" // Vergleich, ob der Text, der auf dem Pop-Up angezeigt wird // auch dem der Meldung V1 081 entspricht if V[messgtext=&V[mess_v1081]] // tue dies oder das, wenn Meldung V1 081 angezeigt wird Enter // so wird Meldung einfach weggedrückt endif endif