Announcing Logic App Consumption Copilot

Announcing Logic App Consumption Copilot

I initially called this tool Logic App Consumption DevBuddy, but then my dear friend Mike Stephenson told me that I should call it Copilot, and I liked the idea.

Copilot is a term that these days is generally bound to Microsoft AI that is present on almost all of Microsoft’s applications and experiences, including Microsoft 365, Windows 11, Edge, or Bing, and that can assist users and optimize their work, such as generating text and tables in Word, summarizing and drafting emails in Outlook. However, the primary definition of a Copilot is a qualified pilot who assists or relieves the pilot but is not in command.

Well, Logic App Consumption Copilot doesn’t have AI involved behind the scenes but is able to optimize and expedite the developers’ work while building Logic Apps Consumption.

While developing Logic Apps Consumption with Visual Studio, there are certain tasks, mainly tasks related to the ARM template configuration and CI/CD, that are very annoying and time-consuming, such as:

  • Add new ARM parameters.
  • Add new Logic App (workflow) parameters.
  • Configure ARM parameters for CI/CD and Visual Studio deployment.
  • Add new Logic Apps to our ARM template.
  • And many more.

The reason these tasks are time-consuming is that most of them cannot be done inside the Logic App design, and they need to be performed manually in the JSON definition, which leads us, at least to me, to remember all the time to:

  • Where to put them (place)?
    • ARM parameters are easy to know, but Logic App (workflow) parameters are more tricky.
  • What is the correct code definition?
    • The code for ARM parameters and Logic App (workflow) parameters is the same, but Variables are different, such as defining the Logic App’s initial state.
  • Does it already exist? And so on.

These are basically the reasons I decided, with the help of my team at DevScope, to create the Logic App Consumption Copilot tool. This is a .NET Windows application assistant named Copilot, designed to enhance productivity for developers who frequently create Logic Apps Consumptions. This tool can help automate routine tasks such as creating new ARM or Logic App (workflow) parameters, setting ARM parameters for CI/CD and Visual Studio deployment, and many more.

On this first version, Logic App Consumption Copilot has the following capabilities:

  • Create new ARM parameters and automatically propagate them to the following files:
    • LogicApp.parameters.json (for Visual Studio Deployment).
    • LogicApp.parameters.template.json (for CI/CD).
  • Enforce ARM parameters naming convention.
  • Create new Logic App (workflow) parameters in a specific Logic App.
  • Enforce Logic App (workflow) parameters naming convention.
  • Create new Variables
  • Add new black Logic Apps or a new Logic App based on an existing template.
  • Enforce Logic App (workflow) naming convention.
  • Search inside the ARM template definition.
  • Define the Initial Status of a Logic App.

What’s next?

We just released V1, but we are already working on the next version of the tool, and these are the items already on the backlog:

  • Adjust some UI functionalities.
  • Edit values in a better way.
  • Add Logic App (workflow) parameters referring to ARM parameters.
  • Improve the Logic App Initial Status functionality.

Please go ahead and provide us feedback or submit a GitHub change request.

Download

You can download the Logic App Consumption Copilot tool from GitHub here:

If you liked the content or found it helpful and want to help me write more content, you can buy (or help buy) my son a Star Wars Lego! 

Author: Sandro Pereira

Sandro Pereira lives in Portugal and works as a consultant at DevScope. In the past years, he has been working on implementing Integration scenarios both on-premises and cloud for various clients, each with different scenarios from a technical point of view, size, and criticality, using Microsoft Azure, Microsoft BizTalk Server and different technologies like AS2, EDI, RosettaNet, SAP, TIBCO etc.

He is a regular blogger, international speaker, and technical reviewer of several BizTalk books all focused on Integration. He is also the author of the book “BizTalk Mapping Patterns & Best Practices”. He has been awarded MVP since 2011 for his contributions to the integration community.
View all posts by Sandro Pereira

BizTalk Server 2020 – 20 days, 20 posts: BizTalk Filter Finder Tool for BizTalk Server 2020

BizTalk Server 2020 – 20 days, 20 posts: BizTalk Filter Finder Tool for BizTalk Server 2020

BizTalk Server 2020 – 20 days, 20 posts – day 4. Again a bit behind on this post, I need to recover the missing days but I will get there. Today I have chosen to migrate another productivity tool that I use often especially when I’m working with pure pub-sub solutions: BizTalk Filter Finder Tool to be compatible with BizTalk Server 2020. I hope you enjoy and find this tool useful.

BizTalk Filter Finder Tool

BizTalk Filter Finder Tool is a simple tool that aims to simplify the process for better understand and maintain solutions based on pub-sub and content-based routing. By allowing you to have a quick overview of all the artifacts, send ports or orchestrations that have filters associated.

This tool will extend default BizTalk Server capabilities transforming this tedious and sometimes complicate analyze a little simple, easy and fast.

BizTalk Filter Finder Tool

This tool will extend default BizTalk Server capabilities transforming this tedious and sometimes complicate analysis a little simple, easy and fast. You can read more details about this tool in the original post here: BizTalk Filter Finder Tool.

Other versions

This tool is also available for the following BizTalk Server versions:

Download

You can download BizTalk Filter Finder Tool from:
BizTalk Filter Finder ToolBizTalk Filter Finder Tool
GitHub

The post BizTalk Server 2020 – 20 days, 20 posts: BizTalk Filter Finder Tool for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Server 2020 – 20 days, 20 posts: BizTalk Bindings Exporter Tool for BizTalk Server 2020

BizTalk Server 2020 – 20 days, 20 posts: BizTalk Bindings Exporter Tool for BizTalk Server 2020

BizTalk Server 2020 – 20 days, 20 posts – day 3. Sorry for the delay but with this COVID-19 situation and with 3 small kids at home, sometimes it can be a challenge to find time to do community work and to write. Nevertheless, for today I have chosen to migrate another crucial and productivity tool that I really enjoy using it: BizTalk Bindings Exporter Tool to be compatible with BizTalk Server 2020. Once again, I hope you enjoy it as much as I do.

BizTalk Bindings Exporter Tool

BizTalk Binding Exporter Tool is a simple tool that will suppress the absence of advanced binding file generation capabilities in the BizTalk Server Administration Console allowing you to generate and export a binding file from BizTalk Applications in an intuitive and easy way.

Exporting a BizTalk Server Application binding is, at first sight, a simple and quick task that can be done using the BizTalk Server Administration Console. But even in simple tasks, we may encounter challenges that require us to perform some monotonous and boring manual operations that consume some of our precious time and are always subject to failures.

Normally the binding exportation starts in development, but we also will need to generate the same bindings for other environments like production and for that we normally need to open the binding file and replace/fix the differences for each different environment… which is normally a tedious operation. What we need to replace is mainly:

  • the URI’s: it should be fixed, but it is not mandatory. If you know what you are doing, you can fix them directly on the environment after you import the Binding.
  • the host instances: not mandatory, if you have the same host and host instances names across all your different environments (as best practices will tell you to do).
  • the NT Group Name associated in the Services (Orchestrations): according to securities best practices you shouldn’t use the same BizTalk Groups in different environments, so in this case, if you follow these best practices, you need to change these parameters in your binding file.

Normally, everyone changes the URI’s but neglecting the other parameters may be causing problems during the Binding import.

This tool will extend default BizTalk Server capabilities transforming the tedious and sometimes complicate binding generation a little simple and easy.

DevScope BizTalk Bindings Exporter Tool

You just need to specify the connection string to the BizTalk Management database (BizTalkMgmtDb)

DevScope BizTalk Bindings Exporter Tool

And this tool allows you to generate and export binding files with the following capabilities:

  • Export binding(s) file(s) for an entire Application or a list of Applications;
  • Export binding(s) file(s) from a specify Assembly or list of Assemblies;
  • Export binding(s) file(s) from a Receive Port or list of Receive Ports;
  • Export binding(s) file(s) from a Send Port or list of Send Ports;
  • Or Generate different binding files for each environment if you create an Excel File with the mapping for each environment ;

Other versions

This tool is also available for the following BizTalk Server versions:

Download

You can download BizTalk Bindings Exporter Tool from:
BizTalk Bindings Exporter ToolBizTalk Bindings Exporter Tool
GitHub

The post BizTalk Server 2020 – 20 days, 20 posts: BizTalk Bindings Exporter Tool for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Server 2020 – 20 days, 20 posts: BizTalk Port Multiplier Tool for BizTalk Server 2020

BizTalk Server 2020 – 20 days, 20 posts: BizTalk Port Multiplier Tool for BizTalk Server 2020

You probably wonder why I haven’t written anything significant yet about this new version of the product. And I could come up with several real reasons but that is not the point here. However, to compensate for this “delay” I will start a crazy personal challenge, which I don’t know where I will find the time, to write 20 posts focus on BizTalk Server 2020 in the next 20 days: BizTalk Server 2020 – 20 days, 20 posts.

This series of posts could be about how to do certain things, what’s new in the product, step by steps guides, tools, components, tips and so on. And to start this series of posts I have chosen to migrate the BizTalk Port Multiplier Tool to be compatible with BizTalk Server 2020.

BizTalk Port Multiplier Tool

BizTalk Port Multiplier Tool is a simple tool that aims to simplify the port “cloning” process by allowing you to quickly “clone or duplicate” any existing port: Receive Port or Send Port.

  • Send Ports are quite easy to archive, you only need to give a different name to the port, and you can clone it;
Devscope BizTalk Port Multiplier tool Send Ports
  • Receive Ports are tricky because they may contain several Receive Locations and each URI needs to be unique;
Devscope BizTalk Port Multiplier tool

This tool will extend default BizTalk Server capabilities transforming the tedious and sometimes complicate port creation based on an existing one a little simple and easy allowing you to:

  • Create a new Receive Port based on an existing one;
    • It will also export the binding file from that new Receive Port;
  • Create a new Send Port based on an existing one;
    • It will also export the binding file from that new Send Port;
  • Generate different binding files for each environment

Why do I need to “clone” a Receive Port?

Sometimes you also need to create a receive port with similar configurations of an existing one, also changing only a few settings or simple the URI, and instead of manually recreating, you can have 90% of the process done automatically.

Sometimes it is practical, occasionally, or in some scenarios, it may not work, but in most cases, it will. So it is a best-effort operation and not an exact clone because they may have several Receive Locations, and each Address/URI needs to be unique. So, you then need to go to each receive location and reconfigure them.

Other versions

This tool is also available for the following BizTalk Server versions:

Download

You can download BizTalk Port Multiplier Tool from:
BizTalk Port Multiplier ToolBizTalk Port Multiplier Tool
GitHub

The post BizTalk Server 2020 – 20 days, 20 posts: BizTalk Port Multiplier Tool for BizTalk Server 2020 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Filter Finder Tool v2.0.0 available for BizTalk Server 2016

BizTalk Filter Finder Tool v2.0.0 available for BizTalk Server 2016

BizTalk Filter Finder tool got an update and it is now more powerful and with new features and mainly all of that thanks to Michał Plutyński contributions. And for those who are not familiar with this tool, the BizTalk Filter Finder Tool is a simple tool that aims to simplify the process for better understand and maintain solutions based on content-based routing and context-based routing with or without orchestrations involved.

BizTalk Filter Finder Tool

This tool will extend default BizTalk Server capabilities transforming this tedious and sometimes complicate analysis a little simple, easy and fast. You can read more details about this tool in the original post here: BizTalk Filter Finder Tool.

What’s new in the release

  • A new dropdown list that allows you to select your BizTalk Server environment (you can set up them in the config file), this way is better and easier to use in bigger teams with several environments.
BizTalk Filter Finder Tool
  • Add filters/search capabilities allowing you to filter the existing subscriptions and only show filters with subscriptions that contain some text;
BizTalk Filter Finder Tool
  • Hotfix/improvements: Changes in reading orchestration list when it’s used a MessageBoxDb on a different server then ManagementDb.

Credits to Michał Plutyński for becoming a collaborator of this tool.

Download

You can download BizTalk Filter Finder Tool from:
BizTalk Filter Finder ToolBizTalk Filter Finder Tool
GitHub

The post BizTalk Filter Finder Tool v2.0.0 available for BizTalk Server 2016 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Filter Finder Tool for BizTalk Server 2013 R2

BizTalk Filter Finder Tool for BizTalk Server 2013 R2

Recently my team and I developed and released several tools that extend the out-of-box capabilities of BizTalk Server 2016 for developer and administration teams to be more productive, saving times in some simple but time-consuming tasks that should d supposed to be. One of these tools was BizTalk Filter Finder Tool.

Because many clients still are using BizTalk Server 2013 R2, and because I had received some requests from the community, I will be releasing these tools for BizTalk Server 2013 R2 also. And today, we will stat with the BizTalk Filter Finder Tool.

BizTalk Filter Finder Tool

BizTalk Filter Finder Tool is a simple tool that aims to simplify the process for better understand and maintain solutions based on content-based routing. By allowing you to have a quick overview of all the artifacts, send ports or orchestrations that have filters associated.

BizTalk Filter Finder Tool

This tool will extend default BizTalk Server capabilities transforming this tedious and sometimes complicate analyze a little simple, easy, and fast.

It way not be a fantastic tool; it may not be beautiful, but for me is a timesaver tool.

Credits also to my team member at DevScope, Pedro Almeida that collaborated with me in the development of this tool.

Download

You can download BizTalk Filter Finder Tool from:
BizTalk Filter Finder ToolBizTalk Filter Finder Tool
GitHub

The post BizTalk Filter Finder Tool for BizTalk Server 2013 R2 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Port Multiplier Tool for BizTalk Server 2013 R2

BizTalk Port Multiplier Tool for BizTalk Server 2013 R2

Recently my team and I developed and released several tools that extend the out-of-box capabilities of BizTalk Server 2016 for developer and administration teams to be more productive, saving times in some simple but time-consuming tasks that should d supposed to be. One of these tools was BizTalk Port Multiplier Tool.

Because many clients still are using BizTalk Server 2013 R2, and because I had received some requests from the community, I will be releasing these tools for BizTalk Server 2013 R2 also. And today, we will stat with the BizTalk Port Multiplier Tool.

BizTalk Port Multiplier Tool

BizTalk Port Multiplier Tool is a simple tool that aims to simplify the port “cloning” process by allowing you to quickly “clone or duplicate” any existing port: Receive Port or Send Port.

  • Send Ports are quite easy to archive, you only need to give a different name to the port, and you can clone it;
Devscope BizTalk Port Multiplier tool Send Ports
  • Receive Ports are tricky because they may contain several Receive Locations and each URI needs to be unique;
Devscope BizTalk Port Multiplier tool

This tool will extend default BizTalk Server capabilities transforming the tedious and sometimes complicate port creation based on an existing one a little simple and easy allowing you to:

  • Create a new Receive Port based on an existing one;
    • It will also export the binding file from that new Receive Port;
  • Create a new Send Port based on an existing one;
    • It will also export the binding file from that new Send Port;
  • Generate different binding files for each environment

Why do I need to “clone” a Receive Port?

Sometimes you also need to create a receive port with similar configurations of an existing one, also changing only a few settings or simple the URI, and instead of manually recreating, you can have 90% of the process done automatically.

Sometimes it is practical, occasionally, or in some scenarios, it may not work, but in most cases, it will. So it is a best-effort operation and not an exact clone because they may have several Receive Locations, and each Address/URI needs to be unique. So, you then need to go to each receive location and reconfigure them.

Credits

Credits also to my team member at DevScope, Pedro Almeida that collaborated in the development of this tool.

Download

You can download BizTalk Port Multiplier Tool from:
BizTalk Port Multiplier ToolBizTalk Port Multiplier Tool
GitHub

The post BizTalk Port Multiplier Tool for BizTalk Server 2013 R2 appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Filter Finder Tool

BizTalk Filter Finder Tool

Have you ever found yourself in a position where you
needed to understand how a particular BizTalk solution works? And to make
matters worse, the majority of the solution is implemented based on content-based
routing?

Routing Messages in BizTalk
Server

So first, what is this: Content-Based routing?

Don’t get me wrong the definition that I will provide because there are several Message Routing Patterns that you can implement in BizTalk Server. For example, you can implement in BizTalk Server a:

But the reality is that in BizTalk Server:

  • a message is always composed by the message itself and the metadata associated with it;
  • the architecture is based on Publish and Subscribe;

So in his essence, the subscriber will subscribe to
the messages based on Content-Based Routing.

And you may say: yes, but I can route a message without examining is content.

And you are right. The problem is the default
definition of this pattern:

  • As the names
    describe, Content-Based Router examines the message content and routes the
    message onto a different channel based on data contained in the message. For
    example, routing a message based on specif values of specif fields, or based on
    some criteria like existing fields.

However, as I told you before, a message in BizTalk
Server is always composed by the message itself and the metadata
associated with it. And for that reason, you may found other variations or
other names like:

  • Context-Based
    Routing
    : Context-Based Routing is similar to the previous
    one, but instead of analyzing the content of the message, it will analyze the
    metadata of the message. This information, in BizTalk Server, is normally
    created on the receive port by the adapter and pipelines.

    • Remember that I
      can promote messages to the context of the message and route them;
  • Message-Based
    Routing
    : that is normally defined when:

    • a message is
      routed by BizTalk only based on the message type;

      • But this is
        metadata associated in the message, and you need to inspect the message to get
        is type;
    • or in pass-thru
      scenarios when you are just redirecting the message to other systems, i.e.,
      BizTalk is a broker and don’t “touch” or modify the message;

      • But these
        filters are also associated with metadata of the message;

The problem of managing these
solutions

If you have found yourself managing solutions, that
majority is implemented with content-based routing, which is usually associated
with not using orchestrations. You know that is not easy to understand the solution:

  • What ports are subscribing
    to the messages?

    • In which
      conditions?
    • In which application?

But that’s not all. Even worse if you have
orchestrations using filters based on the content/context of the message in the
activation.

This kind of analyze is hard because BizTalk Server
Administration Console doesn’t provide an easy way out-of-the-box for you to
see these subscriptions for example in a central place or in a visual diagram
like:

BizTalk subscriptions diagram prof-of-concept

This picture is actually from BizTalk360 Graphical Message Flow, but it serves well here as prof-of-concept.

The default solution

So the default solution that you have out-of-the-box
with the product is to query the subscription from the BizTalk Server
Administration Console by:

  • In the console
    tree, expand BizTalk Server Administration, and then click the BizTalk group.
  • In the details
    pane, click the New Query tab.
  • In the Query
    Expression group, in the Value column, select Subscriptions from the drop-down
    list box.
BizTalk Administration Console Subscription query

But then you need to go one by one and see what the
filters are.

You can minimize this by filtering more the query
using the following filters:

  • Maximum Matches:
    The number of matches to display.
  • Service Instance
    ID: You can filter subscriptions by service instance ID.
  • Service Name: You
    can filter subscriptions by service name.
  • Subscription
    Type: You can filter subscriptions by Activation Subscription or Instance
    Subscription.

But that will not solve all your problems also. In conclusion, this is a hard and time-consuming task.

And sometimes what I need is just to have a quick
overview of all these filters.

BizTalk Filter Finder Tool

“BizTalk Filter Finder Tool” is a simple tool that
aims to simplify the process for better understand and maintain solutions based
on content-based routing. By allowing you to have a quick overview of all the
artifacts, send ports or orchestrations that have filters associated.

BizTalk Filter Finder Tool

This tool will extend default BizTalk Server
capabilities transforming this tedious and sometimes complicate analyze a
little simple, easy and fast.

It way not be an amazing tool; it may not be beautiful
but for me is a timesaver tool.

Credits also to my team member at DevScope, Pedro Almeida that collaborated with me in the development of this tool.

Download

You can download BizTalk Filter Finder Tool from:
BizTalk Filter Finder ToolBizTalk Filter Finder Tool
GitHub

The post BizTalk Filter Finder Tool appeared first on SANDRO PEREIRA BIZTALK BLOG.

BizTalk Port Multiplier Tool

BizTalk Port Multiplier Tool

You may all remember Richard Seroter BizTalk SendPort Duplicator tool and how he descrived that frequently during development, and even in production, we have a need to create new BizTalk ports that are virtually identical to an existing one where we just need to change some small configurations like:

  • Address/URI;
  • Send Port Filter criteria;
  • Different pipelines or pipeline components configuration;
  • And so on.

And by default, the only options we have are:

  • Export the application binding files, manually clean the file and change the values; And then import the Binding file again;
  • Or manually recreate the entire port again;

Both options are time-consuming and need a lot of manually work.

And Richard Seroter was, and still is, an amazing lifesaving tool that allows you to duplicate send ports easily, so why a new tool?

“BizTalk Port Multiplier Tool” it has all Richard tool functionalities but is more than a Send Port Duplicator, and that is the reason I decided to create a new tool.

“BizTalk Port Multiplier Tool” is a simple tool that aims to simplify port “cloning” process by allowing you to easily “clone or duplicate” any existing port: Receive Port or Send Port.

  • Send Ports are easy, you only need to give a different name to the port, and you can clone it;

Devscope BizTalk Port Multiplier tool Send Ports

  • Receive Ports are tricky because they may contain several Receive Locations and the URI needs to be unique;

Devscope BizTalk Port Multiplier tool

This tool will extend default BizTalk Server capabilities transforming the tedious and sometimes complicate port creation based on an existing one a little simple and easy allowing you to:

  • Create a new Receive Port based on an existing one;
    • It will also export the binding file from that new Receive Port;
  • Create a new Send Port based on an existing one;
    • It will also export the binding file from that new Send Port;
  • Generate different binding files for each environment

Why do I need to “clone” a Receive Port?

Sometimes you also need to create a receive port with similar configurations of an existing one, also changing only few configurations or simple the URI and instead of manually recreating you can have 90% of the process done automatically.

Sometimes is practical, sometimes or in some scenarios it may not work but in most of the cases it will. So it is basically a best-effort operation and not an exact clone because they may have several Receive Locations and the Address/URI needs to be unique. So, you then need to go to each receive location and reconfigure them.

Download

Credits also to my team member at DevScope, Pedro Almeida that collaborated in the development of this tool.

You can download BizTalk Port Multiplier Tool from:
BizTalk Port Multiplier ToolBizTalk Port Multiplier Tool
GitHub

Or from:
BizTalk Port Multiplier ToolBizTalk Port Multiplier Tool
Microsoft | Code Gallery

The post BizTalk Port Multiplier Tool appeared first on SANDRO PEREIRA BIZTALK BLOG.

Integration Use Group | The NoS-addin – your (free) BizTalk Dev buddy! | Video and slides are available

Integration Use Group | The NoS-addin – your (free) BizTalk Dev buddy! | Video and slides are available

Another day, another resource shared! This time regarding my session deliver on Integration User Group or also known as Integration Monday about BizTalk Server NoS add-in – BizTalk NoS Ultimate – that is a Visual Studio add-in for BizTalk developers that aims to improve the experience while developing BizTalk projects. It is an extension to Microsoft Visual Studio that will offer lots of useful functionalities, mainly for developers, by which BizTalk users can save valuable time while working on their day-to-day activities and improve productivity.

About my session

Session Name: The NOS-addin – your (free) BizTalk Dev buddy!

BizTalk Server NoS Ultimate add-in BizTalk Dev Buddy

Session Overview: The NOS-add-in is a tool specifically developed for BizTalk developers. It contains all kind of features to make the life of a BizTalk developer easier and thereby less time-consuming.

In this session, I will show the different capabilities of this tool.

BizTalk Server NoS Ultimate add-in BizTalk Dev Buddy

About Integration User Group

Integration User Group aims to educate, evangelize, inform the community about various integration technologies, and how developers and architects can share and learn about the evolving integration and messaging capabilities of the Microsoft platform.

Website: http://www.integrationusergroup.com/

The post Integration Use Group | The NoS-addin – your (free) BizTalk Dev buddy! | Video and slides are available appeared first on SANDRO PEREIRA BIZTALK BLOG.