How To – SAP Analysis Spalten über Checkbox verstecken

How To - SAP Analysis Spalten über Checkbox verstecken
How To – SAP Analysis Spalten über Checkbox verstecken
4.6 Sterne
5 Bewertungen


In diesem Artikel zeige ich, wie Sie mit Excel Kontrollkästchen bestimmte Spalten in Analysis for Office filtern können. Mit dem hier vorgestellten Vorgehen kann der Benutzer die Kontrollkästchen benutzen um Spalten anzuzeigen oder zu verstecken.
Plan Spalte versteckt
Obwohl die vorgestellte Methode eine nette technische Spielerei ist, erfordert diese viel manuelle Pflege und Sorgfalt. Dementsprechend ist dieses Vorgehen sehr fehleranfällig. Auch die Pflege des Layouts kann sehr aufwändig sein.
Betrachten wir nun das folgende Beispiel. Im unseren Layout gibt es Spalten mit Ist- und Plan-Werten. Diese sind als Selektionen abgebildet.
Spalten über Kontrollkästchen verstecken
Zunächst müssen wir die Kontrollkästchen (Checkbox) einfügen. Wechseln Sie zum Reiter Entwicklertools und fügen Sie ein Kontrollkästchen als ActiveX-Steuerelement hinzu. Gegebenenfalls müssen Sie zunächst den Reiter Entwicklertools einblenden.
Checkbox einfügen
Zeichnen Sie das Kästchen in das Layout und gehen Sie anschließend über einen Rechtsklick auf Eigenschaften.
Eigenschaften der Checkbox
Ändern Sie in Eigenschaften Caption zu Actuals und LinkedCell zu B3.
LinkedCell der Checkbox
Schließen Sie nun die Einstellungen und schalten Sie den Entwurfsmodus aus.
Entwurfsmodus ausschalten
Wenn Sie nun das Häkchen bei Actuals setzen, erscheint WAHR in der Zelle B3 (LinkedCell Einstellung).
Häkchen gesetzt
Wenn das Häkchen entfernt wird, erscheint FALSCH.
Häkchen entfernt
Wiederholen Sie nun die Übung um den Plan Wert in der Zelle C3 anzuzeigen.
Eigenschaften Checkbox Plan
Nun geben die Zellen B3 und C3 den booleschen Wert der jeweiligen Kontrollkästchen aus.
Boolescher Wert der Checkbox

Als nächstes brauchen wir die IDs der jeweiligen Spalten (Selektionen) die wir anzeigen bzw. verstecken wollen. Diese können Sie unter Einstellungen Erweitert finden.
ID der Selektion
Geben Sie die ID für die Actuals Spalte in die Zelle B4 und die ID für die Plan Spalte in C4 ein. Fügen Sie ein Semikolon am Ende der ersten ID ein. Dieser wird später für den Filter benötigt. Haben Sie mehrere Actuals Spalten, trennen sie alle IDs mit einem Semikolon. Dasselbe gilt natürlich für mehrere Plan Spalten.
IDs eingeben
Als nächstes wollen wir wissen, welche Spalten der Benutzer auswählen möchte. Das heißt, welche IDs sind selektiert. Dabei nutzen wir eine einfache Excel Formel. Wenn ein Häkchen gesetzt ist (zum Beispiel B3 entspricht WAHR), dann wird die dazugehörige ID angezeigt (in diesem Beispiel aus der Zelle B4).
ID ausgewählt
Ansonsten soll nichts angezeigt werden.
Nicht ausgewählt
Anschließend müssen wir alle ausgewählten IDs verketten. Diese werden zusammen an den Filter übergeben.
Alle ausgewählten IDs
Als letzten Schritt legen wir einen Button und ein VBA Makro an. Über dieses Makro wird der Filter gesetzt. Wechseln Sie nun zu Entwicklertools Tab und fügen Sie einen Button in das Layout ein.
ActiveX Befehlsschaltfläche einfügen
Führen Sie nun einen Rechtsklick auf den Button aus und gehen Sie zum Untermenü Code anzeigen.
Code Anzeigen
Um die Spalten zu verstecken (bzw. anzuzeigen) verwenden wir SAPSetFilter API. Mit dieser API-Methode können Sie Elemente einer Dimension, die gefiltert werden sollen, festlegen. Dabei werden folgende Parameter verwendet: Alias der Formel, Dimension, Element und Format von Elementen.
Alias der Formel ist der Alias der Datenquelle. Sie können diesen beim Konfigurieren der Datenquelle in der Analysis Registerkarte Komponenten im Designbereich festlegen (Analysis Tab → Designbereich Anzeigen).
Alias der Formel
Die Dimension nach der gefiltert wird ist die Struktur in der Query. Sie können die ID in dem Reiter Erweitert der Eigenschaften finden.
Technischer Name der Struktur
Die Elemente auf die gefiltert wird, also die IDs der selektierten Spalten, werden über die Variable vWert übergeben. Das genutzte Format ist INPUT_STRING.
Das vollständige Makro sieht wie folgt aus:

Private Sub CommandButton1_Click()
Dim lResult As Long
Dim vWert As Variant
vWert = Worksheets("Tabelle1").Cells(6, 2).Value
lResult = Application.Run("SAPSetFilter", "DS_1", "01ARAMW8SCKLTFU1CA7Y16Q6Y", vWert, "INPUT_STRING")
End Sub

Wenn Sie nun das Häkchen bei Plan entfernen und den Button drücken, wird nur die Actuals Spalte angezeigt.
Actuals angezeigt
Wenn Sie nur Plan auswählen, wird die Spalte Plan anzeigt und die Spalte Actuals ist versteckt.
Plan sichtbar
Wenn beide Häkchen gesetzt sind, werden beide Spalten angezeigt.
Beide Spalten sichtbar
Viel Spaß damit! Sie können auch die Beispiel Datei herunterladen.

Ihre User beklagen sich über langsame Berichte?

  • In meinem Newsletter lernen Sie, wie Sie Abhilfe schaffen.
  • Entdecken Sie die Möglichkeiten der Performanceoptimierung.
  • Praktische Anleitungen ermöglichen Ihnen schnelle Erfolge bei der Optimierung von SAP Systemen.
  • Viele Tipps und Tricks zu SAP BI Themen.
  • Holen Sie die maximale Performance aus Ihrem SAP BI!
  • Bei der Anmeldung zu meinem Newsletter erhalten Sie das Buch „High Performance SAP BI“ als Willkommensgeschenk.
Fordere SAP Performance Tricks an

Jetzt anfordern!

* Pflichtfeld
 
Kein SPAM. Ich hasse Spam genau so wie du.

Weiterführende Links:
SAP Business Object Analysis Hilfe, edition for Microsoft Office – Analysis APIs
Wikipedia – Boolesche Variable

Bildquelle: Pixabay CC0 Public Domain

Falls Ihnen dieser Beitrag weitergeholfen hat, wäre es eine sehr nette Anerkennung meiner Arbeit wenn Sie z.B. Ihre Bücher über Amazon bestellen würden. Wenn Sie ein Produkt kaufen, erhalte ich dafür eine Provision. Für Sie ändert sich am Preis des Produktes gar nichts. Ich möchte mich an dieser Stelle jetzt schon für Ihre Unterstützung bedanken.

Denis Reis ist Business Intelligence Consultant bei Dahlbeer und gibt als Buchautor sein Wissen rund um den SAP Projektalltag weiter. Des Weiteren unterrichtet er Projektmanagement und Controlling an der Wiesbaden Business School. Der aus Düsseldorf stammende Familienmensch zählt zu denjenigen, die auf komplizierte Darstellungen verzichten und das Ganze auf den Punkt bringen.

0 Kommentare

Dein Kommentar

Want to join the discussion?
Feel free to contribute!

Kommentar verfassen