Ciao
Ho una stringa JSON con dentro un array ma non riesco a recuperare i dati al suo interno.
Ho effettuato diverse prove ma senza esito, ho sempre come risposta l'errore di runtime 424 necessario oggetto.
Sotto ho aggiunto il codice della sub, spero che qualcuno mi possa dare qualche suggerimento.
Grazie
Public Sub GetPerson7(IDPerson As Long)
Dim db As DAO.Database
Dim qdef As DAO.QueryDef
'Dim db As Database
'Dim qdef As QueryDef
Dim strSQL As String
Dim myNestedArraysJson As Variant
Dim p As Object
Dim competitionId As Object
Dim competitionId2 As Object
Dim element As Variant
Dim change As Variant
Dim change2 As Variant
Dim FileNum As Integer
Dim DataLine As String, jsonStr As String
Dim p2 As Object
Set db = CurrentDb
'Set p = ParseJson(y)
strSQL = "PARAMETERS [matchId] Long,[competitionId] Long,[partita] Text(255),[data] Text(255),[seasonId] Long,[gameweek] Long ; " _
& "INSERT INTO Calendario (matchid,competitionid,partita,data,seasonid,gameweek)" _
& "VALUES([matchid],[competitionid],[partita],[data],[seasonid],[gameweek]);"
Set qdef = db.CreateQueryDef("", strSQL)
myNestedArraysJson = "{""competitionId"":524,""seasonId"":185382,""matches"":[{""matchId"":2759811,""goals"":[],""match"":{""wyId"":2759811,""gsmId"":-89032," _
& """label"":""Frosinone - Chievo, 0 - 0"",""date"":""May 26, 2019 at 5:00:00 PM GMT+2"",""dateutc"":""2019-05-26 15:00:00"",""status"":""Fixture""," _
& """duration"":""Regular"",""winner"":0,""competitionId"":524,""seasonId"":185382,""roundId"":4416686,""gameweek"":38,""teamsData"":{""3254"":{""teamId"":3254,""side"":""home""," _
& """score"":0,""scoreHT"":0,""scoreET"":0,""scoreP"":0,""coachId"":0,""hasFormation"":0,""formation"":null},""3165"":{""teamId"":3165,""side"":""away""," _
& """score"":0,""scoreHT"":0,""scoreET"":0,""scoreP"":0,""coachId"":0,""hasFormation"":0,""formation"":null}},""venue"":null,""referees"":[]}},{""matchId"":2759812,""goals"":[],""match"":{""wyId"":2759812,""gsmId"":-89033,""label"":""Internazionale - Empoli,
0 - 0""," _
& """date"":""May 26, 2019 at 5:00:00 PM GMT+2"",""dateutc"":""2019-05-26 15:00:00"",""status"":""Fixture"",""duration"":""Regular""," _
& """winner"":0,""competitionId"":524,""seasonId"":185382,""roundId"":4416686,""gameweek"":38,""teamsData"":{""3161"":{""teamId"":3161,""side"":""home"",""score"":0,""scoreHT"":0,""scoreET"":0,""scoreP"":0,""coachId"":0,""hasFormation"":0,""formation"":null},""3178"":{""teamId"":3178,""side"":""away"","
_
& """score"":0,""scoreHT"":0,""scoreET"":0,""scoreP"":0,""coachId"":0,""hasFormation"":0,""formation"":null}},""venue"":null,""referees"":[]}}]}"
'''Set p = ParseJson(y)
Set p = ParseJson(myNestedArraysJson)
For Each element In p.Items
Set competitionId = p("CompetitionID")
For Each change In competitionId.Items
qdef!matchid = change("matchid")
Set competitionId2 = change("match")
For Each change2 In competitionId2
qdef!partita = change2("label")
qdef!Data = change2("date")
qdef!competitionId = change2("competitionid")
qdef!seasonId = change2("seasonid")
qdef!gameweek = change2("gameweek")
qdef.Execute
Next
Next
Next element
Set element = Nothing
Set p = Nothing
Set competitionId = Nothing
Set competitionId2 = Nothing
End Sub