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 :

Convertir nombre en date [CR 2016]


Sujet :

SAP Crystal Reports

  1. #1
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut Convertir nombre en date
    Bonjour,

    Je débute sur CR.
    Je me suis connecté à une base Oracle et j'ai des champs numériques de 10 c. Le nom du champ dans la table indique que ce sont des dates et sûrement avec l'heure.
    Voici un exemple de valeur : 1482274800
    Comment dans CR peut-on reformater ce nombre en date heure ?
    Ce que je trouve sur internet me parle de champ date ou timestamp.
    Merci pour votre retour d'expérience.
    Cordialement.

  2. #2
    Modérateur
    Avatar de luc_chivas
    Profil pro
    Consultant BO/Crystal Reports
    Inscrit en
    Avril 2004
    Messages
    1 945
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant BO/Crystal Reports

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 945
    Points : 2 723
    Points
    2 723
    Par défaut
    Bonjour

    tu peux expliquer à quelle date et heure cela devrait correspondre ?

  3. #3
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Après quelques réflexions supplémentaires, j'arrive à quelque chose comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Local NumberVar DateAConvertir := {TRANSMETTEURS.TRAN_DATE_INSTALLATION};
    Local DateTimeVar DateConvertie;
    DateConvertie := DateTime(1970,01,01,0,0,0) + (DateAConvertir);
    ShiftDateTime(DateConvertie, "GMT,0,GMT", "GMT,0,GMT");
    Mais le résultat n'est pas tout à fait bon sur 1 enregistrement :
    Nom : date.png
Affichages : 65
Taille : 1,7 Ko
    Et si je lance sur 100 enregistrements j'ai :
    Nom : date2.png
Affichages : 62
Taille : 3,4 Ko

    Merci pour votre regard sur mes erreurs.
    Cordialement.

  4. #4
    Modérateur
    Avatar de luc_chivas
    Profil pro
    Consultant BO/Crystal Reports
    Inscrit en
    Avril 2004
    Messages
    1 945
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant BO/Crystal Reports

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 945
    Points : 2 723
    Points
    2 723
    Par défaut
    As tu accès au logiciel pour avoir confirmation des dates à obtenir ? pourquoi un gap par rapport à 1970 ?. il te faut une exemple concret pour savoir comme ce champs a été construit....

  5. #5
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Je n'ai pas la date à obtenir, je sais seulement que la date de référence est 01.01.1970

    Et la solution est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Local NumberVar UnixTimeStamp := {TRANSMETTEURS.TRAN_DATE_INSTALLATION};
    Local DateTimeVar maDate;
    maDate := DateTime(1970,01,01,0,0,0) + (UnixTimeStamp/86400);
    ShiftDateTime(maDate, "GMT,0,GMT", "GMT,-60,GMT");
    Voilà comme la date était exprimé en seconde, il fallait la diviser par 86400.

    Merci.
    Très belle continuation.

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

Discussions similaires

  1. Convertir nombre en date heure minute seconde
    Par Totorote dans le forum SQL
    Réponses: 5
    Dernier message: 05/07/2017, 18h05
  2. [AC-2013] Convertir nombre en date
    Par kabamel dans le forum VBA Access
    Réponses: 2
    Dernier message: 21/12/2016, 20h58
  3. convertir texte en nombre ou date
    Par 20100. dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/04/2008, 09h12
  4. Convertir un nombre en date
    Par Skalp dans le forum Framework .NET
    Réponses: 2
    Dernier message: 27/08/2007, 14h23
  5. Pb convertir nombre en date
    Par aurelie83 dans le forum SQL
    Réponses: 11
    Dernier message: 02/08/2007, 18h56

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