Donnerstag, 5. Juli 2012

Alle Jahre wieder - F4 Hilfe in Abhängigkeit vom Ergebnis

Alle Jahre wieder verfolgt mich das Thema F4-Hilfe in Abhängigkeit zum Query-Ergebnis bzw. zur gesetzten Selektion. Letztens wieder eine Anfrage eines Querydesigners aus dem Fachbereich, dass man doch irgendwie einstellen können müsste, im Selektionsbildschirm den Wert einer Variablen auszuwählen und bei der zweiten Variablen dann in der F4-Hilfe nur noch die Werte zu bekommen, welche man dann überhaupt noch sinnvoll auswählen kann, da im Ergebnis nach der Vorselektion überhaupt noch vorhanden.

Das Ergebnis ist - nein. Geht nicht. Bzw. geht nicht im Selektionsscreen, geht aber im Queryergebnis selbst, wenn man dann nochmal filtert. Das ist sogar i. d. R. die Standardeinstellung. Dazu kurz die folgende Erklärung. Es gibt drei Variablenmodi:
  • M-Modus - Werte in der Stammdatentabelle. Ist i. d. R. am schnellsten, Einfach direktes Lesen der Stammdatentabelle, fertig. Schnell und für viele Endanwender ne Katastrophe.
  • D-Modus - Nur Werte im InfoProvider. Nicht schlecht. Hier wird die Dimensionstabelle ausgelesen. Die sollte nicht so groß sein, womit das auch ganz flott gehen sollte. Für Line-Item Dimensionen klappt das allerdings nicht, dann wird doch wieder die Stammdatentabelle gelesen. Und auf großen DSO's hatte ich hier schon eine katastrophale Performance beobachtet.
  • Q-Modus - Jetzt wird es interessant. Nur bebuchte Werte für die Navigation. D. h. nur Werte des Queryergebnisses werden angezeigt. Wäre das eine Sache, würde man das schon in der Selektion bekommen. Ist aber nicht der Fall, geht nur wenn die Query schon ausgeführt ist.
Die SAP erklärt uns das nochmal schön in Hinweis 1565809. Im folgenden noch eine ganz interessante Tabelle als Übersicht daraus: