SlideShare ist ein Scribd-Unternehmen logo
1 von 52
Downloaden Sie, um offline zu lesen
Inside WSS sample shots
2008-12-31

This is screen shots from the samples from the book Inside Microsoft Windows SharePoint
Services 3.0 by Ted Pattison & Daniel Larson (ISBN 9780735623200).

The idea with these screen shots is to have a picture index to the book, which also gives view of what is
possible with WSS 3.0.

The code samples are downloadable from
http://www.microsoft.com/mspress/companion/9780735623200/

The samples has been executed on a Virtual PC Image downloadable from
http://www.microsoft.com/downloads/details.aspx?FamilyID=1beeac6f-2ea1-4769-9948-
74a74bd604fa&DisplayLang=en
This VPC has been updated to Visual Studio 2008. This means that the samples (which are 2005
version) will be updated during the first load (of each solution).
The screen shots are from the older VPC with only Visual Studio 2005.

Each heading is a folder in the samples. After the heading a short description of the purpose follows.
Sometimes also an installation instruction is given if needed. Usually a install.bat file exists in the
solutions.

Chapter01csHello_WSS_OM P.20
Console app that uses obj model



Chapter01csHelloWorld P.26
A feature, that changes the name of a site and reverses it at deactivation.




                                                                                                          1
Activated feature:




Chapter02csCustomApplicationPages P.50
The feature creates 7 application pages of which 6 is on the site action menu:




                                                                                 2
Layouts<FeatureName>ApplicationPage2.aspx P.56: Use SPGridView




                                                                    3
Layouts<FeatureName>ApplicationPage3.aspx P.56:




Layouts<FeatureName>ApplicationPage4.aspx P.58:




                                                     4
5
Layouts<FeatureName>ApplicationPage5.aspx:




                                                6
Layouts<FeatureName>ApplicationPage6.aspx:




                                                7
Chapter03csCreateNewSitePage P.65
Console app that creates a site page




Chapter03csCustomSitePages
A Feature that adds two menus to the top navigation bar. You must activate this feture from the
SiteCollection site for it to install.

P.86




P.70




                                                                                                  8
P.73




P.74




       9
P.76




       10
P.66




       11
12
P.81




       13
Chapter03csCustomBranding P.97
A SiteCollection Feature with two demo pages reached from the Site Actions.




                                                                              14
15
Move the mouse around on the page to discover what styles are in use. In this example the mouse
points to the site name in the upper left corner.




                                                                                                  16
Chapter04csLitwareWebParts P.99
A SiteCollection Feature including 6 webparts.
The webparts are installed locally in the webapp, which requires following:
Before running install.bat correct the path to the path to your WSS sitecoll like here:
       @SET BINDIR=quot;C:InetpubwwwrootwssVirtualDirectories80binquot;
Add to web.config:
       <SafeControl Assembly=quot;LitwareWebParts, Version=1.0.0.0, Culture=neutral,
       PublicKeyToken=74bad7277fe0d19equot; Namespace=quot;LitwareWebPartsquot; TypeName=quot;*quot;
       Safe=quot;Truequot; />
       <trust level=quot;Fullquot; originUrl=quot;quot; />
From the Site Settings on the SiteCollection the webparts can be previewed from the webpart gallery:




                                                                                                   17
P.110
Edit a page with a webpart template and add webparts to the zones




Three   different webparts:
   -     Contact viewer: Searches site for contact lists and show their content
   -     P.106: Hello World
   -     P.120: User Control: Loads a user control (.ascx)




                                                                                  18
P.123
A verb webpart adds menu items to the edit webpart menu:




And in display mode:




P.115
Manually write feed for the RSS viewer:




                                                           19
P.126
The list feed webpart can provide feed to the RSS view webpart




The provider (feeder) reads the lists on the site, which are then fed to consumer (viewer).
The RSS viewer also uses verbs.




Chapter06csAnnouncementsListConsole P.179
This is a console app that uses the obj model on the announcement list. Included is search.
Just a sample.




                                                                                              20
Chapter06csLitwareFieldTypes
This addin is not a feature, but deployed in
    - TEMPLATEXMLfldtypes_Litware.xml
    - TEMPLATECONTROLTEMPLATESCompanySizeFieldControl.ascx
    - LitwareFieldTypes.dll (in GAC)

P.194
It contains custom types (CompanySize) that can be added to lists and doclibs
When adding it to a list it looks like this:




                                                                                21
When creating a list item you see




When displaying the list you see




Chapter06csLitwareTypes
This is a sitecoll feature that extends the company size field to a Site Column (a <Field> element).
This again enables the column to be added to a Content Type.
Also it enables the data type to be searchable in a whole site collection.




                                                                                                   22
P.186/195
Three Site Columns are installed




Also two Content Types are installed




                                       23
The Content types contains: (First the “Individual”)




                                                       24
And the “Company”




Going back to the list from last solution one can now add all the Site Columns and the Content Types to
the list (although it might look messy).

But first Content Types must be enabled on the list




                                                                                                    25
Now you can add both Content Types and Site Columns




                                                      26
It makes no sense to add the Company Size one more time, unless you want to use it as a sub
company size, even though it has been expanded to a Site Column. The original field is also a Site
Column now.
So let’s add Content Types. Both can be added at the same time




                                                                                                     27
OK, the Content Types would not reuse the Company Size field. This was because it was added as a
column for this web only and not a Site Column. Unfortunately you cannot see on a column if it is added
as Site Column or just a field. But you know that if it is in a Content Type, then it must be a Site
Column.




After a little fiddling the field only Company Size was removed




                                                                                                   28
Now the list can have added three different types of items with the columns seen above




                                                                                         29
A new Company




                30
The feature installed also two preloaded lists. 1) Venders (uses only Company Content Types)




and 2) Customers (uses both Company and Individual Content Types)




Chapter06csContentTypesConsole
This is a console app that uses obj model to add Content types to lists and populate them with items
and views. Just a sample.




                                                                                                       31
Chapter07csDocumentManager P.220
A feature containing 4 app pages, 4 doclibs and 2 normal lists.




                                                                  32
The 1st app page




P.222
The 2nd app page




                   33
P.227
Menu for the 3rd app page




The 3rd app page




                            34
P.243
The 4th app page




Chapter07csLeadsheets P.229
An Infopath sample. There is no .sln file.
The Infopath file .xsn is renamed to cab and extracted to SourceFiles
The dataset sourcefiles are then driven through XSD.exe to create the class in SchemaGeneratedClass
More code is in the book (p. 232) where the class is used in an ItemAdded() event to read the added
InfoPath file and write the content to another list.

Chapter07csHelloDocx P.237
A Console app that creates a .docx on the fly…

Chapter07csHelloDocxfromASPNET P.240
Same as above, but now from ASP.NET…




                                                                                                 35
Chapter07csPackageViewer P.245
A full functional utility to browse .docx files or other OpenXml files.
Here it is the LitwareLetterTemplate LetterTemplate.docx




Chapter07csLitwareLetterTemplate P.250
Like the Leadsheet proj. A sample .docx that can be deserialized using a class made with XSD.exe




                                                                                                   36
Chapter08csHelloWorkflow P.266
This is a sitecoll feature with a workflow.
Before building it, a hardcoded line with the userid of yourself must be corrected:
    string UserAccountName = @quot;SPVMadministratorquot;;
After activating the feature, enable the WF (create a WF association) on a list or doclib (List Settings
– Workflow settings):




P.268
Manually start a WF on an item:




                                                                                                      37
P.269
Select a WF to start on the item:




Now the WF is running – click on the “In Progress” link to go to the status page.




                                                                                    38
P.269
Select a task to edit




Edit the task – Click Edit Item




                                  39
Set status Complete and supply a message




Now the WF status page shows WF completed




                                            40
P.274
The WF design view looks like this:




There are green triggers, blue actions and white historylog entries.




                                                                       41
Chapter08csLitwareWorkflows P.291: Custom Input Forms
This is a sitecoll feature with a workflow and a contenttype.
Before building it, a hardcoded line with the userid of yourself must be corrected.
In ResourcesLitwareApprovalWorkflowData.xml change userid:
 <Approver>SPVMadministrator</Approver>
Compared to the last WF then two actions has been added: EnableWFModification and CompleteTask




                                                                                                 42
P.294
After attaching a new workflow for a list like in the previous feature using /_layouts/AddWrkfl.aspx then
this feature has yet a WF association form:




P.299
Now instanciate a Litware Approval WF




                                                                                                     43
P.300
Also here you get an extra WF initiation form, where you can make changes




The WF is now running:




                                                                            44
P.302
Compared to the Hello WF then now there is the option to modify the WF. And the task title has been
renamed.




If you first go to the task list you will also see the previous task. Notice that the old task is 0%
complete. There was no code to set it to 100%, when the task was set complete!




                                                                                                       45
P.307
Enter the task. Here you get a custom task edit form, where you only have to press Approve to
complete the task. Try to reject…




The Reject action does the same as the Approve action.
And this WF automatically sets both Status, %complete and Outcome properties. Nice. The old WF
did not set the Outcome property.
It is the extra WF activity CompleteTask that carries that outcome info back to the task from the WF.




                                                                                                   46
On the WF status page you can see the comment from the approver




                                                                  47
Chapter09csHelloSiteDef P.321
This is plain none code files that are copied using xcopy to the 12Hive containing a new site definition.




                                                                                                       48
When created the site supplies 3 pages with a content webpart and an image webpart.
The three pages has been created from the same taemplate. It is only the webpart configuration that is
different. That happens in the ONET.XML




Chapter09csSolutionsDeployment P.366
This solution uses:
    - Site pages from chapter 3
    - Branding from chapter 3
    - Webparts from chapter 4
    - Types from chapter 6
    - Localized .resx files from chapter 9
    - Solution package from chapter 9

Chapter09csWebConfigModificationConsole P.344
This is a console app that can add or remove lines from web.config.
Just a sample. Nothing visual. The change has no practical effect for the web app. The path to the web
app must be corrected.




                                                                                                    49
Chapter10csLitwareSecurity
This is a sitecoll feature that contains 5 webparts in the group “Litware Security Web Parts” using a
solution package for deployment.
To deploy: Run DeploySolutionPackage.cmd.
After that it is found in SPCentralAdmin:




After activating the feature following webparts are added:




                                                                                                        50
When added to a page the webparts displays:
- P.368: Elevated Privileges
- Evidence
- P.355: Security
- P.375: User Account




                                              51
P.369
The visitorTracker webpart is nonvisible on the page. Instead it creates a list on the site called
visitors and adds items to it whenever someone enters the page.




The End




                                                                                                     52

Weitere ähnliche Inhalte

Andere mochten auch

Applied Finite Element Analysis
Applied Finite Element AnalysisApplied Finite Element Analysis
Applied Finite Element Analysis
er.mitulpatel
 
Premium Hd Wallpapers for Dreaming
Premium Hd Wallpapers for DreamingPremium Hd Wallpapers for Dreaming
Premium Hd Wallpapers for Dreaming
fondas vakalis
 
Progressbar promo - english version
Progressbar promo - english versionProgressbar promo - english version
Progressbar promo - english version
Juraj Bednar
 
Lisa Alberti.Proposed Linked Design Project 1
Lisa Alberti.Proposed Linked Design Project 1Lisa Alberti.Proposed Linked Design Project 1
Lisa Alberti.Proposed Linked Design Project 1
Mary Rose
 
Embedding BCE - Institutional Showcase (Keele)
Embedding BCE - Institutional Showcase (Keele)Embedding BCE - Institutional Showcase (Keele)
Embedding BCE - Institutional Showcase (Keele)
JISC BCE
 
Alberti.innovex pp
Alberti.innovex ppAlberti.innovex pp
Alberti.innovex pp
Mary Rose
 

Andere mochten auch (19)

Applied Finite Element Analysis
Applied Finite Element AnalysisApplied Finite Element Analysis
Applied Finite Element Analysis
 
Swim_2013_02_19_jpn
Swim_2013_02_19_jpnSwim_2013_02_19_jpn
Swim_2013_02_19_jpn
 
Attendee experience ii_slideshare
Attendee experience ii_slideshareAttendee experience ii_slideshare
Attendee experience ii_slideshare
 
Premium Hd Wallpapers for Dreaming
Premium Hd Wallpapers for DreamingPremium Hd Wallpapers for Dreaming
Premium Hd Wallpapers for Dreaming
 
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
 
Etf social media progress
Etf social media progressEtf social media progress
Etf social media progress
 
HTML5, Viewports, CSS3 y otras yerbas
HTML5, Viewports, CSS3 y otras yerbasHTML5, Viewports, CSS3 y otras yerbas
HTML5, Viewports, CSS3 y otras yerbas
 
Pp3
Pp3Pp3
Pp3
 
Web 2.0 based Application/Website development for Hospitality industry
Web 2.0 based Application/Website development for Hospitality industryWeb 2.0 based Application/Website development for Hospitality industry
Web 2.0 based Application/Website development for Hospitality industry
 
Digital & Social Marketing
Digital & Social MarketingDigital & Social Marketing
Digital & Social Marketing
 
Episode v0.7
Episode v0.7Episode v0.7
Episode v0.7
 
What Internet Traffic Is All About
What Internet Traffic Is All AboutWhat Internet Traffic Is All About
What Internet Traffic Is All About
 
Progressbar promo - english version
Progressbar promo - english versionProgressbar promo - english version
Progressbar promo - english version
 
Ians Slides
Ians SlidesIans Slides
Ians Slides
 
Metricon5 powell - ddos analytics
Metricon5   powell - ddos analyticsMetricon5   powell - ddos analytics
Metricon5 powell - ddos analytics
 
Potential Issues within BCE
Potential Issues within BCEPotential Issues within BCE
Potential Issues within BCE
 
Lisa Alberti.Proposed Linked Design Project 1
Lisa Alberti.Proposed Linked Design Project 1Lisa Alberti.Proposed Linked Design Project 1
Lisa Alberti.Proposed Linked Design Project 1
 
Embedding BCE - Institutional Showcase (Keele)
Embedding BCE - Institutional Showcase (Keele)Embedding BCE - Institutional Showcase (Keele)
Embedding BCE - Institutional Showcase (Keele)
 
Alberti.innovex pp
Alberti.innovex ppAlberti.innovex pp
Alberti.innovex pp
 

Ähnlich wie Inside WSS sample shots

770_0629.pdf dump for oracle cloud interface
770_0629.pdf dump for oracle cloud interface770_0629.pdf dump for oracle cloud interface
770_0629.pdf dump for oracle cloud interface
lknam1982
 
04 asp.net session05
04 asp.net session0504 asp.net session05
04 asp.net session05
Mani Chaubey
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04
Mani Chaubey
 
Cis407 a ilab 3 web application development devry university
Cis407 a ilab 3 web application development devry universityCis407 a ilab 3 web application development devry university
Cis407 a ilab 3 web application development devry university
lhkslkdh89009
 

Ähnlich wie Inside WSS sample shots (20)

Useful Rails Plugins
Useful Rails PluginsUseful Rails Plugins
Useful Rails Plugins
 
Installing community surveys in connections 5.5
Installing community surveys in connections 5.5Installing community surveys in connections 5.5
Installing community surveys in connections 5.5
 
Tutorial 1
Tutorial 1Tutorial 1
Tutorial 1
 
770_0629.pdf dump for oracle cloud interface
770_0629.pdf dump for oracle cloud interface770_0629.pdf dump for oracle cloud interface
770_0629.pdf dump for oracle cloud interface
 
3 Ways to Get Started with a React App in 2024.pdf
3 Ways to Get Started with a React App in 2024.pdf3 Ways to Get Started with a React App in 2024.pdf
3 Ways to Get Started with a React App in 2024.pdf
 
Homestead Weather workshop
Homestead Weather workshopHomestead Weather workshop
Homestead Weather workshop
 
11 asp.net session16
11 asp.net session1611 asp.net session16
11 asp.net session16
 
04 asp.net session05
04 asp.net session0504 asp.net session05
04 asp.net session05
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04
 
16 asp.net session23
16 asp.net session2316 asp.net session23
16 asp.net session23
 
introduction and configuration of IIS (in addition with printer)
introduction and configuration of IIS (in addition with printer)introduction and configuration of IIS (in addition with printer)
introduction and configuration of IIS (in addition with printer)
 
12 asp.net session17
12 asp.net session1712 asp.net session17
12 asp.net session17
 
Lab: Developing with the extension library
Lab: Developing with the extension libraryLab: Developing with the extension library
Lab: Developing with the extension library
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04
 
SynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically developmentSynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically development
 
Aspnet mvc tutorial_01_cs
Aspnet mvc tutorial_01_csAspnet mvc tutorial_01_cs
Aspnet mvc tutorial_01_cs
 
Cis407 a ilab 3 web application development devry university
Cis407 a ilab 3 web application development devry universityCis407 a ilab 3 web application development devry university
Cis407 a ilab 3 web application development devry university
 
Laboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y Salto (...
Laboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y Salto (...Laboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y Salto (...
Laboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y Salto (...
 
Laboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y Salto
Laboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y SaltoLaboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y Salto
Laboratorio: Desarrollo de aplicaciones Web con GeneXus Evolution 3 y Salto
 
Web Controls Set-1
Web Controls Set-1Web Controls Set-1
Web Controls Set-1
 

Kürzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

Inside WSS sample shots

  • 1. Inside WSS sample shots 2008-12-31 This is screen shots from the samples from the book Inside Microsoft Windows SharePoint Services 3.0 by Ted Pattison & Daniel Larson (ISBN 9780735623200). The idea with these screen shots is to have a picture index to the book, which also gives view of what is possible with WSS 3.0. The code samples are downloadable from http://www.microsoft.com/mspress/companion/9780735623200/ The samples has been executed on a Virtual PC Image downloadable from http://www.microsoft.com/downloads/details.aspx?FamilyID=1beeac6f-2ea1-4769-9948- 74a74bd604fa&DisplayLang=en This VPC has been updated to Visual Studio 2008. This means that the samples (which are 2005 version) will be updated during the first load (of each solution). The screen shots are from the older VPC with only Visual Studio 2005. Each heading is a folder in the samples. After the heading a short description of the purpose follows. Sometimes also an installation instruction is given if needed. Usually a install.bat file exists in the solutions. Chapter01csHello_WSS_OM P.20 Console app that uses obj model Chapter01csHelloWorld P.26 A feature, that changes the name of a site and reverses it at deactivation. 1
  • 2. Activated feature: Chapter02csCustomApplicationPages P.50 The feature creates 7 application pages of which 6 is on the site action menu: 2
  • 5. 5
  • 8. Chapter03csCreateNewSitePage P.65 Console app that creates a site page Chapter03csCustomSitePages A Feature that adds two menus to the top navigation bar. You must activate this feture from the SiteCollection site for it to install. P.86 P.70 8
  • 10. P.76 10
  • 11. P.66 11
  • 12. 12
  • 13. P.81 13
  • 14. Chapter03csCustomBranding P.97 A SiteCollection Feature with two demo pages reached from the Site Actions. 14
  • 15. 15
  • 16. Move the mouse around on the page to discover what styles are in use. In this example the mouse points to the site name in the upper left corner. 16
  • 17. Chapter04csLitwareWebParts P.99 A SiteCollection Feature including 6 webparts. The webparts are installed locally in the webapp, which requires following: Before running install.bat correct the path to the path to your WSS sitecoll like here: @SET BINDIR=quot;C:InetpubwwwrootwssVirtualDirectories80binquot; Add to web.config: <SafeControl Assembly=quot;LitwareWebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=74bad7277fe0d19equot; Namespace=quot;LitwareWebPartsquot; TypeName=quot;*quot; Safe=quot;Truequot; /> <trust level=quot;Fullquot; originUrl=quot;quot; /> From the Site Settings on the SiteCollection the webparts can be previewed from the webpart gallery: 17
  • 18. P.110 Edit a page with a webpart template and add webparts to the zones Three different webparts: - Contact viewer: Searches site for contact lists and show their content - P.106: Hello World - P.120: User Control: Loads a user control (.ascx) 18
  • 19. P.123 A verb webpart adds menu items to the edit webpart menu: And in display mode: P.115 Manually write feed for the RSS viewer: 19
  • 20. P.126 The list feed webpart can provide feed to the RSS view webpart The provider (feeder) reads the lists on the site, which are then fed to consumer (viewer). The RSS viewer also uses verbs. Chapter06csAnnouncementsListConsole P.179 This is a console app that uses the obj model on the announcement list. Included is search. Just a sample. 20
  • 21. Chapter06csLitwareFieldTypes This addin is not a feature, but deployed in - TEMPLATEXMLfldtypes_Litware.xml - TEMPLATECONTROLTEMPLATESCompanySizeFieldControl.ascx - LitwareFieldTypes.dll (in GAC) P.194 It contains custom types (CompanySize) that can be added to lists and doclibs When adding it to a list it looks like this: 21
  • 22. When creating a list item you see When displaying the list you see Chapter06csLitwareTypes This is a sitecoll feature that extends the company size field to a Site Column (a <Field> element). This again enables the column to be added to a Content Type. Also it enables the data type to be searchable in a whole site collection. 22
  • 23. P.186/195 Three Site Columns are installed Also two Content Types are installed 23
  • 24. The Content types contains: (First the “Individual”) 24
  • 25. And the “Company” Going back to the list from last solution one can now add all the Site Columns and the Content Types to the list (although it might look messy). But first Content Types must be enabled on the list 25
  • 26. Now you can add both Content Types and Site Columns 26
  • 27. It makes no sense to add the Company Size one more time, unless you want to use it as a sub company size, even though it has been expanded to a Site Column. The original field is also a Site Column now. So let’s add Content Types. Both can be added at the same time 27
  • 28. OK, the Content Types would not reuse the Company Size field. This was because it was added as a column for this web only and not a Site Column. Unfortunately you cannot see on a column if it is added as Site Column or just a field. But you know that if it is in a Content Type, then it must be a Site Column. After a little fiddling the field only Company Size was removed 28
  • 29. Now the list can have added three different types of items with the columns seen above 29
  • 31. The feature installed also two preloaded lists. 1) Venders (uses only Company Content Types) and 2) Customers (uses both Company and Individual Content Types) Chapter06csContentTypesConsole This is a console app that uses obj model to add Content types to lists and populate them with items and views. Just a sample. 31
  • 32. Chapter07csDocumentManager P.220 A feature containing 4 app pages, 4 doclibs and 2 normal lists. 32
  • 33. The 1st app page P.222 The 2nd app page 33
  • 34. P.227 Menu for the 3rd app page The 3rd app page 34
  • 35. P.243 The 4th app page Chapter07csLeadsheets P.229 An Infopath sample. There is no .sln file. The Infopath file .xsn is renamed to cab and extracted to SourceFiles The dataset sourcefiles are then driven through XSD.exe to create the class in SchemaGeneratedClass More code is in the book (p. 232) where the class is used in an ItemAdded() event to read the added InfoPath file and write the content to another list. Chapter07csHelloDocx P.237 A Console app that creates a .docx on the fly… Chapter07csHelloDocxfromASPNET P.240 Same as above, but now from ASP.NET… 35
  • 36. Chapter07csPackageViewer P.245 A full functional utility to browse .docx files or other OpenXml files. Here it is the LitwareLetterTemplate LetterTemplate.docx Chapter07csLitwareLetterTemplate P.250 Like the Leadsheet proj. A sample .docx that can be deserialized using a class made with XSD.exe 36
  • 37. Chapter08csHelloWorkflow P.266 This is a sitecoll feature with a workflow. Before building it, a hardcoded line with the userid of yourself must be corrected: string UserAccountName = @quot;SPVMadministratorquot;; After activating the feature, enable the WF (create a WF association) on a list or doclib (List Settings – Workflow settings): P.268 Manually start a WF on an item: 37
  • 38. P.269 Select a WF to start on the item: Now the WF is running – click on the “In Progress” link to go to the status page. 38
  • 39. P.269 Select a task to edit Edit the task – Click Edit Item 39
  • 40. Set status Complete and supply a message Now the WF status page shows WF completed 40
  • 41. P.274 The WF design view looks like this: There are green triggers, blue actions and white historylog entries. 41
  • 42. Chapter08csLitwareWorkflows P.291: Custom Input Forms This is a sitecoll feature with a workflow and a contenttype. Before building it, a hardcoded line with the userid of yourself must be corrected. In ResourcesLitwareApprovalWorkflowData.xml change userid: <Approver>SPVMadministrator</Approver> Compared to the last WF then two actions has been added: EnableWFModification and CompleteTask 42
  • 43. P.294 After attaching a new workflow for a list like in the previous feature using /_layouts/AddWrkfl.aspx then this feature has yet a WF association form: P.299 Now instanciate a Litware Approval WF 43
  • 44. P.300 Also here you get an extra WF initiation form, where you can make changes The WF is now running: 44
  • 45. P.302 Compared to the Hello WF then now there is the option to modify the WF. And the task title has been renamed. If you first go to the task list you will also see the previous task. Notice that the old task is 0% complete. There was no code to set it to 100%, when the task was set complete! 45
  • 46. P.307 Enter the task. Here you get a custom task edit form, where you only have to press Approve to complete the task. Try to reject… The Reject action does the same as the Approve action. And this WF automatically sets both Status, %complete and Outcome properties. Nice. The old WF did not set the Outcome property. It is the extra WF activity CompleteTask that carries that outcome info back to the task from the WF. 46
  • 47. On the WF status page you can see the comment from the approver 47
  • 48. Chapter09csHelloSiteDef P.321 This is plain none code files that are copied using xcopy to the 12Hive containing a new site definition. 48
  • 49. When created the site supplies 3 pages with a content webpart and an image webpart. The three pages has been created from the same taemplate. It is only the webpart configuration that is different. That happens in the ONET.XML Chapter09csSolutionsDeployment P.366 This solution uses: - Site pages from chapter 3 - Branding from chapter 3 - Webparts from chapter 4 - Types from chapter 6 - Localized .resx files from chapter 9 - Solution package from chapter 9 Chapter09csWebConfigModificationConsole P.344 This is a console app that can add or remove lines from web.config. Just a sample. Nothing visual. The change has no practical effect for the web app. The path to the web app must be corrected. 49
  • 50. Chapter10csLitwareSecurity This is a sitecoll feature that contains 5 webparts in the group “Litware Security Web Parts” using a solution package for deployment. To deploy: Run DeploySolutionPackage.cmd. After that it is found in SPCentralAdmin: After activating the feature following webparts are added: 50
  • 51. When added to a page the webparts displays: - P.368: Elevated Privileges - Evidence - P.355: Security - P.375: User Account 51
  • 52. P.369 The visitorTracker webpart is nonvisible on the page. Instead it creates a list on the site called visitors and adds items to it whenever someone enters the page. The End 52