Duplication of Effort

From recent announcements and features, we can see that Appsheet is going through some fundamental 'under the hood' changes.  I have no doubt that these changes are to allow the Appsheet platform to be able to do more at some time in the (near?) future.

I feel that a very specific feature could be added NOW based on my observations  on how Appsheet Platform is structured.

Everything seems to have the Table_Schema as a core root for the creation of everything else.

Once a table is added into Appsheet, system actions and views are created automatically based off the Add, Delete, Update, Read settings of the table being added.  These actions are created/deleted on the fly as it were if those settings for the table change.  A set of system views also get created with the suffix of _Form, _Detail and _Inline to represent the main Viewtypes of Appsheet.

Those are System added and is performed at the time a new table schema is added into your app.

Items added by the user to augment the table schema are setting column types, setting Initial formula, setting showIf formulas, requireIfs, adding NonRef type VCs (Ref type VCs usually added by the system once column types are set), setting column labels, indicating Key fields, creating Actions, creating Views/Subviews...you get the idea.

When an Appsheet creator views their account, they can (currently) see a view of Apps and a view of Databases.  I propose another (HIDDEN) place.  This place is hidden to protect the IP of the Appsheet Platform, but is available to be used by App Creators.  We shall call this place 'Schema Snippets'.

On the Data section of Appsheet where you configure the columns I propose you add a new option to the menu.

scott192_0-1697724981038.png

Add the item 'Copy to Schema Snippets' to this menu.  The function of this menu item is to save a representation of every single augmentation the user has made with regards to this particular table schema, including new view definitions and so on, BUT, NOT THE SYSTEM parts.  I am assuming that this definition is stored as a JSON structure within Appsheet anyway and should be easily extracted for this one table.

The dialogue with the user for this menu item should present a list of already saved Schema Snippets (from the HIDDEN place) and an input to name that specific Schema Snippet.

Of course, saving Schema Snippets would not be of much use unless you could use them right?  So, there needs to be another option available when you Add data to your App

scott192_1-1697725661494.png

The datasources section should have an option 'Schema Snippet'.  Upon choosing this option, the system should present a list of Schema Snippets from the HIDDEN place and allow the user to choose one.

Then the MAGIC happens!  The table schema loads, the augmentations happen, the views create, the actions create, the formulas are set...  You're grinning now right??  😁

Finally the system checks run that validate the schema and add all the system buttons etc.  Any error messages about missing fields, referenced tables etc would be expected, especially if the pasted snippet also expects other snippets to be added to flesh out the App.  That is part of the normal config process App creators are used to.

I NEED this to happen.  I have created an app that does something complex and necessary.  I have created it in such a way that I can add it into any app I create to provide it's functionality.  But the tables have a lot of configuration to do everytime I add them to another app...it is soul destroying work.  Having this schema snip option across Apps would be an incredible time saving option and I really do believe it's possible to implement in a short time frame...a few weeks?

Come on Appsheet Devs... @ShirleyN @preethamm @cschalk_ws @Arthur_Rallu 

In time for Christmas? 😋

 

 

5 Comments
MultiTech
Gold 4
Gold 4

We hope!

In the meantime, you might learn about what I call "Note Parameters" - might be right up your alley. 💪

__________________________________________________________________________________

Note Parameters are a legacy system that's a remnant from the early early days of AppSheet.  They're instructions that tell AppSheet how to configure the type qualifier for a column when it's being added into the system; the type qualifier being all the specific settings we set inside the little pencil icon for a column in the editor (show if, require if, app formula, etc.).

They're tricky to get right, finnicky, and don't allow for fully dynamic integrations; but they sure do cut a lot of corners and save a lot of time. (^_^)  100% worth the effort to figure out and understand how to use.

I've got a bunch of tables that I've put together using this system over the years; you can learn more, and gain access to them, by heading over to the Answer Portal. (Check out Resources & Tools - the toolbox icon on the left - and look at "Auto-Table")

 

scott192
Silver 5
Silver 5

@MultiTech  Ha!  Your video was made around Christmas 😂

You are correct that your hidden Notes syntax is right up my street.  Why the hell isn't this documented?  @lizlynch ?

I'm going to investigate this further, but I know that if the devs provide the requested schema snippet feature (don't forget to UPVOTE!) it will provide a lot more with regards to VC fields, views, actions and so on.

Thanks for this information though!

MultiTech
Gold 4
Gold 4

FYI: the devs are aware of note parameters, but they're not actively supported.  In fact I was told that they weren't aware of them until I suggested them as a way to make things more modular - this was a year or so ago.

The power is apparent to them, but they're also incredibly fragile  - so they're proceeding with caution.  They have many limitations that prevent them from being a truly viable source for cross-app table update management; but if you're adding the table (or even just a new column) they work like a charm.

__________________________________________________________________________________

In my spare time I've been working to get my Ai AppSheet copilot Appster to help on this front.  My next major goal for it to reliably spit out the note parameters needed for a given column description.  I've got a basic solution in place; but the devil is in the details, and getting the system to work 100% is... difficult.

Anyways.  There are others in the community that are aware of note parameters as well.  Perhaps they'll chime in and even more resources will become apparent. 

Status changed to: Open
preethamm
Staff

Thanks for the detailed writeup explaining your case! Yes, we have not spent enough time thinking through how to reuse pieces of app in other apps or share with others. This will be a great add to our internal design discussions.

While this is not a solution, I have seen some clever tricks by other creators. For ex: I notice that lot of users copy an app, change the data source after experimenting. This way they can keep the app same while using it on different dev or prod datasets. I am sure community will have better hacks than the one I can think of.. 🙂

scott192
Silver 5
Silver 5

@preethamm If you can get that ball rolling in your internal discussions I am sure this feature could be as big of an event as Appscript Tasks was!