BizTalk Mapper Extensions UtilityPack: Math Functoids  for BizTalk Server 2020

BizTalk Mapper Extensions UtilityPack: Math Functoids for BizTalk Server 2020

Today we will address the last suite of functoids that are part of the BizTalk Mapper Extensions UtilityPack project available for BizTalk Server 2020: Math Functoids. And with this blog post, we finally arrive to the end of this project migration.

Math Functoids

This library includes a suite of functoids to perform a variety of basic mathematical operations that you can use this inside BizTalk mapper.

This project includes the following Custom Functoids:

  • Negate Number Functoid: Use Negate Functoif to return the input double as its negated form.
    • This functoid requires one input parameter:
      • A number (double or int) to be negated;
    • The output result will be the input value in his negative form. If it’s positive, it will return as negative and vice-versa.
    • Examples:
      • Input 1 >>> Output = -1
      • Input -23,09 >>> Output = 23,09
      • Input 0 >>> Output = 0
BizTalk Server Math Functoids: Negate Number Functoid
  • SmartRound Functoid: Use SmartRound to return the rounded double, by the second parameter input.
    • The functoid takes two mandatory input parameters:
      • Parameter 1: Number to be rounded (double or int)
      • Parameter 2: Number to decimals places
    • The output of the functoid will be the input number rounded up or down to the specified decimal places.
    • Examples:
      • Input 23 rounded to 2 >>> Output = 23,00
      • Input 24,005900 rounded to 3 >>> Output = 24,006
BizTalk Server Math Functoids: SmartRound Functoid

BizTalk Mapper Extensions UtilityPack

BizTalk Mapper Extensions UtilityPack is a set of libraries with several useful functoids to include and use it in a map, which will provide an extension of BizTalk Mapper capabilities.

BizTalk Mapper Extensions UtilityPack for BizTalk Server 2020

Where to download?

You can download this functoid along with all the existing one on the BizTalk Mapper Extensions UtilityPack  here:

BizTalk Mapper Extensions UtilityPack GitHub RepositoryBizTalk Mapper Extensions UtilityPack
GitHub

The post BizTalk Mapper Extensions UtilityPack: Math Functoids for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.

Integrate 2020 Remote Session Spoiler – AI/ML, Integration and Monitoring

Integrate 2020 Remote Session Spoiler – AI/ML, Integration and Monitoring

Data is the new gold! A phrase you might have heard in some discussion or presentation you have attended. Our economies are indeed more data-driven, and decisions are made on data. Data that in many cases, originate from observations, i.e. monitoring. For instance, tollgates monitor passing cars, websites can monitor traffic, and the camera’s in machines monitor assembly of products.

In the talk, I like to explain what Artificial Intelligence, Machine Learning, Integration, and Monitoring is from an Azure perspective.

Furthermore, AI/ML is trending, and integration and monitoring are standard for integrators what will it mean for them once they onboard on a project with an AI/ML component – I like to provide my vision on that!

Lastly, I will share my experience with Artificial Intelligence, Machine Learning, Integration, and Monitoring by going through some real-world use-cases. While I am not a data-scientist as an integrator I have a role and responsibility in ML/AI related projects that require data from different places.

The general message from the talk: There is a relation between the monitoring, ingestion of data, and use for machine learning or artificial intelligence purposes.

Why I should attend INTEGRATE 2020 Remote?

With INTEGRATE 2020 Remote, we are consolidating all Microsoft Integration focused content in a single place covering on-premise (BizTalk Server), cloud (Azure Logic Apps, Functions, API Management, Service Bus, Event Grid, Event Hub, Power Platform), and Hybrid in an intense 3 days conference, with its own keynote.

If you are a Microsoft Integration professional, even if you attend part of the conference here and there, you’ll still see significant value educating and preparing yourself for the future. Please go ahead and register now.

The post Integrate 2020 Remote Session Spoiler – AI/ML, Integration and Monitoring appeared first on BizTalk360.

BizTalk Mapper Extensions UtilityPack: Database Functoids for BizTalk Server 2020

BizTalk Mapper Extensions UtilityPack: Database Functoids for BizTalk Server 2020

Today we will focus on another set of libraries available for BizTalk Server 2020: Database Functoids. This is part of the BizTalk Mapper Extensions UtilityPack project migration task I been doing in the last few days. 

Database Functoids

This library includes a suite of functoids to perform a variety of database operations, mainly to extract data from a database for use in an output instance message.

This project includes the following Custom Functoids:

  • Adv Database Lookup Functoid: Use the Adv Database Lookup functoid to extract information from a database and store it as a Microsoft ActiveX Data Objects (ADO) recordset.
    • This functoid requires the following 3 inputs:
      • a database connection string;
      • A table name;
      • and a WHERE clause.
    • Returns a recordset containing the result records.
  • Adv Value Extractor: Use the Adv Value Extractor functoid to extract the appropriate column value from a recordset returned by the Adv Database Lookup function.
    • This functoid requires two inputs parameters:
      • a link to the Adv Database Lookup functoid;
      • and a column name.
    • Returns a string with the value of the specified column;

BizTalk Mapper Extensions UtilityPack

BizTalk Mapper Extensions UtilityPack is a set of libraries with several useful functoids to include and use it in a map, which will provide an extension of BizTalk Mapper capabilities.

BizTalk Mapper Extensions UtilityPack for BizTalk Server 2020

Where to download?

You can download this functoid along with all the existing one on the BizTalk Mapper Extensions UtilityPack  here:

BizTalk Mapper Extensions UtilityPack GitHub RepositoryBizTalk Mapper Extensions UtilityPack
GitHub

The post BizTalk Mapper Extensions UtilityPack: Database Functoids for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.

Integrate 2020 Remote Session Spoiler – Improve your API’s with RBAC security

Integrate 2020 Remote Session Spoiler – Improve your API’s with RBAC security

Exposing APIs is all about making it easy for consumers to consume and understand your APIs. But there is a lot more to consider to create a robust, maintainable, and long-living API. One of those is security and this will be discussed during my session at Integrate 2020. When mixing security and usability we often end up in a situation where there are one or more operations in the API that needs more security than others. This also gets mixed with the fact that multiple consumers need access and that access need’s to be given in an easy manner. And all of this ends up in a situation where built-in security options in Azure API Management are not granular enough and we end up with adding specific code to solve this that in combination with different workarounds like groups etc. Soon we get a really complex setup that is hard to understand. So let’s look at how to solve this with an IDP instead, moving all that out of API Management and let the API focus on being a great API.

In this session, we will use Auth0 as an IDP and let API Management use OAuth validation to make sure the token provided is coming from Auth0.

We will then go thru how the trust setup is done to connect the API Management instance to my Auth0 instance. And then how to work with RBAC and permissions during these. We will, in the end, up in a solution where permission and access are managed at the IDP (Auth0) and where restrictions are enforced based on the permissions inside the operation in API Management.

Come and join me to see how this is achieved!

Ask tons of questions and bring in your thoughts so we can discuss and share experience and knowledge!

Hope to see you there!

Why I should attend INTEGRATE 2020 Remote?

With INTEGRATE 2020 Remote, we are consolidating all Microsoft Integration focused content in a single place covering on-premise (BizTalk Server), cloud (Azure Logic Apps, Functions, API Management, Service Bus, Event Grid, Event Hub, Power Platform), and Hybrid in an intense 3 days conference, with its own keynote.

If you are a Microsoft Integration professional, even if you attend part of the conference here and there, you’ll still see significant value educating and preparing yourself for the future. Please go ahead and register now.

The post Integrate 2020 Remote Session Spoiler – Improve your API’s with RBAC security appeared first on BizTalk360.

Integrate 2020 Remote Session Spoiler – Setting up a highly available BizTalk Server in Azure

Integrate 2020 Remote Session Spoiler – Setting up a highly available BizTalk Server in Azure

Today, it’s more common with BizTalk Server environments located in Azure. With the release of BizTalk Server 2020, this is increasing. Generally, production environments require a highly available solution. When setting up a Highly Available BizTalk environment in Azure you have some additional considerations to take into account compared with doing it in your own environment. This session shows you the alternatives for clustering SQL Server, BizTalk Server, and MSDTC. As some of the clustering features require shared storage, we look at Storage Spaces Direct and Premium File Storage.

To successfully configure the failover clustering you need to configure networking in the right way, setting up a Load Balancer to route the traffic to the right server.

As time is limited, we concentrate on BizTalk Server 2020 and the concepts needed apart from a normal setup. If you’re not considering setting up an environment in Azure, you will still get interesting insights on how networking works in Azure and technologies you can use in your own datacenter.

Why I should attend INTEGRATE 2020 Remote?

With INTEGRATE 2020 Remote, we are consolidating all Microsoft Integration focused content in a single place covering on-premise (BizTalk Server), cloud (Azure Logic Apps, Functions, API Management, Service Bus, Event Grid, Event Hub, Power Platform), and Hybrid in an intense 3 days conference, with its own keynote.

If you are a Microsoft Integration professional, even if you attend part of the conference here and there, you’ll still see significant value educating and preparing yourself for the future. Please go ahead and register now.

The post Integrate 2020 Remote Session Spoiler – Setting up a highly available BizTalk Server in Azure appeared first on BizTalk360.

BizTalk NoS Ultimate: Features Overview (Part II)

BizTalk NoS Ultimate: Features Overview (Part II)

In the last blog post, we analysed two of the basic features of BizTalk NoS UltimateExpand solution and Wild Card Search. Today, we will continue to analyze the list of available features present in this Visual Studio extension, focusing on the report capabilities of BizTalk NoS Ultimate.

Reflector

This feature will create a report with a lot of useful information about your entire solution or for a particular project for analysis. It will provide some statistics and metrics, for example:

    • Solution metrics – number of projects, artifacts, orchestrations, transformation, schemas, and pipelines
    • Artifact metrics – Information about the  average Kilo bytes used by the artifact in memory or some metrics to understand the complexity of the artifact (orchestration, map and so on)

But, also information about:

      • Which artifact is using this artifact or what is this artifact doing (very useful with orchestrations)
      • Show all the information like:
        • Artifact dependencies
        • Which port(s) is/are using this orchestration or schema or map?
        • How many shapes exist in the orchestration or how many Transactions (Atomic, Long-Running) exist, Compensation, or Error handling?
        • How many Construct messages or even how many transformations?
        • How many Functoids or links exist inside a transformation?
      • And so on
BTSG NoS Addin BizTalk Solution Report

This is basically an interactive report or documentation of your solution. Interactive, because you can interact with the report and it will automatically open the artifact while you are reading it. You can open the directory, maps, orchestrations, schemas, and so on directly from the report.

BTSG NoS Addin BizTalk Solution Report

The reflector can be used at all levels of your solution, from a simple artifact, a single project or just to produce a full report of your entire solution. The last means that you will have a report of all of the artifacts in the solution).

This also can be used to produce good documentation of your BizTalk Projects.

You can access this feature by:

  • Right-click on your solution/project or artifact name, expand BizTalk NoS and select the Reflector option

Refactor

Similar to the Reflector feature, however, the Refactory will create a more simple report with a circular reference (internal and external) with other artifacts that can be very useful to understand the refactory strategy to use.

Another difference is that this report can only be made at the artifact level (orchestrations, pipelines, maps, and schemas). It isn’t available at the solution or project level.

You can accomplish this by access this feature by:

  • Right-click on your artifact (Orchestration, map, schema…), expand the BizTalk NoS Reporting and select the Refactor option

This feature will provide some statistics and information about:

  • Which artifact(s) is/are using this artifact
  • Which artifact(s) is/are consumed by this resource
  • Some general information like complexity, persistence points and error handling (in orchestrations), and so on.
BTSG NoS Addin Refactory result

I hope you are enjoying these features and stay tuned because this extension has more! Feel free to try this amazing extension for BizTalk Server here: Download BizTalk NoS Ultimate for BizTalk Server 2020.

The post BizTalk NoS Ultimate: Features Overview (Part II) appeared first on BizTalk360.

May 11, 2020 Weekly Update on Microsoft Integration Platform & Azure iPaaS

May 11, 2020 Weekly Update on Microsoft Integration Platform & Azure iPaaS

Do you feel difficult to keep up to date on all the frequent updates and announcements in the Microsoft Integration platform and Azure iPaaS?

Integration weekly update can be your solution. It’s a weekly update on the topics related to Integration – enterprise integration, robust & scalable messaging capabilities and Citizen Integration capabilities empowered by Microsoft platform to deliver value to the business.

 

Microsoft Announcements and Updates

Community Blog Posts

 

Videos

Podcasts

 

How to get started with iPaaS design & development in Azure?

Feedback

Hope this would be helpful. Please feel free to reach out to me with your feedback and questions.

BizTalk Mapper Extensions UtilityPack: Logical Functoids for BizTalk Server 2020

BizTalk Mapper Extensions UtilityPack: Logical Functoids for BizTalk Server 2020

Todas we will address one of my favorites suite of functoids that will be available for BizTalk Server 2020: Logical Functoids. This is part of the BizTalk Mapper Extensions UtilityPack project migration task I been doing in the last few days. 

Logical Functoids

This library includes a suite of functoids to perform a variety of logical operations, often controlling whether a particular element or attribute is created in an output instance message. Most of the Logical Functoids are a replica of the existent Logical Functoids that came with BizTalk Server with the advantage that these will allow you to connect with others Custom String Functoids. They are fully compatible with existing functoids and don’t produce any more additional code.

This project includes the following Custom Functoids:

  • Advance Logical AND Functoid: Use the Advance Logical AND functoid to return the logical AND of input parameters. It determines whether all of the specified input parameters are true.
    • This functoid requires a minimum of two input parameters and a maximum of one hundred:
      • Parameter 1: A value that can be evaluated as either True or False.
      • Parameters 2 – 100: Values that can be evaluated as either True or False.
    • Returns the logical AND of parameters. True if all of the specified input parameters evaluate to True; False otherwise.
  • Advance Equal Functoid: Use the Advance Equal functoid to return the value “true” if the first input parameter is equal to the second input parameter. It tests whether the two input parameters are equal.
    • This functoid requires two input parameters:
      • Parameter 1: A value to be tested for equality with parameter 2.
      • Parameter 2: A value to be tested for equality with parameter 1.
    • Returns True if the values of the two input parameters are equal; False otherwise.
  • Advance Greater Than Functoid: Use the Advance Greater Than functoid to return the value “true” if the first input parameter is greater than the second input parameter. It tests whether the first input parameter is greater than the second input parameter.
    • This functoid requires two input parameters:
      • Parameter 1: A value to be tested to determine whether it is greater than parameter 2.
      • Parameter 2: A value to be tested to determine whether it is greater than parameter 1.
    • Returns True if the value of the first input parameter is greater than the value of the second input parameter; False otherwise.
  • Advance Greater Than or Equal To Functoid: Use the Advance Greater Than or Equal To functoid to return the value “true” if the first input parameter is greater than or equal to the second input parameter. It tests whether the first input parameter is greater than or equal to the second input parameter.
    • This functoid requires two input parameters:
      • Parameter 1: A value to be tested to determine whether it is greater than or equal to parameter 2.
      • Parameter 2: A value to be tested to determine whether it is greater than or equal to parameter 1.
    • Returns True if the value of the first input parameter is greater than or equal to the value of the second input parameter; False otherwise.
  • Advance Less Than Functoid: Use the Advance Less Than functoid to return the value “true” if the first input parameter is less than the second input parameter. It tests whether the first input parameter is less than the second input parameter.
    • This functoid requires two input parameters:
      • Parameter 1: A value to be tested to determine whether it is less than parameter 2.
      • Parameter 2: A value to be tested to determine whether it is less than parameter 1.
    • Returns True if the value of the first input parameter is less than the value of the second input parameter; False otherwise.
  • Advance Less Than or Equal To Functoid: Use the Advance Less Than or Equal To functoid to return the value “true” if the first input parameter is less than or equal to the second input parameter. It tests whether the first input parameter is less than or equal to the second input parameter.
    • This functoid requires two input parameters:
      • Parameter 1: A value to be tested to determine whether it is less than or equal to parameter 2.
      • Parameter 2: A value to be tested to determine whether it is less than or equal to parameter 1.
    • Returns True if the value of the first input parameter is less than or equal to the value of the second input parameter; False otherwise.
  • Advance Not Equal Functoid: Use the Advance Not Equal functoid to return the value “true” if the first input parameter is not equal to the second input parameter. It tests whether the two input parameters are not equal.
    • This functoid requires two input parameters:
      • Parameter 1: A value to be tested for inequality with parameter 2.
      • Parameter 2: A value to be tested for inequality with parameter 1.
    • Returns True if the values of the two input parameters are not equal; False otherwise.
  • Advance Logical NOT Functoid: Use the Advance Logical NOT functoid to return the logical inversion of the input parameter. Use to logically negate the value of the Boolean input parameter.
    • This functoid requires one input parameter only:
      • Parameter 1: A value that can be evaluated as either True or False.
    • Returns True if the specified input parameter evaluates to False; False otherwise.
  • Advance Logical OR Functoid: Use the Advance Logical OR functoid to return the logical OR of input parameters. The input parameters have to be Boolean or numeric. It determines whether any of the specified input parameters are true.
    • This functoid requires a minimum of two input parameters and a maximum of one hundred:
      • Parameter 1: A value that can be evaluated as either True or False.
      • Parameters 2 – 100: Values that can be evaluated as either True or False.
    • Returns True if any of the specified input parameters evaluate to True; False otherwise.
  • If-Then-Else Functoid: Use the If-Then-Else Functoid to return a value from one of two input parameters based on a condition. If the condition (first input) is True, then the value of the second input parameter is returned, otherwise, the Third input is returned.
    • This functoid requires three input parameters:
      • A boolean representing the result of a previous condition
      • The value to be returned if the condition is True.
      • The value to be returned if the condition is False.
    • If the condition is True, then the value of the second input parameter is returned, otherwise, the third input is returned.

BizTalk Mapper Extensions UtilityPack

BizTalk Mapper Extensions UtilityPack is a set of libraries with several useful functoids to include and use it in a map, which will provide an extension of BizTalk Mapper capabilities.

BizTalk Mapper Extensions UtilityPack for BizTalk Server 2020

Where to download?

You can download this functoid along with all the existing one on the BizTalk Mapper Extensions UtilityPack  here:

BizTalk Mapper Extensions UtilityPack GitHub RepositoryBizTalk Mapper Extensions UtilityPack
GitHub

The post BizTalk Mapper Extensions UtilityPack: Logical Functoids for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Mapper Extensions UtilityPack: SharePoint Functoids for BizTalk Server 2020

BizTalk Mapper Extensions UtilityPack: SharePoint Functoids for BizTalk Server 2020

Let’s continuing the BizTalk Mapper Extensions UtilityPack project migration and do an overview on another set of libraries available for BizTalk Server 2020: SharePoint Functoids that if I’m not mistaken was created René Brauwers.

SharePoint Functoids

This library includes a suite of functoids that you can use this inside BizTalk mapper to help you to easily integrate with SharePoint.

This project includes the following Custom Functoids:

  • Add SharePoint 2013 Document Set Functoid: Creates a Document Set in an existing SharePoint 2013 List. It is a requirement that the SharePoint list contains a custom content-type of type document set.
    • The following parameters are required:
      • string siteUrl = SharePoint Site Url
      • string listName = SharePoint List Name containing the custom content-type Document Set
      • string docSetContentTypeName = Document Set Content Type name
      • string newDocSetName=Name of the to document set to created
    • Comment: An custom content-type of type documentset needs to be available in SharePoint.

BizTalk Mapper Extensions UtilityPack

BizTalk Mapper Extensions UtilityPack is a set of libraries with several useful functoids to include and use it in a map, which will provide an extension of BizTalk Mapper capabilities.

BizTalk Mapper Extensions UtilityPack for BizTalk Server 2020

Where to download?

You can download this functoid along with all the existing one on the BizTalk Mapper Extensions UtilityPack  here:

BizTalk Mapper Extensions UtilityPack GitHub RepositoryBizTalk Mapper Extensions UtilityPack
GitHub

The post BizTalk Mapper Extensions UtilityPack: SharePoint Functoids for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Mapper Extensions UtilityPack: XPath Functoids for BizTalk Server 2020

BizTalk Mapper Extensions UtilityPack: XPath Functoids for BizTalk Server 2020

Today we will focus on another set of libraries available for BizTalk Server 2020: XPath Functoids. This library was created a few years ago by Martijn Schiedon and is part of the BizTalk Mapper Extensions UtilityPack project that now is being migrate to BizTalk Server 2020.

XPath Functoids

This library includes a suite of functoids that provides XPath methods that you can use this inside BizTalk mapper.

This project includes the following Custom Functoids:

  • XPath Functoid: This functoid natively integrates custom XPath queries in the BizTalk mapper. This unique functoid which is a powerful competitor to the Scripting Functoid or a custom XSLT stylesheet and mixes exceptionally well with other functoids.
    • The functoid takes one mandatory input parameter and one optional parameter:
      • The first parameter specifies an absolute or relative XPath expression, which becomes a native part of the generated XSLT.
      • The (optional) second parameter is a link to the source tree node that becomes the (looping) context for the XPath expression.
    • This defines the current context node for the XPath expression and allows the use of relative XPath expressions.
    • Additionally, the mapper will generate a looping construct for that linked node where appropriate.
    • The functoid output can be linked to a destination schema node or serve as input to other functoids.

BizTalk Mapper Extensions UtilityPack

BizTalk Mapper Extensions UtilityPack is a set of libraries with several useful functoids to include and use it in a map, which will provide an extension of BizTalk Mapper capabilities.

BizTalk Mapper Extensions UtilityPack for BizTalk Server 2020

Where to download?

You can download this functoid along with all the existing one on the BizTalk Mapper Extensions UtilityPack  here:

BizTalk Mapper Extensions UtilityPack GitHub RepositoryBizTalk Mapper Extensions UtilityPack
GitHub

The post BizTalk Mapper Extensions UtilityPack: XPath Functoids for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.