Freitag, 18. Dezember 2015
How to maintain Master Data in SAP 7.4 Video
After „SAP BW Merkmale/Infoobjekte ab 7.4 pflegen“ is one of the most read posts. I visualize this post in a short video. Here is the link: Maintain Master Data in SAP BW 7.4
Dienstag, 8. Dezember 2015
Analysis Office: How to work with Excel formulas
In Analysis
Office 2.2 a new feature was published. You can now use your own Excel formulas
in a Crosstab. First you have to add a row or column in your Crosstab. The table
design is a feature since Analysis Office 2.0.
You can add
your formula.
Then you
can drag your formula down to the end of the Crosstab.
When you now add a new characteristic to the rows, you will see the Excel formula will be automatically adjusts.
Donnerstag, 19. November 2015
Analysis Office: Best Practice Verbindung
Nachdem der Artikel "Fehler beim Herstellen einer Verbindung in Analysis for Office per VBA" sehr oft gelesen wird, möchte ich hier nach und nach ein paar Tipps & Tricks zu dem Arbeiten mit Analysis Office veröffentlichen.
Das wichtigste, wenn man mit VBA in Analysis Office arbeitet, ist das aktualisieren der DataSource. Sonst funktioniert nichts. Sobald eine Verbindung zum Business Warehouse besteht, muss jede DataSource einmal aktualisiert werden.
Wenn man nur eine DataSource hat, geht das mit dem Befehl:
Call Application.Run("SAPExecuteCommand", "Refresh", "DS_1")
Wenn man mehr als eine DataSource hat, gibt es den Befehl:
Call Application.Run("SAPExecuteCommand", "Refresh")
Damit man aber anschließend weiß, ob die Aktualisierung erfolgreich war, sollte man den Befehl folgendermaßen nutzen:
Dim lResult As Long
lResult= Application.Run("SAPExecuteCommand", "Refresh")
bzw.
Dim lResult As Long
lResult= Application.Run("SAPExecuteCommand", "Refresh", "DS_1")
Somit kann man lResult auf 1 bzw. 0 prüfen und weitere Aktionen erledigen.
Wenn man jedes Mal die DataSource(s) aktualisiert, wird sehr viel Zeit verschwendet. Um diesem entgegenzuwirken gibt es den Befehl:
Call Application.Run("SAPGetProperty", "IsDataSourceActive", "DS_1")
Mit diesem Befehl wird überprüft, ob die DataSource schon aktiv ist. Anschließend noch einmal ein Beispiel Coding
Sub AnalysisOfficeStart()
Dim lResult As Long
'Besteht eine Verbindung zum Business Warehouse
If Application.Run("SAPGetProperty", "IsConnected", "DS_1") Then
'Ist die DataSource aktiv?
If Not Application.Run("SAPGetProperty", "IsDataSourceActive", "DS_1") Then
'Aktualisieren der DataSource
lResult = Application.Run("SAPExecuteCommand", "Refresh", "DS_1")
Else
'Zeige Variablenmaske
lResult = Application.Run("SAPExecuteCommand", "ShowPrompts", "DS_1")
End If
Else
lResult = Application.Run("SAPLogon", "DS_1", "Mandant", "Benutzer", "Passwort")
lResult = Application.Run("SAPExecuteCommand", "Refresh", "DS_1")
End If
End Sub
Anschließend kann das nächste Coding ausgeführt werden.
Donnerstag, 12. November 2015
Analysis Office 2.1 Logoff via VBA
Seit Version 2.1 stellt Analysis Office nun endlich einen VBA Befehl für das Ausloggen aus dem jetzigen System zur Verfügung.
Bisher steht davon noch nichts in der Hilfe, aber es wird im SCN Forum unter "Whats new in Analysis Office 2.1" genannt.
Der Befehl lautet:
Bisher steht davon noch nichts in der Hilfe, aber es wird im SCN Forum unter "Whats new in Analysis Office 2.1" genannt.
Der Befehl lautet:
Public Sub Logoff()
Call
Application.Run("SAPLogoff",Parameter)
End Sub
Parameter:
- True: Mit diesem Wert wird die Verbindung zum System neugestartet
- False: Mit diesem Wert wird die Verbindung zum System nicht neugestartet
Ergebnis:
- 0: Ausführung fehlerhaft
- 1: Ausführung erfolgreich
Logoff mit Parameter False |
Logoff mit Parameter True |
Montag, 19. Oktober 2015
Analysis Office Springen ala BEx Query
Im BEx Analyzer konnte man aus einer Query/Arbeitsmappe in eine andere Query springen. Dies war sinnvoll, um eine Query für den Überblick zu haben und eine mit Detailinformationen.
Die Funktion gibt es auch in Analysis Office, dafür muss wie vorher in der Transaktion RSBBS alle nötigen Informationen gepflegt werden. Danach erscheint in der Analysis Arbeitsmappe folgender Eintrag.
Die Funktion gibt es auch in Analysis Office, dafür muss wie vorher in der Transaktion RSBBS alle nötigen Informationen gepflegt werden. Danach erscheint in der Analysis Arbeitsmappe folgender Eintrag.
Viel Spaß beim testen.
Donnerstag, 15. Oktober 2015
Analysis Addin stürzt ab
Wenn man mit Makros in der Analysis Office Arbeitsmappe arbeitet und die Kreuztabelle einer DataSource entfernt, kann es sein, dass das Analysis Office Addin komplett abstürzt.
Daher sollten nicht mehr benötigte DataSourcen komplett entfernt werden und nicht nur deren Kreuztabelle.
Mittwoch, 7. Oktober 2015
Enable Analysis Office Addin
Before you can use Analysis Office with Visual Basic for Application, you have to load the Analysis Addin. The code for this is in Analysis Office 1.4:
Dim addin As COMAddIn
End Sub
Private Sub EnableAnalysisOffice()
Dim addin As COMAddIn
For
Each addin In Application.COMAddIns
If addin.progID=
"SBOP.AdvancedAnalysis.Addin.1" Then
If addin.Connect= False Then addin.Connect= True
End If
Next
End Sub
In Analysis Office 2.0, SAP has changed the name of the addin. The command is now:
Dim addin As COMAddIn
End Sub
Now you can continue working with the SAP Analysis commands.
You can reach this blog under www.reyemsaibot.com
Private Sub EnableAnalysisOffice()
Dim addin As COMAddIn
For Each addin In Application.COMAddIns
If addin.progID= "SapExcelAddIn" Then
If addin.Connect= False Then addin.Connect= True
End If
Next
End Sub
Now you can continue working with the SAP Analysis commands.
You can reach this blog under www.reyemsaibot.com
Samstag, 26. September 2015
SAP Analysis mehrere Elemente filtern
Es gibt entweder die Möglichkeit direkt beim Auffrischen einer Query in Analysis for Office (AO), nach mehreren Elementen zu filtern. Dafür klickt man auf den Pfeil des Plus-Symbols. Es öffnet sich ein Menü und dort wählt man den Eintrag Zeilen über die Elementfilter hinzufügen.
Es erscheint nun folgender Dialog
Dieser Blog ist nun unter www.reyemsaibot.com erreichbar
Es erscheint nun folgender Dialog
Dort kann man entweder alles per Hand auswählen oder man klickt auf den kleinen Button links. Dieser fügt aus der Zwischenablage die Einträge ein. Wenn man das ganze mit VBA realisieren möchte, muss man den Befehl =SAPSetVariable verwenden. Dort ist es auch möglich mehrere Werte auszuwählen. Dafür definiert man einen Bereich und setzt diesen ein.
Dieser Blog ist nun unter www.reyemsaibot.com erreichbar
Dienstag, 22. September 2015
SAP Analysis Datenquellen-Informationen darstellen
Wie schon im BEx Analyzer gibt es wichtige Informationen, die man gerne in der Excel Arbeitsmappe darstellen möchte. Im BEx Analyzer sah es folgendermaßen aus:
Im Analysis für Office, kann man nun diese Informationen bequem über die Ribbon Oberfläche von Microsoft einfügen.
Wem diese Informationen wie Name der Datenquelle oder Letzte Aktualisierung nicht reicht, kann mithilfe der Formel =SAPGetInfoLabel weitere Felder sich individuell in seine Arbeitsmappe bauen. Interessant ist in diesem Zusammenhang auch die Aktualität der Daten bei Multiprovidern. Da hilft die Formel =SAPGetSourceInfo weiter.
Freitag, 18. September 2015
Ein weiteres Excel Dashboard Beispiel
Nachdem der gestrige Eintrag über „Excel Dashboard einfachgestalten“ einen solchen Anklang gefunden hat, wollte ich nun ein weiteres
Beispiel zeigen.
Beide Grafiken sind auf eine A4-Seite optimiert. Welches wirkt besser?
Dieser Blog ist nun unter www.reyemsaibot.com erreichbar.
Dieser Blog ist nun unter www.reyemsaibot.com erreichbar.
Donnerstag, 17. September 2015
Excel Dashboards einfach gestalten
Die Daten, die das Business Warehouse liefert, möchte man benutzen, entweder für einen Monatsbericht oder um aktuelle Geschehnisse des Betriebes zu sehen. Sowohl der BEx Analyzer als auch Analysis für Office liefert diese Daten immer in "Datentabellen". Diese sind weder gut zu lesen, noch ist es möglich auf den ersten Blick zusehen, was man damit aussagen möchte.
Damit es ein wenig ansehnlicher wird, baut man seine eigenen Berichte mit SVERWEIS oder sonstigen Excel-Methoden. Das Ergebnis ist meistens folgendes:
Dies passt nun schon oft in die CI des Unternehmens. Ist aber meistens auch schwer verständlich und enthält viele redundante Informationen. Das folgende Dashboard lehnt sich an die HICHERT Richtlinien an. Ist noch nicht perfekt, aber zeigt was möglich ist.
Noch ein Beispiel für ein Diagramm, welches nicht wirklich viel aussagt.
Solche einfachen Dashboards sind relativ schnell in Excel erstellt, leider nimmt sich kaum jemand Zeit dafür. Diese Beispiele wurden in Excel 2010 erstellt. Mit Excel 2013 sind noch weitere Möglichkeiten dazugekommen, Daten zu präsentieren. Einfach mal ein wenig testen.
Dieser Blog ist nun unter www.reyemsaibot.com erreichbar.
Dies passt nun schon oft in die CI des Unternehmens. Ist aber meistens auch schwer verständlich und enthält viele redundante Informationen. Das folgende Dashboard lehnt sich an die HICHERT Richtlinien an. Ist noch nicht perfekt, aber zeigt was möglich ist.
Noch ein Beispiel für ein Diagramm, welches nicht wirklich viel aussagt.
Dagegen sieht man auf folgendem Bild sofort, wie der Umsatz jeder Produktgruppe sich für den aktuellen Monat entwickelt und in welchem Bereich der Deckungsbeitrag geringer ausfällt (unterer Bereich).
Dieser Blog ist nun unter www.reyemsaibot.com erreichbar.
Dienstag, 2. Juni 2015
SAP BW Nicht zugeordnete Arbeitsmappen/Workbooks finden
Über die Transaktion se38 kann man mit dem ABAP Programm
RRMX_WORKBOOKS_GARBAGE_COLLECT Arbeitsmappen / Workbooks finden, die aktuell
keinem Benutzer oder Benutzergruppe zugeordnet sind. Durch setzen des Hakens
"gefundene Workbooks löschen" werden diese aus dem System entfernt.
Dienstag, 26. Mai 2015
Verlagerung von BW-OLAP-Funktionen auf SAP HANA
Es gibt den Hinweis 2063449 welcher den aktuellen Stand der Verlagerung von OLAP Funktionen auf die SAP Hana dokumentiert.
Dienstag, 28. April 2015
Excel VBA Text zu Datum umwandeln
Leider gibt der BEx Analyzer ein Datum als Textfeld aus. Dies führt dazu, dass die Sortierung nach einem Datum nicht richtig funktioniert. Mit folgendem Code ist die Umwandlung von Text zu Datum sehr einfach möglich.
Sub Text_zu_Datum()
Dim dDate As Date
Dim Bereich As Range
Set Bereich = Range(Selection.Address)
For Each Cell In Bereich
If IsDate(Cell.Value) Then
dDate = Cell.Value
Cell.Value = dDate
End If
Next
Donnerstag, 23. April 2015
Analysis for Office Maximale Datenzellen erhöhen
Ein limitierender Faktor in SAP BO Analysis ist die Beschränkung auf 500.000 Zellen pro Datenquelle. Entscheidend ist die Tatsache, dass es sich hierbei um Zellen handelt und nicht um Datensätze. Diese Limitierung lässt sich jedoch durch den folgenden Parameterwert in der Registry erhöhen:
HKEY_CURRENT_USER\Software\SAP\AdvancedAnalysis\Settings\DataSourceResultSetSizeLimit = -1
Der Parameter “0” bedeutet, dass der Standardwert von 500.000 Zellen definiert ist. Angaben größer Null besagen, hier ist ein definierter Wert für die zurückgelieferten Sätze eingetragen.
Mit dem Wert „-1“ werden die Einstellungen aus dem SAP Business Warehouse System gezogen. Der entsprechende Parameterwert hierfür ist im SAP Business Warehouse in der Tabelle RSADMIN unter dem Objekt „BICS_DA_RESULT_SET_LIMIT_MAXHKEY“ zu finden.
HKEY_CURRENT_USER\Software\SAP\AdvancedAnalysis\Settings\DataSourceResultSetSizeLimit = -1
Der Parameter “0” bedeutet, dass der Standardwert von 500.000 Zellen definiert ist. Angaben größer Null besagen, hier ist ein definierter Wert für die zurückgelieferten Sätze eingetragen.
Mit dem Wert „-1“ werden die Einstellungen aus dem SAP Business Warehouse System gezogen. Der entsprechende Parameterwert hierfür ist im SAP Business Warehouse in der Tabelle RSADMIN unter dem Objekt „BICS_DA_RESULT_SET_LIMIT_MAXHKEY“ zu finden.
Donnerstag, 26. März 2015
SAP BW Hierarchie und Attributsänderungslauf für alle InfoObjekte starten
- Transaktion se38 aufrufen
- Programm RSDDS_AGGREGATES_MAINTAIN ausführen
- InfoObjekte oder Hierarchie wählen
- Ausführen
Dieser Blog ist nun unter www.reyemsaibot.com erreichbar.
Dienstag, 10. März 2015
SAP BW Merkmale/Infoobjekte ab 7.4 pflegen
Leider hat die SAP ab 7.4. die Pflege von Stammdaten ins Web verlagert. Da nicht jeder die Stammdaten über das Web pflegen möchte, gibt es einen kleinen Workaround.
- Transaktion se37 aufrufen
- Funktionsbaustein RSDMD_MDMT aufrufen
- Breakpoint in Zeile 281 setzen
- Transaktion rsdmd aufrufen
- Merkmal auswählen
- Ausführen
- Variable l_use_old_ui auswählen mit Doppelklick
- Wert ändern
- Wert auf X festlegen und mit Enter bestätigen
- Debbuging mit Weiter ausführen
- Nun ist es möglich das Merkmal im Business Warehouse zu pflegen
Mittwoch, 4. März 2015
SAP COPA Kennzahlen Zuordnung
Montag, 2. März 2015
SAP COPA Rechenschemata definieren
- Transaktion spro aufrufen
- SAP Referenz-IMG aufrufen
- Menüpunkt Controlling >> Ergebnis- und Marktsegmentrechnung >> Infosystem >> Berichtsbestandteile >> Rechenschemata definieren
- Ergebnisbereich wählen z.B. 9000
- Punkt „Elemente im Rechenschema“ aufrufen und gewünschte Kennzahl auswählen
Samstag, 31. Januar 2015
Windows 10 ohne Microsoft Account nutzen
Da ich aktuell Windows 10 in einre VM teste, benötige ich keine Verknüpfung mit einem Microsoft Account. Die Lösung findet ihr hier:
http://www.baldnerd.com/install-windows-10-without-a-microsoft-account/
http://www.baldnerd.com/install-windows-10-without-a-microsoft-account/
Mittwoch, 14. Januar 2015
SAP BW Query aus Userfavoriten entfernen
- Transaktion se16 aufrufen
- Tabelle SMEN_BUFFC ausrufen
- Benutzername und/oder Report eingeben
- Ausführen
- Tabelleneintrag selektieren
- Über Menü Tabelleneintrag >> Löschen (Umschalt + F2) den Eintrag löschen
Montag, 12. Januar 2015
SAP Business Warehouse Fehlerhafte Aufteilung 2LIS_03_BF
Ab und zu gibt es einen Fehler bei der Auflösung von Strukturierten Artikeln und der Übertragung von Warengruppenhierarchien an das BW. Dabei hilft der Hinweis 1410263.
Freitag, 9. Januar 2015
Excel VBA Eigene Funktion erstellen
In Excel kann man schnell komplizierte Formeln erstellen, damit diese einfacher und übersichtlicher werden, kann man auch eigene Funktion in VBA schreiben.
Hier ein Beispiel für die Berechnung der Prozentualen Abweichung von IST zu Vorjahr
Hier ein Beispiel für die Berechnung der Prozentualen Abweichung von IST zu Vorjahr
Option Explicit
Public Function prozent(source As Double, target As Double)
prozent = Application.WorksheetFunction.IfError(IIf(target
< 0, (source - target) / -target, (source
- target) / target), 0)
End Function
=prozent(Quellfeld;Zielfeld)
Wie man sehen kann, eine sehr einfache Formel. Dazu das Beispiel als Excelformel
=Wennfehler(Wenn(Zielfeld <
0;(Quellfeld - Zielfeld) /
- Zielfeld;(Quellfeld - Zielfeld / Zielfeld),
0)
= (IST) 215 - (VJ) 204 / (VJ) 204 = 0,055 = 5,5 %
Wie man sieht ist die erste Formel leserlicher und kann ggf. einfach mit einer anderen Formel kombiniert werden.
Donnerstag, 8. Januar 2015
Excel VBA Array Inhalt löschen
Es gibt eine einfache Möglichkeit den Inhalt eines Arrays zu löschen. Möglich macht es der Befehl Erase
Option Explicit
Sub FeldBeispiel()
Dim fFeld(5, 5) As Integer
fFeld(3, 3) = 3
MsgBox fFeld(3, 3)
Erase fFeld
MsgBox fFeld(3, 3)
End Sub
Freitag, 2. Januar 2015
Überblick über Einflussgrößen für die Performance des BExAnalyzer
Im SAP Support Portal findet man dazu den Hinweis 1101143. Dieser liefert einen Überblick über die wichtigsten Einflussgrößen für die Performance des BExAnalyzer.
Abonnieren
Posts (Atom)