Error Number: 102 Data type error
I know that there are many different reasons why you would be getting this error, but I wanted to document one way you can try to get the BTAHL7 DASM:
Error happened in body during parsing
Error # 1
Segment Id: GT1_Guarantor
Sequence Number: 1
Field Number: 51
Error Number: 102
Error Description: Data type error
Encoding System: HL7nnnn
The data looks like this:
|^NOT EMPLOYED|
The first sub element needs to be set to a max of 0 instead of blank (default 1)
As I discover other fixes I will update this entry
Videos www.Cloudcast.net
Hey, my ESB Toolkit videos have found a new home. They’ve made their way over to www.cloudcasts.net It’s a great community site dedicated to hosting webcasts concerning Microsoft technologies. Run by the very prolific webcaster Alan Smith, this site has a ton of great webcasts concerning a number of different technologies. Check it out if you haven’t seen it yet.
Cheers
Peter
Join the New QuickLearn Technical Community!
Visit the new QuickLearn Community Portal to get breaking news and access our free learning resources for BizTalk, SharePoint, .NET 4.0, and Microsoft Virtualization!
Join the community portal to:
- Connect with QuickLearn instructors and your peers.
- Subscribe to the newly redesigned QuickLearn Team Blog to find enlightening blog articles from our team of technologists.
- Explore the brand-new QuickLearn Technical Library which contains a compilation of technical articles, useful links, and other relevant content to jumpstart your knowledge or dill-down on emerging technologies.
- View Screencasts created by QuickLearn Technologists to highlight their favorite features of emerging Microsoft Technologies.
Happy Browsing!
Dallas TechFest 2010 – Call For Speakers
I’m thrilled to announce that Dallas TechFest 2010 has set a date of July 30th, 2010 and is currently engaged in a Call For Speakers looking for those in all sorts of technology areas who wish to speak. If you’ve got expertise in .NET, Java, Ruby, PHP, ColdFusion, Python, Flex or anything else then send in an abstract and see if you can secure a speaking slot at Dallas TechFest 2010.
Sometime in March we will be opening registration, but in the meantime mark the date on your calendar, and get ready for our registration drive. Like in previous years, if you recommend people to register you will be entered to win a great prize. What prize? Hmmm. Well it’s got a touch screen, a 3G modem, and a huge app store.
WCF Http And Non-Http Calls hosted in the same Asp.Net Application (IIS7)
You may want to consider the following issue if you plan on hosting your WCF endpoints in IIS. Consider an ASP.NET application which makes both http and non-http (netNamedPipeBinding or netTcpBinding) WCF calls. If the ASP.NET application is restarted, then a 500.21 error will occur if the very first call is a non-http call.
Why does this happen? ASP.Net is heavily dependent on IIS7 where IIS7 calls into ASP.Net and gives ASP.Net the chance to initialize its applications in either Classic or Integrated mode. There is no way for ASP.Net to know which mode it is in, other than which entry point IIS7 calls into. So when applications use non-HTTP WAS methods to start app domains and do things without giving IIS7 a chance to initialize ASP.Net, then ASP.Net has to guess. When ASP.Net knows it is hosted by IIS7, it uses that knowledge to assume it should do Integrated mode initialization. In other places ASP.Net doesn’t know if it is hosted by IIS7 and decides to initialize a ‘classic’ runtime. There’s just no way for ASP.Net to know for sure what to do when it is being non-HTTP activated.
In this particular case, the WCF web service executes and then raises a web event on a background thread. When the configured web event providers try to process the event, the TemplatedMailWebEventProvider creates an internal HttpRequest and tries to execute it and use the output as the email template. Of course, without having gone through HTTP activation yet, ASP.Net isn’t quite initialized. When it goes through init code, it initializes the HttpRuntime in a ‘Classic’ style, and it stays that way for the lifetime of the application. When later HTTP requests come through, the requests are processed by the integrated pipeline, but with a classic StepManager, which results in confusion and failed requests and AV’s.
Unfortunately, ASP.Net can do nothing here since Webhost/WAS doesn’t notify ASP.Net to start an application unless the request is over HTTP. (Thanks to Steve Molloy for his insights)
RESOLUTION
In the specific case:
If you use TemplatedMailWebEventProvider. use SimpleMailWebEventProvider instead if you must have email alerts for events.
Or, if you need to make the email pretty or fit a special format, you can extend System.Web.Management.MailWebEventProvider to provide that functionality without too much extra effort.
In the general case, you can resolve this issue with the following:
Split the application in two so that http calls are in one and non-http calls are in the other application.
Create a secondary application that can be called from the main application. This requires .NET 4.0 where the location tag can be used in the following scenario. Create two web applications where all the http calls are in the main application and the non-http calls are in the secondary application. In the main application’s web.config file, use a location tag to locate the second application that houses non-http endpoints.
An article based on this issue can be found at this link: http://support.microsoft.com/?kbid=2018968
Understanding Extenders in the Itinerary Designer
I was lurking around the ESB Toolkit forums yesterday, and got involved in an exchange with someone who was hitting the same roadblock to the Itinerary Designer that a lot of people hit: confusion with the model elements and extenders. Upon my first exposure to the Itinerary Designer it took me a week to get over the learning curve of this, and to understand why every send operation seemingly involved two off-ramp shapes instead of one.
Now in the case of that thread, the problem was actually not having a properly formatted SOAP request for the service that was going to be invoked (also a fairly common issue), but getting to the actual issue took cutting through some of the confusing bits of how the itinerary services themselves are implemented, and what they do.
That being said, I took some time last night to write up an article on the different model elements in the itinerary designer, their extenders, and how they can be used to compose an itinerary. You can access the article here: Making Sense of Model Elements and Extenders in the Itinerary Designer
Side note: The article is now part of the brand new (and still under-construction) QuickLearn Technical Library, which will soon contain many more similar articles and links to technical resources for all of the technologies about which QuickLearn teaches.
That’s all for now!
Four New BizTalk Server ESB Toolkit Webcasts
HP OVO Whitepaper
A couple of people have asked me recently where the whitepaper is… its here:
http://go.microsoft.com/fwlink/?LinkId=183500
BizTalk Benchmark Wizard
Check this out: