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

WinDev Discussion :

[WD28] - Désérialise JSON - Utilisation d'un mot réservé du WLangage


Sujet :

WinDev

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 117
    Points : 90
    Points
    90
    Par défaut [WD28] - Désérialise JSON - Utilisation d'un mot réservé du WLangage
    Bonjour,

    Je souhaite désérialiser le contenu d'un JSON vers une structure

    Voici un extract de l'objet en question :
    En rouge l'objet qui pose soucis.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    {
            "transactionId": "blabla",
            "endToEndId": "blabla",
            "bookingDate": "2023-06-16",
            "valueDate": "2023-06-16",
            "transactionAmount": {
              "amount": "43.73",
              "currency": "EUR"
            },
            "debtorName": "blabla",
            "debtorAccount": {
              "iban": "blabla",
              "bban": "blabla"
            },
            "remittanceInformationStructuredArray": [
              "SCOR",
              "BBA",
              "blabla"
            ],
            "proprietaryBankTransactionCode": "European Payment",
            "internalTransactionId": "blabla"
          },
    Je désérialise vers une structure, et la structure qui receuille l'ojet problématique est définie comme ceci en Wlangage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    STAmountTransaction est une Structure
         amount est une chaîne
         currency est une chaîne
     
    FIN
    Pour que la désérialisation opère correctement, les éléments de ma structure doivent être nommés identiquement aux clés du JSON.
    Et c'est ici que ça coince : "currency" est un mot réservé du Wlangage (c'est la déclaration d'un type monétaire en codant en anglais)

    J'ai farfouillé dans l'éditeur pour voir si je pouvais désactiver la version anglaise du Wlangage, mais n'ai pas trouvé.

    Reste 2 solutions de contournement, mais qui ne me plaisent qu'à moitié :
    1/ zapper l'import de cette donnée ;
    2/ renommer currency dans le JSON pour qu'il ne téléscope plus un mot réservé.

    Des pistes, suggestions ?

    D'avance un tout grand merci et une excellente fin week-end à toutes et tous.

    X.

  2. #2
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 811
    Points : 5 270
    Points
    5 270
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    2 solutions à ton problème me viennent directement à l'esprit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    STAmountTransaction est une Structure
         amount est une chaîne
         'currency' est une chaîne
    FIN
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    STAmountTransaction est une Structure
         amount est une chaîne
         m_saDevise est une chaîne <sérialize="currency">
     FIN
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 117
    Points : 90
    Points
    90
    Par défaut
    @Voroltinquo : mille mercis de ce retour si rapide et par ailleurs qui répond tout à fait à mes besoins

    Je viens de jeter un œil à la fonction sérialize et c'est +/- documenté.
    Je ne trouve par contre rien sur cette utilisation de la simple quote (ta 1e solution) : si t'as l'info, je suis preneur par curiosité intellectuelle.

    Belle fin de week-end.

  4. #4
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 811
    Points : 5 270
    Points
    5 270
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par xavier.ninane Voir le message
    Je ne trouve par contre rien sur cette utilisation de la simple quote (ta 1e solution) : si t'as l'info, je suis preneur par curiosité intellectuelle.
    C'est une bonne question... J'ai du tomber dessus un jour par hasard mais où ? Le mystère reste entier.
    C'est une de mes nombreuses annotations sur le manuel.
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

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

Discussions similaires

  1. Utilisation d'un mot réservé dans un UserControl
    Par deny31 dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 18/08/2012, 09h24
  2. Question sur l'utilisation du mot réservé static
    Par flash2590 dans le forum Langage
    Réponses: 4
    Dernier message: 10/04/2006, 00h20
  3. erreur : utilisation incorrecte du mot clé
    Par StyleXP dans le forum Bases de données
    Réponses: 3
    Dernier message: 22/02/2006, 09h24
  4. [MySQL] mot réservé dans un nom de champ
    Par dreamwanderer dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 10/12/2005, 20h54
  5. Year (mot réservé)
    Par Fir dans le forum Langage SQL
    Réponses: 10
    Dernier message: 21/02/2003, 12h16

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