Project Server Conference 2014

Hi all,

If you can make it to Anaheim, CA on February 2nd-5th, come swing by and check out my sessions!  I will have three which will include:

  • Developer to Developer – Learn about Microsoft Project Online and Server extensibility (co-presented with Bill Avery, developer of the REST services in Project Server 2013) (400) – Learn about the REST architecture, remote event receivers, and how to publish apps to the SharePoint App Store for Project Server
  • SharePoint 2013 Overview for IT Pros and Developers (300) – I will walk through and demonstrate all the new features of SharePoint 2013.
  • How to get up and running with Project Server 2013 for Beginners (200) – A simple what are the basic things you need to do to get Project Server up and running for someone that has never worked with it before

If you haven't registered for this conference, you can do so here:

http://www.msprojectconference.com/

Hope to see you there!

Chris

SharePoint Conference 2014

In addition to the awesome Project Server conference in February, I will also be presenting at the SharePoint Conference in March.  It will be in lovely Las Vegas, NV, March 2nd-6th.  I will have two sessions at the conference (for a total of 5 sessions in 4 weeks):

  • SharePoint Storage Architecture, 2001 to present inside and out (co-presented with Bill Baer) – Think you know shredded storage?  Think again!  Bill and I will present the history of how storage has changed over the years and focus on where we are today.  We will present several different scenarios and test the knowledge of the audience to see if you really know how shredded storage works!  We will use the Shredded Storage testing framework to demonstrate the true workings of this exciting new technology
  • Building futuristic Search Applications using Kinect and Yammer! – Yeah, I did it.  Over 6 months ago I integrated Yammer into on-premise and all I can say is…cool.  That feature alone is worthy of a single session at SPC14, but I wanted to take it even further!  Therefore, I have built a Kinect based application with integrated voice and gesture recognition to mimic the Tom Cruise like movements in the movie Minority Report.  Using the Kinect you can search your local SharePoint content sources and Bing.  This session is not to be missed and will be one of the most talked about session inside and outside Microsoft!

As Bill likes to say…this SharePoint conference is going to be EPIC. If you haven't registered or on the fence about it, you can do so NOW here:

http://www.sharepointconference.com/

Hope to see you there!

Chris

MSDN Forum Jam 2013

It's time!  The clock will start on Dec 1st, which is this Sunday!  I'll take the snapshot at midnight on Dec 1st.  Here are the rules this year:

Back by popular demand AGAIN, the MSDN Forum Jam 2013 is ready to go!  What
is a forum jam?  It is an all out battle for question answering
supremacy in the Microsoft MSDN forums.  This is the third ForumJam I
have hosted.  You can see other Forum Jams here:

The rules for this Forum Jam will be the similar to the last one:

Tweet me at @givenscj or email me at chris@architectingconnectedsystems.com to say you would like to participate by November 30th, 2013 (MVPs and Non-MVPS welcome)

  1. At 8am on Dec 1st, I will take a snapshot of all participants points, posts and answers
  2. Contest
    will end January 31st (a full two months), the person with the following
    (as measured in difference between snapshot and 1/31 totals):
    1. Highest Point total wins a $200 gift card
    2. Second highest Point total wins a $75 gift card
    3. Third highest Point total will win a set of ACS SharePoint 2013 training manuals
    4. Fourth highest will get a copy of my SharePoint 2013 Inside Out book
  3. Moderators are free to participate, but will be unofficially tracked
  4. I'll post updates along the way to let people know where they stand
  5. All
    post/answers/replies must be in the SharePoint forums.  I will audit
    these and any items that fall outside those forums will be deducted from
    your total!
  6. As
    with anything, rules are always subject to change but probably won't,
    this is not endorsed by Microsoft and won't guarantee an MVP Big Smile
  7. Be sure to follow Forum etiquette, be nice and civil, and recognize others.  Its all about helpfulness!

If anyone else would like to contribute to the bounty let me know!

Let the community building begin!
Chris Givens
@givenscj

MSDN Forum 2013 Stats

This blog post will be updated on a daily basis to show where participants stand!  If you would like to join, get me your name and msdn profile link as soon as possible (the later you wait, the less points you can earn!). Official rules here.

FINAL NUMBERS:

Rank Name Points Posts Answers
1
Trevor Seward
10210 244 594
2
Amit V
5440 100 315
3
Steven Andrews
3595 59 224
4
DimitriAyrapetov
3545 73 225
5
Gokan Ozcifci
2559 8 13
6
Raghavendra Shanbhag
1095 26 65
7
Chris Givens
1060 34 77
8
Jason Warren
800 41 39
9
Fabian G Williams
705 2 2
10
DannyJessee
675 17 36
11
Mikael Svenson
370 17 22
12
Devendra Velegandla
330 13 19
13
Doug Hemminger
223 7 12
14
Marc D Anderson MVP
150 10 8
15
Ivan Sanders
125 6 6
16
R0ber7o
105 2 6
17
Neal McFee [MCT]
90 4 5
18
MaartenSundman
90 4 7
19
cimares
69 4 3
20
CoreyRoth [MVP]
45 3 2
21
Clovermusician
35 1 3
22
Liam Cleary [SharePoint MVP]
35 0 2
23
TomCastiglia
35 0 3
24
Tom Resing MCM
25 1 1
25
GregTate
10 0 1
26
Alpesh NAKAR
0 0 0
27
Eli Robillard
0 0 0
28
Gavin Barron MVP
0 0 0
29
Xenox
0 0 0
30
EricaToelle
0 0 0
31
Nicholas Holloway
0 0 0

Chris

My Playlist – What I Jam Out Too

Playlist files:

  1. Daft Punk Feat. Pharrell Williams – Get Lucky (Daft Punk Remix) (10:32)
  2. Arash Feat. Sean Paul – She Makes Me Go (Garmiani Remix) (5:09)
  3. Barbara Tucker – I Get Lifted (Bob Sinclar Remix) (8:22)
  4. Barry Manilow – Copacabana (At the Copa) (5:46)
  5. Black Eyed Peas – Alive (5:03)
  6. Black Eyed Peas – Boom Boom Pow (4:12)
  7. Black Eyed Peas – Don't Phunk with My Heart (4:03)
  8. Black Eyed Peas – Hey Mama (3:34)
  9. Black Eyed Peas – I Gotta Feeling (David Guetta Remix) (6:07)
  10. Black Eyed Peas – Just Can't Get Enough (3:39)
  11. Black Eyed Peas – Let's Get It Started [*] (3:37)
  12. Black Eyed Peas – Rock That Body (4:28)
  13. Black Eyed Peas – The Time (The Dirty Bit) (5:08)
  14. Bob Sinclair – New New New (6:12)
  15. Bob Sinclar – Peace Song (Nari & Milani Remix) Ft. Stevie Edwards (6:53)
  16. Bob Sinclar – Summer Moonlight (Ben Delay Remix) (5:41)
  17. Bob Sinclar feat Shaggy & Sahara – I Wanna (Remix Radio) (3:22)
  18. Bob Sinclar Ft Shabba Ranks – Love You No More (Nicola Fasano Remix) (7:31)
  19. Britney Spears – Hold it against me (3:49)
  20. Britney Spears – I Wanna Go (Funk3d Club Remix) (5:37)
  21. Britney Spears – I Wanna Go (The Perez Brothers Remix) (6:09)
  22. Britney Spears – Piece Of Me (3:32)
  23. Britney Spears – Work Bitch (4:08)
  24. Britney Spears – Work Bitch (Matt Nevin Remix) (4:53)
  25. Britney Spears feat. Will.I.Am – Scream And Shout (3:27)
  26. Bruno Mars – Treasure (2:58)
  27. Calvin Harris – I´m Not Alone (Tiesto Remix) (6:40)
  28. Chris Brown – Turn Up the Music (3:49)
  29. Chromeo – Fancy Footwork (3:19)
  30. Daft Punk – Get Lucky feat. Pharrell (6:46)
  31. David Guetta – Remix 2012 Adele LMFAO Snoop Dog Bruno Mars Rihanna Maroon 5 (4:07)
  32. Dev – Dancing In The Dark (3:54)
  33. Dire Straits – Sultans of Swing (5:46)
  34. Drake Feat. Tyga & Lil Wayne – The Motto (Remix) [Take Care] (3:55)
  35. Enrique Iglesias – Heartbeat (Feat. Nicole Scherzinger) (4:17)
  36. Flobots – Handlebars (3:26)
  37. Foster The People – Pumped Up Kicks (4:16)
  38. Frankie Smith – Double Dutch Bus (5:15)
  39. funkerman – speed up (7:08)
  40. give me everything tonight (extended official remix) (5:21)
  41. Gotye- Somebody That I Used To Know (feat. Kimbra) (4:03)
  42. Grandmaster Flash And The Furious Five – The Message (3:13)
  43. Justin Bieber feat. Nicki Minaj – Beauty and a beat (4:02)
  44. Katy Perry – Last Friday Night (T.G.I.F.) (3:50)
  45. Lady Gaga – Applause (3:32)
  46. Lady GaGa – Marry The Night (4:24)
  47. Lady Gaga – Monster (4:09)
  48. Lady GaGa – So Happy I Could Die (3:55)
  49. Lana Del Rey – Summertime Sadness (Asadinho Main Vocal Mix) (8:34)
  50. Lil Wayne ft Drake – Right Above It (Dirty) (4:36)
  51. Lionel Richie – All Around The World (Bob Sinclar Remix) (9:35)
  52. Major Lazer – Watch Out For This (Bumaye) (Hunter Siegel Remix) (4:27)
  53. Maroon 5 – Moves Like Jagger (feat. Christina Aguilera) (3:21)
  54. Mike Posner – Please Don't Go (3:16)
  55. Nicki Minaj ft. Drake – Moment For Life (4:39)
  56. Pitbull – Bon Bon (We No Speak Americano Remix) (3:33)
  57. Pitbull Feat. Chris Brown – International Love (Prod. By Stargate) ( 2o11 ) [ www.MzHipHop.com ] (3:29)
  58. Pitbull Sean Paul Lil John – Culo Remix (5:01)
  59. Puff Daddy & The Family – Can't Nobody Hold Me Down – (featuring Mase) (5:06)
  60. Rick Ross Ft Drake & Chrisette Michele-Aston Martin Music (4:33)
  61. Rihanna – S&M Remix (Feat. Britney Spears) (4:18)
  62. Rihanna – Shut up and drive (3:33)
  63. Rihanna Feat. Flo Rida – We Found Love (Remix) (3:47)
  64. Rupert Holmes – Escape (The Pina Colada Song) (4:40)
  65. Sak Noel – Loca People (La Gente Está Muy Loca) (4:48)
  66. Sensato feat. Pitbull, Sak Noel – Crazy People (3:44)
  67. Sugar Hill Gang – Rappers Delight (Old School Mix) – rap (7:35)
  68. Swedish House Mafia ft. Tinie Tempah – Miami To Ibiza (5:51)
  69. The Black Eyed Peas – Meet Me Halfway (4:44)
  70. Till the World Ends (feat Kesha & Nicki Minaj) (4:44)
  71. Wale – Bad Remix (Ft. Rihanna) (3:58)
  72. Will.i.Am ft Britney Spears – Scream, Shout & Clap (DJ Mast Party Booster Remix) (4:57)
  73. Wiz Khalifa – Black And Yellow (Dirty) (3:41)
  74. Wiz Khalifa & Snoop Dogg – Young, Wild, & Free (3:10)
  75. Wynter Gordon – Dirty Talk (3:18)

PowerPivot, PowerView and SharePoint – Snapshots

Gotta love cross team interaction sometimes. In trying to get PowerPivot and PowerView to work on SP2013, I ran into many many issues.  One of which has no items on the internet when you search for it!  So here's my steps to resolve getting this whole thing to work right. 

  1. The first step is to install the PowerPivot Add-In.  The gem of an installer simply copies a bunch of files to the program files directory.  The real work in the configuration tool
  2. Run the PowerPivot Configuraton Tool – this copies all the wonderful items to the SharePoint Root.  Some of this is done via solutions, other by direct file copy. Some important files include:
    1. BINGallerySnapshot.exe
    2. LayoutsPowerPivot directory (specifically the ASRGLoader.htm file)

Once this is done, theoretically you should be good to go, but alas…shit happens.

The biggest issue is the snapshots of the files. I have seen many of these errors before, but this time things were a bit different.

When it comes to the actual GallerySnapshot.exe tool, it is a very interesting beast, some details are found here:

 And for all other issues, you have this great post:

Which one part that I had not seen before was the Group Policy being applied for the Trusted sites.  Because I had set this up in my image, the code could not set its own policy and would error.  This post was helpful to find that issue (which was to remove the policy):

For my particular situation, I had what this poor soul had:

This error is "NullReferenceException in Microsoft.AnalysisServices.SPAddin.ReportGallery.SnapshotHandler.RegisterGlobalExtensionHandlers()"  Ugly.  So of course, I went in and found the assembly just as he did and sure enough, the section is missing in my web.config file of my BI Center site.  What does it need to look like?  Here ya go (answer in bold):

<?xml version="1.0" encoding="UTF-8"
standalone="yes"?>
<configuration>
  <configSections>
    <sectionGroup name="SharePoint">
      <section name="SafeControls"
type="Microsoft.SharePoint.ApplicationRuntime.SafeControlsConfigurationHandler,
Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c" />
      <section name="RuntimeFilter"
type="System.Configuration.SingleTagSectionHandler, System,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <section name="WebPartLimits"
type="System.Configuration.SingleTagSectionHandler, System,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <section name="WebPartCache"
type="System.Configuration.SingleTagSectionHandler, System, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <section name="WebPartWorkItem"
type="System.Configuration.SingleTagSectionHandler, System,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <section name="WebPartControls"
type="System.Configuration.SingleTagSectionHandler, System,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <section name="SafeMode"
type="Microsoft.SharePoint.ApplicationRuntime.SafeModeConfigurationHandler,
Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c" />
      <section name="MergedActions"
type="System.Configuration.SingleTagSectionHandler, System,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <section
name="PeoplePickerWildcards"
type="System.Configuration.NameValueSectionHandler, System,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <section name="WorkflowServices"
type="Microsoft.SharePoint.Workflow.ServiceConfigurationSection,
Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c" />
      <section name="BlobCache"
type="System.Configuration.SingleTagSectionHandler, System,
Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
      <section name="OutputCacheProfiles"
type="System.Configuration.SingleTagSectionHandler, System,
Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
      <section name="ObjectCache"
type="System.Configuration.SingleTagSectionHandler, System,
Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
      <section name="MediaAssets"
type="System.Configuration.SingleTagSectionHandler, System,
Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
      <section
name="ApplicationAuthentication"
type="Microsoft.SharePoint.IdentityModel.ApplicationAuthenticationConfigurationSection,
Microsoft.SharePoint.IdentityModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
/>

      <section
name="CustomCaptureSection"
type="Microsoft.AnalysisServices.SPAddin.ReportGallery.CustomCaptureSection"/>

    </sectionGroup>
    <sectionGroup
name="System.Workflow.ComponentModel.WorkflowCompiler"
type="System.Workflow.ComponentModel.Compiler.WorkflowCompilerConfigurationSectionGroup,
System.Workflow.ComponentModel, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35">
      <section name="authorizedTypes"
type="System.Workflow.ComponentModel.Compiler.AuthorizedTypesSectionHandler,
System.Workflow.ComponentModel, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" />
      <section name="authorizedRuleTypes"
type="System.Workflow.ComponentModel.Compiler.AuthorizedTypesSectionHandler,
System.Workflow.ComponentModel, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" />
    </sectionGroup>
    <sectionGroup
name="microsoft.sharepoint.client">
      <section name="serverRuntime"
type="Microsoft.SharePoint.Client.ClientServiceServerRuntimeSection,
Microsoft.SharePoint.Client.ServerRuntime, Version=15.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c" />
    </sectionGroup>
    <sectionGroup name="ReportingServices">
      <section name="DataExtensions"
type="System.Configuration.DictionarySectionHandler" />
    </sectionGroup>
    <sectionGroup name="Bpm">
      <section name="FCODaoProviders"
type="System.Configuration.DictionarySectionHandler" />
    </sectionGroup>
    <sectionGroup name="reportserver">
      <section name="redirection" type="Microsoft.ReportingServices.SharePoint.Configuration.RSRedirectConfigSection,
RSSharePointSoapProxy, Version=11.0.0.0, Culture=neutral,
PublicKeyToken=89845dcd8080cc91" />
    </sectionGroup>
    <section name="microsoft.identityModel"
type="Microsoft.IdentityModel.Configuration.MicrosoftIdentityModelSection,
Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" />
  </configSections>
  <microsoft.sharepoint.client>
    <serverRuntime>
      <hostTypes>
        <add
type="Microsoft.SharePoint.Client.SPClientServiceHost,
Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c" />
      </hostTypes>
    </serverRuntime>
  </microsoft.sharepoint.client>
  <SharePoint>
<CustomCaptureSection createProcessMethodForSnapShot="0"
snapshotCaptureTimeoutSecods="300" maxSnapshotsCount="19"
>
<Handlers>
</Handlers>
</CustomCaptureSection>


</configuration>

After adding these entries…your PowerPivot and PowerView snapshots will work.

Enjoy,
Chris

 

Oracle Portal to SharePoint Migration Scripts

It has been unbelievable the number of emails I have received on this.  As a business person, I know that an Oracle Portal migration from scratch will cost a company between $50-100K USD at a minimum and you won't even come close to what I built (I guarantee it).

Unfortunately, I have not really made the effort necessary to make this into a product that will just do what people want it too. It would have been worth it for me to do it at 25Klicense.  This is because with my daily duties only that amount would have been worth the effort to help you and would have been my opportunity costs with helping all of you in the world.  But people didn't want to pay that…which I understand and I get it ( just like I get some apps in the SharePoint store really suck).

Therefore…I am releasing the scripts for free. Why?  Because it is the right thing to do.  With all the other things I have going on, it is the only thing that makes sense.  Why make the world waste time on things that just make sense and is needed and I have already done?  Aside from being straight to the point with my "perspectives", I do have a point in everything I do.  It's marketing, it's business, it's not personal…but I am a good guy when the dust settles.  I do the right thing when it is needed. 

So without further ado…the scripts for migrating from Oracle Portal to SharePoint with FULL FIDELITY are posted here:

https://oracletosharepoint.codeplex.com

If you would like to make a contribution for the fact that this will save you 25-50K in consulting costs, please do…it will help me to keep building shit that everyone wants.  PayPal whatever you feel right (25K would be nice) to chris@architectingconnectedsystems.com.  Good luck modifying for your environment…my cost is 25K to help you modify….otherwise your smart people and can figure it out!

Your welcome,
Chris

MVP Forum Stats – MSDN Forum Jam starts Dec 1st!

The next MSDN Forum Jam will start Dec 1st and go through the end of January 31st, 2014.  The prizes are going to be pretty kick ass this year, so get ready now!  So watch for a blog post in the next couple of weeks for more details (prizes, rules, helpful hints, etc).  For those of you not familiar, MSDN Forum Jam is a contest I hold every year to see who can rack up more points in a set period in the MSDN Forums.  Notable winners of past forum jams include people I'm sure you know (all very talented individuals):

  • Maarten Sundman
  • Amit V
  • Ivan Sanders
  • Clayton Cobb
  • Marc Anderson
  • Alpesh Nakar
  • Cory Roth

Links to previous ForumJams:

Congrats to Trevor for taking the lead, Paul has had a grip on first place for quite some time!  Trevor might be hard to beat in Dec, he has been practicing for the event. Also welcome to Hemenrda Agrawal to the top five…right into second place!  Additionally, welcome to the new SharePoint MVPs, there are 34 of you. And yes, I officially added myself to the list now [H] My goal is to catch up to Mikael Svenson this go around, I almost caught up with him last time.

For those of you that are not showing any stats, just send me a link to your profile page on MSDN and I'll refresh the list.

< td>Wei Du
Name Points Posts Answers
Trevor Seward 52970 1341 3063
Hemendra Agrawal 45036 901 3031
Paul stork, MVP 32378 875 1901
Margriet Bruggeman 26396 450 761
Gokan Ozcifci 20717 752 733
Dave Hunter 20365 340 1475
Mike Smith MCT MVP 20095 479 1322
Serge Luca [MVP] 15095 239 1094
Marc D Anderson MVP 14990 305 1161
Ivan Sanders 14940 320 1092
Romeo Donca 14010 287 860
Jason Warren 13910 435 764
Paul Galvin 13785 174 1157
Waldek Mastykarz MVP 12329 163 605
Peter Holpar, MVP 11470 211 719
Cornelius J. van Dyk 10179 136 749
Mike Oryszak 9580 164 747
Pratik Vyas [MVP] 8857 132 656
John D. Ross 8850 230 636
Alberto Diaz Martin – MVP 8650 424 452
Moonis Tahir 8540 101 666
Scot Hillier 8327 167 552
Brandon Atkinson 8245 176 398
John Timney MVP 7195 141 533
Fabian André Gehrke 6815 150 376
LauraRogers MVP 6810 181 456
Christopher Clement 6186 142 357
Dhirendra Yadav 5934 106 392
Mikael Svenson 5800 186 335
Ashutosh Singh 5383 110 302
Chris Givens 4775 153 298
Gary Lapointe (MVP) 4520 92 362
Wictor Wilén [MVP] 4395 78 277
Jamie McAllister 4115 89 257
Giuseppe
Marchi MVP
3535 173 221
Randy Drisgill MVP 3520 86 269
Kris Wagner – MVP 3495 93 261
Ishai Sagi[MOSS MVP] 3265 28 289
Jennifer Mason 3175 66 237
Michael Nemtsev [MSFT] 2895 51 229
Becky Bertram 2730 59 202
Ayman El-Hattab 2725 114 119
Sohel Rana MVP 2625 43 200
Ivan Padabed MVP 2570 50 199
Spencer Harbar [MCM] 2536 83 140
Doug Ware 2465 68 171
Geoff Evelyn 2451 51 177
Edin Kapic 2375 47 161
XVanneste [MVP] 2270 112 115
Mirjam van Olst [MCM] 2220 63 151
Arnault Nouvel 2200 56 138
Lionel Limozin 2135 166 108
Sangha Baek MVP 2130 59 148
Chris McNulty 1993 40 128
Michal Pisarek MVP 1960 34 149
Liam Cleary [SharePoint MVP] 1930 49 136
Destin Joy MVP 1865 83 131
Matthew McDermott, MVP 1820 25 152
Gaetan Bouveret 1645 5 146
Gabriele Del Giovine 1635 93 99
stephane eyskens 1530 35 103
Jimy Cao 1510 0 122
Bandar Alsharfi 1491 1 0
Serge_Tremblay 1490 44 107
Keith Tuomi 1435 54 84
Steven Van de Craen 1345 30 85
Francesco Sodano 1285 27 88
Sean Wallbridge – SharePoint MVP 1260 32 91
Tobias Zimmergren [MVP] 1190 31 78
Eric Shupps [MVP] 1175 2
8
91
Kanwal Khipple 1120 21 85
Natalya Voskresenskaya 1105 34 75
Rob Windsor 1085 29 69
Romeo Pruno 1042 47 69
Andrew Woodward 995 13 89
David Martos MVP 980 50 47
Gavin Barron 975 229 87
Vince Rothwell 975 5 87
Todd Klindt 935 41 61
Jan Tielens 880 4 80
John Holliday 792 7 18
Darrin Bishop 785 16 60
Wes Preston 780 20 57
Philippe Sentenac 735 12 59
Andrew Connell [MVP] 650 12 51
Darko Milevski 585 11 45
James Milne 535 7 45
Asif Rehmani, MVP 500 19 36
Pierre Erol Giraudy 482 32 26
Paul Schaeflein – MVP 415 14 29
Nicolas Georgeault 390 6 27
Nick Swan 365 5 32
Amanda Perran 365 11 26
Amanda Perran 365 11 26
Thomas Vochten 350 9 20
Marwan Tarek – MVP 340 7 25
Jeremy Thake 335 14 15
Renaud Comte 330 0 32
Ben Robb 310 9 21
Thorsten Hans 310 8 25
Jerry Yasir MVP 235 4 19
Cathy Dew 220 27 14
Fabio Franzini 220 4 2
Bil Simser [MVP] 215 12 11
Panagiotis Kanavos 205 8 12
Salvatore Di Fazio 190 1 18
Kevin Laahs 175 5 14
Sébastien Sougnez 170 1 12
Christoph Müller 165 23 0
Daniel Wessels MVP 160 14 7
Michael Greth 160 2 13
Ai Yamasaki 160 1 15
Alain Lord – MVP 155 3 12
Ricardo Muñoz 140 8 8
Agnes Molnar – old 130 0 12
Ivan Wilson 120 2 11
Bob Mixon – SharePoint MVP 115 0 9
Sharad K 110 4 6
Steve Sofian 105 4 8
Hans Brender 105 4 7
Chris O_Brien 100 2 8
Adis Jugo 100 6 5
Andrey Markeev [MVP] 90 7 4
Alan Richards 90 1 6
Becky Isserman 90 0 9
Kathy Hughes 90 7 4
Ton Stegeman [MVP] 85 0 7
Ed Musters, SharePoint MVP 85 2 5
Shai Petel 85 7 4
Toni Frankola 80 0 5
Sahil Malik 80 0 8
Vlad Catrinescu 72 2 2
Sarbjit Singh Gill 65 1 5
Chandima [ MVP SharePoint ] 65 2 5
Andres Felipe Rojas Parra 65 5 2
Alex Pearce 60 1 4
Dan Holme 55 4 3
Shane Young – MVP 50 1 4
Fabrice [MVP] 50 5 2
Igor Macori 50 2 4
Sampathperera 50 0 5
Todd Bleeker 49 1 3
Benjamin Curry 45 1 3
Matt Ranlett 40 2 2
Haaron Gonzalez 40 0 3
Reza Alirezaei – MVP 35 0 3
Didier P. Danse 30 0 3
Robert L. Bogue [MVP] 25 0 2
Muhammad Imran Khawar 25 0 2
Claudio Brotto 25 3 1
Yaroslav Pentsarskyy 25 11 2
Marat Bakirov 20 2 1
Eli Robillard 20 0 2
Shane Perran 20 0 2
Carsten Keutmann 15 1 1
Alexander Romanov MVP 10 0 0
Brian Farnhill [MCP] 10 0 1
Joseph_tu 10 0 1
Rehman Gul 10 0 1
Wouter van Vugt 10 0 1
Atsuo Yamasaki 10 0 1
John P White 10 0 1
Dave Coleman 10 0 1
Julien Chable 10 0 1
Thiago Soares 5 1 0
Aleksandr Chervyak 5 1 0
David Sánchez Aguilar 5 1 0
Sezai Komur 0 0 0
Guillaume Meyer 0 0 0
Liang Han 0 0 0
Marius Constantinescu 0 0 0
Masaki Nishioka 0 0 0
Nicki Borell 0 0 0
Robert Voncina 0 0 0
Arno Nel 0 0 0
Rouslan Grabar 0 0 0
G Vijai Kumar 0 0 0
Valy Greavu 0 0 0
Randy Williams 0 0 0
Matt Smith 0 0 0
Dieudonne 0 0 0
Nguyen Ba Quang 0 0 0
Steve Curran 0 0 0
Debbie Ireland 0 0 0
Riwut Libinuko 0 0 0
Bill Brockbank 0 0 0
Jing Ma 0 0 0
kWazar 0 0 0
Shailaja Muthu Kumaran 0 0 0
Ed Richard SGC 0 0 0
Muhanad Omar 0 0 0
Todd Baginski 0 0 0
Mark Orange 0 0 0
Shady Khorshed – MVP 0 0 0
David Mann 0 0 0
Hiroaki Oikawa 0 0 0
Penny Coventry MVP 0 0 0
saifullah 0 0 0
Rob Foster 0 0 0
Pierre Vivier-Merle. 0 0 0
Dave McMahon 0 0 0
Steve Smith 0 0 0
Mohamed Zaki 0 0 0
Peter Yu 0 0 0
Brendon Schwartz 0 0 0
Bill English61 0 0 0
Daniel Seara 0 0 0
Stephen Cummins 0 0 0
Daniel Larson 0 0 0
Ted Pattison 0 0 0
Loke Kit Kai 0 0 0
Hilton Giesenow 0 0 0
Kamil Jurik 0 0 0
Sony Setiawan 0 0 0
Fabian Imaz 0 0 0
Agusto Xaverius Sipahutar 0 0 0
0 0 0
Robin Meure 0 0 0
Zac Smith 0 0 0
Juan Larios 0 0 0
Andre Lage 0 0 0
Michael Noel 0 0 0
Marianne van Wanrooij 0 0 0
Augusto Simoes 0 0 0
AMOL GHUGE 0 0 0
Emre BALCI 0 0 0
Martin Harwar 0 0 0
Nick Kellett 0 0 0
Masatoshi Kondo 0 0 0
Ruven Gotz 0 0 0
Dux Raymond Sy 0 0 0
Stephen Cawood 0 0 0
Elaine van Bergen 0 0 0
Rodrigo Pinto 0 0 0
Dmitry Plotnikov 0 0 0
Mark Rhodes 0 0 0
Thuan Nguyen 0 0 0
Jason Kaczor 0 0 0
Veronique 0 0 0
Peter Carson 0 1 0
Samuel Zuercher 0 0 0
Christian Stahl 0 0 0
Michal Bojko 0 0 0
Scott Jamison 0 0 0
Christian Buckley 0 0 0
Antonio Maio 0 0 0
Domyoung Kim 0 0 0
Gerardo Reyes 0 0 0
Jean 0 0 0
Nabil 0 0 0
Kevin Trelohan 0 0 0
Paul Olenick 0 0 0
Colin Phillips 0 0 0
Alistair Pugin 0 0 0
Amardeep Singh 0 0 0
Symon 0 0 0
Seung-Jin Kim -1 -1 -1
Saed Ahmad Shela -1 -1 -1
Sundararajan Narasiman -1 -1 -1
Lei Qin -1 -1 -1
Juan Pablo Pussacq Laborde -1 -1 -1
Stanislav Vyschepan -1 -1 -1
Alexey Sadomov -1 -1 -1
Susitha Prabath Fonseka -1 -1 -1
Noorez Khamis -1 -1 -1
Martin Wilhelm Angler -1 -1 -1
Radi Atanassov -1 -1 -1
Fernanda R Saraiva -1 -1 -1
Patrick Guimonet -1 -1 -1
Hoyeon Kim -1 -1 -1
Christian Glessner -1 -1 -1
Jeong Woo Choi -1 -1 -1
Yasir Attiq -1 -1 -1
Shuguang Tu -1 -1 -1
basquang Nguyen -1 -1 -1
Panagiotis Kanav -1 -1 -1
Joris Poelmans -1 -1 -1
Adams Chao -1 -1 -1
Mohanad Omar -1 -1 -1
vivekthangswamy -1 -1 -1
Elczar Peralta Adame -1 -1 -1
Ricardo Jose Munoz -1 -1 -1
Xizhang Chen -1 -1 -1
Jake Dan Attis -1 -1 -1
Goran Husman -1 -1 -1
Fumio Mizobata -1 -1 -1
Carlos Segura Sanz -1 -1 -1
Will Ho -1 -1 -1
Ruben Alonso Cebrian -1 -1 -1
Baowei Guo -1 -1 -1
JinHo Baek -1 -1 -1
Qifeng Zhao -1 -1 -1
Fabian Moritz -1 -1 -1
Juan Manuel (Manolo) Herrera -1 -1 -1
Juan Andrés Valenzuela -1 -1 -1
Hector Insua -1 -1 -1
Yoshiaki Nishita -1 -1 -1
Gustavo Adolfo Velez Duque -1 -1 -1
Jakub Gutkowski -1 -1 -1
Joy Rathnayake -1 -1 -1
Mohammed A. Saleh -1 -1 -1
Juan Carlos Gonzalez Martin -1 -1 -1
Daniel William Brown -1 -1 -1
Fengbiao Liang -1 -1 -1
Chee Meng, Patrick Yong -1 -1 -1
Majid Ardforoushan -1 -1 -1
Anton Lavrov -1 -1 -1
Vladimir Medina -1 -1 -1
Oksana Prostakova -1 -1 -1
Kazuhiko Nakamura -1 -1 -1
Qiuguang Zhao -1 -1 -1
Woodrow Windischman -1 -1 -1

SPStore Automater and SPStore App Review

Ok, I decided to look at all the Apps in the SharePoint App store last week.  This started as a little harmless click on each app, download it, install it, play with it, rate it.  Very simple.  After about the first 20, I decided…this sucks.  So I said, there has to be a way to automate the install of all the Apps!  So, two days later…I successfully built a tool that will download all the apps, their details and their app cab file.  Everything gets recorded into an App details database and the files are saved to a configurable directory.  I will tell you, it is pretty sweet to look at an app content page that has all the apps loaded on it without doing anything.

I learned a *ton* as I went down this little rabbit hole.  The first thing I learned, that you won't find anywhere else, is that each farm will initialize itself with a file from the office.microsoft.com servers.  You can find this initialization xml here:

https://office.microsoft.com/Config15

The XML file defines all the end points that the Office Apps layer will use when performing various tasks.  As you can see, the file has a lot of endpoints.

When your goal is to download and install an app, many of the steps behind the scenes are abstracted away from you.  There are many steps involved:

  1. Open your site, browse to the "Add an app" link
  2. Browse to the "SharePoint Store".  In reality, this is a page hosted on your sharepoint server that is simply making JSON calls to the office servers
  3. The page will request the list of all Apps using (http://spservername/_layouts/15/storefront.aspx?task=GetApps&bm=US&cm=en%2DUS&category=&free=0&sort=7&query=&catalog=0).  This JSON is the list of all apps.  There are currently 240 of them in the US marketplace (at the bottom of this post is a CSV file with all the app details).  My code knows how to pull this information and save to a database, so I have a full list of all apps and all of their details.  This was helpful in my review process so that I didn't need to create some massive spreadsheet with all the details typed in!
  4. Clicking on an app will pull down more specific details about the app using this url (http://spservername/_layouts/15/storefront.aspx?task=GetAppDetails&bm=US&cm=en%2DUS&appid=APPID&catalog=0").  This app detail gives you the information like if it is a paid app, whether it includes a trial license capability, etc. 
  5. Once you are on a page that allows you to "Add" an app, you click the "Add It" button.  What happens here is a post back occurs on your SP Server and a redirect is generated to the office.microsoft.com marketplace.
  6. When you arrive at the marketplace, cookies will be interrogated to see if you have logged in via LiveID.  If you have not, you are redirected to the LiveID servers for auth
  7. Once authenticated, you are returned to the marketplace using a special cookie identifier to rebuild your session
  8. You are then prompted to confirm that you really want the app, upon confirmation, you are redirected back to your sharepoint site via a HTTP GET with all the necessary license details in the querystring
  9. Your SharePoint server will take these details and do a validation post behind the scenes to confirm that the app and license match – there is no tricking it here
  10. Once the license is validated, it will save the information to the AppManagement database tied to your App Management Service Application
  11. It will then intitiate a download of the app's cab file from the office servers using this url (https://office.microsoft.com/client/15/appinstallinfo/query?cmu=" + contentMarket + "&clientToken=" + rawXMLEntitlementToken + "&ret=0&av=" + av + "&build=" + build + "&origin=" + origin + "&corr=" + corr;).  this url contains your clientToken which is the validation that you have purchased the app from the marketplace.
  12. This page will redirect you to the download page and in the body of the response will be the app cab file.
  13. Once downloaded, the file is installed into the target
  14. In a separate step you must trust the application. I was eventually able to automate this part. I attempted to do it via CSOM, but I get the dreaded "Sideloading of apps is not enabled on this site" error.  Bummer, no way to get an appinstance or productid from CSOM.  

So all those steps!  I didn't want to do that for every App (if you were to do this manually, it is going to take you a full day or two!), sooo…I built a tool for it.  By the way, it takes almost an hour to download and install everything!  This tools has the following features:

  • Downloads all app details from the App Store into a database (this is easy via one JSON request)
  • Allows you to Install an App from the App Store (you can pass it a list of the ones you want it to activate) – this is handy for building an environment that matches your production environment.  Or possibly rebuilding another environment
  • Downloads all App CAB files for all installed apps
  • Allows you to activate a list of apps on a web of your choosing (this would be after you have installed them)
  • Tool Side-Effect – This tool allows you to bypass the validation checking of the feature requirements on the App Detail page.  In otherwards, you can purchase free apps and download their CAB file, even if you can't use it because it is O365 targeted
  • Both free and trial apps are supported, did not put in support for selecting a payment method to buy an app that didn't have a trial…that would be pretty dumb!
  • Supports on-prem and O365

I did try to be sneaky and hack the purchase API. It passes a special query string with the price and purchase model.  I tried to make everything a free app, but it was too smart for that.  They got lucky…

I have some clean up to do on the tool to make it something I would give out to the masses but it does work and works both for on-prem and O365. However, I'm also thinking if I do publish it, I may make it a product. Think…iOS app automated updater type of thing.  There isn't a UI that says, "Update All" in the SharePoint store interface.

Some things that suck about the Apps APIs:

  • AppId – the AppId is used everywhere (on the store, in the purchase api), except in SharePoint (well it is at least saved in the databse)!  When a basic user wants to add or remove an app, it is not the AppId that you use, it is an AppInstanceId, or the completely different ProductId passed in the license.  Consistency is key here and this needs changed, see my next items…
  • For automating the "Trust It" part of the process – You can't get the product id to pass into the appdownload function when you want an app to be installed in your web. You have to query the app management database *directly* to get the product id.  I think this is stupid.  You should just be able to pass the AssetId to get the app to install in the web.  This is probably one of the reasons there are no CSOM methods to install an already existing app in a web (without side-loading it).  This needs fixed!
  • Adding an app – each time you add an app to a web, the content database that contains that web will download a copy of the app (from the office app store on the internet) into the database.  There is no central repository for these apps by default.  The AppCatalog site is needed for this, but I don't think it is downloaded into the catalog and I'm pretty sure it will pull it from the catalog into the local database anyway, this is a waste of space.
  • Uninstalling apps – there is no easy way to get all the AppInstanceIdsproductIds.  I had to query the database directly to get them to uninstall all apps after I was done testing.  The APIs do not expose this so its a manual process without my tool.
  • There is a database leak in the AppPrincipals table.  Each time you add and remove an app, a new entry is added, but not removed on removal.  not a big deal, but could cause problems later and needs to be fixed.
  • App name versus App name versus app part name – this was weird, there are cases where these are all different. Makes it confusing when other people have similarly named appsapp parts.  Microsoft needs some governance here.  Also wondering what happens when you upload an app part with the same name as someone else?  Bet its not good….#badhacker
  • When you have so many App parts in the UI, you really need a search feature!  Clicking the next arrow 10 times to get to the end just isn't cool.
  • Apps that are deployed to Azure require O365 and don't work on-prem, you need special OAuth tokens to pass to the remote Azure app

So how do I rate all these Apps?  And what is some common things I see as issues with the App Model?  It's pretty obvious that no one has ever posted a "here's how you write an App the proper way" type of document.  Lots of technical "how to's", but no common sense "must dos".  Well, here you go on my observations:

  • Business – Come on Man!  Those of you that put an app out there and are charging for it when someone put one out there for free are just stupid.  Do an analysis before you put something in the app store.  Don't waste your time or other people's time!  It's called a SWOT analysis by the way for you non-MBA types.
  • Complexity – There are very few sophisticated apps in the marketplace.  Lots of simple ones, but the ones that did put in effort, really show.
  • Feature Enablement – Its unfortunate that the SP Store page doesn't tell you what you need as far as feature pre-reqs to install some apps.  It just says "You can't install that app".  In the app details (which are hidden on the page and in the json), it will tell you what features are needed that you must enable (for instance, project server feature must be installed for some apps).  It would be nice if it gave you the option to enable the missing feature directly on the page
  • Navigation – If you have an Azure hosted app, put the damn navigation at the top to get back to my site!
  • Scalability – Most apps use an App list for data storage.  I can see these lists filling up with many many items over a long period of time.  This will be problematic.
  • Ribbon – higher quality apps integrate with the ribbon in some manner.  you should think how your app will do this
  • App Testing – It was painful to add a new page for every app I wanted to test and I can see trying to add many "cool" app parts to the same page can clutter the page
  • Preview features – Please don't make us go to a page with your app part on it.  You should at least give us the courtesy of a preview tab!
  • Centralized data storage – The biggest issue I see with apps is there is no sandbox area that is shared storage.  It is completely unacceptable to have the same app deployed on multiple sites with each one getting its own list
  • Trials – People that publish an app without a trial and have a price on it…good luck with that.  I'm not buying your App and no one else should either, don't buy an app unless you can trial it first

Before we get into my rating, some interesting "awards" for the apps that I put together:

  • Best overall App – this was tough, but in the end, Nintex has had that up there for a while and it is really sweet design
  • Most Expensive App – Booking of Resources – really…WTF…$899.99 for that piece of #$^&$?
  • Most over-prices apps – SONJAsAPPS
  • Most Apps of same type – it was like a tie between image carousel apps and map apps…how many of these things do we need people?!?  Come on man!
  • Most Fun App
    Cheezburgers
  • Most Creative App – Colour Lab
  • Highest Quality Apps – Layer2
  • Lowest Quality Apps – Point8020
  • Dumbest App – Spallery
  • Most Complex – Kodak Imaging App
  • Most Publisher Apps – Microsoft with 22, SONJAsAPPS with 17 but they don't count, so SR1 Development Limited get the award with 11
  • Notable Mention – Avior GEO Location Utility

And finally, my CJG rating of all apps in the Office marketplace (at least the ones that are free and with trial, 30 of the 240 do not have a trial, those are the lame ones):

Title Rank Price Comment
Corporate News App 5 Free By far the best news app I have seen. You need this one!
Auctions Lite 5 $1.49 I can see HR or teams having fund rasiers with this. It’s a pretty sweet app!
BPMN Quick Guide 5 Free Awesome techneic of delivering document based content.
BlackCompass Visualizer for SharePoint 5 Free If you liked the Chart web part, you will love this stuff! Runs against list data
Nintex Workflow for Office 365 5 Free They are crazy partiers, but damn, they build some sweet apps (this is free???)
ODATA QueryBuilder 5 Free Pretty sweet tool. Very nice usage of SharePoint App model!
My Places 5 Free Its simple, its sweet and it works. Very nice. Good for an HR page or two.
Layer2 Cloud Connector App for SharePoint 5 $249.99 The design and UI is amazing with this app. The auth support is even better, o365 or ADFS. This is a real app.
User Redirect Plus 5 $9.99 Very ingenious app, definitely distinguished itself from the pack.
Cheezburgers 5 Free At first I was like WTF is Cheezburgers, then I knew. Awesome. Content is king, especially funny content.
Gimmal Drop Zone App for SharePoint 2013 5 Free Oh yeah, this is good stuff. Needs an on-prem version
Colour Lab 5 Free Awesome. A web based HexFinder tool…love it
HelloSign 5 Free This has HUGE potential. App is free, but the service is not
Layer2 Term Set Glossary 5 $7.99 Layer2 knows how to build apps, they need to be encouraged to build more (oh, I guess I just did)
HelloFax 5 Free This has HUGE potential. App is free, but the service is not
BC Site Tools 5 Free I LOVE code generation tools, this one is far better than the single piece meal ones
SharePoint Manager 2013 Online 5 $99.99 Awesome. Works on-prem too
Avior GEO Location Utility 5 Free OK, now we are talking! Something that really adds value. You can add GeoColumns to your lists!
ND|TagSearch 5 $3.99 I hated that we lost the vectors in SP2013 search, but this tool tried to replace our lost functionality with document tag clouds
The Needs App 4 $29.99 High performance selling was a big thing at IBM, an app that improves people thoughts about customer management is always good
BS WordPress Blog Reader 4 Free COntent is king, any way to get your content to users is a good thing.
REST API Demo 4 Free A nice tool to help those of you just starting out with REST APIs in SP2013
Quote of The Day 4 Free Again, I love content push like this. As long as a bad quote doesn't show up like "Shit happens"
vCURRENCY 4 Free Allows you to put currency rates on a page
Dropbox Import 4 Free Allows you to move your dropbox items into SharePoint libraries
Reports and Documents Generator 4 $39.99 Sweet doc generation from sharepoint list data
AE Daily Dilbert App Part 4 Free Fun app, the image displays so it works
SofTract Copy/Move Items 4 $1.49 Integrates into the listitem ribbon, allows you to move items. Cool
QRCode App for SharePoint 4 Free Generates a QR Code from statis app part property. Would be nice if you could generate based on querystring or form parameter
HP ePrint 4 Free This is sweet! Think moble device printing!
metaEngine Easy Search 4 $1.99 Shows how to work with search REST APIs. Provides some more simple UI elements than a search center.
In Out Board 4 $1.99 What a refreshing app. If you had Lync you'd already have this 🙂
Countdown Timer to Any Date 4 $1.49 Nice, simple, valuable – you could still do this with basic javascript, but…whatever
AvePoint Task & Calendar Sync for Office 365 4 Free App is free, but you need an AvePoint account. Neat idea
My SharePoint Sites 4 $1.99 Oh yeah…this is a good one! Navigation in sharepoint is soo bad
Decision Maker 4 Free Not an everyday business usage type of thing, but fun.
Facebook Wall 4 Free Cool, nice documentation
ShareIt 4 Free Not bad, only app that I have seen that does this in the app store
World Clock and Weather 4 Free Watch out bamboo web parts…there is a new sheriff in town!. Shows weather
CarouselSlider 4 Free This looks just like the eBay news slider we built. Only ours works no matter where you put it!
SPoodle Scheduling 4 Free Not bad, simple and useful.
Facebook Integration 4 Free Couldn't get this to work, but it looks pretty sweet. From what I can tell it will export your Pages library content to facebook
SharePoint File Explorer 4 Free A simple site explorer that is better than the out of the box one
Infoware Plus Forget Not+ 4 $9.99 Has some cool graphics, I can see people using this. Just need an on-premise version.
Tip of the Day 4 Free Pushing content that helps is great!
Exam Maker 4 Free Nice. Now if it would feed into an LMS, even better
ConnectWithUs 4 Free Simple effective app part for showing all your social media accounts
KODAK Info Activate Solution Limited Edition 4 $9.99 Ugg…SilverLight? Really? Poor Kodak…always so slow to adapt the ONLY app that forces you to download and install something. And what is with the title? That all being said…damn this is a nice app!
Business Contact Tracker 4 Free Lots of apps like this, but the UI really stands out with this one, very nice
Tweeting for Dollarz 4 Free Very cool idea!
Competition Tracker 4 Free Nicely built app. I see uses for this. Too bad its O365 only
Social Nucleus 4 Free Cool! Shows a social graph of your social contacts
Tip Of The Day Plus 4 $1.49 Allows you to put in your own tips
InfoBus eForm 4 $49.99 Wasn't aware that infopath rendering didn't work in O365? These guys have a form editing solution
TimeOff Lite 4 $4.99 ’d pay for this one. It does have some nice value to it. Worth checking out HR departments! It would get a 5 but I think most major companies have ERP systems that keep track of this sort of thing
Documents shared with me 4 Free Allows you to see your skydrive documents that others have shared with you
VisualSP (Beta) – In-Context Help for End Users 4 Free The fact it doesn’t simply redirect you our of your sharepoint instance is great. It integrates into the ribbon of lists to show context sensitive help items. Nice.
Poll App 4 Free I can see this being used by orgs. A safer bet than using the Survey list.
Social Squared Beta 3 Free A different UI thrown over discussion boards. You lose the reputation features if you use this.
CSV Uploader 3 $4.99 Very simple appUI, I can see use for this in orgs.
“Napa” Office 365 Development Tools 3 Free SDK for development
Important Messages 3 Free Just wish there was shared storage for cross websiteweb app display
Yammer App for SharePoint 3 Free Until Yammer gets there act together and plays nicely with the Redmond teams, they deserver mid range grades.
Google Office Locator 3 Free Maybe some value. Not sure. Too many map apps that do similar functianlity
Anniversary Timeline 3 Free Most people are getting private about their lives, not sure this app has much value
Bright Banner 3 Free Has a great documentation page and has some real world value.
News Ticker 3 Free Would be nice if you could configure to pull from remote account to display the values across all the app parts across all webssitesweb apps
SideKick 365 xRM 3 $119.99 If you don’t already have SalesForce.com or CRM Dynamics and are a small company…why not. Go for it. Price is crazy though…
SPLatestNews 3 Free Not sure why anyone would have this on their sharepoint pages.. Its like a google feed of the top news by category
HTML5 Video WebPart 3 $2.99 Simple HTML5 video player
Instant Consulting Practice 3 Free Evidentially I'm ready to be a consultant – good for single person O365 lawyers, but that's it
Tab Display 3 $2.99 Different spin on a news app. Only tab app, but competes against accordians. Not sure I'd pay 2.99 for this
Accordion Display App 3 Free Cool app I can see some people using this
Chat Web Part Touch 3 Free If you don’t have a instant messaging platform, this could replace it, but why do this when you can do the newsfeed????
QuestionBox 3 $1.49 Probably one of the better feedback apps
Employee Of The Month 3 $1.49 Not much to say about this, not bad, not great
Commercial Real Estate Deal Tracker 3 Free Microsoft example apps
Adlib PDF Publisher 3 Free Simple PDF generator. Provides more support for other document types, not just Microsoft
Meal Delivery 3 Free Microsoft example app
Order and Products 3 Free Microsoft example apps
Calendar Alerts For SharePoint 2013 3 $1.99 Possibly some value here. You decide. Nothing that made me excited.
Infoware Plus Image Navigation+ 3 $9.99 JAIC – this one you pay for pretty graphics
Web Analytics Integration 3 Free Rather than modify your master page to add google analytics, you can add this app part to track page data
BannerMaker 3 $239.99 There are lots of image carosels, not sure I would pay 239.99 for a designer tool when the output is the same
MySiteFinest 3 $139.99 Looks like a cool app, but again to pricey
Print List 3 $1.99 it provides a simple view of a list item that can be printed. I like the PDF output one better
Site Usage 3 Free Same data you can get from other APIs. But simple for those that don’t know how to get that data.
Dell Social Hub 3 Free It seemed like a cool app to start, but I couldn’t get it to do anything other than show Dell feeds!
Ultimate Slider 3 $30.99 I like the Corporeate News App way better! And its free!!! Why pay so much for this app? Don’t…
List Carousel 3 Free Another simple nes app
Bulk Edit 3 Free The UI in Project Server isn't very intuitive, this is a slightly better UI
Firma Digitale Remota 3 Free Another digital signature app. This space will be good, needs some work on the UI
vSlider Video Carousel 3 Free A better spin on all the news carosels.
SharePoint 2013 Media Center App 3 Free Only apps of its kind, allows you to connect ot Windows Azure Media Services to show remotely hosted videos
Resource planner 3 $699.99 If you don't have project server and you want something more than the out of box gantt chart, this may be an option
Project Management 3 Free Microsoft example apps
Pingar Metadata Extractor for SharePoint 2013 3 Free Bulk file uploader app, its ok
Contact Us Form 3 Free Basic contact us app part
Recommendation Sharing 3 Free Microsoft example apps
Site TreeView 3 $1.49 A cheap alternative to the SharePoint Manager Tool. I'm sure they will force the other tools prices down.
SofTract Visual CSV Uploader 3 $1.49 Allows you to upload data into a list using CSV files
TIM (Team Instant Messaging) 3 $1.99 Another chat platform. Again, only works in cnotext of the web it is isntalled on…why replace newsfeeds? It is persistenct
Ideas and Votes Tracking 3 Free Microsoft example apps
Publish All Enterprise Projects 3 Free Interesting app
Google Drive Import Beta 3 Free Imports content from your google drive to sharepoint library
From files to lists 3 $24.99 There are others, you need trial there guys
Novadia Phonebook 3 Free Phonebook search app
Collaboration Suite Quick Access 3 Free If you don't have a breadcrumb control, which is the case in O365, then this might help you search for sites in the site collection
OneBit Quick Poll 3 Free A polling app, I think their are better ways to do this
Export ListItem to Word 3 $599.99 Your #$&^*%& crazy to think people will pay $599 for this. This is a weeks worth of dev work at most.
Student Contracts 3 Free Microsoft example apps
Recruiting Helper 3 Free Microsoft example apps
Public Site Content Migration 3 Free Microsoft example apps
SideKick365 xRM PRO 3 $159.99 This is a PRO version? SideKick is pulling the wool over people's eye with their apps. NOT cool
Feedback and Comments 3 $1.99 A page rating app.
ContentCommander™ 3 $34.99 Gives you some cool "fucntion" key features when editing documents and items. Always wondering why Microsoft didn't give us that
Tool Tracker 3 Free Microsoft example apps
SP2 Power Search 3 $2.49 Anthing that can help end users work with SP Search are good
FlashPlayer 3 $94.99 These guys again…
Training Management 3 Free Microsoft example apps
SharePoint Object Explorer 3 Free Not as nice as the others
Idera SharePoint Library Analyzer 3 Free I can see some potential here with the type of app it is, but it didn't do anything for me the way it is
Computer Asset Management System 3 Free Microsoft example apps
Student Drop in Management 3 Free Microsoft example apps
BlueBridge List2PDF 3 $9.99 Was thinking this let you manage the columns and to edit a template, but alas, no. Simply exports the list columns to pdf. Not sure I'd pay 9.99 for this
UpdateCocktail 3 $189.99 Competes against the content search web part? Oh…and you get to pay $189 for it
AE Twitter App Part 3 Free another simple tweet feed app
Conservazione Sostitutiva 3 Free Good implementation of some compliance law. There should be more apps like this
ObilogicSharePoint2013RSSApp 3 Free Rss viewer
Fast Charts 3 Free Another replacement for the Charts web parts, not as good as the other chart app part
MozArt 3 $1.49 Free ones can accomplish the same goal
ThemeBuilder 3 $219.99 Probably their best app. Looks ok, seems pricey like all their other apps
Rdz RSSReader 3 Free An RSS reader app, simple.
SP2 CAML Query Tester 3 Free It only does CAML, there are other tools that bring in all the APIs into a single App
Instant Legal Practice 3 Free Evidentially I'm ready to be a lawyer
Rackspace Cloud Storage App for Microsoft SharePoint 3 Free Looks to be made for a very specific clientel from Rackspace. Design looks good
Infoware Plus Weather+ 3 $9.99 A weather app, that you pay for, again pretty graphics
Public Site Tools For SharePoint 2013 3 $49.99 An app to expose hidden O365 features.
Sports League Manager Starter (FREE Source Code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
Yammer Manager 2 Free couldn't get it to do anything
Image Carousel 2 Free Its a JAIC (Just another image carosel)
SideKick 365 MPM 2 $39.99 A simple loan management tool, not worth paying for
SiteMonitor 2 $3.49  
Mileage Tracker 2 Free I'd think most large companies have an interal way of tracking this on expense reports, if your a single consultant , mmaybe you would use this
Recruitment Manager Starter Pack (Free Source Code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
ConnectToSkyDrive 2 $649.99 Seriously, I'm not amused or impressed at this point
Action Tracker 2 Free Seems they tried to improve on a basic task list with a custom UI? Don't see value here
List data in Bing Map 2 Free Another map app
PeopleA-Z 2 $399.99 Nooo…overpriced again…
CheckIn 2 $169.99 Are you kidding me? Really? 4Square will give this to you for free…$169…LOL
SP2 Job Listings 2 $9.99 Shows your internal job listings. Not worth $9.99
Google powered Extranet search app 2 Free Why use google search again? The google appliance can't compete against SP2013 search
SideKick 365 LPM 2 $14.99 A simple lease management tool, not worth paying for
Test Center Starter Pack (FREE Source Code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
TalkFollowers 2 Free Supposidly this will post to both shrepoint and yammer feeds
SimplePages 2 $449.99 Really? $499 for something that you can do via the ribbon? Wolves…or better yet…muppets!
Seers Sticky Notes 2 Free Onenote Site Notebook? Guess if you don’t have OWA this may be helpful
DocumentsTreeView 2 $249.99 Your killin me smalls…
Analytics 2 $249.99 Too pricy, there are other apps that are cheaper and better
PublishingPages 2 $649.99 WTF…$699? Really?
YoutubeGallery 2 $9.99 Yeah no…there are free ones guys
SideKick 365 DCM 2 $29.99 A simple case management tool, not worth paying for
SimpleNews 2 $249.99 Simplenews…yeah, simple to write this app…easy to overcharge
CountDown 2 $89.99 Jesus…$89 for this?
Galleriffic App for SharePoint 2 Free Another picture gallery app
Content Type Explorer 2 Free Why do people need this again? And it errors out a lot
Course Designer Starter Pack (FREE Source Code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
Picture Gallery View 2 $9.99 Not worth buying, too many free ones
myFAQ 2 Free Don’t’ get the point of this app given you can do wikis that do the same thing.
Image Slideshow 2 $2.99 Nothing to see here, don't waste your time
Bing Office Locator 2 Free Just like all the other map apps
Instant Feed 2 $1.99 The image looks like it’s a pretty simple app. It doesn’t have a trial version. I don’t get why someone would pay for this when you can do a simply script web part to do the same thing
Smartpoint's Kanban – Easier Task Management 2 Free An attempt to replace out of box task views. Project server can do this
Rough Cut Editor Starter Pack (FREE Source Code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
Activities Tracker 2 Free Ehhh…
ISlider 2 $19.99 JAIC – does let a user pick the image
SlideShow 2 $199.99 another slide show app
TeamSpirit Doc Finder 2 $9.99 Not sure what the heck this does
KW Marquee 2 Free A newsfeed ticker (this was so 1996…)
RSS Viewer 2 $2.49 Another RSS viewer
Map App 2 Free another map app (could you tell from teh title?), at least this one provides direction features
Booking of Resources 2 $899.99 Not a very compelling app, I can see potential though, but was the first that I saw to have links to app list and site settings pages
QuickPoll 2 $199.99 Very quick to create a poll, no real features
Accordion Display 2 $2.99 Not worth the price. Especially when there is a free one.
Shreyan Sticky Notes 2 Free Looks to be the same as the other sticky notes. Why two in the app store?
_api JSON Viewer 2 Free simple rest json viewer for your URLsAPIs. Nothing that you couldn't do with other tools.
Google Maps for SharePoint 2 Free There are free ones
Timer Clock 2 Free Hmm…not sure what the point was…
Meet The Team 2 $3.49 Uses the same code as the Employee of the month
bill tracker 2 Free Really? Manage your bills in sharePoint? I'm thinking…no
Sticky Notes 2 Free pretty pictures…yeah
Tic Tac Toe Starter Pack (FREE source code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
Collage App 2 Free No value app
Daily Dilbert Strip 2 Free Fun. Not sure if they have the right to Dilbert, but hey, its funny no matter. It didn’t work though when I installed it. The image is broken link
Sports News On SharePoint 2 Free No real world value here unless you work for a pro sports team
Content Type Manager 2 Free You don't need this app
Locations Mapper 2 Free Uses Google maps and looks good, but not a lot of functionality here
Lightning Chat 2 $1.99 Doesn’t keep persistence after leaving the page, why replace LyncSkypeAOLetc
Invoicing Manager Starter Pack (FREE source code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
Pipeline Manager Starter Pack (FREE source code) 2 Free Point8020, Microsoft built example apps, you don't need to do it, quit cluttering the app store
Home and Back Buttons 2 $2.99 Because sharepoint navigation really doesn't work at all? Ouch… $2.99 for two button…lovely
SharePoint Security 2 $1.49 Funny, just shows a user and what they have access too. I wouldn't pay for this
Url Shortener Lite 1 Free Couldn't get it to work
Location Finder 1 Free Could fingure out how to display the map
My Locations 1 Free Very simple app, not much value here
SharePoint Amplifier 1 $9.99 Requires a blog site in O365. Tried to work with it, but it no worky
Staff Directory 1 $7.99 The staff directory is really the local web's user information list data, not your entire staff. Do not pay for this
Quick Info 1 $1.49 Not worth downlaoding
Locations Map Plus For SharePoint 2013 1 $9.99 No real difference from the others. This guy is smoking crack for charging $9.99…dumb
SP2 Feedback 1 $24.99 Simple feedback app…why $24.99? There are free ones
Corporate News 1 $399.99 Don’t buy this…waste of money when there are free ones.
2A QuickStart 1 Free A new window? Really? that is not sharepoint integration!
Stock Chart 1 $1.49 doesn't work
CertiViz 1 Free Doesn't work
Spallery 1 $1.49 Might be worst of all gallery apps
My Rubrica 1 Free A contact manager app…Outlook? iPhone? Not sure why you would use this app
RateMe Pro 1 $19.99 Have no idea what this does…
Brava Viewer   Free  
BPA CRM 2013 Preview   Free  
UMT Essentials Lite   $4.99  
Posta Elettronica Certificata   Free  
iGlobe Group Calendar   $89.99  
PROJILITY ProjectWare LiveWindow   $49.99  
TPG Risk Chart   $19.99  
MeetSweet!   Free  
Feedback Form   $1.99  
AvePoint Meetings for SharePoint Online   Free  
SOLVIN TrackTimesheet Go   Free  
iGlobe Integrator   $14.99  
TimeOFF Pro   $19.99  
Newsfeed Notifier   $1.99  
CS Milestone Trend Analysis   Free  
OneBit Survey Master   Free  
TPG MTA Chart   $29.99  
ImageGallery   $9.99  
RateMe Lite   $4.99  
General Knowledge Quiz For SharePoint 2013   $1.99  
MetaVis Information Manager for Office 365   Free  
ConnectYard for Sharepoint   Free  
TPG WBS Chart   $19.99  

Configure Workflow Manager to create lists

My good friend Fabian tweeted about a problem he was having with SharePoint 2013 workflows. 

http://fabiangwilliams.wordpress.com/2013/09/06/help-unable-to-create-list-using-sharepoint-2013-rest-api-in-spd2013/

It was an interesting problem that I have never seen anyone tackle before so the fact he was having a error wasn't surprising.  It did however peak my interest about the problem, so I asked him to send me his workflow. 

He exported his workflow as a template (solution file) and sent it over.  First issue I had was importing the workflow as a sandboxed or farm solution.  It would give me this crazy error:

svr-spwfe01 : Failed to load receiver assembly "Microsoft.SharePoint.WorkflowServices, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" for feature "GetItemsFromSPOListInstances" (ID: eb5838ef-cda9-42b2-9ea8-624f060d554c).: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.SharePoint.WorkflowServices, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' or one of its dependencies. The system cannot find the file specified.
File name: 'Microsoft.SharePoint.WorkflowServices, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c'
   at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& 

So I abandoned that idea and looked to import the XAML file like I did in 2010.  I created a 2013 workflow but alas, no xaml files are to be found in the "All Files" view.  Where do they go?  Well, there is a hidden list called "wfsvc".  It has no views on it so simply unhiding it won't allow you to browse the files inside it.  Attempting to create a view is also futile.  So I turned to Windows PowerShell, navigated to the SPFile that represented the workflow xaml file and replaced it with Fabian's.  Refresh of SharePoint Designer and bingo…I had all his info.  Sweet.

The main issue of Fabian's was that when he made the Web Service call he would pass a pre-created FedAuth token (yeah I told him he would have to figure out how to generate this in the future) which established a context for him.  This context was as his SharePoint admin account, but the actual running account (the "actor") was the Workflow service.  Of course the SP Admin account can do whatever it wants, but the workflow service cannot.  This workflow service account is NOT the account that the actual workflow manager backend window service is running under.  It is the Application principal account that is created for the workflow service.  If you browse to the database, you can see there are two database tables:

  • AppPrincipalPerms
  • AppPrincipals

If you browse the AppPrincipals table, you will find one or more principles.  Consider these to simply be user just like any other user, yet they are applications and as such, do not have a password.  You can find the ID of the AppPrincipal for workflow by taking the second index of the NameID for the item with title "Workflow" (NOTE:  This id is different in EVERY farm, which is a bummer):

  •  i:0i.t|ms.sp.ext|78cf7810-a2c9-497e-bffe-8c25368c8bc0@fcd171b6-20f6-443e-8aea-474a4b529e6e

This is the identity that will run the workflow.  If you review the permission mask in the AppPrinicpalPerms table for this appprincipal, you will see that it is set to "3" by default.  The enumerations for the masks are:

  • None
  • Guest
  • Read
  • Write
  • Manage
  • FullControl

"3" means "Write".  Which allows the workflow service to write out list items, but not to create lists.  This would require level 4 or higher.  You can elevate the permission mask with the following Windows PowerShell:

$web = get-spweb http://teams.contoso.com
$appworkflow = Get-SPAppPrincipal -site http://teams.contoso.com -nameidentifier 78cf7810-a2c9-497e-bffe-8c25368c8bc0@fcd171b6-20f6-443e-8aea-474a4b529e6e
Set-SPAppPrincipalPermission -AppPrincipal $appworkflow -site $web -right fullcontrol -scope site

Your workflow service app principal can now create lists!

Fabian will be researching how to add these app permissions in O365, of which he did here:

http://fabiangwilliams.wordpress.com/2013/09/08/actually-resolved-unable-to-create-list-using-sharepoint-2013-rest-api-in-spd2013/

Enjoy!
Chris