Wichtige Hinweise zu Optimierung und Performance

  • Verwenden Sie Vorlagen in Geschäftsregeln, um wiederholte Codeabschnitte zu vermeiden und Runtime Prompts optimal zu nutzen.
  • Prüfen Sie Abhängigkeiten dynamischer Berechnungselemente innerhalb der einzelnen Berechnungen. Ändern Sie die Berechnung nach Möglichkeit so, dass eine wiederholte Verwendung der dynamischen Berechnung vermieden wird, oder entfernen Sie die dynamische Berechnung.
  • Verwenden Sie FIX- und IF-Anweisungen, um die Berechnung zu begrenzen und so sicherzustellen, dass nur die erforderlichen Daten berechnet werden.
  • Vermeiden Sie ein Datenergebnis von 0 (null), es sei denn, Sie möchten eine Null anzeigen, beispielsweise für Bestandsebenen. Dadurch wird ein Block erstellt, der in alle FIX- und IF-Anweisungen eingeschlossen und berechnet wird. Entfernen Sie nach Möglichkeit Nullwerte aus dem Dataload, oder vermeiden Sie die Erzeugung von Nullwerten in Geschäftsregeln.
  • Versuchen Sie, boolesche Logik in der IF-Anweisung zu vermeiden, mit der geprüft wird, ob eine Bedingung vorhanden ist. Beispiel: Führen Sie eine Ersetzung
    IF (("Budget" ==#missing) OR ("Budget" ==0))
    mit folgenden Elementen durch, um dasselbe Ergebnis zu erhalten, aber die Verwendung der booleschen Logik zu vermeiden:
    IF ("Budget" +1==1) or IF (Budget/Budget ==#missing)
  • Führen Sie dicht besetzte Berechnungen nach Möglichkeit vor dünn besetzten Berechnungen durch. Anders als bei dünn besetzten Berechnungen werden bei dicht besetzten Berechnungen keine Blöcke erstellt. Beim Ausführen von Aggregationen, um beispielsweise die Summe für eine Umlageberechnung zu erhalten, müssen Sie sicherstellen, dass Sie nur den Datenabschnitt aggregieren, der für diese Umlageberechnung erforderlich ist.
  • Reduzieren Sie die Durchgänge in einer Datenbank.
  • Vermeiden Sie rekursive Formeln. Eine übermäßige Rekursion kann zu Performanceproblemen führen, und Sie müssen möglicherweise Werte löschen, um konsistente Ergebnisse zu erzeugen.
  • Best Practices zum Ersetzen von Nullblöcken und zum Entfernen von #Missing-Blöcken in BSO-Cubes zur Reduzierung der Datenbankgröße finden Sie unter BSO-Cubes optimieren.