Probléme double clique action validation

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

Probléme double clique action validation

Messagepar Heldenn » 19 Mai 2014 à 08:04

Bonjour à tous,

Aujourd'hui, j'ai un nouveau "petit" probléme !


J'ai une action qui me permet de valider mon document, à vrai dire, j'en ai plusieurs, mais l'une d'elle demande un double clique x)

Comment cela se fait ?

Je vous mets son code, il n'est pas long:


Sub Click(Source As Button)
'uidoc est l'objet représentant le document actuel'
Dim wkp As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim Doc As NotesDocument
Dim session As New NotesSession
Dim userName As New NotesName(session.UserName)
Set uidoc= wkp.currentdocument
Set doc= uidoc.document
Set doc= uidoc.document
Set db = session.CurrentDatabase
Call uidoc.Refresh
If (doc.CHRONO(0)="") Then
Msgbox "Renseigner la chronologie dans la description de l'événement"
continue = False
Exit Sub
End If
If (doc.CONSEQ_REEL(0)="") Then
Msgbox "Renseigner la conséquences réelles de la section CONSEQUENCES"
continue = False
Exit Sub
End If
If (doc.CONSEQ_POT(0)="") Then
Msgbox "Renseigner la conséquences potentielles de la section CONSEQUENCES"
continue = False
Exit Sub
End If
If (doc.Etat(0)="Etat0") Then
uidoc.Editmode=True
doc.VALID_DIR="OUI"
doc.Etat="Etat1"
doc.ValidePar_1=userName.Common
doc.DateValideur_1=Now
doc.Heure1=Now
Call uidoc.Refresh
Call doc.save(True,True)
uidoc.save
End If
End Sub


Merci de votre aide
Heldenn
Premier posts
Premier posts
 
Message(s) : 42
Inscrit(e) le : 24 Avr 2014 à 07:13

Re: Probléme double clique action validation

Messagepar pascal29 » 20 Mai 2014 à 10:40

Je suis pas sur d'avoir compris. Tu veux savoir comment exécuter une action sur un double-clique, c'est ça ?
Sur un bouton ? de ta barre d'action ? Une zone sensible ?
Le double-clique est plutôt réservé pour le passage en modification sur le doc.
pascal29
Premier posts
Premier posts
 
Message(s) : 34
Inscrit(e) le : 27 Jan 2009 à 15:21

Re: Probléme double clique action validation

Messagepar Heldenn » 20 Mai 2014 à 10:53

Salut, non, je t'explique, j'ai plusieurs étapes de validations de mon document :

- Valider les faits
- Valider les analyses
- Valider la décision direction
...

Toutes les étapes cité ci-dessus sont des actions qui se retrouve dans la barre grise au dessus de ma fiche

Toutes ces mêmes étapes ne demandent qu'un clique pour passer à l'étape suivante, sauf une " Valider les faits"

Lorsque je clique ( par un simple clique) une première fois, un petit temps de chargement, puis elle reste sur "valider les faits", je dois donc r appuyer une deuxième fois pour que cette fois elle passe à l'étape d'apres.

Comment cela se fait ?
Heldenn
Premier posts
Premier posts
 
Message(s) : 42
Inscrit(e) le : 24 Avr 2014 à 07:13

Re: Probléme double clique action validation

Messagepar Michael DELIQUE » 20 Mai 2014 à 12:38

ça ressemble plus a un bug qu'autre chose, ou alors c'est que tu as une sorte de traitement asynchorne qui met un peu de temps a tourner
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: Probléme double clique action validation

Messagepar Heldenn » 20 Mai 2014 à 15:29

Pour que ce soit un probléme Asynchrone, faudrait-il pas que je ne clique qu'une fois et qu'il y est un temps de chargement ?

Car la je dois cliquer deux fois, le premier clique ne changeant rien
Heldenn
Premier posts
Premier posts
 
Message(s) : 42
Inscrit(e) le : 24 Avr 2014 à 07:13

Re: Probléme double clique action validation

Messagepar pascal29 » 20 Mai 2014 à 15:48

Ce qui est bizarre dans ton code, c'est que tu as l'air de jongler entre l'uidoc et le doc. Surtout à la fin de ton code, au moment de sauvegarder.
Essaye peut-être en utilisant seulement l'uidoc (je dis pas c'est LA solution) :
[...]
If (doc.Etat(0)="Etat0") Then
uidoc.Editmode=True
Call uidoc.fieldsettext("VALID_DIR","OUI")
Call uidoc.fieldsettext("Etat","Etat1")
Call uidoc.fieldsettext("ValidePar_1",userName.Common)
Call uidoc.fieldsettext("DateValideur_1",Now)
Call uidoc.fieldsettext("Heure1",Now)
Call uidoc.Refresh
Call uidoc.save
End If
End Sub
[...]
pascal29
Premier posts
Premier posts
 
Message(s) : 34
Inscrit(e) le : 27 Jan 2009 à 15:21

Re: Probléme double clique action validation

Messagepar Michael DELIQUE » 20 Mai 2014 à 20:24

il est vrai que mélanger programmation frontale est dorsale (NotesDocument v Notesuidocument) est source de beug de se genre.
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: Probléme double clique action validation

Messagepar Jérôme Deniau » 20 Mai 2014 à 20:53

Faut faire un choix:
uidoc.refresh -> équivalent du F9 de Notes (si le masque est en recalculé automatique pas besoin)

Ensuite
2 set doc = uidoc.document -> aucun intérêt

Puis encore un uidoc.refresh, alors qu'il faudrait un uidoc.reload (on modifie le document en mémoire (do: notesdocument) donc il faut rafraîchir le document frontal (uidocument)) et pas l'inverse

User -> uidoc
code: doc (arrière plan donc is des champs uidoc dépendent des nouvelles valeurs du doc (dorsal), il faut un reload)
une fois ok, on fait juste un call doc.save(true,false,false) (à valider dans contexte) car on se fout des champs uidoc (champs calculés à l'affichage non stockés dans doc sur disque).....


etc.....
Avatar de l’utilisateur
Jérôme Deniau
Maître-posteur
Maître-posteur
 
Message(s) : 497
Inscrit(e) le : 08 Mars 2013 à 09:52
Localisation : Rennes (Bretagne à l'Ouest de la France)

Re: Probléme double clique action validation

Messagepar roubech » 21 Mai 2014 à 07:12

Le premier clic ne te fait pas juste changer de mode (read/edit) puis le second fait les opérations voulues de changement d'état ?
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: Probléme double clique action validation

Messagepar Heldenn » 21 Mai 2014 à 07:30

Bonjour,

Il est vrai que cela semble un peu broulli, je n'ai pas fait ce code, je le récupère d'une base similaire, je n'ai pas encore les compétences pour ce code !

Je vais "essayer" de trier un peu toute ma base, voir si cela fonctionne, mais bon ... :)

Roubech: Non, il m'arrive d’être en éditeur ou en lecteur, et le problème est le même, de plus ca ne change pas de mode

Merci !
Heldenn
Premier posts
Premier posts
 
Message(s) : 42
Inscrit(e) le : 24 Avr 2014 à 07:13

Re: Probléme double clique action validation

Messagepar Jérôme Deniau » 23 Mai 2014 à 12:48

Sans rire une simple formule fait pareil en plus simple, aucun intérêt de faire du lotuscript, quoique on pourrait faire un agent LotusScript qui appelle un agent Java, tiens......

@if(Chrono="";@return(@prompt(....));
CONSEQ_REEL="";@return(@prompt.....);
CONSEQ_POT="";@return(@prompt....));
"");

field VALID_DIR:="OUI";
field Etat:="1";
etc.....

c'est simple efficace et pas d'emmerdes.

rappel on a
- actions simples
- formules
- LotusScript
- Java

plus on avance plus c'est long et inefficace (je déconne), l'API C c'est mieux mais bon faut maîtriser, idem JAVA ;-)
Avatar de l’utilisateur
Jérôme Deniau
Maître-posteur
Maître-posteur
 
Message(s) : 497
Inscrit(e) le : 08 Mars 2013 à 09:52
Localisation : Rennes (Bretagne à l'Ouest de la France)


Retour vers Développement