Mise à jour champ calculé

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

Mise à jour champ calculé

Messagepar gadcho » 28 Mars 2011 à 14:44

Bonjour,

J'ai un champ calculé qui calcule l'âge d'une personne dans un masque.
J'affiche cet âge dans une vue.
Le problème c'est que l'âge ne se met pas à jour automatiquement, il faut ouvrir le doc et l'enregistrer pour qu'il se mette à jour.

Comment dois je faire pour que cela se fasse automatiquement sans ouvrir tous les docs ?

Merci.
gadcho
Posteur habitué
Posteur habitué
 
Message(s) : 221
Inscrit(e) le : 25 Fév 2005 à 10:51
Localisation : Midi-Pyrénées

Messagepar Michael DELIQUE » 28 Mars 2011 à 14:49

salut

4 possibilités :

- un agent en formule qui rafraichis tous les champs (1 à 2 ligne)
- un agent en LS qui fait computewithform (ça bouffe en ressource)
- un agent en LS qui recaclul l'age et met a jours le champ
- un agent en formule qui recaclul l'age et met a jours le champ
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 gadcho » 28 Mars 2011 à 14:52

Je veux bien l'agent en formule qui rafraichit les champs.
gadcho
Posteur habitué
Posteur habitué
 
Message(s) : 221
Inscrit(e) le : 25 Fév 2005 à 10:51
Localisation : Midi-Pyrénées

Messagepar Michael DELIQUE » 28 Mars 2011 à 14:54

re

un agent qui tourne sur les doc sélectionné avec en formule

@Command([ToolsRefreshAllDocs]);
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 gadcho » 28 Mars 2011 à 16:02

Je ne comprends pas, l'agent s'exécute mais les champs ne se mettent pas à jour.
gadcho
Posteur habitué
Posteur habitué
 
Message(s) : 221
Inscrit(e) le : 25 Fév 2005 à 10:51
Localisation : Midi-Pyrénées

Messagepar Michael DELIQUE » 28 Mars 2011 à 16:12

sinon essais

@Command( [ViewRefreshFields] )
@Command( [RefreshHideFormulas] )
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 gadcho » 28 Mars 2011 à 16:23

non c'est pareil ça ne fonctionne pas
gadcho
Posteur habitué
Posteur habitué
 
Message(s) : 221
Inscrit(e) le : 25 Fév 2005 à 10:51
Localisation : Midi-Pyrénées

Messagepar Michael DELIQUE » 28 Mars 2011 à 16:29

désolé, maisla comme ça je peut pas plus
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 » 28 Mars 2011 à 16:32

question :

ton champ il est renseigné comment ?
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 gadcho » 28 Mars 2011 à 16:40

Champ calculé avec :

@If(DateNaisE_1 !="";@Year(@Today) - @Year(DateNaisE_1);Null)
gadcho
Posteur habitué
Posteur habitué
 
Message(s) : 221
Inscrit(e) le : 25 Fév 2005 à 10:51
Localisation : Midi-Pyrénées

Messagepar roubech » 09 Avr 2011 à 22:53

gadcho a écrit:Je ne comprends pas, l'agent s'exécute mais les champs ne se mettent pas à jour.

commentt lances-tu l'agent ? un bouton d'action dans la vue ?
quels sont ses paramètres ? traiter les docs sélectionnés ?

Et comme l'a dit Michael, le computewithform ou le tools refreshselecteddoc sont couteux, donc préferer un agent qui met à jour juste le champ qui nécessite une maj

FIELD Age := @If(DateNaisE_1 !=""; @Year(@Today) - @Year(DateNaisE_1); 0)
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Messagepar gadcho » 11 Avr 2011 à 10:20

C'est un agent planifié sur tous les documents.
Est ce qu'il vaut mieux que je mette ma formule dans l'agent plutôt que dans le champ calculé ?
gadcho
Posteur habitué
Posteur habitué
 
Message(s) : 221
Inscrit(e) le : 25 Fév 2005 à 10:51
Localisation : Midi-Pyrénées

Messagepar roubech » 11 Avr 2011 à 20:33

ca dépend de ce que tu veux
si tu veux afficher l'age dans une vue ou faire une recherche sur l'age ... il faut stocker l'age dans le doc et dans ce cas mieux vaut l'agent quotidien pour mettre à jour l'age dans les docs
si tu veux juste afficher l'age au moment ou l'utilisateur consulte un doc, le champ calculé à l'affichage suffit
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Messagepar gadcho » 12 Avr 2011 à 07:56

je veux l'afficher dans une vue et c'est pour cela que je veux que ça se recalcule tous les jours mais ça ne fonctionne pas si je mets un champ calculé
gadcho
Posteur habitué
Posteur habitué
 
Message(s) : 221
Inscrit(e) le : 25 Fév 2005 à 10:51
Localisation : Midi-Pyrénées

Messagepar roubech » 12 Avr 2011 à 13:45

si tu utilises un champ calculé, il faut que quelqu'un ouvre le doc en édition et l'enregistre pour que la formule soit évalué et le résultat enregistré
sinon, l'agent avec le computeWithForm qui recalcule tous les champs, mais c'est couteux. Mieux vaut le petit agent avec la formule pour calculer ce champ précis
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Suivant

Retour vers Développement

cron