Exploring data just got easier in BizTalk360

Exploring data just got easier in BizTalk360

Do you have a BizTalk environment which handles huge volume of transactions? With the BizTalk admin console, It is nearly impossible to go through those data. In the past, BizTalk360 solved this problem by allowing to filter various data based on parameters associated with the data. But for some cases, even if you filtered the data, you might end up having lot of rows in the grid which may not be user friendly. It seems to be slow, while visualizing large set of data in a single grid.

While searching the result with large dataset, the browser seems to jump around while scrolling, providing a not smooth and unnatural experience. This has led that, from a user experience standpoint, scrolling is no longer considered as functional.

Apart from that, even the most modern browsers will eat up lot of memory when rendering all those data in the UI. To overcome this, it’s absolutely necessary to split the results of a query into subsequence’s to achieve constant response times.
At the splitting process, it is very important to keep paging transitions fluently. That means, rows can’t appear twice or miss completely in the result. For this purpose, the so-called Pagination comes into play in BizTalk360.

What pagination really does?

Pagination is an excellent way to navigate through large amounts of content. E.g., when we search for something that returns many records, which cannot be displayed on a single web page, those records are split into number of pages that can be accessed through links via the Pagination mechanism. It enables the user to navigate to the next page one after the other and even jump forward to several pages. Pagination allows you to make large amounts of content easy to find and breaks up several entries or web content into multiple pages, allowing you to toggle through content with ease.

What is improved due to pagination in BizTalk360?

In this version of BizTalk360, we have optimized the grids by providing you the power of pagination. We have implemented pagination for each grid available in the BizTalk360. It is an easy and standard practice, that prevents you from having to load the entire result set all at once.

The grid supports both preloaded and dynamically loaded data. By using pagination, the rows in the grid gets dynamically separated into pages. The grid will automatically display 25 rows in each page, by default. The user can increase the maximum number of result rows by selecting the Max Match size in the drop down.

Basic navigation

Pagination can further be customized for different circumstances, like when a user approaches to an end or the beginning, or indicating the current page number to the user. Pagination dynamically separates the rows on each page, as shown below. By listing out the page number, users are allowed to skip ahead, one page at time.

The page numbers which are shown in grey are disabled (or inactive) and the other page numbers are shown in blue, since they are enabled (or active). The user can use the previous and next page buttons, as these can be considered a more intuitive interface for showing the previous/next records.

Sometimes you may simply require Last page and First page links, which provide simple and quick navigation to the beginning and the end of the result set, to the user. These are implemented, as shown below, to further improve the usability.

The First, Previous, Next and Last page links are appended at the bottom of each grid.

Customizing row count in System Settings

By default, the grid will automatically display 25 rows per page, the user can customize the row display by adding the desired row count in Setting->System Settings->Max Matches.

The added Max Matches are displayed in a dropdown at the bottom of each grid. According to the selection of the dropdown, the row count will be changed dynamically on the resulting grid.

Through this, we can reduce the load time on each execution. For instance, it is used by executing the result, where the user can customize grid for displaying a limited number of results on each search, or showing a limited number of rows per page. This way, the overall performance to display the result, will highly be improved.

Row count display

The total grid row count of the current page compared to the overall row count will be displayed at the bottom end of the grid.

At BizTalk360, we believe that a beautiful grid and listing data interactively to user, will make our product stand out and keep customers engaged. Keeping our customer feedback and understanding the consequence of users on execution, the amount of load time increases proportionally to the growth of data. To overcome this issue, we have provided a better solution for our customers, by implementing this type of content grids, which will highly optimize the performance and reduce the customer effort to visualize the result. A major advantage of this approach, is that now an execution can be used to happen in the lower time limit.

Setting the time zone in the BizTalk360 BAM Portal and other BAM improvements

Setting the time zone in the BizTalk360 BAM Portal and other BAM improvements

The BAM Portal in BizTalk360, provides the option for querying BAM views, perform activity searches, check user permissions and to view the query results of Related Activities and Documents the same as in the out of the box BAM Portal of BizTalk Server. However, the user couldn’t view the query results in their respective time zone in BizTalk360, like in the original BAM portal. We brought a number of improvements to the BAM Portal in BizTalk360; setting the time zone is just one of them.

Time Zone in BizTalk BAM portal


BizTalk360 Feedback portal

Some of our customers requested the functionality to view the query result on their respective time zone. In BizTalk360 v8.8, we came up with the solution, by implementing “BAM Time Zone”. With the help of this, the user can choose the time zone specifically to their requirement.

In the BizTalk BAM Portal, the query result is displayed according to the local Time Zone, while the actual data in the BAMPrimary database is stored in the UTC time zone. BAM captures milestones such that they are automatically recorded in Coordinated Universal Time (UTC) format (this is also referred to as Greenwich Mean Time). When you send date/times to BAM using the APIs, they are received in the format sent without  conversion to UTC format.

Time Zones in BizTalk360 BAM portal

Earlier versions of BizTalk360 automatically picked up those data in the BAMPrimaryImport database and display it. BizTalk360 won’t convert any time zone as might be user required; the product will display UTC time zone the same as in BAMPrimaryImport database. From this version on, BizTalk360 will pick up the UTC time in the BAMPrimaryImport database and then convert that into the user required time zone. The user can set the required time zone using the BAM Time Zone.

Configure time zone in BizTalk360 BAM portal

Usability of BAM Time Zones

The available time zones are displayed in the BAM Time Zone dropdown and the user can choose the specific time zone according to the system Timezone/ local time zone. Through this, the user can view the date time as in the original BAM portal.

Configure time zone: time zones drop down

The BAM Time Zone also includes Day Light savings, so query result is displayed according to the Day Light Savings.

Can Other Users set the BAM Time Zone?

Only the Super User will have the permission to set the BAM Time Zone. If other users also have that permission, that could create confusion, so to avoid this we have given permission to set the BAM time Zone only to Super Users.BAM Portal time zones: read-only for Normal users

Other users can view which time zone has set, but they have not access to change the set BAM Time Zone.

Related Documents Improvements

In version v8.6, we have implemented the Related Activities and Related Documents Functionality. After this release, we came to know some new workaround from our customers, who noticed an issue in Related Activities view and Related Documents Download Functionality, like

BizTalk360 Feedback portal: download Related documents

The above issue is because, when the “Activity Id” has any special characters or it is custom created, the user could not view the detailed information. This has been solved in the current version of BAM. The user can now view the detailed information and Related activities without any constraints.

BAM portal: Detailed information

Handling the XML Message in BAMPrimaryImport Database

We came across another new workaround with Related Documents Download functionality. The Related Document is not getting downloaded when the XML message is stored in BAMPrimaryImport Database.

In the BizTalk BAM portal, the user can capture the whole XML Data in LongReferenceData column in the BAMPrimaryImport Database. This can be done by using the AddReference method of the BAM Orchestration Event Stream to log the complete xml message.BAM data in BAMPrimaryImport database

BAM can store up to 1 MB of data through the AddReference method (using longReferenceData field with type NTEXT) on the event stream, a great well-performing solution for message-bodies which enables the storage of message bodies alongside the data that describes how it was processed.

Handling the XMLMessage in BizTalk360 BAM Portal

In the BizTalk360 BAM Portal, the Related Documents are only downloaded from the archive folder. From this version of BizTalk360 v8.8, the Related documents will get downloaded either from archive folder and from the database. It checks the XML message either in Archive folders or in the database, if it is found, it downloads the XML File in Zip File Format as shown below.

BAM Portal: Related documents

If the file is not available in both archive folders or database, it will throw a “File Not Found exception” as below.

Downloading Related documents: File not Found exception

Filter Improvements

In the previous version, we received a feedback from customers that some filter conditions are not working as expected in the BizTalk360 BAM Portal.

BAM Portal: Filters

In the current version of BizTalk360, we have fixed the below mentioned filter conditions in BizTalk360 BAM.

  1. String Filter
  • Starts with
  • Ends with

BAM Portal: Fixed Filters

2. Date Time Filter

  • Later
  • On or Later

BAM Portal: Fixed Filters

We improved those filters, so it will be working from BizTalk v8.8. We have implemented above functionality in the BAM Portal by keeping our customer feedback and understanding the consequence of users on execution. This implementation will highly optimize the BizTalk360 BAM Portal.

If you are interested, you can read more on our Documentation portal.

BAM Related Activities and Related Documents integration in BizTalk360

BAM Related Activities and Related Documents integration in BizTalk360

BAM Related Activities and Related Documents integration in BizTalk360

Earlier versions of BizTalk360 already had the Business Activity Monitoring (BAM) feature inbuilt, which provides the option for querying the BAM views, perform activity search, check user permissions and to view activities time window. However, the user couldn’t view the detail information on query results in BizTalk360 similar to BAM portal.

bam relationships

Some of our customers requested this functionality to view the related activities and documents of the query result from BizTalk360 application itself. From this release v8.6, we bring the Related activities and documents of each query result to the existing BAM feature. This helps the user to find the solution in a single application rather than switching to multiple applications.

What is a BAM Relationship?

A BAM activity can span to multiple heterogeneous applications (for example, a pipeline, two orchestrations, a line-of-business application, and then another pipeline). The BAM infrastructure can correlate the events from the multiple sources. BAM Relationship is used whenever two activities need to be connected to shared data. The Activity relationship exists when an activity relates to one or more activities in a BAM view.

For Example, for an Order Request, there may be multiple Responses, which may arrive from the end system; the relationship between the request and multiple responses is established using a Common ID which is common between the Inbound and Outbound Order. In our case, it will be the OrderID.

bam view

The user can query the result, by selecting the required activity to sort the data and milestones from the available columns for the query. Next, the user can view the result in the grid view.

bam query results

View the Detailed Information for Request

The user can view the detailed information on each request arrived for the inbound Activity by clicking on the respective row. This action will open a blade where the user can view detailed information such as requested data and the set milestone information.

bam activity status

View the Related Activities for Request

By clicking the Related Activities tab, the user can view all the Responses generated for that request and the user can view the detailed information such as data and milestones for the Responses, by clicking the Eye Icon in each response, as displayed below.

bam activity status inbound order

In the BAM Portal, the user can view above response details, by clicking the Related activities and it will navigate to the response in the Outbound Activity.

Download the Related Documents for the Request

In BizTalk360, the user can also download the Request document by clicking the Related Documents tab. In this screen, the user can view the documents for that request in a grid and the user can also download the file by selecting and clicking the Document link.

related documents

The user can download the related document only when the archive folder is in a shared location.

bam activity status

Functionality for the Response Activity

The Response activity is the Outbound activity; same as in Inbound Activity the user can view the detailed information about the response and view the request for that response in the related Activity tab.  Finally, the detailed information for that request can also be viewed by clicking the Eye icon on the grid.

response activity

Note: From the Above sample, the Common Id should be same.

BAM Operation Using Command Prompt

BAM Operation Using Command Prompt

This blog helps to perform various operations with BAM views using the command prompt such as:

  • deploy BAM Views
  • remove BAM definitions
  • authorize user accounts for BAM View

First, I have created a BAM view named as “BAMOperation” with the Activities Order and Status with items as shown below.

Business Activity Monitoring BAM Operation Using Command Prompt

Business Activity Monitoring BAM Operation Using Command Prompt

The BAM management utility deployment command line tool, bm.exe., allows to apply, modify, and remove BAM definitions. You can use, amongst others, below commands:

  • deploy-all – Deploys a BAM definition
  • remove-all – Removes a BAM definition
  • update-all – Updates a BAM definition
  • add-account – add accounts on BAM definition

Deploy a BAM View and Activities

The BAM Definition file (BAMOperation.xml) becomes deployed using the BAM Command line utility.

Deploying of BAM definition file will create corresponding database tables, views, etc., which will organize the data in a relational view. Follow the below steps to deploy a BAM View:

  1. Open Command Prompt as administrator
  2. Navigate to BizTalk Server Installation path/ Tracking folder and use the below command:

bm.exe deploy-all –DefinitionFile:” <<FileLocation>> BAMOperation.xml”

Business Activity Monitoring BAM Operation Using Command Prompt

which will deploy a “BAMOperation” view in BAM Portal as shown below.

Business Activity Monitoring BAM Operation Using Command Prompt

Remove a BAM Definition

Administrators can use the remove-view / remove-activity command to remove a view and Activity from the BAM Primary Import database. Follow the below steps to remove an existing activity/view:

  1. Open Command Prompt as administrator.
  2. Navigate to BizTalk Server Installation path/ Tracking folder and use the below command.

To Remove a BAM Definition File:

bm.exe deploy-all –DefinitionFile:” <<FileLocation>> BAMOperation.xml”

Business Activity Monitoring BAM Operation Using Command Prompt

Removing a BAM definition file will remove the related tables, views, etc. which were deployed in the database and server.

Remove a BAM Activity

To remove a BAM Activity, the user needs to remove the BAM View first and then the BAM Activity they wanted to remove. Execute the below-shown command to remove the BAM View first and then the BAM Activity.

To remove a BAM View:

bm.exe remove-view -name: {view name}

Business Activity Monitoring BAM Operation Using Command Prompt

To remove a BAM Activity

bm.exe remove-activity -name: {activity name}

Business Activity Monitoring BAM Operation Using Command Prompt

The above command which will remove the specified activity alone form the database.

Update a BAM Activity

The User is also able to update an existing View/Activity. To update an Activity/ View, the user should remove the activity/view first by using the above-mentioned commands and then follow the below steps to update any changes in the existing View /Activity.

For example, I have removed the above “Status” activity and I have updated the activity as shown below.

Business Activity Monitoring BAM Operation Using Command Prompt

We then use the below command to update the changes to the existing view:

bm.exe update-all –DefinitionFile:” <<FileLocation>> BAMOperation.xml”

The above command will add a table, view in the database and it will update the previous activity in the BAM Portal as shown below.

Business Activity Monitoring BAM Operation Using Command Prompt

Add an Account to BAM Definition

Administrators use the add-account command to associate users with BAM views and protect the BAM Excel Spreadsheet views from unauthorized access. When users save BAM views, the views reference a SQL connection string that is hidden within the workbook. The workbook is protected, but you must also ensure that the document is protected.

When you associate users with BAM views, you restrict access to the views to only the users or groups to whom you grant access by using the below command.

bm.exe add-account -AccountName: DomainName UserName -View:(viewname)

Business Activity Monitoring BAM Operation Using Command Prompt