Page 1 sur 1

Actualiser les champs calculés via un agent

MessagePublié: 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

MessagePublié: 20 Avr 2011 à 08:12
par Michael DELIQUE
salut

tu as essayé avec un

sucess = doc2.ComputeWithForm(true,False)

MessagePublié: 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

MessagePublié: 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

MessagePublié: 20 Avr 2011 à 08:21
par Michael DELIQUE
re,

ton agent à les accès en écriture en prod ?

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

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

MessagePublié: 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

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

MessagePublié: 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

MessagePublié: 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 ?

MessagePublié: 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

MessagePublié: 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

MessagePublié: 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

MessagePublié: 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