Refresh form en front-end

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

Refresh form en front-end

Messagepar camilleB » 06 Mai 2013 à 00:29

Bonjour,
J'ai un document sur lequel je mets à jour un champ auteur par un agent.runOnserver (donc en back-end).
Après la mise à jour, le document est enregistré, fermé et réaffiché par:
Code : Tout sélectionner
doc.saveoptions="0
doc.save(true,false)
call uidoc.close(true)
msgbox "message apres le close"
Call agent.runonserver(param.noteid)
call ws.Editdocument (false,doc).

1. Le message s'affiche mais le form n'a pas le temps de disparaitre de la fenêtre!
2. Je dois fermer à nouveau le form pour rafraichir le champ et voir les nouvelles valeurs
D'après mes recherches Editdocument devrait permettre de rafraichir le front end.
Merci de votre aide.
cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Refresh form en front-end

Messagepar Michael DELIQUE » 06 Mai 2013 à 07:59

Salut

essais cette function pour re-afficher ton uidoc

Code : Tout sélectionner
Public Function DocBackEndOnServer(wUIDoc As NotesUIDocument) As NotesDocument
   
   On Error Goto CatchError
   
   Set DocBackEndOnServer = Nothing
   
   If wUIDoc Is Nothing Then
      Error 9999,"wUIDoc is Nothing"
      Exit Function
   End If
   
   Set DocBackEndOnServer = wUIDoc.Document.ParentDatabase.GetDocumentByUNID(wUIdoc.Document.UniversalID)
   
   Exit Function
CatchError:
   MsgBox "("+Cstr(GetThreadInfo (1))+" Call by "+Cstr(GetThreadInfo(10))+")"+Chr(10)+"Error " + CStr(Err) + " : "+Chr(10) + CStr(Error)+". "+Chr(10)+"Line # "+Cstr(Erl),16," ERROR !"
   Set DocBackEndOnServer = Nothing
   Exit Function
End Function
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

Re: Refresh form en front-end

Messagepar camilleB » 06 Mai 2013 à 20:23

Salut,
j'ai mis ceci, mais toujours pas de refresh sans fermeture et réouverture manuellement:
Code : Tout sélectionner
doc.saveoptions="0
doc.save(true,false)
call uidoc.close(true)
msgbox "message apres le close"
Call agent.runonserver(param.noteid)
set doc=nothing
set doc=DocBackEndOnserver(uidoc)
call ws.Editdocument (false,doc).

Merci!

Camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Refresh form en front-end

Messagepar roubech » 06 Mai 2013 à 23:10

Le runonserver ne rend pas la main tout de suite, avant même d'avoir exécuté le code ?
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: Refresh form en front-end

Messagepar camilleB » 06 Mai 2013 à 23:37

Salut, c'est le seul point en commun!
En code c'est plus rapide de fermer et ré-ouvrir qu'à la main!
Comment faire patienter....un timer?
cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: Refresh form en front-end

Messagepar Michael DELIQUE » 07 Mai 2013 à 07:37

salut

normalement le runonserver ne rend la main qu'apres la fin de l'execusion de l'agent non ?
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