Page 1 sur 1

creation d'un rapport

MessagePublié: 10 Juil 2002 à 13:23
par max
Je viens de mettre au lotus scriptje voudrai créer un rapport automatique tous les moisqui me genere un nouveau documentJe crée un agent mensuelje voudrai que cette agent s'execute ou prenne en compte seulement les documents créé dans ce mois.Qu'elle methode puis utiliser pour automtiser au maximum ce rapport

Re: creation d'un rapport

MessagePublié: 11 Juil 2002 à 16:54
par Le Sylvanien
deux possibilités (à premire vue):dans les deux cas, il faut obtenir une collection (notesdocumentcollection) des documents qui t'intéressent.1. La plus simple : si tu es sûr que ton agent tournera qu'une fois par mois : c'est d'utiliser une recherche avec "unprocessed" sur la base : Notes obtient alors la liste des documents qui n'ont pas encore été créés par cet agent.2. Un peu moins simple, mais pas beaucoup : c'est d'utiliser la méthode " ftsearch" classique qui te propose de remonter sur une période de dates de création de documents. A toi de déduire le premier jour du mois précédent à partir de la date système du serveur.[%sig%]

Re: creation d'un rapport

MessagePublié: 16 Juil 2002 à 13:06
par christian
Bienvenu au LS tu verras c'est passionnant ; on peut bcp de chosesEn résumé :Dans la structure tu crées un masque nommé Rapport par exemple ; Tu y mets un titre , tu personnalies...Puis dans ce masque tu y places un champ Texte riche nommé EnTeteBody Il fera office de titre de colonne ; entre chaque titre de colonne tu places de taquets de tabulation pour avoir par exempleTitreZone1 TitreZone2 TitreZone3En dessous de ce genre tu places un second champ Texte riche nommé LigneBody ; tu y positionnes les même taquets de tabulation de manière à aligner les données à chaque titreParlons un peu du code...Tu vas jongler avec les objets NotesRichTextItemDim RT as VariantDim DB as NotesDataBaseDim Session as NotesSessionDim Doc as NotesDocumentDim DocRapport as NotesDocumentDim View as NotesView....Set Session=New NotesSessionSet Db=Session.CurrentDataBaseSet View=Db.GetView("le nom de la vue à explorer pour créer le rapport")...... le reste de ton code qu j'ignore....Set DocRapport=New NotesDocument(Db)Set RT=New CreateRichTextItem( "LigneBody" )......Set Doc=View.GetFirstDocumentDo While Not (Doc Is Nothing) If Month(Doc.Created)=Month(Date) Call RT.AppendText(Doc.Zone1(0)) ' Zone1(0) doit correspondre au nom de ton champ.... Call RT.AddTab(1) Call RT.AppendText(Doc.Zone2(0)) Call RT.AddTab(1) Call RT.AppendText(Doc.Zone2(0)) Call RT.AddNewLine(1)end if Set Doc=View.GetNextDocument(Db)LoopCall DocRapport.Save(True, False)EHHHH voilà à peu chose près l'idéeA+