Iemand ervaring met de integratie van NodeJS <-> Google Sheets API

Argon
Elite Poster
Elite Poster
Berichten: 1075
Lid geworden op: 21 Mei 2007
Bedankt: 35 keer
Uitgedeelde bedankjes: 10 keer

Iemand ervaring met de integratie van NodeJS <-> Google Sheets API

Berichtdoor Argon » 2 weken 1 dag 5 uur geleden (03 Sep 2018, 14:08)

Hallo,

Heeft hier iemand ervaring met het uitlezen van Google Sheets bestanden vanuit Nodejs adhv de Sheets API?
Ik ben geen programmeur (dus doe er lang over om bepaalde zaken te bekomen :-) ) maar heb wel al een connectie kunnen leggen tussen NodeJs en Google Sheet.

Nu probeer ik aan de hand van een waarde die in NodeJS voorkomt, deze waarde op te zoeken in het Google Sheet bestand (in kolom B). Eens de waarde in Kolom B gevonden werd, dan zou ik graag de andere waarden van die rij kunnen gebruiken in het NodeJS script.

Dus iemand hier toevallig al wat mee zitten spelen?

Thanks !

Gebruikersavatar
r2504
Deel van't meubilair
Deel van't meubilair
Berichten: 28814
Lid geworden op: 28 Okt 2003
Bedankt: 1891 keer
Recent bedankt: 13 keer
Uitgedeelde bedankjes: 388 keer

Re: Iemand ervaring met de integratie van NodeJS <-> Google Sheets API

Berichtdoor r2504 » 2 weken 1 dag 5 uur geleden (03 Sep 2018, 14:13)

Kijk gewoon naar de Quickstart... https://developers.google.com/sheets/ap ... art/nodejs

De function listMajors laat zien hoe je een range kan aflopen (je moet er alleen een extra if-statement bij plaatsen) en aan andere cellen kan geraken. Via de search method kan het uiteindelijk nog eenvoudiger... dan heb je geen loop/if nodig.

Argon
Elite Poster
Elite Poster
Berichten: 1075
Lid geworden op: 21 Mei 2007
Bedankt: 35 keer
Uitgedeelde bedankjes: 10 keer

Re: Iemand ervaring met de integratie van NodeJS <-> Google Sheets API

Berichtdoor Argon » 2 weken 4 uur 18 minuten geleden (04 Sep 2018, 15:01)

Ik was reeds gestart met die Quickstart en dat is mij gelukt.

Ik ben dan verder gegaan op volgende site: https://developers.google.com/sheets/api/guides/values Daar staat uitgelegd hoe je cellen kan uitlezen en wegschrijven.

To read a single range of data out of a spreadsheet, use a spreadsheets.values.get request:

Code: Selecteer alles

this.sheetsService.spreadsheets.values.get({
  spreadsheetId,
  range,
}, (err, result) => {
  if (err) {
    // Handle error
    console.log(err);
  } else {
    const numRows = result.values ? result.values.length : 0;
    console.log(`${numRows} rows retrieved.`);
  }
});


Ik veranderde dus die "listMajors" functie met bovenstaande code:

Code: Selecteer alles

function listMajors(auth) {
  this.sheetsService.spreadsheets.values.get({
    spreadsheetId: '1g1pDOh8ns3TvV0CK1C6SU0uEI_V53Aqd2hFzn8EPq',
    range: 'results!A2:J',
  }, (err, result) => {
    if (err) {
      // Handle error
      console.log(err);
    } else {
      const numRows = result.values ? result.values.length : 0;
      console.log(`${numRows} rows retrieved.`);
    }
  });
}


Maar dan krijg ik de volgende foutmelding:

Code: Selecteer alles

  this.sheetsService.spreadsheets.values.get({
                     ^

TypeError: Cannot read property 'spreadsheets' of undefined
    at listMajors (C:\Users\vhauwani\OneDrive - Mohawk Industries\Documents\Prive\Node\index.js:66:22)
    at fs.readFile (C:\Users\vhauwani\OneDrive - Mohawk Industries\Documents\Prive\Node\index.js:32:5)
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:511:3)


Zoals reeds vermeld, ik ben absoluut geen programmeur dus bovenstaande is misschien simpel opgelost voor iemand die er meer mee bezig is, maar ik zit daar dus momenteel wat vast.

Ik volg dus gewoon wat Google handleidingen zodat ik meer inzicht krijg hoe het net werkt. Nadien probeer ik dan wel te bereiken wat ik effectief wil bereiken.

Bedankt!

Gebruikersavatar
r2504
Deel van't meubilair
Deel van't meubilair
Berichten: 28814
Lid geworden op: 28 Okt 2003
Bedankt: 1891 keer
Recent bedankt: 13 keer
Uitgedeelde bedankjes: 388 keer

Re: Iemand ervaring met de integratie van NodeJS <-> Google Sheets API

Berichtdoor r2504 » 2 weken 3 uur 56 minuten geleden (04 Sep 2018, 15:22)

Waar is volgende regel naartoe ?

Code: Selecteer alles

const sheets = google.sheets({version: 'v4', auth});

Argon
Elite Poster
Elite Poster
Berichten: 1075
Lid geworden op: 21 Mei 2007
Bedankt: 35 keer
Uitgedeelde bedankjes: 10 keer

Re: Iemand ervaring met de integratie van NodeJS <-> Google Sheets API

Berichtdoor Argon » 2 weken 2 uur 28 minuten geleden (04 Sep 2018, 16:50)

Stond er dus blijkbaar niet...

Heb het nu gewijzigd als volgt:

Code: Selecteer alles

function listMajors(auth) {
  const sheets = google.sheets({version: 'v4', auth});
  sheets.spreadsheets.values.get({
    spreadsheetId: '1g1pDOh8ns3TvV0CK1C6SU0uEI_V53Aqd2hFzn8EPq',
    range: 'results!A2:J',
  }, (err, result) => {
    if (err) {
      // Handle error
      console.log(err);
    } else {
      const numRows = result.values ? result.values.length : 0;
      console.log(`${numRows} rows retrieved.`);
    }
  });
}


Uitvoer:

Code: Selecteer alles

0 rows retrieved.


Dus de connectie lijkt er nu wel te zijn. Waarvoor dank voor de tip ;-)
Ik kan terug verder prutsen.


Terug naar “Web-en applicatie-ontwikkeling”

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers en 1 gast