Jump to content
  • 0

jsonGetElement


djdamz
 Share

Question

Hello

J'ai un petit soucis avec API de DHL.com

 

j'arrive à choper le Json sans soucis
Je n'arrive juste pas a le parser 😞

j'ai besoin du statut:  "description": "Delivered - Signed for by: LACASCADE ACCUEIL BELIEVE"

dans ma fonction j'ai mis : insérer resultat du calcul : 
JSONGetElement ( Suivi_DHL::suiviJson ; "shipments.events[2]description" )

 

quelqu'un aurais une idée svp ?

 

merci 

 

 

{
    "shipments": [
        {
            "id": "2852618775",
            "service": "express",
            "origin": {
                "address": {
                    "addressLocality": "CASABLANCA - CASABLANCA - MOROCCO"
                }
            },
            "destination": {
                "address": {
                    "addressLocality": "PARIS - PARIS - FRANCE"
                }
            },
            "status": {
                "timestamp": "2021-05-26T09:55:00",
                "location": {
                    "address": {
                        "addressLocality": "PARIS"
                    }
                },
                "statusCode": "delivered",
                "status": "delivered",
                "description": "Delivered - Signed for by: LACASCADE ACCUEIL BELIEVE"
            },
            "details": {
                "proofOfDelivery": {
                    "timestamp": "2021-05-26T09:55:00",
                    "signatureUrl": "https://webpod.dhl.com/webPOD/DHLePODRequest?hwb=KQrvI%2FZYKCRNXV5G4xUP8A%3D%3D&pudate=1K6hzpl33CMNc9DDCCdJEQ%3D%3D&appuid=5OXFpLE3rPXcy39v3vh5YA%3D%3D&language=en&country=G0",
                    "documentUrl": "https://webpod.dhl.com/webPOD/DHLePODRequest?hwb=KQrvI%2FZYKCRNXV5G4xUP8A%3D%3D&pudate=1K6hzpl33CMNc9DDCCdJEQ%3D%3D&appuid=5OXFpLE3rPXcy39v3vh5YA%3D%3D&language=en&country=G0",
                    "signed": {
                        "@type": "Person",
                        "name": "LACASCADE ACCUEIL BELIEVE"
                    }
                },
                "totalNumberOfPieces": 1,
                "pieceIds": [
                    "JD014600008774026611"
                ]
            },
            "events": [
                {
                    "timestamp": "2021-05-26T09:55:00",
                    "location": {
                        "address": {
                            "addressLocality": "PARIS"
                        }
                    },
                    "description": "Delivered - Signed for by: LACASCADE ACCUEIL BELIEVE"
                },
                {
                    "timestamp": "2021-05-26T08:39:00",
                    "location": {
                        "address": {
                            "addressLocality": "PARIS - FRANCE"
                        }
                    },
                    "description": "With delivery courier"
                },
                {
                    "timestamp": "2021-05-26T03:11:00",
                    "location": {
                        "address": {
                            "addressLocality": "PARIS - FRANCE"
                        }
                    },
                    "description": "Departed Facility in PARIS - FRANCE"
                },
                {
                    "timestamp": "2021-05-26T02:25:00",
                    "location": {
                        "address": {
                            "addressLocality": "PARIS - FRANCE"
                        }
                    },
                    "description": "Processed at PARIS - FRANCE"
                },
                {
                    "timestamp": "2021-05-25T23:50:00",
                    "location": {
                        "address": {
                            "addressLocality": "PARIS - FRANCE"
                        }
                    },
                    "description": "Clearance processing complete at PARIS - FRANCE"
                },
                {
                    "timestamp": "2021-05-25T21:49:00",
                    "location": {
                        "address": {
                            "addressLocality": "PARIS - FRANCE"
                        }
                    },
                    "description": "Arrived at Sort Facility PARIS - FRANCE"
                },
                {
                    "timestamp": "2021-05-25T19:21:00",
                    "location": {
                        "address": {
                            "addressLocality": "PARIS - FRANCE"
                        }
                    },
                    "description": "Customs status updated"
                },
                {
                    "timestamp": "2021-05-25T15:16:00",
                    "location": {
                        "address": {
                            "addressLocality": "CASABLANCA - MOROCCO"
                        }
                    },
                    "description": "Arrived at Sort Facility CASABLANCA - MOROCCO"
                },
                {
                    "timestamp": "2021-05-25T14:39:00",
                    "location": {
                        "address": {
                            "addressLocality": "CASABLANCA - MOROCCO"
                        }
                    },
                    "description": "Departed Facility in CASABLANCA - MOROCCO"
                },
                {
                    "timestamp": "2021-05-25T14:17:00",
                    "location": {
                        "address": {
                            "addressLocality": "CASABLANCA - MOROCCO"
                        }
                    },
                    "description": "Processed at CASABLANCA - MOROCCO"
                },
                {
                    "timestamp": "2021-05-25T13:01:00",
                    "location": {
                        "address": {
                            "addressLocality": "CASABLANCA - MOROCCO"
                        }
                    },
                    "description": "Shipment picked up"
                }
            ]
        }
    ],
    "possibleAdditionalShipmentsUrl": [
        "/track/shipments?trackingNumber=2852618775&service=freight",
        "/track/shipments?trackingNumber=2852618775&service=dgf",
        "/track/shipments?trackingNumber=2852618775&service=ecommerce",
        "/track/shipments?trackingNumber=2852618775&service=parcel-de",
        "/track/shipments?trackingNumber=2852618775&service=parcel-nl",
        "/track/shipments?trackingNumber=2852618775&service=parcel-pl"
    ]
}

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Bonjour,

JSONGetElement ( json ; "shipments[0].events[0].description" )

 

Link to comment
Share on other sites

  • 0

Il s'agit d'arrays (tableaux) imbriqués, notés avec des crochets. []
dans un tableau on peut mettre plusieurs objets {} et les valeurs du tableau sont séparées par des virgules.

Pour obtenir une valeur d'un tableau on note son numéro entre crochets.

Et JSON comme tout javascript a un index basé sur 0 (la première valeur est 0, la deuxième est 1...)

J'espère que c'est clair. 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...