Page 1 sur 1

Modifier valeur d'un champ texte (Agent Java)

MessagePublié: 27 Août 2013 à 16:44
par sanaa83
Bonjour,

Je suis entraien de développer un agent Java qui me permet de modifier le champ "test" dans un masque

Voilà le code
Code : Tout sélectionner
 
String list = "A,B,C,D";
Database db =agentContext.getCurrentDatabase();             
 Document document = agentContext.getDocumentContext();
 document.replaceItemValue("test", list);
document.save(true, true)


Après l'exécution de cet agent, le champ "test" reste toujours vide même j'ai utilisé le replaceitem value.

Re: Modifier valeur d'un champ texte (Agent Java)

MessagePublié: 27 Août 2013 à 17:45
par Michael DELIQUE
Bonjour

normal ton document, c'est le document de l'agent. pas le document en cours...

Re: Modifier valeur d'un champ texte (Agent Java)

MessagePublié: 27 Août 2013 à 17:48
par sanaa83
Merci pour ton retour.

Donc, comment je peux récupérer le document en cours de ma base lotus?!

Re: Modifier valeur d'un champ texte (Agent Java)

MessagePublié: 27 Août 2013 à 19:17
par roubech
ton agent Java est lancé comment ? planifié ou depuis un bouton d'action ?
http://publib.boulder.ibm.com/infocente ... _JAVA.html

Re: Modifier valeur d'un champ texte (Agent Java)

MessagePublié: 27 Août 2013 à 19:39
par sanaa83
Re,

J'ai déjà utilisé ça ""Document document = agentContext.getDocumentContext();""
Mais ça ne marche pas.

Mon agent est lancé depuis un bouton dans le même masque ou je veux modifier le champ.

Un code correct mais sans résultat???!!!

Re: Modifier valeur d'un champ texte (Agent Java)

MessagePublié: 27 Août 2013 à 20:32
par Michael DELIQUE
re,

Document document = agentContext.getDocumentContext() fait référence a l'agent en cours, ça te donne le document qui contient les infos de l'agent. pas le document en cours.

c'est un exemple tiré de l'aide en ligne

Code : Tout sélectionner
import lotus.domino.*;
public class JavaAgent extends AgentBase {
 public void NotesMain() {
   try {
     Session session = getSession();
     AgentContext agentContext =
         session.getAgentContext();
     // (Your code goes here)
     DocumentCollection dc =
        agentContext.getUnprocessedDocuments();
     System.out.println("Count = " + dc.getCount());
     Document doc = dc.getFirstDocument();
     while (doc != null) {
       System.out.println(
            doc.getItemValueString("Subject"));
       doc = dc.getNextDocument();
       }
   } catch(Exception e) {
     e.printStackTrace();
   }
 }
}

Re: Modifier valeur d'un champ texte (Agent Java)

MessagePublié: 28 Août 2013 à 12:44
par roubech
jamais utilisé, mais d'après la doc (cf mon précédent lien)
For an agent activated in a view through the Notes client UI, the in-memory document is the document highlighted in the view.