Looking to Learn about Office Development & VSTO?

Download these files and give them a listen…also, while you are at it, open up the VBA help files for the Office app you plan to target for a solution and learn the object model.

And one more thing….it doesn’t hurt to become a proficient user of the applications either. In fact, if you don’t know what the Office Suite is capable of doing, then you have no idea what you are capable of building using Office in your solutions.

So…Just What Exactly is Microsoft’s SaaS-Database Strategy?

Does MSFT have a Software-as-a-Service (Saas) strategy related to data? If they do, I would like to know sooner as opposed to later.

appengine_lowresAlmost every week I see something new regarding databases that intrigues me (a MSFT-focused  developer). Today it is the Google App Engine. Amazon has SimpleDB (I think that’s the name). SalesForce.com even offers a database service (although it is intended for their platform). There are others and I could list them here but I am not into that.

What does MSFT offer to fill this "database in the cloud/software-as-a-service" niche? Diddly-squat (best I can tell). But what do I know? I admit readily that when it comes to MSFT I am among the last to know. I am not an insider. I have no internal sources.

I love SQL Server and I find it kicks-ass in the situations where I need it (i.e. the database for my applications and data warehouses). SQL Express is quite good too. I’m using it now for an Excel OBA project. It’s a solid database without all the bells & whistles provided by the full versions of SQL Server.

But what about a software service that allows me to easily build & publish applications to a wider audience? You know, the type that brings me fortune and fame, stops global warming, prevents poverty, and provides for my retirement? Sure, I can go to a hosting provider, buy or rent a SQL Server license and then use it as my data provider. Then again, maybe I can’t because I might break the Microsoft SQL Server licensing scheme. I’m sure it all depends upon my path in an overly complicated "licensing decision tree". 

Microsoft has been great to its partners but if they continue to rely on their partner model too much it will hurt them. Because of Microsoft’s strategy to deliver their products through their partner channel, they do not have relationship with the majority of their customers. Microsoft should take corrective action, build a direct relationships with their clients, and thus improve the Microsoft brand.

I’m just thinking here…thinking MSFT should rediscover their soul. They should thumb their nose at the anti-trust communists in the US and Europe and do what they know the market wants. Microsoft should once more challenge their competition head-on. It was a winning strategy in the 80s & 90s and the market rewarded them. It is still a winning strategy and the rewards still exist. And the thing is, Microsoft’s customers want more from Microsoft. You only need to look at Apple and Google to see how customers respond to a company that seeks great relationships from their customers. Why Microsoft is not doing more of this "seeking", I have no idea.

Microsoft should leverage their Office Live platform (both the Office Live Workspace and the Office Live for Small Business versions) and deliver a development platform in the sky that blows away anything Google and Amazon have. The current focus of Office live is the business user. That’s great and I think it is really powerful and useful…but what about the developer?

I want a simple platform for publishing software. I want it to be integrated with other tools like customer management, payment processing, search advertising (Live, Yahoo, & Google), and accounting.

Microsoft, if you have something out their like I propose and if it has a cool logo and a snazzy name and makes the masses sing a happy tune…I want to know about it. If it exists already, then I blame marketing for confusing me with really long product names and logos that are really just words and a product box.

 

Correcting the Excel Visual Studio Design-Time Adapter Error

While working to complete a project yesterday, I received this message after opening a VSTO Excel project:

VSTOAdaptorError_thumb

I used my search engine of choice to search for “Excel Visual Studio Design-Time Adapter” and received only a few results (< 3 pages and only the first 2-3 were relevant). Uggh.

Microsoft has an article that discusses the issue but I didn’t have any of the problems they mention.

I did see two comments somewhere that mentioned re-installing Visual Studio or Office will correct the problem. Repairing my VS installation didn’t do it but repairing Office did.

So if you have the nasty “Excel Visual Studio Design-Time Adapter” (or “Word Visual Studio Design-Time Adapter”) error, just repair your Office installation.

Random Round-Up of Interesting Stuff

Just some stuff I have found while trying to get a few things done this week. You might find these items interesting…or you might not.

CKS:EBE Stuff

I’m working on implement CKS:EBE here at OfficeDeveloper.NET. I like it, except that when I apply a template, none of my posts show. The dang PostList.XSL craps out somewhere. I haven’t had time to figure out why. If you anyone out there has a suggestion, I wouldn’t mind knowing about it.

Anyways, I found these links helpful.

Intro to EBE :  a nice intro to the CKS:EBE

EBE resources : lots of links to CKS:EBE content

Building a blog host  :step-by-step walk-through covering how to create a SharePoint blog and activate CKS:EBE

 

Other Interesting Stuff

Along the way I ran across the following tools. Some I have installed, some I haven’t. But they all have me thinking they could be useful.

MSDN Gallery

Visual Studio Gallery : yet another site to find .NET code.

SharePoint List DataTable : retrieve SharePoint data

VS Power Commands : some commands I wish were included in Visual Studio

LINQ for SharePoint Looks Promising

I am working on an application that involves integrating SharePoint data with Outlook & Excel. I love LINQ and wondered if someone happened to already produced some LINQ to SharePoint tools. A quick search found a great tool built by Bart De Smet. His tool is a available at CodePlex. Here is a summary of the features (straight from the CodePlex site):

  • Custom query provider that translates LINQ queries to CAML, the Collaborative Application Markup Language used by SharePoint for querying.
  • Support for LINQ in C# 3.0 and Visual Basic 9.0.
  • Entity creation tool SpMetal to export SharePoint list definitions to entity classes used for querying.
  • Visual Studio 2008 integration for entity creation (a.k.a. SPML).
  • Can connect to a SharePoint site either using the SharePoint object model or via the SharePoint web services.
  • Planned support for updating through entity types.

Setup was involved running an .msi file and it worked flawlessly. After a bit of trouble related to Lookup fields in SharePoint, I was able to add a LinqToSharePoint class to my VSTO project, choose the desired lists from my site, and create the LINQ class.

Regarding the trouble with Lookup fields, all I can say is if you select a list that has lookup fields, be sure to choose the list(s) that contain the lookup values.

 

 

Some Setup Required (re: Code from Outlook Session at ODC)

 wrench_thumbIt has come to my attention that the sample code I posted from my Outlook session at ODC 2008 does not compile. Well, all I have to say is that it does compile…as long as you have all the components.

The project utilizes a a couple of 3rd Party controls. So before compiling, install the following:

  1. The Krypton Toolkit from Component Factory. This is a free toolkit and I think it rocks for building compelling UIs for Office Business Applications. In my sample code I use the Krypton Header control.
  2. The Telerik RadControls for Winform. These controls are not free but you can obtain a trial version. In my sample code, I use the Telerik RadChart control.

Once you install both of these components, the code should be good to go.

Enhanced Blogging with SharePoint

cks_Ebe I gave the beta versions of the Community Kit for SharePoint: Enhanced Blog Edition 2.0 (CKS:EBE) a try and decided to wait for the final release before implementing on OfficeDeveloper.NET. Who knows when I will have time but I will take a stab at implementing CKS:EBE over the next week…and I hope to avoid using one of the available themes for more than a month. I will build my own design. Maybe during a conference call or two.

I’ll post any interesting updates (i.e. issues that I had to overcome)

 

Also…I am not certain but I think the official name for CKS:EBE might be longer than VSTO’s official name.

ODC Slides and Sample Code Part II

Here is the presentation and sample code for session CLI309 Turning Outlook into a Front-End for Third Party Systems. Thanks again for everyone that attended the session. To run the sample code, be sure and install the sample sales database (a modified version of the AdventureWorksLT sample database). The database is in the zip file as AW.bak. You will need to restore the database in SQL 2005.

Here is the abstract from the session:

Turning Outlook into a Front-End for Third Party Systems

This session will explain both why developers should embrace Office as a front-end for their organization’s applications AND how to begin this process. I will explain the different technologies within Office and VSTO that enable developers to utilize Office for their solutions. I will explain how to build a solution within Outlook that integrates with a Line-of-business application. Along the way, attendees will see demos of Custom Form Regions, Custom Task Panes, and more. After attending the session, attendees will have new understanding of Office as a development platform.

Here is the content:

ppt_3 Presentation File for CLI309
zip_3 odc2008cli309code

ODC Slides and Sample Code Part I

As promised, I am making the slide deck and code from sessions at ODC 2008 available here at OfficeDeveloper.net. This post contains the content from session SER307-Customizing SharePoint’s Content Management System.

Here is the abstract from this session:

Customizing SharePoint’s Content Management System.

This session will explain how to build web parts that extend the navigation framework within SharePoint. I will explain the SharePoint publishing framework along with a quick overview of how to skin SharePoint using master pages. The bulk of the session will be a demo where I build web parts that extend SharePoint’s navigation. The navigation utilizes a custom skin intended for an Internet –facing site and contains several features that allow users to add new elements to the page that normally would require the assistance of a designer. With these web parts, all that is needed is a trained user. At the end of this session the attendee will have a solid understanding of SharePoint’s navigation features and master page architecture.

You can download the content by following the links below:

ppt_3 Presentation File for SER307
zip_3 Sample Code for Session SER307

If you have any questions, please just leave a comment.

Enjoy!

ODC Parties with Freaky Mimes (or My Encounter With Hugh MacLeod)

I will give Microsoft this…they know how to make a party filled with developers interesting. If you were at ODC this past week and attended the party on Tuesday at the Tech Museum then you know what I am referring too. MIMES! Good god, what is the deal with MIMES! They are freaky…they may even be more socially awkward than your average software developer. 

I attended the party, and while minding my own business and enjoying the white chocolate fountain, I was damn near accosted by some ballet dancer/mime-type (I am not at all sure how to classify here). She was 6 inches from me, looking directly at me while while looking through me. She had no expression on her face…it was a blank stare. She danced in front of me for maybe 5 seconds but the experience is burned in my memory forever.

Freakiness aside, the mimes/clowns/dances (whatever they were) made for some great people watching. I become highly entertained watching others have the same reaction as myself.

On my way out of the party, I ran into Hugh MacLeod. He was creating "cartoons on the back of business cards" for anyone who was interested. ConsultantsCard_thumbI decided to ask him to create an original Hugh MacLeod for my business cards. Hugh grew up in Texas (at least I think he did) and went to t.u. (some call t.u. The University of Texas…it is not) so it was fun to discuss Texas and slam each others alma mater (I went to Texas Tech).

Here is the cartoon he created. Hugh drew-it in a stream-of-conscience style in response to my description of Cogent Company. I told him we are consultants who get things done. I added that we are not type of uber-consultants that take themselves so damn seriously, write 600 page reports, and can’t get anything done unless they have 12-15 months to do it (and even then what they deliver stinks). Thus we have this new cartoon…genius!

I will have a new batch of cards printed for everyone in the company by next week.

On a programming note, my next posts will be the slide decks and sample code from my sessions at ODC.

Customizing SharePoint’s Content Management System

&

Turning Outlook into a Front-End for Third Party Systems

 

I know I promised to have them up today but it is looking more like Sunday as I am taking the remainder of the day off.