2017-05-05 3 views
0

aktualisiert wurden Ich benutze Knoten js Google Drive Metadaten readonly und Tabellenkalkulationsbereich zum Lesen von Daten mit Google API v4. Aber wie erhalten Sie zuletzt aktualisierte Zeilen, Spalten und Daten, die in einem Arbeitsblatt aktualisiert wurden?Wie Sie wissen, welche Daten kürzlich in Google Sheet mit API v4

****-Update **

var fetchChanges = function(pageToken,pageFn, callback) { 
           service.changes.list({ 
            auth:oauth2Client, 
            pageToken: pageToken, 
            fields: 'kind,nextPageToken,newStartPageToken,changes(kind,type,time,removed,fileId,file,teamDriveId,teamDrive)'   
           }, function (err, res) { 
            if (err) { 
             console.log("------err in service.changes : " ,err); 
             return; 
            } else { 
             console.log("change resp : ", res.changes); 
             // Process changes 
             res.changes.forEach(function (change) { 
              console.log("Change found for file: ", change.fileId); 
             }); 

             if (res.newStartPageToken) { 
              // Last page, save this token for the next polling interval 
              callback(null, res.newStartPageToken); 
//           console.log("--------newStartPageToken : ",res.newStartPageToken); 
             } 
             if (res.nextPageToken) { 
              pageFn(res.nextPageToken, pageFn, callback); 
             } 
            } 
           }); 
          }; 

Antwort Ich bin auch in Google-Explorer in der Konsole bekommen:

{Art: 'Laufwerk # changelist', newStartPageToken: ' 7911' , Änderungen: []}}

Hinweis Änderungen Objektdaten nicht vorhanden und auch nicht vorhanden nextpagetoken.

+0

Mit Blick auf den Code scheint es die Drive API zu verwenden, aber die Tags sind für Google Spreadsheet-API, die Dinge macht etwas verwirrend. Wären Sie in der Lage, die Änderungen, die Sie erhalten möchten und wo Sie sie verwenden möchten, neu zu formulieren? –

+0

Oder hatten Sie gehofft, die Änderungen für eine Spreadsheet-Datei einfach mithilfe der Drive API zu erhalten, ohne genau zu wissen, welche Zeile/Spalte sich geändert hat? –

Antwort

0

Es gibt derzeit keine API, die Sie verwenden könnten, um die Daten aus der letzten Bearbeitung in einer Kalkulationstabelle direkt abzurufen.

Als Workaround können Sie ein App-Skript implementieren, das Änderungen in der Kalkulationstabelle erkennt, die Daten, die Sie vorübergehend benötigen (in einem anderen Blatt), speichert und dann von dort aus darauf zugreift.

sehen auch diese Beiträge:

+0

Ich möchte wissen, "wie kann ich die Änderungen in meinem Google Tabellenkalkulation derzeit" über Google API. Sie können die API-Dokumentation von hier abrufen: https://developers.google.com/drive/v3/web/manage-changes. Ich erhalte derzeit newPageToken nicht und ändert die Daten des Ressourcenobjekts. Vielen Dank. – subhajit

+0

Wenn Sie nach etwas wie einem * Feed * von angewendeten Änderungen * in der Tabelle suchen, gibt es keine API dafür. Die Drive API konnte die Änderungen sehen, die auf die Datei angewendet wurden, nachdem sie geändert wurde (und AFAIK gespeichert wurde). Sie müssen ein Skript für das Spreadsheet implementieren, um die Änderungen zu erkennen, die * aktuell * angewendet werden. –

+0

Ich denke, du verstehst nicht. Bitte beziehen Sie sich auf das Blatt developers.google.com/drive/v3/web/manage-changes – subhajit

1

Ich habe die Lösung:

Ich habe die zukünftigen Veränderungen auf den ersten Token erhalten dann Mit diesem Token kann ich alle Änderungen nachher erledigen r die Token-Erstellung. Und denken Sie daran, den Platz als Parameter wie folgt hinzuzufügen: Leerzeichen (Laufwerk, appDataFolder, Fotos)

Verwandte Themen