• Skip to main content
  • Skip to primary sidebar
  • Home
  • About
  • Recommended Readings
    • 2022 Book Reading
    • 2023 Recommended Readings
    • Book Reading 2024
    • Book Reading 2025
  • Supply Chain Management Guide
  • PKM
  • Microsoft Excel

Ali Raza Zaidi

A practitioner’s musings on Dynamics 365 Finance and Operations

BizTalk 2010

Insert with WCF-SQL-Adapter BizTalk 2010

March 25, 2012 by alirazazaidi

 

I decided to write a simple kick start tutorial for WCF-SQL Adapter for beginners.

In this tutorial where I just perform single operation insert. A simple BizTalk solution which read a value from file location and insert this value into table.

First of all I create a very simple category table. Which hold two fields. As

 

USE [Experiments]

GO

 

/****** Object:  Table [dbo].[CategoryWar]    Script Date: 03/25/2012 22:12:13 ******/

SET ANSI_NULLS ON

GO

 

SET QUOTED_IDENTIFIER ON

GO

 

CREATE TABLE [dbo].[CategoryWar](

[ID] [int] IDENTITY(1,1) NOT NULL,

[CategoryName] [nvarchar](255) NOT NULL,

CONSTRAINT [PK_CategoryWar] PRIMARY KEY CLUSTERED

(

[ID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

 

GO

 

 

Now I create a new solution with Name WCF_SQLAdapter. You can use as you like.

 

On solution explore, I right click  on add and then  select generate items.

 

Then select consumerAdapterServices  as follow.

 

 

 

 

Select SQLBinding from Consume Adapter Services Wizard. Like  as

 

Then click on Configure Button new popup windows  like that

 

 

Inter the Sql server Name. And Database Name in Initial Catalog. And press save button. Now URI look like as

 

Click on test button to verify the connection established. If connection is successful. Then Category section will below the connected button will populate as select from table all possible option appears at right side as follow.

 

 

Some Schemas and bind files generated as follow. Open schema name with

TableOperation.dbo.CategoryWar.xsd

 

 

Now we create one more schema, which will used as input to BizTalk solution. Like as

 

 

Now I create a map for send value from input schema to Request input message.

 

I used source input schema. And output schema I used to  insert schema from TableOperation.dbo.CategoryWar.xsd. Map will be like

 

After that I create new Orchestration with name InputProcessOrchestation.odx.

I create three message with One for input message, and two with Insert Request Method and one for Insert response.  Orchestation will be look like as

 

 

 

It is very simple orchestration, which reading input from file location transform it into request message. And request response call to WCF-SQL adapter and received message drop in other location.

For wcf-sql call I created send request port with specify later option. Remember the name of operation will be the same which will describe in binding. You can later change it. When I deploy the solution I found three ports on BizTalk console. I created two file ports one for receiving input and second for droping output. I import the binding which is created at the time of consuming the SQL Adpater. It will as


Generate instance form input schema and modify it and drop. This solution is works fine for me.  You can download solution from here.

 

 

 

 

 

XSLT In BizTalk Maps

March 22, 2012 by alirazazaidi

XSLT is by default used by BizTalk maps (XSLT engine) to transform source schema to destination schema so there is nothing new (If you just open the .cs file of a map you can see it clearly there) Intention of this post is to highlight different usages of custom XSLT.

1) WHEN to use XSLT ?
I would prefer to use XSLT in following scenarios,
Whenever you have implement a complex logic in map. Like Grouping, Sorting or joining multiple input messages or carrying out operations with those multiple messages etc.

2) WHY XSLT and not Functoids ?
I totally understand that these things can be done using functoids as well. But as per my expereince if you open a map which uses a lot of functoids and try to analyse the .cs file of a map you will realise that,
i) There are a lot of simplifications can be done in that code like inline xslt functions can be used but instead functoids create .net functions for them.
ii) Also lot of unnecessary variables are created in XSLT which is by default generated by functoids.
iii) If you can write a good xslt you can write much more optimized.(Learning XSLT is pretty simple I would say.) Which in turn positively going to impact on your map execution performance.
iv) Debugging XSLT independantly is very easy infact the Map debugging feature introduced in BizTalk intern uses the same XSLT debug functionality (remember the XSLT debug window which is opened at time of debugging a Map). You can keep you xslt seperate (custom xslt) and test it with your sample input messages independantly.

3) What is Extension XML ? When to use it ?
When you need to call external assembly you will need the reference to extension xml. Link below will explain the details of extension xml.
http://msdn.microsoft.com/en-us/library/aa547368.aspx.

4) XSLT Grouping ,Sorting samples.
Some typical samples of xslt grouping,
e.g. Input message is

This needs to be Grouped and Sorted we can use an XSLT as below,

and the Output will be

5) Different XSL Functions :-
Below link gives description of some of the XSLT 1.0 functions,
http://www.zvon.org/xxl/XSLTreference/Output/xpathFunctionIndex.html

Imp Note:- As of now Microsoft only supports XSL 1.0, XSL 2.0 is much more powerful and contains a lot of functions compared to 1.0. My Wishlist would include support for XSL 2.0 from Microsoft in future versions of XSLT engine.

Xpath vs Distinguished fields.

March 12, 2012 by alirazazaidi

Xpath consider to be slower, because when we get value using xpath, the whole message will be loaded into memory, so Xpath is memory hungry  solution Distinguished filed return value faster then xpath. Distinguished filed  has limitation. It failed to returning value when message contains multiple node contains the value. In this case Xpath works wonder.
Final point is depending on need, either to use Distinguished filed or Xpath. Distinguished fields internally contain Xpath.

All you need to know about the WCF-SQL Adapter

January 10, 2012 by alirazazaidi

Currently I am studying the WCF-SQL Adapter. I found very informative webcast by “Thiago Almeida” about WCF-SQL adapter. This webcast belongs to BizTalk 2009, but for beginners it’s still good starting point. I don’t think things will not much different in BizTalk 2010 at least not at beginner level.

 

http://www.cloudcasts.net/ViewWebcast.aspx?webcastid=2521554268962766719

 

BizTalk Server Pipeline Component Wizard

December 13, 2011 by alirazazaidi

If you need to design BizTalk Pipeline custom component, Use the BizTalk Pipeline Component Wizard on codeplex
(http://btsplcw.codeplex.com), It is my favorite way to create pipeline components.
It is an easy-to-use tool that walks you through the pipeline component creation
process via a friendly wizard.

http://btsplcw.codeplex.com/

BizTalk Server 2010 R2 Announced

December 11, 2011 by alirazazaidi

A few days ago , Microsoft announced the forthcoming release of BizTalk Server 2010 R2 on the BizTalk Server blog site.  This is advanced notice, given that this new version will ship six months after the release of Windows 8, expected in the second half of next year.  On this basis, we can expect the new version of BizTalk Server to arrive in 2013.  Given the BizTalk team’s previous record of name changes, I wonder if this will eventually be released as BizTalk Server 2013.

 

More Infor read this http://blogs.msdn.com/b/biztalk_server_team_blog/archive/2011/12/08/biztalk-server-2010-r2.aspx

BAM Data read write from Dot net application

September 20, 2011 by alirazazaidi

You know that BAM is used to gather statistics from your BizTalk application. What you probably don’t know is that:

·          You can collect BAM data from your non-BizTalk applications such as external .NET components that BizTalk calls into.

·          Tracking profile editor (TPE) is not the only way to collect data you can use a set of APIs available in the Microsoft.BizTalk.Bam.EventObservation namespace to read and write directly into the BAMPrimaryImport database.

Check out some of the links here:

·          http://www.topxml.com/rbnews/BizTalk-BAM-activity/re-29195_Business-Activity-Monitoring–GenerateTypedBAMAPI-Tool.aspx

·          http://www.developer.com/net/net/article.php/11087_3587296_2

·          http://blogs.msdn.com/keithlim/archive/2006/02/02/522649.aspx

·          http://blogs.msdn.com/keithlim/archive/2006/03/08/545851.aspx   r

 

 

 

 

 

Original Article : http://geekswithblogs.net/benny/archive/2007/06/14/113219.aspx
 

 

How BizTalk Server 2010 Works

September 13, 2011 by alirazazaidi

I found a very beatiful article on msnd about how Biztalk 2010 works. here some extraction complete artilce you can read from here
http://www.microsoft.com/biztalk/en/us/messaging.aspx

At the core of BizTalk Server are the Messaging Engine and the Orchestration Engine, which provide the underlying architecture for integrating and exchanging messages between various services, both within and outside your organization.

The BizTalk Messaging Engine:

Receives inbound messages.
Parses inbound messages to identify their specific formats.
Evaluates message content to identify how the message is to be routed and processed.
Delivers messages to their respective destinations.
Tracks the status and state of documents.
The BizTalk Orchestration Engine, in contrast, coordinates and schedules message processing and performs complex logic on the message as it is passed through a defined workflow.

For Complete article is here  http://www.microsoft.com/biztalk/en/us/messaging.aspx

What is BizTalk message Type ?

September 12, 2011 by alirazazaidi

All messages in BizTalk are represents in XML. One important aspect of all XML documents is its namespace. Briefly, a namespace allows you describe the Student (for example) in one way without affecting anyone else’s description, possible student can mean different things to other applications, Second important aspect of all XML document is the name of document root node.

For example namespace of student XML is

urn:schemas-BiztalkHQ-net:Student:mapcontext:1

and Root Node of Schema is

Student .

The combination of message namespace and name of root node are represented as:

 

urn:schemas-citrite-net:licensing:mapcontext:1#Student

The hash symbol (#) separates the namespace from the name of the root node.

Microsoft BizTalk Server 2010 Unleashed

August 22, 2011 by alirazazaidi

Microsoft BizTalk Server 2010 Unleashed is the definitive, pragmatic guide to Microsoft’s latest and most powerful version of BizTalk Server. In this book, a team of world-class BizTalk Server 2009 experts bring together the deep practical insights .NET developers need to solve real business problems with BizTalk Server 2009 in any enterprise environment. Drawing on their immense BizTalk experience, the authors present best practices for the entire development lifecycle, from planning and architecture through deployment, and beyond. Writing at just the right level of technical detail for experienced .NET developers now starting out with BizTalk, they cover these and many other crucial issues: ” Architecting and designing effective, high-value BizTalk solutions ” Working with BizTalk schemas, maps, orchestrations, pipelines, pipeline components, and adapters ” Implementing business rules with the Microsoft Business Rules Framework ” Creating highly-available, high-performance BizTalk environments ” Monitoring business activity ” Collaborating effectively among BizTalk developers and users ” Using BizTalk’s leading-edge RFID capabilities Note: This is a 100% new book, NOT an update to Microsoft BizTalk Server 2004 Unleashed.

http://www.amazon.co.uk/BizTalk-Server-Unleashed-Brian-Loesgen/dp/0672331187/ref=sr_1_2?ie=UTF8&qid=1303139672&sr=8-2

Next Page »

Primary Sidebar

About

I am Dynamics AX/365 Finance and Operations consultant with years of implementation experience. I has helped several businesses implement and succeed with Dynamics AX/365 Finance and Operations. The goal of this website is to share insights, tips, and tricks to help end users and IT professionals.

Legal

Content published on this website are opinions, insights, tips, and tricks we have gained from years of Dynamics consulting and may not represent the opinions or views of any current or past employer. Any changes to an ERP system should be thoroughly tested before implementation.

Categories

  • Accounts Payable (2)
  • Advance Warehouse (2)
  • Asset Management (3)
  • Azure Functions (1)
  • Books (6)
  • Certification Guide (3)
  • Customization Tips for D365 for Finance and Operations (62)
  • D365OF (59)
  • Data Management (1)
  • database restore (1)
  • Dynamics 365 (58)
  • Dynamics 365 for finance and operations (135)
  • Dynamics 365 for Operations (165)
  • Dynamics AX (AX 7) (134)
  • Dynamics AX 2012 (274)
  • Dynamics Ax 2012 Forms (13)
  • Dynamics Ax 2012 functional side (16)
  • Dynamics Ax 2012 Reporting SSRS Reports. (31)
  • Dynamics Ax 2012 Technical Side (52)
  • Dynamics Ax 7 (65)
  • Exam MB-330: Microsoft Dynamics 365 Supply Chain Management (7)
  • Excel Addin (1)
  • Favorites (12)
  • Financial Modules (6)
  • Functional (8)
  • Implementations (1)
  • Lifecycle Services (1)
  • Logseq (4)
  • Management Reporter (1)
  • Microsoft Excel (4)
  • MS Dynamics Ax 7 (64)
  • MVP summit (1)
  • MVP summit 2016 (1)
  • New Dynamics Ax (19)
  • Non Defined (9)
  • Note taking Apps (2)
  • Obsidian (3)
  • Personal Knowledge Management (2)
  • PKM (13)
  • Power Platform (6)
  • Procurement (5)
  • procurement and sourcing (5)
  • Product Information Management (4)
  • Product Management (6)
  • Production Control D365 for Finance and Operations (10)
  • Sale Order Process (10)
  • Sale Order Processing (9)
  • Sales and Distribution (5)
  • Soft Skill (1)
  • Supply Chain Management D365 F&O (3)
  • Tips and tricks (278)
  • Uncategorized (165)
  • Upgrade (1)
  • Web Cast (7)
  • White papers (4)
  • X++ (7)

Copyright © 2025 · Magazine Pro On Genesis Framework · WordPress · Log in