par Oguruma59 » 15 Jan 2004 à 08:30
j'ai été un peu rapide hier... je t'ai fait un petit agent que tu pourras implémenter dans la basecelui-ci extrait tous les champs de la base masque par masque et il les place dans deux fichiers- un si tu souhaites l'exploiter sous excel, il au format csv avec séparateur virgule- un autre présenté d'une manière éditableles champs sont présentés dans l'ordre alpha pour te simplifier les recherches.. j'ai fait une petite routine de tri vite faità toi de jouervoici le synopsys qui t'aidera à implémenter cet agent dans la baseSynopsis de base de documents Lotus Notes - créé à 08:25:44 le 15/01/2004Informations d'agentNom : AllFieldsDernière modification : 14/01/2004 18:36:19Commentaire : [Sans]Agent partagé : OuiType : LotusScriptEtat : Activé(e)Déclencher : Lorsque vous le sélectionnez dans le menu Actions.S'applique à : Exécuter une fois (commandes @ autorisées)Code LotusScript :Option PublicSub Initialize Dim session As NotesSession Dim db As NotesDatabase Dim arraysorted As Variant On Error Goto errHandler Set session=New notessession Set db = session.CurrentDatabase Close Open "c:\mes documents\fields.txt" For Output As 1 Open "c:\mes documents\fieldcsv.txt" For Output As 2 Forall f In db.forms Print "masque en cours ";f.name If Not Isempty(f.Fields) Then If f.issubform Then Print #1, "Sous masque : "; Else Print #1, "Masque : "; End If Print #1, f.name arraysorted= sort(f.fields) Forall ff In arraysorted Print ff Print #1,Chr$(9);ff '// pour une utilisation dans excel Print #2,{"};f.name;{"};",";{"};ff;{"} End Forall Print #1,"" End If End Forall Close Msgbox "terminé" Exit Suberrhandler: Msgbox "erreur " & Err & " " & Error$ & " ligne " & Erl ,16,"AllFields" Resume finfin:End SubFunction Sort(array As Variant) As Variant '// allez un petit tri vite fait... '// variante du tri à bulle '// y a mieux comme méthode... mais bon j'ai fait vite ! Dim n As Integer Dim i As Integer Dim j As Integer Dim A As Variant Dim A1 As Variant n=Ubound(array)+1 For I=1 To (n-1) J=I Do While J>=1 If array(J)<array(J-1) Then A=array(J) A1=array(J-1) array(J)=A1 array(J-1)=A J=J-1 Else Exit Do End If Loop Next sort=arrayEnd Function