Friday 15 July 2016

Visual Studio 2015 Web Tools and Extensions


  • Web Essentials
  • Web Essentials Extensions
  • ReSharper
  • Typescript
  • Angularjs2
  • angular.DefinitelyTyped

Tuesday 12 July 2016

Development Tools I Like


  • Agent Ransack - searching the file system 
  • DanSharp - XML manipulation and xpath query tester

Monday 1 June 2015

Access denied to SSO affiliate application


Using the BTDF 6.0 (BETA) I built a build server msi and deployed it to a test environment. After beginning testing I noticed it was failing in my very first receive pipeline. I found the following error in the event log:


Access denied. The client user must be a member of one of the following accounts to perform this function.

SSO Administrators: OOOOOOO\TEST-BizTalk-SSO Administrators
SSO Affiliate Administrators: OOOOOOO\TEST-BizTalk-SSO Affiliate Administrators

Application Administrators: OOOOOOO\DEV-BizTalk Server Administrators
Application Users: OOOOOOO\DEV-BizTalk Application Users

Additional Data: OOOOOOO\TEST-IT-HOSTT-SVC OOO.Integration OOO.Integration Configuration Data


This really confused me as the error was mentioning security groups I had configured in the development environment. This led me to suspect my environmental settings file was incorrect. Sure enough I checked the file and two of the settings SsoAppUserGroup and SsoAppAdminGroup were still using the development environmental settings.

I made the necessary changes, rebuilt the msi and redeployed the msi to the test environment.

Ran a test....

Same error.

I stumbled across the following blog which described my issues to perfection. The automatically created affiliate application that the BTDF creates had incorrect values.



So I updated the SSOX_ApplicationInfo table with the corrected group names and restarted every related service I could think of.

Ran a test....

Same error.

It was only after I manually removed the affiliate with the below command and redeployed the msi did the error correct itself:

C:\Program Files\Common Files\Enterprise Single Sign-On\ssomanage –deleteapp OOO.Integration

Special thanks to:

Carlo Garcia-Mier and Nethra



Thursday 14 May 2015


Configuring BizTalk's SQL Server Agent Jobs


Backup BizTalk Server (BizTalkMgmtDb)


Edit step  2.

exec [dbo].[sp_BackupAllFull_Schedule] 'd' /* Frequency */
, 'BTS' /* Name */
, 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Backup' /* location of backup files */


Edit step 3.

exec [dbo].[sp_MarkAll] 'BTS' /* Log mark name */
, 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Backup' /* location of backup files */


DTA Purge and Archive (BizTalkDTADb)


Edit Step 2.


exec dtasp_BackupAndPurgeTrackingDatabase 0 --@nLiveHours tinyint
,1 --@nLiveDays tinyint = 0, --will be deleted along with all associated data
,30 --@nHardDeleteDays tinyint = 0, --all data older than this will be deleted.
,'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Backup' --backup folder
,null --@nvcValidatingServer sysname = null,
,0 --@fForceBackup int = 0


MessageBox_Message_Cleanup_BizTalkMsgBoxDb


Leave disabled

Monday 12 January 2015

Wednesday 5 November 2014

BizTalk and Continuous Integration


I really enjoy having all my BizTalk code built, deployed and packaged nightly. It strengthens the code and configuration immeasurably. It also limits the little suprises come deployment time and every morning I have fresh msi's available to me, my team and operations.

With the use of a BizTalk build server, a continuous integration tool, Atlassian's Bamboo is my favourite, MSBuild ExtensionPack and some MSBuild scripts, I can easily achieve this... and more.


Create a Bamboo plan that executes an MSBuild Task





Set up some plan variables



Then schedule the plan to run at night


Point the Bamboo task at a MsBuild file like the following:


<Target Name="NightlyBuild">

<!-- Get latest code base -->
<MSBuild.ExtensionPack.VisualStudio.TfsSource TaskAction="Get" ItemPath="$(TeamProject)" Force="true" />

<!-- Compile Solution -->
<Exec Command ="devenv $(ApplicationName).sln /Rebuild $(BuildType)" />
    
<!-- Create application -->
<Exec Command ='"BTSTask" AddApp /ApplicationName:$(ApplicationName)"' />

<!-- Add Biztalk assembly -->
<Exec Command ='"BTSTask" AddResource /Type:System.BizTalk:BizTalkAssembly  /Source:$(ApplicationName).Schemas.dll 
 /Options:GacOnAdd,GacOnInstall,GacOnImport /Overwrite /ApplicationName:$(ApplicationName)'  />

<!--Generate and add binding files-->
<MSBuild Projects="MSBuildBinding.xml" Targets="Generate;AddToApplication" />
    
<!--Export msi--> 
<Exec Command ='"BTSTask" ExportApp  /ApplicationName:$(ApplicationName) /Package:$(ApplicationName).msi' />
    
</Target>


This is just a small taste of what you can achieve with Bamboo and MSBuild.