Configuration Tips & Tricks

There are a number of quirks on the configuration of specific features in the Verivo platform.  The items below will help document these into a format that can be easily referenced.

1.0.0 - Image Control

On the Android and Blackberry devices you can run into a scenario where you attempt to bring in a photo which is larger than the available free memory on the device. The Blackberry client makes a general check for this and will catch it before crashing the application. The Android client does not make this check and will forcefully close the application.  iPhone by default handles this in a better manner and will not crash dependent on Photo size.

1.2.0 - Displaying Static Text: Calculated Column vs Default Value 
The Calculated Column refers to the Data attribute on a control and enables you to put in logic to display data.  The Default Value is a property on controls on Form screens which allow you to default a value for upload.  Both of these can be used to display fixed data such as a disclaimer that does not come from a datasource.  However there are scenarios where one should be used over the other.

If you are looking to display data on a screen that makes a screen request you should always use the Calculated Column.  Calculated Columns have no restrictions on the length of the value.  Note that Calculated Columns force you to explitly specify string values by encasing your text with single quotes.  If you have single quotes in your text then you can use double single quotes to show this value. Ex. the text [This is Bob's value] needs to look like this 'This is Bob''s value' in your Calculated Column.

If you are looking to display data on a screen that does not make a screen request you need to use the Default Value.  There is a restriction on the length of the value in this attribute.  If you need to display data that exceeds this max length then you need to either break up the text into multiple controls with default values or set the screen to "Prefill from previous screen" and set a Calcualted Column on the previous screen with your full text.  Note that Default Value does not need you to explitcity specify string values (no single quotes needed unless they are part of your value).

1.3.0 - Click-To-Email 
If you add Click-To-Email as a menu item on a screen it will always show up regardless of if the Email control contains an email address or is blank.  This is a change from other Click-To items and from the way it behaved in the past.

If you want to prefill the device's email form you can use the following control names:

  • To: EmailTo
  • Subject: EmailSubject
  • Body: EmailBody

1.4.0 - Click-To-SMS 
If you want to prefill the device's SMS form you can use the following control names:

  • To: SMSNumber
  • Body:SMSBody

1.5.0 - Click-To-Map

1.5.1 - Google Search 
Your Click-To-Map control can be set to show the user a defaulted search when they get to the Google Maps application on their device.  To do this add a 13th parameter to your calculated map location data.  The value of this new parameter will be the term to search for.  If this is a list screen make sure the column is the first Click-To-Map column.

Example:  IsNull(Addr1,'') + '|' + IsNull(City,'') + '|' + IsNull(State,'') + '|' + IsNull(Zip,'') + '|' + 'US' + '|' + 'Using GPS' + '|' + '' + '|' + '' + '|' + 'You are here' + '|' + '10' + '|' + 'PinType' + '|' + 'PinColor' + '|' + 'Pizza'

The example below will take the show the user the location and the results from the search 'Pizza'.

1.6.0 - Macro Values 
Macro values allow you to pass data from screen to screen or on upload. They are sent in the screen request and the client or server will look for the presence of these values to replace the value depending on the request type.

Macro values are based off of Filter Field values set on the screen you want to reference the value on.  The exact macro value you place on a control is #[Filter Field Value]#.

1.6.1 - Download 
You can reference the Verivo User Table (tmpcfg_User) on any screen in your application that makes a server call.  Each column in this table can be referenced as a macro.  The naming would be #[Column Name]#, so for example if you want to bring in the PhoneNumber column in a screen you would use #PhoneNumber#.

The most common use cases for this are to display a value related to the user or to pass in a value related to the user in a request.

1.6.2 - Upload 
If you are looking to Upload a macro value through a Form or Add screen you will need the following configuration settings:

  • A text control mapped to the input to the upload datasource
  • The macro value you want to upload in the text control's "Default Value" property
  • The property "Send on Upload" is unchecked
  • The property "Visible" is unchecked

The macro value is then translated in the server call before the request to the data source is generated.

1.7.0 - Pagination 
Pa gination   is the process of dividing   content   and displaying it on separate pages. Verivo supports the use of pagination  in its applications. In order to enable pagination the Verivo application will require additional settings for proper configuration.

1.7.1 - Blackberry/Android 
The data source for pagination needs to return the following information:

·         The page number of the current recordset

·         The page number of the previous recordset (should return null if there are no previous pages)

·         The page number of the next recordset (should return null if there are no additional pages)

Each of these values must be returned in their own individual columns.  The column name for the Previous and Next value must be named as follows:

Previous Page Column Name: PrevID

Next PageColumn Name: NextID

 

The data source for pagination must also be be able to take the following information:

 

·         The next page number of the recordset the user attemps to navigate to

·         The previous page number of the recordset the user attemps to navigate to

 

The data source will take these value and do the neccessary processing to show the user the appropriate data.  There are scenarios where the Verivo Application will send plain text values to these inputs.  The inputs for these next and previous page must be able to handle these strings values as well as the page number.

 

Once the data source is able to take and return the appropriate data, you can begin mapping the web service method to an entity.  The mapping for this entity will be similar to other entities, the only requirement is that there be two returned columns for the Next Page and Previous page value as well as two inputs for the Next Page and Previous page values.

 

Narrow Selection instructions will be added to the list screens with macros which will populate with the requested actions – Next Page or Previous Page:

 

[PreviousPage] = '#PrevID#'

[NextPage] = '#NextID#'

 

Since there will be two required narrow selection instructions on the screen, the client will send the value into each input (Next Page and Previous Page).  Depending on whether the user looking to get the next page or previous page will determine which input will get the actual page value or if it will get the plain text value of the macro.  The data source will have to contain logic to ignore the plain text value for the inputs.

 

The Menu for the list screen should include 2 separate options and mapped to the following macros:

 

Menu Caption: Next Page

Menu Type: Next

Menu Caption: Previous Page

Menu Type: Previous

 

Example:

Starting at Page 1 of the Recordset.

User Selects NextPage.

Client Sends up 2 in place of the #NextID#

Client will also send the plaintext  ‘PrevID’ for #PrevID# (these server must ignore this)

 

1.7.2 - iPhone 
The data source for pagination needs to return the following information:

 

·         The page number of the current recordset

·         The page number of the next recordset (should return null if there are no additional pages)

Each of these values must be returned in their own individual columns.  The column name for the Next value must be named as follows:

Next PageColumn Name: NextID

 

The data source for pagination must also be be able to take the following information:

 

·         The next page number of the recordset the user attemps to navigate to

 

The data source will take thisvalue and do the neccessary processing to show the user the appropriate data.  There are scenarios where the Verivo Application will send plain text values to these inputs.  The inputs for these next and previous page must be able to handle this string values as well as the page number.

 

Once the data source is able to take and return the appropriate data, you can begin mapping the web service method to an entity.  The mapping for this entity will be similar to other entities, the only requirement is that there be two returned columns for the Next Page and Previous page value as well as two inputs for the Next Page and Previous page values.

 

Narrow Selection instructions will be added to the list screens with macros which will populate with the requested actions:

 

[NextPage] = '#NextID#'

The Menu for the list screen should include a More options and mapped to the following macros:

Menu Caption: More

Menu Type: More

 

Example:

Starting at Page 1 of the Recordset.

User Selects More.

Client Sends up 2 in place of the #NextID#

 

1.8.0 - Calculated Data

If you need to reference another control/column you need to use the control/column's Name value.

 

1.9.0 - Prefill from List Screen

The control you want to be Prefilled will attempt to match up the Name value to a control on the previous screen with the same Name value.

 

1.10.0 - Data Connector

If you get the following error during a batch download: 11/4/2010 8:13:27 AM - ERROR: Threshold check failed.  Entity: 8fdfb4d9-bc88-4ec2-b7a1-23df90edb69d

 

The threshold check is to ensure that not too much data is changed during a batch download transaction. To modify that threshold value you need the perform the following in Application Studio:

  1. Load application
  2. Navigate to Entity Definition section
  3. Select Show Grid option
  4. Right click on column title and select Column Chooser
  5. In the popup window select 'Threshold' and place in a column
  6. Find the entity that is getting this error and change the Threshold value to: 1

1.11.0 - Dynamic Choice Lists
Choice Lists in the Verivo configuration are inherently static.  If you need to dynamically populate a drop down list you need to use a Target Screen/Target View properties.  The first thing you will need to do is create a list screen/view that will return back this dynamic list of values.  The application will look for the control marked as the Primary Key as the value to send up in the upload request.  The application will look for the control maked as the Is Name as the value to display to the user.  Both these are set within the Entity Definition for this data source.  Once you have this you can perform the following to add this to the screen:

  1. Create a text control on the screen
  2. Map the Data to the appropriate field on your Data Source
  3. Under the Click Handling section in the Control Property set the Target Screen and Target View to your previously created screen
  4. Ensure that the Action setting is set to None

At this point when the user navigates to this screen the application will make an additional request to the Target Screen and View to dynamically populate the drop down list.

Note that you cannot send any filter field values into the Dynamic Choice List List screen.  You can use any global macros (UserID, or any values on the User Table), but filter fields will not be passed in.

1.12.0 - Add/Form Screens 
Add/Form screens allow the upload of data through the Verivo platform. 

1.12.1 - Add Screens
Add screens look to make a request to insert a new record to the data source. 

  • It is not required to have the entity's Primary Key on this screen

1.12.2 - Form Screens
Form screens look to make a request to update an existing record on the data source.

  • It is required to have the entity's Primary on this screen

1.12.3 - Save Confirmation
Save Confirmation is a view level Property that allows the user to be presented with a popup dialog before the application initiates the upload request.

  • You can use macro values in the va;ue for this property to dynamically generate the text the user will see
  • The macro values can reference data that the user has entered on an editable control on the screen

Error: (Error Code 2014): Error writing uploads to database.  Exception: Error while executing query : exec sp_executesql N'INSERT INTO tmpsys_ColChange [Query] Error: The statement has been terminated. String or binary data would be truncated.

Solution: The insert statement into the  tmpsys_ColChange table is too large for the column.  If you do not have a batched environment you can turn off the automatic insertion into tmpsys_ColChange by disabling the Application Server Property of 'Write upload data locally'

1.13.0 - Lookup Controls
Lookup Controls are used on Form screens and will make a specific server call to populate the results.  Based on the configuration of the control/screen properties the specific behavior will vary.

1.13.1 - Prefetch Only
The control's launch screen needs to be setup to not display quick find. 

  • A prefetch lookup control requests its data immediatly with no find parameters.
  • It appears as a spinner control.
  • The promt text of the spinner is the hint text.  You see this as the list title bar when the spinner control is open.
  • While retriving data the wait text is displayed and the spinner is disabled.
  • When data is recieved the spinner is enabled and populated.  A blank selection is added at the top.  The current value is selected.
  • If only one result is recived it is selected and the current value is set.
  • If no results are recieved or an error is returned, the spinner control is populated with a blank selection.  If there is a current value it is also added as a selection with a display value of the raw code value.

1.13.2 - Prefetch and Search
The control's launch screen needs to be setup to display quick find and the control's launch view to be setup to not query first.

  • Search only lookup controls don't request any data initially, even if they have a value, it is not decoded or displayed.
  • They initially appear as an editable text field, with hint text, and a search button.
  • The search button is disabled if there is no text.
  • If there is text in the edit field and the user hits Enter or the search button, a request for data is made using the find screen quick find control as a search parameter.
  • While data is being retrieved, waiting text is displayed.
  • Once a Search Only lookup field has results, is appears and behaves like a Prefetch and Search lookup control.
  • If one result is returned it is automatically selected, otherwsir the user is taken to the Lookup Search screen.
  • Search Only lookup controls do not launch a query when the screen refreshes data.

1.13.3 - Search Only
The control's launch screen needs to be setup to display quick find and the control's launch view to be setup to query first.

  • The Lookup Search Screen is used by Search Only and Prefetch and Search lookup controls.
  • There is an edit fields at the top of the screen that shows hint text, or the current search value.
  • There is a single-select list of the current results below the search field.
  • If the current value coresponds to one of the search results it will had a selected indicator.
  • There is always a [Select] option at the top indicating you wish to set an empty value.
  • If the lookup control is auto suggest, typing more than 2 characters triggers a search.  The results are displayed when they are recieved.
  • If the lookup control is not auto suggest, a search button is displayed to the right of the search text box.
  • If the lookup control is not auto suggest, typing in the text box will filter locally.
  • The Search button will be disabled if the search text box is blank.
  • When the search button is clicked, data is requested.  the data is displayed when recieved.  If only one result is recieved it is automatically selected.
  • Selecting an item in the list returned you to the form screen.  The lookup control now has the selected value as it's value.

1.14.0 - Address Book Lookup
This features allows the user to select an email address from the device's Address book from a text control or on the email compose screen.

If you are looking to select the email address from a text control you need to add an editable text field with an Input Mask of 'Look up Email'.  With this method there are two ways to invoke this functionality:

  • By Typing
  1. User begins typing the name of someone they want to email
  2. They are presented with a popup displaying the names of the matching contacts
  3. The user presses enter or hits the trackball, the popup is closed and the email address of the selected contact is entered
  4. Pressing the back button closes the popup and inserts the text typed so far
  5. If the Email: xxx option is selected the email address entered(xxx) will be inserted into the field
  6. When focus is on an editable email lookup field, the Lookup Email menu item is displayed
  7. When the user selects this menu item, the address book is displayed.
  8. A user can scroll through and view contacts, as well as add new contacts from this screen
  9. When the user presses enter, uses the trackball or selects the Email 'contact name' menu item, the email address of this contact is inserted into the field
  10. If the user escapes from this screen or selects the Cancel menu item of the Address Book they return to the field with no text inserted
  • By using the menu item

If you are looking to select the email address from the email compose screen you need to perform the following:

  • By Typing or using the menu item
  1. Same behavior as with the email look up field in a form screen
  2. When focus is removed from this field however, another field of the same type (To, cc, bcc) is added to the screen if there is text in this field
  3. If a field is cleared (and there is another field of this type on the screen) this field will be removed from the screen

1.15.0 - Aggregates 
Aggregates can be added to a view's instruction set to manipulate the data.  Below are the options available through configuration:

NONE: No aggregate type
AVG: Average 
BINARY_CHECKSUM: Binary Checksum 
CHECKSUM: Checksum 
CHECKSUM_AVG: Checksum average 
COUNT: Count  
COUNT_BIG: Count big 
GROUPING: Grouping 
MIN: Min        
MAX: Max 
SUM: Sum 
STDEV: Statistical standard deviation of all values 
STDEVP:Statistical standard deviation for the population 
VAR: Statistical variance of all values 
VARP: Statistical variance for the population for all values  

1.16.0 - Popup Screens

1.16.1 - Blackberry
The following screen types can be set with the 'Show as Popup' Screen Property: 

  • Form
  • List
  • Add
  • Find
  • Comparison
  • Calendar
  • Report
  • Query

Popup screens differ from non-popup screens in the following ways:

  • No titles.  No title images, icons or title overrides.
  • Status text and activity indicator are displayed in a popup over the popup rather than at the bottom of the screen.
  • The GNB may not be used.  If it is set to always display, it will appear behind the popup, otherwise it will not be visible.

1.16.2 - iPhone 
Popup screens will show up as a regular screen on the iPhone client.

1.16.3 - Android 
Popup screens will show up as a regular screen on the Android client.

1.17.0 Active Text 
Blackerry - URLs need "www." in the beginning and phone numbers need "1" for the Active Text to pick the values up as valid items for action.

1.18.0 Reserved Words

  • UserID
  • AppID
  • SessionID

 

Have more questions? Submit a request

3 Comments

  • 0
    Avatar
    Scott Cherkofsky

    In 1.2.0 - Displaying Static Text: Calculated Column vs Default Value what is the max length of the default value?

  • 0
    Avatar
    ebadenhausen

    Regarding 1.3.0 - Click-To-Email

    If you want to prefill the device's email form you can use the following control names:

    • To: EmailTo
    • Subject: EmailSubject
    • Body: EmailBody

    I can get the Subject and the body to prefill but not the EmailTo field.    Any ideas?

     


  • 0
    Avatar
    Mrigendra Singh

    How can we add attahcment along with the message?

Please sign in to leave a comment.
Powered by Zendesk