Post has shared content
This little snippet shows how to do paging using asynchronous recursion. await/async makes this a breeze. The example is querying a GraphQL server to build up a series of paged responses.

Post has attachment
I am finding Dicers seems to be failing, I get the circle of death and the message shown below , yet I have done all the authorizations that it requests.

hi everyone,
I was wondering of creating a blogging site using google app script and other open source resources. If you have any helpful insight to share you are most welcome

hello everyone!
I need help with libraries in google app script. Please share any article or video which explains it.
Thanks in advance!

Hi Bruce,
We have been using your Google Sheets SLides Merge addon, It used to work well, but now it does not sign in and says
Sign in with Google temporarily disabled for this app
This app has not been verified yet by Google in order to use Google Sign In.

Please activate oauth with google, so this addon can work again

Hi Bruce,

I'm using the DB abstraction handler with excel front end and google sheets as the db.

When I run a 'remove' operation, the handler scans the sheet and converts all dates to ISO. Can you tell me where I can stop this part of the code from running? I assume I'd have to make my own copy of one of the libraries and make the change there? Thanks for the help!

Hi Bruce, Thanks for the amazing classes, I've been spending days going through everything. I have an issue which I hope you may know the best way to solve:

I'm reading json data from google viz in the form:

google.visualization.Query.setResponse({"version":"0.6","reqId":"0","status":"ok","sig":"1413680284","table":{"cols":[{"id":"A","label":"UID","type":"number","pattern":"General"},{"id":"B","label":"Status","type":"string"},{"id":"C","label":"Title","type":"string"},{"id":"D","label":"Risk Rank","type":"string"},{"id":"E","label":"Model","type":"string"},{"id":"F","label":"Owner","type":"string"},{"id":"G","label":"Description","type":"string"},{"id":"H","label":"Date Added","type":"date","pattern":"yyyy-mm-dd"},{"id":"I","label":"Date Complete","type":"date","pattern":"yyyy-mm-dd"},{"id":"J","label":"Resolution","type":"string"},{"id":"K","label":"Likelihood","type":"string"},{"id":"L","label":"Receptor","type":"string"}],"rows":[{"c":[{"v":1.09110107131E11,"f":"109110107131"},{"v":"CI"},{"v":"Emergency Ladder - 980E"},{"v":"IV"},{"v":"980E"},{"v":"Jayme Gordon"},{"v":"980E Ladder hinge and latch become covered in mud and will not operate in case of emergency."},{"v":"Date(2017,5,7)","f":"2017-06-07"},null,{
"v":"A cover test was installed on units 337-338-339."},null,{"v":null}]},{"c":[{"v":1.09110107147E11,"f":"109110107147"},{"v":"CI"},{"v":"Dump Body - Carry Back"},{"v":"III"},{"v":"980E"},{"v":"Jayme Gordon"},{"v":"930E Dump body carry back build up - significant build up (15 ton/cycle - 60 ton/cycle) - 930E truck"},{"v":"Date(2017,1,22)","f":"2017-02-22"},null,{"v":"TestRes"},null,{"v":null}]},{"c":[{"v":1.09110103147E11,"f":"109110103147"},{"v":"CI"},{"v":"Testtttttt"},{"v":"I"},null,null,null,null,{"v":"Date(2018,11,12)","f":"2018-12-12"},null,null,{"v":"TestRRRR"}]},{"c":[{"v":1.09110107151E11,"f":"109110107151"},{"v":"CI"},{"v":"IGBT Fires"},{"v":"I"},{"v":"980E"},{"v":"Jayme Gordon"},{"v":"980E Multiple IGBT failures leading to high voltage cabinet fires on 980s."},{"v":"Date(2017,2,28)","f":"2017-03-28"},null,null,null,{"v":null}]},{"c":[{"v":1.09110107152E11,"f":"109110107152"},{"v":"CI"},{"v":"Thrust Washers - 930E"},{"v":"II"},{"v":"980E"},{"v":"Jayme Gordon"},{"v":"930E Continuing issues with GDY
85E at NACG (NMT914)"},{"v":"Date(2016,11,25)","f":"2016-12-25"},null,null,null,{"v":null}]}],"parsedNumHeaders":1}});

I can read the string into a cJobject, but my issues is that it seems to skip the 'null' values (which are from blank dates, as opposed to blank strings which are '{"v":null}'. This causes the cJobject row values to be in the wrong index position, and each row may have a different .children.count value.

Is there a way I can make the cJobject include the 'null' values without first converting them to something else in the raw string?


Post has attachment
I think there is an unneeded single quotation mark in line:

'//do something with the result

In page

In section:

An example - this runs Server.getData (100);

Post has shared content

Post has shared content
A note on Integer accuracy in JavaScript that you might find useful in your Scripts.

Because JavaScript doesn't have an Integer type, and all numbers are held as double precision floating point, it means that an integer representation of a number is always an estimate. Normally this doesn't matter, but if you are dealing with very big numbers (such as automatically generated id from a database such as cockroachdb) , it can cause headaches.

The biggest integer that can be reliably estimated in JavaScript is 9007199254740991, or Math.pow(2, 53) - 1. This is because of the 64 bits available, only 52 of them are used for the fractional part, with the other 12 bits used for the exponent and the sign bit.

The good news is that when you write that to a sheet, although a string like '123' will be converted to a number, a string representing a big number like '90071992547409999' will be detected as being a potential problem by Sheets and it is written as a string, thus avoiding an inaccurate conversion.

So the lesson here is, if you are dealing with very large integers, always treat them as strings when manipulating them in JavaScript.

Wait while more posts are being loaded