On 1 May 2020, at 8:18 am, talk@webdna.us w=rote:
=EF==BB=BFHi Stuart,I apprecia=te your answer and have a similar kludge (creative solution) for my applicat=ion. I was actually hoping to hear from Chris on this, in hopes that t=he underlying JSON parser he is using can be passed dot notation in a simila=r way that Javascript uses to parse JSON objects.Chris, are there any parameters we can send t=hat are not in the documentation?=Thanks, Mike DavisOn Apr 22, 2=020, at 5:05 PM, talk@webdna.us= wrote: Hi MD<=div class=3D"">As we don=E2=80=99t know the email address of the sender anym=ore it would be nice for us to know who we are addressing.The JSONStore tag is a little confus=ing and what is also not well documented is that you can store the data in a= table eg:[JSONstore table=3DTRANSACTION=&fields=3Derror:type,error:message][STRIPERESPONSE=][/JSONstore]Then search the table:[SEARCH table=3DTRANSACTION&=;neERROR:TYPEdatarq=3D[BLANK]][!][/!][founditems][!]=[/!][text]ERROR-TYPE=3D[ERROR:TYPE][/TEXT][!] <=span class=3D"Apple-tab-span" style=3D"white-space:pre">[/!][text]ERROR-MESSAGE=3D[ERROR:MESSAGE][/TEXT][!][/!]=[/FOUNDITEMS][!][/!][/SEARCH]What I found to be a useful exercise was to write to my specified db and th=en open it and read the data to see what is being done with it. JSONsStore w=ill write the headers in a db[JSONstore d=b=3Dlogs/stripelog.db][STRIPERESPONSE][/JSONstore]As the data is often stored in an array you will have to do a bit of mani=pulation on the found items.Here is a JSON function that may be useful to you.[!]------------------------------------------------------=----------------FUNCTION Name: WC-JSONvalue+ Description: Pull out a value from a JSONobject<=span class=3D"Apple-tab-span" style=3D"white-space:pre">+ In=put:JSONobject =3D (=the json to be parsed) - required&=nbsp; JSONnode =3D (the node that we want the value of) - required+ usage: [WC-JSONvalue JSONobject=3D[url]<the-json-object>[/url]&a=mp;JSONnode=3D<the-json-node>]+Note: This function MUST re=ceive valid JSONobject, make sure that there are no line breaks before begin=ning of JSON, test your JSON validity here: https://jsonlint.com-----------------=-----------------------------------------------------[=/!][function name=3DWC-JSONvalue][!][/!][text]rRETURN=3D[/text][=!][/!][showif [url][params_string][/ur=l]^JSONobject][text]rJSONobject=3D[JSONobject][/text][/showif][!]-------------------- Store the= JSONobject in a table --------------------[/!][JSONsto=re table=3DJSONdata][rJSONobject][/jsonstore][!]------------=-------- Search the table --------------------[/!]=[SEARCH table=3DJSONdata&ne[rJSONnode]data=3Dfind_all][!][/!]=[/founditems][!][/!][/SEARCH][!]------------=-------- Return the value --------------------[/!][/function]You man need to play a=round with the json object to ensure that it is valid json, I found that Pay=Pal json did not validate.On 23 Apr 2020, at 06:45, talk@webdna.us wrote: Hi all,
I=E2=80=99=m looking at the docs for the JSONStore context. It seems that either t=he context is lacking functionality or the documentation is. I do not s=ee a way to access nested levels in the JSON, like can be done with XML usin=g path=3D0:1:2 for example. Seems like there should be a way to use do=t notation to get at nested data without storing each array in a temp db, th=en reparsing each level with JSONStore into another temp db, etc.
For example: I want to iterate the data sets in the =E2==80=9Cresults=E2=80=9D array into a database. I can use JSONStore to p=opulate a table with the fields: page, total_results, total_pages and result=s. Then I can search that table and run JSONStore on the results= field using another database, but this gets a bit complicated when working w=ith some other data, in which I need to access data that is 3 or 4 arrays de=ep.
Anyone solved this puzzle in a more efficie=nt way yet?
{
="page":1,
"total_results":21,
"total_pages":1,
"resul=ts=E2=80=9D:[
{
 =;"popularity":1.936,"vote_count=E2=80=9D:7
= },
&nbs=p; {
&nb=sp; "popularity=E2=80=9D:2.732,"vote_count=E2=80=9D:23
},
= {
 =; "popularity=E2=80=9D:12.088,"vote_count==E2=80=9D:75
},
{
= "popularity=E2=80==9D:53.221,"vote_count=E2=80=9D:5
&nb=sp; },
{=
= "popularity=E2=80=9D:7.001,"vote_count=E2=80=9D:31
&nbs=p; },
&n=bsp; {
&=nbsp; "popularity=E2=80=9D:22.223,"vote_count=E2=80=9D=:88
}
]
}
MD--------------------------------------=-------------------
This message is sent to you because you ar=e subscribed to
the mailing list talk@webdna.us
To unsubscribe, E-mail to: <=a href=3D"mailto:talk-leave@webdna.us" class=3D"">talk-leave@webdna.usarchives: http://www.webdna.us/page.dna?numero=3D55
Bug R=eporting: support@webdna.us<=/a>
DOWNLOAD WEBDNA NOW!
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...