Page 1 sur 1

Comment ajouter un modèle de memo dans toutes les bases ?

MessagePublié: 29 Oct 2003 à 21:00
par ccfc84
Bonsoir,Je souhaite mettre à la disposition de tous mes utilisateurs Notes un modèle de mémo. Comment peut on faire ? Je suis en V5.

Re: Comment ajouter un modèle de memo dans toutes les bases

MessagePublié: 30 Oct 2003 à 08:27
par phil
Salut.A vue de groin je l'ajouterai dans le(s) modèle(s) de bases courrierque tu utilises (.ntf) et je laisse la tache Design faire l'update desstructures des bases dans la nuit.

Re: Comment ajouter un modèle de memo dans toutes les bases

MessagePublié: 30 Oct 2003 à 20:55
par ccfc84
Bonsoir,C'est ce que j'avais essayé en premier : j'avais enregistré le modèle de mémo avec son titre, les destinataires.... dans mon modèle de base courrier : ce qui n'a produit aucun effet lors de la réplication car ce modèle est un document et n'est donc pas répliqué. La solution serait plutôt de développer un agent qui irait écrire le modèle dans toutes les bases courriers...Si un pro de Lotus script s'y est déjà risqué :-)

Re: Comment ajouter un modèle de memo dans toutes les bases

MessagePublié: 31 Oct 2003 à 08:05
par phil
Salut. essaie un : Call MyDoc.CopyToDatabase( dbMail) ou MyDoc est ton document modèle dans la base sourceet dbMail le nom de la base courrier de chacun de tes utilisateurs(à emballer dans une boucle sur ton CAP pour que dbMail varie)Si ça te parle, ou si qqun d'autre à une meilleure idée...

Re: Comment ajouter un modèle de memo dans toutes les bases

MessagePublié: 31 Oct 2003 à 08:49
par Stephane Maillard
Bonjour,Voici un code de mise à jour de structure :Declare Function W32_NSFDbOpen Lib "nnotes.dll" Alias "NSFDbOpen" ( ByvaldbName As Lmbcs String, hdb As Long ) As IntegerDeclare Function W32_NSFDbClose Lib "nnotes.dll" Alias "NSFDbClose" ( Byvalhdb As Long ) As IntegerDeclare Function W32_DesignRefresh Lib "nnotes.dll" Alias "DesignRefresh"( Byval server As String,Byval lnghNote as Long, Byval flags As Integer ,Byval null0 As Long, Byval null1 As Long) As IntegerFunction RefreshDesign ( strServer As String, strFileName As String, strTemplateServer As String) As IntegerDim intRC As IntegerDim lngDBHandle As LongIf strServer$ = "" Then intRC% = W32_NSFDbOpen( strFileName$, lngDBHandle )Else intRC% = W32_NSFDbOpen( strServer$ & " !! " & strFileName$, lngDBHandle)End IfIf intRC% <> 0 Then Messagebox "La base " & strServer$ & " ne peut être ouverte!! " & strFileName$ RefreshDesign = False Exit FunctionEnd IfintRC% = W32_DesignRefresh( strTemplateServer$, lngDBHandle, 0, 0, 0)If intRC% <> 0 Then Messagebox "Impossible de rafraichir la structure de la base " & strServer$ & " !! " & strFileName$ RefreshDesign = False Exit FunctionEnd IfintRC% = W32_NSFDbClose( lngDBHandle )If intRC% <> 0 Then Messagebox "Probléme à la fermeture de la base " & strServer$ & " !! " & strFileName$ RefreshDesign = False Exit FunctionEnd IfRefreshDesign = TrueEnd FunctionExplication :Cette fonction vous permet de mettre à jour la structure à partir d'un LotusScript.Elle retourne 0 (false) ou -1 (true) si elle fonctionne.Il faut être sûr qu'il s'agit d'une plateforme windows avant d'utiliser ce codeon utilise la fonction :*** Vérification Windows 32. si non au revoir.If session.Platform <> "Windows/32" ThenMessagebox "Désolé, cette fonction ne marche qu'avec Win32!"Exit FunctionEnd IfExemple d'utilisation :Dim rc As Variantrc = RefreshDesign("MonServeur", "MaBaseMail.nsf", "MonModele.ntf")[%sig%]

Re: Comment ajouter un modèle de memo dans toutes les bases

MessagePublié: 01 Nov 2003 à 10:31
par ccfc84
Bonjour,Merci beaucoup, je vais essayer dès la semaine prochaine d'adapter ce script à mon environnement.Cordialement.