Page 1 sur 2
Recalculer les champs des doc selectionnés depuis une vue

Publié:
17 Fév 2010 à 17:15
par clementbp
Bonjour.
Je souhaiterais avoir un agent qui me permette de recalculer les champs qui sont dans mon masque sans etre obligé d'ouvrir le document, de le modifier et de l'enregistrer de manière manuelle.
Pour le moment j'ai 1 seul champ a recalculer mais il est possible que par la suite j'en ai plusieurs.
J'ai essayé d'utiliser le @Command([ViewRefreshFields]) mais je ne trouve nul part d'exemple pour comprendre la manière de l'utilisé et la synthaxe à adopter.
Pourriez vous m'aider s'il vous plait ?

Publié:
17 Fév 2010 à 17:27
par Michael DELIQUE
salut
un agent qui tourne sur tout les document selectionné
tu colle la formule @Command([ViewRefreshFields])
et tu le lance depuis la vue

Publié:
17 Fév 2010 à 17:46
par clementbp
salut.
J'avais déja essayé ça mais j'ai un message d'erreur qui apparait à chaque fois; Je te l'ai mis en pièce jointe.
Par contre quand je met "@Command([ViewRefreshFields])" dans mon agent et uniquement je l'enregistre et je le ferme, quand je le réouvre il me mets
@Command([ViewRefreshFields]);
SELECT @All
est ce que c'est normal ou est ce que je fais ça anormalement
merci

Publié:
17 Fév 2010 à 18:46
par nemrod93
Salut
Dans les propriétés de l'agent, 1er onglet, zone Exécution, option déroulante cible, sélectionner "Aucune"
en espérant que cela résolve ton problème
cdlt
alain

Publié:
18 Fév 2010 à 09:55
par clementbp
Merci nemrod93,
Après avoir modifier la zone Execution, je n'ai plus le message d'erreur.
Par contre pour le @Command([ViewRefreshFields]), je ne sais pas trop pourquoi mais il n'a pas recalculé la valeur dans mon masque.
Je me suis débrouillé en mettant dans mon agent :
@Command([OpenDocument]);
@Command([EditDocument]);
@Command([FileSave]);
@Command([CloseWindow])
Par contre j'aurais besoin de compléter ce code pour que mon agent s'exécute sur tous les documents réponses du document principal.
Je pense qu'il faut utiliser un @AllChildren mais apès pour la syntaxe ????
Si quelqu'un a une idée ce serait gentil merci !

Publié:
18 Fév 2010 à 10:05
par Michael DELIQUE
salut
je viens de reagrder sur une de mes bases
je n'utilise que cette commande : @Command([ToolsRefreshAllDocs]);

Publié:
18 Fév 2010 à 11:16
par nemrod93
Salut
Oui Mickaël a raison
cdlt
Alain

Publié:
18 Fév 2010 à 12:00
par clementbp
Merci beaucoup
Ca marche tip top avec la commande @Command([ToolsRefreshAllDocs])
C'est super sympa
A bientot

Publié:
18 Fév 2010 à 13:24
par nemrod93
Peux-tu placer le flag résolu sur ton post
cdlt
Alain

Publié:
18 Fév 2010 à 15:14
par clementbp
Aie Aie Aie
J'ai encore un problème, mais cette fois ci c'est un problème de droit.
En fait avec mon ID je n'ai aucun soucis mon agent fonctionne correctement.
Par contre quand je prend l' ID d'un utilisateur lambda, mçon agent ne fonctionne plus.
Je suppose que c'est un problème de droit car étant administrateur, j'ai les droits de modification sur tous les documents, qu'ils soient terminés ou non, par contre un utilisateur n'a pas de droit de modif sur les doc terminés.
Auriez vous une solution me permettant de donner temporairement des droits admin ou simplement de modif sur tous les documents pendant l'exécution de l'agent ?
Merci

Publié:
18 Fév 2010 à 15:18
par Michael DELIQUE
salut
soit tes document on un role qui donne l'acces en écriture et tu afect le role a l'utilisateur.
soit tu passe par du Ls et un runonserveur (pour peut que le serveur est les droit suffisant)
par contre si tu dois donner temporaire les droit a un utilisateur c'est que la base est mal concu ou que c'est aps le bon utilisateur

Publié:
09 Mars 2010 à 11:49
par clementbp
Bonjour à tous
J'ai modifié un peu ma façon de faire pour résoudre ce problème.
Donc mon agent fonctionne toujours bien et je voudrait le lancer en direct sur le serveur avec les droits du serveur.
J'ai donc dans ma vue un bouton d'action qui devrait me permettre de faire cela.
J'ai un code qui marche (celui ne s'effectue pas sur le serveur mais c'était pour le test):
@Command([ToolsRunMacro];"AgentRecalculVueECHReunionPH")
Par contre il y a une fonction qui est @Command([AgentSetServerName] et qui je pense devrait faire ce que je souhaite.
Par contre il me mets le message d'erreur que vous pourrez voir en pièce jointe.
Je ne comprend pas ou je peut lui faire comprendre qu'il execute l'agent en arrière plan.
Pourriez vous m'aider s'il vous plait.
Merci

Publié:
09 Mars 2010 à 11:55
par Michael DELIQUE
salut,
ben oui, ton agent ne doit pas etr schédulé.
par contre pour ne pas faire tout simplement en runonserver en ls ?

Publié:
09 Mars 2010 à 12:04
par clementbp
Ben si ca marche en lotus script je le fait mais j'ai aucune idée de la syntaxe a utiliser.
Si tu as une idée !

Publié:
09 Mars 2010 à 12:18
par Michael DELIQUE
re,
regarde à notesAgent.RunOnServer sur l'aide en ligne tu aurra toute ce qu'il faut