Beiträge von Lizzy

    Ich habe zwei zusammengehörige Datenbanken.
    In der Gliederung sind jeweils mehrere Einträge, die eine Ansicht in der jeweils anderen Datenbank öffnen.



    Gliederungseintrag ist Aktion - berechnet
    Formel:

    Code
    _DBPfad:=@LeftBack(@Subset(@DbName;-1);"\\");                                      ***Auslesen des Pfades der aktuellen Datenbank
    _DBServer:=@Subset(@DbName;1);
    _DB:=_DBPfad + " \\yyy.nsf";                                                     *** Pfad für die andere DB setzen (Leerzeichen vor \\ nur wg Formatierung im Forum)
    
    
    @Command([FileOpenDatabase];_DBServer:_DB);
    @SetTargetFrame("NotesView");
    @Command([OpenView];"yyyAnsicht")

    _



    Mein Problem ist, daß sich bei jedem Klick auf so einen Link ein neuer Reiter öffnet.



    Ich vermute, daß es an dem @Command([FileOpenDatabase] liegt. Gibt es eine Formel, mit der ich vorher abfragen kann, ob die Datenbank schon geöffnet ist?


    Oder liegt es womöglich an irgendwelchen Frame-Einstellungen?



    Gruss
    Lizzy

    Wow, das nenn ich eine Erklärung - VIELEN DANK dafür!


    Also, grundsätzlich stimmt dann meine Formel - !@UserRoles="[Admin]" - da ich bisher immer nur eine Rolle auf der rechten Seite hatte und bei Bedarf dann die Formel
    !@UserRoles="[Admin]" & !@UserRoles="[DB-Admin]"
    benutzt habe. Das müsste dann ja auch passen.


    Den Permutations-Operator habe ich schon mal irgendwo gesehen, hab aber nicht gewusst, was er bedeutet.
    Wenn ich das richtig verstehe, dann prüft
    @UserRoles *= "[Admin]":"[Administrator]" alle nur möglichen Kombinationen ab und gibt True zurück, wenn eine davon zutrifft.


    Im Gegensatz dazu, prüft @IsMember meines Wissens ja, ob ALLE Elemente der ersten Liste in der zweiten vorhanden sind.


    Heisst in der Konsequenz:
    - wenn User etwas darf, wenn er eine der abgefragten Rollen hat, dann nehme ich am besten den Permutations-Operator
    - wenn User nur dann etwas darf, wenn er beide Rollen hat, dann brauche ich @IsMember("[Admin]":"[Administrator]";@UserRoles)


    Sehe ich das richtig oder hast Du da Einwände?


    Nochmal Danke für die Mühe, die Du Dir gemacht hast

    Wenn ich Firma 2 ein Template übergebe, in dem nur die für sie relevanten Rollen enthalten sind,
    und wenn dann in den Replizierungsoptionen unter dem Reiter "Senden" der Haken bei "Änderungen an Paramenter für lokale Sicherheit an andere Repliken senden" nicht gesetzt ist,
    dann sollten doch keine weiteren Rollen (die in unserer Replik vorhanden sind) weiterrepliziert werden.
    Oder bin ich da falsch dran?

    Hallo


    wie wendet man @UserRoles eigentlich korrekt an?


    Ich benutze eigentlich immer: verbergen wenn !@UserRoles="[Admin]" und das funktioniert auch.


    Aber hier im Forum wird das immer im Zusammenhang mit @Contains oder @IsMember/@IsNotMember benutzt.


    Welche Unterschiede bestehen hier? Kommt es darauf an, an welcher Stelle die Formel eingesetzt wird?
    Funktioniert meine Formel an irgendeiner Stelle oder mit irgendeiner Konstellation nicht?


    Gruß
    Lizzy

    Eine Kopie wird nicht funktionieren, weil von unserer Seite neue Dokumente eingestellt werden und andere gelöscht werden, und das soll an die andere Firma weitergehen.


    Leserechte für Server ist gut, aber dazu hab ich noch ein paar Fragen:
    Wenn der Server der Firma2 nur Leserechte hat, werden dann Leser- und Autorenfelder sauber repliziert?
    Bzw braucht der Server nicht auf jeden Fall Entwickler, damit das Design mit repliziert wird?
    Wird das befüllte Profildokument repliziert?


    Kann ich írgendwo angeben, daß Rollen nicht mitrepliziert werden sollen?


    Danke

    Schade, aber danke für die Info.
    Das mit den Rollen ist mir schon klar, die verwende ich auch.


    Es geht um eine Datenbank, die mit einer zweiten Firma geteilt/repliziert wird.


    Nur die Mitarbeiter der Firma 1 (und auch hier nur ein Teil der Mitarbeiter) dürfen bearbeiten.
    Firma 2 darf nur lesen.


    Ich dachte, ich könnte das damit absichern.
    Wenn ich nur mit Rollen arbeite, könnte der Admin der Firma 2 ja die Rolle zuteilen. Aber da muss ich dann wohl auf den Admin vertrauen.


    Oder gibts dafür vielleicht noch eine andere Lösung?


    Gruss
    Lizzy

    Hallo zusammen,


    kann man in Leser- und Autorenfelder den Stern als Platzhalter für User verwenden oder handle ich mir damit Probleme ein?


    Ich möchte das Bearbeitungsrecht auf eine Domäne begrenzen.


    Funktioniert der Eintrag CN=*/O=meine_Domain/C=DE in einem Autoren- oder Leserfeld?


    Gruß
    Lizzy

    Hallo


    das ist eine selbst erstellte Datenbank. Hier werden Termine unterschiedlicher Art eingetragen (z.B. Mitarbeitergeburtstage, wichtige Termine vom Ort zur Info und anderes).


    Es sollen aber nicht alle Einträge in einer Kalender-Ansicht erscheinen, weil das unübersichtlich wird.


    Mit der Selektionsformel ist das auch kein Problem.


    Ich will nur sichergehen, daß das nicht irgendwo unvorhersehbare Reaktionen ergibt. Vielleicht hat ja schon mal jemand mehrere Kalender-Ansichten in einer DB verwendet.


    Lizzy

    Hallo zusammen,


    ich möchte einen Kalender erstellen, in dem mehrere Kalenderansichten sind.


    In Kalenderansicht A sollen nur die Termine mit Maske A angezeigt werden, in Kalenderansicht B nur die Einträge mit Maske B.


    Meine Frage ist: könnte es sein, daß ich da an irgendeiner Stelle Probleme bekomme?


    Ich habe bisher noch keine Datenbank gesehen, die mehrere Kalenderansichten enthält.



    LG


    Lizzy

    Danke - hat funktioniert




    Vielleicht kanns mal jemand brauchen:



    die Code Teile sind alle in der Maske (in den oben angegebenen Bereichen)



    das mit der Script Library werd ich mal im Hinterkopf behalten, damit hab ich bisher aber noch nicht gearbeitet


    aber wenn alles in der Maske ist, sollte der Zugriff doch eigentlich funktionieren?



    LG Lizzy

    Hallo


    wenn ich alle Felder eines Dokuments im Postopen in ein Array einlese und die selben Felder nochmal im Querysave in eine zweites Array einlese,


    kann ich dann davon ausgehen, daß die Felder in der selben Reihenfolge in den Arrays stehen?



    LG Lizzy

    Hi,


    sorry


    ich kann die Maske nicht mal abspeichern - der Fehler ist FeldArray: 19: Not a sub or function name: ARR



    Es muss wohl an der Übergabe des eigenen Datentyps an die Function liegen.
    - mit einem Array funktioniert es
    - wenn ich den Code aus der Function direkt in Postopen und Querysave setze, dann funktioniert es auch mit dem eigenen Datentyp


    Natürlich kann ich das auch ohne Function machen, kein Problem, aber interessieren würde es mich schon, wo der Fehler liegt.


    Danke
    Lizzy

    Wo liegt mein Fehler? Mit einem Array hat das Ganze funktioniert.
    Ich brauche aber einen eigenen Datentyp, weil ich einen Redim auf die erste Dimension des Arrays machen will (der Redim ist noch nicht eingearbeitet)


    Ich lese im Postopen und im Querysave die Feldnamen und Feldinhalte in zwei Arrays ein.
    Die beiden Arrays werden dann im Querysave verglichen und bei Unterschieden eine Art Historie geschrieben.
    Da der Vorgang der Felder/Inhalte einlesen zweimal das selbe ist, habe ich diesen in eine Function ausgelagert.



    - unter Globals - Declarations:

    Code
    Type ary	feldname As String	feldinhalt As VariantEnd TypeDim hist_po(1 To 15) As aryDim hist_qs(1 To 15) As ary


    - im Postopen:

    Code
    Call FeldArray(hist_po)


    - im Qerysave:

    Code
    Call FeldArray(hist_qs)........If hist_po(zz).feldinhalt = hist_qs(zz).feldinhalt Then	   'Array aus Postopen u. Array aus Querysave vergleichen


    [/code]


    - und als Functions:

    Code
    Function FeldArray(arr As ary) As Variant
    .......
    Forall item In doc.items
    arr(z).feldname =  item.name
    arr(z).feldinhalt =  item.values(0)
    ........


    LG Lizzy

    andere Entwickler kann ich zumindest für die nächste Zeit ausschliessen, bin hier die einzige, die mit Notes spielen darf.


    Ein Agenten, der solche Felder erstellt, dürfte hier auch keinen Sinn machen, auch nicht in Zukunft.



    Da ich diese Funktion so benötige, werde ich die Infos dazu, und evtl. Folgen, in der Datenbank im Bereich "Hilfe für Admin/Programmierer" hinterlegen.


    Und ich gehe jetzt einfach mal davon aus, daß jemand der eine fremde Datenbank anfasst und sieht, daß so ein Bereich vorhanden ist, sich diesen auch durchliest.


    Lizzy

    Stimmt auch wieder.


    Ich hab mit Alias noch zu wenig gearbeitet, und an diese Möglichkeit nicht gedacht.


    Ich werd mir das Ganze nochmal durch den Kopf gehen lassen, welche Möglichkeit ich dann verwende.


    Danke


    Lizzy

    Danke, jetzt funktioniert es!


    Mir war schon klar ,daß ich kein Array hatte, weil mir eine Liste eigentlich gereicht hätte. Ich wusste aber nicht, daß die beiden beim Prompt unterschiedlich reagieren.



    Aliase hab ich nicht.


    Es geht darum, daß ich im Datenbankprofil einige Masken hinterlegen will. Und über eine Auswahl verhindere ich Tipfehler.
    Die eingestellten Masken werden von Agenten abgefragt, z.B. zur Erstellung von Antwortdokumenten.
    Da die Masken bei grösseren Feld-Änderungen versioniert werden sollen, will ich die aktuellen im Datenbankprofil einstellen.


    Lizzy

    die fraglichen Items sind lauter Dialoglisten mit vorgegebenen Werten, da kann also nichts passieren.
    Ein Agent fasst diese Items auch nicht an bzw. allenfalls zur Abfrage, aber nicht zum Ändern. Die Felder müssen von den Mitarbeitern befüllt werden.



    Aber in welche Richtung denkst Du bei zukunftsfähig? Kann mir grad nichts drunter vorstellen, was ich hier anders machen müsste.


    Lizzy

    funktioniert jetzt genau so, wie ich das wollte


    Forall item In doc.items
    If Left(item.name,2) = "b_" Then
    fieldCount = fieldCount + 1 'vorhandene b_ Felder zählen
    If item.values(0) = "" Then 'wenn leer, wurde die Aufgabe noch nicht bearbeitet
    aufg_offen = aufg_offen +1
    Else
    aufg_erledigt = aufg_erledigt +1
    End If
    End If
    End Forall


    pro1 = aufg_erledigt/fieldCount*100
    pro2 = Format(pro1,"0.00")
    doc.anz_felder = fieldCount 'Felder im Dokument setzen
    doc.aufg_erledigt = aufg_erledigt
    doc.aufg_offen = aufg_offen
    doc.prozent = pro2




    LG Lizzy


    (ich find nicht mehr, wo ich das Thema auf erledigt setzen kann?!)