by community-syndication | Aug 17, 2008 | BizTalk Community Blogs via Syndication
Hi everyone.
I often realize, that I need some information, but can’t really remember what the
thing was called or where to get it.
So I decided to keep track of all the BizTalk stuff I find on my way at http://biztalk.eliasen.dk –
which is now officially launched 🙂
Until now, not much information is there, but it will grow eventually.
Please, always also use the http://biztalk247.com website,
since it really has a great collection of data… But feel free to use my new site,
if you want 🙂
Hope this is useful for someone…
—
eliasen
by community-syndication | Aug 17, 2008 | BizTalk Community Blogs via Syndication
I am trying to set up two instances of SSRS 2008, one in Native mode and the other in SharePoint integrated mode. I tried to make the default instance Native and then created a second instance in SharePoint Integrated mode. However, there seems to be a problem with the new Reporting Services Add-in for SharePoint. (Well for me anyway. I’d be interested if others have had the same problem) After installation no Report Services Integration items showed up in SharePoint Central Administration, although the new content types did appear in my MOSS site. So I was unable to tell SharePoint which instance I wanted it to use.
Also, the add-in installation seemed to trash all my Site Collection Administration settings in all my WSS sites. Very bizarre! They came back on any site collections that I deleted and recreated.
So anyway I tried a couple of different things to see if I could get it working. I switched the instances around and made the default instance SharePoint Integrated mode, and tried reinstalling the Add-In. This still didn’t seem to solve the problem.
The next thing I tried was to uninstall the RTM Add-in and install the RC0 version of the Add-In. (Well the Report Builder 2.0 RC0 seemed to be working fine, so I thought, what the heck I’ll try it)
Well, the Report Services Integration items showed up right away, allowing me to configure the thing! Now it’s all working fine with SSRS RTM, but SQL Server 2008 Reporting Services Add-in for SharePoint RC0. Not entirely sure why! But at least it’s up and running 🙂
by community-syndication | Aug 16, 2008 | BizTalk Community Blogs via Syndication
Now that I’m done with the major writing portion of my book,
I’m going to try to post more.
Many of my posts will be about the technical details of using REST and WCF (the main
thrust of my book).
I’m going to also start some linking to other blogs, which in the past I’ve kind of
stayed away from.
The purpose of these links will be to try to bring some of the ideas of REST that
exist outside of windows and .NET developers, to the .NET developer’s space.
The post I am linking to today is by Steve
Vinoski. Steve is a pretty interesting person, having worked at a company that
built RPC systems for many years, he is now building software for a company (I think
we still don’t know what the company is or what it does.
The point of his post
today is one that I have found to be pretty true. People that actually has built
a system with REST versus SOAP/RPC aren’t the ones out there saying that SOAP/RPC
is superior to REST (or the typical “I just don’t get why I’d care about REST”). 
Check out my BizTalk
R2 Training.
by community-syndication | Aug 15, 2008 | BizTalk Community Blogs via Syndication
With the release of the .NET Framework 3.0, and then the .NET Framework 3.5 late last year, you might have settled down and started to integrate some of their more powerful features in your day to day programming. You may have absolutely fallen in love with LINQ, and embraced lambda expressions in C# 3.0. But have you taken a good look at WPF? WPF is not just for flashy effects, perfect transparency, and smooth animations. It's not limited to kiosks and Silverlight infused web pages. It provides base components out of the box that can blow your WinForms socks off — and not just visually.
In this article I will pit System.Windows.Forms.TextBox against System.Windows.Controls.TextBox in a completely biased and unforgiving matchup, and give you 5 reasons why you should ditch the your old WinForms TextBox, and start using WPF. So grab the sample code, and follow along.
0.) It Works in a Windows Forms Environment
The rest of this article would kind of be pointless if this was not included, but you can use the WPF TextBox control from within a Windows Forms application. All you need to do is include some references, and add an ElementHost control to the form. I'm not going to get into specifics here, because there is plenty of coverage of this elsewhere.
1.) It Has Spell Checking Built-In
This is something that I'm surprised has not received more coverage. People get caught up in animations, and the ability to completely change the appearance of controls, and miss the fact that a simple task is now actually simple. You don't have to rely on your users having a $200 piece of productivity software installed to do spell checking on your "Approval Comments" field. You can just use a more intelligent TextBox.
So how much code does it take to get your WPF textbox to do what it's doing in the screenshot? Count for yourself:
wpfTextBox.SpellCheck.IsEnabled = true;
But what if you want to actually make your application aware of the individual spelling errors themselves? There are methods provided for that as well. Here's an example of how you might use the built-in methods to build a Dictionary of character positions where spelling errors have occurred, and the text that is spelled incorrectly:
int index = 0;
Dictionary<int, string> spellingErrors = new Dictionary<int, string>();
while ((index = wpfTextBox.GetNextSpellingErrorCharacterIndex(index,
System.Windows.Documents.LogicalDirection.Forward)) != -1)
{
string currentError = wpfTextBox.Text.Substring(index,
wpfTextBox.GetSpellingErrorLength(index));
this.spellingErrors.Add(index, currentError);
index += currentError.Length;
}
2.) It Has A Real Undo Stack
Have you ever written code that manually called the Undo method of the TextBox control, and been disappointed with the results. Spoilers follow for those who have not tried this: it only keeps track of the last state of the text. Since the advent of Adobe Photoshop* in the late middle ages, people have grown accustomed to programs being able to undo as many actions as they have done. Well with the WPF TextBox control that functionality is built-in. If you find implementing a custom Undo Stack fun, then cling tightly to the WinForms TextBox, if you would rather forego that task so that you can focus on a more important problems continue reading.
What code do you need to get it working? Check it out:
wpfTextBox.IsUndoEnabled = true;
wpfTextBox.UndoLimit = 1024;
Oh yeah, and whereas the System.Windows.Forms.TextBox control has an Undo method, the WPF equivalent supports this beautiful couple:
wpfTextBox.Undo();
wpfTextBox.Redo();
Just be sure to never include those two lines of code one right after another like that. People have been immortalized for less.
3.) It Handles Lines Intuitively
Go ahead and click the screenshot to the left. Okay, pop quiz: What line is highlighted? If you said the line beginning with "Integer ac tortor", System.Windows.Forms.TextBox says you're incorrect. Many programmers might agree with the Windows Forms TextBox control, and that's because they're right. Technically the text is word wrapped, and the newline character doesn't occur until the very end of all of the text pictured. But looking at this from a user experience standpoint, it's terrible. When wrapped, that is the third line of text, not the first.
With the Windows Forms TextBox control, you access the lines of text through the Lines property of the control. Unfortunately, I can do that much myself by Splitting the Text property on '\n' and Trimming the result. The WPF TextBox control, on the other hand, does some heavy lifting for you. It can tell you what line, visually speaking, is the current line of text. It can also tell you what line that would be more mechanically speaking. Good luck trying to do that with the Windows Forms TextBox control, but here's how you might do it with the WPF Textbox:
int characterIndex = wpfTextBox.SelectionStart;
int lineIndex = wpfTextBox.GetLineIndexFromCharacterIndex(characterIndex);
string currentLine = wpfTextBox.GetLineText(lineIndex);
MessageBox.Show(currentLine);
4.) It Uses Anti-aliasing To Make Text Readable
Let's be honest, your grandma's web site makes use of anti-aliasing, and there's no reason your LOB app should avoid it. It's easier on the eyes, easier to read, and makes your text look great in any resolution. With the WPF TextBox control there is zero effort, configuration, or lines of code to achieve this effect. It's supported out of the box and always looks great.
5.) It's Included For Free in the Framework
Since WPF is included as part of version 3.5 of the .NET Framework, you can use it anywhere that you can install it. You don't have to buy a third party component to take advantage of all of the features of the new TextBox, it does not require Windows Vista, you don't need to install Expression Studio, and you don't have to write a line of XAML. You can use your favorite language to leverage the classes you need when and where you need them. You could even use it to implement spell check within an ASP.NET web application. Don't even think about reaching for Word Automation.
Conclusion
The WPF TextBox wins – use it. It also supports the aforementioned flashy effects, perfect animation, etc…
* – Save for Adobe Photoshop LE where they thought it would be fun to limit undo – shame on them
by community-syndication | Aug 15, 2008 | BizTalk Community Blogs via Syndication
I created an HTTP Post adapter and packaged it all up in a setup package. When I installed it, I opened up the management console and started to configure the adapter and I received the the following error:
Failed to instantiate adapter “{Adapter Name}”.
Assembly file: “{dll source}”
Type name: “{Type}”
The problem was that the source was compiled with a dll that was on the development box, but not on the destination box. (In this case it was the Microsoft.Samples.BizTalk.Adapter.Common.dll) was not deployed to the GAC.
Once I put the assembly in the GAC, I didn’t have a problem.
by community-syndication | Aug 15, 2008 | BizTalk Community Blogs via Syndication
“There are no differences between BizTalk Server 2006 R2 and BizTalk Server 2006 except the enhanced EDI, WCF, and RFID functionality”
So I was creating a new HTTP Post adapter. I created it on a server that is R1.
When I copied the code to an R2 box and compiled the code and ran the Adapter Registry Wizard, I got the following error:
Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
The issue is that in the Transmit adapter project, it was referencing Microsoft.Samples.BizTalk.Adapter.Common that was not compiled on the R2 server.
The fix:
Simply Clean the project and Rebuild the project where it will tell you that a dll is missing.
by community-syndication | Aug 15, 2008 | BizTalk Community Blogs via Syndication
After the week I have had preparing for TechEd and the week I am going to have at TechEd and Partner Summit I know I was in need of a little Friday humour to lift the spirits …. I haven't laughed this hard in a while … so I thought I would share Read More……(read more)
by community-syndication | Aug 15, 2008 | BizTalk Community Blogs via Syndication
My buddy Victor asked me the other day about the relationship between IIS and the BizTalk databases. That is, if we restart the SQL Server service or server, what happens to messages that are still submitted to the BizTalk web services on an active IIS server?
So, I put together a really quick application where I […]
by community-syndication | Aug 15, 2008 | BizTalk Community Blogs via Syndication
"The Microsoft Competency has once again walked off with the Business Processing and Integration award at Microsoft's annual Partner Summit, held last week at the International Convention Centre in Durban. Business Connexion (Pty) Ltd, stands ahead of their competitors in this area and scooped this award for a 3rd year in a row.
We were also nominated in 3 other categories. Business Process and Integration is a solution that can give great benefits to organisations that wish to streamline their business processes,by enabling them to connect systems and use information, deliver it in the right format, to a destination either inside or outside of the organization, across functional domains at the on time without the need for human intervention.
We congratulate all the members of the Microsoft Competency, especially our Microsoft Most Value Professional's (MVP) and wish them well, and growth for this financial year."
by community-syndication | Aug 14, 2008 | BizTalk Community Blogs via Syndication
One of the new features which we’re supporting in the BizTalk Adapter Pack V2 is the ability to use the SAP ADO.NET Provider from SSRS. In this post, I’ll briefly outline the steps you need to perform in order to get this to work.
Firstly, install CTP3 of the WCF LOB Adapter SDK V1 SP2, and the BizTalk Adapter Pack V2 (making sure that you install the SAP ADO Provider).
Next, you need to make a few changes to the SSRS related config files, in order to have the provider show up in SSRS projects:
- Modify the RSReportDesigner.config file under the Visual Studio 2005 installation directory (on my machine, this is present at C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies).
In the above screenshot, the entries with the name “SAP-AP” are the ones added by me. The entries I added were:
<Extension Name=”SAP-AP”
Type=”Microsoft.Data.SAPClient.ReportingServicesExtension.SAPConnectionWrapper,
Microsoft.Data.SAPClient.ReportingServicesExtension,
Version=3.5.0.0,
Culture=neutral,
PublicKeyToken=31bf3856ad364e35″/>
and
<Extension Name=”SAP-AP” Type=”Microsoft.ReportingServices.QueryDesigners.GenericQueryDesigner,
Microsoft.ReportingServices.QueryDesigners”/>
- Modify the RSReportServer.config file under the SQL 2005 installation directory (on my machine, this is present at C:\Program Files\Microsoft SQL Server\MSSQL.2\Reporting Services\ReportServer).
In the above screenshot, the entry with the name “SAP-AP” is the one added by me. The entry I added was:
<Extension Name=”SAP-AP”
Type=”Microsoft.Data.SAPClient.ReportingServicesExtension.SAPConnectionWrapper,
Microsoft.Data.SAPClient.ReportingServicesExtension,
Version=3.5.0.0,
Culture=neutral,
PublicKeyToken=31bf3856ad364e35″/>
We’ll now create a simple SSRS project using the “SAP-AP” provider.
- Start Visual Studio 2005, create a New Project using the template under Business Intelligence Projects -> Report Server Project. Click OK in the dialog below.
- Right click on the “Shared Data Sources” node, choose “Add New Data Source”.
- Create a new data source named “SAPDataSource”, as shown in the screenshot below:
- In the above dialog, in the Credentials tab, make sure that “No Credentials” is selected (since we’re entering the credentials directly in the Connection String). Click OK to save the information and close the dialog.
- Right click on the “Reports” node, and choose “Add New Report”. Choose the “SAPDataSource” entry from the “Shared Data Source” drop down list. Click Next to move to the next dialog.
- Enter the query to use in the Query String section. Click Next a few more times (the dialogs after this allow you to customize the layout – for now, you can stick with the defaults).
- Right click on the project node in Solution Explorer, to set the start-up report. In the screenshot below, I’ve set the “StartItem” to the newly created report above (named Report1.rdl). (Note – I had named my project “Report Project1DEL”). Click OK to close the dialog.
- Hit F5 to run the Project. A screen similar to the one below should appear. Note that there is an empty text box labeled “P1” below – this is where you would enter the value to use for the P1 parameter, in our query which we used earlier (“SELECT TOP 10 KUNNR, NAME1 FROM KNA1 WHERE NAME1 LIKE @P1”). I’ve entered the string “AB%” – which thus means that I want the first 10 customer numbers and names from the KNA1 table, where the customer name starts with “AB”.
- Click the “View Report” button (top-right corner) to execute the query and view the data. On my machine (running against my SAP server), I see the data below:
Question – do you have a need to use the Siebel ADO.NET Provider from SSRS? If so, please leave a comment here (leave your email address too, so that we can contact you in case we need to understand your scenario more, etc).