May 13 2008

Behind Enemy Lines: Document Information Panel Editing in InfoPath

by andrew

[migrated from http://edgedev.blogspot.com]:

This one really had me wrapped around the axle for a bit, and ye ol’ trusty google let me down. Not a single applicable hit when I searched on [“form definition” “for dataObject”] so when I figured it out quite by accident I thought I’d contribute to the googlesphere and maybe help someone else out who might run into this. If anyone does. Ever. Ok, maybe no one else will ever have this happen to them, but it happened to me I promise.

I thought I’d go and customize the Document Information Panel for a Content Type – totally harmless right? Well, InfoPath didn’t seem to think so. And when I tried to attach to the Content Type’s schema as the basis for a new form (or when I tried to customize it straight from the link in the Content Type settings) i got this:

InfoPath cannot open the following form: C:Users[Name]AppDataLocalMicrosoftWindowsTemporary Internet FilesContent.MSO19D946AE.tmpcustomXsn.xsn
The XML schema file specified in the form definition (.xsf) file for dataObject “list_fb2ad403-eb57-43f2-8bee-e7574092cd4d” cannot be used.

Lovely. How informative and useful. It’s obvious from that error what exactly needs fixing. Ok, not really. At first I was at a total loss and decided to go home for the weekend. When I got back I realized that “list_” looked a lot like a list GUID. Since I was in a fairly new dev environment without too much clutter yet, I scanned through my lists and found a match on a list used as the source for 2 of the Look-Up Site Columns in the Content Type for which I was trying to customize the Doc Info Panel. Aha!

Removing both Site Columns from the Content Type and trying again, I was able to launch the schema for the form. Grrr… Hmmm…

So, was there anything weird about those columns? Well, they were look-up columns on a list with the multi-select and unlimited length in documents options checked. But what if I added them back to the content type and tried again?

Adding the first one back and trying again it worked! Alright. Adding the second one … NOPE! Crash and burn. What gives? Well, this must obviously be another stupid Microsoft bug. Incidentally, both look-up columns are based on the same column of the same list. I have a “From” and a “To” column that point to the “Display Name” column a master Names List. But I won’t be able to do both and still customize the Doc Info Panel. Bummer. Unless I can come up with some sort of work around (unlikely). But I’ll update this if I do.

[a few hours later]

Alrighty then. The enemy can be tricked. If you HAVE to be able to do this (like I do) here’s what you do:

  1. change one of the site Columns to point at a different look-up list column than the other one
  2. this will let you open the doc info panel successfully even with both site columns pointing at the same look-up list (albeit at 2 different columns within that list)
  3. in the field properties in infopath, open up the control populated from this look-up list column and change it back to the column you want to pull in
  4. in the Site Column change it back to point at the the right look-up column as well.

Voila! Happy ending. If I hadn’t wasted hours on something that should work anyway.


Apr 15 2008

Diabolical Microsoft Visual Studio Quirk

by andrew

[migrated from http://edgedev.blogspot.com]:

Yet again many things have passed that have made me go hmmm… I can’t believe I have documented practically none of them. And this one almost passed unaccounted for as well, but I could not let it go. It was simply too much.

But first I must say – I am not a Microsoft hater. I use its software every day and have very few complaints. But when I do, they are huge. It’s the little things that are big and the simple things that should be so easy that get botched so royally. And it drives me crazy.

After a couple days of removing a cornucopia of betas, CTPs, and various versions of Visual Studio 2005 (along with WPF, WWF, VSTO and other sundry extenstions) I was finally up and running with a clean slate to do some serious K2 and SharePoint development. Until I discovered I couldn’t save any projects.

WHAT!? “The operation could not be completed. No such interface supported.” Now there’s a useful error. Ummm… So now file system operations are not supported… Uh… right.

So, it took longer than it should have but I finally found this thread:
http://softwarecommunity.intel.com/isn/Community/en-US/forums/thread/30236807.aspx

Which leads me to hypothesize that in all the uninstalling and re-installing perhaps this ridiculous setting in Visual Studio got mysteriously unchecked and that caused VS to stop saving projects? Right.


How much sense does a setting like this make anyway (yes, I get the point, but who in their right mind would ever want to create temporary projects); and more importantly – why does that setting seem to make it impossible to save your “temporary” project later?

After checking the box beside “Save new projects when created” and restarting VS all was well again in Not-Losing-My-Work-Land. Hmmm…


Apr 12 2008

epiphany #2

by zach

“i shoot fire out of my mouth!!!”


Apr 4 2008

epiphany #1

by zach

“i shoot fire out of my eyes!!!”


Feb 18 2008

Winter Mulch

by andrew

We came across a most curious sight on our drive up to / through Pennsylvania this past weekend. Right along 104 there were these immense mountains of mulch steaming from the decomposing process and a front-end loader taking smaller piles and putting them onto bigger piles. It was truly amazing… perhaps all the more interesting because there was still some stubborn patches of snow clinging to the surface in spots. I didn’t really have the time that I would have liked – such as 8 days or so 🙂 – to truly document the spectacle properly, but in the few short minutes I had while my family waited in the truck, I jumped out and fired off a few quick rounds. It was hard to decide which one to post, but this captures the essence. Sadly, none of the shots I grabbed captured the enormity of these mulch piles, nor the precarious position the loader was being driven into. The pilot literally drove this thing up the steep side of these piles to drop a new deposit on top. It was expertly accomplished, but I thought for sure the giant machine was going to tip and come rolling down the mulch mountain right at me.

mulch loader


Jan 23 2008

[Good Guys…0 | Bad Guys…1]

by andrew

Suspicious Sunset

This was the picture I was taking after bailing off my bike ride home from the metro today when a lady not-quite shouted across the road “Who are you and why are you taking pictures?” About a year ago, when I decided I was going to get serious about pursuing this photography thing that I was enjoying so much, I knew I had a LOT to learn, but I never would have imagined the persecution that would come with it. Ok, I’m being dramatic, because if I had my druthers I’d hardly interact with people… ever… well, there are a couple exceptions, but you get the idea.

I tried to inject a little excitement into my reaction this time – “The sunset! I’m a photographer and I’m just taking a picture of the sunset. Do you want to see?” I approached her and could tell she was starting to let her guard down a little. We chatted for a bit, I showed her the shot, and she explained why she was suspicious even though I had already guessed as much. Apparently that “private” neighborhood (which had the misfortune of being directly under that sunset at that moment) had seen its share of suspicious characters driving through taking pictures of people’s property. I told her I had no problem with her asking what I was doing and said I was sorry to cause her any concern. I hope I left her with the impression that people taking pictures aren’t necessarily up to no good.

It’s not just the terrorists. Other evil morons are picking away at that fabric of a reasonable society through their stupidity, selfishness, and greed. I never blame the people who challenge me when I’m taking photos in public. It’s not their fault. I might hold a grudge for two minutes if they’re rude about it, but I’m always aware that the blame really falls at the feet of those who abuse our freedoms; providing the impetus for authorities to take away (and the populous to surrender) our normal expectancy of independence and openness in our own society. How much sense does it make to give away something so that it can be protected!!!??? Hello? It’s all fine and dandy that our freedom is protected, but when it doesn’t even belong to us any more what good does it do?

I photograph in DC a lot, so these kind of challenges are something I experience often (I’m a little too interested in things other than the monuments to blend in with the tourists). I find it incredibly ironic that some people get completely bent out of shape because I like to take pictures of interesting things in public places when their picture was taken a million times that day by the bastions of security cameras peppering the city buildings and streets. Just look around some time when you’re in a big city: overhangs, street corners, building walls, every dark half-ball shaped thing the size of a grapefruit is a camera, and of course there’s the older, more obvious long brick-shaped ones. Shouldn’t we be objecting to having our picture constantly taken all the time like that? Oh, right, but it’s for our protection. And not for commercial use anyway.

Do I hate security cameras? No. I’m making a point. We are just as quick to throw the rights of others away as we are to throw our own rights away. Sometimes I’m surprised by how quickly that is, that’s all I’m saying. Then again, what if I was a bad guy and Joe Citizen never reported me? There are always so many sides to everything. I guess I just never would have thought that the steepest learning curve in photography would be the people skills (especially when people are the last thing I’m interested in photographing). I want to learn how help people see in ways they’ve never seen before. I’m getting a lot of practice anyway… one day maybe I’ll be able to turn a confrontation into another person’s excitement at opening their eyes wider to the world around them just as easily as I pointed my camera at the sky and pressed the shutter release tonight.


Jan 22 2008

Freezing with Geese

by andrew

With temperatures in the 20s (and a bit colder at night) over the weekend, I knew yesterday would dawn with some potentially interesting ice to shoot. There’s a marsh just down the road, and while it is not a remarkable landscape, it always feels like it could yield some interesting photos at any given moment. I reluctantly dragged myself out of bed at 6:30 am on a day off and noted with some annoyance that I was already 30 minutes too late to get any pre-sunrise colors already unfolding.

It was 18 degrees and colder with windchill. I pulled on some crazy arctic boots that I had all but forgotten about until the night before. Scrounging for some cold weather gear I found them burried in a bin in our “storage room.” They had been issued to me in Minot, North Dakota during my Air Force days, and they kick some serious butt… water tight with thick wool liners, they feel like they weigh 10 lbs each.

Sure enough, the marsh was frozen over quite nicely. I was originally intending to explore the ice with my camera during the shifting colors of early light, but the Canada Geese quickly became my primary pursuit when I saw the scene they presented. I spent the next hour and a half inching closer bit by bit, sliding my tripod across the shallow ice, trying to squeeze evey last bit of distance out of my longest lens that maxes out at 300mm. I would have never even tried this without the boots, because I knew I was bound to break through in spots, and sure enough I did, but they kept me warm and dry.

As it was, the best photo I have to show for it doesn’t even look like I got that close. The geese were on to me. No matter how slow I went or how often I paused, they had a way of inching further away and settling back down again. I was almost in pain for want of a 2x extender or a decent 600mm (or better yet, both) to adequately capture the amazing sight. But as it was, I was able to keep from spooking them completely by taking it easy, watching and listening for their “warning” mode calls, and stopping when they noticed me until they were comfortable with my new position.

What amazed me was the sight of these geese, sleeping on the ice in well below freezing temperatures. And as if that wasn’t enough – and this is what I really wanted to capture but couldn’t with my short range – their feathers were covered with a significant layer of frost. They didn’t seem to mind much though. No wonder we make blankets out of their down.

Ice Geese


Sep 19 2006

Wild Jungles of Mannual MOSS Beta 2TR Removal

by andrew

[migrated from http://edgedev.blogspot.com]:

So, I was merrily and methodically following the Microsoft documentation that came with the SharePoint 2007 Beta 2TR downloads, and everything was coming off without a hitch, until the Configuration Wizard choked, crashed, and then burned. In other words: The entire process was nearly complete, the updates had run flawlessly, but it was not happy. This is how I knew is was not happy:

Failed to register SharePoint services. An exception of type
System.Data.SqlClient.SqlException was thrown.
Additional exception information: Could not find stored procedure ‘dbo.proc_MSS_Cleanup’.

I discovered that it was incredibly not happy, in fact, when I could not even remove Microsoft Office SharePoint Server (MOSS) 2007 from my system any more. The uninstall app launched from Add/Remove Programs just crashed within a couple seconds of Clicking Remove and then Yes. Every Time. So, I couldn’t fix it. And I couldn’t remove it and start over… at least not the easy way. The following is a record of my journey through the dark and creepy jungles of removing MOSS 2007 manually. Yes, I just said manually. Yes, it can be done.

Lessons Learned:

  • The slipstream method for installing the Beta 2TR update seems by far the simplest and most stable option!!! (See “Other Resources” below for good documentation)
  • Before trying the steps in this blog try running this command:
    12binpsconfig.exe -cmd upgrade -force

UPDATED Lessons Learned (several days after original post):

  • B2TR is VERY particular about having a clean slate (no previous installations of B2 on the machine).
  • My methods for removing everything mannually still did NOT make B2TR happy. I could install B2TR, configure, and setup all the farm services. I could create Web Apps and Site Collections – team sites worked just fine. But the publishing features and any publishing sites plain did not work. I suspect this has something to do with some WSS B2 stuff surviving the MOSS B2 removal, but I can’t be sure.
  • Bottom line – rebuild the server to make sure. This was the only way I could get everything to work after days of messing with it.
  • Again: The slipstream method is by far the easiest and most reliable method to install B2TR.
  • Even the basic setup in the Config Wizard (after a B2TR slipstream install) required that I set up the database (SQLServerExpress in my case) separately.

DISCLAIMER:
The following procedures worked for me to manually remove an installation of MOSS Beta 2 that was corrupted by the Beta 2TR updates. After all this, I was able to successfully reinstall Beta 2TR using the slipstream method. HOWEVER, you might seriously mess up your own system trying this, so be warned. Don’t even think about attempting it unless you know exactly what you’re doing and/or don’t mind rebuilding your machine from scratch (which I actually recommend as an easier and cleaner alternative to what is described below). Of course, if you don’t have any choice because you’re avoiding a complete rebuild at all costs (like me), then have at it!

NOTES:

  • When I say “delete” I mean (to the recycle bin) unless otherwise stated. Probably not necessary but maybe a cheap form of minimal insurance.
  • Backup any relevant parent registry keys before making edits (obviously these don’t go to the recycle bin when deleted 🙂 )
  • Hopefully my shorthand wildcard (*) notation will not be confusing. If there are multiple services to stop that start with SharePoint, for example, I might say: stop all SharePoint* Services… Should be intuitive.

Do the following to manually remove MOSS 2007 Beta 2TR:

  1. Delete folder C:Program FilesCommon FilesMicrosoft SharedSERVER12
    (This is the key step that tricks your system into thinking MOSS has not been previously installed. After this step you should be able to re-run the setup and it will start from scratch with the Product Key instead of taking you to the Repair / Remove prompt. Don’t get excited yet, you still need to complete the following steps first)
  2. In Add/Remove programs find Microsoft Office SharePoint Server 2007 (Beta) and click Remove
    – you should get an error, click OK to remove from list anyway
  3. [Optional?] Delete every MOSS 2007 and WSS v3 related key UNDER HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstall – do not delete the main parent key : HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstall – you will have to go through each sub-key and decide if it applies to MOSS (which, if you’ve tried to remove MOSS several times like me, might be a bunch) this is easy, just look at the value for the “DisplayName” String to be “Microsoft Office Professional 2007 (Beta)” or something similar
    – most keys to delete will probably end in 0000000FF1CE, but don’t forget about the OSERVER key (might get errors while deleting this one, but press on)
  4. Delete folder C:Program FilesCommon FilesMicrosoft Sharedweb server extensions12
  5. [Optional?] Using a tool like “SQL Server Management Studio Express” stop and/or delete your SharePoint database server instance (in my case, from a default basic installation: OFFICESERVERS). Disable its corresponding service in the system Services.
  6. In IIS, delete all MOSS and WSS v3 Web Sites and App Pools (at least 4-5 of them) and run iisreset at the command line.
  7. Delete folder C:Inetpubwwwrootwss
  8. [If applicable] Kill the following processes:
    – Microsoft.Office.Server.Conversions.Launcher.exe
    – Microsoft.Office.Server.Conversions.LoadBalancer.exe
  9. Disable all Windows Sharepoint* and Office Document Conversions* services in system Services
  10. Delete the folder C:Program FilesMicrosoft Office Server
  11. Delete the folder C:Program FilesMicrosoft Office Servers (if you get access denied, you will probably have to add full control permissions to the local administrator account – or whatever account you installed MOSS with – on that folder and make sure Read Only is unchecked and those settings pushed down to all sub folders. The folder C:Program FilesMicrosoft Office Servers12.0BinHtmlTrLauncher will not let you access / delete it otherwise)
  12. This step is scary. Run a file Search for wss in your c:windows folder. Delete EVERYTHING that might pertain to wss (but NOT things that are iffy like wssoc.dll and wssbrand.dll which both apply to Windows Storage Services) Repeat using the following searches (there will be lots of stuff in the Windowsinf folder to delete):
    – Sharepoint
    – OSS
    – [do NOT delete anything from the .Net 2.0 folders]
  13. Another scary step. Do the same thing with the registry (search and destroy). This will be much easier for you if you do NOT have SharePoint Designer (or Office 2007 Beta 2) installed, heh heh… I found and deleted the following keys (plus a few other similar ones):
    – Several keys under HKEY_CLASSES_ROOTCLSID that hit on a search for sharepoint like {000502B8-C8FE-43C0-B0D9-FD18AB931AE9}
    – and {0451E372-3698-44A4-B7EE-C7B7F448C609}
    – and {04971529-2F83-4173-BD6C-244A897E5A0B}
    – and a whole bunch more… you get the idea. actually, i skipped some of those too, because it was taking too long. the key guid names might be different for you.
    – Roughly 30 Microsoft.Sharepoint.* String Values in the following key: HKEY_CLASSES_ROOTInstallerAssembliesGlobal
    – HKEY_CLASSES_ROOTInstallerPatches (the whole key)
    – every key ending in F01FEC found under the following key: HKEY_CLASSES_ROOTInstallerProducts to clean up Add/Remove Programs (I found a bunch of weird things got inserted into here because of something I did during this process… you might not have a bunch of entries to delete here)
    – every key ending in F01FEC under the following key: HKEY_CLASSES_ROOTInstallerUpgradeCodes
    – All Microsoft.Office.Server.* and Microsoft.Sharepoint.* keys from HKEY_CLASSES_ROOT
    – All OSearch.* keys from HKEY_CLASSES_ROOT
    – HKEY_CLASSES_ROOTRecord{0641D69F-CD7A-3EB5-89B8-2A1741786A64} and all similarly prefixed keys that hit on a search for sharepoint
    – All HKEY_CLASSES_ROOTSharePoint.* keys
    – All HKEY_CLASSES_ROOTSPSearch.* keys
  14. Reboot and hope for the best.

Try running the setup again from your local folder. After doing the above steps, I followed the instructions here: http://www.sharepointblogs.com/files/12210/download.aspx with the following exceptions:

  • During the Advanced setup, I had to take a couple extra steps in the Config Wizard because it couldn’t determine if the server was joined to a Farm or not. I got an error, but clicked OK, and the Config Wizard let me disconnect from the unknown farm. Then I just re-ran the Config Wizard and, much to my amazement, I was in business.
  • I did not use SQL2000 SP4 as the instructions did. I used a fresh new instance of SQL Sever Express by running the SQL Server Express Setup. I could have reused the OFFICESERVERS instance left over from the Basic installation I did a while ago, but I wanted a clean slate. In creating the new instance, I specified the [machine]administrator account (the same account used to install MOSS) to be the sql service account. Once my new instance was installed, I completed the Advanced Setup and just put in my settings like the example – using [Machine][New Instance Name] for the Database Server field.

Cleaning up:

  • If you have errors running the setup again, double check that the folder C:Program FilesCommon FilesMicrosoft Sharedweb server extensions12 is truly deleted. At one point I had an error about not being able to upgrade WSS because the database [which didn’t actually exist] was larger than 4GB… after poking around I found that the folder mentioned had mysteriously re-appeared! Maybe because I ran the setup again somewhere in there as I was experimenting… or something.
  • I must have gotten too zealous in the registry because I couldn’t launch Word 2007 Beta 2 after I was done. It said that it wasn’t installed for this user. So, I’ll just have to re-run the setup and do a repair. That should fix it.
  • If I have overlooked anything or left anything out, PLEASE let me know! Thanks!

Your time might be better spent just rebuilding the server from scratch. But if that is the route you need to avoid at all costs, hopefully, this will help you get back on your feet.

Other Resources:
http://blogs.msdn.com/sharepoint/archive/2006/09/15/756692.aspx