0% found this document useful (0 votes)
202 views95 pages

Axpert Release Notes February 2023

Uploaded by

infoway salman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
202 views95 pages

Axpert Release Notes February 2023

Uploaded by

infoway salman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 95

Agile Labs

Axpert Web

RELEASE NOTES
FEBRUARY 2023
Axpert – Release Notes

Table of Contents
Chapter 1. What’s New in 11.2.1 ................................................................................... 4
Note for upgrade ....................................................................................................... 4
Axpert Configuration Studio for runtime ................................................................... 4
Axpert Rules ............................................................................................................. 6
Introducing Process Execution Engine (PEG) .......................................................... 7
Add and Remove fields in the existing form on the run site ..................................... 8
Add and Remove Form with button click on the run site ........................................ 10
Toggle for Set Defult view introduced from List View ............................................. 12
Zoom in using google map to cover nearby areas ................................................. 13
Check Box component to be displayed in the List View ......................................... 15
Created on, created by, modified on, modified by introduced as part of listview columns 15
Validation error messages based on language selected during login .................... 15
UI SCSS Custom Hook file along with Bootstrap 5 SCSS compiler ...................... 16
Easy signin template based on projects ................................................................. 16
Separate Sign In page to accept username and password.................................... 16
Internal SSO key creation and automatic login ...................................................... 17
Redis Connections at application level ................................................................... 18
Chapter 2. What’s new in 11.1.1 ................................................................................. 19
SSO integration through Azure AD ......................................................................... 19
Enhanced Keep me sign-in functionality ................................................................ 19
Save and print in mobile app .................................................................................. 19
UI Configuration ...................................................................................................... 19
Chapter 3. What’s new in 11.1 .................................................................................... 21
Axpert Configuration on web .................................................................................. 21
Application Properties ............................................................................................. 22
List View Designer for Smartviews ......................................................................... 23
Capture signature in Axpert .................................................................................... 23
Download files from Iviews ..................................................................................... 24
Chapter 4. What’s new in 10.9 .................................................................................... 26
Server Based Licensing for Axpert Web Applications ............................................ 26
Modern SmartView’s ............................................................................................... 28
Notifications for Long Running Webservice’s ......................................................... 33
File Upload in TStruct ............................................................................................. 35
Login ....................................................................................................................... 37
User Manual ........................................................................................................... 48
Auto Save Draft Enhancements ............................................................................. 50
Hybrid Application ................................................................................................... 50
Customization ......................................................................................................... 50
Application Level Compressed Mode ..................................................................... 52
Breadcrumb Title .................................................................................................... 52
Export to Excel option in TStruct Grid .................................................................... 52
Chapter 5. What’s New in 10.8? .................................................................................. 53
Note for upgrade ..................................................................................................... 53
AES Encryption ....................................................................................................... 53
HTTPS support ....................................................................................................... 53
Slick home page ..................................................................................................... 53
Attachments ............................................................................................................ 53

© 2022 Agile-Labs.com Page 2


Axpert – Release Notes

File download feature in Reports/IViews ................................................................ 53


Work flow ................................................................................................................ 53
Grids as a frame ..................................................................................................... 53
Multi select fields .................................................................................................... 54
Locations and maps in Forms/TStrcuts .................................................................. 54
Chapter 6. What’s New in 10.7? .................................................................................. 56
User interface ......................................................................................................... 57
Mobile Compatibility ................................................................................................ 57
List views ................................................................................................................ 57
In memory database ............................................................................................... 57
Grids in forms ......................................................................................................... 57
Chapter 7. What’s New in 10.6? .................................................................................. 58
Axpert on PostgreSQL ............................................................................................ 59
Use Axpert in mobile ............................................................................................... 59
Optimizing Axpert Performance .............................................................................. 59
Handling US date format elegantly ......................................................................... 59
AxpertWeb security enhancements ........................................................................ 59
Chapter 8. What’s New in 10.5? .................................................................................. 62
SmartViews ............................................................................................................. 63
Creating online forms .............................................................................................. 65
Axpert Package Manager(APM) ............................................................................. 69
Wizard based DC .................................................................................................... 70
Powerful Global Search .......................................................................................... 71
Security Enhancement ............................................................................................ 71
Chapter 9. What’s New in 10.4? .................................................................................. 73
Collapsible sidebar navigation ................................................................................ 74
Split Window ........................................................................................................... 74
Advanced Settings .................................................................................................. 74
Refresh Home page Data ....................................................................................... 78
Chapter 10. What’s New in 10.3.0.1 (Patch release)? ............................................. 79
Smart Refresh ......................................................................................................... 79
Chapter 11. What’s New in 10.3?.............................................................................. 80
Creating Pages ....................................................................................................... 83
Customizing Pages ................................................................................................. 84
Assigning Pages to Roles ....................................................................................... 84
Assigning Pages to Users....................................................................................... 84
Mapping Widgets .................................................................................................... 86
Dynamic Widgets .................................................................................................... 89
Opening Pages from Reports ................................................................................. 89
Auto arrangement of input fields in dynamic mode ................................................ 92
How this feature works? ......................................................................................... 92
Performance Improvement ..................................................................................... 94
Enhancing Website Security ................................................................................... 94

© 2022 Agile-Labs.com Page 3


Axpert – Release Notes

Chapter 1. What’s New in 11.2.1


Note for upgrade
When you are upgrading from a lower version using the installer, the following changes need to be
implemented in web.config file
• Open web.config file from the root directory of Axpert. This is the folder where Axpert dot net is
installed.
• While upgrading through installer the code snippet shown below, gets moved to the end of the
file. This might result in an internal server error.

<configSections>
<section name="botDetect" requirePermission="false"
type="BotDetect.Configuration.BotDetectConfigurationSection, BotDetect" />
</configSections>

• To avoid this error, move the code snippet as the first element under the configuration section.
For example
<?xml version=”1.0” encoding=” utf-8”?>
<configuration>
<configSections>
<section name="botDetect" requirePermission="false"
type="BotDetect.Configuration.BotDetectConfigurationSection, BotDetect" />
</configSections>

Features & Enhancements


Axpert Configuration Studio for runtime
A new page for configuring forms/tstructs has been introduced on the run site. This can be found
under options as shown

This will open a page with options to customize forms, fields, rules and process definitions. You can
create a new form or edit an existing form.

© 2022 Agile-Labs.com Page 4


Axpert – Release Notes

Customize fields with Custom field option. Add or modify the existing field as per the requirement.

On click of Add new field, a new page opens up to define the field.

Define Process definitions and execute them with this option.

© 2022 Agile-Labs.com Page 5


Axpert – Release Notes

Axpert Rules
In Axpert we can define rule during the field creation in a form. But when we are hosting an application
on cloud server, it will be used by multiple customers. Based on customer requirement we can enable
the rules. The users can set their own logic to the forms using Axpert rules option.

In the run site, go to Options→ Configuration Studio→ Rules. Define, edit or remove rules here.

Click on New Rule to define new and click on submit.

User can define multiple rules for a form. It also provides form control option as shown

© 2022 Agile-Labs.com Page 6


Axpert – Release Notes

User can also define scripts using the rules option.

Introducing Process Execution Engine (PEG)

Process definitions are introduced to help create one process by linking N number of forms on Axpert.
To define a process, go to Options→Configuration studio→Process Definition

To create a new process, click on + on the top right.

© 2022 Agile-Labs.com Page 7


Axpert – Release Notes

Process has three task types


• Make – Creating a form and initiating PEG. This helps in attaching a process to the form
• Check – Validate the data
• Approve – Reject or approve the request

The process flow will look as shown below

Add and Remove fields in the existing form on the run site

A new feature has been introduced to add and remove fields in the existing form.
To enable this feature, introduce a user defined button in the form with “Add new field” script in the
form on developer site. Define a Script in Dev site as shown.

© 2022 Agile-Labs.com Page 8


Axpert – Release Notes

Go to run site and open the form where the button was created. You will now be able to create a new
field by clicking on this button.

An axpert developer screen to add new field appears.

Insert the necessary details and submit. Go to the run site and refresh the form.

Remove fields from the form in run site


Go to the axpert developer page opened, where the field was created and click on remove button on
top right

© 2022 Agile-Labs.com Page 9


Axpert – Release Notes

A pop up appears, click on confirm to delete the field from the form.

Visit the run site and reload the tstruct to see the field removed.

Add and Remove Form with button click on the run site

A new feature has been introduced to add a form using button click.
To enable this feature, introduce a user defined button in any form with “Add new form” script. Define
a Script in Dev site as shown.

Click on the new button created in the run time as shown

This will open up a tab, give the new form name and caption and click on OK

© 2022 Agile-Labs.com Page 10


Axpert – Release Notes

A new form screen appears, where you can drag and drop fields as desired.

A new form is created and is available on run and dev site

Remove Field from a created form on Runtime

To delete a field in the new form, click on the edit button on top of the field and click on the delete
button at the bottom of the pop up.

© 2022 Agile-Labs.com Page 11


Axpert – Release Notes

Remove Form from run site


In the developer page pop up of the newly created form, go to list option on the top right

Click on delete of the form you would like to delete.

Toggle for Set Defult view introduced from List View


Go to any desired form and open the listview. Click on the hyperlink of the entry in the list.

Click on Add View and enter name for the view, make desired changes in filters, columns and set the
default view using the toggle button. Apply filters and Save the view.

© 2022 Agile-Labs.com Page 12


Axpert – Release Notes

A New view with the given name appears as default as shown

Zoom in using google map to cover nearby areas

Google map has to be zoomed in when located. It should show nearby areas.
In Advanced settings create a google maps zoom key.

Configure it with appropriate values

© 2022 Agile-Labs.com Page 13


Axpert – Release Notes

Configuration: “Google Maps Zoom”


Key: “Google Maps Zoom”
Property Code: “Google Maps Zoom”
Value: 1 – 22:
1: World
5: Landmass/continent
10: City
11: Default
15: Streets
20: Buildings
Description: Use this key to set the zoom level in google maps for particular / all tstruct

In the form define a field named latlongmap that will display the map on the run time. Set the field
width to 4000.

In the run time, the map is displayed as shown

© 2022 Agile-Labs.com Page 14


Axpert – Release Notes

Check Box component to be displayed in the List View

Created on, created by, modified on, modified by introduced as part of listview
columns

Validation error messages based on language selected during login


A new feature introduced to show the validation error messages based on logged in language by
using error codes.
▪ Error codes definition structure added in Admin console.
▪ Using this Definition structures users can add the error codes and error messages for
different languages which can be used 1 or multiple forms at application level
▪ All Error codes should start with '#' character.
Example:

© 2022 Agile-Labs.com Page 15


Axpert – Release Notes

❖ Suppose an error code added as -- Error code: #1001, Error Message: Field values
should not be same.
❖ Suppose Validation Expression added as: IIF (fldA#fldB,{T},{#1001})
❖ When user enter the data same in fldA and fldB then error message will pop up as
'Field values should not be same'

UI SCSS Custom Hook file along with Bootstrap 5 SCSS compiler


Additional SCSS imports to be referred in following empty “_custom.scss” partial file available in
“\UI\compiler\src\sass” directory
Example Imports:
@import “examplestyles”;
Any Variables / Methods / Mixins available in bootstrap 5 can be used here
Compilation can be triggered by pressing the “F5” key in Visual Studio Code Editor.
Note: Make sure “npm install” is completed.

Easy signin template based on projects

Configuration:
• Create HTML page in CustomPages directory with name as
{{connectionName/projectName}}.html
Example 1: projectName.html
• In web.config enable “landingPageHTML” configuration by setting value as “true”
• The custom html should be wrapped around in following code:
<template class=”templateAgContent”> … </template>
• HTML Should compulsorily have “axCustomLoginControl” class to custom linked controls along
with “data-id” attribute with value as REAL FIELD id as below
List of Important Controls:
▪ Username Control: axUserName
▪ Passwsord Control: axPassword
▪ Remember Me Control: signedin
▪ Submit Button: btnSubmit
▪ Forgot Password Link: lblForgot
Example:
▪ <input class=”axCustomLoginControl” data-id=”axUserName” type=”text” name=”Username”
/>
▪ <input class=”axCustomLoginControl” data-id=”axPassword” type=”password”
name=”Password” />
▪ <input class=”axCustomLoginControl” data-id=”signedin” type=”checkbox” />
▪ <button class=”axCustomLoginControl” data-id=”btnSubmit” href=”#”>LOG IN</button />
▪ <a class=”axCustomLoginControl” data-id=”lblForgot” href=”#”>Lost your Password?</a>
• To open the SignIn page for the required project open the website with first URL parameter as
{{connectionName/projectName}}
Example: https://agilecloud.biz/run/aspx/signin.aspx?projectName
Note: Custom Html in Signin page will not have Background Image and Project Logo set in
Configuration Page, this has to be handled in this custom signIn page template itself.

Separate Sign In page to accept username and password

During Sign in on the application, the page is enhanced to accept schema name and user name

© 2022 Agile-Labs.com Page 16


Axpert – Release Notes

Click on Next, then enter the password and click on Login. This is introduced considering the security
aspects of authentication.

Internal SSO key creation and automatic login

Enable an API to validate the user id in the application with a pair of client / secret key and exchange
access token along with once (one-time random key)
Provide a redirect page with the token & nonce, where need to implement a logic to validate and
establish login.

© 2022 Agile-Labs.com Page 17


Axpert – Release Notes

Note:
• A web method is introduced as below with accepting project name, which can be called on
Hyperlink/Button click.
Ex.: getInternalSSOToken(_thisProj)
• This web method will call an RestAPI(GetInternalSSOKey) with parameters as project name
and username as below.
Ex.: "{"_parameters”: [{"getssokey”: {"axpapp": "trainee","username":"admin"}}]}"
• This will return the unique SSO key, and this can be used as query string along with
username, projectname and language for the project URL.

Redis Connections at application level

A new feature is added in configuration page to set the Redis connections at application level (which
is same as DB connections).

➢ Note:
▪ Once a Redis connection tested and established, those connection parameters along with
encrypted Redis authentication password is saved with connection name.
▪ This file saved as 'redisconns.xml'
▪ Multiple connections can be saved in this file with different connection names.
▪ Redis configuration connection file can be used in other supporting Binaries, Agile Connect
and Axpert Flutter Applications.
▪ Introduced SetToRedis overload parser function with parameters
'SetToRedis(connectionname,keyname,keyvalue)'
▪ Introduced GetFromRedis overload parser function with parameters
'GetFromRedis(connectionname,keyname)', where parameter 'connectionname' will be used
to get the Redis connection details which is stored in the file 'redisconns.xml'

➢ Along with this feature, there are some changes in 'web.config' as explained below. Also,
please note that these changes are required in application level considering security aspects as
well since we are keeping Redis password in readable format.
▪ Below 4 keys needs to be removed.
• <add key="redisIP" value="" />
• <add key="redisPass" value="" />
• <add key="axpLic_RedisIp" value="" />
• <add key="axpLic_RedisPass" value="" />
▪ Below 2 keys are added.
• <add key="redisCacheConnection" value="" /> (This key is using for application
related data cache in Redis)
• <add key="axpLicRedisConnection" value="" /> (This key is using for License
details cache in Redis)
• Example:
• <add key="redisCacheConnection" value="R1001" />
• <add key="axpLicRedisConnection" value="R1002" />
• Where values R1001, R1002 are the connection names which are created
through Redis connection setup in configuration page.

© 2022 Agile-Labs.com Page 18


Axpert – Release Notes

Chapter 2. What’s new in 11.1.1


Features & Enhancements
SSO integration through Azure AD
Steps to Enable SAML SSO:

• Add/Enable below web.config keys

<add key="SamlPartnerIdP" value=""/ >


<add key="ssologin" value=""/>
<add key="ssoredirecturl" value=""/>
Example:
<add key="SamlPartnerIdP" value="https://sts.windows.net/0b1513a2-8f4d-4478-ab27-
28da7a534984/"/>
[After this, add application in Azure AD portal. It will generate 'Azure AD Identifier' url that
needs to be copied]
<add key="ssologin" value="saml"/>
<add key="ssoredirecturl" value="http://demo.agile-labs.com/"/>

• ServiceProvider and PartnerIdentityProviders needs to be changed in saml.config file


1. ServiceProvider Name: Identifier (Entity ID)
2. AssertionConsumerServiceUrl: Reply URL (Assertion Consumer Service URL
3. PartnerIdentityProvider Name: Azure AD Identifier url
4. SingleSignOnServiceUrl: Login URL from Azure AD portal
5. SingleLogoutServiceUrl: Logout URL from Azure AD portal
6. Certificate FileName: Certificate name has to be specified here. And the same can be
downloaded from Azure AD portal. Copy this into Saml_Certificates folder in webcode

Enhanced Keep me sign-in functionality


This change will show a list of users logged from the browser with keep me sign in, and then the user
needs to choose either to log in with another user or an existing user. If the user logs in and chooses
the keep me signed in option then, next time the user can automatically log in.

Save and print in mobile app

In Axpert 11 mobile application, assigning save and print action in submit button .

UI Configuration

UI Configuration is made available in Axpert configuration page.


Project Logo: Insert the company or product logo based on project.
Web Project Background: Set the background display of your project with desired image.

© 2022 Agile-Labs.com Page 19


Axpert – Release Notes

Mobile Project Background: Set the background image for your project in Axpert mobile application.

© 2022 Agile-Labs.com Page 20


Axpert – Release Notes

Chapter 3. What’s new in 11.1


Features & Enhancements
Axpert Configuration on web

If a new site is being set up and has no Axpert license the configuration option is shown. To configure
Axpert on the web, go to the run site of the designated server and find the Sign-in option.
Click on Axpert Configuration option.

The Axpert configuration page opens up. There are two types of license activation options available as
shown below.

1. Activate Online:

If you want to activate your license online, then click on the radio button next to it.
Enter the registration key in the text box and click on activate. On successful activation, License
information will be displayed as shown.

2. Activate Offline:

If you want to activate your license offline then choose the “Activate offline” option on the screen.
Enter the registration key in the box and download the registration file. The downloaded .reg file has to
be sent to the licensing team for activation requests.

In return, the licensing team will provide you with a configured license file. This file has to be uploaded
to the site using the “Upload license file” option.

Once the file is uploaded, the license will be activated and related license information will appear on the
screen.

© 2022 Agile-Labs.com Page 21


Axpert – Release Notes

Once the license activation is successful the database connection and demo will be enabled.

Testing database connection while creating new connection


Create a new DB connection by clicking on the ‘+’ button on-screen, providing the required
credentials. Click on Test Connection.

If the test connection is successful, click on apply. Enter a new connection name and click on OK.
Find the new connection in the DB connections list.
Try logging into the developer site to confirm successful creation.

DB Password Change
Click on Change password and enter the new password.
Click on Apply to change the existing password and wait for the “Password changed successfully”
message.
Try connecting to the DB by entering new password to ensure the change.

Application Properties

Incorporated application properties in web which were available in Axpert desktop.

Steps to set or modify application properties:

3. In run site, go to Admin Console.


4. Click on Application properties option available on the side bar.
5. Set Axpert properties as per the requirement.

© 2022 Agile-Labs.com Page 22


Axpert – Release Notes

List View Designer for Smartviews

To enhance user experience in list view a design option is provided. Using this the columns can be
resized and moved as desired.

One can drag and drop items to rearrange or resize column width and click on OK

For example, Moved Employee Name field after Date of Birth.

Capture signature in Axpert

We have a field that can accept digital signatures.


• Create an image field with “sig_” prefix. For example, “sig_imagename”

© 2022 Agile-Labs.com Page 23


Axpert – Release Notes

• In the run site, a field to insert a signature is provided.

• Click on the icon to add the signature manually. Click on the right mark at the bottom to save
the signature successfully.

Download files from Iviews

Download the file/attachments in IViews when provided the mapped path. To achieve this, below
iview configuations needs to be applied.

➢ Concerned Iviews should have the following columns by default.


• transid: transid of the tstruct.
• If isdbattach column value is true then transid column value should be ("transid+fieldname")
• If isdbattach column value is true and is db attachment is header attachment then only
"transid" should be passed.
• fieldname: field name in tstruct(to be kept empty for header attachment)
• recordid: transaction record id.

© 2022 Agile-Labs.com Page 24


Axpert – Release Notes

• isdbattach: this is an optional column which determines wheater the attachment is db


attachment or file attachment, if the attachment type is db attachment then this column
value should be true
• axp_attach (can be any one of following):
• Text to be shown on download hyperlink (this column is a flag to enable/disable
attachments component)
• Grid attachment name (value of grid attachment)
• Full mapped path if transid, fieldname, recordid is not provided
• ResolvePathForTemplates : "resolve attachment path" property is used for iview templates
in case of resolving image path to show image in iview templates. "Resolve attachment
path" Advanced Setting configuration property with property code as "resolve attachment
path" to be added as true or false.

Note:
➢ If File Server and App Server are different systems, then File Server needs to be
authenticated for downloading or uploading the files with following Application Variables,
provided both servers should be in same domain.
• axp_mapusername
• Username for the domain
• axp_mappwd
• Password for the domain
• axp_domain
• Domain Name

Example:
DB Attachment
• select 'gddwn' transid_real,gddwn1id recordid,'dc2_image' fieldname,dc2_image
axp_attach,'gddwndc2_image'transid, 'true' isdbattach from gddwn2
Non DB Attachment
• select null transid_real,gddwn1id recordid,null
fieldname,replace(axpfilepath_img,'*','')||axpfile_img axp_attach,null transid, 'false'
isdbattach from gddwn1
DB + Non DB Attachment
• select 'gddwn' transid_real,gddwn1id recordid,'dc2_image' fieldname,dc2_image
axp_attach,'gddwndc2_image'transid, 'true' isdbattach from gddwn2
union all
select null transid_real,gddwn1id recordid,null
fieldname,replace(axpfilepath_img,'*','')||axpfile_img axp_attach,null transid, 'false'
isdbattach from gddwn1

© 2022 Agile-Labs.com Page 25


Axpert – Release Notes

Chapter 4. What’s new in 10.9


Features & Enhancements
Server Based Licensing for Axpert Web Applications
The licensing is being modified from 10.9 Product Version to introduce the Instance / Server Based
license according to the current business model / need.
The main functional changes in new license model are as follows:
1. Named users check is removed and concurrent logins check introduced for limited user
licenses.
2. Removed product code checking.

Accordingly, Axpert Desktop, Web and Developer/build license have been categorised as
follows:
1. Evaluation License
2. Partner License
3. Desktop License
4. Web License
5. Site License
All the above License Editions are same as existing license edition except the following.
Desktop Edition (ALM Required).
This edition is same as previous version End user license Edition and this license edition
is considered as schema / project-based licensing.
• Any one machine in the end user LAN in case of desktop version and the web server in
case of web version will be registered with Agile. All machines need not be registered as
in the current practice.
• End users will be licensed based on any one or more of the following
o number of users
o number of TStruct, IViews
o expiry date
o number of transactions.

• Apps developed on Axpert need Axpert Desktop license to run the Apps as Desktop
Projects.
• Axpert Desktop license is DB Schema based license. Each Project
requires separate license activation
• Those projects can be browsed through Axpert Web Apps as well
• Any one machine in the end user LAN (this machine supposed to be run 24/7. So, ideal
machine would be DB Server) in case of Desktop Application and the Web Server or DB
Server in case of Web Application would be registered with Agile. For this purpose, ALM
needs to be installed in this machine.

© 2022 Agile-Labs.com Page 26


Axpert – Release Notes

• All machines need not be registered from this version of Axpert.


• End users will be licensed based on any one or more of the following
• Number of users.
• Number of TStruct.
• Expiry date.
• Number of transactions. End users will also have an option to top up once they reach
the transaction limit after making a payment.
Web Edition (Server Based)
This is the new license edition introduced from 10.9 Axpert version as per the new business
model. The properties of server/instant based license edition are as follows.

• This is an App Server based license. Project/Schema wise license activation not
required.
• 'N' no. of Projects/Axpert web sites can be deployed in server by using this edition.
• In-Memory DB Redis connectivity is a must in App Server for this Edition.
• No. of active logins will be restricted across projects/schemas in case of limited user
licenses.
• All licensing parameters would be applied across the Projects deployed in Server.

1. This newly introduced Web license would be working based on below web.config keys
with proper values.
• <add key="axpLic_RedisIp" value=""/>
• Ex.: 127.0.0.1:6380
• <add key="axpLic_RedisPass" value=""/>
• Ex.: agile.01
• Note: [axpLic_RedisIp should be 127.0.0.1]

2. Web license redis setup:


• Duplicate redis.windows-service.conf file to redis.windows-service-axplic.conf and
change following property values
• dbfilename (Ex.: axplic_dump.rdb)
• port (Ex.: 6380)
• requirpass (if required)
• Following commands needs to run.
• Redis-server --service-install redis.windows-service-axplic.conf --service-
name axplic_redis
• Redis-server --service-start --service-name axplic_redis
3. If the web license key is for limited user then following variable should add in system
environment variable
• Variable name: "axpLic_RedisIp"
• Variable value: 127.0.0.1:<portno> Ex.: 127.0.0.1:6380

© 2022 Agile-Labs.com Page 27


Axpert – Release Notes

Modern SmartView’s
Smartviews are completely modernized with added features, performance impovements and
customizations:
View Tabs
Modern SmartView’s introduces a new functionality of saving user/admin defined views with
parameters, charts, filter, sort, row grouping, columns, highlight and action bar pins called
Views. Views for SmartViews can be created and saved by individual user and administrator.

Dynamic Column UI And Action Templates


The SmartView’s columns template can be changed to achieve desired UI and Actions. This
is done by doing the following steps.
• Create HTML using Handlebars expression format. Refer Handlebars reference website.
• Handlebars template will refer iview column names as expressions, including additional
expressions like axRenderProject, axRenderIName, axRenderRowNo, axRenderThis,
etc.
• Handlebars will add flexibility of writing expressions, conditions and loops in html.
o Added Helpers
▪ is: “is” helper is an enhanced version of “if” helper supporting additional
conditional operations like:
• ==
• ===
• !=
• !==
• <
• <=
• >
• >=
• contains: Contains string
• toUpper: To upper equals
• toLower: To lower contains
• undefined: Is expression undefined
• false: Always false
• is: Equivalent to if expression
▪ split: if data contains any split character then this helper can help split
and loop through that expression

© 2022 Agile-Labs.com Page 28


Axpert – Release Notes

• This Template may be repeated for every row.


• Once the HTML is ready, open the templates open form menu in Axpert dot net
• Enter the iview name,
• Copy the HTML into the text box and save. Select “All” in the Events field.

The “Template” form looks as below Screenshot:

• Screenshots:
• Before Template:

• After Template:

© 2022 Agile-Labs.com Page 29


Axpert – Release Notes

Column Template Code Example


<div>
{{#is emp}}
<span>
<a class="fa fa-wpforms fa-2x"
href="javascript:callHLaction('Open_Tstruct',{{axRen
derRowNo}},'{{axRenderIName}}','');setRefreshParent('false');"
class="l3" style="color: green;">
</a>
</span>
{{#is sal '>' 10000 }}
&nbsp;
<span>
<a class="fa fa-table fa-2x"
href="javascript:callHLaction('OpenIview',{{axRe
nderRowNo}},'{{axRenderIName}}','');setRefreshParent('false');"
class="l3" style="color: blue;">
</a>
</span>
{{/is}}
{{/is}}
</div>

Modern and Classic Button Options


SmartViews provide two types of button UI i.e. Modern and Classic Buttons which
administrator can switch by adding “Iview Button Style” Developer Option.

© 2022 Agile-Labs.com Page 30


Axpert – Release Notes

• Modern Buttons

• Classic Buttons

• Options Pinning
Required Options button can be pinned to TitleBar

Param and Filter Strings


Params and Filters string will be visible in Smartviews.

© 2022 Agile-Labs.com Page 31


Axpert – Release Notes

Individual Row Refresh for Actions


Modern SmartView’s will update single row in Report if action event is selected as “ Current
Row” and action definition updates back the variable like following:

Column Background introduced in web


Background color added to column will be visible in web.
Column Separator
Column Separator for smartviews can be enabled by adding Developer Option "Column
Separator for Reports"

Mobile Reports as Table


Tables can be enabled in mobile view by enabling Developer Option "Mobile Reports as
Table"

Old Iview UI
Administrator can altogether disable Modern SmartViews feature and switch back to old
smartviews UI by adding Developer Option “Load Old Model Views”

© 2022 Agile-Labs.com Page 32


Axpert – Release Notes

Notifications for Long Running Webservice’s


Notification feature can be enabled at Application level by adding Developer Option “Notification
Time Interval”. Once this key is added, long running web services/backend scheduled jobs
completion can be notified to the user with given time intervals, so that user would be able to do other
operations during long running web services/backend jobs.

Form Actions
• Import Data
If import data is taking more time than expected to import data, for example 30
minutes. Then users don’t need to wait for such long time and can continue working
on other tasks. Once the operation is completed then automatically notifications gets
shown in notification panel.

• Managing Redis Cache


Modern SmartView’s Redis cache can be managed from “In Memory DB” page.
SmartView’s
• Load
If SmartView’s contains large number of data and user has requested to load all
records for that smart views, then instead of throwing timeout error user can continue
doing other operations and he will get notification once iView is loaded completely.

• Print, PDF and EXCEL


If SmartView’s contains large number of data and user has requested to export Print,
PDF or Excel for that smart views, then instead of throwing timeout error user can
continue doing other operations and he will get notification once iview is loaded
completely.
Accessing Notifications

© 2022 Agile-Labs.com Page 33


Axpert – Release Notes

Configuration for Enabling Notifications


Notification feature can be enabled Application level by adding Developer Option “notification
timeout” with Property Code as "General" and Values as "1 / 5 / 10 / 30 / 60"
If “Notification Time Interval” Developer Option is not set then notification feature will be
disabled.
Extending Webservices Timeout without Notifications
Old Iview UI can be enabled by setting Developer Option "Load Old Model Views" as "true".
Webservice Timeout can be can be extended For SmartView’s and Form’s actions
independently by adding Developer Option “Webservice Timeout” with Property Code as
“Webservice Timeout” and Values as "100000(default)/200000,300000/etc"

© 2022 Agile-Labs.com Page 34


Axpert – Release Notes

File Upload in TStruct


Intro of the feature:
1. File uploads can be done by creating specialised File Upload fields in TStruct with same
input field name.
2. These can be created in both Grid and Non-Grid DC.
3. The file path & server specific to a File Upload field can be set by creating a File Path
field.
4. A File Upload field will provide a button to upload files and view the uploaded files and
remove the files.

Instructions to add input field in definition:


1. The field name should be prefixed with AxpFile_. Such field is called the file Upload
Field.
2. The File Path field should be prefixed with AxpFilePath_.
3. The FileUpload field name should be suffix with AxpFilePath_ in a FilePath field.
Example: If the file upload field is AxpFile_MyImage, the corresponding file path field name
should be AxpFilePath_MyImage.

4. FilePath value Suffix with * to add a file name modifier.


Example:
• if file path is\\IServer\Images\, then the file that is named as “MyPhoto.JPG” is
uploaded, it will be stored as \\IServer\Images\MyPhoto.JPG.
• In case the file path is \\Server\Images\07082020*, and a file named “MyPhoto.JPG”
is uploaded, it will be stored as \\Server\Images\07082020MyPhoto.JPG
• In case the file path is \\Server\Images\*, and a file named “MyPhoto.JPG” is
uploaded, it will be stored as \\Server\Images\(20 digit random
number)MyPhoto.JPG
Ex: \\Server\Images\12345678901234567890MyPhoto.JPG

Note: For each field there will be a separate file path. If there is no expression set in
AxpFilePath_ field or AxpFilePath_ field not define, It will take axpImagePath as file path.
Functionality of the feature:
1. For every Attachment field there will be a one attach icon for attach files to the
corresponding field.
2. If the field width is not sufficient to show all the file names, then remaining file will move
inside a popover. And according to the number of remaining files it will show a hyperlink
inside current input field as num+ for opening corresponding popover.
• Below screenshots are showing the remaining files hyperlink as 1+ and popover
(which is showing the remaining files).

© 2022 Agile-Labs.com Page 35


Axpert – Release Notes

3. If file path is \\MALAKONDA\KM_Reddy_Backup\axpert\ and we are attaching


MyPhoto.jpg file, then file will store in \\MALAKONDA\KM_Reddy_Backup\axpert\ and
the filename will be MyPhoto.jpg .

4. If file path is \\MALAKONDA\KM_Reddy_Backup\axpert\07082020* and we are


attaching MyPhoto.jpg file, then file will store in
\\MALAKONDA\KM_Reddy_Backup\axpert\ and the filename will be
07082020MyPhoto.jpg.

5. If file path is \\MALAKONDA\KM_Reddy_Backup\axpert\* and we are attaching


MyPhoto.jpg file, then file will store in \\MALAKONDA\KM_Reddy_Backup\axpert\ and
the filename will be (20 digit random number )MyPhoto.jpg.

© 2022 Agile-Labs.com Page 36


Axpert – Release Notes

6. For a Current record only one file will be allowed with the same name.
Example: If previously uploaded MyPhoto.jpg file ,then it will not allow to attach same file
name with the same record. It will show File Already Exists .

7. If Uploading file already exists in the path it will give a alert and need to rename the file
and upload again.

8. If we delete any file, it will be removed from the corresponding filepath.

Login
SSO Login
SSO authentications are in built in the AxpertWeb with followings such as OKTA, Office365,
Google Account & Face Book. User can choose multiple SSO Authentications based on
requirement.

© 2022 Agile-Labs.com Page 37


Axpert – Release Notes

Configurations:
1. Should be registered Client ID from each SSO in their developer sites examples
given individually.
2. Should be enabled below keys in web.config file in the webcode.
a. ssologin : okta,office365,google,facebook
Ex: <add key="ssologin" value="okta,office365,google,facebook"/>
b. ssoclientKey : oktaClientiId,office365ClientId,googleClientId,facebookClientID
Ex: <add key="ssoclientKey" value="0oacsbt8oZl24CEmQ4x6,bfff8cad-3c1c-
4c14-9499-2423c724f3b7,493358977849-
so1sc0tcs9gqrh4jiuaqs36jr9cns0cv.apps.googleusercontent.com,252601612604428"/
>
c. ssoclientsecretKey : Client Secret Id have the google and facebook only and
below is the example.
Ex: <add key="ssoclientsecretKey" value=",,ChzG0QxESuMZkQ--
mStkSj9z,2bdba09e6ba0e2f47225487344153b59"/>
d. ssoredirecturl : This is basically redirect URL after SSO authentication
Ex: <add key="ssoredirecturl" value="https://demo.agile-labs.com/"/>

Note : There should be a corresponding entry in axusers table for those login names
which are used to login to Apert Web through SSO authentications.

OKTA:
a. https://developer.okta.com/
b. Create Application

c. Web Application

© 2022 Agile-Labs.com Page 38


Axpert – Release Notes

d. Enter application name, Base URL, Login redirect URLs, Logout Redirect URLS

e. API -- Trusted Origins

© 2022 Agile-Labs.com Page 39


Axpert – Release Notes

f. Users --> Add Person

g. Copy Client ID and add the same in web.config

h. OKTA will not give a popup window to enter username & password, so in this case
username & password has to enter as normal login. but for other SSO login will show
the popup there has to be enter the username and password.

© 2022 Agile-Labs.com Page 40


Axpert – Release Notes

Office365:
a. https://portal.azure.com/

b. Select Azure Active Directory Service

© 2022 Agile-Labs.com Page 41


Axpert – Release Notes

c. Choose App Registrations --> New Registration

d. Enter application name & Choose Supported Account Type

e. Choose redirect URL type as Web & enter the redirect URL

f. Copy Client ID and add in web.config

© 2022 Agile-Labs.com Page 42


Axpert – Release Notes

3. Google Account:
a. https://console.developers.google.com/
b. Login / Signup with Google account
c. Create New project

c. Credentials --> Create Credentials

d. Choose OAuth client ID

e. Configure consent screen

© 2022 Agile-Labs.com Page 43


Axpert – Release Notes

f. Choose Internal / External

g. Application Name, logo, email, add scope if required more, application home page
url and Save

h. Select Credentials -- > Create Credentials --> OAuth client ID --> Select
Application Type as Web Application

© 2022 Agile-Labs.com Page 44


Axpert – Release Notes

i. Add URIs & Authorised redirect URIs and Save

j. add these Client ID and Secret key in web.config

4. Face book:

© 2022 Agile-Labs.com Page 45


Axpert – Release Notes

a. https://developers.facebook.com/
b. Login/ SingUp with facebook
c. Create App in My Apps
d. Enter app name, email id and click on create app id

e. Set Up facebook login

f. Choose WEB and give Site URL and save and continue

© 2022 Agile-Labs.com Page 46


Axpert – Release Notes

g. FaceBook login settings --> Enable Embedded Browser OAuth Login & give a valid
OAuth Redirect URIs and Save Changes.

h. Settings --> Basic --> Copy App ID & App Secret keys and add in web.config in the
webcode

i. My Permissions and Features --> Email & Default -- incase app not work these
permissions shold be enabled.

© 2022 Agile-Labs.com Page 47


Axpert – Release Notes

Stay Sign in
Stay signed in has introduced in the product, to enable checkbox of stay signed in in sign in
page below web.config key should be enabled with value as "true"

Key:
• <add key="staysignin" value="true" />

Strong password policy


Strong password policy details with alphanumeric, contains one Upper Character, one Lower
Character with atleast one special character can be enabled by adding Developer Option
"Enforced Strong Password Policy".
Auto Hide Menu After Login
Menu can auto hide after login by adding Developer “Show Application Menu on Login” as
false.

User Manual
User Manual option can be enabled by adding Developer Option "User Manual" as true.
Intro of the feature:
User can able to access the files through web application which is saved in local folder
through User Manual option (located in right sidebar menu).

© 2022 Agile-Labs.com Page 48


Axpert – Release Notes

Steps to enable this feature:


1. Define one new key as “User Manual” in Configuration Property.

2. Go to Developer Options and select the Property as User Manual ,Property Value as
true and in Property Info field you can give the folder path which folder user want to
access.

3. If the path has not given Property Info field, then it will access the files from default
folder i.e “\\WebCode\CustomPages\userManual” .

Functionality of this feature:


1. If the Property Value is set true, then in right sidebar menu one option will be available
as “User Manual”. From where user can able to view the list of files.

2. If the Property Value is set false, then It will not display User Manual Option in right
sidebar menu.

© 2022 Agile-Labs.com Page 49


Axpert – Release Notes

3. Inside Property Info field, if user has given any path then it will take that path and listed
all the files in User Manual popup.
If the path is not given then it will take the default folder path which is
“\\WebCode\CustomPages\userManual” and listed all the files of this folder in User Manual
Popup.

4. By clicking on the filename User can able to view the file.

Auto Save Draft Enhancements


1)Add key in advance settings with key name: Auto Save Draft
2)set key value to true and time in millisecs(for ex for 60 secs give 60000)
3)default time will be 120 seconds/2 minutes if no time is set
4)on loading tstruct,it will check if unsaved data is there, if exists it will throw a popup with yes /no
buttons
5)if yes, it will load the unsaved data
6)if no, it will load a new tstruct.

Note: when a new tstruct is opened for which key is set in developer options, data will be pushed to
in-memory only if at least one field is changed.

Hybrid Application
Android & IOS Geolocation based on Configuration
Precise Geo Location can be enabled for hybrid application while adding Hybrid Application
as “Need Location Details?”
Enable/Disable the keyboard for autocomplete fields
Autocomplete fields can have keyboard enabled/disabled by setting Developer Option
“Show keyboard in Hybrid App”

Customization
Axpert interface page for Simple way of Customization
Various WebMethods are introduced to consume for custom pages like:
• GetGlobalVar
• TstructSaveData
• GetWidgetData
• GetIViewParams
• GetIViewData
• etc.

Custom HTML on TStruct


HTML for TStruct can be completely changed to achieve completely different user interface
by following steps:

© 2022 Agile-Labs.com Page 50


Axpert – Release Notes

• Go to TStruct design mode and click on HTML (new button introduced) button
• Left is the existing HTML and copy and modify & past in right side and click on ok
button, then it will save in the DB
• After that open/load the TStruct these HTML will be affected in run mode.

Custom Css And Js file load without changing Product Code


▪ Custom JavaScript:
o Property code: 'Custom JavaScript'
o Property name: 'Custom JavaScript'
o Property value: 'true' / 'false'
o Form/Report: Can be All Reports/Forms or choose single report/form
o User Role: Can be All or Role wise
o Description: Use this property to attach custom javascript to Reports/forms.
Set this property value to "true" for a selected report. If this property is set
to true, the custom javascript file
o Reports should be saved into the web
root\<ProjectName>\report\js folder. The file name should
<reportName>.js. In case this property is set to true for all reports
instead of a selected report, the file name should be custom.js
o Tstruct should be saved into the web
root\<ProjectName>\tstruct\js folder. The file name should
<tstructName>.js. In case this property is set to true for all tstructs
instead of a selected tstruct, the file name should be custom.js
▪ Custom CSS:
o Property code: 'Custom CSS'
o Property name: 'Custom CSS'
o Property value: 'true' / 'false'
o Form/Report: Can be All Reports/Forms or choose single report/form
o Description: Use this property to attach custom CSS to Reports. Set this
property value to "True" for a selected report. If for report this property is
set to true
o For Reports the custom CSS file should be saved into the web
root\<ProjectName>\report\js folder. The file name should
<reportName>.CSS. In case this property is set to true for all reports
instead of a selected report, the file name should be custom.CSS.
o For Tstructs the custom CSS file should be saved into the web
root\<ProjectName>\tstruct\js folder. The file name should
<tstructName>.CSS. In case this property is set to true for all tstructs
instead of a selected tstruct, the file name should be custom.CSS.

Landing Page HTML


Landing Page can be set for an application based on following web.config key as true. If user
want load project wise html also there. the file name should be as project name:
• <add key="landingPageHTML" value="true"/>
Project Wise Main Page Template
Project wise Main Page Template feature can be enabled by adding following in web.config
as true, this template will be automatically loaded from “CustomPages” directory with
filename as <project name> + "-MainPage.html"
<add key="AbMainPageHTML" value="true" />

© 2022 Agile-Labs.com Page 51


Axpert – Release Notes

Application Level Compressed Mode


Compressed Mode is made default for Application UI and SmartView’s, this can be overridden from
Settings Panel by enabling Modern UI Switch.

Breadcrumb Title
Breadcrumbs switch can be enabled for SmartView’s and Forms from Global Settings.

Export to Excel option in TStruct Grid


TStruct Grid can now be exported to excel.

© 2022 Agile-Labs.com Page 52


Axpert – Release Notes

Chapter 5. What’s New in 10.8?


Note for upgrade
When upgraded from a lower version, the following change needs to be done in web.config
• Open web.config file from the root directory of Axpert. This is the folder where Axpert dot net is
installed.
• Remove the XMLNS attribute from configuration element. This element can be found in the first
line of web config.

Features & Enhancements


AES Encryption
Passwords can now be encrypted using AES algorithm and stored in database. This can be enabled
by enabling the property “Apply advanced encryption standard on user password”. This property is
availabe under “User Access & Passord policy setting” in property window in Axpert Desktop.

HTTPS support
The home page & widget builders did not support HTTPS in earlier versions. This version can be
deployed in HTTPS environment.

Slick home page


Home pages can now be made to look more attractive by setting on the “Slick group” attribute. This
attribute is available in the page property sheets in page puilder This will group KPI, Charts, Tables
and make them look attractive. This option is now available when page layout is basic.

Attachments
Forms can now have a field to upload attachments. This field will allow users to upload one or more
documents remove and change them. To create a field to enable users to upload attachments, the
field name should be prefixed with “axp_nga”. This feature is now enabled only Axpert Web and not
available in desktop. The attachments will be stored in file servers and not in database. The path in
which the file will be stored can be specified using application variables AxpImagePath. The file
server URL or server name can be provided in AxpImageServer.

File download feature in Reports/IViews


Files can be downloaded from lists (defined as IViews). To enable this feature in an IView, introduce a
column in the iview named “axp_attach”. This column should have the complete file path along with
file name. On click of the link, the file will be downloaded.

Attachments made ithrough fields in forms/tstructs have to be downloaded. To do this add columns
transid, fieldname & recordid. These columns should contain the tstruct name, field name & record
id of the transaction. The contents from the given field and record will be shown in the “axp_attach”
column. Users will have options to download by clicking on any file that is displayed in the
“axp_attach” column.

Work flow
A new attribute named “From Mail Id” is introduced in work flow configuration. Axpert will send mails
to users for doing approvals. By default, these mails will be sent from the originating users mail id.
This can be changed by providing a mail id in this attribute. Now, user orgranizations could have a
common mail id to send mails from Axpert.

Grids as a frame
Set TStruct Grid Edit property to form. This property can be set through Advanced configuration. It
can be set for any form or all forms. In this mode, grids in forms will be shown as non grid with options
to add rows, remove rows and navigate through them.

© 2022 Agile-Labs.com Page 53


Axpert – Release Notes

Multi select fields


Selection or drop down fields in tstructs/forms allow user to choose only one value. There may be
need for user to select multiple values. To enable this set the property “Multi Select Field” to true. This
property can be set through advanced configuratot. The multiple values selected by user will be set as
the field value. The values will be delimited by comma. The delimter can be changed to any other
character by setting it in the “Property Info” attribute fielld in the advanced configurator.

The dropped down values may be grouped. Users can then select one or more values from each
group. This will be useful in making complex user selection that may be used to describe data more
accurately.

Grouped selection is enabled by providing the following columns in the SQL result for the drop down
field
a) Mslist – This column will contain the dropped down values that will be displayed for user
selection.
b) Groupby – All dropped down values that should be grouped and shown under one heading in
the drop down seleciton window will contain the same value in this column.
c) GroupOrder – This specifies the order in which the groups and its elements will be displayed
in the selection window. Lowest value first to the highest value.
d) Selected – This can be set to true if the value should be selected by default in the drop down
selection window.

Example : Consider an SQL result as below


Mslist GroupBy GroupOrder Selected
Red Color 1 F
Blue Color 1 F
Black Color 1 F
XL Size 2 F
L Size 2 F
M Size 2 F
S Size 2 F
Cool Style 3 F
Slim Style 3 F
Bold Style 3 F

The selection window will appear as below

Color Size Style


Red XL Cool
Blue L Slim
Black M Bold
S

Locations and maps in Forms/TStrcuts


The latitude and longitude of the device in which data is enterd can be captured into fields in forms.
Add fields named “Latitude” and “Longitude”. These fields will be automatically filled with current
lat and long.

To display the location on a map, introduce a field named “LatLongMap”. The field type should be text
area. This will work only in non grid DC. The map will be displayed in this field with the lat and long
pinned on the map. This needs to be integrated with google maps to work by providing the google
map API key. This can be provided in advanced config.

© 2022 Agile-Labs.com Page 54


Axpert – Release Notes

Select the property name as “Google Map API Key” for this form. Set the API key value in property
info. The property value should be set as “General”.

© 2022 Agile-Labs.com Page 55


Axpert – Release Notes

Chapter 6. What’s New in 10.7?


This chapter provides more information on features and enhancements made in 10.7.

Sections of this chapter:

• Features

© 2022 Agile-Labs.com Page 56


Axpert – Release Notes

Features
This section provides more information on the features available in 10.7 release.

User interface
The user interface of the main page is standardized using material design. This version has been
simplified to user convenience.

Mobile Compatibility
Axpert is now fully compatible with mobile and can be easily accessed from either mobile browser or
Axpert Hybrid mobile app. You can also access into Axpert mobile application in few seconds. So now
in this version Axpert is more compatible with mobile.

List views
List views now have features to sort, search, filters same as smart views. Users can now sort and
search lists just like any report or view. It now has an inbuilt charting option.

In memory database
Keys are now listed based on forms and reports. So, users can clear the keys related one or more
related forms or reports. When changes need to be applied to a form, the keys related to only that form
can be cleared instead of clearing all keys from in memory. This version has simplified the in memory
database by providing the keys based on forms and report.

Grids in forms
Grids in forms are now having a new look with optimized space utilization. This enables users to see
more rows in the screen without having to scroll. So, this version has optimized space utilization.

© 2022 Agile-Labs.com Page 57


Axpert – Release Notes

Chapter 7. What’s New in 10.6?


This chapter provides more information on features and enhancements made in 10.6.

Sections of this chapter:

• Features

• Enhancements

© 2022 Agile-Labs.com Page 58


Axpert – Release Notes

Features
This section provides more information on the features available in 10.6 release.

Axpert on PostgreSQL
Axpert is now compatible with postgreSQL database as it is one of the powerful opensource databases
providing responsive framework. This database is highly reliable, robust and offers a great performance.

Use Axpert in mobile


You can now view all your Axpert Web applications in mobile. This version of the app offers a simple
and intuitive user experience and is highly scalable and globally available. You can sign-in to your
Axpert application in few seconds and connect to your enterprise on-premises or cloud resources to
digitally manage and report the operational data in the mobile app..

Enhancements
This section provides more information on the enhancements made in Axpert 10.6 release.

Optimizing Axpert Performance


Performance improvement, by nature, is iterative. In this release, the concept of postback is removed
for New, Search and Save buttons on the forms. Let us consider a scenario of opening an existing form
from the menu or from the search bar. Once the form is loaded, click the New button to open a new
form. Axpert now clears data in the existing form and just loads a blank form instead of reloading a new
form. This approach not only loads the form instantly, but has also improved the performance of the
Axpert to a greater extent.

(Note: Axpert loads the new form only when you try to open it from the menu or from the search bar or
from the list view.)

Handling US date format elegantly


Axpert now supports mm/dd/yyyy (01/05/2010) format in addition to dd/mm/yyyy (05/01/2010) format.
You can configure your date format using Date Format property under Advanced Settings option.
After enabling this setting, Axpert displays the date in mm/dd/yyyy format across date fields throughout
the application.

AxpertWeb security enhancements


This topic provides more information on how to protect your website/server against various malicious
attacks:

(i) Cross site scripting (XSS) - This is a code injection attack from the client side. This type of attack
occurs when the victim visits the web page or web application that executes the malicious code. Such
attacks are common in forums and message boards that prompts you to enter comments.

(ii) SSL cookies without secure flag set - When you set a secure flag on cookie, browsers do not
submit the cookie in any requests that uses an unencrypted HTTP connection. This prevents the

© 2022 Agile-Labs.com Page 59


Axpert – Release Notes

attacker to perform the attack. You can set the secure 'httpCookies' flag in web.config file following path
'//configuration/system.web/' as <httpCookiesrequireSSL='true/>.

(iii) OPTIONS Method Enabled - This provides the list of methods that are supported by the web
browser allowing attackers to intensify their efforts. It is recommended to disable OPTIONS Method on
the web server. You can disable this method in web.config file in following path
'//configuration/system.web/' by adding 'authorization' as <authorization><deny verbs="OPTIONS"
users="*"/><deny verbs="TRACE" users="*"/><deny verbs="HEAD" users="*"/></authorization>

(iv) BREACH attack - This is basically an attack against HTTP. This attack can hack the sensitive
information in as little as 30 seconds. To prevent hacking the sensitive information, turn off HTTP
compression in IIS. To disable HTTP compression, refer to https://docs.microsoft.com/en-
us/iis/configuration/system.webserver/httpcompression/ or http://dotnetmentors.com/aspnet/how-to-enable-
http-compression-in-asp-net-website.aspx.

(v) RC4 cipher suites detected - This attack is against TLS that allows an attacker to recover a limited
amount of plaintext when RC4 encryption is used. To counteract this attack, stop using RC4 in TLS.
For more information on how to disable RC4, refer to https://docs.microsoft.com/en-us/windows-
server/identity/ad-fs/operations/manage-ssl-protocols-in-ad-fs#disable-rc4.

(vi) Disclosure of webserver version - Web server often displays what type of server it is, its version
no. and the operating system. Attackers use this information and exploit the target web server. It is
therefore recommended to limit the information displaying on the server.

(vii) Application error message - These messages may expose sensitive information about an
application's internal workings to an attacker. To avoid this attack, configure your application properly
to log errors to a file and redirect to custom error pages, so configure paths properly in httpErrors and
customErrors with mode='On'.

(viii) Unencrypted login request - Unencrypted Login Request is stealing the user credentials such as
usernames and passwords that are sent unencrypted to the server for the request. To prevent hacking
the credentials, use Secure Socket Layer (SSL).

(ix) Missing or insecure content-security-policy (CSP) header - CSP is an additional layer of security
that is used to prevent XSS and data injection attacks.To enable this header, goto
//configuration/system.webServer/httpProtocol/customHeaders path and add the following syntax:
<add name="Content-Security-Policy" value= "script-src 'unsafe-inline' 'unsafe-eval' http:
https:; style-src 'self' 'unsafe-inline'; font-src *;img-src * data:; default-src *;" />

For more information on additional settings, goto https://www.sitepoint.com/improving-web-


security-with-the-content-security-policy/

You can also verify CSP settings in https://csp-evaluator.withgoogle.com/

(x) Missing or insecure "X-XSS-Protection" header - Sometimes browsers, such as Internet


Explorer, chrome and safari, prevents loading the page when they deduct XSS attacks. To automate

© 2022 Agile-Labs.com Page 60


Axpert – Release Notes

this process, goto//configuration/system.webServer/httpProtocol/customHeaders/ path and use


the following syntax: <add name="X-XSS-Protection" value="1; mode=block" />

© 2022 Agile-Labs.com Page 61


Axpert – Release Notes

Chapter 8. What’s New in 10.5?


This chapter provides more information on 10.5 features.

Sections of this chapter:

• Smartviews

• Creating online forms

• Axpert Package Manager

• Wizard based DC

© 2022 Agile-Labs.com Page 62


Axpert – Release Notes

Features
SmartViews
Smartviews are the revamped version of iviews. You can now view any reports in smart views, that has
an attractive user interface design allowing users to perform the following functions:

• Creating filters
• Grouping
• Sorting
• On the fly formatting and so on.
Using filter option, you can customize the visibility of your reports by creating a filter, which screens the
data that the report brings back from your datasource. You can generate a custom report by picking
selected report columns. The introduction of Dynamic expandable search bars with the magnifying glass
icon acts as an effective space saver and provides an effective UX. This search bar is a retractable
textbox that expands on hovering/clicking and retract back when the interaction with the search bar
ends.

How to use Filter option in Smartviews?


1. Open any report.
2. Navigate to the Options drop down as shown below to open Filter window.

3. In the Filters window, enter values in the selected field columns for which you wish to create a
filter and click the Create Filter button.

© 2022 Agile-Labs.com Page 63


Axpert – Release Notes

The created filter appears as shown below.

Records in the report appear according to the filter.

How to group Rows in a report?


To perform row grouping, follow the steps mentioned below:
1. Navigate to the Options drop down in a report and click Row Grouping option.

2. In the Row Grouping window, enter a name to create a new group.

3. In the Column drop down, select the columns that you wish to perform row grouping.

4. In the Function drop down, select one of the arithmetic functions to be performed on the selected
column.

© 2022 Agile-Labs.com Page 64


Axpert – Release Notes

5. In the Source drop down, select the column that will be used for computation.

6. Click the Ok button.

Creating online forms


In this release, you can now create one or more forms in Axpert web using Forms report option available
under the menu. Using Custom Actions drop down in the Form Elements page, you can add various
controls to the form including input fields, frames, grids, post data to other forms and update field details
in other forms, so on. Each control has properties that you can set or change. Form Save option appears
on the first instance while setting the basic properties of the form such as enabling workflows and list
views. After the successful creation of the form, user can click Open Design Mode link under forms
report to actually enter values in the form and save the details.

How to create forms in Axpert Web?


To create forms online, follow the steps mentioned below:

1. In the search box, type Formsand click . The Forms report appears.

2. Click the Create Form button. The Form Properties window appears.

3. Fill the basic details of the form such as form name, caption, and enable the basic properties such
as workflow and so on.

© 2022 Agile-Labs.com Page 65


Axpert – Release Notes

4. Click the Form Save button.

Form Elements and Form properties windows appear simultaneously as shown below. When
you save the form for the first name, TStruct gets created along with the DC as highlighted in the below
image.

© 2022 Agile-Labs.com Page 66


Axpert – Release Notes

5. Click the Custom Actions drop down and select one of the available options as shown below: For
e.g. you can select Add Field, so that an input field property window appears.

6. Enter the relevant field values in the input field and click the Save & Add New button.

© 2022 Agile-Labs.com Page 67


Axpert – Release Notes

A new row of input field adds to the Form Elements window as shown below. Similarly, you can
add the required fields to the form.

7. Click the Save button under Options drop down of the Form Elements window.

© 2022 Agile-Labs.com Page 68


Axpert – Release Notes

8. Under Custom Actions drop down of the Form Elements window, click the Apply button to save the
structure. The saved structure appears in the Forms Report as shown below:

9. To navigate to the run mode of the form, click Open Design Mode button against the form name for
which you wish to enter data.

10. Enter the data and save the form.

Axpert Package Manager(APM)


This is a windows service that runs in the web server. The folder into which this application is copied is
called APM folder.This APM runs as a tray application in the windows tray.Readme.txt file displays
information about the package to the user, where packages are the collection of programs or definitions.
For example, a package can contain the following types of files:

• Structure files that contains forms/reports/pages definition

• SQL Scripts

This application performs the following:

• Information about the packages can be read from Readme.txt file.

• Applies package when user clicks the Apply button.

After applying the package, user can view the following:

• Imported structures into apps.

• Scripts that ran in the database.

While applying a patch, these results and traces are stored under PackAppliedResults file.

Developer Notes

The APMConfig.INI file contains all config parameters related to APM, web server details along with
the folders where web code exists, apps along with the DB connection details running in this instance.

How to apply a package using APM?


1. Double click Axpert Package Manager (APM) icon. APM containing the package appears as shown
below:

© 2022 Agile-Labs.com Page 69


Axpert – Release Notes

2. In the Axpert Package Manager window, click the Apply button against the packages available for
download.

3. In the Select Projects window, select the projects for which you wish to apply the package content
and click the Apply button.

APM imports/upgrades the definitions/scripts to the selected application given in apmconfig.ini


file, where this file contains details of server URL.

Wizard based DC
Use this feature to navigate across data containers (DC's) as an individual page so that users can pay
their attention in detail for better understanding. For multiple DCs, navigations can be made using next
and previous buttons. Cancel button helps users who are looking for a way out.

To enable this feature, follow the steps mentioned below:

© 2022 Agile-Labs.com Page 70


Axpert – Release Notes

1. Navigate to the design mode of a form and open the TStruct Design properties window.

2. Move the slider right in the Wizard DC option and save the form.

3. Click the Run button to view the DCs appearing as wizards.

The introduction of this feature provides a better UX for users.

Enhancements in 10.5 release


Powerful Global Search
In this release, search bar is made more powerful by adding a Global Search feature.Using this search
is as easy as doing a google search.For e.g, when you search for a supplier name using this global
search, all information related to the supplier appears. You can further drill down to the supplier details
by clicking on the respective hyperlinks.This powerful search helps users to find information quickly.
Simply entering two characters in the Search bar will show results from different records related to that
keyword.

Developer Notes

The introduction of axp_appsearch view helps users to search data periodically, as and when the new
menu items are added and can retrieve dynamic records.

Security Enhancement
In this release, web service methods are hidden from displaying on the service description page. For
e.g., if you type http://localhost/TestService.asmx on your browser, system was displaying the list of
services and was allowing to test them. Now, as a security enhancement these methods are hidden so
that none off the internet will be able to call these methods. To hide the service description page, remove
Documentation protocol from the list of available protocols.

Developer Notes

The below sample code illustrates an e.g. of removing the documentation protocol.

<webServices>

<protocols>

<remove name="Documentation"/>

</protocols>

© 2022 Agile-Labs.com Page 71


Axpert – Release Notes

</webServices>

© 2022 Agile-Labs.com Page 72


Axpert – Release Notes

Chapter 9. What’s New in 10.4?


This chapter provides more information on 10.4 features.

Sections of this chapter:

• Collapsible sidebar navigation

• Split window

• Advanced Settings

© 2022 Agile-Labs.com Page 73


Axpert – Release Notes

Features
Collapsible sidebar navigation
You can now view the menu as a fixed positioned scrollable sidebar, which means the sidebar is fixed
in place as you scroll down the page. This sidebar provides a more concise design with
expandable/collapsible sections as it can handle couple of levels. You can expand/collapse menu items
using Menu icon. The colorful icon against each menu item improves the look and feel of the application
drastically.Additionally, previous and next buttons are placed for opening the recently closed items. The
introduction of refresh icon refreshes the sidebar menu with the newly added forms/reports to the
application, thereby avoiding the session logout.

Split Window
Any forms/reports in Axpert are associated with hyperlinks. Using this feature, you can now split any
individual forms/reports vertically or horizontally. This enables user to view more data in a single page
without actually navigating it to a new page. The user can split a page by clicking on the split button on
the right top corner or on the left bottom corner of the client area.

Advanced Settings
In this feature, you can control the display of forms/reports available in the application using Advanced
Settings option.

Navigation
To access the Advanced Settings window, navigate to the Settings icon on the right corner of the client
area and click Advanced Settings option.

The Advance Settings Form

© 2022 Agile-Labs.com Page 74


Axpert – Release Notes

Field Description
Property Use this field to select a property. The following values are
available to select:
• Align Text–Select this option to align the text left or right.

• Change Password – Select this propertyto decide


whether the change password option must be available or
not in the application.

This property is mainly used for Agilecloud.

• Disablesplit – Select this option if you wish to disable


split for specificforms and reports or for the entire forms
and reports in the application.

• Fetchsize– Select this option to decide the no. of records


that has to appear in a report.Navigate to the property
value and select the no. of records to appear.

• FormLoad cache – Select this property to cache the form


load data based on global parameters. For more
information on form load cache, refer to property value
section.

• Landing structure – Select this property to decide the


landing page once you login any Axpert application. For
e.g., as soon as you login to an application, you can
decide what content has to appear in the landing page.
The content can be either a particular form/report. After
selecting the form/report, if you logout and login to the
application, the selected form/report appears as a landing
page.

This property is mainly used for Agilecloud.

• Load forms along with list – Select this option to split


the form automatically.

• Load reports/lists along with form – Select this option


to split a report automatically.

• Main page reload–This option is dependent on the


landing structure property. This property is mainly used to
end the actions performed on a form.
For e.g., consider Global Parameters form as your landing
structure. In that form, after performing each transaction, save
the form, such as after entering the branch details, save the
form. Again enter the location details and save the form.

• TStruct Grid edit option–Select this option to select the


type of grid that has to appear while editing the grid.

• Open Window mode – Select this option to open


hyperlinks in reports as a new page/popup and so on.

If you select this option, system first checks if any


forms are associated with the report to open else opens
the hyperlink content of the first record on the right frame.

© 2022 Agile-Labs.com Page 75


Axpert – Release Notes

Field Description

Property Value Use this field to select a property value based on the selected
property.

The following values appear if you select the property as


AlignText:
• Right
• Left

The following values are available if you select the property as


FormLoad cache.

• 30 min
• 1 hour
• 2 hour
• 5 hour
• 10 hour
• none

Based on the selected time, cache data gets updated.


For e.g., if you select the time as 30min, for every 30 min,
cache gets updated by fetching the latest data from the
database.

If you select the property value as None, caching will


never happen.

If you do not select any time limit, caching gets updated


after 24 hours. It means whenever user logs into the
application for the 1st time on that particular date, data gets
fetched from the database and gets stored in the cache and
remains same until next day 12AM.

The following values are available if you select the property as


Landing Structure:
• TStruct
• IView

The following values are available if you select the property as


Disablesplit or Load forms along with list or Load
reports/lists along with form:
• True
• False

The following values are available if you select the property as


TStruct Grid edit option.
• Inline–Select this option to open the grid in inline
mode.
• Popup – Select this option to open the grid in pop up
mode.

The following values are available if you select the property


as Open Window mode.

© 2022 Agile-Labs.com Page 76


Axpert – Release Notes

Field Description
• Default – This option overrides the content in the existing
frame.
• Newpage–Select this option to open the hyperlink in
reports in a new page.
• Popup – Select this option to open the hyperlink in
reports as a popup.
• Split–Select this option to open the hyperlink on the right
side in the same page.

If the opened hyperlink on the right side further


contains any hyperlink and if the user clicks on the
hyperlink appeared on the right side, the new hyperlink
content will override the existing content in the right
frame.
Form/Report Use this field to select the relevant form/report for which the
chosen property has to applied.

If you wish to apply these settings to the entire forms in


the application, choose All forms option.

If you wish to apply these settings to the entire forms in


the application, choose All reports option.
Elements Select this only if you are using Open Window mode.
User role Select the role to whom these changes are applicable for.

© 2022 Agile-Labs.com Page 77


Axpert – Release Notes

Enhancements
Refresh Home page Data
You can now replenish your home page with the most recent Redis data. Whenever you modify any
data in widgets, you can view the updated data in home page by clicking the Refresh icon against each
widget to load the latest data. When you refresh a widget, the data refreshes for everyone who has
access to that widget provided they reload the page to view the updated data.

By default, time for refreshing the cached widget data has been set as 30 minutes and can modify the
time if required. For example, if the user makes an attempt to change the Auto Refresh time as 10
minutes or less than that, system now alerts the user by prompting a message stating “performance will
be affected”.

© 2022 Agile-Labs.com Page 78


Axpert – Release Notes

Chapter 10. What’s New in 10.3.0.1 (Patch release)?


This release provides more information on Smart Refresh feature.

Smart Refresh
This feature automatically clears the data in Redis at regular intervals. Whenever any changes are
made into the source data, Redis cache gets refreshed. For example, if you are changing the source
data for every five minutes, data in Redis also gets refreshed for the same time span, thereby improving
the scalability of systems.

To use this feature, you must define a variable {axp_axpertlog} in the application variables screen and
set its property as true and, additionally, establish a relationship between parent TStruct and child
TStruct in AxRelations table. For example, define an input field in the parent TStruct (form) and create
a parent dependent field in the child TStruct (form). From now on, any changes made in the parent
TStruct will get reflected in the child TStruct as well and vice versa.

To disable this feature, you must add a field "axp_real_time_cache" by setting its property as {F} in the
master transaction. If you set the property as {T}, then it will behave as a default auto refresh.

© 2022 Agile-Labs.com Page 79


Axpert – Release Notes

Chapter 11. What’s New in 10.3?


• Home builder is replaced with Page builder.
• To view Page builder icon in your landing page, you must upgrade your AxpertWeb
application from 10.2 to 10.3 through Axpert manager. For more information on upgradation
process, refer to Upgrading Axpert applications to Version 10.3
• Upon upgradation, all the existing widgets until 10.2 version appears in a system created
page called “home page”.
• Any user associated to admin role (relevant role) can create pages and can assign the home
page (backward compatibility) widgets to the respective roles and users.
• Assigning widgets according to the responsibility is removed.
• Pages gets assigned to the user based on the following conditions:

System validates whether any page is assigned to the user. If not, it validates whether
the role, to which the user is associated with, is assigned a page else the page that is set as a
Default HomePage is assigned to the user.

• XML configuration for Node to retain data in dbconfig.js while updating Axpert applications.
• Tree view for reports – You can open hierarchical data as a tree in reports.
• Mapping data from one widget to another by passing parameters.
• Dynamic widgets – One of the powerful widgets that allows you to open any hyperlink data
of a widget without actually displaying it in a new window.

© 2022 Agile-Labs.com Page 80


Axpert – Release Notes

Upgrading Axpert applications to Version 10.3


You can migrate Axpert applications from the previous releases to the latest release using Axpert
Manager.

It is recommended to download the latest version of Axpert files before starting the migration
process.

The following steps describe how to upgrade Axpert application from a prior release to the latest
release.

1. Double click AxpManager application available under AxpertWeb>AxpertWebScripts folder. The


Axpert Manager window appears.

2. On the left pane of the Axpert Manager window, click Upgrade Version under Axpert Application
option.

3. On the right pane, under Connect to application section, perform the following:
(i) From the Application name drop down, select the application that has to be upgraded.
(ii) In the Application Username field, enter the user name.
(iii) In the Password field, enter the password.

Data in the application details section will be auto populated.


(iv) Click the Upgrade button.

© 2022 Agile-Labs.com Page 81


Axpert – Release Notes

Features in 10.3 release


This section provides more information on 10.3 features.

Following are the features:

• Pages

• Configuring Node.js

• TreeView

• Auto arrangement of input fields in dynamic mode

© 2022 Agile-Labs.com Page 82


Axpert – Release Notes

Pages
The introduction of page designer in Axpert enriches the user experience in accessing the application.
Axpert Pages is a collection of data that allows users to take informed decisions.
Whether it is placing widgets/iviews/forms or letting people quickly access key information - you can
publish it as a landing page

Creating Pages
The user associated with the relevant access role (say admin) can create one or more pages for an
application.
To create a page, follow the steps mentioned below:
1. Login to an application.

2. Click the page designer icon on the right corner of the landing page.
The page designer window appears.

3. Click the icon on the right corner of the Designer Canvas section. The Create new
page dialog appears.
4. In the Name box, enter a name for the new page.

5. Move the slider right if you wish to set the page as Default HomePage else move the slider left to
set it as No.
6. Select the relevant menu or sub menu under which the new page has to appear.
7. Click the Ok button.
8. Select a responsive template and click the Ok button.

The new page appears as a tab in the Designer Canvas section.

© 2022 Agile-Labs.com Page 83


Axpert – Release Notes

Customizing Pages
Use the property sheet to modify the various properties of the page such as changing the template,
authorization, modifying the page name and so on.
To access the property sheet, click on the relevant page name in the Designer Canvas section.
You can also place one or more widgets, reports and forms on the page by clicking and dragging the
respective items from the object browser pane.

After making all the changes, save the page and click the icon.

Assigning Pages to Roles


The user associated with the default role can assign a page to one or more roles.

You cannot assign multiple pages to a role/user.


To assign a page to a role, follow the steps mentioned below:

1. Navigate to the User Role form. The User Role page appears.

2. In the Homepage field, select the page that has to appear as a homepage.
3. Click the Save button.

The selected page appears as a home page for that particular user role.

Assigning Pages to Users


By default, users see their homepage upon login. You can specify a different login landing page for
one or more users.
To assign pages to users, follow the steps mentioned below:
1. Navigate to the User Logins form.

© 2022 Agile-Labs.com Page 84


Axpert – Release Notes

2. Under the Login Username column, select a user for whom the page has to be assigned.

3. In the Homepage field, select a page that has to appear for the user.
4. Click the Save button.

© 2022 Agile-Labs.com Page 85


Axpert – Release Notes

Mapping Widgets
Mapping provides an easy way of linking widgets by passing the parameter value of one widget to
another. You can map the following types of widgets with any combination:
• IView
• KPI
• SQL Query
• Chart
For example, if you want to view the sales summary data of a company, based on certain conditions
such as financial year, regions, product and so on, you can achieve that through pages.

Procedure to achieve the above scenario:


1. Create a page.
2. Place widgets for the specified conditions such as Financial year, regions, customer, product and
sales summary, on the created page.

3. Click on the widget to open the property sheet of that particular widget.

© 2022 Agile-Labs.com Page 86


Axpert – Release Notes

4. Click the Mapping field under the Dependency section to open Parameter Mapping window.
5. Select one or more parameters that has to be mapped with the corresponding widget and click the
Ok button.

6. Similarly perform the mapping for other widgets, wherever necessary.


7. Click the Save icon and then click the Publish icon.
8. Navigate to the home page.

© 2022 Agile-Labs.com Page 87


Axpert – Release Notes

You can see the created page appearing as a landing page.

9. Click the Finance Year widget. You can see the data mapped for finance year widget appears in
regions widget.
Similarly, when clicked on the other widgets, data appears in the respective mapped widget.

© 2022 Agile-Labs.com Page 88


Axpert – Release Notes

Dynamic Widgets
IViews with hyperlinks can now be opened in one of the most powerful widgets called “Dynamic
Widget” instead of displaying it in a new pop-up window.
You can pass data to Dynamic widgets in the following ways:
• Place a Dynamic Widget in the Page Designer.
• For IView widgets, define hyperlinks for columns.
• For SQL widgets, define hyperlinks using the property sheet of a widget

• For widgets created using widget builder, add $target=inline syntax in hyperlink statements. For
example, 'h1=icars(make='|| manufacturer ||')$target=inline' as link

Opening Pages from Reports


You can open a page from a particular report and can also pass the required parameters to that page.
To achieve this, you must have a column with an anchor tag as follows:
<a href=’page.aspx?axpage_id={id}&param1=value1&param2=value2’>
where, {id} is the id of the page you wish to open. You can view the id of the published page from
AX_PAGES table.
Additionally, you can also pass the page title as a parameter instead of id.
<a href=’page.aspx?axpage_title={title}&param1=value1’>
where, {title} is the title of the page. Inside href, link must be URL encoded

© 2022 Agile-Labs.com Page 89


Axpert – Release Notes

Configuring Node.js
Whenever you update an application using Installer, existing data in dbconfig.js file was getting
overridden. In order to retain the existing data in dbconfig.js file, XML configuration was introduced.
Going forward, all changes are to be done in dbconfig.xml instead of dbconfig.js.
For new applications, navigate to
AXPERT_HOME/AxpertWeb/node/config/dbconfig.xmlfile and edit the XML content.

In the above syntax,


AXPERT_HOME is the location where your Axpert files are installed in your local drive.
For example, you can represent application’s port number in XML file as follows:
<applicationport>3015</application port>

For existing applications, follow the steps mentioned below:


1. Navigate to dbconfig.xml file under AXPERT_HOME/AxpertWeb/node/config
folder and update the necessary values in .XML file.
2. Take a backup of dbconfig.js file before updating.

For example, if you have changed the values of the host keys in your dbconfig.js file, copy
the same and place it in dbconfig.xml file as per the below format:
<host>127.0.0.1</host>
Another example in dbconfig.js file might be as follows:
axpMobileSPath (for mobile notifications):'C:\\inetpub\\wwwroot\\TAxpertScripts\\',
Now, copy C:\inetpub\wwwroot\TAxpertScripts\ into <axpMobileSPath> element.
In XML file, It should look like
<axpMobileSPath>C:\inetpub\wwwroot\TAxpertScripts\</axpMobileSPath>

Example 1:
<activeMobileApp>
<element h="1"></element>
</activeMobileApp>
Element values can be empty in dbconfig.xml, but if your dbconfig.js consists of some values, then
you must add those values inside the element tag as per the above syntax.
Example 2:
In dbconfig.js file, values are represented as follows:
activeMobileApp : ['bizops', 'hms']
You must represent the .js values in dbconfig.xml as shown below.
<activeMobileApp>
<element h="1">bizops</element>
<element h="2">hms</element>
</activeMobileApp>

© 2022 Agile-Labs.com Page 90


Axpert – Release Notes

3. Change the tnsnamenode according to the system/server host string.


If the default host string is orcl, then the tnsnode will be represented as
<tnsnamenode>orcl</tnsnamenode>

Do not use single quotes (‘) or double quotes (“) inside the XML file while copying from dbconfig.js

The following table provides more examples on converting JSON parameters to XML format.
JSON XML
activeMobileApp : [“”] <activeMobileApp>
<element h="1"></element>
</activeMobileApp>
"activeMobileApp":["hr",”axpert”] <activeMobileApp>
<element h="1">hr</element>
<element h="1">Axpert</element>
</activeMobileApp>

applicationport: 3015 <applicationport>3015</applicationport>

env : "production" <env>production</env>

maria_mysql_dbport: 3306 <maria_mysql_dbport>3306</maria_mysql_dbport>

"axpMobileSPath":"C:\\inetpub\\wwwroot\\ <axpMobileSPath>
TAxpertScripts\\" C:\inetpub\wwwroot\TAxpertScripts\</axpMobileSPath>

"worker_auto":true <worker_auto>true</worker_auto>

© 2022 Agile-Labs.com Page 91


Axpert – Release Notes

TreeView
Using this feature, you can display a hierarchical data as a tree in reports. By using the treeview, you
can drill down into the children of a tree item. To facilitate this, it is mandatory to have columns such as
particulars, root_type and root_class.

Tree nodes can be expanded to display the next level of child tree nodes. The user can expand the tree
node by clicking the (+) button displayed next to the tree node.

Additionally, Nodes can be expanded/collapsed via the user interface (using Expand All and Collapse
All buttons).

Auto arrangement of input fields in dynamic mode


You can now view the input fields in the form getting auto arranged in the run mode. To use this feature,
navigate to the design mode of a form and disable 'Static Run Mode" option in the {TStruct Design
Properties} sheet.

How this feature works?

If you enable static run mode, fields placed in the design mode of a form will appear static in the run
mode. The screenshot below illustrates the static placement of fields if you enable Static Run Mode
option.

If you disable static run mode option, fields placed in the design mode of a form will auto arrange in
the run mode. The screenshot below illustrates the auto arrangement of fields if you disable Static
Run Mode option.

© 2022 Agile-Labs.com Page 92


Axpert – Release Notes

Enhancements in 10.3 release


This section provides more information on enhancements done in Axpert Web 10.3.

Sections of this chapter:

• Performance Improvement

• Enhancing Website Security

© 2022 Agile-Labs.com Page 93


Axpert – Release Notes

Performance Improvement
In this release, overall performance of the Axpert web applications has been drastically improved by
reducing the time taken during form load, data load and data entry. To view the performance
improvement in backward compatibility versions as well, you must create a record in
{AXPWS_CONFIG} table with form name and version no.

{For example, if an Axpert App "BizERP" is created in Axpert version 10.3 or upgraded to 10.3, all form
load, data load and data entry would be rooted through new performance change features. In this case,
if a Solution Developer wants to load a particular form and it's data entry (say FormA, FormB etc.) are
in older versions (10.2, 10.1 etc) and due to some reason if he undergoes any definition issue or an
error due to some new performance logic, he needs to insert a record in "AXPWS_CONFIG" table as
given below.

1. insert into AXPWS_CONFIG(transid,versionno) values ("FormA","10.2").

2. insert into AXPWS_CONFIG(transid,versionno) values ("FormB","10.1").

Enhancing Website Security


This topic provides more information on how to protect your website/server.

(i) X-Frame-Options: It is a web header used to protect a website against clickjacking attacks. In these
attacks, the vulnerable site is loaded in a frame on an attacker-controlled site which uses opaque or
transparent layers to trick the user into unintentionally clicking a button or link on the vulnerable site.

Settings:

Set the X-Frame-Options to "SAMEORIGIN" if you feel the framing is needed in certain circumstances.
By using this, you can limit the ability to frame the site to pages from the same origin. If Axpert Web and
AxpertWeb Scripts are hosted in different server, then use ALLOW-FROM http://www.example.com
instead of SAMEORIGIN.

You can now specify the header in the Web.config file, using the <customHeaders> tag.

Example

Add the following syntax into the Web.config file in the path

/configuration/system.web/system.web.extensions/security/httpProtocol/customHeaders/

Syntax:

<add name="X-Frame-Options" value="SAMEORIGIN"/>

(ii) Remote Server Header: This attribute is added in IIS 10 to suppress sending the HTTP server
header to remote clients.

Note: If your IIS version is less than 10.0, delete removeServerHeader="true"attribute from request
filtering. Otherwise, IIS will not work.

Example

© 2022 Agile-Labs.com Page 94


Axpert – Release Notes

Add the following syntax into the Web.config file in the path

/configuration/system.web/system.web.extensions/security/

Syntax:

<requestFilteringremoveServerHeader="true">

(iii) X-Powered-By: This is a custom header in IIS. It indicates the framework in which the website is
running. Hence, it is advisable to remove this header from the response. By removing this, automatic
vulnerability scanners will not immediately know which version of software they are dealing with and
due to which the automatic vulnerability discovery gets harder.

Example

Add the following syntax into the Web.config file in the path
/Configuration/system.web/system.web.extensions/security/httpProtocol/customHeaders.

Syntax:

<remove name="X-Powered-By" />

(iv) enableVersionHeader: In order to apply security in layers, excessive header information is


removed. On the surface, this data is of no use, but when dug little deeply, it becomes useful for
evildoers.

Example

Add the following syntax into the Web.config file in the path /Configuration/system.web/

Syntax:

<httpRuntimeenableVersionHeader="false" />

© 2022 Agile-Labs.com Page 95

You might also like