Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Crystal Reports > Formules
Formules Forum sur l'utilisation des formules sous Crystal reports
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/01/2007, 23h47   #1
Invité régulier
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 7
Points : 7
Par défaut Encore un noob qui a besoin d'aide pour les formules

ouai je me presente : un noob en stage qui connais pas grand chose en programmation mais qui doit malgre tout présenter un rapport ^^

voici ce que je voudrai faire :
une formule qui analyse un champ; s'il contient une partie de text comprenant "convention" il ecrit : "convention n° (la valeur d'au autre champ) daté du (encore une autre valeur)"
s'il contient une partie de texte comprenant "description" il ecrit "description N° (valeur) daté du (valeur)"
si c'est ni l'un ni l'autre il ecrit "non renseigné"

voilà ce que j'ai tenté d'écrire...
donc je suis dans Insert/field object/formula fields...
if {PARC_SERVITUDES.LIEN_CONVE} = "*CONVENTIONS*"
then "convention n°{PARC_SERVITUDES.NUMERO_CON} du {PARC_SERVITUDES.DATE_CONVE}"
else "non renseigné"
and if {PARC_SERVITUDES.LIEN_CONVE} = "*DESCRIPTION*"
then "description n°{PARC_SERVITUDES.NUMERO_CON} du {PARC_SERVITUDES.DATE_CONVE}"
else "non renseigné"

bien sur c'est plein d'erreurs...mais c'est pour donnée une idée de ce que je veux... ( il ne comprend pas le "*", et le "non renseigné" n'est pas un boolean )
merci d'avance à tout ceux qui prendrons le temps de me repondre ^^
efk pharos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2007, 04h32   #2
Invité régulier
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 7
Points : 7
Par défaut evolution... mais toujours avec bug...

ma formule est devenue :
Code :
1
2
3
4
5
if ( "CONVENTIONS" in {PARC_SERVITUDES.LIEN_CONVE} )= TRUE
then "convention n°" + ({PARC_SERVITUDES.NUMERO_CON}) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
and if ( "DESCRIPTION" in {PARC_SERVITUDES.LIEN_CONVE} )= TRUE
then "description n°" + ({PARC_SERVITUDES.NUMERO_CON}) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
else "non renseigné"
mais il me demande maintenant un boolean apres mon premier "then"
efk pharos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2007, 19h23   #3
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
essaies plutot ça :
Code :
1
2
3
4
5
6
7
8
 
IF ( InStr ({PARC_SERVITUDES.LIEN_CONVE}, "CONVENTIONS") )= TRUE THEN
"convention n°" + ({PARC_SERVITUDES.NUMERO_CON}) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
else 
IF ( InStr ({PARC_SERVITUDES.LIEN_CONVE}, "DESCRIPTION")  )= TRUE THEN 
"description n°" + ({PARC_SERVITUDES.NUMERO_CON}) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
else 
"non renseigné"
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2007, 22h39   #4
Invité régulier
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 7
Points : 7
Par défaut merci ca marche mieux

donc voici à quoi ca ressemble maintenant:

Code :
1
2
3
4
5
6
7
8
9
if ( InStr ({PARC_SERVITUDES.LIEN_CONVE}, "CONVENTIONS") )=0 THEN
"convention n°" + ({PARC_SERVITUDES.NUMERO_CON}) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
else 
if ( InStr ({PARC_SERVITUDES.LIEN_CONVE}, "DESCRIPTION")  )=0 THEN 
"description n°" + (if ( isNull({PARC_SERVITUDES.NUMERO_CON}) )
then " inconu" 
else ToText({PARC_SERVITUDES.NUMERO_CON})) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
else 
"non renseigné"
j'y est rajouté une ligne car le champ parc_servitudes.numero_con peut etre null, ce qui fesais plenter la fomule et la commende instr implique 0 ou 1 comme reponce et non pas "true" ou "false"

j'ai encore un bug pour un champ mais je trouverais bien le pb tout seul... merci encore
efk pharos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2007, 23h01   #5
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
oups, une bévue de ma part....la précipitation tout ça..
Ceci dit, InStr renvoit >0 si la chaine est présente...

donc :

Code :
1
2
3
4
5
6
7
8
9
10
if ( InStr ({PARC_SERVITUDES.LIEN_CONVE}, "CONVENTIONS") )>0 THEN
"convention n°" + ({PARC_SERVITUDES.NUMERO_CON}) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
else
if ( InStr ({PARC_SERVITUDES.LIEN_CONVE}, "DESCRIPTION") )>0 THEN
"description n°" + (if ( isNull({PARC_SERVITUDES.NUMERO_CON}) )
then " inconu"
else ToText({PARC_SERVITUDES.NUMERO_CON})) + " du " + ToText({PARC_SERVITUDES.DATE_CONVE})
else
"non renseigné"
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2007, 01h46   #6
Invité régulier
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 7
Points : 7
Par défaut j'te pardonne... ^^

merci pour ton aide, comme ça j'ai l'ai moins noob maintenant : )
efk pharos est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h42.


 
 
 
 
Partenaires

Hébergement Web