[Resolu]Bloquer l'ouverture d'un document à partir d'une vue

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

[Resolu]Bloquer l'ouverture d'un document à partir d'une vue

Messagepar poowie » 17 Sep 2010 à 12:56

Bonjour,
je suis entrain de développer une application en LS pour la gestion d'incident, et je me trouve confronté à deux problématiques:
1)Je souhaite savoir dans un premier temps s'il existe une formule qui empêche d'ouvrir un document à partir d'une vue lorsqu'on clique dessus deux fois.( toujours à partir de la vue)
2) J'ai un bouton détail avec le code joint:
Dim workspace As New NotesUIWorkspace
Call workspace.EditDocument(False)
le document s'affiche bien en mode lecture, mais quand je clique la dessus deux fois, il se met en mode édition.
quelle méthode peut empêcher ce changement?
merci d'avance.
Dernière édition par poowie le 22 Sep 2010 à 09:51, édité 1 fois.
poowie
Premier posts
Premier posts
 
Message(s) : 32
Inscrit(e) le : 17 Sep 2010 à 12:44

Messagepar Michael DELIQUE » 17 Sep 2010 à 13:10

salut

dans le Querymodechange tu met : continue = False
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 poowie » 17 Sep 2010 à 13:39

Michael DELIQUE a écrit:salut

dans le Querymodechange tu met : continue = False


Merci pour cette réponse rapide.
J'ai mis aussi: continue = False dans le QueryOpendocument de la vue que je souhaite bloquée et sa marche très bien.
Cordialement.
poowie
Premier posts
Premier posts
 
Message(s) : 32
Inscrit(e) le : 17 Sep 2010 à 12:44

Messagepar poowie » 20 Sep 2010 à 08:32

Bonjour,

Dans le même registre, je souhaite pouvoir visualisé le détail d'un ticket fermé tout en interdisant son réouverture par l'utilisateur et non par l'intervenant (deux rôle différents), sachant que ce ticket est dans une vue nommée "mes tickets fermé":
dans le Querymodechange, j'ai réalisé ce code:*** il vérifi si l'utilisateur commute du mode Lecture pour Éditer le document.S'il le document est en état Clôturé ou fermé alors un message s'affiche et empêche l'utilisateur s'éditer le document***
'************************************************************

Dim session As New NotesSession
Dim db As NotesDatabase
Dim acl As NotesACL
Dim entry As NotesACLEntry

Set db = session.CurrentDatabase
Set acl = db.ACL
Set entry = acl.GetEntry( session.UserName )


If Not ( source.EditMode ) Then
currentStatus = source.FieldGetText( "Statut_1" )
If ( currentStatus = "Clôturé" ) Then
Messagebox ( "Le ticket ne peut pas être modifié" )
continue = False
Elseif ( entry.IsRoleEnabled( "Utilisateur" )) & CDbl(currentStatus ="Fermé")Then
Messagebox ( "Le ticket ne peut pas être modifié" )
continue = False


End If
End If
*******************************************************
j'obtiens la réponse suivante:Type incompatible dans la méthode CoerStrToNum:string trouvé double attendu.
quelqu'un a une idée???

merci d'avance,
Cordialement.
poowie
Premier posts
Premier posts
 
Message(s) : 32
Inscrit(e) le : 17 Sep 2010 à 12:44

Messagepar nemrod93 » 20 Sep 2010 à 13:01

bonjour,
c'est le

"CDbl(currentStatus ="Fermé")"

qui renvoie ça

1) la parenthèse est mal placée,elle doit fermer après currentStatus
2) tu convertit du texte en flottant? vu que currentStatus est du texte puisque tu testes "If ( currentStatus = "Clôturé" ) Then"

enlève le CDbl, ça devrait le faire
cdlt

Alain

On ne voit que ce qu'on veut voir, et on trouve rarement si on ne cherche pas
Avatar de l’utilisateur
nemrod93
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 378
Inscrit(e) le : 04 Déc 2008 à 10:26
Localisation : Saint Malo

Messagepar poowie » 20 Sep 2010 à 13:58

nemrod93 a écrit:bonjour,
c'est le

"CDbl(currentStatus ="Fermé")"

qui renvoie ça

1) la parenthèse est mal placée,elle doit fermer après currentStatus
2) tu convertit du texte en flottant? vu que currentStatus est du texte puisque tu testes "If ( currentStatus = "Clôturé" ) Then"

enlève le CDbl, ça devrait le faire


Bonjour,

Cela ne change rien au problème, que je rectifie la parenthèse ou que j'enlève la conversion CDbl, j'obtiens toujours le même message d'erreur.

Cordialement.
poowie
Premier posts
Premier posts
 
Message(s) : 32
Inscrit(e) le : 17 Sep 2010 à 12:44

Messagepar nemrod93 » 20 Sep 2010 à 14:21

Re,

en tout cas, il faut tester le role "Utilisateur" en l'encadrant comme ceci
"[Utilisateur]"
cdlt

Alain

On ne voit que ce qu'on veut voir, et on trouve rarement si on ne cherche pas
Avatar de l’utilisateur
nemrod93
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 378
Inscrit(e) le : 04 Déc 2008 à 10:26
Localisation : Saint Malo

Messagepar nemrod93 » 20 Sep 2010 à 14:27

le boulet !
en LS faut pas mettre de crochets oups :roll: :boul02:
cdlt

Alain

On ne voit que ce qu'on veut voir, et on trouve rarement si on ne cherche pas
Avatar de l’utilisateur
nemrod93
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 378
Inscrit(e) le : 04 Déc 2008 à 10:26
Localisation : Saint Malo

Messagepar nemrod93 » 20 Sep 2010 à 14:28

Quoique ca marche quand même

enfin bref ! :roll:
J'vais boire un café :?
cdlt

Alain

On ne voit que ce qu'on veut voir, et on trouve rarement si on ne cherche pas
Avatar de l’utilisateur
nemrod93
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 378
Inscrit(e) le : 04 Déc 2008 à 10:26
Localisation : Saint Malo

Messagepar nemrod93 » 20 Sep 2010 à 14:38

re

j'ai testé ca et ca fonctionne
( entry.IsRoleEnabled( "Utilisateur" ) AND currentStatus ="Fermé")

la condition sera correctement interprétée car en LS c'est le AND qui est utilisé
cdlt

Alain

On ne voit que ce qu'on veut voir, et on trouve rarement si on ne cherche pas
Avatar de l’utilisateur
nemrod93
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 378
Inscrit(e) le : 04 Déc 2008 à 10:26
Localisation : Saint Malo

Messagepar Michael DELIQUE » 20 Sep 2010 à 14:42

oui

en LS c'est AND et en Formule/js/java c'est &
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 nemrod93 » 20 Sep 2010 à 14:51

@Mickaël
merci cette précision importante
cdlt

Alain

On ne voit que ce qu'on veut voir, et on trouve rarement si on ne cherche pas
Avatar de l’utilisateur
nemrod93
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 378
Inscrit(e) le : 04 Déc 2008 à 10:26
Localisation : Saint Malo

Messagepar poowie » 20 Sep 2010 à 15:01

nemrod93 a écrit:re

j'ai testé ca et ca fonctionne
( entry.IsRoleEnabled( "Utilisateur" ) AND currentStatus ="Fermé")

la condition sera correctement interprétée car en LS c'est le AND qui est utilisé


Merci beaucoup pour l'aide, ça marche très bien.
Étant novice dans la programmation LS, je ne connaissais pas cette règle.

Cordialement.
poowie
Premier posts
Premier posts
 
Message(s) : 32
Inscrit(e) le : 17 Sep 2010 à 12:44


Retour vers Développement

cron