Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: tttonic am 14.03.05 - 09:52:32

Titel: neuen Account per Script
Beitrag von: tttonic am 14.03.05 - 09:52:32
Hi,

probiere gerade ein Script zu schaffen welches mir einen LDAP - Account im lokalen Adressbuch schafft.

Dieses soll per Mail verteilt werden. Habe im Forum schon einiges gefunden leider nur auf Locations. Nur leider wird nicht erstellt und es gibt auch keine Fehlermeldung.
Wäre für einen Tipp dankbar.

gruß

tttonic

Sub Click(Source As Button)
   Set session = New NotesSession
   Set dbCurrent = session.CurrentDatabase
   
   
    'Create connection documents in the user's personal addressbook
   Dim db As New NotesDatabase("" , "names.nsf")
   Dim view As NotesView
   Dim doc As NotesDocument
   Dim success As Variant
   Dim connect As NotesDocument
   Dim State As Integer
   State = 0
   
   Set view = db.GetView("($Accounts)")
   Set doc = view.GetFirstDocument
   Set connect = db.CreateDocument
   connect.AccountName = "LDAP"
   connect.AccountServer = "LDAP.COM"
   connect.AccountProtocol = "LDAP"
   connect.LDAPSearchBase = "o=LDAP"
   success = connect.ComputeWithForm( False, False)
   Call connect.Save(True,True)
   State = State + 1
   
   
   
End Sub
Titel: Re: neuen Account per Script
Beitrag von: umi am 14.03.05 - 10:06:39
Sind alle Felder korrekt gesetzt? evtl. das Form property setzen....
Titel: Re: neuen Account per Script
Beitrag von: tttonic am 14.03.05 - 10:09:17
Sind alle Felder korrekt gesetzt? evtl. das Form property setzen....

Ich weiß das er bis zur Ansicht Accouts alles funzt.
Nur danach bin ich mir nicht sicher.
Titel: Re: neuen Account per Script
Beitrag von: tttonic am 14.03.05 - 14:35:23
Hi,

nun legt das Script mir den Account zwar an, leider muss ich es nochmals öffnen und erneut speichern damit es richtig funktioniert und stehe gerad auf dem Schlauch.





Sub Click(Source As Button)
   Set session = New NotesSession
   Set dbCurrent = session.CurrentDatabase
   
      'Create connection documents in the user's personal addressbook
   
   Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim db As New NotesDatabase("" , "names.nsf")
   Dim view As NotesView
   Dim doc As NotesDocument
   Dim success As Variant
   Dim connect As NotesDocument
   Dim State As Integer
   State = 0
   
   Set view = db.GetView("Accounts")
   Set doc = view.GetFirstDocument
   
   Set connect = db.CreateDocument
   connect.form="Account"
   connect.type = "Account"
   connect.accountname = "LDAP"
   connect.AccountServer="LDAP"
   connect.LDAPSearchBase = "o=LDAP"
   connect.AccountLoginName=""
   connect.AccountPassword=""
   connect.AccountProtocol="LDAP"
   connect.SSLStatus=0
   
   
   
   
   success = connect.ComputeWithForm( False, False)
   Call connect.Save(True,True)
   State = State + 1
   
End Sub
Titel: Re: neuen Account per Script
Beitrag von: diali am 14.03.05 - 14:51:33
da es sich um eine lokale DB handelt könnte es auch an den Ansichtsindexen liegen.

Dann würde es reichen die Ansichten einmal als Objet zuzuweisen.
Titel: Re: neuen Account per Script
Beitrag von: umi am 14.03.05 - 15:00:31
Oder Du öffnest das Dokument kurz im UI, refresh und speichern....

gruss umi
Titel: Re: neuen Account per Script
Beitrag von: tttonic am 14.03.05 - 15:12:29
Oder Du öffnest das Dokument kurz im UI, refresh und speichern....

gruss umi


Yo stimmt,

und genau das öffnen bereitet mir gerade Kopfschmerzen.
Titel: Re: neuen Account per Script
Beitrag von: umi am 14.03.05 - 15:21:31

set uidocument = uiworkspace.editDocument(true,connect,false,,true)
call uidocument.refresh(true)
call uidocument.save()
call uidocument.close()
Titel: Re: neuen Account per Script
Beitrag von: tttonic am 16.03.05 - 10:42:33
Oder Du öffnest das Dokument kurz im UI, refresh und speichern....

gruss umi


Yo stimmt,

und genau das öffnen bereitet mir gerade Kopfschmerzen.


Irgendwie will es nicht.

Sub Click(Source As Button)
   Set session = New NotesSession
   Set dbCurrent = session.CurrentDatabase
   
   
   
   Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim db As New NotesDatabase("" , "names.nsf")
   Dim view As NotesView
   Dim doc As NotesDocument
   Dim success As Variant
   Dim connect As NotesDocument
   Dim State As Integer
   Dim uidocument As NotesUIDocument
   
   State = 0
   Set view = db.GetView("Accounts")
   Set doc = view.GetFirstDocument
   
   Set connect = db.CreateDocument
   connect.form="Account"
   connect.type = "Account"
   connect.accountname = "LDAP"
   connect.AccountServer="LDAP.com"
   connect.LDAPSearchBase = "o=LDAP"
   connect.AccountLoginName=""
   connect.AccountPassword=""
   connect.AccountProtocol="LDAP"
   connect.SSLStatus=0
   connect.AccountLoginName=""
   connect.AccountPassword=""
   connect.SSLStatus=0
   connect.AccountFilename="LDAP"
   connect.LDAPCheckNames=0
   connect.LDAPSimpleSearch=""
   connect.AccountPortNumber="389"
   
   
   
   
   success = connect.ComputeWithForm( False, True)
   Call connect.Save(True,True)
   Set uidocument = uiworkspace.editDocument(True,connect,False,,True)
   Call uidocument.refresh(True)
   Call uidocument.save()
   Call uidocument.close()
   
   
   State = State + 1
   
   
End Sub

Fehler: Variant does not contain an object.

Klar der Inhalt der Variablen ist falsch, aber nu?
Titel: Re: neuen Account per Script
Beitrag von: umi am 16.03.05 - 11:34:14
In Welcher Zeile tritt den der Fehler auf?
Titel: Re: neuen Account per Script
Beitrag von: tttonic am 16.03.05 - 11:43:18
In Welcher Zeile tritt den der Fehler auf?


Verzeihung.

 Set uidocument = uiworkspace.editDocument(True,connect,False,,True)
 Call uidocument.refresh(True)
Titel: Re: neuen Account per Script
Beitrag von: umi am 16.03.05 - 11:45:06
Kann es sein das uiworkspace nicht definiert ist? Du dimmst ja workspace
Titel: Re: neuen Account per Script
Beitrag von: tttonic am 16.03.05 - 11:47:55
Kann es sein das uiworkspace nicht definiert ist? Du dimmst ja workspace

Aaaah, hast Recht gehabt. Dämmlicher Fehler.

Danke  ;)
Titel: Re: neuen Account per Script
Beitrag von: Driri am 16.03.05 - 12:41:00
Nur nen Tipp : Mit Option Declare wäre das nicht passiert.
Titel: Re: neuen Account per Script
Beitrag von: tttonic am 16.03.05 - 14:13:01
Nur nen Tipp : Mit Option Declare wäre das nicht passiert.

Yo stimmt.

Das kommt halt davon wenn man eigentlich kein Programmierer ist sonder Admin und in Script nur Grundkenntnisse hat. Da vergißt man halt schnell diese einfachen Dinge.