SAPLaunch Without Prompting to Download .SAP file


This message has annoyed me for a long time.  Today I found the solution thanks to this post “Users always asked to download FILE VIA SAP PORTAL” on

The reply by Bozman had the solution that worked for me.

Here is the magic:

Windows Registry Editor Version 5.00

After installing this I was able to click the link in SAPLaunch and the SAP GUI opened without prompting.  Pure Bliss!!!

Marble - Google Calendar Sync for Outlook

Syncing my work calendar (Microsoft Outlook) with my Google Calendar so I can have my meetings on my phone is a must for me.  Since August 1, 2014 when the Google Calendar Sync quit working I have used a lot of different offering that tried to solve this problem.  Outlook Google Sync by rantsi was the closet to how I wanted it to work but it had a few issues.  I committed a few fixes but then started working on how I would want it to work.  Marble is the result of that effort.  It uses the Google Calendar API v3 and either native Outlook Interop or NetOffice.   NetOffice is still a bit experimental so use with caution.

Marble is available on GitHub, and at this time version is stable using Outlook Interop (the default).  Source Code, Binary, and Setup packages are all available on the release tab.

The Setup Screen


As you can see it is very simple, once you launch the Settings Screen you will be taken to your Google Account to authorize Marble to have access to manage your Calendars.  You will then select which calendar you want events to be synchronized to.

Enable the Sync very hour and provide when on the hour you want it to sync.  The screen shot will sync every hour at 10 minutes past.

The Days in Future and Days in past allows you to control the rolling window of time that events are synced in.  This allows you to make update quickly.

Start with windows, really? I not going to explain that one.

There is no User Interface other than the Settings and About screens.  Everything else is handled in the System Tray.

Please download it and give it a try.  If you encounter issues please log them here


Clear Internet Explorer Cache Command Line

During a recent project where I was creating a SharePoint feature I had the need to clear the browser cache before starting a new debug session.  The feature was all JavaScript and I wanted to be sure I was getting the latest version.  So, I added this command to the post build event.

InetCpl.cpl,ClearMyTracksByProcess 8

I have also used this in trouble shooting browser issues with clients, the easiest way to know for sure they have cleared their browser cache.

How to Upload a Document with Properties using SharePoint 2010 Client Object Model

Today I came across the need to be able to upload documents to a SharePoint list.  Not so bad, I have done this before, but this time I also need to populate some custom metadata about the document.  After a lot of looking, searching and exceptions I finally found the answer and here it is.

Add References to Microsoft.SharePoint.Client Library

Install-Package Microsoft.SharePoint.Client

Define a form

The important part I always forget is the enctype=”multipart/form-data”.

 1: <form id="formUpload" method="POST" enctype="multipart/form-data ">
 2:     <input type="file" id="fileUpload" name="fileUpload" runat="server"/>
 3:     <input type="submit" value="upload" 
 4:         OnServerClick="btnUploadTheFile_Click" runat="server"/>
 5: </form>

The btnUploadTheFile_Click Handler

 1: private void UpLoadToSharePoint()
 2:  {
 3:     var fileName = Path.GetFileName(fileUpload.PostedFile.FileName);
 4:     var fileStream = new FileStream(fileUpload.PostedFile.FileName, FileMode.Open);
 5:     var byteStream = new byte[fileStream.Length];
 6:     fileStream.Read(byteStream, 0, byteStream.Length);
 8:     var serverRelativeUrl = "/MySite/MyDocumentLibrary/" + fileName;
 10:     var fileCreationInformation = new FileCreationInformation
 11:     {
 12:         Content = byteStream, 
 13:         Overwrite = true, 
 14:         Url = serverRelativeUrl
 15:     };
 17:     var file = _sharePointList.RootFolder.Files.Add(fileCreationInformation);
 18:     file.ListItemAllFields["Column 1"] = "Value 1";
 19:     file.ListItemAllFields["Column 2"] = "Value 2";
 20:     file.ListItemAllFields.Update();
 22:     _sharePointContext.ExecuteQuery();
 23: }


This simple example shows how easy it is to upload a file to a SharePoint document list and provide additional column information.

Domain Events TechFest Update

Last Friday I presented on Domain Events at the Northwest Arkansas Techfest and there was a lot of interest and good discussions.  Thanks to everyone who attended the session.  I have updated the nuget packages to the latest release and have created some initial documentation located here.  From there you can find links to the project site (full source available) and wiki. 

The source also includes an example application as well as the demo script for the demo I used in my presentation.  The demo script is step by step instructions to re-create the demo from the presentation.

As I mentioned in the session this code is publicly available and I do accept feature and pull request, see the project wiki for how you can contribute.


<<  July 2016  >>

View posts in large calendar

Month List