Old Node can see a Google Sheet, New Nodes Can't

Having a baffling issue. I was working on a routine that pulls a Google Sheet named “SOAR” from a Shared Drive. Worked fine, nbd.

Coming back on a later day, I now need to add a subroutine that appends to SOAR. However, the Append Sheet node can’t see it. In fact, if I put in a new Sheet Reader Node, it too can’t see it, but if I copy/paste the old Reader node, that duplicate CAN see the file.

No matter how I rejigger the flow, I cannot get a new node to see my Google Sheets file, only the old one. What the heck?

Also, any new nodes appear to see files that are stored… somewhere? In some limbo in the spaces between spaces? No one can find these files on our internal servers, no one knows how to get rid of these files. I’m guess some other routines accidentally wrote to the Knime server (?) during testing because they were left on default settings? Anyone know how to get to/delete those files? (The SOAR in that third screenshot is an accidental file write, not the actual file I want, which is why I want to delete them)

image

Google Connection Settings/Scope:

I was having the same issue. (and still am). Are you using Mac or PC? My issue was that the window view was very wonky, but I was able to select fields. When I reverted to using “Api Key” for authentication, the google sheet reader would not see any of the sheets. When I reverted back to “Interactive” for authentication and manually login, I would then be able to see the sheets in the connector node, select what I needed, then revert the authenticator node back to API Key. Huge PITA, but at least could keep going. Not sure if this helps you, or if you are using API Key authentication vs. Interactive.

2 Likes

PC here. And I tried your trick and it did something funny: I can now see all my Google sheets in that terrible little window, except for the one file that I wanted, possibly because it’s stored on a Shared Drive? Even though my other old Node can still see it.

It’s stuff like this that makes me less willing to use Knime and just stick with Retool or AppSheet. Getting stuck for hours just trying to retrieve a single file leaves such a bad taste in my mouth when I have so many other tools that knew how to get this right upon release. I have time to rewrite this whole thing in Retool, fighting tooth and nail with Knime just isn’t sparking joy.

Hi @Phil_Aldridge

Could you try adding the Google Drive scope as another scope to the authenticator, you might not be able to list all drives without that.

If that shouldn’t work, as a workaround you could either expose the spreadsheet id from the node that can still ‘see’ the spreadsheet as a variable, or configure it directly as a variable and use it in the Google Sheets Appender node.

Here is a workflow that showcases configuring the the appender via variable exposed from the reader, or from the spreadsheet id directly google sheets spreadsheet id – KNIME Community Hub

The spreadsheet id is part of the url when you visit the spreadsheet directly in sheets.google.com, here’s an example:

2 Likes

Google Drive was already one of the scopes, it didn’t help. Buuuut, after a lot of wrangling with flow variables, I got your second idea to work.

Interestingly, if I pass the variable of the SpreadsheetId from the Old Node that “knows” about the sheet, I can get the Google Sheet Updater to see and know about that sheet too. If I then break the flow variable connection, the new node no longer knows about the sheet even tho the old node still does.

So, thank you, you solved my problem although I feel like I’m no closer to understanding Knime’s capriciousness.

2 Likes

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.