Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Mission Impossible - A SharePoint solution with no custom code

on

  • 729 views

Presentation held at the Norwegian SharePoint User Group on Februar 8th 2012.

Presentation held at the Norwegian SharePoint User Group on Februar 8th 2012.

Statistics

Views

Total Views
729
Views on SlideShare
723
Embed Views
6

Actions

Likes
0
Downloads
9
Comments
0

1 Embed 6

http://www.linkedin.com 6

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Si mer om hva den kan forvente av løsning!
  • Hvorfor byttet de til SharePoint...?
  • I et land med mer papirbaserte prosesser.Partnere med papirbaserte løsninger som vi (Statoil) må forholde oss til.Forklare mer om hva løsningen skal løse. Hva er arbeidsflyten osv. (Saksbehandling, søknader på områder osv.)Få frem at koding kunne være fristende pga. spesielle behov.
  • http://www.istockphoto.com/stock-photo-17579850-open-gift-box-with-blank-label.php?st=e467641
  • Eskil jobbe tett med kundene - forstå dokumentstruktur og metadataGjorde også valg av arkitektur og plattformLine kom inn litt senere, og jobbet tett med Eskil. Ingen av dem i nærheten av å kode.
  • Erstatter XXX from SharePoint 2007Veldig lite informasjon å finne på blogger o.l.!RBS-scenarier: streaming, avoidduplicatestorage, low-cost media
  • Fun fact: you CAN createdoc-setsinsidedoc-setsusingcode. For all practical matters, it seems to work fine!
  • Customer wish – not requirement
  • No support for centralized logging
  • And, for logging to the Windows Event log, you need a local registry setting to be added!Both ULS and Windows Event log also requires local access or similar to the physical server, and is hard to track in a load balanced environment.But, fortunately, a colleague had given me an idea for a simpler solution.
  • Note that «SPWeb» is required when logging in event receivers, otherwise it can be deducted via the context object.
  • http://www.istockphoto.com/stock-photo-7903601-cliff-dropping.php?st=10f0851
  • http://www.istockphoto.com/stock-photo-7394525-flexible-contortion-business-manager-in-box.php?st=5829126http://mindsharpblogs.com/ben/archive/2008/05/20/5501.html
  • NevneDocKit som verktøy?
  • Invest in understanding the scenarioInvest in understanding SharePoint «Out of the Box»RBS is not a panaceaDocument Sets are great, and will probably get betterBeware of coding – log to listsSize matters

Mission Impossible - A SharePoint solution with no custom code Mission Impossible - A SharePoint solution with no custom code Presentation Transcript

  • «Mission Impossible» A custom SharePoint solution with (almost) no code Thomas Svensen
  • The journeyWho am I Where did we do it Why did we do it Which choices What challenges How did it go
  • am I
  • Beginner to expert94 Data Warehouse99 Mobile Services05 Search based ads10
  • Wheredid we do it
  • A Norwegian company in the Energy sector – with officesin many countries
  • Document Management HistoryNo. of solutions Pre-historic 2004 2012
  • did we do it
  • 50,000documents,divided intogeographic and functional areas
  • Focus on «Out Of The Box» Less cost Less risk Faster rollout Support Easier upgrade Cloud ready! Fun 
  • Project teamEskil – arkitekt Line – altmuligkvinne Thomas – arkitektur, Thomas, og «Tante Sofie» utvikling og test sjekker du RBS? 2010 2011
  • Which choices
  • Which choices
  • The SharePoint Databases Content Config
  • SharePoint Database Size Need full backup/MS recommended max: 200 GB restore,Customer max: 50 GB so limits still apply!
  • Provisioning Givingsites using impressionPowerShell of hierarchy using PowerShell Portal Area 1 Area 1 docs Area 1 docs 100 100 20 GB 20 GB GB GBArea 1 docs Area 2 Area 2 docs Area 2 docs 100 100 100 20 GB GB GB GB
  • Portal 20 GB DemoArea 1 docs 100 GB Area 1 20 GB Area 1 docs 100 GB Area 1 docs 100 GB time Area 2 docs 100 Area 2 20 GB Area 2 docs 100 GB GB
  • Handover to Operations
  • Portal 20 GB Area 1 20 GBArea 1 docs Area 1 docs Area 1 docs 100 100 100 GB GB GB Area 2 20 GB Area 2 docs Area 2 docs 100 100 GB GB
  • Portal Shared Content Services farm 20 GB Farm Area 1 Search 20 GB Scope 1 Scope 2Area 1 docs Area 1 docs Area 1 docs 100 100 100 GB GB GB Area 2 20 GB Area 2 docs Area 2 docs 100 100 GB GB
  • Portal All sites Shared Content subscribe Services farm 20 GB to the «hub» Farm to ensure Area 1 Search full sync 20 GBArea 1 docs Area 1 docs Area 1 docs 100 100 100 GB GB GB Managed Metadata: Area 2 Terms Columns 20 GB Content Area 2 docs Area 2 docs Types 100 100 GB GB
  • Folder metadataFolderscan havemetadata,but there isno syncto documentsinside
  • Document set metadataDocumentsetshave theirmetadata,automaticallypropagatedinside it
  • Document Set EvaluationPros Cons• Easy for end users • Not mature• No coding • Little experience• Better findability anywhere• Promoted by Microsoft • One level only
  • Document Set FindingsNo «folder Existingspecificviews» metadata with sameNo required name stopsproperties syncing
  • Whatchallenges
  • Whatchallenges
  • Coding – event receiver on folderCustomer wish:Automaticallycreate threespecificdocument setswhen a«unit» folderis created
  • Time to codeFirst Full Propagate Look up Cleanup,version deploy standard managed bug fix,working metadata metadata, incl. test, struggling with logging document2 days5 days days days 10 20
  • Logging SHOULD be easy! Log.error(«Hello world!») The SharePoint version of «easy»... SPDiagnosticsService.Local.WriteTrace( 0, new SPDiagnosticsCategory( “Hello", TraceSeverity.Unexpected, EventSeverity.Error), TraceSeverity.Unexpected, “Hello world”); }
  • Still no logging
  • Ideal logging: Centralized No special Easy to turn Remotely in a loadEasy to write permissions on/off at accessible balanced required runtime farm
  • Log to a SharePoint list! Simple interfacepublic static void LogError(SPWeb web, string msg){ SPList logList = web.Lists.TryGetList("Logging"); if (logList != null) { var logItem = logList.Items.Add(); Easy on/off logItem["Title"] = msg; logItem.Update(); } Standard list}
  • Howdid it go
  • Does everyone make this mistake?
  • Size matters 450 400 350 300Gigabytes 250 200 150 100 50 0 On disk Reported by SharePoint Reported by SQL (adds metadata and (adds auditing, recycle "housekeeping") bin and more "housekeeping")
  • The journeyWho am I Where did we do it Why did we do it Which choices What challenges How did it go
  • Takeaways
  • Takeaways• Goal: Happy Users!• Path: Focus on «Out of the Box»• Risk: Missing on either of these
  • Questions?