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 :

Conversion de caractères


Sujet :

AS/400

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 197
    Points : 121
    Points
    121
    Par défaut Conversion de caractères
    Bonjour,

    J'ai le soucis suivant :

    Je reçois des données d'un AS400 -> fichier texte tout simple encodé en UTF8 sur système Linux.
    Un des champs contient cette valeur : "0000000092R"
    Sur l'AS400 la bonne valeur est "-9.29" mais celui-ci la convertie pour donner "0000000092R"
    Je souhaite intégrer ces données dans une base sur un système Linux
    Y a t-il un moyen de convertir cette valeur pour retrouver "-9.29" ?
    Ou est-il possible d'empêcher cette conversion côté AS400 ?

    Merci

  2. #2
    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.

    Je ne sais pas quels outils ont été utilisés pour faire la conversion et le transfert.
    Le nombre -9.29 est représenté en interne sur l'AS/400 sous la forme x"F9F2D9" en EBCDIC, le D représente le signe négatif et le point décimal n'est pas représenté. Au moment de la conversion en ASCII, le D9 étant un "R" va être converti en "R" mais représenté par x"52" si la zone qu'il termine n'est pas déclarée en tant que nombre décimal signé, or le signe négatif en ASCII est représenté par un 7 dans le demi octet de gauche du dernier octet de droite. Donc on aurait du avoir x"79" au lieu du x"52" pour que ça soit pris en charge par les différents langages.

    - Faire le transfert et la conversion directement à partir du fichier BD par Client Access (iSeries Access) ou par CPYTOIMPF dans l'IFS puis son son transfert.

    -Ne pas utiliser CPYF avec *CVTSRC puis transfert du fichier source, le signe négatif ne sera pas interprété. A moins de faire un prétraitement pour faire figurer le signe négatif en SEPARATE LEADING ou TRAILING.

    J'espère avoir apporté des éléments de réponses.

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 197
    Points : 121
    Points
    121
    Par défaut
    Merci à toi,
    Je vois avec la personne en charge de l'AS400

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

Discussions similaires

  1. conversion de caractéres
    Par longjohn dans le forum Général Python
    Réponses: 3
    Dernier message: 27/08/2005, 16h03
  2. [VB.NET] Conversion de caractères
    Par WriteLN dans le forum Windows Forms
    Réponses: 8
    Dernier message: 17/03/2005, 08h45
  3. [DOS] batch et conversion de caractères
    Par lujayne dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 14/12/2004, 16h05
  4. [DB2][Access]Conversion de caractères
    Par BAYRAL dans le forum DB2
    Réponses: 2
    Dernier message: 12/10/2004, 10h00
  5. Conversion et re-conversion des caractères reservé à MySQL
    Par Didier100 dans le forum Bases de données
    Réponses: 4
    Dernier message: 30/06/2004, 14h23

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