Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Crystal Reports
Crystal Reports Forum d'entraide sur Crystal Reports. Avant de poster --> FAQ Crystal, Tutoriels Crystal
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/05/2007, 13h49   #1
Candidat au titre de Membre du Club
 
Inscription : mai 2007
Messages : 36
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 36
Points : 13
Points : 13
Par défaut [8.5] Transformer un nombre en HEURE:MIN:SEC

BONJOUR,

Je suis à la recherche d'une formule pour transformer un nombre correspondant à des secondes en HEURE:MINUTE:SECONDE.

En effet, j'obtiens un nombre de 4182,00 (secondes) en calculant la durée entre 2 heures données (formule Time) 13:45:48-12:36:06

Ce nombre de 4182,00, je veux l'obtenir en format d'heure soit 01:09:42

Dans l'attente de votre aide.
Salutations
ALINE85 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 09h28   #2
Membre Expert
 
Avatar de lazarel
 
Homme
Consultant informatique
Inscription : mai 2007
Messages : 893
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultant informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mai 2007
Messages : 893
Points : 1 360
Points : 1 360
Bonjour,


Bien écoute moi j'ai une solution pour la [XI], à toi de voir si les fonctions existe déjà sous la [8.5].

La fonction mod pour caluler le reste du modulo, et la fonction fix pour calculer le premier champ restant.

Exemple:
4/3=1+( 1 /3)
4 mod 3 = 1
fix(4/3) = 1

Avec ça tu peux ainsi avoir à partir d'un nombre en seconde le nombre de jours (86400) heures (3600), minutes (60), et secondes écoulées.

Pour le reste c'est à toi de jouer, j'espère avoir su répondre à ta question.

Cordialement Lazarel
lazarel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 09h50   #3
Membre expérimenté
 
Avatar de kikidrome
 
Inscription : décembre 2004
Messages : 841
Détails du profil
Informations personnelles :
Localisation : France, Drôme (Rhône Alpes)

Informations forums :
Inscription : décembre 2004
Messages : 841
Points : 563
Points : 563
bonjour
Tu peux essayer avec la fonction TimeValue :
Citation:
TimeValue (nombre)
Renvoie une valeur d'heure correspondant au nombre spécifié et exprimé en unités de 24 heures.
Ce nombre peut être négatif ou fractionnaire.
__________________
Les paysages sont plus beaux quand on transpire.
Olaf Candau
kikidrome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 11h00   #4
Candidat au titre de Membre du Club
 
Inscription : mai 2007
Messages : 36
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 36
Points : 13
Points : 13
Merci de vos réponses, lazarel et kikidrome, seulement,
lazarel, j'utilise déjà ta solution sur certains de mes états et je voulais justement éviter les formules du style (mod et truncate). Suis-je obligée de faire plusieurs formules pour obtenir mon résultat ?
kikidrome, la formule TimeValue ne fonctionne pas.

En tout cas, merci encore à vous.
ALINE85 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 11h26   #5
Invité régulier
 
Inscription : août 2005
Messages : 9
Détails du profil
Informations personnelles :
Âge : 41
Localisation : Belgique

Informations forums :
Inscription : août 2005
Messages : 9
Points : 9
Points : 9
Bonjour,

Pourrais-tu essayer la formule suivante :


Local numberVar lNum := {Champ numérique};
Local numberVar lNumHeures := 0;
Local numberVar lNumMinutes := 0;
Local numberVar lNumSecondes := 0;

lNumHeures := lNum \ 3600;
lNumMinutes := (lNum - (lNumHeures * 3600)) \ 60;
lNumSecondes := lNum - (lNumHeures * 3600) - (lNumMinutes * 60);

ToText (lNumHeures, "00", 0, "") + ':' + ToText (lNumMinutes, "00", 0, "") + ':' + ToText (lNumSecondes, "00", 0, "");



Dans la formule ci-dessus, {Champ numérique} doit être remplacé par ta formule "Nombre de secondes" ...

Bonne fin de journée ...

Thierry.
herensth est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/02/2008, 07h30   #6
Candidat au titre de Membre du Club
 
Inscription : juillet 2006
Messages : 24
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 24
Points : 12
Points : 12
Par défaut Merci super formule

Bonjours,

Surprenant pour moi non plus la formule Timevalue ne fonctionne pas,
même avec un nombre en dur, donc serai ce un autre de ces merveilleux bug
Crystal ?? De toute façon la formule de herensth, elle fonctionne à merveille,
merci pour ça, plusieurs heures de recherche économisées.
ça fait un peu maçon, mais faut s'y faire..... et puis ça devient habituel

Merci encore
arapahoo 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 06h42.


 
 
 
 
Partenaires

Hébergement Web