Category Archives: BizTalk Migration 2013

[Fix]BizTalk Rules not working


Hi All,

We had one issue in our environment, where BizTalk rules were not getting fired.

We are able to process same rules in another environment.

After troubleshooting, we found the issue with BizTalk rule engine static support. In our rule, we use .net static class to fetch some information.

For that, we need to create the registry entry. This is must for BizTalk rules that uses .net static classes

https://msdn.microsoft.com/en-us/library/aa950269.aspx

regards,

Chaitanya

Advertisements

What’s new in BizTalk 2016


MSDN Source link:

https://msdn.microsoft.com/en-us/library/mt670742.aspx

Feature Description
Support for newer platforms BizTalk Server 2016 adds support for the following Microsoft platforms:

– Visual Studio 2015
– Windows Server 2016
– SQL Server 2016
– Office 2016

Hardware and Software Requirements for BizTalk Server 2016

SQL Server 2016 AlwaysOn Availability Groups Support includes:

– Using on-premises and in Microsoft Azure IaaS virtual machines
– Using for production workloads
– Provides a high available (HA) solution in Microsoft Azure

High Availability using SQL Server AlwaysOn

BizTalk Server Azure VMs in production BizTalk Server Azure virtual machines are now fully supported for production environments. Using SQL Server 2016 AlwaysOn, a highly available solution is now possible.

High Availability using SQL Server AlwaysOn

Logic App adapter Connect to your Logic Apps hosted in Azure, and get access to all the connectors including Salesforce, SharePoint, CRM Online, and more. For example, you can receive an order in BizTalk Server, connect to your Logic App, and update Salesforce.

Logic App adapter

FTP adapter SYST command is no longer required. When you configure the FTP adapter on a receive location or send port, there is a property called FTP Server Type. Using this property, you choose the FTP server you want; which determines if SYST is required.

As a result of this change, there are more "supported" FTP servers.

Configuring the FTP adapter

SFTP adapter SFTP adapter is re-engineered to use WinSCP to connect to SFTP; which allows support for more SFTP servers. Client-side logging and additional encryption ciphers are also new.

SFTP adapter

Allow import of tracking settings When importing a binding a file, you can choose to import (or not import) the tracking properties enabled on your orchestrations, send ports, and so on. This is a global setting (set at the Group level) so you can set this feature in your different environments. For example, you can import the existing tracking properties for your Development environments, and don’t import the tracking properties for your Production environments.

BizTalk Settings Dashboard, Group Page

Shared Access Signature (SAS) You can use SAS authentication for the Service Bus connection with the BasicHttpRelay, NetTcpRelay, BasicHttp, and WebHttpadapters.

WCF-BasicHttpRelay adapter
WCF-NetTcpRelay adapter
WCF-BasicHttp adapter
WCF-WebHTTP adapter

SB-Messaging adapter now includes the steps to get Access Control (ACS) values using PowerShell.

Ordered delivery on dynamic ports – Includes the adapters that support ordered delivery on static send ports
– You can enable the ordered delivery option in the BizTalk Administration console
SHA-2 hash functions SHA-2 is fully supported, including:

  • BizTalk can consume SHA2-signed certificates across all of its components
  • Supports the following Advanced Encryption Standard (AES) exchange system for signature keys in AS2, RosettaNet, and the MIME/SMIME encoder:
    • AES128
    • AES192
    • AES256
  • Supports the following SHA2-based MIC calculations for AS2:
    • SHA256
    • SHA384
    • SHA512
  • Supports the following SHA2-based digest methods in RosettaNet:
    • SHA256
    • SHA384
    • SHA512
  • SHA1 certificates will continue to work
Compile your maps Choose to compile your maps using XslTransform or XslCompiledTransform
Schema window In the BizTalk mapper, the Schema dialog window is now resizable
Office web components (OWC) Office web components (OWC) is now an optional installation component.
Adapters and Accelerators Improvements and changes include:

– SAP adapter now uses SAP Connector for .NET (NCo), while still supporting the classic RFC SDK. WCF-SAP adapter support for the SAP .NET Connector provides more details.
– BizTalk Accelerator for HL7: The MLLP adapter on a receive location now supports the option to initiate an outbound connection to a remote LOB listener.

Import/export parties Changes include:

– The import and export option is separated from the Application. For example, you can export a party without exporting the application. You can import a party without importing the application.
– Can choose which parties, business profiles, and agreements you want to import or export
– Can continue to import/export the business-to-business artifacts as you do in BizTalk Server 2013 R2, BizTalk Server 2013, and BizTalk Server 2010.

BizTalk Administration In addition to a more modern look and feel, some additional changes include:

– Configure the settings for multiple hosts/host instances simultaneously. For example, you can set the .NET CLR settings for multiple host instances simultaneously.
– Use the new Search feature to filter and find artifacts in your application, such as schemas, resources, and more.
– When troubleshooting suspended messages, you can save multiple suspended messages simultaneously to a file.

Using the BizTalk Server Administration console

Deprecated & Removed List

Program Status Replacement
RFID Mobile Removed None
RFID Server Removed None
SharePoint SSOM/Web Service adapter Removed Use the CSOM (Client Side Object Model) option.

Windows SharePoint Services Adapter

Appendix B: Install the Microsoft SharePoint Adapter

SOAP adapter Deprecated WCF-BasicHttp Adapter
Old SQL adapter Deprecated WCF-based SQL adapter in the BizTalk Adapter Pack
UDDI Removed None

Regards,

Chaitanya

BizTalk Server 2013 CU3 is now available


Hi All,

Please check for download instructions of CU3 for- BizTalk Server 2013 and Adapter pack updates in below links.

BizTalk Server 2013 CU3:

http://support.microsoft.com/kb/3088676

BizTalk Adapter Pack 2013 CU2:

http://support.microsoft.com/kb/3100564

Regards,

Chaitanya

How to access BizTalk Application Resources via BiztalkMgmtDB


There are 2 types of assemblies in BizTalk Applications

1. .Net Assemblies will be having the type System.BizTalk:Assembly

2. BizTalk Assemblies will be having the type ‘System.BizTalk:BizTalkAssembly’

Below is the query to access the biztalk resources programmatically in sql server, so that you can compare the assemblies across groups.

You cannot find out .net assembliies of type System.BizTalk:Assembly in bts_assembly table. This is the only place you could find this information

SELECT [luid] ‘AssemblyInfo’

FROM [BizTalkMgmtDb].[dbo].[adpl_sat] sat

WHERE sat.sdmtype IN ( ‘System.BizTalk:Assembly’,

‘System.BizTalk:BizTalkAssembly’ )

Please let me know if you have any questions.

Regards,

Chaitanya

PowerShell Script to raise Custom Event ID in case if Orchestration is suspended in BizTalk Server


Hi All,

Below is the power shell script for generating the event ID in the event viewer in case if any BizTalk orchestration is in suspended mode.

As of now, this script only useful for one orchestration checking at a time, in future I will modify and update the PowerShell script for publishing the events for multiple orchestrations at a time.

Copy the below script and save it in note pad with .PS1 extension and schedule a task job if you want to run on daily basis.

Below is the website link on how to Use the Windows Task Scheduler to Run a Windows PowerShell Script

http://blogs.technet.com/b/heyscriptingguy/archive/2012/08/11/weekend-scripter-use-the-windows-task-scheduler-to-run-a-windows-powershell-script.aspx

For below script to be successful, you must create a linked server between BiztalkMgmtDB and biztalkmsgboxdb if both databases are residing in different servers.

I am writing different power shell script to make use of WMI instead of using Linked servers and I will update the blog in future posts.

 

 

$sqlText = “—————————-Start of  Script————————————————————————–

SET NOCOUNT ON

SET TRANSACTION ISOLATION LEVEL READ COMMITTED

SET DEADLOCK_PRIORITY LOW

 

declare @ErrorOrchCount int,@ErrorMsg varchar(100)

 

SELECT

@ErrorOrchCount= Count(o.nvcName)

 

FROM [BizTalkMsgboxDb]..[Instances] AS i WITH (NOLOCK)

JOIN [BizTalkMgmtDb]..[bts_Orchestration] AS o WITH (NOLOCK) ON i.uidServiceID = o.uidGUID

WHERE o.nvcName =’OrchestrationName’  # Give the Orchestration Name

and i.nState not in  (2,8)

 

GROUP BY o.nvcName, i.nState

 

if (@ErrorOrchCount >0)

begin

set @ErrorMsg=’Orchestration is in Suspended Mode’

 

end

else

 

Begin

set @ErrorMsg=Null;

 

END

#Provide the SQL Server Name on which sql statements needs to be executed

$serverName= “servername”

 

 

$QueryTimeout = 120

$ConnectionTimeout = 30

#Action of connecting to the Database and executing the query and returning results if there were any.

$conn=New-Object System.Data.SqlClient.SQLConnection

$ConnectionString = “Server={0};Database={1};Integrated Security=True;Connect Timeout={2}” -f $ServerName,$DatabaseName,$ConnectionTimeout

$conn.ConnectionString=$ConnectionString

$conn.Open()

$cmd=New-Object system.Data.SqlClient.SqlCommand($sqlText,$conn)

$cmd.CommandTimeout=$QueryTimeout

$reader = $cmd.ExecuteReader()

 

while ($reader.Read()) {

 

$OrchStatus =$Reader.GetValue($1)

 

}

 

if ($OrchStatus)

{

 

Write-EventLog –LogName Application –Source “OrchestrationException” –EntryType Error –EventID 5012 #event id that you want to raise for SCOM to recognize

–Message “ Orchestration is in Suspended Mode.”

 

}

Please let me know if you have any questions.

 

 

Regards,

Chaitanya

BizTalk 2013 r2 CU1 update


Hi All,

BizTalk 2013 r2 CU1 update is available. Please install in your DIT , SIT environments and check if it is breaking any code and do the regression testing.

https://support.microsoft.com/en-us/kb/3055198

below are fixes that were covered.

BizTalk Server management tools and business tools

KB article number Description
3056908 FIX: BizTalk Server Administration Console crashes when you add new columns to query results
3065487 FIX: Ordering of artifacts resets after you click “Refresh” in BizTalk Server Administration Console
3065488 FIX: BAM email alerts do not work correctly for BAM Alert service accounts in BizTalk Server 2013 R2
3053569 FIX: Data Security application crashes when unique GUID is used as Application Name in some SQL connections
3076297 FIX: Slow refresh of BizTalk Server artifacts in the BizTalk Server Administration Console
3069884 An update to BHM is available in BizTalk Server

BizTalk Server B2B support

KB article number Description
2884209 FIX: “There was no XML start tag open” error when you process an 834 instance in BizTalk Server 2009, BizTalk Server 2010 or BizTalk Server 2013 R2
3006010 FIX: Error occurs when you use AS2 messages as part of MIME header in BizTalk Server 2010 or BizTalk Server 2013 R2
3058642 FIX: You cannot process an HIX EDI 820 message in BizTalk Server 2013 R2 after you apply the hotfix 2882452
2976004 FIX: You can’t use a nonstandard qualifier in identity and agreement for an EDIFACT Service schema in BizTalk Server 2013 R2
3053362 FIX: ST03 and GS08 fields do not match when a 999 acknowledgement message for HIPAA 5010 is generated
2678762 FIX: Validation fails on the EDI send pipeline when you process EDI messages that contain leading and trailing zeros and spaces in BizTalk Server 2010, BizTalk Server 2009, and BizTalk Server 2013 R2

BizTalk Server Accelerators

KB article number Description
3012706 FIX: Can’t configure BTARN on the second server in a BizTalk Server 2013 R2 group
3026048 How to apply maps and custom ACK codes to ACK messages in HL7 for BizTalk Server 2013 R2
957684 FIX: Event ID 4096 is logged in the BizTalk Server Application log when you use BizTalk Accelerator for RosettaNet 3.5 to receive a 3A4 PIP message from a trading partner and when the value of the MonetaryAmount element is less than 1
3050011 You cannot enter any acceptable ACK codes other than those that are set in the MLLP send port’s configuration properties
BizTalk Server Adapters
KB article number Description
3016055 FIX: Error occurs when you use WCF-OracleDB adapter to work with Oracle Server 11.2.0.4 in BizTalk Server 2013 R2
3021233 FIX: Thread buildup in WCF receive host when receive location is disabled in BizTalk Server 2010 or BizTalk Server 2013 R2
3065745 FIX: There is no meaningful event in the error message for SAP adapter crashes in BizTalk Server 2013 R2
3015060 FIX: WCF-BasicHttp send port remains in “Active” state after the web service returns an incorrect response
3060880 FIX: Error 1219 (0x800704c3) occurs when you use File adapter with alternate credentials in BizTalk Server
3061233 FIX: High CPU usage when you use the SFTP adapter’s default polling interval in BizTalk Server 2013 R2
2951982 FIX: MQSeries adapter for a receive port doesn’t maintain message order in BizTalk Server 2010 or BizTalk Server 2013 R2
3036950 FIX: You cannot use BizTalk_CorrelationID property in an orchestration correlation type in BizTalk Server 2013 R2
3052396 FIX: Can’t configure MQSeries adapter to receive only some of the messages in the queue in BizTalk Server 2013 R2
3034488 FIX: “Open SFTP connection error” when you use the SFTP adapter in BizTalk Server 2013 R2
3067999 FIX: The element orders in the schema generated by WCF-SQL adapter are different for SQL Server 2012 and SQL Server 2014
3049711 FIX: Error when you use SharePoint Services adapter to receive files from a library whose date/time is not English or UTC
3076289 FIX: Error occurs when you set the ConnectionLimit property of the SFTP adapter receive or send port to 0 (zero)
3076462 FIX: SharePoint Services receive location cannot obtain files from subfolders in BizTalk Server 2013 R2
3067378 FIX: SFTP adapter cannot send zero-byte file in BizTalk Server 2013 R2
3058611 FIX: The files that are being written are transmitted incorrectly when the SFTP Adapter poll is running at the same time

BizTalk Server Design Tools

KB article number Description
3005265 FIX: “Custom component invocation failed” error during a BPEL export in BizTalk Server 2013 R2
3062618 FIX: BizTalk.TestableMapBase.TestMap fails when you set OutputInstanceType to “Native”
3018823 FIX: Custom extension XML is not saved in the map file in a BizTalk Server 2013 R2 solution
BizTalk Server Message Runtime, Pipelines, and Tracking
KB article number Description
3019503 FIX: No error or warning when no tracking data is stored in BAM in BizTalk Server
3051132 FIX: BAM tracking does not work when you use PassThruReceive or EdiReceive pipeline in BizTalk Server 2013 R2
3049737 FIX: The invalid XML message is suspended when you use the OOB PassThruReceive pipeline in BizTalk Server 2013 R2
3047076 FIX: Mismatch error occurs in MIC when you deploy BAM tracking profile to the AS2 send port in BizTalk Server 2013 R2
3058787 FIX: NvcMsgType column of bam_TrackPoints table displays null value in BizTalk Server 2013 R2

 

Regards,

Chaitanya

Query to get BizTalk Role Link Details


Hi All,

You can get the Role link details using Sql Query instead of going to admin console. Go to BiztalkMgmtDB Database and run the below query. it’s simple and easy

 

USE BizTalkMgmtDb

SELECT

app.nvcName,

role.nvcname [RoleLink],

party.nvcname [PartyName],

assembly.nvcfullname [Assembly],

sendport.nvcname [SendPort]

FROM bts_sendport sendport

INNER JOIN bts_party_sendport partysendport ON partysendport.nsendportid = sendport.nid

INNER JOIN bts_enlistedparty_operation_mapping operationmapping ON operationmapping.npartysendportid = partysendport.nid

INNER JOIN bts_enlistedparty_port_mapping portmapping ON portmapping.nid = operationmapping.nportmappingid

INNER JOIN bts_enlistedparty enlistedparty ON portmapping.nenlistedpartyid = enlistedparty.nid

INNER JOIN bts_party party ON enlistedparty.npartyid = party.nid

INNER JOIN bts_role role ON role.nid = enlistedparty.nroleid

INNER JOIN bts_rolelink_type rolelinktype ON rolelinktype.nid = role.nrolelinktypeid

INNER JOIN bts_assembly assembly ON assembly.nid = rolelinktype.nassemblyid

INNER JOIN bts_application app on app.nID=assembly.nApplicationID

 

Regards,

Chaitanya

Internal Server 500 Error when accessing the BizTalk Service( ./Btshttpreceive.dll)


If you are getting internal server error when you partner is connecting to your receive location ending with BSHTTPReceive.dll.

Check your host that was used for this receive location, if that host is of 32 bit, enable the App Pool for that receive location service to 32 bit mode.

If that host is of 64 bit mode, enable the App Pool to run in 64 bit mode.

Regards,

Visit site: http://www.sqlblogging.com

Send an Email: sqlblogging

Host Instances in Hung State and not able to Restart


Hi All,

Today we faced the issues with the Host instances as these are in hung state, all the messages are piled up and are unable to process.

If host instances are in hung mode, first try to restart the host instances, if it is not happening, check the msgbox blockings.

If blockings are there, check who is causing those blockings?

Sp_who2 active for checking the blockings in BizTalkMsgBoxDb

We have issue like Sql agent job is failing at our end

MessageBox_Parts_Cleanup_BizTalkMsgBoxDb Job is failing at our end which needs to run at every one minute.

select count(*) from BizTalkMsgBoxDb..Spool (nolock)

that’s why we have huge number of messages piled up in the above table Of message box

Issue is above job is holding the lock on the message box tables and host instances are requesting the lock on those same tables and it is causing the blocking.

We have killed the blocking and job became successful and issue got fixed.

Regards,

Visit site: http://www.sqlblogging.com

Send an Email: sqlblogging

Retrieving the COM class factory for component with CLSID {254B4003-2AA7-4C82-BB2E-18BA7F22DCD2} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).


When we are trying to process the 997 Message over As2 Protocol to the one of partner, we got the below issue.

Retrieving the COM class factory for component with CLSID {254B4003-2AA7-4C82-BB2E-18BA7F22DCD2} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).

After troubleshooting , we got to know the root cause.

We are sending the AS2 Message in a send port that was running under the 64 Bit host instance.

Reason : AS2 can only work on 32 bit host. It’s one of the known issues in BizTalk due to its ExplorerOM Dependencies

Resolution:

Delete the host instances of that host and change the host setting to 32 bit mode and then recreate the new host instances.

Regards,

Visit site: http://www.sqlblogging.com

Send an Email: sqlblogging

%d bloggers like this: