Dialog Liste mit gefilterten Werten aus View anderer Datenbank

  • Hallo Forum,


    heute einmal etwas Einfaches, deren Lösung mir jedoch einfach nicht gelingen will.
    Ich habe ein Feld 'Raum', den ich gerne durch meine Anwender pflegen lassen möchte.


    Die Auswahl der Dialogliste 'Raum', soll jedoch je nach Wahl des Feldes "Ort" entsprechend eingeschränkt sein.


    Über die Definition des Feldes mit 'Use View dialog fpr choices', Database = 'Ressourcen', View = 'Ressourcen', Column = '1' erhalten ich alle Räume aller Standorte.
    An der Stelle ist es nicht möglich, oder?


    Ich habe schon etliche Kombinationen eines @DBLookup('Use formula for choices') probiert, jedoch immer nur Fehler erhalten ... UND ist der Befehl überhaupt meine Lösung?
    Die letzte Formel war:

    Code
    @DbLookup("" : "NoCache"; "LNCGN001/XXXX" : "RessourcenXXXX.nsf";"Ressourcen";ort;"CommonNameResourceName";"Location")


    (Server error: File does not exist)


    Die View 'Ressourcen' ist folgend aufgebaut:


    Name Kategorie Ort
    A1 Raum Köln
    Beamer Beamer Köln
    B1 Raum München
    B2 Raum Müchen


    Je nach Ortswahl des Anwenders, sollen die Einträge dieser View mit der Kategorie Raum in der DialogListe angeboten werden.
    D.h. bei Köln: A1


    Vielen Dank für Eure Unterstützung!


    Marc

  • Wie kommst du denn zu der DBLookup Formel ?


    Da ist ein Parameter zu viel, und zwar der "CommonNameresourceName"


    Die fehlermeldung deutet aber auch schon darauf hin, daß die DB auf dem Server anders heisst oder in einem Unterverzeichnis liegt


    Vor allem ist wichtig, daß die View nach dem Kriterium nach dem du filtern willst auch sortiert bzw kategorisiert ist, sonst geht es so nicht

  • Entschuldigt, dass ich mich so lange hierzu nicht gemeldet habe, doch ich dachte, ich hätte es über eine andere Aussteuerung geschafft ...
    Am Freitag gab es dann die ersten Tests und dann war die Lösung keine mehr!


    Ich hatte das Feld als 'Dialog Liste' mit 'Use View dialog for choices' aufgesetzt(Database: 'Ressourcen XXXX', View: '$Ressourcen', Column: '2').
    So konnte ich die Werte in einem vernünftigen Dialog auswählen (lassen).


    Allerdings nur ich, denn dafür benötigt man Administrationsrechte auf die Ressourcen-Datenbank, die wir nicht all unseren Mitarbeitern(wie den Testern) geben können.


    Falls es weitere Lösungsvorschläge gibt, wäre ich sehr dankbar, von ihnen zu erfahren!

  • Hi,


    Kurze Frage.


    Wie stellst du dir das vor?
    Die Anwender arbeiten in DB "A" und sollen per Dialogliste Werte auswaehlen koennen, die du ueber einen Lookup aus einer andern (DB "B") auslesen willst.
    Die Anwender selber sollen keinerlei Rechte auf die DB "B" haben.


    Der Lookup laeuft aber im Kontext des aktuell angemeldeten Anwenders.


    Andreas

  • Hallo Andreas,


    alle Anwender haben Leseberechtigung, sprich in der Kalender-Anwendung können sie auch auf die Ressourcen-Db zugreifen.
    Der feste Aufruf der View erfordert aber anscheinend Administrator-Rechte auf die Ressourcen-Db, die natürlich nicht gewährt werden ...


    Beste Grüße!

  • Beim Lookup über die Kalenderansicht geschieht der Lookup im Kontext des Servers (RnRMgr, bzw. CalConn), nicht im Userkontext

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • Hi,


    Mit den Mitteln die du aktuell angesprochen hast, NEIN. Es sei denn, dass du den Anwendern ein entsprechendes recht auf die
    "Quelldatenbank" einraeumst.


    Eine andere Moeglichkeit die ich mir vorstellen koennte, ohne an den Rechten etwas zu drehen, waere, dass du einen Agenten schreibst,
    der die entsprechenden Daten aus der "Quelldatenbank" ausliest und in ein (Profile-)Dokument in der aktuellen Datenbank schreibt. Dann
    koenntest du die Werte ueber dieses Dokument ermitteln. Ist aber nicht schoen und auch nicht immer aktuell.



    Andreas

  • MarcD: Dir ist aber schon klar, dass die View, die im Kalender verwendet wird NICHT aus der Resourcen- Datenbank kommt?
    Die Auswahl im Kalender kommt aus den Ansichten "($Rooms)" bzw. "($Resources)" der names.nsf...


    Alle Räume eines Standortes bekommt man über:


    Code
    @DBLookup( "" : "Cache"; @Subset( @DBName ; 1 ); "names.nsf"; "($Rooms)"; ort; 8 )


    EDIT: Das man MANAGER- Rechte auf die Resourcen- Datenbank braucht, um die Ansicht "$Resources" für eine Picklist zu verwenden, halte ich im übrigen für Humbug. Die Ansicht selbst besitzt -zumindest in der Standard- Schablone- keinerlei Schutz, die kann jeder öffnen...

  • Was IMO auch Sinn macht: warum sollte ein User in der DB rumschmieren können? Für den Freie Zeit-Lookup gibt es doch den Servertask....

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • @Tode
    Nach deiner Lösung habe ich gesucht! Nachdem Sie nicht direkt funktioniert hat, habe ich sie noch wie folgt geändert:

    Code
    @DbLookup("" :"NoCache"; "";"names.nsf";"($Rooms)";"Köln"; [FailSilent])


    Aber auch dann kommt die Meldung "A view of that name cannot be found in the specified database".
    (Das die Ansichten in der names.nsf liegen, konnte ich verifizieren)


    Was kann in der Formel noch falsch sein?

  • Würde mich aber schwer wundern, wenn die User in ihren lokaken Adressbüchern eine solche Ansicht hätten. Wäre jedenfalls nicht Standard....
    Und das Semikolon als Listentrenner zwischen Servernamen und Pfadangabe ist ebenfalls falsch.

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • OK: Prüfung nicht bestanden... Jetzt muss ich wirklich ein wenig "böse" werden: Sag mal: Bist Du nicht mal in der Lage, die HILFE zu einem Befehl zu lesen?


    Ich hatte auf die Schnelle einen Tippfehler gemacht, aber wenn Du den nicht findest, dann solltest Du wirklich das Programmieren an den Nagel hängen...


    Auszug aus der Notes- Hilfe: @DbLookup( class : cache ; server : database ; view ; key ; columnNumber ; keywords )
    Mein/Dein (leider falsches) Beispiel: @DBLookup( "" : "Cache" ; @Subset( @DBName ; 1 ) ; "names.nsf" ; "($Rooms)" ; "Köln" ; 8 ; [FailSilent] )


    Preisfrage: Wo ist der Unterschied...