bradjasper / ImportJSON

Import JSON into Google Sheets, this library adds various ImportJSON functions to your spreadsheet
GNU Lesser General Public License v3.0
2.1k stars 1.06k forks source link

Repeats value for column on next line if next value is false #223

Open ronnieoymoen opened 2 years ago

ronnieoymoen commented 2 years ago

Check example json below. The field "underAvvikling" is set to true in the first object. On the next (and on all following rows) it is set to false. Still it renders as true in excel, meaning it copies the last value. Same goes for other cells with text content.

{ "organisasjonsnummer": "821990092", "navn": "ARE TREINDUSTRIER RINGSAKER AS", "organisasjonsform": { "kode": "AS", "beskrivelse": "Aksjeselskap", "_links": { "self": { "href": "https://data.brreg.no/enhetsregisteret/api/organisasjonsformer/AS" } } }, "registreringsdatoEnhetsregisteret": "2019-01-03", "registrertIMvaregisteret": true, "naeringskode1": { "beskrivelse": "Saging, høvling og impregnering av tre", "kode": "16.100" }, "antallAnsatte": 12, "forretningsadresse": { "land": "Norge", "landkode": "NO", "postnummer": "2364", "poststed": "NÆROSET", "adresse": ["Åsmarkvegen 840"], "kommune": "RINGSAKER", "kommunenummer": "3411" }, "stiftelsesdato": "2018-12-10", "institusjonellSektorkode": { "kode": "2100", "beskrivelse": "Private aksjeselskaper mv." }, "registrertIForetaksregisteret": true, "registrertIStiftelsesregisteret": false, "registrertIFrivillighetsregisteret": false, "sisteInnsendteAarsregnskap": "2020", "konkurs": false, "underAvvikling": false, "underTvangsavviklingEllerTvangsopplosning": false, "maalform": "Bokmål", "_links": { "self": { "href": "https://data.brreg.no/enhetsregisteret/api/enheter/821990092" } } }, { "organisasjonsnummer": "974693135", "navn": "ARENDAL LISTEHØVLERI AS", "organisasjonsform": { "kode": "AS", "beskrivelse": "Aksjeselskap", "_links": { "self": { "href": "https://data.brreg.no/enhetsregisteret/api/organisasjonsformer/AS" } } }, "postadresse": { "land": "Norge", "landkode": "NO", "postnummer": "4851", "poststed": "SALTRØD", "adresse": ["Postboks 47"], "kommune": "ARENDAL", "kommunenummer": "4203" }, "registreringsdatoEnhetsregisteret": "1995-07-24", "registrertIMvaregisteret": true, "naeringskode1": { "beskrivelse": "Saging, høvling og impregnering av tre", "kode": "16.100" }, "antallAnsatte": 7, "forretningsadresse": { "land": "Norge", "landkode": "NO", "postnummer": "4815", "poststed": "SALTRØD", "adresse": ["Saltrød Vest"], "kommune": "ARENDAL", "kommunenummer": "4203" }, "stiftelsesdato": "1995-07-20", "institusjonellSektorkode": { "kode": "2100", "beskrivelse": "Private aksjeselskaper mv." }, "registrertIForetaksregisteret": true, "registrertIStiftelsesregisteret": false, "registrertIFrivillighetsregisteret": false, "sisteInnsendteAarsregnskap": "2020", "konkurs": false, "underAvvikling": false, "underTvangsavviklingEllerTvangsopplosning": false, "maalform": "Bokmål", "_links": { "self": { "href": "https://data.brreg.no/enhetsregisteret/api/enheter/974693135" } } },

ryan-tm commented 2 years ago

I fixed this issue by surrounding line 500 with the following if statement:

if(data[row][1] == data[row-1][1] || data[row][1] == null) { data[row][column] = data[row-1][column]; }

Basically I'm changing the inherit option to only inherit previous rows data if the value in column 1 is the same as the previous row or it's null. You might need to change column 1 to a different column, whichever column your primary key falls into.

I imagine that because the primary key can fall into different columns, it's difficult to make a permanent fix for this.