Daten werden nicht übernommen bzw. angezeigt

  • Hallo Leute,


    in einer Maske kann man einen Ausschuss auswählen, wenn dieser ausgewählt ist sollen in versteckten Feldern noch weitere Details zu diesen Ausschuss angezeigt werden. Ich habe es jetzt mit folgender Formel probiert aber es kommt einfach nichts!


    Das Feld "weitere Details" wird mit folgender Formel berechnet:


    Server := "";
    Datenbank := "";
    Ansicht := "(Ausschussart)";
    Schlüssel := NameAusschuss;
    SpaltenNr := 2;


    @If(@IsError(@DbLookup( "Notes" : "NoCache" ; Server : Datenbank ; Ansicht ; Schlüssel ; SpaltenNr ));
    "";
    @DbLookup( "Notes" : "NoCache" ; Server : Datenbank ; Ansicht ; Schlüssel ; SpaltenNr ) )


    In der Maske sind aktiviert: "Felder automatisch aktualiesieren" und "Felder übenehmen Werte aus gewähltem Dokument".


    Wo ist mein Fehler? :-?

    • Offizieller Beitrag

    mach erst mal @if und @IsError weg, damit Du den Fehler einkreisen kannst.


    Probier mal folgende Syntax:
    @DbLookup( "Notes" : "NoCache" ; @DBName; Ansicht ; Schlüssel ; SpaltenNr)
    oder
    @DbLookup( "Notes" : "NoCache" ; ""; Ansicht ; Schlüssel ; SpaltenNr)


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

    • Offizieller Beitrag

    benutze in Variablen mal keine Sonderzeichen wie z.B. "ü". Habe da schon schlechte Erfahrung gemacht.


    Ist wenigstens eine Spalte in der Ansicht sortiert? In diese Spalte wird dann Dein Schlüssel gesucht.


    Bau mal den AnsichtsIndex neu auf (STRG + F9 in der DB).


    Gruß
    Dirk

    • Offizieller Beitrag
    Zitat

    Ja alles da!

    Problem gefixt? Wo lag genau der Fehler?


    Gruß
    Dirk

  • Liebe Elfriede,


    auch wenn ihr schnelle Rechner habt: mit deinem Vorgehen machst du Masken sehr langsam, denn auch im Lesemodus führt der Client alle Operationen - mindestens beim Öffnen - einmal komplett durch.


    Mehr dazu gleich unten, wie man das Ganze beschleunigt. Jetzt aber die Fragen:


    - stehen alle "Detail"-Felder UNTER dem Auswahlfeld für den Ausschuss ?
    - Hast du die versteckte Ansicht einmal kontrolliert, was da wirklich drinsteht (ggf. Startnavigator abstellen, in Ansichtsmodus wechseln, DB verlassen und mit gedrückter STRG-SHIFT-Taste öffnen, dann siehst du die versteckten Ansichten). Mit DBLookup kann man in Schwierigkeiten kommen, wenn sich Replizierkonflikte einschleichen, weil der Schlüssel dann zweimal vorhanden ist.


    Und während du das prüfst, schreibe ich dir in einem separaten Artikel, wie man mit Schaltflächen und Formeln, ggf. auch Zusammenführen der Details zu einer Ansichtsspalte mit Trennern das Verhalten deutlich beschleunigen kann.

  • Mittlerweile denke ich schon über ein Script nach. Die Details sind nicht im Auswahlfeld vorhanden. Der User klickt auf das Auswahlfeld und sucht sich einen Ausschuss heraus. Sobald dieser im Feld steht sollen automatisch weitere Informationen zu diesem Ausschuss berechnet und in seperaten Feldern angezeigt werden. Diese Felder werden dann versteckt und kommen dann wiederum nur in ganz bestimmten Ansichten zum Vorschein. Ich weiß allerdings nicht was passiert, wenn ein User mehrere Ausschüsse auswählt, dann müßten die zu berechneten Felder zwar auch gefüllt werden aber irgendwie müßte man die Daten in den Feldern dann separieren.

  • Wenn du mehrere Detailfelder füllen willst, so kannst du in der Spalte 2 deiner verdeckten Ansicht alle benötigten Detailfelder mit entsprechenden Trennern zusammenführen.


    Beispiel:
    Dem "Ausschuss" sind 5 Details wie Kostenstelle, Raum, Gebaeude usw. beigefügt. Wenn du in deiner Ansicht die erste Spalte Ausschussname sortiert machst, kannst du in der zweiten Spalte in der ANsicht alle Details zusammenfassen, z.B.
    DetailKST+"$$"+DetailRaum+"$$"+DetailGebaeude
    Dann machsst du nur einen (statt drei) DBLookups auf den View, um die Details auszulesen. In der Eingabeumsetzungsformel kannst du dies bei einem BEARBEITBAREN Feld machen, z.B. für das Feld AUSSCHUSSNAME


    xDetail:=@DbLookup("Notes":"";"";"(Ausschussname)";Ausschussname;2);
    temp:=@Explode(xDetail;"$$");
    @SetField("Detail1";@If(@IsError(xDetail);"";@Subset(temp;1));
    @SetField("Detail2";@If(@IsError(xDetail);"";@Subset(@Subset(temp;2);-1));
    @SetField("Detail3";@If(@IsError(xDetail);"";@Subset(@Subset(temp;3);-1));
    ...
    AUSSCHUSSNAME


    In der Eingabeumsetzungsformel Nie vergessen das tatsächliche Feld auch einzusetzen!


    Wenn du die Felder Ausschussname sowie die Details als BERECHNET BEIM ANLEGEN mit den passenden Vorgabewerten versiehst und neben das Feld AUSSCHUSSNAME eine Schaltfläche setzst, die die Auswahl sowie das Einsetzen der Werte in die Felder übernimmt, dann wird im Lesemodus überhaupt nicht mehr gerechnet.


    Das funktioniert allerdings nur, wenn du keine Aliasse verwendest. Ein Alias wäre bei Ausschussname etwas wie "Vertreter | V".
    Du siehst dann bei der Auswahl eines Schlüsselworts das Wort "Vertreter", als Schlüsselwort wird allerdings "V" in das Feld geschrieben.


    Um solche Operationen auch abfabgen zu können, muß man bei Schlüsselwörtern bleiben, kann dann aber als Auswahlformel einsetzen:


    @If(@IsDocBeingLoaded & !@IsNewDoc; @Unavailable; @DbColumn("" : ""; ""; "(Ausschussname)"; 1))


    In dem Fall wird beim Laden und Lesen die Ansicht gar nicht geöffnet.

  • Wenn du mit Mehrfachauswahlen rechnest oder diese zuläßt, kannst du nicht mehr mit @Explode arbeiten, weil du die Einzelteile ja nicht mehr zusammenbekommst, aber mit @Word (und "$$" als Trenner) ergibt die Formel die entsprechenden Mehrfacheinträge auch in den Detailfeldern.

  • Wie verhält sich die Sache, wenn aus der Mehrfachauswahl "Ausschussname" später eine Ansicht generiert wird, wobei die Ausschussnamen jeweils eine Kategorie bildet. Werden dann die Details in der jeweiligen Kategorie auch zugehörig zum Ausschussnamen abgebildet? :-?

    • Offizieller Beitrag

    das wirst Du mit nur einem Dokument nicht hinbekommen.


    Ohne Kategoriesierte Spalte funktioniert es aber sobald eine Kategorie in Spiel kommt werden die einzelnen werte immer in allen Kategorien angezeigt (bei einzelwerte getrennt anzeigen) bzw. Du hast keinen Zugriff auf die Kategorie und kannst dann auch nicht das entsprechende Element aus Deiner Liste raussuchen, um es ind er Ansicht anzuzeigen.


    Gruß
    Dirk

    • Offizieller Beitrag

    Kategorie - Profildokument?


    Also willst Du die Dokument Kategoriesiert anzeigen und den einzelnen Kategorien nur die jeweiligen Werte in einer Liste anzeigen, dann kannst Du z.B. beim speichern x AntwortDokumente anlegen. In der Ansicht ziegst Du nur AntwortDokumente an. Beim Klick auf ein Dokument in der Anischt öffnest Du dann das MutterDokument.


    Falls Dir dies nicht gefällt, weil Du z.B. zuviele Dokumente bekommst, dann könnte man die Ansicht in einem Dokument mit RT-Feld per Agent nachbauen. Ist aber aufwendiger als der 1. Vorschlag.


    Gruß
    Dirk

  • Wenn es dich nicht stört, daß man in der Ansicht als Kategorie den Ausschußnamen zusammen mit seinen Details sieht, geht es ohne Zusatzaufwand. Wie das ?


    Sei
    Ausschussname=A1 mit den Details DA1_1, DA1_2 und DA1_3
    Ausschussname=A2 mit den Details DA2_1, DA2_2 und DA2_3


    Wenn du jetzt ein Kategoriefeld bildest mit
    Ausschussname+" "+Detail1+" "+Detail2+" "+Detail3, dann bekommst du eine Liste mit
    A1 DA1_1 DA1_2 DA1_3
    A2 DA2_1 DA2_2 DA2_3


    Die stellt die Details des Ausschusses in der Kategoriebezeichnung direkt dar. Da die Werte von Ausschussname und Detailfeldern 1:1 auch in der Reihenfolge zusammenpassen, ergibt die Addition das, was du willst.


  • Ich hab mich nochmal an diesen Vorschlag gehalten. Das mit der Anzeige mehrer Details in einer Ansichtsspalte funktioniert. Kann ich auch einen anderen Texttrenner als $$ verwenden. Im Moment sieht das Ergebnis ein bisschen komisch aus: Name$$Anschrift


    Deinen letzten Vorschlag kann ich so nicht umsetzen, weil die Kategorien zusammenklappbar sein müssen. Die Detailinfos müssen unter der jeweiligen Kategorie angezeigt werden. :roll: