Affectation d'une valeur aux documents réponses

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

Affectation d'une valeur aux documents réponses

Messagepar DomNotes » 11 Mars 2011 à 00:21

Bonsoir,
Je souhaite quand je clique sur un bouton dans le document parent affecter une valeur à tous les documents réponse de ce document.
Je veux faire e code en LotusScript.

Merci pour toute proposition
Avatar de l’utilisateur
DomNotes
Posteur néophyte
Posteur néophyte
 
Message(s) : 74
Inscrit(e) le : 22 Déc 2004 à 11:08

Messagepar Michael DELIQUE » 11 Mars 2011 à 08:03

salut

tu as bien créé dans document enfants au sens notes du terme ?

regardes dans l'aide en lignes du coté de NotesDocument.Responses
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

Messagepar LSong » 11 Mars 2011 à 15:57

une fois avec ta collection tu as StampsAll qui doit repondre a ton besoin
LSong
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 353
Inscrit(e) le : 07 Nov 2007 à 14:27
Localisation : Ile de france

Messagepar DomNotes » 14 Mars 2011 à 11:23

Bonjour,
comme vous me l'avez conseillé j'ai utilisé :Responses et Stampall mais il n'affecte rien une fois arrivé à la ligne stampAll il affiche une erreur.
Vous trouverez ci dessous mon code
Merci

Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim session As New notessession
Dim collection As NotesDocumentCollection
Dim currentResponse As NotesDocument


Set uidoc=ws.CurrentDocument
'Set doc=uidoc.Document

Set collection = doc.Responses
Set currentResponse = collection.GetFirstDocument

While Not ( currentResponse Is Nothing )

'Status=doc.StatusNum(0)
Call currentResponse.StampAll("StatusNum", "10")

Set currentResponse = collection.GetNextDocument( currentResponse )
Wend
End Sub
Avatar de l’utilisateur
DomNotes
Posteur néophyte
Posteur néophyte
 
Message(s) : 74
Inscrit(e) le : 22 Déc 2004 à 11:08

Messagepar Michel Nico » 14 Mars 2011 à 11:29

Quelle erreur as tu ?
Peut être que Cint(10) à la place de "10" fonctionne si c'est une erreur de type dans ton champ StatusNom
Michel Nico
Posteur néophyte
Posteur néophyte
 
Message(s) : 60
Inscrit(e) le : 18 Jan 2011 à 17:19
Localisation : Toulouse

Messagepar DomNotes » 14 Mars 2011 à 11:48

Désolée j'avais juste utiliser le doc reponse au lieu de la collection c'est pour ça qu'il affiché l'erreur
Au lieu de ça
Call currentResponse.StampAll("StatusNum", "10")
Il faut mettre ça
Call collection.StampAll("StatusNum", "10")

Merci pour tout
Avatar de l’utilisateur
DomNotes
Posteur néophyte
Posteur néophyte
 
Message(s) : 74
Inscrit(e) le : 22 Déc 2004 à 11:08

Messagepar Michael DELIQUE » 14 Mars 2011 à 11:50

re,

mauvaise algo/compréhension du LS un stampall applique un valeur a tous les documents d'une collection pas d'un document

donc pour ton code essais

Code : Tout sélectionner
Dim ws As New NotesUIWorkspace
Dim session As New notessession
Dim collection As NotesDocumentCollection
Dim currentResponse As NotesDocument


Set uidoc=ws.CurrentDocument
'Set doc=uidoc.Document

Set collection = doc.Responses

if not collection is Nothing then
if collection.count >0 then
  cal collection.StampAll("StatusNum", "10")
end if
end if
Dernière édition par Michael DELIQUE le 14 Mars 2011 à 11:52, édité 1 fois.
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

Messagepar Michael DELIQUE » 14 Mars 2011 à 11:52

ou alors

Code : Tout sélectionner
Dim ws As New NotesUIWorkspace
Dim session As New notessession
Dim collection As NotesDocumentCollection
Dim currentResponse As NotesDocument


Set uidoc=ws.CurrentDocument
'Set doc=uidoc.Document

Set collection = doc.Responses
Set currentResponse = collection.GetFirstDocument

While Not ( currentResponse Is Nothing )

'Status=doc.StatusNum(0)
Call currentResponse.ReplaceItemValue("StatusNum", "10")
call currentResponse.save(true,false)

Set currentResponse = collection.GetNextDocument( currentResponse )
Wend


mais avant teste ta collection ça evite les soucis
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy


Retour vers Développement