Displaying the correct date in search results SharePoint 2010

When you crawl content from a file share, you’ll notice that when SharePoint displays search results, all the displayed dates are exactly the same. Instead of displaying the date the file was last modified, it seems to display the date on which the file was added to the search index.

When you want to display the date last modified (which should be default imho, as it was in 2007), you need to edit the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\14.0\Search\Global\Gathering Manager

Set the value to 0 (zero) instead of 1.

After this, start a full crawl to refresh the index. Now search again and you’ll notice the date last modified is shown.

This only goes for local file share content sources, the default SharePoint content source doesn’t have this problem.

Special thanks to Dan Arr who provided this solution on MSDN forums: http://social.technet.microsoft.com/Forums/en-US/sharepoint2010setup/thread/8a72c00d-f659-44d5-98ef-e3e52c44a6f7

Translation Search Server Express options in SharePoint Foundation

Lately I’ve been installing a lot of SharePoint Foundation environment. Mainly because it’s free and Dutch folks tend to be a bit cheap ūüėČ I’ve added Search Server Express 2010 to those installations to enhance the search options available to the users.

Now usually, I install english software so all management things are in English, that’s a lot better when searching for stuff on Google. So I get the English installation of SharePoint Foundation and apply a Dutch language pack to create sites in Dutch. Now for Search Server Express, there is a dutch download, but I couldn’t find any language packs for the English version. After installing Search Server Express and creating a search service instance, that leaves you with English links in your Dutch (or any other language) site.

The solution isn’t that well documented, but you need to download the “2010 Server Language Packs for SharePoint Server 2010, Project Server 2010, Search Server 2010, and Office Web Apps 2010” from here: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=046f16a9-4bce-4149-8679-223755560d54&displaylang=en. Since Search Server Express is a subset of features from Search Server, the language pack will also translate the Search Server Express options.

M’n sultana’s zijn gekrompen!

Als je te lang hetzelfde doet, dan ga je je op een gegeven moment vervelen. Dat was vast ook het probleem bij de mensen van Sultana. Want tja, dag in dag uit dezelfde koekjes fabriceren is misschien niet de meest opwindende bezigheid. Dus ga je een beetje vari√ęren; koekjes met appel, koekjes met peer, met sinaasappel en natuurlijk bosvruchten. Koekjes met een yoghurt laagje erop, lekker hoor! En vlak natuurlijk de fruitbreek niet uit, ook goed te nassen.

Tot dusverre ging het nog prima, maar dan… als je alle algemeen geaccepteerde fruitsoorten gehad hebt, wat ga je dan nog verzinnen? De creatieve breinen bij Sultana zijn duidelijk niet voor √©√©n gat te vangen en kwamen met Sultana hartig. Voor de lekkere trek aan het eind van de dag. Joehoe mensen van Sultana, die dingen zijn VIES. Ik weet niet precies hoe zoiets de smaaktest doorkomt, maar ik geniet er in ieder geval niet van. Ik¬†snap het concept ook niet zo goed. Een hartige snack met koffie combineert niet echt goed. Met een colaatje zou ik me er nog¬†iets bij kunnen voorstellen, maar bij hartige snacks drink ik toch echt meestal een biertje of wijn. Nu ken ik¬†alleen de bedrijfscultuur bij het bedrijf¬†waar ik werk, maar daar drinken we (de late vrijdagmiddag uitgezonderd) ‘s middags geen bier of wijn.¬†Nou goed, ze zitten nog altijd in het assortiment geloof ik, dus blijkbaar zijn er genoeg mensen die ze wel lusten, dat kan.

Die Sultana hartig koekjes zijn er inmiddels ook al een tijdje, dus begonnen de crea-bea’s bij Sultana weer te ijsberen. Dagenlang werden er gele post-its vol gekliederd, marktonderzoek gedaan en try-outs gehouden. Het marketing team heeft werkelijk ALLES uit de kast getrokken om ons te verbazen met het nieuwste van het nieuwste. Want verbetering = vooruitgang mensen, het kan echt alleen maar beter worden! NOT!

Voor de mensen die de reclames nog niet gezien hebben (zie ook www.sultana.nl) zal ik het concept even uitleggen. In een verpakking sultana’s zaten vroeger¬†5 pakjes. In ieder pakje zaten vervolgens 3 koekjes.¬†5 x 3 maakt 15 koekjes. In de hypermoderne, ultragave en zeer doordachte 2011 verpakking (ook wel Het Nieuwe Verpakken) zitten 8 pakjes van ieder 2 koekjes! WAAROM!? Waren 3 koekjes teveel voor de meeste mensen? Of was het het feit dat je dan soms 2 koekjes moet weggeven aan collega’s of vrienden? Nu heb je er nog maar 1-tje over, tel uit je winst!

Goed, nu kun je nog zeggen: wat zeur je nou? Let op, nu komt het ingewikkelde gedeelte van dit verhaal!

5¬†x 3 maakt 15 koekjes. 8 x¬†2 maakt 16 koekjes. Dus zit er in de nieuwe verpakking meer koek? Maar nee! Want de koekjes zijn stiekem per stuk ook een beetje kleiner geworden, stiekemerds daar bij Sultana! Een pak woog vroeger nog 219gram, de pakken van nu wegen 208 gram. Dus ondanks het extra koekje¬†is de verpakking in het geheel juist lichter geworden. Da’s dus minder koek of heel erg¬†efficient plastic.¬†Dat maakt dus dat de koekjes vroeger¬†14,6 gram wogen, de huidige scharminkeltjes moeten het doen met 13 gram per stuk(je).

Stel nu dat je, net als ik, die hoeveelheid van 3 koekjes eigenlijk prima vond. Dat waren dus 43,8 grammetjes koek. Hoe kom je daar nu aan met de huidige verpakking? 1 pakje maakt 26 gram waardoor je nog niet echt voldaan bent, twee pakjes zijn gelijk aan 52 gram. Da’s honger stillend (eigenlijk teveel), maarja; dan ben je wel na 4 dagen al door je pakjes Sultana heen. Met het gevolg dat je op iedere maand een compleet pak extra moet gaan kopen. Toedeledokie!

Kortom, het is kiezen of delen. Optie 1: je stilt je honger niet. Volgens de website van Sultana is dat bijzonder verantwoord en gezond, maar dat geldt vast niet als je er dan nog een snickers achteraan eet om van dat knagende gevoel af te zijn. Optie 2: je neemt dat tweede pakje ook mee en sponsort de firma Verkade nog een beetje meer. Dat laatste vinden ze zelf ook vast heel vernantwoord en gezond voor de omzet.

Ik had voor mezelf ook nog een optie 3: overstappen op YoFruit. Die dingen zijn sowieso lekkerder. Zitten weliswaar ook met 2-en in een pakje, maar stillen de honger ook beter. Maarja; die zijn nog duurder en dus ben je alsnog aan het sponsoren. Ik stap over op iets wat niet van Verkade is. Wat dat gaat worden weet ik nog niet precies, daar moeten we eerst maar eens gedegen marktonderzoek naar doen.

PS: in het kader hoor en wederhoor gaat deze blogpost ook naar Verkade. Ben benieuwd hoe het creatieve antwoord luidt.

Update! Ik ben er een beetje laat mee, maar 5 april ontving ik deze reactie van Verkade:

Geachte heer Jasper,

In navolging op uw e-mail bericht kunnen wij u het volgende aangeven.

Uit onderzoek is gebleken dat 3 biscuits iets teveel van het goede is, daarom zitten er nu 2 iets kleinere fruitbiscuits in √©√©n portie. Veel mensen lijken genoeg te hebben aan twee biscuits per consumptie. Graag komen we tegemoet aan die behoefte. Bovendien is hetaantal kilocalorie√ęn per portie nu teruggebracht tot 99 kilocalorie√ęn, hiermee voldoet √©√©n portie aan de richtlijnen goede voeding. Sultana Fruit Biscuit was al een verantwoord tussendoortje, het zit vol krenten, rozijnen, fruiten granen en is gemaakt met 100% zonnebloemolie en zonder kunstmatige geur-, kleur- en smaakstoffen.

Wij vertrouwen erop u hiermee voldoendete hebben ge√Įnformeerd.

Met vriendelijke groet,

Verkade Consumentenservice

Inmiddels hebben nog vele anderen de roep om 3 koekjes beantwoord. Ons initiatief groeit en via http://twitition.com/2koo8 kun ook jij meestemmen in de petitie om de 3 koekjes terug te halen. Of Verkade / Sultana er echt naar gaat luisteren is natuurlijk de vraag, maar we gaan in ieder geval ons best doen!

Struggling with ASP.NET MVC (2)

For a new project I’ve started, I decided to try out ASP.NET MVC. I consider my ASP.NET skills as good, so I assumed that would give me a head start with MVC. Not sure if it did though, thinking ‘old’ ASP.NET based seems to be more of a challenge as opposed to really helping.

A couple of my findings:
– Everything plays really nice as long as you play by the book. The minute you want something other then what the examples out there show, it’s a bit of a burden to get there.
– With ASP.NET you can get away without too much knowledge of JavaScript and things like jQuery and JSON. I noticed a lot of custom work in MVC is done with those techniques. I know a fair bit of JS, but not so much jQuery. Back to the books I guess ūüôā
– The availability of 3rd party components is more limited. And the components out there also seem to be limited when you compare them to the ASP.NET (AJAX) range. Take a look at what Telerik offers for instance.
– In the comparison with standard ASP.NET, MVC requires more code. That should deliver you a much cleaner project with more ability to do automated testing. It also provides you the possibility to make a big mess. The examples for ASP.NET are mostly in one line when covering things like databinding. The MVC examples aren’t. Use view models, don’t use view models. Incorporate logic and EF models into the Models dir, use seperate projects. I found all sorts of blogposts about roughly the same topics which all show different things. Which should I follow? Aaaargh!

All of this reminds me about my first steps in ASP.NET programming. Not exactly knowing which approach to take or how to solve non standard problems. But altough it’s tempting to switch back to the known and safe approach, I’m sticking with MVC for now, just because I know lot’s of nice stuff is being done in MVC for a while now. And yes; I know there’s a V3, but my hosting company doesn’t support that yet. Bummer.

So please fill up the comments:
– What resources are should-reads on MVC?
– What’s your approach when building an MVC project? How do you setup your projects, where do you leave your logic, etc?
– What’s your opinion about using ASP.NET / MVC or perhaps Dynamic Data? Is it a good thing their all there, or should we stick to one or two?

Once my projects’ launched, I’ll post an update on my MVC findings.

Moving out… again…

After moving this blog to my own site a couple of weeks ago, it seems I’ll be moving again real soon. My hosting company is either on a really long vacation, or they decided not to answer to their customers any more. Anyway, I’m moving to a new hosting provider soon hopefully, so that’ll probably go along with some downtime and other inconvenience.

I’m sorry and will definitely try to do better after moving. That goes for posting too, it’s been to quiet, I know!

Heinrich. Mooie vent.

Zo, ik had beloofd om hier af en toe ook een social praatje te houden in het Nederlands, laat ik daar vanavond eens mee beginnen. Terwijl ‘d√® wedstrijd’ (heb ik van horen zeggen) op de achtergrond opstaat bekijk ik nog een keertje de weerberichten voor Kirchberg ins Tirol. Daar wordt een doorgewinterde wintersporter niet echt blij van. Misschien toch teveel risico genomen door een reisje half maart te boeken naar een gebied wat tussen de 1000 en 2000 meter in ligt? Met temperaturen tussen de 0 en 10 graden hoeft het thermoondergoed in ieder geval niet mee. Hopelijk kunnen ze nog wat met sneeuwkannon ofzo. We zien wel.

Ach eigenlijk mag ik er ook niet over klagen. Het is de tweede keer dit jaar (okee, de eerste keer was de sneeuw ook niet zo super) en er is altijd wel ergens te snowboarden denk ik dan. Als er een piste is die net iets langer is dan het stuk in Landgraaf, waar een lift langs loopt en waar de sneeuw tot het middaguur goed blijft, dan ben ik tevreden. Want rond het middaguur kunnen we ergens een pistetentje in om te genieten van een Oostenrijkse lunch en nog beter: mensen. Ik ben niet echt een zomer mens qua temperaturen (25 graden is hoog genoeg), maar op en terrasje zitten en mensen kijken: ik ben er alweer klaar voor.

Zo zat ik een paar weken geleden dus in een pistetentje in Mayrhofen te genieten van een bord bratwurst mit pommes. Toen ik een slok van mijn Erdinger nam zag ik ergens in een ooghoek een oudere man naar binnen komen, in z’n eentje. Oudere mensen zie je op de skipiste al niet zoveel, en als ze er dan zijn toch minimaal met z’n twe√ęen. Nou goed, misschien kwam z’n vrouw er nog aan ofzo. Maar hij zette op zijn gemak zijn dienblad met lunch en een Erdinger Dunkel op een tafeltje en ging zitten, nog geen spoor van een reisgenoot whatsoever.

Dat vind ik dan dus interessant. Ik weet niet waarom, maar het facineert me enorm. Ik ga me af zitten vragen: waarom is hij hier alleen? Is zijn vrouw overleden, of misschien niet meer zo goed te been? Misschien is ze al wel een tijdje dood en komt hij hier omdat ze hier vroeger altijd met z’n tweeen naartoe gingen. Rustig at hij van zijn pasta en dronk hij zijn bier op. Inmiddels was het wel duidelijk dat hij niet op iemand zat te wachten en dat hij de lunch hoogstwaarschijnlijk in z’n eentje zou nuttigen. Ik had hem in mijn hoofd al omgedoopt tot Heinrich, bij gebrek aan fantasie voor een beter Duits klinkende naam. Misschien was hij wel helemaal niet Duits, zou ook goed kunnen.

De mannen aan de tafel naast hem, ook Nederlanders, hadden hem niet eens in de gaten voor zover ik kon inschatten. Mijn vrienden die ik op hem wees vonden het ook niet echt heel boeiend. Misschien ben ik dan de enige die geboeid is door zo’n persoon. Hoewel ik het nog nooit heb gedaan zou ik wel een keer aan zo iemand willen vragen wat hij daar nou doet. En waarschijnlijk klopt er van mijn verhaal dan helemaal niks. Was hij vroeger de eigenaar van dezelfde pistetent en komt hij er nog regelmatig een rondje ski√ęn en een hapje eten. Wacht zijn vrouw beneden in het dal rustig tot hij ‘s avonds weer aanschuift aan tafel. Is hij een gelukkig opa met een mooi leven achter de rug. Heinrich. Mooie vent.

Compiling audiences in SharePoint 2010

Compiling audiences from code has always been a bit troublesome to do. The things you need aren’t that well documented so it takes some Googling to get everything into place. But for some reason, the articles I found didn’t seem to work in my SharePoint 2010 installation. The result of my job was always 4: AUDIENCEJOB_NOPORTALSITE_ERROR. I tried numerous options, untill I found at that:

1) You need to set the first argument to RunAudienceJob to the ID of the webapplication
2) You cannot use the ID of the Search Service, but you need to get the ID of the User Profile Service Application. You can find this by opening up the User Profile application in Central Administration and copy/paste it from the URL.

But what if you need to get the User Profile Application ID dynamically in code? Well there doesn’t seem to be an out of the box way of doing this, so I used Reflector to find the classes and properties need it to get there. The code snippet below will let you compile an audience for a given site with a given name. If you want to compile all audiences, just omit the 4th argument.


public static void CompileAudience(string audienceName, bool fullCompile, Guid siteId)
{
SPServiceContext serviceContext;
using (SPSite site = new SPSite(siteId))
{
serviceContext = SPServiceContext.GetContext(site);

// get the assembly which hosts the UserProfile class
Assembly userProfilesAssembly = typeof(UserProfile).Assembly;

// get the type of the UserProfileApplicationProxy
Type userProfileApplicationProxyType = userProfilesAssembly.GetType("Microsoft.Office.Server.Administration.UserProfileApplicationProxy");

// get the proxy object
object proxy = serviceContext.GetDefaultProxy(userProfileApplicationProxyType);
// get the UserProfileApplication property which holds the actual application
object profile = proxy.GetType().GetProperty("UserProfileApplication", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(proxy, null);
// get the Id of the application
Guid applicationId = ((Microsoft.SharePoint.Administration.SPPersistedObject)(profile)).Id;

string[] args = new string[4];
args[0] = applicationId.ToString();
args[1] = "1";
args[2] = fullCompile ? "1" : "0";
args[3] = audienceName;

int result = Microsoft.Office.Server.Audience.AudienceJob.RunAudienceJob(args);
AudienceJobReturnCode returnCode = (AudienceJobReturnCode)Enum.Parse(typeof(AudienceJobReturnCode), result.ToString());
}
}

Creating and editing documents online: SkyDrive

A lot of buzz was generated this week as Google announced Google Cloud Connect. A plugin which you can install on you Office equipped computer to save documents to Google Docs. Wow, what a revelation! Or is it?

I’ve been using Microsoft SkyDrive for a while now, which originated out of Office Live! SkyDrive is like Google Docs, offering an online platform to save your documents and files to. With a standard free SkyDrive account, you get 25GB of free storage space to use and even better: it comes with the all new Office 2010 WebApps!¬†For those of you not familiair with the Office WebApps; it’s like Word and Excel but in your browser. So even when you don’t have Office installed (on your laptop or tablet for instance), you can still read and edit document. And yeah Google-fans, I know there’s Docs out there, but I find WebApps way¬†better. Sorry.

Ok, so you might be wondering how does this work? Well it’s actually pretty simple.

1. First you need an account. For that, just visit www.skydrive.com and sign up with your liveID. Nothing special there.

2. Once you’ve got your account, open up your¬†skydrive. Normally you have a public folder and a private one if I’m not mistaken, but since mine has already been setup I’m not sure. Anyway, you can create as many folders if you’d like and control access to either the folder itself or the documents in it.

3. To create a new document, there’s the “New” menu item. Click Word Document, choose a title and setup access control¬†if you’d like. Click Save and¬†there you are: the Word WebApp appears with your new document ready to edit!

4. You might want some more functionality, not everything the offline Word offers is available in the online version (yet). No problem. See the ‘Open in Word’ button? Click it, and your document will automatically open in a local Word instance (provided it’s installed of course). You can edit it and CTRL+S will send all of your changes right back to SkyDrive.

How cool is that? You can create, edit and share your documents all online and do so from within¬†the familiar interface of¬†Word 2007 and 2010. And when that’s not enough, simple open the local client and do some more.

By the way, this not only goes for Word, but Excel, Powerpoint and OneNote too.

Let me finish with a little tip for corporate users with an iPad: if you use your device to create notes, you can use SkyDrive to do so with OneNote online. If you sync up your local OneNote installation with SkyDrive, you can load your iPad made notes in your OneNote on your laptop or PC. So no more e-mailing yourself and importing into OneNote; use SkyDrive (or SharePoint for that matter, that works in conjunction with WebApps too).

I’m going Dutch!

Untill now, I’ve written all my blog posts in English. That’s because this blog was used for tech stuff (or actually jsiegmund.wordpress.com was the place for that) and I wrote my social stuff elsewhere. But because it’s all me and I wanted people to find me and my stories more easily, I decided I needed to change that. So from this day on, I’m going to use this, my blog, for all of my sharing needs. That means there will still be technical articles (marked as such), but there will also be social stuff. And those social blogs will¬†be in Dutch. Probably.

So for those of you following me via RSS or otherwise; please update your feed and add filters if you’d like to. I’ll be categorising every tech post in Technical, and all social things in Social. Maybe there will be some more categories, maybe there won’t be. We’ll see.

Welcome to my new 2011 blog!

Following up on http://wp.me/p6iHx-3N, welcome to the new location of my blog!

I moved my blog to my personal webspace. Needed to install some plugins and you cannot do that for a wordpress.com site. So in 2011 my blog will remain to exist at: http://blog.repsaj.nl. I’ve exported / imported all posts so nothing is lost. A new theme freshens things up a bit and all new posts will automatically be posted on Twitter as well. Nice!

Enjoy reading!