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

AS/400 Discussion :

AS400 combiner AA MM JJ en une date


Sujet :

AS/400

  1. #1
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 58
    Points : 47
    Points
    47
    Par défaut AS400 combiner AA MM JJ en une date
    Bonjour
    Dans une table de la BD AS400, il y a 3 paramètres qui présentent le jour, mois, Année, je voudrais créer une vue que combine ces 3 élements en une date ou un nombre de format AAAAMMJJ,
    Avec formule DateSerial() ne marche pas,
    vous avez des idées?Merci d'avance
    ex:
    FCJJ FCMM FCAA
    26 04 2012 26/04/2012 ou 20120426

  2. #2
    Membre averti
    Homme Profil pro
    Analyste-Programmeur IBM i, IBM Cognos TM1
    Inscrit en
    Août 2002
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-Programmeur IBM i, IBM Cognos TM1
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2002
    Messages : 234
    Points : 355
    Points
    355
    Par défaut
    Bonjour,

    Je te propose de regarder ceci :
    http://www.developpez.net/forums/d12...tion-2-champs/

    Tu fait un concat dans ton sql.

    Larry57

  3. #3
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 58
    Points : 47
    Points
    47
    Par défaut
    larry57,
    les fonctions concat et DIGITS ne marchent pas dans AS400
    merci tes conseils

  4. #4
    Membre averti
    Homme Profil pro
    Analyste-Programmeur IBM i, IBM Cognos TM1
    Inscrit en
    Août 2002
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-Programmeur IBM i, IBM Cognos TM1
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2002
    Messages : 234
    Points : 355
    Points
    355
    Par défaut
    Je viens de faire un test,DIGITS et le concat fonctionne bien.

    La commande que j'utilise : STRSQL

    Larry57

  5. #5
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 58
    Points : 47
    Points
    47
    Par défaut
    Citation Envoyé par larry57 Voir le message
    Je viens de faire un test,DIGITS et le concat fonctionne bien.

    La commande que j'utilise : STRSQL

    Larry57
    Peut être que je me suis trompé qlq part dans SQL, mais je ne vois pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT F.FCJJ , F.FCMM, F.FCA4, concat(F.FCA4,F.FCMM,F.FCJJ)
    
    FROM AMSF.FRFC F
    avec caractère:
    FCJJ Char(2)
    F.FCMM Char(2)
    F.FCA4 Char(4)

  6. #6
    Membre averti
    Homme Profil pro
    Analyste-Programmeur IBM i, IBM Cognos TM1
    Inscrit en
    Août 2002
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-Programmeur IBM i, IBM Cognos TM1
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2002
    Messages : 234
    Points : 355
    Points
    355
    Par défaut
    En fait, c'est concat(F.FCA4, Concat(F.FCMM,F.FCJJ))

    larry57

  7. #7
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Bonjour.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT concat(concat(AACOMP, MMCOMP), JJCOMP)
           FROM JAIDANE2/"K03.ECRT"
    
    CONCAT ( expression , expression ) 
    The CONCAT function combines two arguments.
    larry57 a déjà répondu.

  8. #8
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 58
    Points : 47
    Points
    47
    Par défaut
    larry57, Jaïdane
    je suis vraiment désolée, concat() ne marche pas chez moi,
    vous avez des autres solutions svp

  9. #9
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Montre un peu ton SELECT

  10. #10
    Membre averti
    Homme Profil pro
    Analyste-Programmeur IBM i, IBM Cognos TM1
    Inscrit en
    Août 2002
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-Programmeur IBM i, IBM Cognos TM1
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2002
    Messages : 234
    Points : 355
    Points
    355
    Par défaut
    Je peux te proposer ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT F.FCJJ , F.FCMM, F.FCA4, F.FCA4!!F.FCMM!!F.FCJJ
    
    FROM AMSF.FRFC F
    larry57

  11. #11
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 58
    Points : 47
    Points
    47
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT F.FCJJ, F.FCMM, F.FCA4, concat(F.FCA4,F.FCMM)
    
     FROM AMSF.FRFC F
    Je teste tout d'abord q'avec Année et mois, mais dsl, ça marche pas dans AS400, j'ai fait les tests avec les paramètres de l'autre table avec caractère CHAR; pareil, marche pas, je sais pas pourquoi!

  12. #12
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 58
    Points : 47
    Points
    47
    Par défaut
    Citation Envoyé par larry57 Voir le message
    Je peux te proposer ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT F.FCJJ , F.FCMM, F.FCA4, F.FCA4!!F.FCMM!!F.FCJJ
    
    FROM AMSF.FRFC F
    larry57
    MARCHE PAS, désolée

    Peut-être qu'on essayer de le convertir en date!

  13. #13
    Membre averti
    Homme Profil pro
    Analyste-Programmeur IBM i, IBM Cognos TM1
    Inscrit en
    Août 2002
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-Programmeur IBM i, IBM Cognos TM1
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2002
    Messages : 234
    Points : 355
    Points
    355
    Par défaut
    Et pour mon query avec les !! ?

    Larry57

  14. #14
    Membre averti
    Homme Profil pro
    Analyste-Programmeur IBM i, IBM Cognos TM1
    Inscrit en
    Août 2002
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-Programmeur IBM i, IBM Cognos TM1
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2002
    Messages : 234
    Points : 355
    Points
    355
    Par défaut
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT F.FCJJ , F.FCMM, F.FCA4
    FROM AMSF.FRFC F
    te donne bien un résultat ?

    larry57

  15. #15
    Membre averti
    Homme Profil pro
    Analyste-Programmeur IBM i, IBM Cognos TM1
    Inscrit en
    Août 2002
    Messages
    234
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-Programmeur IBM i, IBM Cognos TM1
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2002
    Messages : 234
    Points : 355
    Points
    355
    Par défaut
    tu peux aussi essayer la commande wrkqry si tu connais.

    Larry57

  16. #16
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    - Quel message d'erreur il te sort ?
    - quelle version
    - as tu essayé avec STRQRY ou STRQM ?
    - à la limite tu peux essayer avec les DDS pour créer ton index

    Essaie ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT substr(digits(dec(AACOMP)*10000+dec(MMCOMP)*100+dec(JJCOMP)) 
           , 15, 8) as wdate                                            
           FROM JAIDANE2/"K03.ECRT"

  17. #17
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 58
    Points : 47
    Points
    47
    Par défaut
    Citation Envoyé par Hédhili Jaïdane Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT substr(digits(dec(AACOMP)*10000+dec(MMCOMP)*100+dec(JJCOMP)) 
           , 15, 8) as wdate                                            
           FROM JAIDANE2/"K03.ECRT"
    Ca marche avec ce code, merci énormément, Jaïdane et larry57
    vous êtes superbes

  18. #18
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Mais rassure toi, le CONCAT il marche lui aussi. Tout ce que je t'ai donné, et larry57 je suppose, sont des exemples testés sur une V5R3

  19. #19
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Tu peux aussi utiliser cette forme du CONCAT :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     SELECT AACOMP concat MMCOMP concat JJCOMP 
                     as wdate                  
            FROM JAIDANE2/"K03.ECRT"

  20. #20
    Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2012
    Messages : 2
    Points : 3
    Points
    3
    Par défaut réponse
    rassures toi !

    on a eu la même problématique

    vas voir le lien



    http://orion.wirtanen.net/manipdate_.../manipdate.htm

    on a fait un didacticiel avec une fonction SQL

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

Discussions similaires

  1. Ajouter une durée à une date (sql sur as400)
    Par olympio dans le forum Langage SQL
    Réponses: 3
    Dernier message: 02/02/2012, 18h12
  2. Récupérer l'année d'une date
    Par delphim dans le forum Langage SQL
    Réponses: 3
    Dernier message: 15/01/2003, 16h33
  3. tester si une date est valide
    Par Andry dans le forum Langage
    Réponses: 5
    Dernier message: 17/09/2002, 11h54
  4. Generation d'evenements a une date precise
    Par pascalzzz dans le forum MFC
    Réponses: 2
    Dernier message: 04/06/2002, 15h21
  5. Réponses: 3
    Dernier message: 19/04/2002, 00h11

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