2010-01-12 9 views
2

Est-il possible d'automatiser les notes de lotus pour publier un fichier local dans une base de données? J'ai une tâche quotidienne pour publier un fichier journal dans une base de données de notes. Je peux rassembler le fichier journal via un script, mais je ne sais pas assez sur les scripts de notes pour comprendre cela. Je sais thrre est une interface com tant que j'ai le client sur le PC, mais je ne peux pas comprendre comment obtenir un fichier téléchargé sur une base de données. Je peux utiliser vbscript ou (préféré) powershelllotus notes automation

Répondre

4

Si vous effectuez une recherche autour du net, vous trouverez des exemples d'utilisation de VBScript pour manipuler Lotus Notes. Voici un exemple: http://haveworld.blogspot.com/2006/10/vbscript-and-lotus-notes.html

Vous aurez besoin d'en savoir un peu plus sur Lotus Notes pour que cela fonctionne. Commencez petit et voyez si vous pouvez même obtenir les billets version apparaisse:

Set oNotesSession = CreateObject("Notes.Notessession") 'create notes session 
Msgbox oNotesSession.NotesVersion 

Si cela fonctionne, vous savez que vous êtes en bonne forme. Si ce n'est pas le cas, vérifiez que vous avez correctement installé Lotus Notes et configurez-le sur le client. Le code pour publier un fichier local dans une base de données implique de se connecter à Notes, de créer un nouveau document Notes, d'ajouter un objet fichier dans le corps du document, puis de l'enregistrer. Vous pouvez utiliser n'importe quel type de base de données Notes pour cela, mais je suggèrerais d'en créer un nouveau basé sur le modèle de bibliothèque de documents, et de l'utiliser pour stocker vos fichiers.

Voici un code qui va créer un nouveau document Notes, définir le champ Objet, joindre un fichier, puis enregistrer le document. Cela suppose qu'il existe déjà une base de données Notes locale appelée "FileStorage.nsf"

strFileName = "C:\Windows\Media\tada.wav" 
strSubject = "Your Subject Goes Here" 

Set oNotesSession = CreateObject("Notes.Notessession") 'create notes session 
Set oDb = oNotesSession.GetDatabase("", "FileStorage.nsf") 'open database on local named FileStorage.nsf 
Set oDoc = oDb.CreateDocument 

' Filling the fields 
oDoc.Subject = strSubject 
Set oBody = oDoc.CreateRichTextItem("Body") 
oBody.EmbedObject 1454, "", strFileName '1454 = Embedded Attachment type 

oDoc.Save False, False 
+0

merci d'essayer le plus rapidement possible. Je dois utiliser une base de données de notes existante, est-ce que j'ai besoin du nom de la base de données pour utiliser getdatabase? –

+0

Oui. Ce premier paramètre est le nom du serveur, mais si vous utilisez une base de données locale, vous pouvez simplement laisser cet ensemble à la chaîne vide. Si votre base de données se trouve dans un dossier, vous aurez besoin du chemin du répertoire de données, utilisez donc GetDatabase ("", "myfolder \ filestorage.nsf") –

Questions connexes