NOVICE : lotus script - concaténation de lecteurs dans un ch

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

NOVICE : lotus script - concaténation de lecteurs dans un ch

Messagepar sticky » 15 Juil 2003 à 08:59

Bonjour, J'ai un agent lotus script qui ajoute un nom de groupe dans un champ nommé "lecteurs", du type : doc.lecteurs="Groupe : TOTO" je voudrais modifier cet agent pour ajouter nom plus 1 nom de groupe mais 2 du type doc.lecteurs="Groupe:TOTO, Groupe: TITI"Mais quand je teste ce genre de commande, ca marche pas... l'agent met les 2 noms bout à bout dans le champ mais les lecteurs du groupe TITI ne peuvent pas lire le doc... Help please...
sticky
 

Re: NOVICE : lotus script - concaténation de lecteurs dans u

Messagepar polo » 15 Juil 2003 à 09:07

en LS : NotesItem.AppendToTextList("NomDuGroupeAjoute") par formule : FIELD lecteurs := lecteurs : NomDuGroupeAjoute;NB :si c juste une question de droit et que ce champ n'est pas utilisé ds ton code, tu peux créer un nouveau champ de type lecteur, ca marchera aussi
polo
 

Re: NOVICE : oula j'suis pas douée je crois...

Messagepar sticky » 15 Juil 2003 à 09:44

Pourriez-vous me dire concrètement comment je dois insérer ce code ? (ci-dessous copie de l'agent à modifier) . Car je ne connais absolument pas lotus script, du coup je galère un peu...j'ai fait qqs essais mais ca marche pas trop... merci d'avance- - - - - - - - - - - - - - - - - - - - - - - - - - - - -Sub Initialize Set ws = New NotesUIWorkspace Set session = New NotesSession Set db = session.CurrentDatabase Set CurrentDoc = ws.CurrentDocument counter = 0 Set collection = db.UnprocessedDocuments Dim x As Integer newpara = Inputbox _ ("Sous-Préfecture reçu le : ") rc = Chr(13) + "Sous-Préfecture reçu le " Redim RichT(collection.Count-1) As Variant For x = 1 To collection.Count Set doc = collection.GetNthDocument(x) doc.etat = "22 - Visé" doc.lecteurs = "Groupe : Tout le monde" Set RichT(counter) = doc.GetFirstItem ("Body") Call RichT(counter).appendText (RC) Call RichT(counter).appendText(newpara) Call doc.save (True,False) counter = counter + 1 Next End Sub
sticky
 

Re: NOVICE : lotus script - concaténation de lecteurs dans u

Messagepar Raziel » 15 Juil 2003 à 09:48

Salut,essaie ceci :Sub InitializeDim item_Lecteurs as notesitemSet ws = New NotesUIWorkspaceSet session = New NotesSessionSet db = session.CurrentDatabaseSet CurrentDoc = ws.CurrentDocumentcounter = 0Set collection = db.UnprocessedDocumentsDim x As Integernewpara = Inputbox _ ("Sous-Préfecture reçu le : ")rc = Chr(13) + "Sous-Préfecture reçu le "Redim RichT(collection.Count-1) As Variantset item_Lecteurs = doc.getfirstitem("lecteurs")For x = 1 To collection.CountSet doc = collection.GetNthDocument(x)doc.etat = "22 - Visé"'doc.lecteurs = "Groupe : Tout le monde"call item_Lecteurs.AppendToTextList("Groupe : Tout le monde")call item_Lecteurs.AppendToTextList("Groupe : TOTO")Set RichT(counter) = doc.GetFirstItem ("Body")Call RichT(counter).appendText (RC)Call RichT(counter).appendText(newpara) Call doc.save (True,False)counter = counter + 1NextEnd Sub
Raziel

L'administration est un lieu ou les gens qui arrivent en retard croisent dans l'escalier ceux qui partent en avance. [Georges Courteline]
Avatar de l’utilisateur
Raziel
Modérateur
Modérateur
 
Message(s) : 1795
Inscrit(e) le : 21 Déc 2004 à 11:06
Localisation : Roubaix

Re: NOVICE : lotus script - concaténation de lecteurs dans u

Messagepar Stephane Maillard » 15 Juil 2003 à 10:29

Bonjour,Si mes souvenirs sont correct il faut utilisé le point-virgule, pour faire un spérateur de liste.[%sig%]
Cordialement

Stéphane Maillard
Avatar de l’utilisateur
Stephane Maillard
Lord of DominoArea
Lord of DominoArea
 
Message(s) : 8695
Inscrit(e) le : 16 Déc 2004 à 01:10
Localisation : Bretagne

Re: NOVICE : lotus script - concaténation de lecteurs dans u

Messagepar Raziel » 15 Juil 2003 à 10:47

Pas besoin de ";" si l'on utilise AppendToTextList.Dans le cas ou le veux remplir le champ sans cette méthode, il faut effectivement infiqué un séparateur de valeur connu de notes. Cela veux dire aussi que dans ton champ, tu doit lui indiquer ce même séparateur.Ex:J'ai un champ Toto dont le séparateur est le point virgule.Je peux le remplir de la manière suivantedoc.Toto = "Groupe1;Groupe2".Inconvénients : Si l'on veux considéré que ce champ est multival, il faudra réouvrir le doc afin que notes face la conversion.De plus, si l'on veux à un moment, changer le caractère de séparation, il faut retoucher au code (ce qu'évite la méthode AppendToTextList)
Raziel

L'administration est un lieu ou les gens qui arrivent en retard croisent dans l'escalier ceux qui partent en avance. [Georges Courteline]
Avatar de l’utilisateur
Raziel
Modérateur
Modérateur
 
Message(s) : 1795
Inscrit(e) le : 21 Déc 2004 à 11:06
Localisation : Roubaix

Re: NOVICE : lotus script - concaténation de lecteurs dans u

Messagepar Stephane Maillard » 15 Juil 2003 à 10:54

Bonjour,Merci pour l'info. Je crois que vais faire quelques modifs dans mes agents.[%sig%]
Cordialement

Stéphane Maillard
Avatar de l’utilisateur
Stephane Maillard
Lord of DominoArea
Lord of DominoArea
 
Message(s) : 8695
Inscrit(e) le : 16 Déc 2004 à 01:10
Localisation : Bretagne

ca marche !!!

Messagepar sticky » 15 Juil 2003 à 11:08

Merci bcp pour vos réponses !! ca marche !! (youpi yaaa !!, je suis contente !!)Par contre, par rapport à ton code , j'ai du redescendre la ligne set item_Lecteurs = doc.getfirstitem("lecteurs")à l'intérieur de la boucle en dessous car sinon il me mettait un message d'erreur à l'exécution. ce qui me donne le code ci-dessous. Par contre, ne connaissant pas très bien (pas du tout en fait ... ) le fonctionnement du "call", si je veux vider mon champ "lecteur" avant d'ajouter mes 2 groupes , je peux faire un : set item_Lecteurs = " " ou call item_Lecteurs= " " ?? avant d'ajouter mes 2 groupes ?? - - - - - - - - - - - - - - - - - - - -Sub InitializeDim item_Lecteurs as notesitemSet ws = New NotesUIWorkspaceSet session = New NotesSessionSet db = session.CurrentDatabaseSet CurrentDoc = ws.CurrentDocumentcounter = 0Set collection = db.UnprocessedDocumentsDim x As Integernewpara = Inputbox _ ("Sous-Préfecture reçu le : ")rc = Chr(13) + "Sous-Préfecture reçu le "Redim RichT(collection.Count-1) As VariantFor x = 1 To collection.CountSet doc = collection.GetNthDocument(x)doc.etat = "22 - Visé"'doc.lecteurs = "Groupe : Tout le monde"set item_Lecteurs = doc.getfirstitem("lecteurs") ---> là ou j'ai remis la lignecall item_Lecteurs.AppendToTextList("Groupe : Tout le monde")call item_Lecteurs.AppendToTextList("Groupe : TOTO")Set RichT(counter) = doc.GetFirstItem ("Body")Call RichT(counter).appendText (RC)Call RichT(counter).appendText(newpara) Call doc.save (True,False)counter = counter + 1NextEnd Sub
sticky
 

Re: NOVICE : lotus script - concaténation de lecteurs dans u

Messagepar Raziel » 15 Juil 2003 à 11:25

Tu peux tous simplement fairecall doc.replaceitemvalue("lecteurs", "")oudoc.lecteurs = ""
Raziel

L'administration est un lieu ou les gens qui arrivent en retard croisent dans l'escalier ceux qui partent en avance. [Georges Courteline]
Avatar de l’utilisateur
Raziel
Modérateur
Modérateur
 
Message(s) : 1795
Inscrit(e) le : 21 Déc 2004 à 11:06
Localisation : Roubaix


Retour vers Développement

cron