gerritvankuipers / aspjson

Classic ASP JSON Class Reading/Writing
78 stars 40 forks source link

Loop collection inside another collection #32

Open fabiomtl opened 7 months ago

fabiomtl commented 7 months ago

Please can you help me to read a collection inside another collection? Here it is my JSON:

{
    "versao": "3.3.12",
    "quantidade": 1,
    "**objetos**": [
        {
            "codObjeto": "OV827287026BR",
            "tipoPostal": {
                "sigla": "OV",
                "descricao": "ETIQUETA FISICA SEDEX OV",
                "categoria": "SEDEX"
            },
            "dtPrevista": "2024-03-08T23:59:59",
            "contrato": "9912295023",
            "largura": 10,
            "comprimento": 15,
            "altura": 1,
            "peso": 1.5,
            "formato": "Pacote",
            "modalidade": "F",
            "**eventos**": [
                {
                    "codigo": "BDE",
                    "tipo": "01",
                    "**dtHrCriado**": "2024-03-08T11:24:47",
                    "**descricao**": "Objeto entregue ao destinatário",
                    "unidade": {
                        "codSro": "15900970",
                        "tipo": "Agência dos Correios",
                        "endereco": {
                            "cidade": "TAQUARITINGA",
                            "uf": "SP"
                        }
                    }
                },
                {
                    "codigo": "OEC",
                    "tipo": "01",
                    "**dtHrCriado**": "2024-03-08T09:39:43",
                    "**descricao**": "Objeto saiu para entrega ao destinatário",
                    "unidade": {
                        "tipo": "Agência dos Correios",
                        "endereco": {
                            "cep": "15900970",
                            "logradouro": "PRACA DOUTOR HORACIO RAMALHO",
                            "numero": "12",
                            "bairro": "CENTRO",
                            "cidade": "TAQUARITINGA",
                            "uf": "SP"
                        }
                    }
                },
                {
                    "codigo": "RO",
                    "tipo": "01",
                    "**dtHrCriado**": "2024-03-08T05:59:16",
                    "**descricao**": "Objeto em transferência - por favor aguarde",
                    "unidade": {
                        "codSro": "14095970",
                        "tipo": "Unidade de Tratamento",
                        "endereco": {
                            "cidade": "RIBEIRAO PRETO",
                            "uf": "SP"
                        }
                    },
                    "unidadeDestino": {
                        "tipo": "Agência dos Correios",
                        "endereco": {
                            "cidade": "TAQUARITINGA",
                            "uf": "SP"
                        }
                    }
                },
                {
                    "codigo": "DO",
                    "tipo": "01",
                    "**dtHrCriado**": "2024-03-07T22:44:10",
                    "**descricao**": "Objeto em transferência - por favor aguarde",
                    "unidade": {
                        "codSro": "05314979",
                        "tipo": "Unidade de Tratamento",
                        "endereco": {
                            "cidade": "SAO PAULO",
                            "uf": "SP"
                        }
                    },
                    "unidadeDestino": {
                        "tipo": "Unidade de Tratamento",
                        "endereco": {
                            "cidade": "RIBEIRAO PRETO",
                            "uf": "SP"
                        }
                    }
                },
                {
                    "codigo": "RO",
                    "tipo": "01",
                    "**dtHrCriado**": "2024-03-07T16:56:12",
                    "**descricao**": "Objeto em transferência - por favor aguarde",
                    "unidade": {
                        "codSro": "05379972",
                        "tipo": "Agência dos Correios",
                        "endereco": {
                            "cidade": "SAO PAULO",
                            "uf": "SP"
                        }
                    },
                    "unidadeDestino": {
                        "tipo": "Unidade de Tratamento",
                        "endereco": {
                            "cidade": "SAO PAULO",
                            "uf": "SP"
                        }
                    }
                },
                {
                    "codigo": "PO",
                    "tipo": "01",
                    "**dtHrCriado**": "2024-03-07T16:46:17",
                    "**descricao**": "Objeto postado",
                    "unidade": {
                        "codSro": "05379972",
                        "tipo": "Agência dos Correios",
                        "endereco": {
                            "cidade": "SAO PAULO",
                            "uf": "SP"
                        }
                    }
                }
            ]
        }
    ],
    "tipoResultado": "Todos os Eventos"
}

A need to make a loop to read all "dtHrCriado" and "descricao".

I tried:

Set objJSONData = objJSONrastreio.data
Set objObjects = objJSONData.item("objetos")
Set objEvents = objObjects.item("eventos")

and got this error:

Microsoft VBScript runtime error '800a01a8'
Object required: 'objObjects.Item(...)'

Thank you!