by community-syndication | May 8, 2007 | BizTalk Community Blogs via Syndication
I am becoming more and more convinced that you need to have good XSLT skills to work with the Commerce Server Adapters for BizTalk. Well, I came across a situation that called for a custom XSLT solution. I have written about some of these cases in past blog entries and as I find more situations I will add blog entries.
In this case, I needed to download images from a third party site for products in our catalog that were missing images. I needed to query Commerce Server and pass in a list of items that I wanted to return. In this case it was based on the VendorUPC element (as shown in the screen shot below).
I needed to create the query so that it would look like:
<CommerceServerCatalogQuery ProductCatalog=”Images” SearchClause=”VendorUPC=’100′ Or VendorUPC=’101′ Or VendorUPC=’102′”></CommerceServerCatalogQuery>
So, the issue was how do I append all of the VendorUPC elements to create the SearchClause. This is where the custom XSLT comes in.
Here is the XSLT that produces the above xml output.
<xsl:attribute name=”SearchClause”>
<xsl:variable name=”ItemCount” select=”count(/*[local-name()=’Root’ and namespace-uri()=’http://Ecommerce.Schemas.ImageDownloadData’]/ImageData)” />
<xsl:choose>
<xsl:when test=”$ItemCount = 0″></xsl:when>
<xsl:when test=”$ItemCount = 1″>VendorUPC='<xsl:value-of select=”/*[local-name()=’Root’ and namespace-uri()=’http://Ecommerce.Schemas.ImageDownloadData’]/ImageData[1]/VendorUPC” />'</xsl:when>
<xsl:otherwise>VendorUPC='<xsl:value-of select=”/*[local-name()=’Root’ and namespace-uri()=’http://Ecommerce.Schemas.ImageDownloadData’]/ImageData[1]/VendorUPC” />’
<xsl:for-each select=”/*[local-name()=’Root’ and namespace-uri()=’1″>http://Ecommerce.Schemas.ImageDownloadData’]/ImageData[position()>1]”> Or VendorUPC='<xsl:value-of select=”VendorUPC” />’
</xsl:for-each></xsl:otherwise>
</xsl:choose>
</xsl:attribute>
This can be used any time you need to iterate over a repeating source structure and either ‘Or’ or ‘And’ values together in a single output element.
by community-syndication | May 8, 2007 | BizTalk Community Blogs via Syndication
It is now Sunday the 6th of May and I want to do my MIX wrap before I return to the office on Monday morning. Well Wednesday isn’t too bad 😉
First of all I just want to say “Wow”… last year MIX put a line in the sand marking Microsoft’s strengthening commitment to the Web… this year we built on it in a big way with Silverlight’s coming out party!
It was awesome to have User Experience, Design and Development represented so well at one conference and NEVER before at a Microsoft conference have I seen Mac’s on stage in keynotes, used in ~ 1/4 of the sessions and available for attendees to drive themselves in the hands on labs.
The day 1 keynote featured Scott Guthrie. Scott pulled out Visual Studio and doing what he does best showed edit and continue debugging a Silverlight 1.1 application running on a Mac! Does anyone remember Scott’s Silverlight (WPF/E) Vegas dice demo from Tech.Ed in Auckland last August? Well we’ve come a long way since then!
What was Scott Guthrie’s comment during last weeks keynote?
“Now, not only do we support running applications on the Mac, we also support debugging the applications on the Mac. So, for example, we’ll go here in Visual Studio now, and one of the things you can see that’s kind of cool is we have a feature called Attach to Process. And you’ll notice we now have a new option here called CLR Remote Cross Platform Debugging. You can tell that a dev actually named that feature. (Laughter.)
But you can see here you can go ahead and point at a machine, and in this case here I’m pointing at my Mac. We’ll show you all the processes that are running on the Mac. Let’s go ahead and attach to that Safari process, set a break point. Now let’s go back to my Mac and push this again. So, you can see the debugger just broke. (Cheers, applause.) In case this wasn’t obvious, this was really hard to do. (Laughter.)”
There are still plenty of skeptics out there regarding Microsoft’s commitment to build world changing solutions for the web that run outside of Windows and Internet Explorer and time will tell now well we deliver. The teams inside of Microsoft (Silverlight, Dynamic Languages, Tablet PC) that have been working on these platforms have been absolutely buzzing over the last few days. I have spent valuable time with these individuals up in Vegas and earlier this year in Seattle… they are technologists… they love the global potential of their work and MIX for them (and for so many others) is their coming out party!
Ryan Stewart, Scott Guthrie and then Scott Barnes did a great job summing up Silverlight so I’m not going to cover that off here but there is one point I do want to quickly address. There is a bit of FUD online about Silverlight being a “Flash Killer”. Silverlight is not a rip and replace technology and can happily co-exist on the same page as Flash, AJAX and HTML leveraging the best features of each platform (as I showed in my session at Connect back in March). That said there are some very cool things that people have been building using full blown WPF and more recently the Silverlight 1.1 alpha… take a look at this 1 minute mashup video I built from my favourite demos from these downloaded sessions.
Back in December last year we did our first UX tour where we presented on some of these technologies to New Zealand Web/ UX Designers. Although the event was generally very well received one comment stuck with me from that tour. The comment was as follows… “A pretty lame pitch that your finally doing what Flash has done for 10 years (except 3D).”
There is a lot of “opinions” out there and it often hard to find “independent” reviews of the technologies in this space. All I will say on this topic is that if you are a flash designer/ developer take a look at what Silverlight can offer you. One of the most compelling demo’s for me is the Chess Game where you can play Silverlight JScript (view source enabled 😉 vs compiled .NET Silverlight and also the Dynamic Language Runtime Console written in Silverlight 1.1 check out John and Jim’s Just Glue it Video to learn more about this one.
If you are a developer I recommend taking a look at the Silverlight 1.1 Developer Reference poster. When I first saw this a couple of days before MIX there were a couple of things that lept out at me…
1. The poster announces Silverlight 1.1 support for Windows 2000 and Opera as coming soon… very cool!
What about Linux desktop? Well this is from the Silverlight FAQ’s
“Microsoft is gathering feedback from customers like you on Silverlight and to help determine which platforms should be supported in the future.”
Miguel thinks it will happen!
A while ago I got very excited about inking in WPF. I did not expect this to be ported to Silverlight the way it has been! The text recognition built into Vista is incredible (I used it to handwrite this entire blog post) and I thought there was NO WAY this could be ported into Silverlight since it is so embedded in the platform… but I didn’t think of the alternative. Incorportate XAML inking support into Silverlight then use the ASP.NET Futures AJAX features to pass the XAML of the ink stroke asynchronously to the server for recognition… very cool! If you are interested in this the inking in Silverlight code and demo is available here.
Now the other thing to mention is that MIX was by not just a technology conference there were a number of very inspiring thought invoking speakers involved as well.
Lou Carbone grabbed me and held me for his entire presentation and Kelly Goto was at her quirky trendy best (1,2) stuckunstuck anybody?
Well that is all for me for now… there is plenty of stuff in here to get a hold of and starting playing with in more depth.
Remember that the WPF Family Show project is available with full source (266kb)for you to learn from. As is the Silverlight Airways sample from the keynote. The amasing Top Banana Silverlight Video Editor shown in the keynote will soon be available with complete source code… all 50k of it!
Also don’t forget Kevin’s Updated WPF Bag-O-Tricks (Very Cool FlipTile3D piece) and IdentityMen comics!
Tags: MIX07
This posting is provided “AS IS” with no warranties, and confers no rights.
by community-syndication | May 8, 2007 | BizTalk Community Blogs via Syndication
Under which version of .NET Framework my code is going to run?
I came across this interesting question in BizTalk newsgroup, “I am just wondering though how my local computer knows which CLR to load for the BizTalk Server 2004 Orchestrations when there is no entry in the BTSNTSvc.exe.config file to specifically point to the .NET 1.1 Framework when .NET 1.1 and 2.0 Frameworks are loaded to my computer. “.
Here is my explanation:
Applications that do not carry a configuration file or at least the supportedRuntime element in their configuration files (unconfigured applications) execute with the version of the framework that was used to build the application, provided that version of the Framework is installed on the local system. The version of the Framework with which the application was built is contained in the header (MANIFEST) of the application (assembly). Executing the following line of code against Microsoft.XLANGs.BizTalk.Engine.dll in a BizTalk 2004 environment will output the result as v1.1.4322. The same piece of code in BizTalk 2006 environment will output v2.0.50727.
Console.WriteLine(System.Reflection.Assembly.LoadFile(@”C:\Program Files\ Microsoft BizTalk Server 2006\ Microsoft.XLANGs.BizTalk.Engine.dll”).ImageRuntimeVersion);
There are two important things which drives what version of framework will be used at runtime :
1. When the expected version of the Framework is not available, the CLR uses a later version of the Framework in its place. In other words, an unconfigured assembly built with Framework 1.1 executes with 1.1 on a system that has both 1.1 and 2.0 installed. That same assembly executes with the 2.0 Framework on a system with only the 2.0 Framework installed.
2. When it comes to interop scenarios the default behavior of CLR is to load the latest framework. This is because unless the managed assemblies, unmanaged assemblies lack the information in their header that describes the version of the framework (as we seen with the code snippet earlier) the code in question was build with; this leaves the CLR with no choice other than to load the latest available version of the framework.
Some of the assemblies used by BizTalk (both 2004 and 2006) runtime components falls under the second category (interop assemblies), which leaves CLR to load the latest available framework. If you need to override these default behavior, you can set the supportedRuntime/requiredRunTime in the .config file (BtsNtSvc.exe.config for In-Process host and corresponding IIS config file based on version 5.0 or 6.0 either dllhost.exe.config or w3wp.exe.config for isolated host) for the process as shown below, which forces to use .NET framework 1.1.
<configuration>
<startup>
<supportedRuntime version=”v1.1.4322″ />
</startup>
</configuration>
Ultimately, this means all managed components called by a particular application (BizTalk 2004) runs on the same version of the Framework.
New Assembly, Old .NET
It’s advisable to build your custom assemblies against the same version of .NET that you will be running them against. i.e .NET 1.1 for BizTalk 2004 and .NET 2.0 for BizTalk 2006. That way you’ll have correct references and avoid surprises from behavior difference between builds.
Custom components that are written to use the .NET Framework 2.0 will not work in BizTalk Server 2004. These components include adaptors, pipeline components, functoids, and user code that may be referenced from orchestration or rules policies. This is because new assemblies cannot be opened on older CLR, just because they don’t understand them, and the runtime will throw BadImageFormatException.
References:
http://support.microsoft.com/kb/841405
http://blogs.msdn.com/suzcook/archive/2003/06/20/57191.aspx
http://blogs.msdn.com/suzcook/archive/2005/01/26/new-assembly-old-net-and-vice-versa.aspx
http://msdn2.microsoft.com/en-us/library/ms994410.aspx
Nandri!
Saravana
by community-syndication | May 7, 2007 | BizTalk Community Blogs via Syndication
RFID Coverage
Computerwire
Microsoft ups RFID support in BizTalk 2006
By Tony Baer
May 2, 2007
Reposts:
Computer Business Review, Datamonitor
The beta of Microsoft BizTalk Server 2006 Release 2 is upgrading support for RFID and EDI. And, not surprisingly, it’s adding support for the latest Microsoft platforms, including Windows Vista and Office 2007.
The highlight is RFID support. That’s been a challenge for most servers because of the need to handle or filter huge volumes of data that would spew from these devices. And because these capabilities aren’t cheap, developing them has been something of a chicken and egg question: demand for RFID has yet to hit critical mass, yet to spur market growth, middleware providers must invest in significant R&D.
BizTalk’s approach is based on adapting the kind of plug-and-play technology used for connecting computing peripherals such as printers to RFID. Microsoft has built a device interface, to which device manufacturers design the drivers.
Developing the driver layer was child’s play compared to the next piece: developing an event processing services that applies logic and rules to filtering huge torrents of data. Microsoft claims its RFID event engine is lightweight enough so it won’t add too much computing load. It allows filtering to occur in layers, at BizTalk Server, or if the device or device aggregators are smart enough, to share some of the filtering there as well.
The other major addition is upgrading the EDI interface. This may not be quite as exciting as RFID because it is a 40-year old technology, but enough of it is out there that Microsoft had to develop a credible mediation layer to serve large manufacturers who still rely on EDI as their B2B transactional backbone.
Previously, Microsoft only had a rudimentary adapter that required significant coding and customization work. The adapter in release 2 will support the full schema for specific EDI transaction sets that Microsoft will gradually add.
The core Microsoft updated platform support includes the obvious pieces, such as Vista and Office 2007. And release 2 adds more granular support for aspects of the WinFX programming model of Vista, including Windows Communication Foundation (WCF) and windows Workflow Foundation (WF).
InternetNews
Microsoft, Intel Tagged For RFID Project
By Clint Boulton
May 2, 2007
Determined to lead the market for RFID products, Microsoft is teaming with Intel to offer business customers a platform that will enable RFID transactions on various devices.
The companies will build a platform out of Intel’s UHF RFID Transceiver R1000 reader chip and RFID Transceiver Interface with the Microsoft BizTalk RFID device-management and event processing software.
Microsoft introduced BizTalk RFID to the market last year as a complement to its BizTalk Server 2006.
Now, the software giant is looking to advance its RFID position with the help of chip buddy Intel and some Web services.
RFID is a snowballing technology for automatic identification, relying on storing and retrieving data using RFID tags or transponders. Many high-tech companies have been experimenting with ways to add RFID capabilities to their hardware and software, preparing for what analysts have said will be a multi-billion-dollar market for RFID tools.
Microsoft and Intel are two of these hopeful vendors.
“RFID remains a bit of an island unto itself,” Steve Sloan, senior product manager in Microsoft’s Connected Systems Division, told internetnews.com, noting that RFID was inaccessible for all except who could build custom, or expensive, systems.
With RFID tag and reader prices coming down, products such as BizTalk RFID and the Intel R1000 reader processor and Tranceiver Interface can help users execute tasks via RFID on their devices.
“Our goal was … to make a platform to build apps on RFID and extend them to devices. The way we built this platform assumes that RFID will become the de facto standard in many verticals, including retail, manufacturing and health care.”
In that vein, Anush Kumar, product manager for Biztalk RFID at Microsoft, said BizTalk RFID now features “plug and play” services for various RFID devices via an embedded provider for the Intel platform and Web services for interacting with devices and tag reads.
Kumar described the ease-of-use factor of the plug and play services as “like plugging in a mouse.”
The software also boasts new management tools to control devices and deploy RFID business processes, integration with Microsoft’s SQL Server for data management and business intelligence, and Microsoft Operations Manager to monitor and troubleshoot deployments. There is also “out-of-the-box” integration with Microsoft Dynamics applications.
For an increasingly mobile experience, future iterations of Microsoft’s RFID platform will run on Windows CE-embedded devices and interface with the Intel RFID Transceiver Interface, enabling device discovery, provisioning, security, patch management and monitoring.
Microsoft and Intel announced the news at the RFID Journal Live conference this week in Orlando. Motorola also had news at the show, announcing a strategic RFID deal with labeling and ticketing product provider Avery Dennison.
In the agreement, Avery Dennison will supply EPCglobal Gen 2 RFID tags to Motorola, helping the handset giant to fulfill its business customers’ demand for its portfolio of custom RFID tags, including its airline baggage tags and tags for asset tracking.
NetworkWorld.com
Microsoft makes its biggest RFID splash
By John Fontana
May 1, 2007
Microsoft issues BizTalk Server beta
Microsoft Tuesday inched closer to releasing its RFID platform when it shipped the first public beta of BizTalk Server 2006 R2.
The server, Microsoft’s business process and application integration platform, includes a number of RFID-specific features, such as plug-n-play services for RFID devices, that Microsoft hopes will make it easier for companies to roll out the technology and simpler for vendors to build products on top of it.
BizTalk Server 2006 R2 Beta 2 is Microsoft’s first public beta of the software and is its biggest splash ever into the RFID market, according to company officials.
While RFID is the main focus, Beta 2, which is feature complete and slated to ship by the end of September, also features native support for electronic data interchange (EDI). Microsoft also added integration with Vista and Office 2007, including adapters for Windows Communication Foundation and Workflow Foundation in Vista, and for Office SharePoint Server.
Microsoft’s RFID announcement comes a day after the Department of Commerce’s National Institute of Standards and Technology (NIST) released a 154-page report detailing best practices for retailers, manufacturers, hospitals and federal agencies that says organizations that use RFID devices should systematically evaluate potential security and privacy risks posed by the technology.
Microsoft’s goal with BizTalk Server 2006 R2 is to drive the integration of RFID data, back-end systems and line-of-business applications using BizTalk as a hub.
The hope is to integrate real-world data at the edge of the network, such as the number of cases of a product sitting on a loading dock, with business process workflow and line-of-business applications like SAP to aid in decision making.
“The focus is to make this platform so it enables mainstream RFID adoption,” says Anush Kumar, product manager for BizTalk RFID. “If you provide RFID data for people to consume and act upon, you really enable them to make better business decisions.”
Microsoft is starting at the hardware level by supporting integration of RFID devices using a plug-in-play service designed to make attaching an RFID device to BizTalk as easy as adding a new mouse to a PC.
The plug-in-play is supported by a service provider interface that is much like an SDK that allows device manufacturers to create drivers for their products. Microsoft also will support some RFID standards out of the box, including the Low-Level Reader Protocol (LLRP).
BizTalk Server 2006 R2 also includes event processing services that filter, aggregate and transform the data collected from RFID devices into business events that make sense of the incoming data stream.
Microsoft is working with 100 partners, including Intel and HP, and has 30 early-adopters including two running BizTalk Server 2006 R2 in production.
While Microsoft is integrating the RFID features into BizTalk Server 2006 R2 Enterprise Edition, it will also offer a licensing option for running BizTalk RFID as a standalone server.
Final pricing was not announced.
RFID News
Microsoft Buddies Up Over BizTalk
May 2 2007
Meanwhile, Microsoft, which teamed up with RFID firm Alien Technology to develop its BizTalk RFID platform last year, is enjoying a hearty dose of attention at this season’s trade expos … not to mention the media — in Europe.
TMCNet
Xterprise Taps CRM Veteran Vazzana for Board
By David Sims
May 2, 2007
Xterprise Incorporated, a vendor of High-Definition Supply Chain products, has named CRM veteran Richard Vazzana, current vice president of Global Teleweb at Novell and former vice president of global customer relationship management for IBM’s (News – Alert) Business Transformational Outsourcing Practice, to its Board of Directors.
Vazzana has thirty years’ technology industry experience with IBM in various executive sales positions. His focus has been in customer relationship management (CRM), business transformation outsourcing, and order-to-fulfillment technology products and development.
Xterprise Incorporated, a vendor of RFID-enabled supply chain execution software applications, announced recently that it has worked with Microsoft on the development and release of its XAM 2.0 high definition RFID-enabled RTI inventory management application.
The relationship between Microsoft, Xterprise and iGPS will enable customers using the application to provide a “high definition” view of an RTI asset tracking and management application, Xterprise officials say.
BixTalk RFID Server delivers plug and play velocity and accuracy for printers, readers and other devices.
An Xterprise customer, Intelligent Global Pooling Systems, evidently requested a way to manage its new 100 percent plastic pallet pool with embedded RFID tags. The retail pallet market is going through dramatic transformation, and “identifying a unit load by RFID dramatically increases the accuracy of tracking and tracing products throughout the supply chain,” according to Walter Kerr, chief information officer for iGPS.
VNUNet.com
Microsoft touts marriage of BizTalk and RFID
By Clement James
May 2, 2007
Reposts:
Computing (UK), Infomatics, IT Week
Redmond teams up with Alien Technology
Microsoft has teamed up with radio frequency identification (RFID) firm Alien Technology to develop its BizTalk RFID platform.
The companies are using the Microsoft BizTalk RFID platform and Alien RFID devices to deploy a system called iSUM developed by tech firm Xterprise.
ISUM is designed to provide a platform for tracking assets across the supply chain, and for enabling organisations to improve supply chain visibility.
“The confluence of enterprise-class Gen 2 RFID readers, highly capable infrastructure software such as BizTalk RFID, and implementation of best practices developed in collaborative settings, will be essential to the continued rapid global adoption of RFID,” said Susan Pearson, vice president of alliances at Alien Technology.
Steve Sloan, senior product manager in the Connected Systems Division at Microsoft, added: “We have worked closely with Alien and Xterprise to implement BizTalk RFID and Alien RFID readers in the iSUM application.”