Page 1 sur 2

CORRECTION GLOBALE

MessagePublié: 11 Août 2010 à 09:28
par patrick.herault
Bonjour,
J'ai un masque qui permet de choisir deux valeurs : cor_de et cor_a et sur ce masque, il y a un bouton "LANCER LA CORRECTION".
Ces deux valeurs permettent d'affecter une liste de documents de cor_de à cor_a.
J'aimerais savoir en langage formule, s'il est possible de faire cette correction du champs "prisencharge" de cor_de vers cor_a via une vue qui s'appelle "gestionnaire".
Vous remerciant par avance,
Cordialement,

MessagePublié: 11 Août 2010 à 09:31
par Bidouille
bonjour,

C'est une correction ponctuelle ou pour une utilisation permanente ?

MessagePublié: 11 Août 2010 à 09:33
par patrick.herault
Ce sera une "utilisation régulière"

MessagePublié: 11 Août 2010 à 11:12
par Aquanotes
Si j'ai bien compris tu veux changer la valeur du champ prisencharge pour les documents contenus dans la vue gestionnaire de cor_de en cor_a ?

tu changeras tjs le même champ ? tu dois aussi pouvoir remplacer toto par tata ? toujours les mêmes docs ?

ta question et ton besoin n'est pas très clair ;-)

MessagePublié: 11 Août 2010 à 11:55
par patrick.herault
Tu as tout compris... Ou presque.
La vue qui servira à la correction : Operation
Le masque de sélection de Cor_de et Cor_a : correctiongestionnaire
Le champs à modifier (dans opération) : prisencharge
Et c'est toujours les mêmes docs.
Merci par avance

MessagePublié: 11 Août 2010 à 12:46
par patrick.herault
Voici une ébauche de mon code :
listeValeurs := @DbColumn("NOTES":"NoCache";""; "intervenant";1);
cor_de:=@Prompt([OkCancelList];"Choix du gestionnaire à corriger";"Gestionnaire";listevaleurs;listevaleurs);
cor_a:=@Prompt([OkCancelList];"Choix du nouveau gestionnaire";"Saisir le nouveau gestionnaire";listevaleurs;listevaleurs);
@Prompt([Ok];"Correction";"Vous souhaitez modifier : " + @Char(13) + @Char(13) + cor_de + @Char(13) + @Char(13) + "par : " +@Char(13) + @Char(13) + cor_a);
FIELD prisencharge:=@If(prisencharge = cor_de;cor_a;prisencharge);
SELECT @All

Le problème, c'est qu'il me pose la question à chaque fois.
Suis-je sur la bonne voie ou pas du tout ?
Par avance, un grand merci
(Je n'ai plus que ce petit problème à régler pour terminer ce projet).

MessagePublié: 11 Août 2010 à 13:04
par Bidouille
re,

A priori il doit te poser 3 questions sur les prompts

cor_de:=@Prompt([OkCancelList];".....
cor_a:=@Prompt([OkCancelList];"....
@Prompt([Ok];"Correction";"...


Le reponse est dans tes formula.... c'est toi qui demande les validations !

Tu te fais du mal tout seul ;-)

MessagePublié: 11 Août 2010 à 13:11
par patrick.herault
Alors, est-ce que je peux rédiger un bout de code (les 4 premières lignes) et ensuite, via une formule toujours, exécuter les corrections sur tous les documents ?
J'avoue que là, je patauge grave :?

MessagePublié: 11 Août 2010 à 13:15
par Bidouille
Ok

Là j'ai du Taf (malgrés les wacances des autres :evil: )

Je te répond d'ici ce soir si cela peut a attendre un peu

MessagePublié: 11 Août 2010 à 13:19
par patrick.herault
Top. Merci beaucoup...

Travail pendant les vacances ??? Quelle drôle d'idée... Bon courage

MessagePublié: 11 Août 2010 à 16:15
par Aquanotes
En fait il te pose la question pour chaque document à traiter. Je crois que si tu veux le faire en formule, il te faut 2 agents:

1 agent : pour tes @prompt + Stockage de tes choix dans le notes.ini par ex. + lancement du 2eme agent
un 2eme agent : récupération des valeurs stockées dans le notes.ini + changement des valeurs.

MessagePublié: 11 Août 2010 à 20:22
par roubech
si tu ne veut pas t'embetter avec 2 agent, tu peux n'en faire qu'une seul en LotusScript
ws.PickListView pour afficher la vue intervenant pour selectionner la valeur à remplacer et la nouvelle valeur
db.UnprocessedDocuments pour récupérer la liste des docs sélectionnés à moins que tu parcourstojous tous les docs de la vue operations
et ensuite, pour chaque doc tu fais le test pour remplacer la valeur

autre option, une vue triée sur le champ priseencharge pour faire un GetAllDocumentsByKey et récupéer uniquement la liste des docs à modifier et après un dc.StampAll pour tout mettre à jour en masse

MessagePublié: 12 Août 2010 à 08:13
par patrick.herault
Merci beaucoup à tous les deux, je vais essayer et je te tiens au courant.

MessagePublié: 17 Août 2010 à 15:46
par Bidouille
Salut,

Désolé pour ma NON réponse ... mais j'étais souffrant.
Ou en es tu ?

MessagePublié: 18 Août 2010 à 15:38
par patrick.herault
En fait, j'ai terminé.
J'ai choisi l'option de créer 3 étapes qui permettront à l'utilisateur de choisir "plus librement" les corrections :
- 1 premier masque pour dire "Qui ?"
- 1 deuxième pour sélectionner les documents (ensemble immobilier), en clair "Quoi ?"
- 1 troisième qui traite le changement.
Ca marche très bien et le risque d'erreur pour l'utilisateur est quasi nul.
En tout cas un grand merci quand même.
Bonne journée.