This month, the Community came together for our March AppSheet Office Hours on data source connections. We heard from several members of the AppSheet team, including Product Manager, Arthur Rallu, Engineering Lead, Philip Stephens, and Product Manager, Peter Dykstra, who took us through an overview of AppSheet data connector options, data scaling and performance best practices, and Google Drive folders as app data.
If you didnโt have a chance to join Office Hours live, no worries! In this post, we share the session recording, written questions and answers, as well as supporting documentation and resources, so you can refer back to them at any time.
There were many questions that we didnโt have time to get to on the call, but we did our best to add those to this post as well. If you have any further questions or if you donโt see yours below, please add a comment to this post and someone from the AppSheet team or the Community will be happy to help!
For those of you who may not be aware, the upcoming Google Drive migration from multi-parent files to shortcuts might cause apps to stop displaying images.
The current status of this is still ongoing. The rollout depends on many factors, including if your Google Workspace Admin chose to get releases on a fast or slow track.
If youโre affected by this change, @kamila_klimek has published instructions that let you know what to do, and how to prevent the issue in the first place.
When apps are created, a folder structure for app data is automatically generated in your primary cloud data source (which is usually Google Drive). When a file or image is uploaded within an app, this is where itโs being saved.
But connected data tables are frequently located in other locations - usually hosted in the app creatorโs personal Drive folders. It depends on your use case, but itโs generally recommended to use Shared Drives to organize your data.
More information on utilizing data from a Google Team Drive can be seen here, along with tips for data organization here.
Anyone can create and share app templates for others to view and copy a version into their own account. When copied, templates will copy the table and anything in it to the new copied version of the app - itโs not possible to pick and choose which tables or which records get copied. A good practice when making and sharing templates is to remove all records (leaving only tables/columns) or ensure the records contain no sensitive information.
This is important to keep in mind - make sure youโre not sharing data or records that are sensitive when youโre creating app templates or sharing copies of apps.
Yes, this is essentially data partitioning. You can start with a single Google Sheet and then split it after your app has been deployed. Learn more about how to use data partitions in this article here.
This is something on our long-term roadmap. There are scaling and performance challenges to address with this, and right now, weโre of the mindset that itโs better to keep it more controlled, (so your apps can continue to function correctly) until we have a better way to manage the scale.
Yes - the app will continue to run because it connects to the Sheet using its ID, not its name.
However, keep in mind that AppSheet is not re-reading the name of the file. So in the editor, there will be a mismatch, which is less than ideal. If you rename a tab, you will need to update your app definition (worksheet name/qualifier field) or it will break the app.
Changing the location from one folder to another does not impact the app, as long as the app still has the right permissions to access the data in the sheet.
The app identifies the sheet by its ID, not its location.
Usually SQL is faster when thereโs a large amount of data and when you start using security filters. The general rule of thumb is that SQL is faster with the right configuration and provisioning for the load.
With that said, it wouldnโt be surprising if you find cases where Google Drive is faster.
Yes. Regardless if itโs a few days, one month, six months, or year, it depends on what the initial value of the due date column is and the unit of time being used. So in the due date column, youโll want the initial value to include an expression with the creation date and a certain amount of time (length of time until the due date).
In this task management example, itโs set so the default deadline delay is based on hours from right now - technically you could just make it 720 hours to push the deadline out a week, a month, etc.
Weโve investigated some approaches to this feature. Thereโs a way to attach user-modifiable information to the Drive files. You could also create other tables that are linked through a shared key with a file in Drive.
So there are a few options. Itโs something we have planned, but weโre thinking through the best way to do it.
Yes. You can connect to a Google Calendar and create, modify, or delete events from that calendar. Weโll need to follow up to get more specific details about your app to help troubleshoot this error, but this is sometimes related to a connected table, a calendar being renamed, or permissions changing.
Thereโs not a direct integration with Workspace User Directory today, but there are options for using the Admin SDK Directory Service and Apps Script to automatically pull your user directory into a Google Sheet, which you can then connect to one or multiple apps.
Additional instructions can be seen here.
Yes. There are many teams that have thousands of users using a single AppSheet app or a collection of apps syncing back to a single or multiple data sources. There would be considerations unique to your situation in regards to what the user experience should be for the employees, and whether they are having to load large amounts of data frequently to do their job, versus simply collecting data and ensuring it gets centralized throughout the day.
There are many retail use cases that are ideal for AppSheet, like daily task management, shift scheduling, health and safety inspections, hiring and HR operations. You can explore app templates by industry, feature, and function here.
If your app processes personal or sensitive data, you can mark it as containing โPersonally Identifiable Informationโ or โPII,โ which will prevent it from being retained in the system logs. You can do this either on a per-column or per-app basis. More information on how to do this can be seen here.
For customers who are subject to the requirements of the Health Insurance Portability and Accountability Act (HIPAA), AppSheet can also support HIPAA compliance as a business associate (as the term is defined in HIPAA). This HIPAA Implementation Guide is intended to help you configure the data you send to AppSheet in light of the way our services work and the sensitivity of protected health information.
Yes, this is possible. The way to go about it is to create a table view and make each of the records editable. You will have your different fields, including the image. If the image isnโt linked yet, you can upload the image there and it will place that image into your Google Drive.
After youโre done with that operation, you can delete this view and just keep the onboarding view and your information and images will appear there.
Routing within the app itself isnโt possible in a simple way today, but there are several built-in options, linking out to either Google Maps or other map services.
Information on how to display location data, drop pins, get directions in your app, and more with Google Maps can be seen here.
See this post from @Koichi_Tsuji!
New events can be added to a shared Google Calendar via an AppSheet app form. See this documentation on using data from Google Calendar for details.
Yes, by enabling the โIs Part Ofโ feature for ref columns, you can add a series of child records directly from the parent form. See this example and test the โInline child records form.โ