10/5/2021 – BuiltOnAir Live Podcast Full Show – S09-E04
Duration: 57 minutes
Be Sure to Subscribe to the podcast!
To get all the latest videos and demonstrations from the BuiltOnAir Podcast, subscribe and get notified on our Youtube channel here and our newsletter/community here.
FULL EPISODE VIDEO
Watch the full video of the show. See below for segment details.
The BuiltOnAir Podcast is Sponsored by On2Air – Integrations and App extensions to run your business operations in Airtable.
In This Episode
Welcome to the BuiltOnAir Podcast, the live show. The BuiltOnAir Podcast is a live weekly show highlighting everything happening in the Airtable world.
Check us out at BuiltOnAir.com. Join our community, join our Slack Channel, and meet your fellow Airtable fans.
Alli Alosa – Hi there! I’m Alli 🙂 I’m a fine artist turned “techie” with a passion for organization and automation. I’m also proud to be a Community Leader in the Airtable forum, and a co-host of the BuiltOnAir podcast. My favorite part about being an Airtable consultant and developer is that I get to talk with people from all sorts of industries, and each project is an opportunity to learn how a business works.
Kamille Parks – I am an Airtable Community Forums Leader and the developer behind the custom Airtable app “Scheduler”, one of the winning projects in the Airtable Custom Blocks Contest now widely available on the Marketplace. I focus on building simple scripts, automations, and custom apps for Airtable that streamline data entry and everyday workflows.
Dan Fellars – I am the Founder of Openside, On2Air, and BuiltOnAir. I love automation and software. When not coding the next feature of On2Air, I love spending time with my wife and kids and golfing.
Show Segments
Round The Bases – 00:03:23 –
Following Articles Used in this Segment:
[Airtable Community] New Feature: Timeline view – Announcements – Airtable Community Forum
[Airtable Community] Update to Automations pane – Announcements – Airtable Community Forum
[Airtable Community] September 2021 Product Updates – Announcements – Airtable Community Forum
[Airtable Community] Prevent duplicates in primary key field : Airtable
[Facebook] (20+) Airtable Community | So what's up with taking apps and making them views | Facebook
An App a Day – 00:37:55 –
Watch as we install, explore, and showcase the Timeline App from the Airtable Marketplace. The app is described as “Airtable recently released Timeline as a new View to showcase date based data in a timeline UI. Alli will walk through how to use this new view in your bases.”.
Audience Questions – 00:48:14 –
Kamille answers the Airtable question: “CSV Download Converts Currency to Text”
View the question in the community
Answer: Make a simple table that had four test fields: a number, currency, formula formatted as currency, and a text field that looks like a currency.
Automate Create – 00:53:44 –
Watch as we review and work through automations. Part 2 of this series to build a Customer Feedback Loop application to request feedback from customers on your product, using On2Air as an example use case.
Full Segment Details
Segment: Round The Bases
Start Time: 00:03:23
Roundup of what’s happening in the Airtable communities – Airtable, BuiltOnAir, Reddit, Facebook, YouTube, and Twitter.
Following Articles Used in this Segment:
[Airtable Community] New Feature: Timeline view – Announcements – Airtable Community Forum
[Airtable Community] Update to Automations pane – Announcements – Airtable Community Forum
[Airtable Community] September 2021 Product Updates – Announcements – Airtable Community Forum
[Airtable Community] Prevent duplicates in primary key field : Airtable
[Facebook] (20+) Airtable Community | So what's up with taking apps and making them views | Facebook
Segment: An App a Day
Start Time: 00:37:55
Airtable App Showcase – Timeline – Airtable recently released Timeline as a new View to showcase date based data in a timeline UI. Alli will walk through how to use this new view in your bases.
Watch as we install, explore, and showcase the Timeline App from the Airtable Marketplace. The app is described as “Airtable recently released Timeline as a new View to showcase date based data in a timeline UI. Alli will walk through how to use this new view in your bases.”.
Segment: Audience Questions
Start Time: 00:48:14
Airtable Question – CSV Download Converts Currency to Text
Kamille answers the Airtable question: “CSV Download Converts Currency to Text”
View the question in the community
Answer: Make a simple table that had four test fields: a number, currency, formula formatted as currency, and a text field that looks like a currency.
Segment: Automate Create
Start Time: 00:53:44
Airtable Automations – Customer Feedback Loop – Part 2
Watch as we review and work through automations. Part 2 of this series to build a Customer Feedback Loop application to request feedback from customers on your product, using On2Air as an example use case.
Full Transcription
The full transcription for the show can be found here:
[00:01:42] Welcome everyone to [00:01:44] the BuiltOnAir podcast. [00:01:45] This is episode four of season nine. [00:01:48] We're glad you could be here with us. [00:01:51] I am Dan Fellars, [00:01:52] host and founder of [00:01:54] On2Air and Openside. With us, [00:01:56] we have Alli. Welcome back Alli, [00:01:59] good to see you. [00:02:01] Glad to have you back [00:02:02] and as always Kamille, [00:02:04] glad you are here again with us today. [00:02:07] Morning. [00:02:08] Good to have everybody back this Tuesday. [00:02:11] So we have a good episode for you. [00:02:13] The BuiltOnAir podcast is a weekly [00:02:15] live show where we talk about all things [00:02:18] Airtable and as part of the [00:02:20] BuiltOnAir community, [00:02:22] check us out at builtonair.com/join [00:02:25] to join our community [00:02:26] and participate with us. [00:02:29] So in this episode we always [00:02:30] do four different segments, [00:02:32] talking about different [00:02:33] things. I'll quickly highlight [00:02:34] what we're gonna be talking about today. [00:02:36] We always start off with [00:02:37] Round the Bases segment [00:02:39] where we talk about what's [00:02:40] going on in the Airtable world. [00:02:42] Then we'll do a spotlight [00:02:44] on the On2Air suite [00:02:45] of tools which is our primary [00:02:47] sponsor. [00:02:48] Then Alli is gonna walk through [00:02:50] the new timeline, view and discuss the new [00:02:53] updates there. [00:02:55] Then Kamille will do an Airtable [00:02:57] question from the community, [00:02:58] talking about converting [00:03:01] currency to text, [00:03:02] then another spotlight from On2Air. [00:03:05] And then finally, [00:03:06] I'll continue our discussion [00:03:08] with Automate Create, [00:03:09] talking about customer feedback loop. So [00:03:13] let's start off with our [00:03:15] Round the Bases, where we go through, [00:03:17] we always start with the [00:03:19] Airtable community, [00:03:20] I thought it would be good to announce, [00:03:23] kind of a public service announcement. [00:03:26] Jason mentions that there [00:03:28] will be downtime on October 15, [00:03:31] which is a Friday, which is, let's see, [00:03:34] Not this friday, but next friday, [00:03:36] right? [00:03:37] Yep. [00:03:37] Special day for anyone here? [00:03:40] Yeah, it's my birthday [00:03:42] and I'm long like offended [00:03:44] that they would do this to me [00:03:46] even though it's only for [00:03:48] 20 minutes and 10 pm my time. [00:03:51] Yeah, I think it's in honor of you. [00:03:53] So, maybe we're going to reply to this [00:03:56] response and [00:03:57] everybody can wish Kamille a [00:03:59] Happy Birthday while Airtable is down [00:04:02] since you won't be on Airtable. [00:04:05] Hopefully, maybe the community [00:04:06] site will be up. [00:04:08] If not our slack community [00:04:09] will be up. You can wish her [00:04:11] a happy birthday there, [00:04:12] nope. [00:04:13] So plan on that. [00:04:15] If you've got automations, [00:04:17] make sure you might want to turn [00:04:19] them off unless you enjoy [00:04:21] getting a bunch of emails [00:04:22] Alli, you said you love [00:04:23] getting emails from ZAPIer [00:04:26] when things go down. My favorite. [00:04:28] Yeah, [00:04:30] that's good. But I think it was [00:04:32] interesting that it's the first [00:04:34] scheduled maintenance, [00:04:36] they've taken many [00:04:38] unscheduled maintenances, [00:04:40] but the first one since [00:04:42] last year of January. So [00:04:45] that's good. Hopefully we see a [00:04:48] boost in an improvement and performance. [00:04:50] That would be nice. [00:04:52] Yeah. [00:04:54] All right. Let's go to end of month. [00:04:57] So we always got new [00:04:58] things to talk about of [00:05:00] what they released in September. [00:05:04] They've got a new, [00:05:06] this was interesting right? [00:05:08] Because this isn't the [00:05:10] what's new site base, [00:05:11] right? No, it's a different, [00:05:14] I'm pretty sure it's a different [00:05:17] base or a different table [00:05:19] then the what's new page on Airtable [00:05:22] has in it and embedded sort of card view, [00:05:26] but it doesn't look like that. [00:05:27] So I wonder if they started [00:05:29] fresh with the new [00:05:29] one [00:05:32] or different teams managing it. [00:05:34] Although they are keeping [00:05:35] this one's semi up to [00:05:36] date with not as much detail, [00:05:39] but maybe just a filtered, [00:05:42] maybe it's like only like [00:05:44] this one probably is only the top, [00:05:48] you know, big changes. [00:05:49] And then the one day post [00:05:50] in the community might be like [00:05:51] every little [00:05:53] every little change that they make. Yeah, [00:05:55] so they must have like, yeah, [00:05:57] big and small [00:05:58] because it looks similar. [00:05:59] They've got similar [00:06:00] items there [00:06:01] I know I was there, so all right, [00:06:03] so what's new for September [00:06:05] that you guys like? [00:06:07] Well, we're gonna go over time line. So, [00:06:12] Yep, that's the Big one. [00:06:13] So we'll be talking about that. [00:06:16] Then the other big one was the [00:06:19] automation ui revamp [00:06:21] and then I've been gone for a while, [00:06:23] so I don't know if you guys have talked [00:06:24] about this yet. I just saw that they had [00:06:27] the scripting functions available and [00:06:30] new scripting functions available [00:06:33] and there select record a sync and that is [00:06:35] huge. That is like so helpful. [00:06:37] I've been re factoring [00:06:39] like tons of scripts [00:06:40] because of that. [00:06:41] Yeah, I think that one might [00:06:43] be my favorite, [00:06:44] it's just such a nice optimization [00:06:45] thing. It's more optimized [00:06:48] for automation scripting [00:06:49] than the scripting [00:06:50] block. But I mean that's [00:06:52] where you would want, [00:06:54] you would want the atomization [00:06:56] to be much more efficient [00:06:58] than it was because [00:06:59] you're not there to babysit. [00:07:01] Right. Yeah. [00:07:02] Yeah. [00:07:03] Yeah that's a good one. [00:07:04] We yeah we did go through that. [00:07:06] You can check previous [00:07:07] episodes if you want to learn [00:07:09] more about that. We dove into that one. [00:07:12] smaller ones I guess. [00:07:15] Internet explorer, deprecated, 11 [00:07:20] looks like IOS apps updated. [00:07:24] Recently opened. [00:07:26] Oh yeah they change the base ID. [00:07:28] So now the URLs [00:07:29] have the base ID in the URL [00:07:32] I wonder what the [00:07:33] reasoning behind that was. [00:07:35] I think they said it makes [00:07:37] it easier to troubleshoot. [00:07:40] Because if you like give someone, [00:07:43] you know you're URL to a table, [00:07:46] it comes with it now, the base ID [00:07:49] so [00:07:50] if Airtable support needs [00:07:52] to do any kind of like [00:07:54] going in and looking at stuff [00:07:55] under the hood, [00:07:56] they know precisely where it is. [00:07:58] And I guess if you're doing [00:08:01] something with scripts where you need to [00:08:07] sync in between bases [00:08:09] where the regular Airtable [00:08:11] sync is insufficient. [00:08:12] Having the base ID inside of the record [00:08:15] URL a was pretty useful [00:08:19] interesting. [00:08:20] And does that, this might be a [00:08:22] stupid question but [00:08:23] if you have existing links out [00:08:25] in circulation, like do those still work, [00:08:27] do they automatically get that added [00:08:29] in after? Yeah. Okay. We redirect, [00:08:33] yep. So yeah and hopefully [00:08:35] that continues where it's [00:08:36] smart enough to do the [00:08:38] redirect. [00:08:39] Hopefully it's not just temporary. [00:08:43] Yeah. And I don't know [00:08:45] if people knew this, [00:08:46] but even before they made this [00:08:47] change, if you put the app [00:08:49] ID in the URL [00:08:51] it knew how to find that base. [00:08:53] And then it used to just [00:08:55] redirect to the first table [00:08:57] and but it didn't understand [00:09:00] that app ID and the URL before. [00:09:04] So that's good. [00:09:06] And then git hub, [00:09:08] looks like external source, [00:09:11] maybe some developers are using that. [00:09:13] I use git hub but I don't really have a [00:09:15] need to bring that info [00:09:17] into Airtable at least not now. So [00:09:20] maybe somebody does [00:09:22] that looks like all the major ones, [00:09:26] android [00:09:28] looks like they updated android. [00:09:32] I think this one [00:09:34] similar to that one. [00:09:36] This one might be for apps [00:09:37] because you can do it from [00:09:39] scripting and from the [00:09:41] app development as well. [00:09:43] So that might be associated with the [00:09:46] it looks like it's kind [00:09:48] of a duplicate. But [00:09:50] anyway, although I don't believe [00:09:53] you can do it on the [00:09:54] API so that's a little [00:09:55] misleading. You can't [00:09:57] you can't do this from the API. [00:09:59] Yeah they need to adjust [00:10:01] their tags. Yeah. [00:10:03] Different APIs [00:10:03] and they should be specific. [00:10:07] Yeah, on the I guess [00:10:09] on the enterprise API [00:10:12] you can so maybe that is semi [00:10:17] relevant so [00:10:19] All right, very good. Moving on. [00:10:22] I don't think there's anything [00:10:25] much there. [00:10:28] Oh yeah this was just the [00:10:30] automations, so they talk about this [00:10:34] that they increased it. [00:10:36] I saw interesting feedback. [00:10:37] Some people loved it. [00:10:38] Some people actually [00:10:40] were not fans of the change [00:10:41] to the automation. [00:10:42] Yeah, [00:10:44] I can see why not liking it right [00:10:46] now because they didn't add any new [00:10:48] functionality. So the number one [00:10:51] criticism is you can't see your based at [00:10:53] anymore. So if you were [00:10:55] you know building automations [00:10:57] and looking back and forth [00:10:58] between what your tables [00:11:00] are and how things are laid out, [00:11:02] you can't really do that anymore, [00:11:04] you have to click back [00:11:05] and then look at stuff [00:11:06] and go back in so that's kind of [00:11:07] cumbersome. But [00:11:09] I mean one could speculate [00:11:12] that they gave us more screen real estate [00:11:15] in anticipation of other automation [00:11:18] enhancements coming down the pipeline. [00:11:20] And when those are [00:11:22] in place that I think it's [00:11:23] going to be more positive than [00:11:25] negative in the interim when [00:11:27] you know, the only thing [00:11:29] that has changed is just wider, [00:11:30] I could see it being [00:11:31] annoying. [00:11:32] Yeah, if you make it not [00:11:34] full screen to you kind of [00:11:36] have to like arrow between [00:11:38] each step at the top which is [00:11:40] kind of like being able to scroll [00:11:43] is just annoying to have [00:11:44] to like click again. [00:11:45] Yeah. [00:11:46] Yeah I was going to mention yeah, [00:11:48] so there is that full screen [00:11:50] icon so you can [00:11:50] click on that, like Jordan mentions [00:11:53] literally never occurred to me. [00:11:55] I mean even if you do do that, [00:11:58] it's still not ideal. [00:12:00] Like I do like the old [00:12:01] editor better, I mean I think it [00:12:04] helps people to understand [00:12:05] what's happening [00:12:06] with the automation with the new, [00:12:08] it reminds me more of [00:12:10] Integromat in a way, like maps it out. [00:12:12] Yeah, I think it will eventually [00:12:15] be a vertical Integromat [00:12:16] sort of thing. [00:12:17] Integromat is horizontal [00:12:19] with branching pathways. [00:12:21] I think we're probably [00:12:22] going to get a vertical branching [00:12:24] pathway at some point but they haven't [00:12:26] announced that that's just my [00:12:29] me inferring from [00:12:31] why else would they give [00:12:33] you so much space? Right, [00:12:36] sorry, go ahead. [00:12:37] I was gonna say I doubt they [00:12:39] get to the full blown ui that [00:12:41] Integromat has of, you know, [00:12:43] really getting advanced but yeah, [00:12:45] I think vertical branching, [00:12:47] I don't think you'll necessarily [00:12:49] be able to draw [00:12:50] draw paths between. [00:12:52] I think it'll just be like [00:12:53] thinking of think of an or [00:12:55] chart where you know, [00:12:57] you'll just have things [00:12:58] that are like nested [00:13:00] so you, I don't know. [00:13:01] That's what I'm anticipating [00:13:03] no clue if that will ever [00:13:04] happen or when [00:13:06] that makes sense. I mean it looks like [00:13:08] kind of what that image is [00:13:10] on their side bar right now [00:13:12] on that little screen shot [00:13:14] but [00:13:16] I was also going to say [00:13:17] what would be really cool [00:13:18] is if they could have like not [00:13:20] even just branching pathway, [00:13:21] but just like filter step, [00:13:23] like house Zapier has [00:13:24] like only continue if [00:13:26] like that would be great. [00:13:28] Yeah, part of the new ui [00:13:30] you can only have one [00:13:32] group of steps, but it's sort of groups [00:13:35] steps together with the three little [00:13:37] icons up at the top. [00:13:39] I'm anticipating that might [00:13:41] include like a condition, [00:13:43] things similar to how like the [00:13:44] find record to sort of [00:13:46] set up there might be [00:13:47] like you said [00:13:48] an option now to [00:13:50] only [00:13:52] only [00:13:53] do this group if yada yada yada [00:13:56] that might be what we're doing. Yeah. [00:14:00] Yeah, very cool. [00:14:02] All right, let's move on to Reddit. [00:14:05] I had one item from Reddit that I thought [00:14:08] was worth discussion [00:14:11] discussing, talking about duplicates [00:14:14] in the primary key field, [00:14:16] you know, and this I've seen [00:14:18] this come in quite a bit. [00:14:21] you kind of get different opinions, [00:14:23] people that come from [00:14:24] the spreadsheet world, [00:14:25] you know, there's no concept [00:14:27] of having unique identifiers [00:14:29] in your primary key. [00:14:30] If you're coming from the [00:14:32] database world, that is very common. [00:14:34] That your primary key is unique. [00:14:37] And so, in Airtable, [00:14:38] you kind of get this mix where [00:14:41] it's the primary key [00:14:43] and I believe somebody mentions this, [00:14:46] yeah. Rucksack, William talks about how [00:14:50] what Airtable shows as your primary key [00:14:53] isn't really the primary key as [00:14:55] far as Airtable is concerned. Right? [00:14:58] So there's the record ID which is unique [00:15:00] in your primary key [00:15:02] and then what you display [00:15:03] as your main field your first [00:15:05] column [00:15:07] can does not need to be unique. [00:15:11] Any thoughts there on how [00:15:13] to deal with the primary key? [00:15:16] Well [00:15:19] I mean [00:15:21] you could [00:15:22] you could just [00:15:24] manually go in and change [00:15:26] your primary field into a formula [00:15:29] and make the formula [00:15:30] record ID [00:15:33] there's a formula function [00:15:35] to get the record IDs but you had [00:15:37] something you have to do [00:15:38] for each of your tables. [00:15:40] It's not the default. [00:15:41] Yeah. [00:15:43] And somebody else. [00:15:44] Yeah go ahead. [00:15:46] I was just going to say [00:15:47] I have a client that does, [00:15:48] I think exactly what that [00:15:49] person is suggesting. [00:15:51] They use an auto number. [00:15:52] So like they have their regular [00:15:54] formula field for their [00:15:56] primary key and then they just [00:15:59] concatenate the auto number [00:16:01] on to the end. [00:16:02] And like that obviously will work. [00:16:03] You'll have no duplicates at all. [00:16:05] But I think a lot of people [00:16:06] can get confused [00:16:07] by looking at the number on [00:16:08] the end and just being like [00:16:09] what's this random [00:16:10] number for? [00:16:11] Like why does this have [00:16:13] a seven on the end? [00:16:14] And it's a task name. [00:16:15] I don't know something like that. [00:16:17] But there's pros and cons I think if [00:16:19] you set up your primary key in such a way [00:16:25] like you can manage to get it [00:16:27] all unique without having to [00:16:29] use the record ID. [00:16:30] Yeah. [00:16:33] And you could also use the Dedupe App [00:16:38] to help you find duplicates in the [00:16:42] primary key [00:16:44] Amplify, our app, also I can't remember [00:16:46] if it's the version that's out or the [00:16:48] version that's coming [00:16:50] will help you find duplicates. [00:16:52] It will signal if a [00:16:54] record [00:16:55] is a duplicate and that's across [00:16:57] all fields not just the primary fields [00:17:01] other ways to work around that. [00:17:05] And then this one is cool [00:17:07] I don't use the rep function [00:17:08] too much but that's a [00:17:09] good use case for it so that you've got [00:17:12] leading zeros so that you've [00:17:14] always have the same number [00:17:16] size item. [00:17:19] I think that's the only instance [00:17:21] where I've ever used the [00:17:23] repeat function is [00:17:23] to create leading zeros because I mean [00:17:27] or if I'm doing [00:17:30] a formula field that concatenates [00:17:32] a bunch of different fields together and [00:17:33] includes like a [00:17:35] you know how in like [00:17:36] certain documents you might [00:17:38] have like asterisks that's like [00:17:39] a line break. You know, instead of [00:17:41] typing out an asterisk 20 times [00:17:43] I would repeat the [00:17:44] asterisk 20 times. [00:17:45] But I think that is the only [00:17:47] two times I've ever used [00:17:48] the function. [00:17:50] I use it a lot for the [00:17:52] leading zeros but I also [00:17:54] recently I've been using it a lot. [00:17:56] I made like a satisfaction par. [00:17:58] So like, I like, you get like [00:18:01] Say you set it like 10 [00:18:03] and then you round whatever [00:18:05] the value of satisfaction is [00:18:07] to an integer and then [00:18:08] so you can repeat however [00:18:10] many green boxes followed by [00:18:11] however many gray boxes [00:18:14] for example [00:18:15] it looks really nice. Yeah. [00:18:18] Yeah I remember I think, Alli, [00:18:20] you did a demo of one of [00:18:21] your bases that had lots [00:18:22] of green or black bars [00:18:24] or something to highlight values. [00:18:27] Yeah that's a good use [00:18:29] case. [00:18:30] Very cool. All right let's move [00:18:32] on to Facebook community [00:18:34] now that Facebook is [00:18:35] back up. [00:18:37] Hopefully the Airtable group [00:18:40] there survived yesterday [00:18:42] and one thing, so here's our friend [00:18:46] Chris he was written up in maker pad [00:18:50] which is a cool community [00:18:53] of no code makers [00:18:55] and actually was acquired [00:18:57] by by Zapier a month or two ago. [00:19:00] And so they wrote up an article [00:19:02] and Chris, so I thought that was worth [00:19:04] highlighting. [00:19:06] Go check that out. [00:19:09] Let's see what's next [00:19:11] looks like it's all Chris today [00:19:14] this is just highlighting the [00:19:17] the view interest, [00:19:19] this is where people were [00:19:24] No never mind. [00:19:25] That was something different. [00:19:27] So we'll get into this. [00:19:28] Maybe we'll save the discussion [00:19:30] for this on when [00:19:31] Alli discusses this [00:19:32] kind of the pros and cons [00:19:34] and make sure, Alli, you compare it to [00:19:36] Gant because I think that's a [00:19:38] common question that people have [00:19:40] there. So [00:19:43] Okay [00:19:47] okay so updating multiple records [00:19:51] within the automation [00:19:54] seems like this one comes [00:19:56] up quite a bit. [00:19:57] What are the workarounds if you're [00:19:59] trying in an automation [00:20:01] to update multiple records? [00:20:03] A script. [00:20:06] You could well, [00:20:10] if technically [00:20:13] if you are dealing, [00:20:15] if you have a table of all [00:20:18] of the records that you [00:20:20] want to update and then [00:20:22] some other table, if you update [00:20:25] a single record in Table two [00:20:27] that links to all of the records [00:20:31] you want to update [00:20:32] in table one [00:20:33] you could use that update [00:20:36] to the reverse link [00:20:37] field to trigger another [00:20:39] automation that will run individually. [00:20:42] If you set the trigger to [00:20:44] when record updated [00:20:45] and then the link field [00:20:46] then you can update each [00:20:49] individual record with something. [00:20:52] But that's going to you know [00:20:54] if you were trying to update [00:20:56] 10 records, you're [00:20:57] wasting 11 automation runs [00:21:00] one, to link them to something [00:21:02] and then 10 to update [00:21:04] each one individually. [00:21:06] The update record step [00:21:07] is singular because it only [00:21:09] updates a single record. [00:21:12] Yeah. Yeah I have a couple [00:21:14] of use cases like that [00:21:16] where I had a client [00:21:17] that wanted to send out to [00:21:19] each individual person in the database, [00:21:22] a personalized email [00:21:24] with like only their records. [00:21:27] So we have them all each [00:21:28] person linked to a junction table [00:21:30] that's just a [00:21:31] summary table. Just one record. [00:21:33] So every person is linked to that [00:21:34] we have one automation [00:21:36] that checks the box on the summary record [00:21:39] and then it checks the box [00:21:40] on all of the people. [00:21:41] So it's like at a particular [00:21:42] time the first ones at a scheduled time [00:21:45] checks the box. [00:21:46] And then the other one is [00:21:47] an email that's sent out based on that [00:21:49] box being checked. [00:21:51] Then we have another one [00:21:52] that one that un checks it. [00:21:53] The other approach you could do [00:21:56] if you're not working with [00:21:59] linked records is [00:22:03] well I guess you'd have [00:22:05] to loop through it. [00:22:07] I was thinking you could send it [00:22:09] to [00:22:11] a web hook and start a new automation [00:22:13] off of a web hook, [00:22:15] but you would still need [00:22:16] to loop through each one [00:22:17] to send each one to the web hook. [00:22:20] So you you still probably [00:22:22] need a script there as well. So [00:22:25] I think if there's a way you [00:22:27] could do that. I don't think you could [00:22:30] call multiple web books without [00:22:33] looping through them. So yeah I guess [00:22:36] if you really want to do this, [00:22:38] learn a little bit of [00:22:39] a little bit of scripting [00:22:40] to be able to to do a quick loop. [00:22:45] I think it would come in [00:22:46] handy using having that skill set [00:22:49] but yeah those are good [00:22:50] workarounds in the meantime. [00:22:53] All right. Next one. [00:22:59] so this one is from Jeremy [00:23:02] our friend Jeremy, [00:23:03] looks like Alli, you answered [00:23:05] his [00:23:07] So he's doing some coding, [00:23:09] so this is a scripting question. [00:23:12] Getting some errors. [00:23:13] and the errors he's getting is [00:23:17] invalid self, invalid cell value [00:23:19] for field operation. [00:23:21] Could not find a choice [00:23:22] with that ID or name [00:23:23] remember this one Alli? [00:23:25] Yeah. [00:23:26] So it's when you're trying to feed [00:23:30] a value into update or create a record [00:23:33] with a single select field [00:23:35] all you need to do is just [00:23:37] have the name like to [00:23:38] feed it an object with just the [00:23:39] name property. [00:23:41] I think if you try and feed it an [00:23:44] ID and a name it will work [00:23:46] as long as it both matches of course. [00:23:50] But you really only need the name [00:23:53] as a string [00:23:54] so you can kind of simplify it. [00:23:56] So my advice is just to take [00:23:59] for the operation field [00:24:01] to wrap that entire line [00:24:03] that he already has in there [00:24:04] with you know squiggly brackets, [00:24:07] name, colon and then also change it to get [00:24:10] that cell value as string. [00:24:12] So that way he's got just the name portion [00:24:16] of that object. [00:24:18] Yeah. [00:24:19] Yeah. So I guess so looking at this, [00:24:21] I'm assuming he's working within the same [00:24:23] table so he's just trying to pass [00:24:27] one operation into another. [00:24:31] And so that's not working [00:24:33] right [00:24:35] interesting. It's the same field. [00:24:37] So, it's funny. I think this is actually [00:24:40] modified from a piece of script [00:24:42] that I wrote a while ago. [00:24:44] It takes tasks that [00:24:46] are on a template at the tasks table has [00:24:49] a template view and regular task. [00:24:52] So it basically just looks [00:24:53] at the templates [00:24:54] and duplicates them on the same table [00:24:56] without the template box checked. [00:25:00] So he's just trying to duplicate [00:25:02] a record on the same table [00:25:04] and create creating a new [00:25:05] record based on a template. [00:25:07] Yeah. [00:25:08] There are certain fields that can [00:25:11] be passed the entire cell value like [00:25:14] normal. And some of them [00:25:15] have to be fed as specific [00:25:17] format. So like all of the number [00:25:19] fields you can pass [00:25:21] whatever the cell value [00:25:22] is because it's a simple number [00:25:24] and same thing with all [00:25:26] of the date fields that [00:25:27] are editable with single select. [00:25:30] I think it's either name or ID [00:25:32] if you try to pass in the [00:25:34] color property, it gets confused. [00:25:36] And with multi select, [00:25:39] it's the same thing [00:25:40] but an array of options. [00:25:45] That's pretty disappointing [00:25:47] that you can't just copy [00:25:48] one value into the next. [00:25:50] That you have to [00:25:51] strip it down. [00:25:53] I'm sure someone somewhere [00:25:56] has made a function that [00:25:58] based on whatever the [00:26:01] original format of the field is and [00:26:04] you know, returns what and [00:26:07] what [00:26:08] editable [00:26:09] you know, version of what [00:26:11] that field value is [00:26:13] is I'm sure someone's done it [00:26:15] because it's routine every time [00:26:19] I did that when when scripting came out, [00:26:21] there's a function out there somewhere [00:26:23] and I know it's on BuiltOnAir that [00:26:26] it will convert any value into [00:26:29] your destination field value format. [00:26:33] And so I actually don't use it very often. [00:26:36] I should the pain is it's [00:26:38] hard to reproduce code [00:26:40] and have to copy it everywhere [00:26:42] into every script. [00:26:43] Yeah [00:26:44] I almost wish that they would [00:26:46] give you like the option [00:26:48] to start like a scripting [00:26:49] template that like whenever [00:26:51] you add the the app [00:26:52] it just starts with that because [00:26:54] I constantly every time I add the [00:26:56] scripting app I have to [00:26:57] go and copy like the [00:26:58] template I usually use [00:26:59] with all the functions. And [00:27:01] Yeah [00:27:02] or even the ability to like create [00:27:04] a library of scripts that you could import [00:27:07] and repurpose [00:27:10] or use external libraries. [00:27:13] Yeah there is a workaround [00:27:15] for that On2Air scripts [00:27:17] if you're a developer looking [00:27:18] for a way to manage all of that. [00:27:20] It's not ideal because it is [00:27:22] external to Airtable but it does help you [00:27:25] repurpose code [00:27:27] and use external libraries. So [00:27:30] that is an option out there. [00:27:33] Cool. The other thing I was [00:27:35] thinking when I first saw this question [00:27:36] was I was thinking he was trying [00:27:39] to create an option that didn't exist. [00:27:42] And so in that use case [00:27:44] if you're trying to add a new [00:27:47] option value, [00:27:48] you need to create it first before [00:27:50] you assign it to a field value [00:27:53] which you can now do, and [00:27:56] but the part is you don't [00:27:58] you have to like have [00:28:00] a function that checks [00:28:01] to see if that value exists first [00:28:04] and then if it doesn't [00:28:05] create it, and then [00:28:07] allow you to assign it, right? [00:28:09] Is there a thing in the apps API [00:28:13] an option for allow create new option. [00:28:18] So you don't have to have [00:28:20] that function above it [00:28:22] that checks whether that [00:28:23] option exists first? [00:28:25] Or did I make that up? [00:28:26] I feel like that's a thing [00:28:27] somewhere in Airtable's coding [00:28:29] I think I don't, [00:28:31] I think that checks permissions, right? [00:28:34] Not whether the field name [00:28:35] exists, [00:28:36] I'm going to look that up [00:28:38] because I feel like I saw that somewhere. [00:28:42] Yeah, [00:28:44] I don't remember that. [00:28:48] But yeah that is kind of a [00:28:50] thing to be aware of [00:28:51] if you're dealing with new [00:28:53] records. Now the API is nice [00:28:55] because the API will, [00:28:56] I don't know if it's good or [00:28:58] bad depending on what you need [00:29:00] but it will automatically [00:29:02] create new fields if [00:29:03] you pass in the value [00:29:05] that doesn't already exist. So via the API [00:29:09] the rest API you can create fields [00:29:11] on the fly but in scripting you have to [00:29:15] create them first before you [00:29:18] use them. [00:29:22] All right. Last one before [00:29:25] we move on is I was kind of looking for [00:29:30] something to watch the other night [00:29:33] and came across. I'm a fan of Howie [00:29:37] the CEO of Airtable, [00:29:39] if you ever watched him, [00:29:41] he's an impressive guy and I love [00:29:43] hearing him [00:29:44] talk about the story of Airtable. [00:29:46] And so it's faster, [00:29:47] this is a little bit old. [00:29:49] It's from last year [00:29:51] but he talks about, [00:29:53] it's an interview about an hour [00:29:55] long with Howie and talks [00:29:57] about how Airtable began, [00:29:59] what he sees as the future. [00:30:01] And I just love hearing [00:30:03] him tell the vision of [00:30:05] you know, he talks about Airtable. [00:30:07] A lot of people wanted [00:30:08] him to build Airtable [00:30:10] as a vertical CRM type platform [00:30:12] and pick a vertical like sales or whatnot. [00:30:14] And he was adamant [00:30:16] that it needed to be horizontal [00:30:18] to really be a true platform [00:30:20] that could be built on top of [00:30:23] and he stuck to his principles there [00:30:26] and his belief in really building [00:30:28] Airtable as a true platform [00:30:31] that can be built on top [00:30:33] of for any use case. [00:30:34] And so it's cool to hear that story. [00:30:37] My goal is to get Howie [00:30:39] on our podcast someday. [00:30:41] So that's our goal. [00:30:42] Howie If you're listening [00:30:43] please come on. [00:30:44] We'd love to have you [00:30:45] or if anybody working at Airtable [00:30:48] could make that happen. [00:30:50] That's our goal. [00:30:53] To get Howie come on. [00:30:54] So if you want to watch a video with that, [00:30:56] we'll have the link in the show notes, [00:30:59] on Saster's website for an interview [00:31:01] with Howie. [00:31:04] All right. Did you find anything Kamille? [00:31:07] You're still looking? [00:31:08] No, I was very wrong. [00:31:10] What I was remembering [00:31:12] was there's an option [00:31:14] for when you're updating the field options [00:31:17] of a single or multi select, [00:31:20] there is a [00:31:21] boolean you can pass for [00:31:23] allowing you to delete [00:31:24] a choice from the field [00:31:25] options, which is not at all [00:31:27] what I was trying to remember. So [00:31:30] you know, never mind. [00:31:32] Very good. [00:31:33] All right, let's move on. [00:31:35] We're going to do a spotlight on On2Air. [00:31:37] It's an all in one tool kit [00:31:38] to run your business on Airtable. [00:31:40] It's a suite of apps that do [00:31:42] a variety of things. [00:31:43] And in today's spotlight we're [00:31:45] going to give you some [00:31:47] behind the scenes of how [00:31:48] we run this podcast using On2Air [00:31:51] and in particular one [00:31:52] of the new features that's [00:31:54] recently been released with our [00:31:56] On2Air actions product, which is a [00:31:59] tool to run automations [00:32:02] on top of Airtable. [00:32:04] And we've recently integrated [00:32:06] with Google suite and Google docs, [00:32:09] Google sheets and Google slides. [00:32:12] So what I want to show is [00:32:14] how we build these images, [00:32:16] where we're actually [00:32:18] inserting dynamic data [00:32:20] into a Google slide and [00:32:22] converting it to an image [00:32:24] and then automatically saving it [00:32:26] back as an attachment into Airtable. [00:32:29] So you see these slides we have here, [00:32:32] they have dynamic data that's coming off [00:32:34] of information that we're populating [00:32:37] into Airtable and then updating that. [00:32:40] So it's fairly simple. [00:32:42] What you first have to do [00:32:44] is so we have our structure [00:32:47] is we have different [00:32:48] segments for each show [00:32:50] and each segment has a different type. [00:32:53] So we have a variety of different [00:32:54] segment types that we can run. [00:32:56] And each segment type, [00:32:58] if I look on the segment table [00:33:00] has a link to a single [00:33:02] Google slide document. [00:33:04] If I open one up, it will open up in [00:33:06] Google slides and it's just a single [00:33:09] slide that has the design that you want [00:33:13] and then it just has placeholder [00:33:15] values here like this, [00:33:17] that is where we will [00:33:19] update it from information [00:33:22] from our Airtable. So [00:33:26] what you have to do is [00:33:28] you just simply set this up [00:33:30] in our Airtable [00:33:32] configuration, you just find the [00:33:36] URL that you're looking for [00:33:39] and it can be something that you select [00:33:42] from from your Google drive. [00:33:43] I'm not going to go through that, [00:33:45] but I do want to showcase [00:33:47] some of the advanced [00:33:48] functionality that you can [00:33:49] do with it. [00:33:50] The standard approach would just be, [00:33:53] this is the field name [00:33:54] if you see here, we have vars.title [00:33:57] for our show because each segment [00:34:00] has different attributes associated with [00:34:04] each segment type. [00:34:05] I actually utilize the JSON language [00:34:09] which if you're a developer, [00:34:12] if you've done any javascript [00:34:14] you're likely familiar with with JSON [00:34:16] and it's pretty much a simple [00:34:18] way to structure data [00:34:20] and I store JSON in a long text field [00:34:24] and there's a, and the [00:34:26] variable name is vars [00:34:27] and so our application is smart [00:34:30] enough to know that if you have [00:34:32] this period it knows [00:34:33] to look inside of that, [00:34:34] JSON object to get the title [00:34:37] and you can edit that just [00:34:40] directly inside of the note field. [00:34:43] If I go back to our segment [00:34:45] or what I do is we actually [00:34:48] use our On2Air Amplify [00:34:50] product which has a JSON [00:34:52] editor that makes it very [00:34:55] easy to do it. So if here you see [00:34:57] our JSON, this is what JSON [00:34:59] would look like and you would just need to [00:35:01] update these values [00:35:03] with whatever you want [00:35:05] and then this information will get [00:35:07] pushed into the slide [00:35:09] or if you need a better approach [00:35:12] our Amplify product, [00:35:14] you can use our JSON editor [00:35:17] and it makes it really easy [00:35:18] to just automatically update [00:35:20] the values inside your [00:35:21] JSON right there. So [00:35:23] that functionality is all available [00:35:26] either using our On2Air actions product [00:35:29] in conjunction with our Amplify [00:35:31] to make it easy to update [00:35:33] your JSON values and [00:35:34] then to run it, [00:35:36] you can trigger it in many different ways, [00:35:39] how I trigger this is off of a script. [00:35:42] So we have a script that [00:35:45] when you configure it inside [00:35:47] of On2Air and you go to the installation, [00:35:49] you can just click on Airtable script [00:35:52] and it will actually give you the code [00:35:54] that you just simply copy [00:35:56] to your clipboard [00:35:57] and then paste into your script and [00:35:59] it will make it easy to call [00:36:01] that function and initiate it [00:36:03] and you pass it the record ID [00:36:05] of any records that you want [00:36:07] to process it. [00:36:08] So I have a script that will run and [00:36:11] it will automatically [00:36:14] why don't we do it, make sure [00:36:17] view here, so I'll do this [00:36:19] and run it and you'll see [00:36:21] it will actually update all [00:36:22] of these images with [00:36:24] new ones, [00:36:25] I delete these just so they go away. [00:36:29] And then as this runs [00:36:30] it will populate, the script [00:36:32] does a lot more but it also [00:36:34] calls the that that script code. [00:36:36] And then you see here [00:36:38] it's populating with new [00:36:39] images that are images generated [00:36:43] from the Google slide specific to each [00:36:46] segment type. [00:36:47] And then if there is dynamic data [00:36:50] that will get populated in there [00:36:54] and I'll look at this one, [00:36:58] maybe see it got populated [00:37:00] with data from our from that record. [00:37:02] So [00:37:03] great tool for doing any marketing. [00:37:05] There's a lot of tools out there that are [00:37:08] similar but this one stays within Airtable [00:37:11] and also leverages Google slides [00:37:13] which is very powerful way to generate. [00:37:17] You can do brochures [00:37:19] more advanced pages, [00:37:21] documents, anything within Google slide [00:37:24] And we also have functionality [00:37:26] for supporting Google sheets [00:37:28] and Google docs as [00:37:29] well with similar functionality. So [00:37:32] check that out at on2air.com [00:37:36] so that's our highlight. [00:37:39] Let me get back to [00:37:41] Our auto generated [00:37:43] and we'll look at the first one [00:37:45] so timeline, Alli put your screen [00:37:47] up. [00:37:48] All right [00:37:52] All right, are we good here? [00:37:54] You can see my screen? Yep. [00:37:56] All right so this is just a sample base [00:38:03] copied from my family business [00:38:04] and this is actually something [00:38:06] that they do use [00:38:08] pretty much daily [00:38:09] and so it's a PTO request system. [00:38:12] so paid time off. [00:38:14] This was the best I could find [00:38:17] for a good use case for timeline view but [00:38:20] there's tons of them as you can imagine. [00:38:24] So right now we can look [00:38:27] at things as a calendar view. [00:38:30] So this is just everybody [00:38:32] that's off this week, [00:38:34] not in the office [00:38:36] and the color is by location [00:38:40] but our new view here [00:38:45] has [00:38:45] some really cool options [00:38:47] to do with look and feel. [00:38:50] So the first thing it's gonna do [00:38:51] it's gonna ask you [00:38:52] just like it would on the [00:38:53] calendar view or the Gant view [00:38:55] to pick two dates. [00:38:57] So you could do I think you [00:38:59] could actually just do one [00:39:01] date maybe to just have it, [00:39:03] yep that let me, [00:39:04] yeah cool, so you could just do one [00:39:07] one thing to note that I did notice [00:39:09] is you can't it does not let you pick [00:39:12] two dates if one has a time displayed [00:39:16] and the other one does not [00:39:18] so they have to be formatted [00:39:19] exactly the same like [00:39:20] they both have to have [00:39:22] the time or they both [00:39:24] can't have the time, yep [00:39:26] that's how my Master Calendar [00:39:27] app is set up. I did the same thing. [00:39:29] Excellent. [00:39:31] I was like whoa weird. [00:39:33] I mean I guess it makes sense. [00:39:36] And then you can pick a grouping. [00:39:40] So let's just go with [00:39:42] location for this one, [00:39:45] you can see it added my [00:39:47] grouping on the side, [00:39:48] I can pick another field if I want, [00:39:50] but this is the part that really [00:39:52] intrigues me the most and I think a lot of [00:39:55] other people too, [00:39:56] I'm really excited about this [00:39:58] so they allow you to pick [00:40:00] different labels for [00:40:01] the actual request name. [00:40:03] So [00:40:04] if you could do this on the calendar [00:40:06] view which hopefully you will be able to [00:40:08] soon, that would be really cool. [00:40:10] So you know, I could take out [00:40:12] this entire request name [00:40:14] and let's put in like [00:40:17] employee initials, location [00:40:23] and I don't know department [00:40:26] title, this is like literally exactly [00:40:29] what my original name was anyways but just [00:40:31] to demonstrate and you [00:40:33] can start to like bold things [00:40:35] or make it italic [00:40:38] or underlined [00:40:42] and I think that's really, really cool [00:40:44] and kind of makes me excited for what [00:40:46] comes in the future [00:40:47] with this kind of functionality [00:40:50] and then [00:40:52] you can color it [00:40:54] and just like in the [00:40:55] calendar view it'll color it [00:40:57] the whole [00:41:01] the whole record will get colored [00:41:04] so that's a bad example, but let me copy [00:41:10] colors from while you're here [00:41:14] on the copy view customization thing, [00:41:18] I notice obviously it makes sense [00:41:20] because it's now a thing [00:41:22] but label formatting [00:41:23] and label orientation [00:41:25] and we can Yeah, I just hope [00:41:27] that that's a universal thing [00:41:29] that they are going [00:41:30] to add to the other view types. [00:41:33] Like I get not maybe [00:41:34] grid view but all of the other views, [00:41:37] it would be nice if you could. [00:41:39] That is so cool. Yeah. [00:41:41] Absolutely, and record height. [00:41:43] That's a new one too, [00:41:45] orientation. [00:41:47] Yeah. So if you [00:41:49] make the row height [00:41:52] in your just taller. Whoa, [00:41:56] and then change the vertical. [00:41:58] That's what it does. [00:42:00] That is so cool. [00:42:01] I hadn't played with that yet. [00:42:03] Oh, that's so exciting. [00:42:04] Yeah, if you make it too short, [00:42:06] it'll like warn you [00:42:07] that like it's not gonna, [00:42:09] you know, make it vertical. [00:42:10] But once you give [00:42:11] it a little bit of space, [00:42:15] Yeah, that looks way better. [00:42:18] Cool. You know, I haven't tested this. [00:42:21] If you have a rich text field [00:42:23] and it has formatting [00:42:25] in the rich text field [00:42:27] and then you use that as your label. [00:42:29] Will the rich text carry over? [00:42:31] Let's try it. [00:42:47] And [00:42:48] well, I guess we'll have [00:42:50] to find that particular request. [00:42:52] Let's see. [00:43:03] It's interesting, you can [00:43:06] I bet it doesn't work. [00:43:14] That doesn't help. [00:43:16] Yeah. [00:43:18] There. [00:43:19] Okay, but let's hide [00:43:21] all the rest of those. [00:43:29] No, no. [00:43:31] Oh well, interesting. [00:43:35] It's just getting the string value. [00:43:38] Yeah. [00:43:40] All right. [00:43:41] Either way. [00:43:43] It is pretty cool. [00:43:47] I I also like that you can [00:43:50] they've got a lot more options than [00:43:53] like the calendar view. [00:43:55] Of course I think Gant charts [00:43:57] go up to five years as [00:43:59] well, [00:44:00] but you could look at it [00:44:02] like the whole year, [00:44:03] how often things are happening, [00:44:06] quarter, [00:44:08] and like Dan mentioned earlier, [00:44:10] a lot of people wonder [00:44:11] what the difference is, [00:44:12] the key differences between [00:44:14] the timeline and the Gant chart [00:44:16] and the timeline, [00:44:18] in my opinion, [00:44:19] I'm sure a lot of people have different [00:44:21] pros and cons to each, [00:44:23] but I think the namely [00:44:24] the biggest difference is timeline [00:44:26] is just going to be, you know, [00:44:28] straight up start end, no milestones, [00:44:30] no dependencies, [00:44:32] etcetera. But a Gant chart [00:44:34] will actually map out for you [00:44:36] like if this person [00:44:37] can't go on vacation [00:44:38] until this person came home, [00:44:40] it would show you that [00:44:41] dependency. [00:44:44] But I don't have any of those [00:44:45] linking relationships [00:44:46] set up in this space. [00:44:50] but we can just see [00:44:51] what it would look like here. [00:44:57] Yeah. It's also [00:45:01] people talking about getting [00:45:03] single day timelines, right? [00:45:05] Because you can't go [00:45:07] less than a day, [00:45:08] you can't go less than a week, [00:45:10] less than a week. [00:45:11] So you can't yeah, [00:45:12] if you were trying to do [00:45:14] like a conference schedule for [00:45:16] instance and show like, you know, [00:45:19] here's what's happening at 6:00, [00:45:21] here's what's happening [00:45:22] at seven can't really [00:45:23] do that. [00:45:25] So the smallest time [00:45:27] interval you can see a [00:45:29] record occupy is a whole day. [00:45:34] It's not the best but [00:45:37] I agree. Yeah I tried this with [00:45:41] my wedding schedule because [00:45:43] I thought that might be [00:45:44] a good use case for it. [00:45:45] But because it was all on one day [00:45:47] it just looked like this. [00:45:49] Yeah. So you can't really [00:45:51] can't replace like your calendar [00:45:54] right [00:45:57] and I do like the calendar [00:45:59] for being able to do that one day. [00:46:02] Yeah [00:46:04] but [00:46:05] what makes the timeline [00:46:07] so cool in my opinion [00:46:09] is that labeling function [00:46:12] because you could theoretically [00:46:14] share different views [00:46:15] with different labels if you [00:46:18] wanted to [00:46:20] Like have it hidden on [00:46:21] one and not on the other. [00:46:22] Right. [00:46:26] So that's the basic overview. [00:46:28] Very cool. [00:46:29] Alright. Yeah. [00:46:31] Hopefully check that out. And [00:46:33] do they update the app? [00:46:35] I know they added like new features. [00:46:38] Is the app the same as the view? [00:46:41] The app is [00:46:41] available. Oh it's not available anymore, [00:46:45] you can't download it anymore. [00:46:47] If you had an existing timeline app [00:46:49] it's still present in your bases but you [00:46:52] can't add another one [00:46:53] they're depreciating it like [00:46:56] they did with the Gant ones. So [00:46:59] the notion being they're going [00:47:02] to be continuously updating [00:47:04] the views then the [00:47:05] apps are like [00:47:07] yeah. [00:47:09] Yeah because I still feel like [00:47:11] there's a use case [00:47:13] to doing them as apps and [00:47:14] having multiple [00:47:16] within the dashboard. [00:47:18] Yeah I would agree. [00:47:20] I'm of the opinion that they should [00:47:22] make a view app [00:47:24] where it just takes one of your [00:47:26] views and puts it in a window in [00:47:28] a dashboard. You can do that [00:47:30] with the embed app [00:47:31] except you won't be able to edit [00:47:33] records [00:47:34] in it. So if they just [00:47:37] make a little window which [00:47:39] I'm pretty sure they can do. [00:47:41] So that you can embed [00:47:42] any view type. [00:47:43] So before it was Gant in timeline. [00:47:46] But what if you wanted an [00:47:47] editable gallery, or an editable con Bond, [00:47:51] that would be nice [00:47:52] to just replace them [00:47:54] all together with universal [00:47:56] pick one view from your [00:47:58] tables and then [00:48:00] embed it within a dashboard. [00:48:02] Yeah, absolutely agree. [00:48:06] All right. Let's move on Kamille [00:48:08] going to have you take it away, [00:48:10] go through this question. [00:48:12] All right. [00:48:14] I picked this question because [00:48:17] it was sort of an interesting, [00:48:20] it was one of those things [00:48:21] where it was difficult to [00:48:22] ascertain what was going [00:48:23] wrong. So a person had a Airtable [00:48:27] that they were exporting it out as a CSB [00:48:32] and when they were importing [00:48:33] it into Microsoft Excel, [00:48:35] every time they did it, all [00:48:36] of their number and currency fields [00:48:38] would come out as plain text and [00:48:40] Excel wasn't recognizing them [00:48:44] as numbers even though [00:48:46] Airtable did. And so [00:48:50] you know there was a few [00:48:52] different like back end forces [00:48:54] to perhaps why it might [00:48:55] not be out putting [00:48:59] normally and there's a lot of like [00:49:01] trying to convert into [00:49:03] a formula and making [00:49:04] sure that the formula outputs as a text [00:49:06] so I made my own test [00:49:08] and added a number field, [00:49:10] a currency, a formula that was [00:49:12] formatted as a currency, [00:49:14] and a plain text field that was [00:49:16] you know I typed in the [00:49:18] dollar sign in the decimal [00:49:20] and all four of those options [00:49:23] when exported as a CSB [00:49:24] and then opened up in [00:49:26] Microsoft Excel [00:49:27] they were automatically [00:49:29] formatted as numbers. So [00:49:31] from when I attempted the test Excel was [00:49:37] automatically recognizing all four [00:49:39] different options. And so this reminded me [00:49:42] that CSVs don't carry with them [00:49:44] any sort of formatting. So it's not [00:49:47] an Airtable thing. [00:49:49] What Excel is doing when you [00:49:51] hand when you hand it as a CSV [00:49:53] file from anywhere it's guessing [00:49:56] what the appropriate format is. [00:49:58] So that begs the question [00:50:00] what does the original format [00:50:02] looks like? And I believe [00:50:03] it all came down to [00:50:07] a different type of currency formatting. [00:50:09] So like the American way would be [00:50:11] dollar sign, number, period [00:50:13] for the decimal and then [00:50:15] some more numbers if [00:50:17] necessary. I think in this case [00:50:19] it was a comma as the decimal [00:50:21] separator and that [00:50:22] was what was throwing things off. So [00:50:25] just a [00:50:26] you know reminder that CSVs [00:50:29] don't, don't rely on a CSV [00:50:31] to carry with it, [00:50:33] the same sort of formatting [00:50:34] information that you would see [00:50:36] in Airtable because it's plain text, [00:50:38] it's [00:50:39] there's nothing with it [00:50:41] except for the value. [00:50:44] Very true. [00:50:46] Yeah dealing with currency is a pain, [00:50:51] I know a lot of people [00:50:52] struggle with that but [00:50:54] it's a good way to make it [00:50:56] a little bit easier, exporting it. [00:50:59] In this, [00:50:59] in this person's case [00:51:01] they changed their default [00:51:03] decimal and thousands [00:51:04] separators for like their [00:51:05] I think their whole operating system, [00:51:07] I think that's what they mean by os [00:51:09] so it was like a global change. [00:51:11] It shouldn't affect them [00:51:13] with Airtable exports [00:51:14] or any other export from now on. [00:51:16] Nice. [00:51:19] All right, thank you Kamille [00:51:21] for that audience question. [00:51:23] It's now continue on. [00:51:24] We're going to do one more [00:51:27] quick spotlight on On2Air [00:51:29] for this spotlight I [00:51:31] want to talk about backups. [00:51:33] So somebody posted a new tool [00:51:36] that's out there [00:51:37] that I want to give a shout out to. [00:51:40] It's called solid backup. [00:51:42] This was found in [00:51:44] Reddit. And so the solid backup, [00:51:47] what I want to highlight it [00:51:49] is this does not [00:51:49] have a monthly fee associated with it. [00:51:54] You download it via the either app store [00:51:57] or Microsoft store [00:51:59] and you can run it whenever you want. [00:52:02] It's a manual run that will export your [00:52:05] bases and your attachments and save them [00:52:08] to a location of your choice. [00:52:11] And so that's a great tool. [00:52:14] It's a one time fee you purchase [00:52:16] and you get access to it. I did want to [00:52:19] highlight if if you're looking [00:52:21] for automated backups. [00:52:23] We do have a solution as [00:52:24] well. If you're, you know budget [00:52:27] conscious then check out this solid [00:52:30] backup. [00:52:31] If you're looking for something [00:52:33] more automated and more [00:52:35] control over exactly [00:52:36] what gets backed up. [00:52:38] Check out our On2Air backups product. [00:52:41] It allows you to back up to dropbox box [00:52:43] or Google drive [00:52:44] and you can then see a history [00:52:47] within any of those of any [00:52:49] changes that happen. [00:52:51] You can save them as CSV or JSON, [00:52:54] it will save all your attachments and [00:52:57] they'll be there. [00:52:58] So it's a great way to major [00:53:00] as an insurance policy. [00:53:01] A lot of our customers that use [00:53:03] this have some kind of [00:53:05] business continuity plan [00:53:06] that requires them to have [00:53:08] their data backed up outside [00:53:10] of Airtable so that you have [00:53:12] it stored in a secondary location. [00:53:15] So check out On2Air backups and use that [00:53:18] for your backup needs. [00:53:20] Or also check out solid backup [00:53:22] if you need something. [00:53:24] That could work for many people as well. [00:53:27] So with that last spotlight [00:53:30] we're now going to go [00:53:31] to our final segment and if [00:53:33] you watched our show last week [00:53:35] we did part one of a [00:53:37] customer feedback loop [00:53:38] application [00:53:40] and we're going to continue that. [00:53:42] So just a quick review. [00:53:44] We're building a way [00:53:45] for and we're using On2Air as an example. [00:53:47] This, I'm actually going to use this [00:53:49] for live as a way to get feedback [00:53:52] from people that are looking for feature [00:53:56] enhancements or bug fixes [00:53:59] or new app ideas that [00:54:00] we could potentially build. [00:54:03] And last time when I [00:54:04] started to build this, [00:54:05] I was thinking that I needed to use [00:54:07] some automations to keep track [00:54:09] of when people up vote. [00:54:11] But then I realized I [00:54:13] might want to collect a bit more [00:54:14] information on those up votes. [00:54:16] So instead of it just being [00:54:17] a single button click, [00:54:18] I've since decided to change it [00:54:21] to a form. And one thing that I'm going to [00:54:24] highlight, so we have [00:54:26] our customer feedback, [00:54:27] this is when anybody would say [00:54:30] okay I want you to improve your [00:54:33] schema app and add new [00:54:36] functionality. [00:54:37] So one person would submit [00:54:40] our form to request that feedback [00:54:42] and then other people will see that [00:54:46] on a read only view [00:54:47] and they'll see that somebody [00:54:50] has already requested [00:54:51] that improvement for the schema app [00:54:54] and they're gonna want to upload it. [00:54:56] So we added a button here [00:54:58] and what that button will do, [00:55:00] we have another table [00:55:01] that will collect all of our [00:55:02] up votes that people make [00:55:05] and will tie it to the [00:55:07] feedback requests that is [00:55:09] associated with. [00:55:11] So first thing we had to do [00:55:13] is create a form here [00:55:14] and this is our up vote feature [00:55:16] where we could just [00:55:18] send people directly to this [00:55:19] field but we want to help them out [00:55:21] and we want to auto populate what feedback [00:55:24] item they're uploading. [00:55:25] Well then ask for a name and email [00:55:28] and any comments and then submit it. [00:55:29] So what we're doing to auto populate that [00:55:33] if you haven't done that before [00:55:35] is in this button. [00:55:37] You basically get the URL [00:55:39] of your shared form value. [00:55:42] And then you're going to add [00:55:43] this variable to the URL. [00:55:45] So make sure you have a question mark. [00:55:47] And then you always have to start with [00:55:49] pre fill underscore [00:55:51] and then this is the name [00:55:53] of the Airtable field. [00:55:55] So make sure you use the name [00:55:57] of the Airtable field [00:55:59] not the form display label [00:56:01] because that can be different. [00:56:03] So this is associated with the [00:56:06] name in Airtable, the actual field value. [00:56:09] And then we're just gonna [00:56:11] concatenate with this [00:56:13] and, and then add the record ID [00:56:15] to the formula. [00:56:16] So what that's going to do [00:56:18] is it's going to insert the record [00:56:21] ID of this individual record [00:56:23] into the pre fill for [00:56:26] the feedback so that [00:56:28] any up vote will automatically [00:56:30] be tied to this entry. [00:56:33] So that's a useful way to [00:56:35] automatically link. [00:56:36] And you can actually pre [00:56:38] fill any field that you want. [00:56:40] So you see there when [00:56:41] somebody clicks on that to [00:56:43] perform an up vote, [00:56:44] it's automatically tied to [00:56:46] that feedback item. [00:56:47] They would just enter their [00:56:49] name and email. So if I do mine [00:56:55] and add my comment and then hit submit. [00:56:58] Then if I come back here [00:57:00] you'll see I now this [00:57:01] will now show that it [00:57:02] automatically has one up vote [00:57:05] so you can keep track of [00:57:06] how many up votes you [00:57:07] have. [00:57:09] So it's a great way to easily [00:57:10] implement this. [00:57:12] Like I mentioned last time there's [00:57:13] tools out there that charge $50 [00:57:16] a month that definitely give you more [00:57:18] functionality. But at its core this is [00:57:21] kind of you know what I'm looking for, [00:57:23] as far as ways for people [00:57:24] that provide feedback [00:57:26] and then up vote that so that we [00:57:27] can then track what people [00:57:29] are most interested in seeing [00:57:31] in enhancements to our [00:57:33] product. [00:57:34] I did very similar idea [00:57:36] with the new ideas app. [00:57:38] So this is brand new apps [00:57:40] that people might want us to implement [00:57:43] and so very similar. [00:57:45] There's a form for people to [00:57:47] submit their new idea what the [00:57:49] name and description [00:57:50] and then their contact info [00:57:52] and then once it's in the system, [00:57:55] other people will be able [00:57:56] to see those ideas [00:57:57] and then they'll be able to up vote those [00:58:03] by clicking on this [00:58:04] and I did very similar [00:58:06] and one thing to take into account [00:58:08] if your field name has a space in it, [00:58:11] then you can use, there's two ways you [00:58:14] could do it, you could use the plus sign [00:58:17] or you could use Amber stand 20 [00:58:19] which is also a [00:58:20] URL and coding for a space [00:58:22] but I typically just use [00:58:24] plus that's easier [00:58:25] and again we're passing [00:58:27] in the record ID [00:58:28] and then this is the a different form [00:58:30] that's specific to new app ideas. [00:58:33] And then when I click [00:58:34] on that I can upload it [00:58:36] and it should automatically pre fill [00:58:39] with the new app idea that we're up [00:58:41] voting. [00:58:42] And then it works the same way [00:58:44] as the customer feedback. [00:58:46] So with these four [00:58:47] tables we can keep track of all [00:58:49] our new app ideas plus any existing apps, [00:58:52] how to improve them, new features to add [00:58:55] And on part three next time [00:58:57] what I'm gonna do is build [00:58:59] an external the web page [00:59:01] that will combine all of these together. [00:59:04] So you'll see a way the actual user [00:59:07] interface that people will [00:59:09] will interact with on our website [00:59:12] to give us that feedback and up vote [00:59:15] them. And I might add, [00:59:17] the other thing I'm going to add [00:59:19] is before showing new [00:59:21] app ideas. There's a status field [00:59:23] and it will need to go through [00:59:25] a review process [00:59:27] just to make sure there's no [00:59:28] spam coming through. [00:59:30] And the display will only show [00:59:32] new app ideas that I or somebody on my [00:59:36] team has approved [00:59:37] and made available to go public. [00:59:40] So we'll have a view that [00:59:41] filters out any new ideas [00:59:43] until they've been reviewed [00:59:45] for both ideas and [00:59:46] customer feedback. So [00:59:47] Join us for part three [00:59:49] of that series [00:59:50] and you'll see the complete version [00:59:53] of how we implemented a customer [00:59:55] feedback loop using just Airtable and the [00:59:58] tools that Airtable provides [01:00:01] without any automation which I thought we [01:00:03] originally might need. So [01:00:06] that will be fun to complete [01:00:08] and something I'm actually [01:00:10] gonna use in our [01:00:11] product to get feedback from customers. [01:00:16] Cool. Yeah. [01:00:19] Any final thoughts? [01:00:20] Were coming to an end here. [01:00:22] Any anything else to add before [01:00:24] we go? [01:00:25] A friend of the show, Kuovonne, [01:00:28] has an app in the [01:00:29] marketplace for pre filling [01:00:31] forms [01:00:32] and if you are struggling with [01:00:35] pre filling a form with a record [01:00:37] ID, like Dan just showed, [01:00:38] use pre filled forms [01:00:40] or the, she has another one. [01:00:43] She is that one as a standalone app, [01:00:45] and then [01:00:45] there's a formula [01:00:47] helper. Formula builder. [01:00:49] Pre made formulas. Pre made formulas. [01:00:51] That's what it is. [01:00:52] It's also one of the [01:00:53] action types in that one. [01:00:55] So you could use either, I believe. [01:00:57] Yeah. Very cool, very useful. [01:01:00] And does all that funky coding that I [01:01:04] showed there. So you don't [01:01:06] have to worry about that. [01:01:08] All right, good. [01:01:10] Good to see you guys again [01:01:11] and we'll see what happens next time [01:01:14] until then please join us, [01:01:15] give us your feedback, [01:01:17] ask your questions and we love [01:01:19] to see what you've BuiltOnAir [01:01:21] with your work. [01:01:22] So share with us. Until then [01:01:24] we'll see you next time. [01:01:28] bye.