Comment utiliser SelectionFormula

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

Comment utiliser SelectionFormula

Messagepar albert.coeffard » 17 Mars 2010 à 12:36

Bonjour,
J'ai un agent qui a en charge de synchroniser 2 bases entres elles en excluant les pièces jointes d'un champ. A la fin de cet agent pour ne pas retraiter tous les documents à la fois suivante, j'ai opté pour modifier le Select des vues de référence en appelant les documents modifiés après la date ou a tourner cet agent. La formule view.selectionformula ne change pas celle-ci est ce que j'ai mal compris son utilisation?
Avatar de l’utilisateur
albert.coeffard
Posteur habitué
Posteur habitué
 
Message(s) : 255
Inscrit(e) le : 23 Fév 2007 à 15:01
Localisation : Pays de Loire

Messagepar Michael DELIQUE » 17 Mars 2010 à 12:41

salut

si, mais faut pas mettre le "SELECT" dans ta chaine
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 albert.coeffard » 17 Mars 2010 à 12:49

Même chose sans le Select...
Avatar de l’utilisateur
albert.coeffard
Posteur habitué
Posteur habitué
 
Message(s) : 255
Inscrit(e) le : 23 Fév 2007 à 15:01
Localisation : Pays de Loire

Messagepar Bidouille » 17 Mars 2010 à 13:26

Bonjour,

Et si tu mettais ton SELECT dans l'objet "selection de vue", de celle ci, directement en @formule
Bidouille

8) Le farniente est une merveilleuse occupation. Dommage qu'il faille y renoncer pendant les vacances, l'essentiel étant alors de faire quelque chose. 8)
Pierre Daninos
Avatar de l’utilisateur
Bidouille
Roi des posts
Roi des posts
 
Message(s) : 691
Inscrit(e) le : 10 Déc 2008 à 18:14
Localisation : Sud Ouest

Messagepar albert.coeffard » 17 Mars 2010 à 13:54

Non car dans ce cas là la vue sera toujours vide, je veux que mon agent une fois ayant fini de tourner change la valeur du Select pour mettre la nouvelle date de référence exemple
SELECT (Form = "Picture")& variable1 !="" & Archive !="1" & (@Modified >"17/03/2010 08:00:00")
La valeur "17/03/2010 08:00:00" devient une variable correspondant à la date où l'agent a tourné pour la dernière fois, et évalué avec la fonction Now
Avatar de l’utilisateur
albert.coeffard
Posteur habitué
Posteur habitué
 
Message(s) : 255
Inscrit(e) le : 23 Fév 2007 à 15:01
Localisation : Pays de Loire

Messagepar Michael DELIQUE » 17 Mars 2010 à 13:56

ben oui les vue utilisant la date dans le select sont monstrueusement gourmande en ressource pour l'affichage

par contre tu n'as pas un message d'erreur ?
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 albert.coeffard » 17 Mars 2010 à 14:20

Non aucune erreur et au débogueur la propriété SelectionFormula de view ne varie pas d'un iota. Michael, quand tu dis que les vues utilisant les dates sont monstrueusement gourmandes, c'est pour les valeurs dont le sélect change sans arrêt, je suppose (par exemple un @Now-7) qui afficherait les doc des 7 derniers jours mais comme @Now change tout le temps le serveur est sans arrêt en évaluation, je pense qu'avec mon code je contourne ce pb, puisque la date de comparaison est fixe et les dates de dernières modifications le sont également.
Avatar de l’utilisateur
albert.coeffard
Posteur habitué
Posteur habitué
 
Message(s) : 255
Inscrit(e) le : 23 Fév 2007 à 15:01
Localisation : Pays de Loire

Messagepar Michael DELIQUE » 17 Mars 2010 à 14:51

re, oui c'est tout a fait ça

normalement ton code doit fonctionner
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 albert.coeffard » 17 Mars 2010 à 15:10

J'en suis arrivé à la même conclusion que toi et après avoir consulté ceci
http://www.ibm.com/developerworks/lotus/library/ls-LS_views/index.html#N10087 mais rien à faire, même en désactivant l'interdiction de remplacement de structure. En y regardant de plus prêt j'ai pourtant l'impression que ma formule est mal évaluée car dans le débogueur il ne me l'affiche pas complètement
Avatar de l’utilisateur
albert.coeffard
Posteur habitué
Posteur habitué
 
Message(s) : 255
Inscrit(e) le : 23 Fév 2007 à 15:01
Localisation : Pays de Loire

Messagepar Michael DELIQUE » 17 Mars 2010 à 15:12

le débogeur peut tronquer les chaine de texte a l'affichage

mais si tu fais un msgbox de ton string tu dois tout voire
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 » 17 Mars 2010 à 15:14

passe par une variable texte intermédiaire on sait jamais
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 albert.coeffard » 17 Mars 2010 à 15:38

Bingo c'était ça et merci ! , j'ai également corrigé les caractères de construction de la formule en m'alignant sur la syntaxe de l'exemple IBM apparemment les | passent mieux que les { ce qui donne au final:

Code : Tout sélectionner
formula = |Select Form = "Picture" & variable1 !="" & Archive !="1" & (@Modified >"|& (Now) &|")|
   view.SelectionFormula=formula
   view1.SelectionFormula=formula

'au lieu de

   'view.SelectionFormula = {Select (Form = "Picture" & variable1 !="" & Archive !="1" & (@Modified >"}& (Now) &{")}
   'view1.SelectionFormula = {Select (Form = "Picture" & variable1 !="" & Archive !="1" & (@Modified >"}& (Now) &{")}
Avatar de l’utilisateur
albert.coeffard
Posteur habitué
Posteur habitué
 
Message(s) : 255
Inscrit(e) le : 23 Fév 2007 à 15:01
Localisation : Pays de Loire

Messagepar Michael DELIQUE » 17 Mars 2010 à 15:44

normalement les balises de texte ne changes riens, mais dans certain cas ça fonctionne mieux quand on passe une variable string (comme avec les evaluate)
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

cron