SmartView Tipp 21:  Mehrere Smart View Verbindungen manuell anpassen

Wie bereits im SmartView-Tipp 20 erwĂ€hnt wurde, wurde beim Umzug auf einen neuen Server auch der Servername angepasst. Dabei musste die vorherige URL durch die neue ersetzt werden. Ähnliche Anforderungen ergeben sich, wenn SmartView-Berichte von Test- auf Produktionsumgebungen umgestellt werden mĂŒssen. In diesem Artikel wird beschrieben, wie wir dies ohne den Einsatz von Makros erfolgreich umgesetzt haben.

Excel Dateien mit mehreren Reitern

In dem Navigationsfenster selektieren wir unter Home die Option Dokument Inhalt.

Abbildung 1: Dokument Inhalt.

Es wird eine Liste der Verbindungen von diesem Dokument dargestellt. Blatt 3 hat zwei Verbindungen.

Abbildung 2: Liste der Verbindungen in diesem Excel.

Jetzt wechseln wir in die Sicht „Alle Verbindungen“.

Abbildung 3: Sicht mit allen Verbindungen.

Abbildung 4: Andere Sicht.

Die Verbindungsparameter werden angezeigt.

Abbildung 5: Dokument Inhalt.

Mit der rechten Maustaste die MenĂŒoption selektieren, um die Verbindung von Sample Basic anzupassen.

Abbildung 6: Nur Sample Basic wird angepasst


Hier wird die neue Verbindung eingegeben


Abbildung 7: Kopie und einfĂŒgen.

Oder selektiert.

Abbildung 8: Selektion der Verbindung.

Danach verweisen alle drei Verbindungen von Sample Basic auf den neuen Server.

Ihr Philip Hulsebosch

Veröffentlicht in Bewirtschaftung & Automatisierung Verwendete Schlagwörter: , , ,

EPCM: Löschen von einem POV löscht auch die Daten

Im der Berechnungssteuerung (Calculation Control) besteht die Möglichkeit, eine POV fĂŒr Schnittpunkte der Dimensionen Jahr, Periode, Szenario und Version zu erstellen. Wenn man aber diese POV löscht, werden auch die darauf vorhandenen Daten entfernt. Daher sollte man diese Aktion nicht vorschnell durchfĂŒhren.

Kopie von einem POV.

Um dies zu veranschaulichen, werde ich zuerst eine POV kopieren und sie dann wieder entfernen.

Ich habe ein weitere Version mit dem Namen Working_IFRS-SII erstellt und dann die Datenbank aktualisiert. Im Calculation Control wĂ€hle ich eine Periode (leider ist es nur möglich, eine Periode gleichzeitig auszuwĂ€hlen) und gehe dann im MenĂŒ auf „Aktionen“ und wĂ€hle „Kopieren“.

Abbildung 1: Kopiervorgang

Ich selektiere das Ziel und in der Version das Working_IFRS-SII.

Abbildung 2: Selektion des Zielbereichs

Ich bekomme den Prompt, ob ich diese POV auch anlegen möchte. Dieses ist schon ein schöne Funktion, denn oft will man dieses machen.

Abbildung 3: Prompt, ob ich auch einen POV hierzu haben möchte.

Nach einer kurzen Zeit sind die Daten kopiert und ist die POV angelegt.

Abbildung 4: Nach dem Kopiervorgang.

Eine kurze Kontrolle zeigt mir das die Daten da sind.

Abbildung 5: Smart View Abfrage zu den Daten.

Löschen eines POV.

Im der Berechnungssteuerung (Calculation Control) wÀhle ich den POV den ich entfernen möchte. In diesem Fall sind es die Daten die ich soeben kopiert habe.

Abbildung 6: Selektion des POV.

Ich bekomme ein Fenster mit grĂŒnem haken und BestĂ€tigung. Hierin steht deutlich, dass die Daten gelöscht werden. Vielleicht wĂ€re es besser ein rotes Ausrufezeichen hier zu verwenden und kein grĂŒnen Haken.

Abbildung 7: Prompt, ob man wirklich die Daten löschen will.

Gemeint sind hier die echten Daten, nicht die Meta-Daten im System zu diesem POV.

Abbildung 8: Unnötiges Informationsfenster dass der Job gestartet wurde.

Ein kurzer Blick, und ja, die Bewegungsdaten sind weg.

Abbildung 9: Smart View Abfrage zu den Daten.

Fazit

Aufpassen mit dem entfernen von Objekte wie einem Point-of-View. Dieses kann zu einem Datenverlust fĂŒhren.

Ihr Philip Hulsebosch

Veröffentlicht in Profitability and Cost Management Verwendete Schlagwörter: ,

SmartView Tipp 20:  Automatisiert SmartView Verbindungen anpassen

Beim Umstellen eines Servers wurde auch der Servername angepasst. Dieser Kunde hatte auf ein DNS verzichtet, daher mussten die Verbindungsparameter im SmartView manuell angepasst werden. Die vorherige URL musste durch die neue ersetzt werden. Dies stellte natĂŒrlich eine erhebliche Herausforderung dar, die wir unseren Benutzern nicht zumuten wollten. Aus diesem Grund haben wir eine Lösung mit einem Makro implementiert. In diesem Artikel wird beschrieben, wie wir dies umgesetzt haben.

SmartView und Makro‘s

Smart View hat seine eigene Makro Bibliothek welche sehr gut beschrieben ist in der Dokumentation „Oracle Smart View of Office Developer‘s Guide“. Hier sind alle verfĂŒgbaren Funktionen gelistet und beschrieben.

Wir benötigten die Funktion „HypModifyConnection“, um die Verbindungsparameter anzupassen. Daher haben wir ein Makro in einer neuen Excel-Datei erstellt, das diese Parameter enthĂ€lt. In diesem Makro haben wir außerdem eine Option hinzugefĂŒgt, mit der der Dateiname der Excel-Datei eingegeben werden kann, die angepasst werden soll. Diese Datei haben wir „URL_CONN_CHANGE.xlsm“ genannt.

Das Makro ist wie folgt:

Private Declare PtrSafe Function HypModifyConnection Lib „HsAddin“ (vtDocumentName, vtSheetName, vtGridName As Variant, vtServer, vtURL, vtApp, vtDB, vtConnParam) As Long

Dim strFileName, strNewConnection As Variant

Sub ModifyConnection()

   Application.ScreenUpdating = False

   strFileName = InputBox(„Name of the File you want to change“)

   ‚modify url in a particular workbook for all SV sheets#

    s = HypModifyConnection(strFileName, „“, „“, „“, https://epm-new.my.com/aps/SmartView, „“, „“, „“)

End Sub

Dieses Makro Àndert im Handumdrehen alle Verbindungen auf den Servernamen https://epm-new.my.com/aps/SmartView, unabhÀngig davon, wie viele Registerkarten Verbindungen enthalten.

Anwenden des Makro’s

Die Datei sollte in dasselbe oder ĂŒbergeordnete Verzeichnis abgelegt werden, in der sich die Excel’s befinden, deren Verbindungsparameter geĂ€ndert werden mĂŒssen.

Die Datei sollte dann geöffnet werden.

Mit der Tastenkombination „Alt“ und „F8“ wird das Makrofenster geöffnet

Abbildung 1: Makrofenster

Danach sollte der Eintrag „ModifyConnection“ and ‚“AusfĂŒhren“ („Execute“) selektiert werden.

Abbildung 2: Starten des Makro‘s

Abbildung 3: Eingabe eines Dateinamens.

Danach kann man in der Datei kontrollieren, ob diese Verbindung richtig angepasst wurde.

Interessanterweise hatten die Benutzer herausgefunden, dass sie alle Verbindungen in der gesamten Arbeitsmappe auf einmal Àndern konnten, indem sie keinen Namen eingegeben haben.

Ihr Philip Hulsebosch

Veröffentlicht in Bewirtschaftung & Automatisierung Verwendete Schlagwörter: , ,

Essbase Error(1300052): The argument [Script] is missing one or more dimensions

In Profitability and Cost Management besteht die Möglichkeit, benutzerdefinierte Berechnungsregeln (Custom Calculation Rules) zu erstellen. In diesen Regeln können einfache MDX-Berechnungen ausgefĂŒhrt werden, zum Beispiel fĂŒr das Kopieren von Daten. Ich habe kĂŒrzlich eine Situation erlebt, in der ich die oben genannte Fehlermeldung bekam und dann viel Zeit damit verbracht habe, eine Lösung zu finden. Da ich online keine Hilfe finden konnte, habe ich beschlossen, diese Erfahrung in meinem Blog zu teilen.

Die Syntax ist, wie bei Essbase ĂŒblich, dass das Zielelement links steht und zusammen mit den Zieldimensionen den Datenbankschnitt darstellt. Auf der rechten Seite des :=-Operators befindet sich die Quelle, aus der die Daten stammen.

Abbildung 1: Fenster von einer Benutzerdefinierte Berechnungsregel

Ich hatte die Ergebnisdimension PCM_Balance genommen und mein Skript sah so aus:

[PCM_Input]:= NONEMPTYTUPLE ([CA], [FTE_Sum], [PCM_Input]) ([CA],[FTE_Sum],[DR_FTE],[NoActivities],[NoProduct],[NoView],[PCM_Input]);

Beim Validieren kam dann immer diese Fehlerbotschaft:

Missing resource: com.essbase.api.base.EssException: Cannot Perform Custom Calc. Essbase Error(1300052): The argument [Script] is missing one or more dimensions

Abbildung 2: Fehlerbotschaft

Aber beim Registerblatt Validierung kam kein Fehler.

Abbildung 3: Fenster der Validierung

Dann geht man viele Male durch die Spezifikation der Zieldimensionen und des Code
. Schaut sich wieder die Dimensionen und die Elemente an
 Verzweifelt dann fast


Bis ich auf die Dimension PCM_Calculation Rules kam und diese hinzugefĂŒgt habe.

Dieser Code funktionierte dann wohl.

[PCM_Input]:= NONEMPTYTUPLE ([Colas], [FTE_Sum], [PCM_Input]) ([Colas],[FTE_Sum],[DR_FTE],[NoActivities],[NoProduct],[NoView],[PCM_Input], [PCM_Calculation Rules] );

 Ihr Philip Hulsebosch

Veröffentlicht in Essbase, Profitabilty and Cost Management Verwendete Schlagwörter: , , ,

Ohne Skripting einen Teilbereich der Daten Löschen in PCM

Profitability and Cost Management ist allgemein bekannt fĂŒr seinen Aufbau ohne Skripting. Selbst beim Erstellen eines Prozesses, der einen Teilbereich der Daten löscht, ist es nicht erforderlich, MDX zu schreiben. In diesem Beitrag werde ich demonstrieren, wie dies erreicht werden kann.

Unter Application und Overview sieht man das MenĂŒ Aktionen.

Abbildung 1: Arbeitsblatt mit Applikation Option

Hier wÀhlt man dann Clear Cube aus.

Abbildung 2: AktivitĂ€ten MenĂŒ

Ich möchte ein neues Skript erstellen und wÀhle daher den Knopf Create.

Abbildung 3: Datenlösch Skripte

Bei der Auswahl von Partial Data wird das Fenster erweitert, und es besteht die Möglichkeit, Elemente in den Dimensionen auszuwÀhlen.

Um einen Teil der Daten zu löschen, wĂ€hle ich Partial Data aus. Da wir uns in einer ASO-Datenbank befinden, habe ich die Möglichkeit, entweder ein logisches oder physisches Löschen durchzufĂŒhren. Beim logischen Löschen werden alle Datenwerte mit dem umgekehrten Vorzeichen in einen anderen Bereich geladen. Dieser Ansatz ist schneller, jedoch bleiben die Daten langfristig in der Datenbank erhalten. Beim physisches Löschen sind die Daten auch echt aus der Datenbank entfernt.

Abbildung 4: Fenster mit den Definitionen

Leider wird das Fenster nicht groß genug, um die gesamte Auswahl anzuzeigen.

Ich wÀhle Basic Mode und komme in das nÀchste Fenster.

Abbildung 5: Fenster mit der Selektion des Löschbereichs

Im Advanced Mode kann ich dann eine MDX Formel angeben, wie in Abbildung 6 gezeigt wird. Also, wenn man selbst ein Skript schreiben will, dann ist dieses möglich. Dieses ist eine sehr schöne Option.

Abbildung 6: Experten Modus

Ein Druck auf aktualisieren (Refresh) und meine neue Rule wird sichtbar.

Abbildung 7: Starten der Rule

Von hier aus kann ich diese dann starten.

In der Jobconsole sieht man dann, dass dieser Prozess erfolgreich war.

Abbildung 8: Jobconsole mit Eintrag

Fazit

In Profitability and Cost Management ist es also Ă€ußerst einfach, ohne selbst ein Skript schreiben zu mĂŒssen, einen Prozess einzurichten, um einen Teilbereich der Daten zu löschen.

Ihr Philip Hulsebosch

Veröffentlicht in EPM - 11.2, Essbase, Profitabilty and Cost Management Verwendete Schlagwörter: , , , ,

Allokationen oder Umlagen – jetzt mit EPCM

Wenn das Wort Allokationen (Umlage) fĂ€llt, sollten sie an Profitability and Cost Management denken. Ein Werkzeug welches stark verbessert wurde und ganz und gar fĂŒr dieses geschaffen ist. In diesem Beitrag nehme ich sie mit und zeige, warum mir dieses so gefĂ€llt.

Was ist EPCM?

Das Profitabilty and Cost Management ist kein neues Produkt im EPM, aber es gab eine komplette Überarbeitung was es zu einem richtig guten Werkzeug macht. Es ist Teil der Enterprise Performance Management Suite und hat zum Ziel Allokationen und Activity Based Costing einfacher und schneller zu machen. Hierbei ist das Ziel, dass keine Calc Scripte geschrieben werden mĂŒssen, auch erreicht.

Unter der Haube besteht die Anwendung aus zwei ASO Datenbanken. Ja, sie lesen richtig. In ASO Datenbanken kann man zwei typen von Berechnungen mit Skripte machen. Eine ist ein (einfaches) Custom Calc Skript welches ich in meinem Beitrag „Datacopy in einer ASO Datenbank“ beschrieben habe. Die andere ist eine Allokation von Daten, und diese wird im Hintergrund verwendet. Ferner Ă€hnelt sich viel einer Planning Cloud Anwendung.

Modellierung

Das HerzstĂŒck von Profitability and Cost Management ist unter der Kachel „Modellierung“ zu finden. Hier gibt es die MenĂŒpunkte Modelle, Designer, Modellvalidierung, Berechnungssteuerung, Berechnungsanalyse und Regelabgleich. Ich werde diese zuerst ihnen vorstellen, und dann ein Allokationsbeispiel zeigen.

Abbildung 1: Modellierung Kachel

Die Allokationen werden in Modelle verteilt. Die Einteilung kann auf verschiedene Kriterien geschehen und in der Beispielanwendung wurde unterschieden zwischen Szenarien. Ziel ist es eine bestimmte Allokationsanforderung zusammen zu fassen.

Abbildung 2: Modelle

In dem Modell kann der erste Schritt vom Kontext ausgewĂ€hlt werden. Hier kann man z.B. das Szenario festlegen und dann braucht man sich darum nicht mehr zu kĂŒmmern. Es ist wie ein FIX oben im Skript.

Abbildung 3: Modell bearbeiten und der Kontext ist hier NoDriver in der Dimension Driver.

Regelset

In dem Designer werden die Regeln erstellt. In dem Beispiel in Abbildung 4 sind verschiedene Regelsets und darunter Regeln dargestellt.

Abbildung 4: Designer mit Regelsets und darunter Umlageregeln.

In einem Regelset bringt man Allokationsschritte zusammen wie die Verteilung von GebÀudekosten auf Abteilungen mit verschiedene Logiken.

Hier kann die Abfolge der Regelsets eingestellt werden. Auch kann man diese leicht aktivieren oder deaktivieren. Dann kann definiert werden, ob die Berechnung der Regeln seriell oder parallel stattfinden muss. Auch ob iterative Berechnungen notwendig sind.

Abbildung 5: Bearbeiten von einem Regelset.

Auch hier ist in dem Reiter Elementauswahl ein Kontext zu definieren. In diesem Fall wird fĂŒr die unterliegenden Regeln die angezeigten Dimensionen auf die Elemente gesetzt.

Abbildung 6: Kontext von dem Regelset.

Umlageregel

In der Umlageregel ist der Rechenschritt untergebracht. Der Regelname wird ein Element in der Outline. Dieses hat den Vorteil, dass man hier die Ergebnisse von diesem Rechenschritt sehen und analysieren kann.

Auch hier ist eine Abfolge einzugeben und man kann hier den Regelkontext ĂŒbernehmen. Besonders finde ich, dass hier entweder ein Betrag (Wert oder Prozentsatz) angegeben werden kann, der von der Quelle aus verteilt wird. Der Rest bleibt erst einmal auf der Quelle und kann in weiteren Umlageregeln anders verteilt werden.

Abbildung 7: Umlageregel mit verschiedene Reiter

Die Quelle und das Ziel werden ausgewÀhlt. Das Gute daran ist, dass immer auf Level0, also dem untersten Level gerechnet wird, und entsprechend kann man die Parent Elemente auswÀhlen. In dem Beispiel in Abbildung 8 wird von dem Knoten Corporate auf 7 verschiedene Entities verteilt.

In dem Account ist links „Facilities Expenses”eingegeben, und auf der rechten Seite wird hierauf Bezug genommen. Hierdurch muss man nichts auswĂ€hlen – nur was anders ist, muss angegeben werden.

Abbildung 8: Quelle – Ziel Definition

Treiber

Bei der Definition von dem Treiber kann man wieder aus allen Dimensionen eine Auswahl machen. Standard ist auch hier wieder die Referenz auf die schon eingetragenen Elemente von Regelset und Umlageregel eingetragen. Um den Ort, wo der Treiber eingetragen ist, braucht hier nur ein Account angegeben zu werden.

Abbildung 9: Treiberdefinition

Verrechnung

Die Verrechnung ist der Betrag, der nicht Umgelegt wurde. Hier kann man angeben, wo dieser hin gebucht werden muss. In der Regel bleibt dieser in der Quelle.

Abbildung 10: Verrechnung

Berechnungssteuerung

Wir springen jetzt in die Berechnungssteuerung. Dieses ist fĂŒr den Planning-Kenner etwas ungewöhnlich, denn hier gibt es einen Point Of View (POV) aus Jahre, Periode, Szenario und Version. Ja, die Dimensionen einer Planungseinheit.

Nur wenn der Status auf Entwurf steht, kann dieser POV gerechnet werden.

Abbildung 11: Berechnungssteuerung mit POV Selektion

Wenn mindestens ein POV ausgewĂ€hlt wurde, wird der Knopf „Modell berechnen“ aktiv. FĂŒr diesen Bereich wird jetzt eine Berechnung und Kriterien ausgewĂ€hlt. Diese gehen in den Berechnungsjob.

Oben wird zuerst das Modell ausgewÀhlt.

Abbildung 12: Der Berechnungsjob

Dann kann man unten im Verarbeitungsbereich eine weitere Selektion der Regelsets oder Umlageregeln machen. In den meisten FĂ€llen möchte man aber alle ausfĂŒhren, damit alle Kosten umgelegt sind.

Die Performance ist sehr gut. Wir kennen ja die stundenlangen Berechnungen in BSO, wo verteilte Werte zuerst wieder Aggregiert werden mĂŒssen, damit diese in dem nĂ€chsten Schritt dann weiter verteilt werden können.

Hier vollzieht sich das alles im Minutenbereich.

Berechnungsanalyse

In der Berechnungsanalyse kann man den Fortschritt ĂŒberwachen, aber auch verschiedene andere Aktionen starten. So gibt es anstatt einer Logdatei, einen Bericht mit den Berechnungsstatistiken und die Möglichkeit einen Vergleich mit einem anderen Modell zu machen.

Abbildung 13: Berechungsanalyse mit verschiedenen Optionen.

Regelabgleich

In dem Regelabgleich sehen wir den Inhalt der Dimension PCM_Balance. Diese Logik ist schon gut aufgebaut. Wir haben die Eingabe – diese wird nie durch die Berechnungen angefasst, und damit sind diese wiederaufsetzbar. In der Anpassung kann man, wenn gewollt noch einen Betrag eingeben. Der Wert in Umverteilung/Eingang wird dann verteilt und kommt dann umgekehrt in der Umverteilung/Ausgang aus. Hierdurch sollte das Saldo dann 0 sein.

Wenn nicht alles in einer Regel verteilt wurde, dann gibt es einen Laufenden Rest. Dieser steht dann im nĂ€chsten Schritt, mit z.B. einer andern Logik zur VerfĂŒgung um auf andere Weise verteilt zu werden.

Abbildung 14: Die Logik von Eingabe, Umverteilung/Eingang und Umverteilung/Ausgang

Hier kann man sehr schnell sehen, ob die Umlage geklappt hat, und wo sich Delta’s befinden.

Die Werte sind alles anklickbar, wo sich ein Analysefenster öffnet, um nachzusehen, wo es klemmt!

Fazit

Wie sie sehen konnten, ist der Anwendungstyp PCM richtig gut um Umlagen zu berechnen. Ohne Skripte zu schreiben, kann ein Anwender die Regeln erstellen und ausfĂŒhren. Es gibt direkt eine Dokumentation wie die Allokationen aufgesetzt sind und ferner gibt es Formulare, Berichte und vieles mehr, was sie auch aus dem Planning schon kennen.

Ihr Philip Hulsebosch.

Veröffentlicht in Essbase, Profitabilty and Cost Management Verwendete Schlagwörter: , , ,

DATACOPY in einer ASO Datenbank

Viele denken, dass es in einer Aggregate Storage Datenbank keine Calc Skripte gibt. Nun, das ist nicht ganz falsch, aber es gibt 2 Funktionen, die wir in Blockstorage in Calc Skripte ausfĂŒhren: DATACOPY und ALLOCATION. In diesem Beitrag zeige ich, wie einfach eine Datenkopie innerhalb der ASO Storage Datenbank zu machen ist.

Wie es funktioniert

Ich nehme die ASOSamp.Sample Datenbank, die als Beispielanwendung in Essbase verfĂŒgbar ist. Hier möchte ich die Daten von dem Element „Previous Year“ in das „Current Year“ kopieren.

Abbildung 1: Daten der ASOSamp vor dem Kopieren.

Wir brauchen zum Kopieren ein MaxL Skript und eine Datei mit einem Befehl darin. MaxL skripte kennen sie Wahrscheinlich schon, aber dieses hat 3 unterschiedliche Teile, die ich in hierunten farblich markiert habe.

  • Der erste Teil ist, dass eine Berechnung auf der ASOSamp mit einem Skript ausgefĂŒhrt werden soll.
  • Der zweite Teil gibt die Point-Of-View (POV) zu diesem Skript.
  • Der dritte Teil definiert die Region, welche involviert ist.

MaxL Skript

execute calculation on database ‚ASOsamp‘.’Sample‘ with local script_file „C:\temp\ASO_COPY.csc“

POV „Crossjoin(Descendants([Geography], [Geography].Levels(0)),

Crossjoin(Descendants([Transaction Type], [Transaction Type].Levels(0)),

Crossjoin(Descendants([Stores], [Stores].Levels(0)),

Crossjoin(Descendants([Products], [Products].Levels(0)),

Crossjoin(Descendants([Income Level], [Income Level].Levels(0)),

Crossjoin(Descendants([Age], [Age].Levels(0)),

Crossjoin(Descendants([Promotions], [Promotions].Levels(0)),

Crossjoin({[Cash]},

Crossjoin({[Original Price]},

Descendants([MTD], [Time].Levels(0) ))))))))))“

SourceRegion „{[Previous Year],[Current Year]}“;

Wichtig, alle Dimensionen mĂŒssen aufgenommen werden. Also nicht, wie in MDX, wo man die TopKnoten weglassen kann.

Die Skript Datei muss aus dem MaxL zu finden sein. Wenn das MaxL auf dem Server gestartet wird, dann sollte der Pfad aus der Sicht des Servers definiert werden. Zum Beginnen ist es am einfachsten, wenn das MaxL lokal liegt.

Skript Datei

Der Befehl in der Skript Datei bezieht sich auf die SourceRegion in dem MaxL. Es ist ein MDX Statement welcher hierunten dargestellt ist.

([Current Year]) := ([Previous Year]) ;

Abbildung 2: Skript Datei

Beim AusfĂŒhren des MaxL wird eine Ausgabe wie in Abbildung 3 dargestellt. Hierin sieht man, dass Shared Member nicht berĂŒcksichtigt werden.

Abbildung 3: Erfolgreiches Kopieren der Daten.

Ein Aktualisieren des Excel Blattes zeigt jetzt die kopierten Daten an.

Abbildung 4: Die Daten wurden kopiert.

Noch ein Beispiel

In dem nachfolgenden Beispiel zeige ich, wie der Dezember-Wert von dem Vorjahr in den Januar des Aktuellen Jahres kopiert wird. Eine hĂ€ufig verwendete Funktion bei Inventar oder andere Bilanz-GrĂ¶ĂŸen.

MaxL Skript 2

Hier wird die SoureRegion erweitert mit der Dimension Time. Es wurden 2 Tupel gebildet.

execute calculation on database ‚ASOsamp‘.’Sample‘ with local script_file „C:\temp\ASO_COPY.csc“

POV „Crossjoin(Descendants([Geography], [Geography].Levels(0)),

Crossjoin(Descendants([Transaction Type], [Transaction Type].Levels(0)),

Crossjoin(Descendants([Stores], [Stores].Levels(0)),

Crossjoin(Descendants([Products], [Products].Levels(0)),

Crossjoin(Descendants([Income Level], [Income Level].Levels(0)),

Crossjoin(Descendants([Age], [Age].Levels(0)),

Crossjoin(Descendants([Promotions], [Promotions].Levels(0)),

Crossjoin({[Cash]},

{[Original Price]} ))))))))“

SourceRegion „Crossjoin({[Previous Year],[Current Year]},{[Jan],[Dec]})“;

Skript Datei 2

Die Skript Datei wird entsprechend erweitert. Das Ziel steht, wie bei Calc Skripte, an der linken Seite.

([Current Year],[Jan]) := ([Previous Year],[Dec]) ;

Und eine Aktualisierung zeigt, dass die Kopie der Zahl funktioniert hat.

Abbildung 5: Die Dezember Daten wurden in den Januar kopiert.

Ihr Philip Hulsebosch

Veröffentlicht in Essbase Verwendete Schlagwörter: , ,

SmartView Tipp 18: Daten Löschen in Essbase – richtig machen

Daten können unterschieden werden in Stammdaten und Bewegungsdaten. Dieser Beitrag behandelt das Thema wie Bewegungsdaten in Essbase gelöscht werden können.

Die Basis

Etwas was Essbase besonderes macht ist, dass es einen Unterschied zwischen 0 und #missing gibt. Technisch gesehen ist eine 0 fĂŒr Essbase eine Zahl wie jede andere auch. Sie nimmt gleichviel Speicherplatz ein und wird wie alle anderen auch in den Dimensionen aggregiert. Auch beim Datacopy geht sie mit in die Ziel-Elemente. Hierdurch wird eine 0 sehr schnell zu sehr vielen.

Das #missing bedeutet in Essbase, dass es keinen Wert gibt. Es wird kein Speicherplatz reserviert und es gibt die Option AGGMISSNG ON die Knotenwerte mit diesem ĂŒberschreibt.

Ausnullen

Eine weit verbreitete Praxis ist es, um unerwĂŒnschte Daten mit einer 0 zu ĂŒberschreiben. Inhaltlich wird die Zahl dann zwar eine 0, aber technisch ist noch immer ein Wert in der Datenbank. Nun ist es im kleinen Stil nicht so schlimm, aber ich habe schon Anwendungen gesehen, die mehr als 20% der Werte Nullen hatten. Hierdurch wurden diese unnötig groß, denn diese Daten wurden immer wieder verarbeitet.

Wenn es also keine echte 0 ist, sollte das Ausnullen mit einem #missing geschehen. Dieses Wort kann wie eine Null in Excel Zellen kopiert werden.

Eine 0 ĂŒberschreiben in Smart View.

Wenn in der Anzeige das Label fĂŒr Keine Daten als #NumericZero ist ausgewĂ€hlt, dann kann der Benutzer keinen Unterschied zwischen einer echten 0 und einem #missing sehen.

Diese Anzeige ist sehr praktisch, wenn Formeln wie Summierung ĂŒber Zeilen oder Spalten gemacht werden. Mit einem #missing kommt Excel dann nicht klar und funktioniert die Formel nicht.

Abbildung 1: Smart View Datenoptionen

Um den oben genannten Fehler des Ausnullen nicht automatisch anzuwenden, wenn Daten hochgeladen werden, ĂŒbersetzt Smart View die Nullen mit #missing.

Dieses hat aber zur Folge, dass man mit dieser Anzeigeoption keine 0 hochladen kann!

Das auch das Ausnullen wie oben beschrieben nicht funktioniert.

Wenn sie also mal ein Excel mit einer Abfrage haben, und sie wollen diese Daten mit 0 ĂŒberschreiben und diese dann hochladen und sie sehen, dass dieses nicht funktioniert, dann probieren sie es mal mit #missing!

Man kann natĂŒrlich auch die Anzeigeoption umstellen.

Ihr Philip Hulsebosch

Veröffentlicht in Essbase Verwendete Schlagwörter: , ,

Planung – Reihenfolge der Monate wieder herstellen

Durch einen Upgrade wurde irgendwie die Reihenfolge der Elemente in der Dimension Periode verÀndert. Diese Dimension kann nicht einfach mit normalen Mitteln umsortiert werden, denn es ist eine spezifische Dimension mit Logik wie z.B. Verteilungslogik in Formulare. Daher muss ein anderer Trick her und dieser wird in diesem Beitrag beschrieben.

Ausgangssituation

In der Abbildung sieht man die Reihenfolge der Monate und Quartale. Dieser Kunde hat das Fiskaljahr von April bis MĂ€rz, aber hier ist es alles durcheinander.

Abbildung 1: Reihenfolge der Monate und Quartale ist falsch.

Abbildung 2: Elemente in der Outline

Wie die notwendigen Anpassungen machen?

Die Elemente können als nicht in die richtige Reihenfolge verschoben werden. Wir werden diese Umbenennen mĂŒssen, sodass die richtige Struktur wieder entsteht.

Schritte

  1. Export aller Daten.
  2. Löschen der Daten.
  3. In Planning die Elemente umbenennen. Dieses ist notwendig, denn es kann keine doppelten Namen in der Outline geben. Hierzu wird ein Punkt hinter dem Namen geschrieben: Jul wird Jul. Aug wird Aug. Etc.

Abbildung 3: Elemente und Alias wurden umbenannt.

  • Datenbank aktualisieren.

Abbildung 4: Aktualisieren der Datenbank.

Danach sind die umbenannten Elemente auch in der Outline zu sehen.

Abbildung 5: Elemente wurden umbenannt.

  • Die Elemente und Alias, jetzt den richtigen Namen geben anhand der Position in der Struktur.

Abbildung 6: Apr kann jetzt erstellt werden, denn das andere Element heisst Apr.

Abbildung 7: fertig mit dem Umbennen

Danach muss die Datenbank wieder aktualisiert werden, um diese Elemente auch in das Essbase zu bekommen.

  • Datenbank aktualisieren.

Danach sieht auch die Outline wieder richtig aus.

Abbildung 7: fertig mit dem Umbennen

Abbildung 8: Struktur ist jetzt korrekt.

  • Exportierte Daten wieder importieren und high-level Kontrolle machen.

Fazit

Die elemente der Dimension Periode können nicht einfach verschoben werden. Dieses ist technisch nicht möglich. Wenn die Reihenfolge nicht mehr stimmt, dann bleibt einem nur das Umbenennen ĂŒbrig.

Ihr Philip Hulsebosch

Veröffentlicht in Installation, Konfiguration & Tuning, Planung & Berichtswesen Verwendete Schlagwörter: , ,

SmartView Tipp 17: Zellenstile als Standardoption

Smart View Tipps sind kurze BeitrÀge in einer Reihe von Oracle Smart View FunktionalitÀt in der Tipps, Tricks aber auch Störungen beschrieben werden. Es ist eine Sammlung meiner Erfahrungen bei der Nutzung von Smart View. Ich hoffe, diese helfen den Lesern bei der Nutzung von SmartView.

Nach einer langen Zeit gibt es doch wieder ein Thema fĂŒr die SmartView Tipp Reihe – Zellenstile. Ich bekam die Frage, ob man nicht direkt die richtigen (Zahlen) Formatierung bei neuen Abfragen bekommen kann. Hierzu eine Antwort.

Smart View Optionen

In Smart View Optionen gibt es im Grunde zwei Möglichkeiten:

  1. Zellenstile verwenden. Die Konfiguration, welcher Stil auf die Elemente und welche auf die Datenzellen angewendet werden sollte.
  2. Excel-Formatierung verwenden. Dieses bedeutet das die Konfiguration in Excel verwendet wird. Dieses ist bei großen Abfragen deutlich schneller. Siehe hierzu auch SmartView Tipp 11:  Performance Verbesserung.

Abbildung 1: Formatierung Optionen

Zellenstile verwenden.

Die Zellenstile beziehen sich nur auf die Farben. Das kann praktisch sein, um z.B. zu sehen was ein Knotenelement ist und welche Zellen schreibgeschĂŒtzt sind. Man kann auch an trĂŒben Wintertagen sehr bunte Excel ArbeitsblĂ€tter machen. ?

Es werden also nicht die Nachkommastellen konfiguriert. Die Excel Settings werden auf den Standard zurĂŒckgesetzt. STRG+1  oder das Standard Arbeitsbuch Ă€ndern, welches bei der Installation erstellt wird (Program Files/Microsoft Office/Office /xlstart

Abbildung 2: Farbpalette fĂŒr Zellen

Excel-Formatierung verwenden.

So wie der Name schon sagt, es wird die Standard-Konfiguration von Excel verwendet. Smart View bietet dort nichts Weiteres.

Wenn ein neues Arbeitsblatt erstellt wird, dann gibt es eine Formatierung die (mit einiger MĂŒhe) in Excel definiert werden kann. Dieses ist jetzt nicht weiter Teil des Blogs.

Ein Workaround ist sich selbst eine Vorlage zu machen und diese dann zu nehmen. So kann es praktisch sein, fĂŒr jede Anwendung ein Template Excel zu haben, wo deine gewĂŒnschte Datenformatierung (z.B. 2 Dezimalstellen und Euro Zeichen) und z.B. auch das Jahr, Version, Szenario schon eingestellt sind. Diese kann man dann in Excel „Festpinnen“ damit diese einfach erreichbar sind.

Abbildung 3: Festpinnen von Tempate Excel

Generell

Jedes Arbeitsblatt hat seine eigene Konfiguration. Unter dem OK Knopf kann man aber die eingestellten Parameter entweder auf alle BlĂ€tter ĂŒbertragen oder als Standardoption speichern. Wenn letzteres gemacht wird, dann gilt diese auch fĂŒr neue Excel Formulare (nicht aber fĂŒr bestehende)

Abbildung 4: Die Standardkonfiguration von Excel.

Meine Empfehlung ist mit einer ausgewÀhlten Standardoption zu arbeiten, wo Excel-Formatierung verwendet wird.

Ihr Philip Hulsebosch.

Veröffentlicht in Planung & Berichtswesen Verwendete Schlagwörter: , , ,

Error: 1051082: Substitution variable already exists

Sie haben vielleicht diese Fehlerbotschaft schon einmal gesehen beim Erstellen einer Substitutionsvariable, aber hier kam diese als ich den Wert Àndern wollte. Hier ist eine Beschreibung dieser Erfahrung.

Ein Name von einer Substitutionsvariable kann es nicht doppelt geben. Zumindest nicht fĂŒr dieselbe Anwendung/Datenbank. Wenn man also eine doppelt anlegen will, dann ist eine Fehlerbotschaft wie im Titel des Beitrags steht auch wohl zu erwarten.

Das interessante war aber, dass ich im EAS den Wert einer bestehenden Variablen Ă€ndern wollte. Nichts neu, sondern nur ein anderes Szenario bei Value. Diese gilt fĂŒr alle Applications und alle Datenbanken. Wie in Abbildung 1 zu sehen ist, war das nicht möglich.

Abbildung 1: Create Variable failed

EAS gab auch diese Fehlerbotschaft zurĂŒck.

                MaxL Command               November 25, 2022 2:48:53 PM CET

Error: 1051082: Substitution variable Curr_Scenario already exists

SpÀter stellte sich heraus, dass im Hintergrund eine Restrukturierung lief.

Abbildung 2: Es lief nog ein restructure

Als diese fertig war, konnte ich ohne Probleme die Variable anpassen.

Dabei fiel mir aber auf, dass eine andere Variable nicht mehr funktionierte. Ich bekam den Fehler dass sie nicht existierte. Nun, ich sah sie doch echt….

Error: 1012042 Substitution variable [CURR_Year] doesn’t exist.

Nachdem ich diese neu erstellt hatte, funktionierte diese auch wieder. Auch diese war eingestellt fĂŒr alle Anwendungen und alle Datenbanken.

Ihr Philip Hulsebosch.

Veröffentlicht in Bewirtschaftung & Automatisierung, Essbase Verwendete Schlagwörter: , ,

Datenblöcke erstellen in Essbase

Bei der Erstellung von Calc Skripte ist es notwendig darauf zu achten, dass Datenblöcke erstellt werden. Essbase hat eine „Sicherung“, dass nicht unnötig Datenblöcke entstehen und somit die Datenbank grösser machen. Als Entwickler hat man aber eine Herausforderung und Wissen rund um dieses Thema ist also wichtig. Dieser Beitrag beschreibt zuerst was ein Datenblock ist und dann wie diese entstehen.

Die Definition eines Datenblocks

Zuerst einmal die Basis: In der Speicherform Block Storage und Hybrid Storage werden Daten in sogenannte Datenblöcke gespeichert. Dieses werden gebildet aus den Gespeicherte Elemente (Stored Member) der Dense Dimensionen. Stored Member

In der Abbildung 1 gibt es fiktiv 3 Dimensionen mit jeweils 3 Member. In allen Dimensionen sind 2 Elemente als Store Data oder Never Share definiert. Ein Element in jeder Dimension ist z.B. auf Dynamisch Berechnen eingestellt. Das Datenblock auf der Festplatte/SSD hat dann die GrĂ¶ĂŸe der orangen markierten Zellen.

Abbildung 1: Datenblock im Speicher

Wenn der Datenblock in den Speicher kommt, werden die ĂŒbrigen Zellen, hier grau dargestellt, ausgerechnet und wird der Block also grösser (Expanded Blocksize).

Wenn dieser abgebildete Datenblock in einer Anwendung mit 5 Dimensionen ist, dann kann es einen solchen Datenblock nur fĂŒr die Schnittmenge der Stored Elemente von den restlichen 2 Dimensionen geben.

Beispiel von 2 sparse Dimensionen zu dem oben gezeigten Datenblock.

Customer_A

                Customer_A1

                Customer_A2

                Customer_A3

Product_A

                Product_A1

                Product_A2

                Product_A3

FĂŒr alle Kombinationen aus Customer und Product kann es einen Datenblock geben. Eine Kombination wird dargestellt als Product_A1 -> Customer_A1. FĂŒr diesen kann es nur einen einzigen Block mit den 6 gespeicherten Zellen geben. In jeder Zelle kann nur ein einziger Datenwert aufgenommen werden.

Abbildung 2: Blöcke in Sparse Dimension.

Jeder Datenblock hat dieselbe Struktur von den Zellen her.

Einen Datenblock kann ein Upperlevel Block sein, wenn ein oder beide Elemente ein Knoten ist. Sonst ist es ein Block der Ebene 0.

Technisch kann es sein, dass ein Block keinen Datenwert hat. Dieses ist ein Empty Block.

Entstehen von einem Datenblock

Es gibt eine kleine Anzahl an Möglichkeiten, wie ein Datenblock entsteht.

Import von Daten.

Beim Importieren von Daten in die Datenbank entstehen Blöcke. Wenn es noch keinen Block fĂŒr die Kombination von Sparse Elementen in der Quelle gibt, dann wird ein Block erstellt. Wenn es diesen schon gibt, dann werden weitere Zellen gefĂŒllt. Gibt es fĂŒr die Zelle schon einen Wert, dann liegt es an die Importparameter, ob dieser ĂŒberschrieben, oder der importierte Datenwert addiert bzw. subtrahiert wird. Es kann immer nur ein Wert in einer Zelle geben.

Berechnen von Daten.

Die andere Weise, wie ein Datenblock entstehen kann, ist durch ein Calc Skript. Hier unterscheiden wir verschiedene Berechnungen:

Aggregation

Die Aggregation wird gemacht durch ein Calc Skript mit z. B. CALC DIM (Account); oder AGG(Product);

Hier entstehen nur Upperlevel Blocks, denn es ist immer mindestens ein Knotenelement im Spiel. Wir brauchen uns hier keine Sorgen zu machen, die notwendigen Blöcke werden immer erstellt.

Gleichung

Eine andere Form der Berechnung ist die Gleichung. Diese kann eine Form haben wie Produkt B = Produkt A *1.2;  und in diesem Fall wird der Wert nur geschrieben, wenn es fĂŒr das Ziel, hier Produkt B, schon einen Block gibt. Wenn nicht, dann geht die Berechung ins leere und bringt das falsche Ergebnis.

Eine Lösung ist das Calc Kommando: SET CREATEBLOCKONEQ ON;

Wenn dieses eingesetzt wird, dann schaut Essbase, ob ein Block notwendig ist, und wenn ja, wird einer erstellt. Leider ist dieses aber ein sehr langsamer Prozess und Berechnungen mit diesem Parameter dauern meistens lange. Deshalb sollte dieser nach Möglichkeit nicht eingesetzt werden!

DATACOPY

Der Befehl DATACOPY erstellt auch Blöcke und es können, je nach Definition, Level0 als auch Upperlevel Blöcke entstehen. Beim DATACOPY hat man eine Quell- und einen Zielbereich. Dieses erstellt im Zielbereich Datenblöcke. Dieses ist also auch eine Methode, die oft eingesetzt wird, nicht um Werte zu kopieren, sondern um die benötigten Blöcke zu erstellen.

Wenn ein Block Datenwerte (und eine 0 ist ein Datenwert) hat, dann ist es einfach – es werden Blöcke erstellt. Fertig.

Jetzt geht es aber ins eingemachte…. Ob leere Blöcke aber kopiert werden, ist abhĂ€ngig von der Setting SET COPYMISSINGBLOCK. In manchen FĂ€llen ist es gewĂŒnscht, dass leere Blöcke entstehen, z.B. wenn danach eine Berechnung kommt mit einer Gleichung, wo diese Blöcke Daten bekommen. In anderen FĂ€llen wollen wir es nicht, denn, je mehr unnötige Blöcke, je ineffizienter die Datenbank.

SET COPYMISSINGBLOCK ON

Wenn die Quelle keinen Block hat und das Ziel auch keinen Block, dann ist das Ergebnis kein Block.

Wenn die Quelle keinen Block hat und das Ziel aber einen leeren Block, dann ist das Ergebnis kein Block.

Wenn die Quelle einen leeren Block hat und das Ziel aber keinen Block, dann wird der leere Block kopiert und gibt es diesen auch im Ziel.

Abbildung 3: Logik von SET COPYMISSINGBLOCK ON

SET COPYMISSINGBLOCK OFF

Wenn die Quelle keinen Block hat und das Ziel auch keinen Block, dann ist das Ergebnis kein Block.

Wenn die Quelle keinen Block hat und das Ziel aber einen leeren Block, dann ist das Ergebnis kein Block.

Wenn die Quelle einen leeren Block hat und das Ziel aber keinen Block, dann ist das Ergebnis kein Block!

Abbildung 4: Logik von SET COPYMISSINGBLOCK OFF

Bei einem DATACOPY werden die Zielwerte ĂŒberschrieben. Wenn man also einen leeren Bereich nimmt, kann man auf diese Weise einfach Bereiche in der Datenbank leer machen.

Fazit

Das Konzept vom Datenblock ist sehr wichtig fĂŒr den Essbase Entwickler. Gutes Wissen rund um wie Datenblöcke entstehen und wann nicht ist essenziell fĂŒr gute Calc Skripte. Das kopieren von leere Blöcke ist wichtig zu kennen.

Ihr Philip Hulsebosch

Veröffentlicht in Essbase Verwendete Schlagwörter: , , , , , , ,

ESG-Lösungen in EPM

Es gibt unter den Unternehmen verstĂ€rktes Interesse, um ĂŒber Nachhaltigkeitskriterien oder ESG zu berichten. Die drei Buchstaben E,S & G sind ein Megatrend unserer Zeit und eine fundamentale Transformation der Wirtschaft. Diese Kriterien betreffen das gesamte Unternehmen und eine Aufnahme, Berichterstattung und das Erkennen von Handlungsbedarf erfordert eine gute SoftwareunterstĂŒtzung. Dieser Beitrag zeigt das Oracle EPM Software hier ein gutes Mittel sein kann.

Was ist ESG?

Dieses sogenannte ESG steht fĂŒr Environmental (Umwelt), Social (Soziales), Governance (verantwortungsvolle UnternehmensfĂŒhrung) und versteht sich also viel breiter als Nachhaltigkeit im eigendlichen Sinne. Es reicht vom Klimawandel ĂŒber die DiversitĂ€t der Belegschaft bis hin zu nachhaltigen Finanzierungsstrategien.  

Das ESG entwickelt sich durch  Gesetzgebung und freiwillige Abkommen von einem Risiko- und Compliance-Thema hin zu einer Wertgenerierung. Es ist also entscheidend, mit diesen Verpflichtungen ein Wachstum, ProfitabilitĂ€t und damit einen höheren Unternehmenswert zu bekommen.

Diese Verpflichtungen sind jetzt noch sehr unterschiedlich und sogar auf internationaler Ebene gibt es verschiedenste Initiativen wie z.B.

  • OECD Guidelines for Multinational Enterprises
  • UN Global Compact and Sustainable Development Goals
  • ISO 26000 Guidance on social responsibility

Eines haben sie gemeinsam – ESG muss also messbar gemacht werden.

Weiterentwicklung von IFRS in ISSB

Die bestimmt bei ihnen bekannte IFRS sind die GrundsĂ€tze, nach denen JahresabschlĂŒsse von Unternehmen erstellt werden mĂŒssen. Dahinter steckt die International Financial Reporting Standards Foundation (IFRS Foundation), das die International Financial Reporting Standards (IFRS) entwickelt und ĂŒberarbeitet.

Nun gibt es seit kurzem aus der IFRS Foundation einen International Sustainabiltiy Standards Board (ISSB).  Dieser entwickelt GrundsĂ€tze zur ESG relatierten Berichserstattung.

Eine andere Entwicklung sind die GRI Standards (Global Reporting Initiative), welche auch ein Buchwerk hat wie ESG zu messen und die Berichterstattung auszusehen hat.

Nun ist dieses ein riesengrosser Markt mit einem Umfang von Milliarden Euro und damit auch sehr grossen Interessen von verschiedenen Spielern verbunden. Ähnlich wie in der finanziellen Berichterstattung ist es also noch abzuwarten, wer sich mit welchen Regeln wo durchsetzt.

Oracle EPM (jetzt auch fĂŒr ihre ESG Berichterstattung)

Das EPM steht ja fĂŒr Enterprise Performance Management, also das beinflussen (management) von Leistung (Performance). Dieses gilt auch fĂŒr die Leistung, die erbracht werden soll im Umfeld von Nachhaltigkeit.

Wenn es Gesetze und Normen gibt, dann muss es zuerst messbar gemacht und dann mit Massnahmen verbessert werden. Dieses wird die Aufgabe aller Unternehmen werden. Um diese zu erreichen kommen wir in einen Ă€hnlichen Zyklus oder Prozess wie wir diesen mit gewinn-orientierten Daten haben. Die Software, die hierzu seit Jahren erfolgreich als UnterstĂŒtzung eingesetzt wird ist Oracle EPM. Es ist eine flexible Software die massgeschneidert eingesetzt werden kann. Ob die Kriterien von ISSB oder GRI Standards fĂŒhrend sein sollen, es können neue Anwendungen entwickelt werden, die ihren Zielen dienen.

 

Zyklus zur ESG Berichterstattung

Abbildung 1: Schritte zur ESG Berichterstattung

Daten aus dem gesamten Unternehmen werden abgerufen und validiert. Diese laufen dann in neue KPI’s und Controller werden diese dann deuten und die Berichterstattung erstellen. Anhand von Strategie und PlĂ€ne werden Manager dann Massnahmen und Anpassungen einfĂŒhren.  

Weil es Gesetzgebung und die finanziellen MÀrkte gibt, werden diese Daten auch ein externes und unabhÀngiges Audit bekommen. Auch hier bietet die EPM Software eine gute Basis.

Fazit

Der ESG Trend und die Anforderungen an Betriebe, um hierzu Berichterstattung zu haben, bieten eine gute Basis um die EPM Software in diesem Sinne zu erweitern und/oder zu entwickeln.

Ihr Philip Hulsebosch.

Veröffentlicht in EPM & BI, EPM Cloud Verwendete Schlagwörter: , , , , ,

Essbase Properties ĂŒbertragen mit MaxL

Eine Essbase Datenbank hat eine große Anzahl an Eigenschaften, oder auch Properties. Diese sind wichtig fĂŒr das richtige Funktionieren der Anwendung und auch fĂŒr die Leistung. Es kommt regelmĂ€ĂŸig vor, dass die Properties ĂŒbertragen werden mĂŒssen, zum Beispiel zwischen Test und Produktion oder Datenbanken mit Loadbalancer.

Display Database

Eine der Wege kann MaxL sein, denn hiermit kann man die Properties exportieren. Hierzu gibt es den Befehl

display database <DBSNAME>;

Den Output kann man in eine Datei schreiben lassen. Damit könnte man dann einen Abgleich machen zwischen Datenbanken auf verschiedene Server. Die Unterschiede kann man dann manuell ĂŒbertragen.

Wenn man aber viele Datenbanken abgleichen will, dann kann man auch ein Excel erstellen, welches MaxL Befehle erzeugt. Wie in Abbildung 1 zu sehen ist, wird der Output in Spalten gebracht.

Abbildung 1: Output vom Befehl display database.

Auf diese Zeile wird ein zweites Excel Blatt referenziert. Hier entstehen mit Formeln die MaxL Befehle, um die Eigenschaften auf die Anwendung zu ĂŒbertragen.

Abbildung 2: Excel mit Formeln zum Generieren der MaxL Befehle.

In Abbildung 3 sieht man das MaxL welches die wichtigsten Properties setzt. Dieses wurde aus der Spalte D kopiert.

Abbildung 3: Kopie aus dem Excel mit MaxL Befehle.

In den nachfolgenden Abbildungen stehen die Referenzen auf die Position in dem Eigenschaften Export.

Abbildung 4: Referenz der Eigenschaft auf Excel Zeile.

Abbildung 5: Referenz der Eigenschaft auf Excel Zeile.

Abbildung 6: Referenz der Eigenschaft auf Excel Zeile.

Ihr Philip Hulsebosch

Veröffentlicht in Bewirtschaftung & Automatisierung, Essbase Verwendete Schlagwörter: , ,

EPM 11.2 Dokumentation auch in Deutsch

Seit kurzem ist die neue Version von Oracle Enterprise Performance Management verfĂŒgbar. Auch fĂŒr diese On-Premise Version gibt es wieder die komplette Dokumentation auch in Deutscher Sprache.

Diese ist zu finden unter dieser URL.

https://docs.oracle.com/applications/help/de/enterprise-performance-management/11.2/index.html

Ich finde die QualitĂ€t der HandbĂŒcher sehr hoch, und es sieht nicht danach aus, dass diese durch ein Übersetzungsprogramm „gezogen“ wurden, sondern dass wirklich Personen am Werk waren.

Die Werke können im pdf-Format heruntergeladen werden. Ich glaube mich daran zu erinnern, dass wir frĂŒher auch .mobi Format hatten, um diese auf einen E-Reader auch in der Sonne lesen zu können. Generell wird .pdf ja auch unterstĂŒtzt, aber das skaliert nicht gut und ist oft wertlos.

Ich muss zugeben, manchmal fĂ€llt es mir schwer, um die richtige deutsche Bezeichnung zu finden. Dann stelle ich oft die Sprache auf Deutsch um, damit ich den MenĂŒ-Eintrag oder Fehlerbotschaft richtig aufschreiben kann.

Wenn ich aber im Netz nach Fehlerbotschaften suchen muss, dann habe ich doch gern die Englische Version. Die hat eine deutlich höhere Trefferquote.

Ihr Philip Hulsebosch

Veröffentlicht in EPM - 11.2, EPM & BI, Essbase, Installation, Konfiguration & Tuning