Ignore added columns

When adding new columns your always in danger of making the App unable to sync for the users. It would be helpful if we could put the app into a state where new columns and/or tables are ignored by devices where they have an older version of the App than the definition.

Once you have client with more than 10 users, its unprofessional to expect them to not use their App for 30mins+ whilst you add new columns. Also with a company of that size or bigger there’s always goign to be that one guy that ignores all the warnings and tried to upload data anyway.

Smartsheet has regular maintenance outages, I know that for a fact. They’ll give like a weeks notice, “Hey, remember that this Friday from 1pm to 2pm UTC Smartsheet will be unavailable… blah blah blah.”

It’s a pain and chore to manage pushing out major updates like this when you’ve got a diverse client base; one of my clients has dozens of users in 5 different time zones around the world - that one is especially hard to manage updates.

4 Likes

And in all actuality, if you have a client who you have already created an app for and they are actively using and asking for new features from you, it’s unprofessional of THEM to expect that they can keep using a software while you are actively upgrading it for them.

2 Likes

I would agree except that the flexibility of Appsheet and the ease at which we can add new features to our apps is a core reason that we use the platform. Telling our users that we simply can’t make a change without knocking everyone offline is contradictory to their understanding of the platform. We manage this with maintenance periods etc., but the feature requested above would make this 100x easier.

1 Like

@Bahbus I disagree. I personally can’t think if any other cloud service that has to go completely offline to do an update. Or one which can put the user in a posistion where they end up with an old version of the software and are at risk of loosing data.

I love appsheet, but I think this part can make it feel a little cheap-and-cheerful rather than a totallu professional solution to a business.

3 Likes

A lot of the cloud services that you can think of, however, are going to function fundamentally different that AppSheet. For example, AppSheet (a cloud service) pushes updates that we see in the editor without going offline. But that is possible because none of the data for the editor is store on our computers. Same thing for when apps like Facebook, Google, and Twitter suddenly change their interfaces despite no app update.

You can’t really think of your app running on a cloud service as, itself, a cloud service and therefore innately having cloud service abilities. Part of the reason that makes the cloud, the cloud, is because data is multiplied and stored in several different places (kind of like a RAID setup, but different). Because of that when servers do down for maintenance or glitches, a lot of time you won’t even notice. It also allows them to do upgrades without shutting down, because they can roll the upgrade out slowly with two concurrent versions running side-by-side until everyone is switched. Not to mention they can also run custom scripts that move data automatically for people/users in the event of a structure change.

Your app and your data doesn’t exist in that same way that the underlying platform does. Part of the problem is that, how is AppSheet supposed to understand that it’s still ok to sync the data even though the column structure has changed? In this example, it’s only new columns, and therefore the old data still fits into those columns. However, AppSheet has no way to verify that this is true, since AppSheet is just a middleman, so to speak. The middleman can’t interpret your intents when you change the backend its working with.

I believe giving some sort of “toggle” for this behavior would introduce worse problems, when in reality you would need much more granular control for how AppSheet deals with errors and sync issues. You basically want some form of TRY/CATCH system, which I highly doubt AppSheet can give us, at least any time soon. And beyond that, it starts to get really far away from the no-code idea.

3 Likes

Well said, @Bahbus.

2 Likes

Simply use the same system that Appsheet relies upon - column names. So with adding columns, if:

Column A = Alpha
Column B = Bravo
Column C = Charlie

becomes

Column A = Alpha
Column B = Bravo
Column C = XRay
Column D = Charlie
Column E = Zulu

Then surely Appsheet can be made intelligent enough to work out where to write data for Alpha, Bravo & Charlie columns? I’m not saying we need a all encompassing solution to this. But adding columns is one item that ALWAYS messes up the data and needs all users to update.

The key here is that I’m not having to spend 1-2 hours out of normal working hours doing an update so it doesn’t affect users. I should be able to do the majority of the update without impacting the user at all and then maybe have to do 10-15min out of hours.

Another simple solution would be to get the Appsheet App to check every minute or so to see if there is an update available. If so it either puts the app into read only mode or simply does the update automatically. This could be tied into another request that people have made - that they are allowed to have more granular control over the sync function.

2 Likes

We already have that, though its every 30 minutes or so, if Automatic Update is turned on.

This still boils down to some sort of TRY/CATCH functionality.
What do you want to do in the case of a schema mismatch?
“Attempt to write the data to the appropriate columns and ignore the others.”
Ok, what about if the data still fails to sync (i.e. you added and changed columns - or a different, separate glitch)?
“Save the data to a file for me to look at later and clear it from the device.”

Hi @1minManager
Are you using the stable version-feature in AppSheet?
(See https://help.appsheet.com/en/articles/1162855-maintaining-a-stable-app-version)

If you select that your regular users only have access to the latest stable version, then you can work in the meantime on changing your data schema (or anything actually) without impacting them. You’ll still need to let your users know you’re pushing a new (stable) version.

No because it says its only for Corp. plans. the cost of which is out of my clients budgets. Hopefully with Google coming along, we’ll get some of these included in the Premium and Pro licences.

I’d be interested to know if this issue also affects SQL, SmartSheet, Excel etc

Yes, any data source where you change the data schema (aka change the column structure) will cause issue.

1 Like