Page 1 sur 1
Actualiser les champs calculés via un agent

Publié:
20 Avr 2011 à 08:09
par lebanner
Bonjour a tous,
J'ai créé un agent en Ls qui me permet d'actualiser tous les documents u masqueA dans la base. Le seul problème c'est qu'il n'actualise pas.
Voici le code de l'agent :
- Code : Tout sélectionner
'...............déclaration des variables nécessaires au dessus..........
searchFormula2$ = "Form = ""MasqueA"" & MonChamp = """ & periodeencours & """ "
Set collection2=db.Search(searchFormula2$, Nothing, 0)
compteur2 = collection2.Count
If compteur2 <> 0 Then
Set doc2 = collection2.GetFirstDocument
For compteur2 = 1 To compteur2
recupval1 = doc2.Npplus01(0)
doc2.Npplus01 = recupval1
Dim sucess As Variant
sucess = doc2.ComputeWithForm(False,False)
If sucess Then
Call doc2.Save(True,True)
End If
Set doc2 = collection2.GetNextDocument(doc2)
Next
End If
Le code passe en revue tous les documents mais il n'actualise pas, la variable sucess est toujours à False.
Merci de votre aide
Cordialement

Publié:
20 Avr 2011 à 08:12
par Michael DELIQUE
salut
tu as essayé avec un
sucess = doc2.ComputeWithForm(true,False)

Publié:
20 Avr 2011 à 08:13
par lebanner
Michael DELIQUE a écrit:salut
tu as essayé avec un
sucess = doc2.ComputeWithForm(true,False)
Je vais le tester !!!
merci pour la réponse rapide
Cordialement

Publié:
20 Avr 2011 à 08:16
par lebanner
Meme avec :
sucess = doc2.ComputeWithForm(true,False)
la variable reste à False
C'est bizarre car quand je lance la manip en DEV, le sucess est toujours à True (donc il m'actualise bien les docs) alors qu'en PROD, il ne fait rien
Merci d'avance
Cordialement

Publié:
20 Avr 2011 à 08:21
par Michael DELIQUE
re,
ton agent à les accès en écriture en prod ?

Publié:
20 Avr 2011 à 08:36
par lebanner
Oui tout à fait.

Publié:
20 Avr 2011 à 08:40
par Michael DELIQUE
est si tu ouvre le doc que tu fait le refresh il se passe quoi ?

Publié:
20 Avr 2011 à 08:42
par lebanner
Si j'ouvre le doc et je que fais un F9, il ne m'actualise pas le doc. Il faut que je modifie le doc pour qu'il s'actualise

Publié:
20 Avr 2011 à 09:02
par Michael DELIQUE
hummm ce sont otus les champs ou ou uniquement certain qui pose problème

Publié:
20 Avr 2011 à 09:04
par lebanner
C'est uniquement un seul champ que j'ai ajouté entre temps et je souhaite qu'il soit dispo pour tous les docs déjà enregistrés dans la base
tu vois que quoi il peut s'agir ?
Merci d'avance
Cordialement

Publié:
20 Avr 2011 à 09:06
par Michael DELIQUE
ton champ est dans le masque ?
une formule qui demande un acces que tu n'as pas ?

Publié:
20 Avr 2011 à 09:09
par lebanner
Oui le champ est dans le masque.
Non, il n'y a pas de formule qui demande des accès. Le champ en question fait une soustraction et une division, il utilise des champs déjà dispo dans le masque.
J'ai un peu de mal à comprendre pourquoi en DEV ça marche et pas en PROD.
Merci
Cordialement

Publié:
20 Avr 2011 à 09:12
par Michael DELIQUE
les champs qui servent a ta formules sont correctement renseigné ?
sinon si c'est juste un champ qui fout la grouille tu refait la formule en ls et tu colle le resultat dans le champ et hop

Publié:
20 Avr 2011 à 09:24
par lebanner
Oui effectivement, je vais refaire le calcul en LS et je collerai le résultat dans le champ directement.
Merci Michael
Bonne journée
Cordialement

Publié:
20 Avr 2011 à 16:10
par lebanner
Michael DELIQUE a écrit:les champs qui servent a ta formules sont correctement renseigné ?
sinon si c'est juste un champ qui fout la grouille tu refait la formule en ls et tu colle le resultat dans le champ et hop
Comme tu l'a dis, j'ai ajouté dans l'agent les différents calculs et j'ai mis les résultats dans les champs correspondants.
L'agent fonctionne sans problème
Merci Michael
Cordialement