by Richard | Sep 9, 2006 | BizTalk Community Blogs via Syndication
Yesterday I passed both the 2004 exam (074-135: Developing E-Business Solutions Using Microsoft BizTalk Server 2004) and the new 2006 BizTalk exam (070-235: TS: Developing Business Process and Integration Solutions by Using Microsoft® BizTalk® Server 2006)!
Webcasts
When I first started studying for the exam I hadn’t really worked with BizTalk. These Webcasts provided an easy introduction to the basics of the products:
- Getting up to speed with BizTalk Server for .NET Developer
- BizTalk Orchestration
- Biztalk Server 2004 Architecture
The Webcasts are help by Scott Woodgate. He used to be the product manager for BizTalk and knows it inside out (besides being a skilled presenter).
Installation
Next thing I did was to install a Virtual PC with a Windows 2003 server. Then I used this list. The list saved me from some major pitfalls while installing BizTalk (especially 2004 is known to be a messy installation)!
The only problem I ran into during the installation was a collation error on the SQL server (BizTalk Server does not support case-sensitive collations, use Latin1_General_CI_AS).
Tutorials
Then I worked my way through these tutorials. They cover a big part of the product. I can also recommend reading the BizTalk Unleashed 2004 book. Make sure to understand everything in the tutorials as most of it actually will show up on the exam. Make sure to pay extra attention to deployment and the development of business rules! Of course one also has to understand the basics of Orchestration and XML mapping.
Exams
To pass the exams you’ll have to understand the whole architecture and when messages are written to the message database (dehydrate and hydrate). Understand pipelines – develop your own pipeline and deploy it to really understand this part (remember all the interfaces etc). While developing pipeline use the different pipeline testing tools that are available (pipeline.exe etc). Read about message patters and particularly the convoy pattern etc. You will need to know most of the mapping functiods and what they are used for. Use and understand the import, include and redefine functionality in the schema editor.
One big miss I did while studying was the security part and what different BizTalk users groups that exists. Use this list and learn the most important ones (both the Windows and the SQL Server Roles). To pass the exam you don’t really have to know that much about the specifics of BAS, BAM ands HWS – you do need to know what the different solutions are used for and what their limits are.
The new exams are a bit different as they involve setting up a lot of action-lists where one drag and drop actions to create a list of actions for completing a described task. No information about how many actions are required in the finished list etc. However the 2006 is “easier” as it deals a lot with actual development tasks and not so much with security things and details as the old ones (like specific user groups and interfaces etc).
A few tips if your planing to take the 2006 exams is that you study the new BTSTask tool, developing business rules using the Business Rule Composer tool and BAM (Business Activity Monitoring) and especially the process of configuring BAM.
by community-syndication | Sep 8, 2006 | BizTalk Community Blogs via Syndication
I’ve refreshed the tutorial documents on the download page here: http://www.microsoft.com/downloads/details.aspx?FamilyID=6a5f6ef4-aeb8-4d8d-a521-37333a875ce4&displaylang=en. Let me know if you are using the latest instructions and the latest support files (see June 27 entry), and you are still experiencing problems.
Thanks,
Liza
by community-syndication | Sep 8, 2006 | BizTalk Community Blogs via Syndication
Recently, a client of ours was running into a problem withour SQLReceive Locationsbeing automatically disabled by BizTalk 2006. This happened whenever the IT adminstook down theSQL 2000 servers and/or the networkfor maintenance.
Some background: BizTalk 2K6 is usedin anintegration solution that requires querying a SQL 2K database for new records. Due to requirements of the system, […]
by community-syndication | Sep 7, 2006 | BizTalk Community Blogs via Syndication
It’s that time of the year again where we get tohelp clients understand what BizTalk Server can do for them. As part of the Tallan Fall Seminars series (http://www.tallan.com/fallseminars/) we will begiving seminars on SOA and BizTalk Server 2006at Microsoft’sManhattan offices on Oct. 17 and a TBD venue in Hartford on Oct. 19. The seminars […]
by community-syndication | Sep 7, 2006 | BizTalk Community Blogs via Syndication
This one is very well organized tutorial for constructing Biztalk Messages. I just want to put it here and come back to reference.
Constructing BizTalk
2004 XML Messages (In an Orchestration) – Choices
by community-syndication | Sep 7, 2006 | BizTalk Community Blogs via Syndication
Here’s another sample PowerShell script, this time to manage BizTalk Server ports
and receive locations. This one can:
-
List all send ports
-
List all receive ports and their associated receive locations
-
List all send port groups and what send ports are associated with each one
-
Enable/Disable a receive location
-
Start/Stop/Enlist/Unenlist a send port
Here’s the code:
#
# declare our parameters: the action to take
#
param(
[string] $action=$(throw ‘need action’),
[string] $name,
[string] $status
)
#
# Helper function to list all WMI objects of
# a given type
#
function bts-list-objs($kind)
{
get-wmiobject $kind `
-namespace ‘root\MicrosoftBizTalkServer’
}
#
# display all information about a receive port
#
function bts-display-recv-port($port)
{
$portname = $port.Name
$portname
$recvlocs = get-wmiobject MSBTS_ReceiveLocation `
-namespace ‘root\MicrosoftBizTalkServer’ `
-filter “ReceivePortName=’$portName'”
$recvlocs | ft Name, AdapterName, InboundTransportURL,
IsDisabled
}
#
# display all information about a send port group
#
function bts-display-send-port-group($group)
{
$groupname = $group.Name
$ports = get-wmiobject MSBTS_SendPortGroup2SendPort `
-namespace ‘root\MicrosoftBizTalkServer’ `
-filter “SendPortGroupName=’$groupName'”
$groupname
foreach ($port in $ports) { “`t” + $port.SendPortName }
}
#
# enable or disable the specified
# receive location
#
function bts-set-recv-loc-status($name, $status)
{
$recvloc = get-wmiobject MSBTS_ReceiveLocation `
-namespace ‘root\MicrosoftBizTalkServer’ `
-filter “Name=’$name'”
switch ( $status )
{
‘disable’ { $recvloc.psbase.invokemethod(‘Disable’,
$null) }
‘enable’ { $recvloc.psbase.invokemethod(‘Enable’, $null)
}
}
}
#
# controls a send port
#
function bts-set-send-port-status($name, $status)
{
$sendport = get-wmiobject MSBTS_sendPort `
-namespace ‘root\MicrosoftBizTalkServer’ `
-filter “Name=’$name'”
switch ( $status )
{
‘start’ { $sendport.psbase.invokemethod(‘Start’, $null)
}
‘stop’ { $sendport.psbase.invokemethod(‘Stop’, $null)
}
‘enlist’ { $sendport.psbase.invokemethod(‘Enlist’,
$null) }
‘unenlist’ { $sendport.psbase.invokemethod(‘UnEnlist’,
$null) }
}
}
function is-valid-opt($check, $options)
{
foreach ( $val in $options )
{
if ( $check -eq $val ) {
return $true
}
}
}
#
# main script
#
switch ( $action )
{
‘list-send-ports’ {
bts-list-objs(‘MSBTS_SendPort’) | ft Name, PTAddress,
Status
}
‘list-send-port-groups’ {
bts-list-objs(‘MSBTS_SendPortGroup’) | %{ bts-display-send-port-group($_)
}
}
‘list-recv-ports’ {
bts-list-objs(‘MSBTS_ReceivePort’) | %{ bts-display-recv-port($_)
}
}
‘set-recv-loc-status’ {
if ( !(is-valid-opt $status (‘enable’, ‘disable’))
)
{
throw ‘invalid status’
}
if ( ($name -eq ”) -or ($name -eq $null) )
{
throw ‘you must supply the receive
location name’
}
bts-set-recv-loc-status $name $status
}
‘set-send-port-status’ {
if ( !(is-valid-opt $status (‘start’, ‘stop’, ‘enlist’,
‘unenlist’)) )
{
throw ‘invalid status’
}
if ( ($name -eq ”) -or ($name -eq $null) )
{
throw ‘you must supply the send port
name’
}
bts-set-send-port-status $name $status
}
}
Enjoy!

by community-syndication | Sep 7, 2006 | BizTalk Community Blogs via Syndication
A post on the BizTalk General MSDN Newsgroup relating to flat-file schemas recently caught my eye, primarily because I was working on a bitch of a flat-file schema at the time, but also because I’m looking to give something back to the BizTalk community as a whole.
The post went something along the lines of:
I have […]
by community-syndication | Sep 6, 2006 | BizTalk Community Blogs via Syndication
Even though we have Flat file wizard in Biztalk 2006, it’s still worth to know basic of flat file. Here’s flat file tutorials.
BizTalk 2004 Flat File Schema Tutorial 1
BizTalk 2004 Flat File Schema Tutorial 2
BizTalk Flat File Parsing Annotations
This next one is a good overview of property setting on a flat file schema
it is taken from this blog post: http://weblogs.ilg.com/brumfieldb/archive/2004/08/09/440.aspx
Extending the flat file disassembler pipeline Component
Test your flat file processing
The Anatomy of a Positional Flat-File
by community-syndication | Sep 6, 2006 | BizTalk Community Blogs via Syndication
Unbelievable… look someone up in the http://www.whitepages.co.nz/ then find out what they paid for their house and what it is worth now https://www.qv.co.nz/freereport/.
QV is on the money to build big awareness around their site with this one.
Offer expires 08 October 2006 and is limited to one free report per email address.
by community-syndication | Sep 6, 2006 | BizTalk Community Blogs via Syndication
We’ve posted a new sample to the Commerce Server Workspace on gotdotnet that shows how you can publish an RSS feed on your site that contains product information from your Commerce Server 2007 catalogs. This work is the result of a really great intern project from this summer. The project includes:
- An RSS Subscription page where users can configure their feed
- Classes that encapsulate the querying of catalog information and the generation of the RSS 2.0 XML
- A PuP package containing the Commerce RSS resource (also serves as a good example of a custom resource)
- A README file documenting the installation steps and the classes included in the project
The RSS sample works together with the Commerce Server 2007 Starter Site CTP release currently. The subscription page lets a user manage their feed. The user can configure the feed to show the most recent items that have been added to the catalog. Users can also use the Subscription page to search the catalog and add items to their feed to be included in one of three conditions:
- always include
- include when on sale (discount applies)
- include when in stock
The instructions cover adding a button on the product page so a user can add the product to their custom feed. For example users might track the item for price updates or for inventory condition changes. It’s not hard to imagine more advanced scenarios that utilize custom schema extensions in the RSS XML that allow rich cross-site sharing of catalog data.
The usual disclaimers apply (see the license on the gotdotnet site).