Page 1 sur 1
@Setfield

Publié:
26 Déc 2002 à 16:11
par Modest
Bonne Année 2003 à tous et particuliérement aux animatuers de ce forum , 3003 mercis pour leurs aides.J'ai deux champ : info (calculé) et jours(modifiable) , par un dblookup je récupére dans une vue une valeur placée dans info. J'aimerais qu'alors le champ jours prenne cette valeur .voila mon code "valeur par défaut de ce champ"FIELD jours:=jours;@If( info<>"0";"";@SetField("jours";info))il m'affiche 0 bien que j'ai une valeur dans le champ info.merci pour l'aide.modest
Re: @Setfield

Publié:
26 Déc 2002 à 17:10
par Stéphane
Tout d'abord en placant ton code dans l'évènement valeur par défaut ce code ne s'éffectue qu'une fois à la création du document (ou du champ si ajouté après coup).Quand, ou et comment effectus tu ton dblookup ?Ne se fait il qu'une fois, à la création du document ? (dans ce cas cela peut marcher si info est placé avant le champ jours).info et jours son des champs du meme document ?Note que cela semble le cas alors pourquoi ne pas affecter le champ info lorsque tu recuperes la valeur du dblookup et l'affecte au champ info ?...Bon mais sinon pour affecter à un champ une valeur (info) d'un autre champ (infos) à chaque modification du premier champ (info) il te faut soit utiliser un champ (jours) calculé soit affecter le champ (jours) en même temps que le champ initial (info).J'espère que tu me comprends...
Re: @Setfield

Publié:
26 Déc 2002 à 17:12
par Stéphane
Euhhh petite bourde avec les noms de champs, remplace :Note que cela semble le cas alors pourquoi ne pas affecter le champ info lorsque tu recuperes la valeur du dblookup et l'affecte au champ info ?...par :Note que cela semble le cas alors pourquoi ne pas affecter le champ JOURS lorsque tu recuperes la valeur du dblookup et l'affecte au champ info ?...sorry, résidus de lendemain de fêtes

Re: @Setfield

Publié:
27 Déc 2002 à 09:41
par Modest
merci pour la réponse , mais je vais simplement supprimer le champs "jours" et faire du champ "info" le champ référence pour les calculs suivants et lui affecter la valeur 0 si le dblookup= vide.sobre modest
Re: @Setfield

Publié:
27 Déc 2002 à 10:03
par Modest
Ma solution ne marche pas car info est un champ calculé donc non modifiable donc inutilisable pour un calcul. Je travail sur le WEBVoici le code "valeur" de mon champ "info"info:=@If(ANC="";"";@DbLookup("":"NoCache";"";"vuelk";ANC;2));@If(@IsError(info); "0" ;@Subset(info;-1));@setfield("jours";info)cette derniére ligne est pour attribuer la valeur du champ info au champ jours , mais cela me fait une erreur type "impossible d'afficher la page" si je la supprime la page s'affiche.Si le champ info est mis "modifiable " rien ne se passe par rapport au dblookup.Durs Durs les lendemains de fêtes. modest
Re: @Setfield

Publié:
27 Déc 2002 à 11:40
par Stéphane
Tout d'abord tu ne peuts utiliser @SetField qui si le champ est préalablement déclaré dans ta routine (FIELD ... := ...)Ton @Setfield génère donc une erreur et en plus risque de perturbé le contenu de ton champ info, ce dernier se remplissant avec la valeur retournée par ton code, qui risque bien ici d'être l'erreur retourné par le @Setfield.Ensuite voici plutôt le code que je te propose pour ton champ info :vRet:=@If(ANC="";"";@DbLookup("":"NoCache";"";"vuelk";ANC;2));vVal := @If(@IsError(vRet); "0" ;@Subset(vRet;-1));FIELD jours := vVal;vValEt dits moi si cela marche...