Mobile Friendly Process Apps Recommendations

This post could be useful for process app developers who want to create apps compatible with SBM Mobile Client. Here we gathered few recommendations on how to make process app “mobile friendly” and avoid some known limitations.

1      Check “Enable options for SBM mobile app” in composer

If this option is disabled, users will not see the application in SBM mobile. Submit forms will not be available, in will not be possible to select this application in work center. However, application will still be available in Service Catalog unless administrator hides it intentionally.

Checking it enables most of the possibilities mentioned below.

 Find the option under Workflow Design -> [Application] -> Options.


2      Use simple mode

Simple mode is mobile client feature, which allows simplifying big forms by and hiding all unnecessary controls. User can quickly switch to full view if it is needed, but the idea is to show minimum sufficient amount of controls on mobile form.

See an example simple and full view on the screen shots below.


By default, only required fields will be shown in simple mode. To choose which controls will be available in simple mode go to Visual Design, select some control, Property Editor -> Mobile -> Mobile client forms. Possible options are:

“Always show” – the control will be shown both in simple and full view.

“Always hide” – the control will be hidden on mobile.

“Hide in simple view” – the control will be shown only in full mode.

Besides controls, list of transition on a state form can be shown differently in simple and full view. Keep only most important transitions in simple mode. To adjust it go to Workflow Design -> select transition -> Property Editor -> Options -> Transition button on mobile form.

3      Hide transitions and controls which doesn't work on mobile

If some transition relays on unsupported features – hide it on mobile by setting “Transition button on mobile form:” option to “Always hide”. Same approach can be applied to unsupported form controls, for example widgets.

4      Avoid using JavaScript

JavaScript is not supported on mobile, when possible use build-in form actions instead. If your form heavily relies on javascript logic you may want to hide this transition as was described above.

4.1     Use rules

Since SBM 11.3 “a rule evaluates to true or false” condition is supported. You can use it instead of some java script, for example to compare values of two fields.

4.2     Use values substitution

Sometimes values need to be collected from few controls and set to another. To achieve this without java script use set field value action or refresh with string substitution.

Note: refresh is available on mobile since SBM 11.3

5      Use isMobile condition

In form actions new condition is available “the current form is (not) a mobile form”. It can be used to perform some actions only on mobile or only in web forms.

For example, you can disable some custom (java script) actions or provide alternative logic for mobile. Or in case if you want to block mobile user form this form add something like “on form loaded, if is mobile then cancel this form”.

6      Avoid using html to style the form

Styling form with html tags will not work on mobile. Use set foreground / background color form actions instead.

7      Email templates

Use $MOBILELINK() tag in email notifications templates alongside with $LINK() to provide links to items which will be opened in mobile app.

For example, email template could look like this:
Please click the link below to view the details of this service request:

To launch mobile app, please click the following link:

And the result will look like this be:
Please click the link below to view the details of this service request:


To launch mobile app, please click the following link:



8      Avoid using decision nodes with two transition forms in a row

In some cases workflow can be designed in such way that going through decision node causes two or more transition forms to be shown to user, currently such scenario is not supported on mobile. User will only see first transition form and all the rest will be skipped if no error occurs.

On a screenshot below such case is represented by Transition -> Decision -> Branch path. If “Branch” transition has some overridden required fields or is unsupported, then the transition will be automatically canceled on mobile.

9      Be aware of unsupported transition types

Currently not all transition types are supported on mobile. If the transition is Post, Subtask, Publish, Copy or External Post it will not be available on mobile.


10  Avoid inserting important controls into “Form features” containers

Currently form header, footer and Sidebars are not supported on mobile. So any controls put there will be absent on mobile.


I hope this recommendations will help you to build better apps!
And if you have any questions, feel free to ask them in the comments below.
SBM Mobile clients are available in App Store and Google Play.

Continue reading
47 Hits

How to save and reuse a partially filled submit form in Work Center - for either an individual or set of users


Since Quick Links and Folders were introduced into Work Center in SBM 11.3, you can now use them to save partially filled submit forms.


This is particularly useful when, as a user or set of users, there are a number of fields that you typically set to be the same at submit time.


The below example demonstrates how to do this for an individual user using Quick Links. If there was a set of Users who wanted to share a partially filled submit form then in (3) you would add to a specific folder and share it with appropriate users.





1) Open the submit form in Work Center


(2) Partially fill the form with your values


(3) Select Actions>Add to folder as shown below







(4) Select the Folder = Quick Links for an individual user



(5) The partially filled submit form with now be available in Work Center via the Quick Link Icon (shown below) and via Folders



(6) Select the Quick link and you will be taken to a partially filled submit form on a user by user basis


Note: You should use default fields instead if you wish to always set a field to a specific value on submit



Continue reading
51 Hits

Test Connection to Server Endpoint

Imagine that you are testing a connection to server during setup or that an endpoint that was previously working no longer works.  You know that the server is beyond a firewall, but it should be off.  But then again, you have the server firewall, as well as, the hardware firewall or proxy.  Add to the configuration complexity the fact that the error message returned is cryptic at best.  What can we do?

You used to use telnet to test a connection, but Windows Servers/Workstations no have it installed by default.  What can we do?

Use PowerShell.  Here are the steps to test your connection to your LDAP server (myldap.company.com), for instance. 

Open PowerShell on your Windows Server.
Type: $TCPClient = New-Object -TypeName  System.Net.Sockets.TCPClient
Press enter.
Type: $TCPClient.Connect('myldap.company.com',389)
Press enter.
Type: $TCPClient.Connected
Press enter.
If the last command returns True then you have successfully made a connection.  If it returns nothing then you have not made a connection.
Now close your connection.
Type: $TCPClient.Close()
Press enter.
Continue reading
114 Hits

How to: Add Contacts to Release Control

To add "Contacts" to Release Control (or the former Release Manager), follow these instructions. Though written specific to RLC, the procedure described here could be used to reference any item with any other item.

Optionally, download and extract images in attached "images_HowToContacts.zip" archive to view "img#" references in this article.

The default "Contacts" auxiliary table is in "Global" application. If you intend to use a different contacts table located in another app, simply reference your app instead of "Global" as you follow the instructions.

  1. Open Composer
  2. Start "Open" choosing "Look in: Repository"
  3. If "Global" is missing (img1), then...
    1. Go to Application Repository in browser
      1. Select Environments section
      2. Highlight intended environment if more than one
        1. Select "Deployments" tab and find "Global" application in list
        2. "Get" the application (img2). In prompt, ensure 'Create snapshot' is unchecked/deselected
        3. Status of "Get" can be viewed in Activities section
    2. Return to composer, refresh repository list, and continue with step 4.a
  4. If "Global" has red icon (not blue & yellow, img3), then...
    1. Open "Global" process application
    2. Check-in Global (okay to 'save changes' if prompted)
    3. Continue with step 5.a
  5. If "Global" has blue & yellow icon (not red), then...
    1. Open process application where you want to use/see contact such as "RLC - Release Train" or "RLC - Release Package" (formerly, "RLC - Application Releases")
    2. Check-out entire process application
    3. Make the following changes
      1. In References section
        1. Right-click "References" and select "Add Application Reference"
        2. Choose "Look in: Repository" and select "Global" app (img4)
      2. In Data Design section
        1. Select the application's primary data table
        2. Add "Contact" field via method described below:

          Attention - Decision must be made here. Please review this section carefully.

          There is a system Contact field which is single-relational which ONLY works with Global contacts table (option α). If using a different table and/or app, you can also create your own single-relational field (option β). In either case, you can create your own multi-relational field (option γ).

          If you think or know you want to present data from the contact, it is recommended to use α or β. You will be limited to one contact per item, but can add Sub-Relational fields for any column of the Contacts table.

          If you think or know you need to allow multiple contacts per item, you will need to use γ. You will not be able to add Sub-Relational fields for presenting the data.

          To cover both cases, consider doing α or β as "Primary Contact" and γ as "Secondary Contacts" - this allows you to present extra primary contact information on forms via Sub-Relational fields but doesn't limit each item to a single contact.

          1. Option α
            (*ONLY if using built-in "Contacts" table from "Global" app)
            1. Right click in the list of fields and choose "Add New > System Fields > Contact" (img5), OR drag the "Contact" field from the Table Palette into list
            2. Field is pre-configured. Go To 'γ' for adding multi-relational field or skip to step 5.c.iii.
          2. Option β
            1. Right click in the list of fields and choose "Add New > Single Relational", OR drag field type from Table Palette into list
            2. Name the field as you wish
            3. In the options section (img6), choose Application = "Name of your app" and Table = "Name of your table"
            4. Go To 'γ' for adding multi-relational field or skip to step 5.c.iii.
          3. Option γ
            1. Right click in the list of fields and choose "Add New > Multi-Relational", OR drag field type from Table Palette into list
            2. Name the field as you wish
            3. In the options section (img6), choose Application = "Global Application" and Table = "Contacts" (or your custom app/table)
            4. Continue to step 5.c.iii
      3. In Visual Design section
          For each form where you would like to see/edit value:
        1. Open form
        2. Drag your new field from the "Form Palette" to any location on form, except any container called "Hidden Fields" or "Hidden Section" (img7)
    4. Save changes locally
    5. Validate changes
      (Note: first validation may show a few "Very High" warnings regarding missing transitions. Validate once again and these should disappear).
    6. Deploy changes
    7. Verify changes
      1. Transition form (img8/8b)
      2. State form (img9/9b)
Continue reading
125 Hits

Urgent: SBM 10.x default certificates expire on 16th September. Your system will fail if you have not updated them.

ALERT: SBM 10.x default sample certificates expire 16th September and SBM will fail if they have not been updated. For more details please check the KB article here - http://knowledgebase.serena.com/InfoCenter/index?page=content&id=S142197

If you need any help or advise please contact Support.

Continue reading
531 Hits

Recent Tweets

Twitter response: "Invalid or expired token."