Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Autres
Autres Autres logiciels d'informatique décisionnelle, de statistiques, générateurs d’états ou outils infocentre : EpiInfo, FreeReport, FastReport, Hyperion, JPivot, QuickReport, Mondrian, ReportBuilder, Stata, Spad, Spss, etc.
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 26/12/2011, 10h54   #1
Membre du Club
 
Inscription : juillet 2006
Messages : 308
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 308
Points : 58
Points : 58
Par défaut champ calcule sur un etat de sortie

delphi7,interbase
jais une table agent(num_agent,date_entrer,nb_jour)
sur un etat de sortie jais volu calculer la date de sortie de chaque agent
sachant que la date de sortie egale a date_entrer + le nb_jour
dans l'evenement beforeprint du detailband
jais mit
Code :
1
2
3
4
5
 
mydate:=qrdbtext2.caption;
nb_jour:=strtoint(qrdbtext3.Caption);
x:=incday(mydate,nb_jour);
qrlabel10.Caption:=datetostr(x);
erreur me dite date_entrer né pas une date correcte portant elle est une date correcte
je ne ces pas ou ce pose le probleme
merci d'avance
kroma23 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2011, 09h07   #2
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 624
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 624
Points : 4 529
Points : 4 529
Ce morceau de code n'a rien à voir avec Quickreport et l'erreur encore moins .
Il y a de forte chance qu'un enregistrement ai une date=null
Pas besoin de passer par delphi pour faire le calcul de date sortie , je suis presque sur qu'interbase a une fonction interne (c'est le cas pour firebird )
qui doit pouvoir faire le calcul sinon il y a toujours les UDF

Code SQL firebird 2.1 dialect 3 :
1
2
3
4
5
6
 
// pour directement ajouter dans la TABLE 
ALTER TABLE AGENT ADD DATE_SORTIE  COMPUTED BY (DATEADD(DAY,NB_JOUR,DATE_ENTREE))
 
// pour un SQL 
SELECT NUM_AGENT,DATE_ENTREE,NB_JOUR,DATEADD(DAY,NB_JOUR,DATE_ENTREE) AS DATE_SORTIE FROM AGENT

ces deux propositions éviterais un BeforePrint inutile , a noter que l'ajout a une date entrée nulle donne une date sortie nulle

Citation:
erreur : date_entrer n'est pas une date correcte , pourtant c'est une date correcte
Avant de confirmer ceci il faudrait vérifier les données

Code :
1
2
3
4
5
 
mydate:=qrdbtext2.caption;                   // ==> mydate est un string
nb_jour:=strtoint(qrdbtext3.Caption);
x:=incday(mydate,nb_jour);                    // ceci est incorrect sans la transformation de Mydate string en Date :vomi:
qrlabel10.Caption:=datetostr(x);
Code ceci aurait été préférable :
1
2
3
4
WITH QuickRep1.DataSource do
IF FieldByname('date_entrer').isnull 
then qrlabel10.caption:='********'
else qrLabel10.caption:=FormatDateTime('dd/mm/yyyy',incday(FieldByName('date_entrer').asDate,FieldByname('nb_jour').asInteger));
Ce dernier code est bien sur a transformer en fonction du programme


P.S. Merci d'utiliser un correcteur orthographique
__________________
La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2011, 11h00   #3
Membre du Club
 
Inscription : juillet 2006
Messages : 308
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 308
Points : 58
Points : 58
Re
Code :
1
2
3
4
5
 
WITH QuickRep1.DataSource do
IF FieldByname('date_entrer').isnull 
then qrlabel10.caption:='********'
else qrLabel10.caption:=FormatDateTime('dd/mm/yyyy',incday(FieldByName('date_entrer').asDate,FieldByname('nb_jour').asInteger));
oui normalement ces ca.
merci bien mon amis Sergio et je dit résolut
kroma23 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 06h07.


 
 
 
 
Partenaires

Hébergement Web