Aide - Recherche - Membres - Calendrier
Version complète : [thinkdb 2.5] pb pour crée une adv expression
Les Forums de PalmAttitude.org > LOGICIEL PalmOS > Questions Logiciels
Bouh
je voudrais crée une adv expression qui d'apres une date de naissance, retourne :
ageans (date de naissance)
exemple :
20ans (03/07/1982)

simplement, comme le calcul pour l'age, et du type date, et le résultat total du type text, ca mélange de partout, j'ai essayé plein de trucs, et je ne suis pas arrivé a avoir ce que je voulais

Quelqu'un sait comment on peut faire ?
Bouh
bon j'ai finis par m'en sortir, vous voulez voir ma solution ?
Si la réponse est non stopper votre lecture ici ;)

field : type
naissance : date
age : adv expr
age1 : adv expr
age2 : adv expr
age3 : adv expr
age4 : adv expr
age5 : adv expr
age6 : adv expr
age/10 : adv expr
age-u : adv expr

- conf de "age" :
year(today)-year(naissance)-if(month(today)<month(naissance)|month(today)=month(naissance)&day(today<day(naissance)),1,0)

- conf de "age1" :
age2+age3+age4+age5+age6+'ans ('+naissance+')'

- conf de "age2" :
if(age/10=1,'1','')+if(age/10=2,'2','')+if(age/10=3,'3','')+if(age/10=4,'4','')

- conf de "age3" :
if(age/10=5,'5','')+if(age/10=6,'6','')+if(age/10=7,'7','')+if(age/10=8,'8','')

- conf de "age4" :
if(age/10=9,'9','')+if(age-u=0,'0','')+if(age-u=1,'1','')+if(age-u=2,'2','')

- conf de "age5" :
if(age-u=3,'3','')+if(age-u=4,'4','')+if(age-u=5,'5','')+if(age-u=6,'6','')

- conf de "age6" :
if(age-u=7,'7','')+if(age-u=8,'8','')+if(age-u=9,'9','')

- conf de "age/10" :
floor(age/10)

- conf de "age-u" :
age-age/10*10



et tout ca donne le résultat que je voulais (résultat cité dans le post précédént), ce que je fais en fait, je convertis l'age en chaine constante ce qui fait que ca ne se mélange pas au reste, je suis obligé de découper la conversion dans plusieurs field, parce que j'atteins vite la limite d'une adv expr

cette méthode et lourde a mettre en place, pas flexible etc etc, donc si quelqu'un a mieux a proposer je suis prenneur

ou bien si quelqu'un pense que mon probleme est du a un bug du programme, qu'il me le fasse savoir, pour que l'on puisse prévenir les créateurs
Bouh
ouééééééééééééééééééééééééééééé

J'AI TROUVÉ MIEUX !

je m'explique.......
dans l'adv expression au lieu de mettre : age+' ('+naissance+')'
il suffit tout simplement de mettre : ''+age+' ('+naissance+')'

simple, mais il fallait savoir/trouver :)
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2008 Invision Power Services, Inc.