IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAP Crystal Reports Discussion :

[8.5] Transformer un nombre en HEURE:MIN:SEC


Sujet :

SAP Crystal Reports

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 36
    Points : 31
    Points
    31
    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

  2. #2
    Membre éprouvé
    Avatar de lazarel
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2007
    Messages
    893
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    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 164
    Points
    1 164
    Par défaut
    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

  3. #3
    Membre éclairé
    Avatar de kikidrome
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 861
    Points : 685
    Points
    685
    Par défaut
    bonjour
    Tu peux essayer avec la fonction TimeValue :
    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

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mai 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 36
    Points : 31
    Points
    31
    Par défaut
    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.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    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.

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 24
    Points : 16
    Points
    16
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Transformer des secondes en format min:sec
    Par rafafa87 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 22/11/2013, 20h27
  2. Convertir des secondes en heure/min/sec
    Par DelphLaga dans le forum Langage
    Réponses: 8
    Dernier message: 26/02/2009, 19h29
  3. Calculer le nombre de jours/heures/min/sec restant
    Par skaty dans le forum Requêtes
    Réponses: 5
    Dernier message: 20/11/2006, 17h47
  4. Réponses: 2
    Dernier message: 21/09/2006, 11h28
  5. Convertir un nombre d'heure format HH:MM
    Par jerome_sinclair dans le forum Langage SQL
    Réponses: 4
    Dernier message: 12/11/2005, 21h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo