Presentation is loading. Please wait.

Presentation is loading. Please wait.

EBZ 321 Extending CMS 2002 Publishing Processes Scott Fynn Microsoft Consulting Services National Practices.

Similar presentations


Presentation on theme: "EBZ 321 Extending CMS 2002 Publishing Processes Scott Fynn Microsoft Consulting Services National Practices."— Presentation transcript:

1 EBZ 321 Extending CMS 2002 Publishing Processes Scott Fynn Microsoft Consulting Services National Practices

2 Agenda Workflow for Web Publishing? CMS 2002: Built-In Workflow Why Extend Workflow? Extending Workflow CMS 2002 Publishing Events External Page State Creating Web Author Controls Partner Solutions Deploying Workflow

3 Web Publishing: Content Management Server 2002 Web Content Management: Integrated suite of tools that facilitates the creation, publication, and maintenance of content for the Web. Workflow: A method of using software to enforce publishing processes.

4 Workflow for Web Publishing Human to Human Task Routing Example: Document Collaboration Human to Application Data Processing Example: Online Request Forms Application to Application Application Integration Example: Integrated Billing Systems Web publishing involves aspects of all three!

5 Built-In Workflow CMS 2002 provides: Three roles, three kinds of state changes Author (..who Submits) Editor (..who Approves or Declines) Moderator (..who Approves or Declines) Result: 1 content approval step. Moderators approve publishing details Moderators do not re-approve content!

6 More Built-In Workflow There are ten official page states The ones you expect: The page has been Saved by the Author The page is Waiting for Editor Approval The page is Waiting for Moderator Approval The page is now Published and live. The more subtle ones: The page is brand New and hasn’t been saved The page is Editor- or Moderator-Declined The page is Approved but not live yet The page has been Deleted or is Expired

7 Built-In Workflow Moderator Author Editor

8 Why Extend CMS Workflow? Email notification More approval steps, parallel steps More state transitions, timeouts Delegation Ad-hoc collaboration Trigger other processes

9 Email Notification Moderator Author Editor Email Email

10 Parallel Steps Author Editor - Marketing Editor - Graphics Editor - PR LegalReview

11 Extending Workflow Using CMS page state CMS 2002 publishing events global.asax or custom httpmodule Using external state (DB or XML) Use page GUID as key value Create your own workflow class Customize the web author console Partner tools Teamplate, Sourcecode

12 CMS 2002 Publishing Events Events raised in response to publishing actions Microsoft.ContentManagement.Publishing.Events Some events: Page Submitting / Submitted Page Approving / Approved Page Deleting / Deleted To consume these events: Use CMS’ handy posting event HTTP module Write your own custom HTTP module

13 Using CMS’ HTTP module Add HTTP module to web.config: Microsoft.ContentManagement. Publishing.Events.PostingEventsModule Add your event handler to global.asax with the following naming convention: _ public void Posting_Approved( Object sender, ChangedEventArgs e ) {}

14 Email Notification with the CMS Posting Events HTTP module demo demo

15 Writing a Custom HTTP Module Derive from IHttpModule Implement: Init(): use “+=“ to register the events Dispose(): use “-=“ to un-register the events Init(…) { PostingEvents.Current.Approved += new delegate( this.Eventhandler(…) ) } Create your custom event handler Compile and add new assembly to GAC Register HTTP module in web.config

16 Using External Page State Extend number of steps, parallel steps Database requirements: Store page state by GUID Store workflow steps Store users for each step Store state transition rules for each step Code requirements: Workflow class - state transition methods. Web forms for reporting CMS Web Author controls for integration

17 Custom Web Author Controls Inherit from BasePostbackAction Override Available with logic that decides if the “approve” link should show Detects user Looks up page state Override PerformActionBehaviour with your “approve” code. Add action to DefaultConsole.aspx

18 Code walkthrough Code walkthrough Creating a Custom Web Author Control

19 Development/Test Estimates Email Notification Simple: 1 week XML- or UI-driven: 3-4 weeks External page state (multiple >2 or parallel steps) Hardcoded steps: 2-4 weeks User interface: 6+ weeks

20 Dedicated Workflow Software SourceCode K2.NET 2003 TeamPlate

21 Teamplate Kevin Hein Vice President Business Development Teamplate demo demo

22 Deploying Workflow Start simple! Understand the business goals Speed? Correctness? Use an iterative design process Allow emergency workarounds

23 Summary Start with the “Out of the Box” workflow Use publishing event model to implement simple workflow extensions Use external page state and web author console for complex workflow extensions Partners offer powerful solutions Future: BizTalk Human Workflow Services

24 Community Resources http://www.microsoft.com/communities/default.mspx Most Valuable Professional (MVP) http://www.mvp.support.microsoft.com/ Newsgroups Converse online with Microsoft Newsgroups, including Worldwide http://www.microsoft.com/communities/newsgroups/default.mspx User Groups Meet and learn with your peers http://www.microsoft.com/communities/usergroups/default.mspx

25 evaluations evaluations

26 © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.


Download ppt "EBZ 321 Extending CMS 2002 Publishing Processes Scott Fynn Microsoft Consulting Services National Practices."

Similar presentations


Ads by Google