ChatGPT vs. Appster: How to conditionalize a <<START: >> inside a template so it doesn’t show if there’s no records
I regularly make comparisons to check that the pro version of Appster (the one in the Answer Portal) is providing more quality answers than AppsterGPT, and certainly better than vanilla ChatGPT.
- Vanilla ChatGPT shouldn’t be that good, it doesn’t have any nuance for AppSheet.
- AppsterGPT should be better, but it’s instruction context window is extrmemly limited, so it’s missing a lot of nuance.
- Appster Pro should answer questions near my level of competency.
Recently there was a really good example that came through, I thought I would share the comparison.
Original prompt:
If i have a start expression in an email template, but i only want it to show up if the related whatevers are not blank. In the start expression, how do i incorporate an ISNOTBLANK?
Core concept for the desired answer
- You need to wrap the whole
<<START: ...>>
section in an<<IF: ...>>
section.
Now lets see how things compare…
Vanilla ChatGPT
Okay so it needs to know we’re talking about AppSheet (fair enough I guess)
In AppSheet: If i have a start expression in an email template, but i only want it to show up if the related whatevers are not blank. In the start expression, how do i incorporate an ISNOTBLANK?
Full Response
In AppSheet, to incorporate a condition like ISNOTBLANK()
in a START
expression within an email template, you need to use it to filter the rows that the START
expression iterates over. Here’s a step-by-step approach to achieve this:
-
Determine the Source Table: Identify the table or slice that the
START
expression will iterate over. -
Use ISNOTBLANK in the Expression: You want to make sure the expression only includes rows where certain fields are not blank. You can achieve this by incorporating the
ISNOTBLANK()
function directly in the filter condition of theSTART
expression. -
Modify the START Expression: Normally, a
START
expression looks like this:<<Start: [Related Whatevers]>>
If you want to include only those rows where a certain column (e.g.,
[Column Name]
) is not blank, you would modify it to:<<Start: FILTER("TableName", ISNOTBLANK([Column Name]))>>
Here,
"TableName"
should be replaced with the name of the table or slice you are iterating over, and[Column Name]
is the field you want to check for non-blank values. -
Place Your Template Code: Inside the
START
andEND
tags, place the template code that should only be displayed if the related rows are not blank. For example:<<Start: FILTER("TableName", ISNOTBLANK([Column Name]))>> [Field1] - [Field2] - [Field3] <<End>>
-
Handling Multiple Conditions: If there are multiple columns you want to check for non-blank values, you can extend the filter expression by combining multiple
ISNOTBLANK()
conditions withAND()
:<<Start: FILTER("TableName", AND(ISNOTBLANK([Column1]), ISNOTBLANK([Column2])))>> [Field1] - [Field2] - [Field3] <<End>>
By using this approach, the START
expression in your email template will only process rows where the specified fields are not blank. This allows your email template to dynamically include or exclude sections based on the presence of data in your rows, ensuring that your emails are both relevant and concise.
-
Not bad, though not exactly the nuance of what was being asked
- In this specific scenario, they’re wanting to not show the enter
<<START: ...>>
section if there is nothing to show.- This way we don’t see the empty table.
- In this specific scenario, they’re wanting to not show the enter
Appster GPT
Let’s see if Appster in ChatGPT can get the answer right.
Appster Pro
Nailed it!
- I like this answer better than Appster GPT, it’s more concise.
And for reference: the instructions have nothing about this specifically, but it does have a bunch of stuff for how I build apps efficiently. And this is what it comes up with when you feed it that.