Service Apps - 02.2015 - Release Notes
Current Version : 2023.4.108.0.05See the Previous VersionSee the Next Version
- What's new in the infrastructure: Trusted providers
- What's new in the Studio
- What's new in data access
- What's new in the ITSM environment
- New and modified widgets
- Compatibility with previous versions
WarningReleaseNotes
What's new in the infrastructure: Trusted providers
A trusted provider is a trusted third party used to manage user authentication instead of the authentication mechanism native to applications.
Notes:
- This version only supports ITSM trusted providers.
- Trusted providers can only be enabled for specific tenants via the EasyVista Cloud Management Center (CMC).
When a trusted provider is enabled, users will no longer log in using the login page provided by applications. The login page belonging to the trusted provider will be used instead, e.g. ITSM login page.
Authentication via a trusted provider
You can delegate user authentication to a trusted provider. If this is the case, the application will delegate the login page to the trusted provider and in return, it will receive an access token if the user is correctly referenced in the trusted provider's database. Users will then be validated by the SApps system using its specific access management mechanism.
SSO/LDAP authentication via a trusted provider
If the trusted provider manages user authentication using single sign-on (SSO), this will automatically be applied to the authentication described above.
Automatic synchronization of ITSM users and groups via an ITSM trusted provider
The access rights management module enables you to create users and groups (called teams) and to assign access rights. You can import CSV files containing data on users and teams in order to initialize this data. In this case, the synchronization and initialization of ITSM users is as follows:
- When users with an ITSM account log in to APPS for the first time, their account will automatically be created without any user action required. When users log in, APPS will check if a trusted provider has been defined. If an ITSM user is found during the process, a similar account with the same name, email address and teams will be created in APPS. If some of the teams are missing, they will be created and assigned to the new user.
- Subsequently, when logging in, verification is always performed. This is used to invalidate the APPS account if the user is no longer authorized in ITSM, e.g. when the company account has expired. Likewise, users are automatically assigned to teams or removed from teams they no longer belong to in ITSM.
Note: Only teams that were initially assigned automatically can be removed automatically. Teams created automatically are flagged and can therefore be identified and manipulated automatically. Teams created via APPS are not subject to these manipulations.
What's new in the Studio
App Store
The App Store now displays the date and time on which apps were last updated.
Custom widgets
New reusable widgets can now be added without entering any lines of code. These custom widgets appear in dedicated sections of the library. They are created by defining specific properties once and for all using an existing widget.
Creating a custom widget
Example: You want all of the corporate web pages to display a footer. You can therefore create a widget that can be reused in all app pages using HTML code.
1. You should create a new app comprising a single page whose layout consists of one column containing a Secured HTML widget initialized with the HTML code of the footer.
2. To create a custom widget, you should click to the left of the widget icon in the Properties Inspector. You must then specify the properties in the new dialog box.
- You must enter the name of the custom widget (1). A message will warn you if a custom widget with the same name already exists.
- If this box (2) is checked, the custom widget will be private. Private widgets are accessible only to the user who created them. They appear in a dedicated section of the library called My Custom Widgets.
- You can define the sub-category of the custom widget (3).
- You can define the icon of the custom widget using (4), (5) and (6).
- You can enter the URL of an icon available on the Internet (4). All image formats supported by the web browser are authorized. The icon will appear next to the URL.
- You can also use the standard icon gallery containing 400 reusable icons (5).
- If your image format is SVG, like all icons in the icon gallery, you can change its color using (6).
- You can enter the URL of an icon available on the Internet (4). All image formats supported by the web browser are authorized. The icon will appear next to the URL.
- In this field (7), you can hide the initial properties of the custom widget so that they can no longer be modified. Properties are arranged in sections and sub-sections identical to those for the initial widget. In our example, you want to hide the HTML code field so that the footer cannot be modified subsequently. To do this, you can check the Hidden box for the HTML Code property.
3. You should then validate the modifications made. The new custom widget will appear in the section displayed when a widget is added to the library:
4. You can reuse the widget in the same way as the other widgets, i.e. by clicking and dragging it to the app creation section. You can see that the Content section, where HTML code is usually entered, is now hidden.
Modifying an existing custom widget
To modify an existing custom widget, you must create a new app, add the custom widget and then modify and save it again as a custom widget with the same name.
Notes:
- If you change the name of the custom widget, you will create a new custom widget.
- If properties were hidden, you will not be able to display and modify them again.
Deleting a custom widget
To delete a custom widget, you should click at the top right of each custom widget. Note:
- The deletion does not affect the apps that are using this custom widget. The custom widget is only deleted from the list of custom widgets available.
- The following rules are applicable to deletion: Users with the App Center Manager profile can delete all non-private custom widgets. Users with the App Creator profile can only delete the widgets they created.
Custom widgets and data sources
- If the custom widget used in the app is linked to a data source that does not exist in the app, then the data source will automatically be created again. The connection settings will be reestablished when the widget is reused.
- The system checks whether or not the data source exists in the target app by comparing data source names. If the data source does exist in the target app but its structure is different from the original data source stored with the widget, then the new widget will not work correctly.
Note: We recommend that you use data sources configured with aliases instead of those configured with connectors. This ensures a certain degree of independence between widgets and data, and makes widgets more generic and easier to reuse.
Managing sub-categories
When the number of custom widgets increases, you should arrange them by sub-categories. This is performed in the Custom Widget Creator box.
- You can select one of the existing sub-categories from the drop-down list. The widget in the library is then moved to the selected sub-category.
- You can add a new sub-category using the + button to the right of the drop-down list.
- You can modify the sub-category of a widget using a drag and drop. For example, you can simply click and drag the widget called New York Traffic Info to move it to the Maps Widgets sub-category:
Custom widgets shipped by default
The standard SAppStore installation will integrate the custom widgets below. Blue custom widgets are ITSM-related widgets. Some of them require specific views that the CMC can provide.
What's new in the About box
Users can open the About box by clicking the logo at the top left of the Studio. This box has been updated. It now displays the specific version of the ITSM API corresponding to the EZVAPI.php file and the minimum version required. If the API version installed is earlier than the minimum version required, an error message will appear in red.
Standardizing themes
Now, when you select a theme in the Properties Inspector of the app, this will only affect the app and not the Studio.
What's new in data access
Execution contexts
Execution contexts add an abstraction layer to data access. They are used to create an app using a given database (e.g. test database) and then deploy it using another database (e.g. production database) without having to change the app configuration. You are only required to modify the current execution context. Aliases used in execution contexts also play an important role in custom widgets.
Concept of alias
In previous versions, apps accessed a database using a data source that was directly linked to a connector. This method remains possible. However, you can now use an alias instead. The diagram below shows how an alias works:
If there is an alias, you can select it from the drop-down list of the connector when creating a new data source (ITSM in our example).
Creating and modifying an alias
You manage aliases in the new tab in the Connectors screen. Each alias has a name, a type (at present only EasyVista or MySQL) and a connector.
When you use an alias, you can link an app to a database without having to change the app configuration, as long as the structure of the new database is compatible. In the example below, when you use the alias called EasyVista ITSM, the EasyVista Connector will be used.
Note: To modify an alias, users must have the App Center Manager profile at the very least.
- You create a new alias by clicking
.
- You delete an alias by clicking
.
Execution contexts
The alias system is a global one. If you modify the data source of an alias, this will affect all apps using this alias. This is why we have introduced the concept of execution context.
- An execution context corresponds to the definition of one or more aliases with the target connector.
- In an app, you can choose the current execution context and, consequently, the current database for the app.
- Execution contexts enable you to create an app using a demo database (or sandbox) and then deploy the app using a production database without having to change the app configuration.
Creating an execution context
You manage execution contexts in the new tab in the Connectors screen. Defining an execution context consists of indicating the connector used by all current aliases. Click on an execution context to display its details.
In the example below, two aliases have been defined, EasyVista ITSM and MySQL DB. There are also two execution contexts, Sandbox and Prod.
- If an app uses the Prod execution context, both aliases will point to production databases.
- If an app uses the Sandbox execution context, then it will point to demo databases.
Choosing the current execution context for an app
You select the current execution context in the Application properties box.
Note: This box may be empty. If this is the case and if you are using aliases, the default values defined in the Alias tab will be used.
In summary: How to create apps using the sandbox database and deploy them using a production database
1. You should have two databases, a sandbox database and a production database.
2. You must have two connectors, one for each database. Note: ITSM connectors can only be created by the EasyVista CMC.
3. You create an EasyVista alias.
4. You create two execution contexts, Sandbox and Prod. Each execution context must be associated with a correctly defined EasyVista alias.
5. When you create the app, you should select the Sandbox execution context.
6. When you deploy the app, you should select the Prod execution context.
You are required to perform these five operations only once.
Displaying current records and synchronizing widgets
Current records
When the app uses a widget linked to a database, the current record is displayed differently depending on the type of widget. The current record for a Data Viewer widget is highlighted in green while the current record for a Google Maps widget will appear as an infotip.
You can disable the display of current records for Data Viewer widgets by leaving the Show Current Record box unchecked.
Synchronizing widgets
There is an important immediate consequence to the implementation of current records. All widgets linked to a given data source are now automatically synchronized. This means that if you modify the current record in a widget, the modification will affect all widgets linked to the same data source and automatically refresh the data displayed.
In the example below, three widgets are linked to the same data source: a Data Viewer widget in Line mode (1), a Google Maps widget (2) and a Secured HTML widget (3) containing a form.
If you click one of the records in the Data Viewer widget, the other two widgets will automatically be refreshed to display the corresponding content.
Similarly, if you click one of the map markers in the Google Maps widget, the corresponding record will be highlighted in green in the Data Viewer widget and the form will display the relevant data.
What's new in the ITSM environment
Managing ITSM drill-down analyses
When the data source used is EasyVista ITSM and data is aggregated, you can view detailed data in certain widgets by drilling down to lower levels of analysis. Note: In the Data Viewer widgets, the functionality is only available in Grid mode.
Example Application
- The app comprises five widgets: a Breadcrumb widget (1), a Bar Chart widget (2), a Pie Chart widget (3), two Data Viewer widgets (4) and (5).
- All of these widgets are linked to the same EasyVista ITSM data source containing a list of equipment sorted by location. This is identical to the drill-down view in ITSM.
- The Bar Chart (2) and Pie Chart widgets (3) are able to detect that drill-down analyses are possible with the data source. As such, when you click one of the bars or sectors (e.g. the Los Angeles location), detailed data related to this location will be displayed. As all of the widgets linked to the data source are synchronized, the other widgets will be refreshed to display the data corresponding to the level of analysis.
Breadcrumb widget
This new widget (see (1) in the example above) is used to navigate within the different levels of analysis. You can click a higher level to return to the view you want.
Two parameters must be defined for this widget:
- The data source. In our example, the same data source is used by all widgets. The automatic synchronization mechanism manages all updates.
- The separator used to separate the levels displayed when the widget is used.
Aggregated view and flat view
When drilling down data presented in a grid, ITSM offers two types of views available in apps. Note: Widgets displaying the aggregated view and those displaying the flat view can be used at the same time. The synchronization mechanism ensures data is refreshed accordingly.
- The default aggregated view corresponding to the Data Viewer widget below (4).
- The flat view displayed by clicking
in the toolbar of the grid. It displays records with detailed data belonging to lower levels of analysis corresponding to the Data Viewer widget below (5).
- You define the type of view by selecting the Aggregated Data box in the Content section of the Data Viewer widget. If the box is checked, the aggregated view is displayed (4). If it is not checked, the flat view is displayed (5).
Note: The type of view can be selected in certain widgets, namely the Data Viewer and Filter widgets as well as all HTML widgets, e.g. Secured HTML, HTML Composer, etc.
Managing addresses for ITSM data sources
The Google Maps widget enables you to indicate a data source field to be used as an address. This field is used to position records on the map.
In ITSM, data for the address is spread over several fields. This means that it cannot be used directly by the Google Maps widget.
A new mechanism has been added in order to concatenate all address fields in a new virtual field that can be used in apps.
- This field is added once any view retrieves data from a field in the AM_LOCATION table.
- The number of fields added corresponds to the number of occurrences of the AM_LOCATION table in the query.
- The format of the new virtual field name is as follows, "Full Address (PHYSICAL_NAME_OF_THE_TABLE)".
- This field is automatically inherited by child locations without a specific address entered in ITSM.
The example above is based on the ITSM Operation > Incidents > All Incidents query and a flat view displaying recipients and their location. A field has automatically been added to contain the concatenated address: "Full Address (AM_RECIPIENT_LOCATION)". The address can now be used by the Google Maps widget.
Action bar
This bar enables you to perform all ITSM validation actions and final actions for incidents and service requests in apps.
Operational overview
- When you open a service request form in ITSM using the My Actions list and click the Complete Action button, the action validation wizard will appear with a choice of three possible actions.
- Apps display the same My Actions list as ITSM. The action buttons here correspond to validation actions you can perform in the relevant ITSM form. Unlike ITSM, they can be used in Line mode in a Data Viewer widget, and in Form mode.
- The three validation actions available are as follows:
- Accept: No other dialog box will appear.
- Reject: A dialog box will appear asking you to enter your comments on the incident.
- Information Request: A dialog box will appear asking you to enter your question.
- When you click the Finish button, this displays a form where you can enter the end date, the duration of the action and a comment.
Implementation
- The action bar is managed using a new tag called #[EZVTAG-ACTIONS]#. You can place this tag using a new button available in the HTML editor toolbar. This tag will work only if the data source used by the widget points to the ITSM action table. In order for the system to work correctly, the view must be My Actions or Actions for My Groups.
- When a questionnaire is associated with the workflow step, it will be displayed below. Example of the Reject dialog box where a questionnaire has been added below the Comment field.
What's new in questionnaires
The ITSM questionnaire system has been revamped. It is now compatible with the new questionnaire functionalities available in the February version. Its style guide is closer to the one available for apps and it works well on mobile devices thanks to responsive web design.
The current system has its limitations:
- SQL questions are not supported.
- Content is displayed in single columns.
![]() | ![]() |
Mobile version of the questionnaire | Desktop version of the questionnaire |
New and modified widgets
Overview on what's new in widgets
New Color Picker
The Color Picker, used to select colors from a palette, now appears as shown below.
Managing widget height
This functionality ensures that the vertical scroll bar in the browser will be managed by the highest widget in the page. This corresponds to the standard organization of a web page as shown below in the example where the layout contains three columns.
In the Theme section, the Set Full Height box has been checked for the widget in the center. As such, the height of the widget depends on its content and the vertical scroll bar of the browser is managed by this widget.
New tags usable in HTML code
HTML widgets show tags that can be used in HTML code. In our example based on Street View, you can use two tags, #WIDTH# and #HEIGHT#. They will dynamically be replaced by the width and height of the widget when the app is run.
<img alt="Image Street View" src="http://maps.googleapis.com/maps/api/streetview?size=#WIDTH#x#HEIGHT#&location=#[FIELD('Localisation')]#&heading=-13&fov=90&pitch=1&sensor=false" />
Menu widget
This widget belongs to the Basic category in the widget library. It is used to define all types of menus, horizontal or vertical, for desktops, tablets or mobiles.
Description
A menu is made up of several elements, each with a label or icon (both optional) and an action to be performed.
- The Content section enables you to define the overall presentation of the menu. You can define a different presentation for elements in the menu by modifying the icon color, menu background, label position and color, etc.
- The Data section enables you to manage the different elements in the menu.
- (1) is used to select the icon for the menu element from the SVG icon gallery, also used for custom widgets.
- This field (2) enables you to enter the label of the menu element.
- (4) is used to delete the current element.
- (5) enables you to arrange menu elements using a drag and drop. A similar functionality exists for several widgets.
- This field (3) is used to select the action to be performed when users click the menu.
- (1) is used to select the icon for the menu element from the SVG icon gallery, also used for custom widgets.
Possible actions
- You can display another page in the app by selecting Page Link and the page you want from the drop-down list.
- You can display a web page in another tab by selecting Href and entering the corresponding URL.
- You can run another app by selecting Application Button and the app you want from the drop-down list. The IT Dashboard app is used to create launcher apps that can run other apps.
Note: Access rights are not verified. You should ensure that you do not allow access to apps that users will not be able to run because they are not authorized to do so. If this is the case, an error message will appear.
- You can create a service request by selecting New Request Button and entering the service GUID.
Note:- This option only works for ITSM. To enable the option, a data source must be indicated in the menu and it must correspond to a data source pointing to the SD_CATALOG table.
- User domains are not verified. You should ensure that you do not link menu elements to the creation of service requests that users will not be able to manage subsequently.
Sliding Image widget
This widget belongs to the Basic category in the widget library. It is similar to the Sliding Page and Sliding Panel widgets, but is dedicated to managing images.
- This field (1) displays the current image.
- (2) is used to upload a new image.
- (3) is used to delete the current image.
- (4) enables you to arrange images using a drag and drop.
- (5) is used to add new images.
HTML Composer widget
This widget belongs to the Basic category in the widget library. It is used to create pages quickly using snippets that can be reused and configured for effective page layouts. Over 300 professionally designed snippets are available.
You can edit the content by clicking in the Content section.
Edit pane
- This area (1) is the main working space. Snippets are displayed one below the other. In the example above, there are three snippets outlined in red.
- Snippets (3) are available in this area and they are categorized (2). You can add a new snippet using a drag and drop.
- When you click a snippet, a toolbar will appear to the left.
Snippet toolbar
- (1) is used to position the widget vertically. You must click and hold while moving the mouse.
- (2) displays a text box containing the HTML code of the snippet.
- (3) is used to duplicate the snippet.
- (4) is used to delete the snippet.
Snippet elements
Each element in the snippet can be edited separately. Click the snippet to display the dedicated configuration options.
- Configuration of an image using two icons.
: used to define HTML elements and
: used to upload an image.
- Configuration of text using the toolbar located at the top of the edit pane. It contains the usual buttons including three buttons dedicated to apps and ITSM.
(1): used to select a page to be displayed instead of the current page.
(2): used to display the selected page in a pop-up window.
(3): used to select a field using the Data Picker.
What's new in the Google Maps widget
Overall modifications
The zoom level for zooming in on maps can now be finely adjusted using the new options in the Visualization section.
- The first option enables you to specify if the zoom level should automatically be adjusted to display all markers on the map.
- The second option is used to specify a default zoom level. This is the exact opposite of the first option.
Pin circle visualization mode
This displays pin circles in different colors corresponding to different thresholds on the map.
Managing means of transportation
An optional bar located at the bottom of the map is used to:
- Display the travel time between the current user position and the selected destination based on different means of transportation.
- Display or hide traffic information and public transportation routes by selecting the means of transportation you want.
- Select the current means of transportation (e.g. subway, train, tram, etc.) using the arrow to the right of the corresponding icon.
You define these new functionalities by selecting the corresponding boxes in the Visualization section:
- The first two parameters must be enabled before the bar can be displayed.
- The first parameter requires the logged-in user to authorize the retrieval of the current user position. The first time around, the browser may display a dialog box requesting authorization to retrieve the current user position. We recommend that you keep it enabled on a permanent basis.
- The current user position is indicated by a specific marker on the map:
What's new in the Data Viewer
You can now define the minimum size of cells in Tile mode. Thanks to responsive web design, the system constantly calculates the number of cells to be displayed in one row so that the width of the cells does not fall below this limit.
What's new in charts
Overview on what's new
New color palettes have been added.
Bar Chart widget, Line Chart widget and Pie/Donut Chart widget
You can now limit the amount of data retrieved and displayed. This is important in order to prevent loss of performance when data volume is large.
When the amount of data displayed is less than the amount of data retrieved, a category entitled Others will group all of the non-displayed elements in the chart.
Note: You cannot drill down data in the Others category.
Example of a Pie Chart displaying 10 values out of a maximum of 20 values. Example of the same chart displaying only five values.
Bar Chart widget and Line Chart widget
- Large numbers are displayed in abbreviated format, i.e. K for thousands, M for millions, etc. This also applies to the KPI widget.
- Properties common to the Bar Chart and Line Chart widgets have been standardized.
- You can now rotate and display data labels at an angle in the x-axis.
- You can truncate data labels.
- You can modify the size of the bottom margin for displaying labels.
Compatibility with previous versions
Data Viewer widget
In cell format, text was aligned by default in the center. Now, text is correctly aligned to the left and justified. You may be required to modify the properties for some apps if the content of your Data Viewer widget is no longer aligned as desired.