Set Doc = View.GetDocumentByKey(KEY, True) ne s'initialise p
Bonjour,
Je dois construire une application qui recherche toutes les bases mail présent sur plusieurs serveurs et vérifier si il existe une fiche personne dans le NAB.
Dans un deuxième temps, j'ai un agent qui croise les informations entre le NAB et mon application.
C'est à dire que je recherche dans le NAB si une fiche personne serait absente de mon appli , dans ce cas là, je crée un nouveau document dans mon appli.
C'est là que je rencontre un problème.
Set Doc = View.GetDocumentByKey(KEY, True) ne s'initialise pas alors que tout me semble correct.
Voici le code que j'utilise :
Merci.
Je dois construire une application qui recherche toutes les bases mail présent sur plusieurs serveurs et vérifier si il existe une fiche personne dans le NAB.
Dans un deuxième temps, j'ai un agent qui croise les informations entre le NAB et mon application.
C'est à dire que je recherche dans le NAB si une fiche personne serait absente de mon appli , dans ce cas là, je crée un nouveau document dans mon appli.
C'est là que je rencontre un problème.
Set Doc = View.GetDocumentByKey(KEY, True) ne s'initialise pas alors que tout me semble correct.
Voici le code que j'utilise :
Sub Initialize
Dim Session As NotesSession
Dim Db As NotesDatabase
Dim View As NotesView
Dim Doc As NotesDocument
Dim ViewPeople As NotesView
Dim DocPeople As NotesDocument
Dim DbNAB As New NotesDatabase( "", "" )
Dim ViewNAB As NotesView
Dim DocNAB As NotesDocument
Dim NABSrv, NABDb, NABView, EXTENSION, NABFORM, KEY As String
Dim Flag As Boolean
Set Session = New NotesSession
Set Db = Session.CurrentDatabase
Set View = Db.GetView("Admin\01 - Setup")
Set Doc = View.GetFirstDocument
'## Récupération des paramètres de profile
NABSrv = Doc.NAB_Admin_Serv(0)
NABDb = Doc.NAB_Annuaire(0)
NABView = Doc.NAB_View_Users(0)
'## Test Ouverture du NAB
Flag = DbNAB.Open(NABSrv,NABDb)
If Flag = False Then
Exit Sub
End If
'## Accès au premier document utilisateur du NAB
Set ViewNAB = DbNAB.GetView(NABView)
Set DocNAB = ViewNAB.GetFirstDocument
'## Accès aux documents suivants des utilisateurs du NAB
While Not DocNAB Is Nothing
NABFORM = DocNAB.Form(0)
If NABFORM<>"Person" Then
Goto SUIVANT
End If
EXTENSION = Right$(Ucase$(DocNAB.MailFile(0)),4)
If EXTENSION<>".NSF" Then
KEY= Cstr(Ucase$(DocNAB.FirstName(0)+" "+DocNAB.LastName(0)+"-"+DocNAB.MailServer(0)+"!!"+DocNAB.MailFile(0)+".nsf"))
Else
KEY= Cstr(Ucase$(DocNAB.FirstName(0)+" "+DocNAB.LastName(0)+"-"+DocNAB.MailServer(0)+"!!"+DocNAB.MailFile(0)))
End If
Set ViewPeople = Db.GetView("(VPeople)")
Set DocPeople = ViewPeople.GetDocumentByKey(KEY, True)
If (DocPeople Is Nothing) Then
'Msgbox ("creation doc")
DocPeople.Form = "People"
DocPeople.DbTitle = DocNAB.FirstName(0)+ " " + DocNAB.LastName(0)
DocPeople.FullName = DocNAB.FullName(0)
DocPeople.FirstName = DocNAB.FirstName(0)
DocPeople.LastName = DocNAB.LastName(0)
DocPeople.ShortName = DocNAB.ShortName(0)
DocPeople.Location = DocNAB.Location(0)
DocPeople.MailServer = DocNAB.MailServer(0)
DocPeople.MailPath = DocNAB.MailFile(0)
DocPeople.MailForwarding = DocNAB.MailAddress(0)
DocPeople.DbOnServer = DocNAB.MailServer(0)
DocPeople.DbMailPath = DocNAB.MailFile(0)
DocPeople.Clef =KEY
Call DocPeople.Save(True,False)
Else
'Msgbox ("suivant")
End If
SUIVANT :
Set DocNAB = ViewNAB.GetNextDocument(DocNAB)
Wend
End Sub
Merci.