Evoke FAQ and "Where did I go Wrong"


This section will be continually added to, adding questions asked by Evoke users and the answers given to them. It is split into sections which you can go directly to via the following links:

Running an App
Log in button appears in-active
Usually this is a browser cache problem. Try pressing control F5 to refresh the cache on a Windows device or on a mobile after the app name in the URL put "?xxx" to do the same and try again.
Users cannot login to my App
The first thing to check is that you have your EVLU file/table in your database, see EVLU reserved entity.
How does an app generated by Evoke work in Linux?
When Evoke generates an app design the user can select either .NET classic or .NET Core, selecting .NET core means the resultant web app can be hosted in Linux environment.
My running app is slow - how do I speed it up?
Check the parameter Compilation debug="true", which is automatically set by Visual Studio when you initially build your app, has been reset to "False" as this will dramatically reduce the size/footprint of your app. See deployment considerations.
My app looks different on an iphone, an Android tablet and on a desktop computer?
More often than not this is simply because Evoke has correctly used the "culture" of android on the android devices and ios culture on the ios devices - there are many differences between a windows styling "culture" and the styling cultures of other operating systems and Evoke is very good at accommodating these so users used to using an ios device see data, headings, menus, input fields, tables, etc presented how they are used to seeing them. However, quite a few Evoke users have a corporate style (or just a personal preference) and want their app to appear the same on every device regardless of the operating system it is running on. In Evoke this is easy, you simply check the "Cultural styling overrides" for each operating system and regenerate your app. With these 3 settings checked your app should appear the same on Windows, Android and ios devices taking the Windows styling.
How do I make my App perfect on a desktop computer monitor, a laptop monitor, a tablet (like and ipad), an iphone and android phone and even a watch?
Use Adaptations to maximise screen real estate and adapt the functions of your app so that it runs perfectly on all devices and screen sizes.

Pages
Where do I start with creating an app screen?
After reviewing the main page of this user guide we suggest that you look specifically at the Building a Page section.
How do I add a data table or single record to an app screen?
There are instructions and example to add both Datagrids/Data Tables and single data elements/records to an app screen in your app design
Where is a description of all the different Widgets I can use on a page?
There is a full list and description of all the Evoke Widgets in this user guide including descriptions and examples of their use.
Can I clone/copy a segment on a page?
One of the adjust actions allows you to do this
Can I copy a page from one Page Series to another?
The actions in Page Series allow you to do this
How do I enable scrolling on or of a page?
Scrolling of a page in the Evoke Designer or on a mobile/desktop device is described in Pages.
How do I get prompts to line up across multiple segments?
The column headings look greyed out?
Ensure that show column headers is checked in the General Settings of the template.
I don't want a prompt on an entry or label field but want it to look the same as other entry or label fields?
Add underscore "_" in as the prompt, this will not be displayed but will still make the field act as if it has a prompt for prompt sizing groups or other fields with a prompt in the same segment.
I want to add a Pie Chart or other graph to my App
Use the Evoke Charting and Graphing feature in Content Type in the Pages General tab.
I want to include only an image in a segment as part of the design
Use the Image feature in Content Type in the Pages General tab.
How are datasources populated with data from my database?
There is a complete section on Populating Datasources in this user guide.
Can you show a message, in a datagrid, to indicate that it is loading data or doing a long selection on the database so that the user does not assume there are no records?
Yes. You should use the "Loading Data Msg" field in the Template General Settings . If you put text in here e.g. "Contacts are being loaded please wait - Thank you" then it will be displayed when data is loading in the first line of a datagrid.
How do I change the font style or font size in my app?
Use the font override options in fonts styles and font sizes in the app settings section and Pages/colors tab.
Is it possible to start an email or a phone call from the app? If so, how?
Yes, use the LaunchDialerApp and LaunchEmailApp Click Actions.
My widgets look like they are set up correctly but do not seem to work i.e. my lookups do not drop down, textboxes do not accept data, etc. ?
The first thing to check is have you bound the segment to a blank Datasource that is not initialised? A blank DataSource has a special "empty instance" before it is initialized, an empty instance cannot accept data until records are selected into it or it is Initialized.


Entities
Can I import Entity properties from my database files
The actions in Entities and Repositories provide this option
What Database files/tables/objects do I need to have and how do I set up the EVLU
The Evoke reserved Entities, along with the EVLU are explained in the Reserved Entities page.
How do I have my app users in Canada see a date in DD/MM/YY and users in the US see a date in MM/DD/YY format
The date format, currency symbol, etc are set by the Culture property in the AppUser Entity. This is fully explained in Date Format Culture property


Generating App Designs
I am getting generator warnings warnings that I have used Duplicate Page Segment widget IDs.
If you get Duplicate Page Segment warnings when you generate an app design e.g. Duplicate page segment widget id detected - PageSeries:xxxxxxx, Page:xxxxxxxx, Widget id:xxxxxxx conflicts with PageSeries:yyyyyyyy, Page:yyyyyyy, SegmentGuid:nnnnnnn then you need to create unique page segment widget IDs
Using duplicate page segment widget IDs is not a good idea for many reasons, including the fact that Evoke needs to identify page segment widgets with their component and duplicate names could potentially cause a problem, therefore the warnings process, at generation, highlights if and where you have duplicate Page Segment Widget IDs.
Use the ellipsis at the top of the "Warnings" box to copy the warnings to the clipboard and past them into a Word/Notepad document or View them full screen and then work through the Pages/segments identified and change the Segment/Widget ID in each case to something unique. When there are no more duplicates you will have no more warnings.


Visual Studio
I am not sure where to start or need more advanced help with Visual Studio.
Visual Studio is a Microsoft product. Microsoft offer some great tutorials, help and other guidance on their Visual Studio support sites.
How do I Open/load a Visual Studio solution created by Evoke
In Visual Studio select open solution (go to 'open' in the 'file' menu), then browse to the location you specified in the "target folder" setting in "Visual Studio Settings" when generating your web App in Evoke. In this folder open the *.sln file.
I built my app solution in Visual Studio and it said "no startup project" or the 'run' button in Visual Studio does not seem to be linked to a browser
Visual Studio can occasionally unlink your 'web' project as the startup project, so in Visual Studio Explorer, right click the web project and select "set as startup project".


Databases
I want to swap databases in my app i.e. from a development database to a live database
Please review the description of Swapping or changing Databases for details of the steps required to change a database
I am using a MultiValue Database, can I use my Multivalued data and existing Custom DataBasic?
Yes, full details are provided in this user guide regarding using MultiValue Databases, Mutlivalued data and existing DataBasic.
I am using a SQL Database, can I still use Joins and Link Tables?
Yes, full details are provided in this user guide regarding using Joins and Link Tables with a SQL database.
I need to select some data from my database?
Please review the user guide section on Selections and then see the example of how to use a Selection on a page.
How do I use Remote Keys and Local Keys with my MultiValue database?
Remote Keys and Local Keys are fully explained in the using MultiValue Databases section.


Browsers
This section is not really about Evoke but gives some generic information about browsers that address some frequently asked questions
In Chrome when I swipe down on an Android device it refreshes/reloads the App
If you are using Google Chrome in Android the "Pull to refresh feature", set by default by Chrome, refreshes the browser session and takes you right out of the app back to the login screen. However, you can disable this feature. In the Chrome Browser URL bar type the following.... chrome://flags/#disable-pull-to-refresh-effect then use the search to find "pull-to-refresh" and as this is a feature to disable the function you have "enable" this (which enables the disable - not sure they thought that one through fully) and now when you swipe down on any webpage or app in Chrome on an Android the screen does not refresh.
In Mozilla / Firefox my Lookup button widget or lookup widget is really small and I cannot see the text in the text box!
This is probably because the page segment in Evoke has been set to auto-sized and different browsers have different notions of what the natural size of a textbox etc should be. This can be fixed by setting a minimum width in the editor specifc section of the widget definition.

Miscellaneous
How do I change my Evoke Password
You can change your Evoke password in the Account area of Evoke.
How do I find out what my Evoke Version number is?
The version number of the instance of Evoke that you are running may be found in the Evoke Context Menu.
Can Multiple developers work on the same App Design in Evoke?
Yes, If you intend to use multiple developers working on the same app design please see the Multiple Users App Design Hierarchy information.
What should I do if the Evoke automatic version Update Process Fails to Complete?
This may be resolved by running the Task Manager utility and killing any processes with a name starting with either "Evoke" or "CefSharp".
Can the calender widget start on a day other that Monday?
Yes. In the AppUser Entity simply add a property - FirstDayInWeek - which is a non Mandatory, AlphaNumeric field - which is used so that, by individual user, the calender widget can start on any day of the week. For Sunday set this field to "Sunday", "Monday" for Monday, etc. By default the start day will be Monday. See Reserved Entities