I’m a newbie with Appsheet and still evaluating the platform.
I expect Appsheet to be faster to create apps but it is hardly the case if the app needs to be multilingual. Appsheet should provide a set of tools out of the box, instead, I’m mostly going back to the good old days and have to create all the plumbing.
Here are few examples.
- Yes, Appsheet allows changing the display name of a column or action. But we have to create a table to support the references. Expression to be used might be long:
if(ISBLANK(USERSETTINGS(“Language Option”)),LEFT(USERLOCALE(),2)=‘en’,USERSETTINGS(“Language Option” )=“English”), LOOKUP( “Year” , “Translation” , “TranslationKey”,“en”),
if(ISBLANK(USERSETTINGS(“Language Option”)),LEFT(USERLOCALE(),2)=‘fr’,USERSETTINGS(“Language Option” )=“Français”), LOOKUP( “Year” , “Translation” , “TranslationKey”,“fr”),
if(ISBLANK(USERSETTINGS(“Language Option”)),LEFT(USERLOCALE(),2)=‘es’,USERSETTINGS(“Language Option” )=“Espanol”), LOOKUP( “Year” , “Translation” , “TranslationKey”,“es”),
I will like to use a direct expression, like LOCALISE(“Text Key to be searched”, “language as an ISO code”, “country”). Appsheet should provide a build-in table, like the USER SETTINGS table, where we can add the language/country with the required translated text. Note: should be nice also to make a distinction between countries where required (i.e. color vs colour). BTW, I tried the LOOKUP() expression but it doesn’t allow to dynamically select a target column (i.e. I can’t use LEFT(USERLOCALE(),2) to identify the column).
USER SETTINGS: doesn’t save the user selection when LANGUAGE OPTION is selected. Only good for the current working session. I now need to build a table for this purpose. USERLOCALE() is not good enough for web browsers in Canada/Québec (typically, this should not be an issue when on a mobile device).
Confirmation message can’t be translated in the behavior section of the ACTION setup.
In workflows for emails, SMS etc. All subjects, body messages, templates can’t be selected based on expressions. It looks like I will have to create different workflow for each languages.
I’m pretty sure there are other areas but this is what I found so far.
In a nutshell, everything that could be read by a human (on a screen, a report, an email, a SMS) has to be set using an expression, when required.