Rollout eines Verbindungsdokuments

  • Hallo


    Hat irgendjemand eine Ahnung, wie man automatisch ein neues Verbindungsdokument ausrollen kann?
    Oder muss man das manuell bei jedem Client installieren?


    Gruss

    ******************************************
    Domino 8.5.0
    Notes 8.5.1


    IBM Certified Application Developer

  • Was genau hast du vor?


    Verbindungsdokumente beim Client liegen in dessen persönlichen Adreßbuch und befinden sich daher auch nur beim Nutzer selber im Zugriff.


    Was man in dem Fall aber machen könnte ist dem User z.B. eine Mail zu senden mit einem Knopf der beim Klicken jedes gewünschte Dokument in einer beliebigen DB beim User generiert.

  • Wir "moven" alle User auf einen neuen Server (neue Domäne) und deshalb muss ein neues Verbindungsdokument erstellt werden, damit der Server gefunden wird.


    Wenn ich per Button (Lotus Script) ein Verbindungsdokument erstelle, gibt es da irgendwelche wichtige Felder, die ich auf jeden Fall in einer bestimmten Art ausfüllen muss?


    Danke

    ******************************************
    Domino 8.5.0
    Notes 8.5.1


    IBM Certified Application Developer

  • Sicher gibts die, das müßte man simpel auf einer Testmaschine mal ausprobieren. Auf jeden Fall mindestens die von dir im Normalfall händisch befüllten Felden zuzüglich einiger Steuerfelder wie Form, Connectiontype etc. Wie gesagt, kann so schwer nicht sein das auszuprobieren.

  • Was ich in ein Solchen fall immer erfolgreich gemacht habe ist folgendes.
    1. Erstelle ein Persönliches Adressbuch mit default Leser.
    2. Erstelle ein Verbindungsdokument dadrin
    3. Erstelle einen LS aktion / knopf für ein email welches einfach dieser DB öffnet, und dieses dokument im Persönliches NAB kopiert.


    Fertig.

  • Hi Bonsai,


    wenn Du eine durchgängige Lösung suchen solltest mit dem Du nicht nur Verbindungsdokumente, sondern auch Kacheln/Desktop Icons, Bookmarks, Replikatorseiten einträge etc. umstellen kannst, dann ist INTEGRATE!People vielleicht was für Dich.


    lg
    - Florian


    http://www.icodex.com/download…overview/web/contents.htm :: http://www.icodex.com/people

    - Florian (Vogler)
    ICODEX Software AG :: the developers of the one state-of-the-art Lotus Notes client management solution INTEGRATE!People......

  • Hi,


    hier mein Button, der auch noch ein bischen mehr macht...
    Hier wird eine Verbindung zu einem Durchgangsserver eingetragen und anschließend die Durchgangsserververbindungsdokumente zu den einzelnen Servern. Die Verbindung zum Durchgangsserver ist das, was Du brauchst (ist ein ganz normales Verbindungsdokument).
    Den Kram mit den Arbeitsumgebungen habe ich eingebaut, damit nur die benötigten Umgebungen übrig bleiben.
    Die Ergänzung mit den "from Internet" kannst Du auch weg lassen...


    Gruß
    Norbert


    Sub Click(Source As Button)
    Dim PassThru As New NotesName("Web-K1/Domain")
    Dim Destination As New NotesName("Mail-K1/Domain")
    Dim TargetServer As New NotesName("Web-K1/Domain")
    Dim UnwantedLocations(5) As String
    UnwantedLocations(1)="Internet"
    UnwantedLocations(2)="Home"
    UnwantedLocations(3)="Zu Hause"
    UnwantedLocations(4)="Unterwegs"
    UnwantedLocations(5)="Travel"
    Dim Quelle As New NotesName("*")
    Dim ConnectionType As String
    Dim ExternalLocation As String
    Dim DestIP As String
    DestIP="duchgangsserverip.domain.com"
    connectionType="2"
    Const Port="TCPIP"
    Const form="connection"
    Const Typ="Connection"

    Const ExtensionString=" from Internet"

    Dim session As New notessession
    Dim ws As New NotesUIWorkspace
    Dim names As NotesUIDatabase
    Dim standort,standortalt As String
    Dim PrivateAddressBook As notesdatabase
    Dim PrivateUIAddressBook As NotesUIDatabase
    Dim CurrentLocation As notesdocument
    Dim LocationString As String
    Dim newdoc As NotesDocument
    Dim uidoc As notesuidocument
    Dim InfoCDB As NotesDatabase

    Set PrivateAddressBook = New Notesdatabase("", "names.nsf")
    Set doc = PrivateAddressBook.GetProfileDocument(" ProfileLinks", session.UserName)

    If (PrivateAddressBook Is Nothing) Then
    Messagebox "Unable to open private address book. So I can't configure it",,"Warnung"
    Exit Sub
    End If
    LocationString = Session.GetEnvironmentString ("Location", True)

    'Delete all Location Documents, the user doesn't need
    Dim LocationDC As NotesDocumentCollection
    Set LocationView=PrivateAddressBook.GetView("Locations")
    For i=1 To Ubound(unwantedLocations)
    Set LocationDC=LocationView.GetAllDocumentsByKey(UnwantedLocations(i),False)
    If LocationDC.count>0 Then
    Set newdoc=LocationDC.GetFirstDocument
    answer%=Messagebox ("You do not need the Location Document: "+newdoc.Name(0)+". Should it be deleted?",292,"Warning")
    If answer%=6 Then
    Call LocationDC.RemoveAll(True)
    End If
    End If
    Next


    Set LocationDC=ws.PickListCollection(PICKLIST_CUSTOM,False,PrivateAddressBook.Server,PrivateAddressBook.FilePath,"Locations","Please select the standard location you are using","Select the standard location")
    If LocationDC.Count=1 Then
    'Create new location Document
    Dim LocationDoc As NotesDocument
    Set LocationDoc=LocationDC.GetFirstDocument
    locationname=LocationDoc.Name(0)
    test=Instr(locationname,ExtensionString)
    If test=0 Then
    ExternalLocation=LocationDoc.Name(0)+ExtensionString
    Set newdoc=PrivateAddressBook.CreateDocument()
    Call LocationDoc.CopyAllItems(newdoc)
    Call newdoc.ReplaceItemValue("Name",ExternalLocation)
    Call newdoc.ReplaceItemValue("DefaultPassthruserver",PassThru.Canonical)
    Call newdoc.ComputeWithForm(True,True)
    Call newdoc.Save(True,False)
    Else
    ExternalLocation=LocationDoc.Name(0)
    End If
    'Finished


    Set newdoc=PrivateAddressBook.CreateDocument()
    'First create the direkt Connection to Web-K1/Domain
    With newdoc
    .form="local"
    .ConnectionType="0"
    .Type=Typ
    .PortName=Port
    .Destination=TargetServer.canonical
    .Source=Quelle.Canonical
    .PhoneNumber=DestIP
    .OptionalNetworkAddress=DestIP
    .ConnectionLocation=ExternalLocation
    End With
    Call newdoc.ComputeWithForm(False,False)
    Call newdoc.save(True,True)

    'Now create the Passthru documents to the other servers
    Set newdoc=PrivateAddressBook.CreateDocument()
    With newdoc
    .form="remote"
    .ConnectionType="2"
    .Type=Typ
    .PortName=Port
    .Passthruserver=Passthru.Canonical
    .Destination="Mail-K1/Domain" .Source=Quelle.Canonical
    .ConnectionLocation=ExternalLocation
    End With
    Call newdoc.ComputeWithForm(False,False)
    Call newdoc.save(True,True)

    Call DocCopy(newdoc,PrivateAddressBook,"Mail-K2/Domain")
    Call DocCopy(newdoc,PrivateAddressBook,"Mail-F2/Domain")
    Call DocCopy(newdoc,PrivateAddressBook,"Mail-F1/Domain")
    Call DocCopy(newdoc,PrivateAddressBook,"Admin-K1/Domain")

    answer%=Messagebox( "Please check the configuration.When you want to connect remotely, please select the Location: "+ExternalLocation,,"Information")
    Call ws.OpenDatabase(PrivateAddressBook.Server,PrivateAddressBook.FilePath,"Connections")
    End If

    End Sub


    Sub DocCopy(doc As NotesDocument, db As NotesDatabase,TargetServer As String)
    Dim copydoc As NotesDocument
    Set copydoc=db.CreateDocument()
    Call doc.Copyallitems(copydoc)
    Call copydoc.Replaceitemvalue("Destination", TargetServer)
    Call copydoc.ComputeWithForm(True,True)
    Call copydoc.Save(False,False)
    End Sub

  • PlanetLN


    sorry, wenn Du das als werbung auffasst, ich versuche mich jedenfalls kurz zu halten.


    ich weiss nicht, ob es der stein der weisen ist ein forum wie dieses darauf zu berschränken nur arbeitsintensive lösungen zu diskutieren - das wäre meines Erachtens ungefähr so wie wenn man für's Faxen ein Faxgerät (oder gleich für jeden User ein eigenes Faxgerät) statt eines Faxservers vorschlägt oder wie in den guten alten Tagen zu Fuss zur Post laufen will.


    Jedenfalls versuche ich mich daran zu halten alternativlösungen aufzuzeigen - stelle die button- und link-versende-arie dabei aber auch nicht vollständig in frage.


    Ist das für Dich als Forumteilnehmer (Frage gilt natürlich auch für andere) unerwünscht ? Sollen Teilnehmer in diesem Forum ausschliesslich "nur mit Notes"-Lösungen beitragen ?


    vlg,
    - Florian

    - Florian (Vogler)
    ICODEX Software AG :: the developers of the one state-of-the-art Lotus Notes client management solution INTEGRATE!People......

  • Hallo Bonsai,


    der einfachste Weg ein Verbindungsdokument an alle Clients zu verteilen ist vermutlich allen Usern ein Mail mit einer Schaltfläche zu senden, welche die Logik für das erstellen des Dokuments beinhaltet.
    Für diese und ähnliche Arbeiten wie z.b das Anpassen von Arbeitsumgebungen, kannst du aber auch ein Tool nehmen welches diese Arbeiten erledigt. Wir benutzen hier z.b. für diese Arbeiten Workplace Control.


    MFG Enrico

  • Mit Workplace Control werden zwar auch nur Buttons verschickt und die Architektur bleibt somit die gleiche (Arbeit an User abwälzen, hoher Interaktionsbedarf, aus einem Task werden 100 (bzw. entsprechend Userzahl)), aber wenigstens die Admins müssen nicht programmieren und es ist in gewisser weise standardisiert.


    Ein bischen vermisse ich dabei aber schon die Transparenz und Nachvollziehbarkeit, ...


    vlg flo.

    - Florian (Vogler)
    ICODEX Software AG :: the developers of the one state-of-the-art Lotus Notes client management solution INTEGRATE!People......