AFILTER - Fragen zur Benutzung

    AFILTER - Fragen zur Benutzung

    Ich habe einen Würfel mit mehreren Dimensionen.
    Eine lautet XXX_ID
    hinter dieser verbergen sich einige Attribute.

    In einem Bericht will ich nun alle XXX_ID auflisten, bei welchen bestimmte Attribute zutreffen.

    Ein Attribut ist ein Begin- und Endedatum, um nur die IDs zu bekommen, welche zu einem Stichtag aktuell sind. Hierzu hat Beginn- und Ende kein "richtiges" Datumformat sondern die Excel-Zählweise, also grob "Anzahl Tage nach 1.1.1900". So kann ich mit ">ZAHL" und "<ZAHL" entsprechend einschränken. Dann gibt es noch weitere Filter, welche angewendet werden sollen. Z.B. sollen nur die Daten bestimmter Benutzer angezeigt werden usw.

    Nun füge ich hierzu ein Dynarange ein mit Dimension XXX_ID.
    Dann aktiviere ich den Attributfilter. Bei von-Datum und Bis-Datum trage ich entsprechend die Zelle ein, in welcher ich das >ZAHL und <ZAHL stehen habe. Beim Benutzer verweise ich auf eine weitere Zelle, zahlreiche Attribute bleiben unberücksichtigt.

    Nun packt Jedox den Zellverweis in " und sieht ihn als String an. Um das zu lösen klicke ich auf "Formel" und entferne die Anführungszeichen. Schade, nun kann ich das Dynarange zwar nciht mehr bequem über den Dialog bedienen (ansonsten werden alle Filter-Einstellungen wieder verworfen) aber es funktioniert zumindest.

    => Alles passt, Bericht läuft, Filter arbeitet korrekt.

    In Sachen "Wartbarkeit" ist das natürlich brutal. daher dachte ich mir, es wäre einfacher, irgendwo in einem dann in der Ansicht ausgeblendetem Bereich eine Tabelle Anzulegen, welche in der Kopfzeile alle verfügbaren Attribute auflistet und in der Zeile drunter stehen die entsprechenden Werte, welche - sofern gefüllt - im AFILTER berücksichtigt werden.
    Nun habe ich einaml wo gesehen, dass der AFILTER auf eine derart existierende Tabelle verweise. Nach dem Motto

    Source Code

    1. AFILTER(C2:D5)
    oder ähnlich. Nur bekomme ich das nicht mehr hin.

    In dem Kontext zwei Fragen:
    - Kann man per Subset alle verfügbaren Attributbezeichnungen einfügen? Dann müsste ich die nicth mühsam selbst eintippen
    - Wie lautet die korrekte Syntax, wenn ich im AFILTER auf eine "Tabelle" in der Tabelle referenzieren will?

    Vielen Dank für euere Hilfe im Voraus!

    Post was edited 2 times, last by “fnsl” ().

    gee, that's what I call a topic :)

    fnsl wrote:

    Ein Attribut ist ein Begin- und Endedatum, um nur die IDs zu bekommen, welche zu einem Stichtag aktuell sind. Hierzu hat Beginn- und Ende kein "richtiges" Datumformat sondern die Excel-Zählweise, also grob "Anzahl Tage nach 1.1.1900". So kann ich mit ">ZAHL" und "<ZAHL" entsprechend einschränken. Dann gibt es noch weitere Filter, welche angewendet werden sollen. Z.B. sollen nur die Daten bestimmter Benutzer angezeigt werden usw.


    If I where you I would forget the Excel-like Timestamp, and use rather a normalized format like YYYYMMDD. For instance for 05.03.2015 : 20150305. Then you can compare by formatting the stichtag accordingly

    fnsl wrote:

    In Sachen "Wartbarkeit" ist das natürlich brutal. daher dachte ich mir, es wäre einfacher, irgendwo in einem dann in der Ansicht ausgeblendetem Bereich eine Tabelle Anzulegen, welche in der Kopfzeile alle verfügbaren Attribute auflistet und in der Zeile drunter stehen die entsprechenden Werte, welche - sofern gefüllt - im AFILTER berücksichtigt werden.
    Nun habe ich einaml wo gesehen, dass der AFILTER auf eine derart existierende Tabelle verweise.


    take a look on the PALO.DIMENSION_LIST_ELEMENTS function, using as dimension the attribute dimension (#_dimensionname_)

    fnsl wrote:


    - Kann man per Subset alle verfügbaren Attributbezeichnungen einfügen? Dann müsste ich die nicth mühsam selbst eintippen

    yes, look above

    fnsl wrote:


    - Wie lautet die korrekte Syntax, wenn ich im AFILTER auf eine "Tabelle" in der Tabelle referenzieren will?


    like a table actually:
    attribute1 | attribute2 | ... | attributeN
    value1 | value2 | ... | valueN

    then in the AFILTER function, for instance : A1:H6
    laloune

    Post hoc, non est propter hoc