SharePoint Custom Development


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

SharePoint Custom Development

  1. 1. Development Webinar Series SharePoint Web Development
  2. 2. Quick FactsAbout Us Approach Partnerships• 23rd Year • Vendor • Microsoft Gold• Grand Rapids & Independent • VMware Royal Oak • Non-reseller Enterprise• 30 Staff • Professional • Citrix Silver Services Only • Cisco Premier • Novell Gold
  3. 3. Microsoft Gold Partner Competencies Successes PinpointFour Gold Customer Microsoft’s official Excellence Award partner directoryEight Silver Virtual Technical Specialist (VTSP) 5-star rating Managed Partner Numerous Partner Awards
  4. 4. Expertise
  5. 5. Get Social with C/D/H@cdhtweetstech
  6. 6. Your PresenterMark JordanConsultantMCSD.NET, MCTS SharePointApplication
  7. 7. My First Computer (Actually, Dad’s) Circa 1982
  8. 8. Pedigree• Programmed first computer in 1982.• BS of Computer Science, Theory and Analysis in 1985• Programming for everything Microsoft starting in 2000• SharePoint programming starting with version 2003• One of more significant projects in my career was medical diagnosis software• Web, Windows, mobile, services, and everything in between still today
  9. 9. SharePoint OOB vs. Customization vs. Development• OOB – Lists – Settings – Pretty much anything you can do through the user interface – Web part pages• SharePoint Customization – Web part pages – Master pages – Page layouts – Use of tools such as SharePoint Designer and SharePoint Manager
  10. 10. SharePoint Development• Coded solutions• Deployments• Versioning and lifecycle• Can an administrator do it with the UI or external tool?• A development solution fits like a glove and not a mitten Vs.
  11. 11. SharePoint as a Platform• SharePoint is a great foundation on which to produce a solution• A security model for authentication and authorization.• A presentation model with web parts, caching, page layouts, and master pages.• Business connectivity for full viewing and editing of external data sources (i.e. databases).• Ref. Knowledge Transfer #26 Newsletter at ePointdevelopmentplatformforyou/
  12. 12. Let’s Imagine the Possibilities
  13. 13. Web Parts• Presentation of already-existing data in a way that is not provided out of the box• Opportunity to be creative in how to present, and enhance the user experience• OOB experience vs. one that is custom development:
  14. 14. DemoSmoke and mirrors?
  15. 15. Web Parts OOB ExperienceExample of news and calendar using OOB methods:
  16. 16. Developed Web Parts ExperienceExample of news and calendar using developed web parts:
  17. 17. Barton Malow
  18. 18. Barton Malow
  19. 19. Imagine the Possibilities• Web parts to present data from external source (i.e. Current incoming flights, social feeds, map mashups, etc.)• Web parts for abbreviated data entry• Web parts for …?
  20. 20. Internal- AND External-Facing Sites Our SharePoint practice does both internal- and public-facing sites
  21. 21. Chippewa Valley Technical College
  22. 22. Cedar Rapids, Iowa
  23. 23. Showcase: Simple ASP.NET application• Situation – Data exists in warehouse – A user has been using SQL Enterprise Manager to add/remove cash flow adjustment transactions relative to their Investran accounting transactions – User needed functional solution with validation control (read this as… not the potential to wipe out a slew of transactions by accident)
  24. 24. Requirements and Constraints• Application needs to be secure, to be used only by specific group of people• Database administrator specifies… – Name of view for data retrieval – Name of stored procedure to save data, which returns validation status code upon which the application needs to react
  25. 25. Approach• Application page in SharePoint• Leverage SharePoint security• No requirement for it to be pretty, so use out-of-the- box ASP.NET controls• Validation of field values
  26. 26. Screen Shot
  27. 27. Screen Shot
  28. 28. Screen Shot
  29. 29. Screen Shot
  30. 30. Screen Shot
  31. 31. Yet Another Example
  32. 32. Yet Another Example
  33. 33. Yet Another Example• Single feature that deploys 6 user controls (.ASCX)• The user controls are composited together to create tabbed interfaces for 2 types of searches: Case Inquiry and Orders & Opinions.• Controls dynamically create SQL queries.• 6 SQL tables that are a copy of data in Oracle -- re-populated daily via a scheduled process.• JQuery for UX.
  34. 34. Imagine the Possibilities• Data entry for any data point• Presentation of graphical KPI’s• Control a web cam with buttons on the screen• In SharePoint 2013, this is an even greater potential!
  35. 35. Everyone still with me?
  36. 36. Showcase: Automated Document Receipt and Filing• Situation – Documents sent in from the field – Filed from Outlook to Q: drive – Not easy to locate document; certainly not possible via meta data – Reference of documents needed by partners and staff; Q: drive not accessible by partners – Quantity of incoming documents can be high at times
  37. 37. Requirements• Have documents available in SharePoint for reference by partners and staff• Secure documents based on types and process stage• Q: drive stays!• Allow rules to be defined to auto-file incoming documents• Geographic “areas” and “fields” within areas are defined in external system.
  38. 38. Flow
  39. 39. Approach• Allow rules to be defined based on incoming document titles and originating email address• Have field reps send emails to new email address that goes to SharePoint document library• Automate filing of documents to certain folders based on defined rules• Secure documents at folder level• Use Business Connectivity Services to have a view into “areas” and “fields” data
  40. 40. Rules
  41. 41. Other Features of the Solution• Other features we accomplished – Custom document retention formula • Information Management Policy Settings • Custom policy – No less than 2 years, but only at Jan. 1 – Custom alerts • Blackberry browsers • Cleaner view (i.e. Less links, more info) – Custom timer job to update web part views when list views change • Resolves chronic problem (or feature, depending on point of view) in SharePoint – Automatic metadata assignment for Office document attributes
  42. 42. Imagine the Possibilities• Law firm needing to archive all correspondence to central place• Document management and archiving• Incoming form processing and redirection• …?
  43. 43. 15 Second Rest  The final stretch
  44. 44. Showcase: Entity Application• Situation – Need to view business entity data in easy-to- navigate screen – View related entity data • Banks (from SharePoint) • Banks accounts (from SharePoint) • Documents (from eDocs) • Entity Ownership (from data warehouse) • Entity change history (from SharePoint) • Entity status (from Nintex)
  45. 45. Multiple Data Origins
  46. 46. Requirements• Bookmarks (stored and retrieved from SharePoint user profile)• Mobile and finger friendly (iPad)• Desktop/laptop friendly• Aggregation of all data sources to functional view• Multiple sorting and filtering options
  47. 47. Approach• SharePoint application page• SharePoint search for documents• SharePoint web services to data warehouse data retrieval (fyi… REST was not restful for us)• Hyperlinks from entity to entity• Use Backbone JS for model/view design
  48. 48. Screen shot
  49. 49. Screen shot
  50. 50. Screen shot
  51. 51. Screen shot
  52. 52. DemoDog and Pony show?
  53. 53. Responsive Design• While we’re on the subject of mobile, you should know about Responsive Design• Current project utilizes – CSS3 – HTML5 – Modernizr js – Isotope js• Ref. Knowledge Transfer #33 Newsletter at: ResponsiveDesign/?nl=104&vt=W
  54. 54. Standard Web View
  55. 55. Mobile Web View
  56. 56. Even C/D/H …Redacted?
  57. 57. Questions? • Now is good • Later is good, too …
  58. 58. Thank YouRoyal Oak Grand Rapids306 S. Washington Ave. 15 Ionia SWSuite 212 Suite 270Royal Oak, MI 48067 Grand Rapids, MI 49503(248) 546-1800 (616) 776-1600