275 80 11MB
English Pages 753 Year 2010
THE EXPERT’S VOICE ® IN OFFICE AND SHAREPOINT
Office and SharePoint 2010 User's Guide Integrating SharePoint with Excel, Outlook, Access and Word Empowering productivity for the Microsoft Office 2010 user
Michael P. Antonovich
Office and SharePoint 2010 User's Guide Integrating SharePoint with Excel, Outlook, Access and Word
■■■ MichaelP.Antonovich
OfficeandSharePoint2010User’sGuide:IntegratingSharePointwithExcel,Outlook,Access andWord Copyright©2010byMichaelP.Antonovich Allrightsreserved.Nopartofthisworkmaybereproducedortransmittedinanyformorbyanymeans, electronicormechanical,includingphotocopying,recording,orbyanyinformationstorageorretrieval system,withoutthepriorwrittenpermissionofthecopyrightownerandthepublisher. ISBN-13(pbk):978-1-4302-2760-1 ISBN-13(electronic):978-1-4302-2761-8 PrintedandboundintheUnitedStatesofAmerica987654321 Trademarkednames,logos,andimagesmayappearinthisbook.Ratherthanuseatrademarksymbol witheveryoccurrenceofatrademarkedname,logo,orimageweusethenames,logos,andimagesonly inaneditorialfashionandtothebenefitofthetrademarkowner,withnointentionofinfringementof thetrademark. Theuseinthispublicationoftradenames,trademarks,servicemarks,andsimilarterms,eveniftheyare notidentifiedassuch,isnottobetakenasanexpressionofopinionastowhetherornottheyaresubject toproprietaryrights. PresidentandPublisher:PaulManning LeadEditor:JonathanHassell TechnicalReviewer:RazibinRais EditorialBoard:ClayAndres,SteveAnglin,MarkBeckner,EwanBuckingham,GaryCornell, JonathanGennick,JonathanHassell,MichelleLowman,MatthewMoodie,DuncanParkes, JeffreyPepper,FrankPohlmann,DouglasPundick,BenRenow-Clarke,DominicShakeshaft, MattWade,TomWelsh CoordinatingEditor:MaryTobin CopyEditor:MaryBehr,JimCompton ProductionSupport:PatrickCunningham Indexer:BIMIndexing&ProofreadingServices Artist:AprilMilne CoverDesigner:AnnaIshchenko DistributedtothebooktradeworldwidebySpringerScience+BusinessMedia,LLC.,233SpringStreet, 6thFloor,NewYork,NY10013.Phone1-800-SPRINGER,fax(201)348-4505,e-mail[email protected],orvisitwww.springeronline.com. Forinformationontranslations,pleasee-mail[email protected],orvisitwww.apress.com. ApressandfriendsofEDbooksmaybepurchasedinbulkforacademic,corporate,orpromotionaluse. eBookversionsandlicensesarealsoavailableformosttitles.Formoreinformation,referenceour SpecialBulkSales–eBookLicensingwebpageatwww.apress.com/info/bulksales. Theinformationinthisbookisdistributedonan“asis”basis,withoutwarranty.Althoughevery precautionhasbeentakeninthepreparationofthiswork,neithertheauthor(s)norApressshallhave anyliabilitytoanypersonorentitywithrespecttoanylossordamagecausedorallegedtobecaused directlyorindirectlybytheinformationcontainedinthiswork. Thesourcecodeforthisbookisavailabletoreadersatwww.apress.com.Youwillneedtoanswer questionspertainingtothisbookinordertosuccessfullydownloadthecode.
For my wife of 33 years, Susan, and our wonderful daughter, Natasha. I love you both.
Contents at a Glance AbouttheAuthor.....................................................................................................xvi AbouttheTechnicalReviewer................................................................................xvii Acknowledgments.................................................................................................xviii Introduction.............................................................................................................xix ■Chapter1:AnOverviewofSharePoint....................................................................1 ■Chapter2:SharePointLists...................................................................................69 ■Chapter3:CreatingContentPages......................................................................151 ■Chapter4:UsingYourDocumentLibrarywithMicrosoftOffice..........................201 ■Chapter5:UsingOutlook.....................................................................................253 ■Chapter6:ManagingListswithAccess..............................................................301 ■Chapter7:ManagingSharePointListsfromExcel..............................................355 ■Chapter8:PublishingExcelwithExcelServices................................................383 ■Chapter9:AnIntroductiontoCreatingFormswithInfoPath..............................433 ■Chapter10:PublishingInfoPathFormsinSharePointLibraries.........................503 ■Chapter11:Peer-to-PeerCollaborationwithSharePointWorkspace.................563 ■Chapter12:AdditionalSupportingLibraries.......................................................617 Index.......................................................................................................................681
iv
Contents AbouttheAuthor.....................................................................................................xvi AbouttheTechnicalReviewer................................................................................xvii Acknowledgments.................................................................................................xviii Introduction.............................................................................................................xix ■Chapter1:AnOverviewofSharePoint....................................................................1 SiteCollections,Sites,andSub-sites................................................................................2 SiteCollectionTemplates..................................................................................................5 CollaborationTemplates...........................................................................................................................5 MeetingTemplates...................................................................................................................................9 EnterpriseSiteTypes..............................................................................................................................10 PublishingSites(onlyavailablefromCentralAdministration)................................................................12
OtherSiteTemplates.......................................................................................................14 ApplicationsSiteTypes..........................................................................................................................16 AdditionalSiteTemplates.......................................................................................................................17 ListsandLibraryTypes...........................................................................................................................17 PermissionsandGroups.........................................................................................................................20
AddingaDocumentLibrary.............................................................................................30 KnowingYourDocumentTemplates................................................................................34 AddingaDocumenttoYourNewLibrary.........................................................................35 UploadingaDocument...........................................................................................................................40 EditingDocumentsStoredinYourLibrary..............................................................................................48 WhatIsaConcurrencyProblem?...........................................................................................................52
v
■ CONTENTS
WhyUseCheckOutandCheckIn?.........................................................................................................52 TrackingDocumentVersions..................................................................................................................58 PromotingaPriorVersiontotheCurrentVersion...................................................................................60 PublishingDocumentstoYourDocumentLibrary..................................................................................61 RequireDocumentApprovaltoHideDrafts—ASimpleWorkflow.........................................................65 RecoveringAccidentalDeletionswiththeRecycleBin..........................................................................67
Summary.........................................................................................................................68 ■Chapter2:SharePointLists...................................................................................69 ExploringSharePoint’sBuilt-inListTypes.......................................................................70 Content&DataLists...............................................................................................................................70 CollaborationLists..................................................................................................................................90 SearchingCategory................................................................................................................................92 TrackingLists.........................................................................................................................................95 OtherLists..............................................................................................................................................98
EditingDataintoYourList.............................................................................................100 WorkingwithListViews................................................................................................104 BuildingaCustomList...................................................................................................107 ModifyingtheColumnTypesinYourList......................................................................113 UsingAlertstoNotifyYouofListChanges.....................................................................121 CreatingRSSFeedsforYourList...................................................................................125 DefiningViewsforYourList...........................................................................................130 SortingandFilteringLists..............................................................................................135 InlineEditing..................................................................................................................137 ValidationSettings.........................................................................................................138 ItemValidation......................................................................................................................................138 ColumnValidation.................................................................................................................................140
vi
■ CONTENTS
ReferentialIntegrityinListLookups..............................................................................142 Summary.......................................................................................................................149 ■Chapter3:CreatingContentPages......................................................................151 AddingaWebPagetoYourCollaborationSite..............................................................151 AddingaContenttoaWebPartZone...................................................................................................156 AddinganImagetoanImageLibrary...................................................................................................160 CopyingTextfromaWordDocument...................................................................................................164 UsingMicrosoftWordtoAddaTabletoYourContent..........................................................................165 AddingaHyperlinktoYourContent......................................................................................................166
AddingaWikiPagetoYourCollaborationSite..............................................................170 CreatingMaster-DetailRelationshipsbetweenYourLists............................................178 EditingPageswithCheckOutandCheckIn..................................................................182 TrackingPageVersions.................................................................................................185 PublishingPagestoYourSite........................................................................................186 RecoveringAccidentalDeletionswiththeRecycleBin.................................................190 TheShareandTrackFeatures.......................................................................................191 E-mailaLink.........................................................................................................................................192 Alerts....................................................................................................................................................192 RSSFeeds............................................................................................................................................195 TheNoteBoard.....................................................................................................................................196 Tags......................................................................................................................................................197
Summary.......................................................................................................................199 ■Chapter4:UsingYourDocumentLibrarywithMicrosoftOffice..........................201 OpeningaSharePointDocumentfromWithinMicrosoftOffice.....................................201 EditingandSavingaDocumenttoaDocumentLibrary................................................208 SavingaNewDocument......................................................................................................................210 SavingaDocumenttoanExistingLibrary............................................................................................211
vii
■ CONTENTS
WhatIsMetadata?.........................................................................................................212 AddingMetadatatoWordDocuments..................................................................................................213 AddingMetadatatoDocumentsfromSharePoint................................................................................219
UsingMetadatawiththeDocumentInformationPanel.................................................222 UploadingExistingDocumentsintoaLibraryPromptsforRequiredMetadata....................................224 WorkingwithDocumentMetadata.......................................................................................................224
ManagingMultipleEditorstoaDocument.....................................................................226 CreatingandUsingDocumentSets...............................................................................232 SearchingForYourDocuments.....................................................................................237 UsingWordtoContributetoYourBlogSite...................................................................240 CreatingaBlogSite..............................................................................................................................241 DefiningCategoriesforYourBlogs.......................................................................................................243 CreatingaNewBlogPosting................................................................................................................244 CommentingonaBlogEntry................................................................................................................247 SettingListLevelBlogPermissions.....................................................................................................248 SettingItem-LevelBlogPermissions....................................................................................................250
Summary.......................................................................................................................251 ■Chapter5:UsingOutlook.....................................................................................253 SynchronizingYourContactsListsBetweenSharePointandOutlook...........................253 ConnectingYourSharePointContactsListtoOutlook..........................................................................253 AddingSharePointColumnsThatWillSynchronizewithOutlook.........................................................257 ManagingUpdateConflicts...................................................................................................................258 DeletingContacts.................................................................................................................................260 RecoveringDeletedContacts...............................................................................................................261 MovingContactsbetweenLists............................................................................................................262
SynchronizingYourCalendarsbetweenSharePointandOutlook.................................263 AddingaSharePointCalendartoOutlook.............................................................................................264 OverlayingCalendars............................................................................................................................268
viii
■ CONTENTS
MakingChangestoCalendarItems......................................................................................................270 CopyingandMovingItemsbetweenCalendars...................................................................................271 DeletingItemsfromtheCalendar.........................................................................................................272
SynchronizingTasksbetweenSharePointandOutlook................................................273 AddingTasksListstoOutlook..............................................................................................................274 EditingTasksfromOutlook..................................................................................................................277 SendingE-mailsfromTasks.................................................................................................................278
UsingOutlooktoWorkOfflinewithContent..................................................................278 LettingAlertsNotifyYouofSharePointChanges...........................................................281 ConfiguringYourAlerts.........................................................................................................................281 Correcting/ModifyingAlerts..................................................................................................................284
UsingOutlook’sRSSReadertoSubscribetoSharePointRSSFeeds............................286 AddinganRSSFeedtoInternetExplorer7.0.......................................................................................286 AddinganRSSFeedtoOutlook............................................................................................................291 DeletingItemsfromanRSSFeed.........................................................................................................293 ViewingOtherListItemsNotintheRSSFeed......................................................................................295
SendingE-mailtoLists..................................................................................................296 SendingaMessagetoaListorLibrary................................................................................................296
SendingLinksviaSendTo.............................................................................................299 Summary.......................................................................................................................299 ■Chapter6:ManagingListswithAccess..............................................................301 ExportingSharePointListstoAccess............................................................................302 SavingYourExportSteps.....................................................................................................................309 TransferIssues.....................................................................................................................................311
LinkingSharePointListstoAccess................................................................................319 EditingLinkedData...............................................................................................................................320 UsingAccesstoMakeMassUpdates...................................................................................................322
ix
■ CONTENTS
UseMultivalveFieldsinLists........................................................................................324 CreatingaMultivaluedColumninSharePoint......................................................................................325 OpeningaListwithMultivaluedColumnsinAccess............................................................................330 SomeReasonsNottoUseMultivaluedColumns..................................................................................332
CreatingAccessFormsandReportsfromaSharePointList.........................................333 CreatingaSimpleForm........................................................................................................................333 CreatingaSplitForm............................................................................................................................336 CreatingaCustomFormUsingaSubform...........................................................................................337 CreatingaSimpleReport......................................................................................................................340
CanRecycleBinRecoverDeletedListRecords?...........................................................341 DeployingYourAccessApplicationtoSharePoint–Option1........................................342 MovingAllAccessTablestoSharePoint..............................................................................................343 MovingtheAccessDatabasetoSharePoint.........................................................................................345
DeployingYourAccessApplicationtoSharePoint–Option2........................................348 Summary.......................................................................................................................354 ■Chapter7:ManagingSharePointListsfromExcel..............................................355 ExportingaListfromSharePointtoExcel.....................................................................355 TheRoleoftheIQYFile.........................................................................................................................356 ChoosingHowtoDisplayYourImportedList........................................................................................358 HowViewsAffecttheDataExportedtoYourList.................................................................................360 UsingHyperlinksinYourList................................................................................................................360 OtherTableToolsinYourExcelWorkbook...........................................................................................362
ExportingDatafromanExcel2007/2010SpreadsheetintoaCustomList...................363 DefiningaTableWithinYourExcelWorksheet.....................................................................................365 ExportingtheExcelTable.....................................................................................................................366 ViewingtheExportedExcelDataintheNewSharePointList..............................................................369
x
■ CONTENTS
AQuickLookatExcel2003andSynchronization..........................................................371 ExportingaSharePoint2007ListtoExcel2003...................................................................................371 ExportingExcel2003WorksheetstoSharePoint..................................................................................373
WhatHappenedtoSynchronization?.............................................................................375 LinkingaListinExceltoSharePoint.............................................................................376 Summary.......................................................................................................................380 ■Chapter8:PublishingExcelwithExcelServices................................................383 ConfiguringExcelServices............................................................................................384 PublishinganExcelFormtoExcelServices..................................................................385 AddinganExcelWorkbooktoYourDocumentLibraryfromSharePoint..............................................385 NavigatingAroundYourWorksheet......................................................................................................387
WhyYouNeedParameterstoMakeYourExcelFormInteractive.................................387 DefiningParametersforYourExcelForm......................................................................388 PublishingYourExcelWorkbook..........................................................................................................390 ViewingUploadedExcelDocuments....................................................................................................396
UsingtheExcelPageWebPart......................................................................................397 ViewingDatafromExternalSourcesinExcelUsingaDataConnection........................403 CreatinganExternalConnection..........................................................................................................404 ImportingtheSharePointListtoaWorkbook.......................................................................................409 FormattingaPivotTabletoLookLikeaWorksheet.............................................................................412 PublishingYourFormattedWorkbook..................................................................................................413
IntroductiontoStatusIndicators(KPIs).........................................................................416 StatusTypesDefined............................................................................................................................416 CreatingaStatusList...........................................................................................................................417
xi
■ CONTENTS
CreatingDashboardswithExcelandStatusIndicators.................................................424 BuildingaDashboardfromtheDashboardTemplateintheReportCenter..........................................424 OrganizingWebPartsintheDashboardWebPartZones.....................................................................426 AddingKPIstoYourDashboard............................................................................................................427
Summary.......................................................................................................................431 ■Chapter9:AnIntroductiontoCreatingFormswithInfoPath..............................433 WhyYouShouldUseInfoPath........................................................................................434 ExploringtheInfoPathInterface....................................................................................435 ModifyingaFormUsedwithaSharePointList..............................................................437 CreatingaFormfromaBlankTemplate........................................................................449 TheTaskGroup:Controls.....................................................................................................................457 TheTaskGroup:DataSources.............................................................................................................464 TheTaskGroup:DesignChecker..........................................................................................................465 StepstoBuildtheRequestforAbsenceForm......................................................................................466 OtherAvailableInfoPathTemplates.....................................................................................................470
MigratingYourExistingWordFormsintoInfoPath........................................................471 MigratingYourExistingExcelWorkbookintoInfoPath..................................................474 DefiningInfoPathViews.................................................................................................478 ViewingProperties................................................................................................................................478 GeneratingYourSecondView..............................................................................................................480
BuildingDataConnectionsforForms............................................................................482 ConnectingInfoPathFormstoData...............................................................................492 CreatingandReusingFormSectionswithTemplateParts...........................................497 Summary.......................................................................................................................502
xii
■ CONTENTS
■Chapter10:PublishingInfoPathFormsinSharePointLibraries.........................503 PublishingInfoPathFormstoaNetworkFileShare......................................................503 PublishYourFormDatatoSharePoint.................................................................................................510
UsingInfoPathFormsServicesforCustomersWithoutInfoPath...................................521 PublishingtoaSharePointServer........................................................................................................521 DefiningMetadatafortheDocumentLibrary.......................................................................................526 AdditionalLibrarySettings...................................................................................................................530 UsingthePublishedForm.....................................................................................................................532 ChangingSubmitOptionsforaForm...................................................................................................533 SavingtheDatafromaForm................................................................................................................534
PublishingaFormtoaContentType.............................................................................536 InstallingandUsingSiteCollectionContentTypes........................................................542 AddingaContentTypetoaLibrary......................................................................................................542 ChangingtheDefaultContentType......................................................................................................543 WorkingwithaLibraryThatHasMultipleContentTypes.....................................................................544
BuildingCustomWorkflowsforInfoPathFormsUsingSharePointDesigner................544 WhatIsaWorkflow?.............................................................................................................................545 BeginningaSimpleApprovalWorkflow...............................................................................................546 DefiningWorkflowDetails....................................................................................................................549 ConfiguringanE-mailMessage...........................................................................................................550 AddingMultipleActions........................................................................................................................552 AddingAdditionalSteps.......................................................................................................................554 HowtoRuntheWorkflow.....................................................................................................................556 RestructuringYourConditions..............................................................................................................558 ConfiguringtheWorkflowSettings.......................................................................................................559
Summary.......................................................................................................................560
xiii
■ CONTENTS
■Chapter11:Peer-to-PeerCollaborationwithSharePointWorkspace.................563 DiggingintoSharePointWorkspace..............................................................................564 AddingYourAccounttoOtherComputers............................................................................................576
CreatingaGrooveWorkspace.......................................................................................578 DocumentsTool....................................................................................................................................580 DiscussionTool.....................................................................................................................................581 CalendarTool........................................................................................................................................584 ChatTool...............................................................................................................................................585 NotepadTool........................................................................................................................................586 PicturesTool.........................................................................................................................................587 SketchpadTool.....................................................................................................................................588 ChessTool............................................................................................................................................589 ListsTool..............................................................................................................................................590
WorkingwithYourSharePointFilesWithinSharePointWorkspace..............................599 EditingContentinSharePointWorkspace............................................................................................603 OtherOptionsintheSharePointWorkspace........................................................................................605 WorkingwithListsintheSharePointWorkspace.................................................................................605 WorkingwithDiscussionGroupsinSharePointWorkspace.................................................................606 PropertiesforSharePointWorkspace...................................................................................................608
Summary.......................................................................................................................615 ■Chapter12:AdditionalSupportingLibraries.......................................................617 CreatingaRecordsManagementSystemtoArchiveYourDocuments.........................617 CreatingSiteColumns..........................................................................................................................618 CreatingaContentTypeforRFBDocuments.......................................................................................620 CreatingaSiteLibrarytoCollectRFBDocuments...............................................................................625 CreatingtheRecordsCenterSite.........................................................................................................632 CreatingtheExternalServiceConnection............................................................................................634 AddingtheSiteContentTypeforRFBsintotheRecordsCenter..........................................................636
xiv
■ CONTENTS
CreatingaPolicyfortheArchivalLibrary.............................................................................................637 CreatingaRecordRoutingRule............................................................................................................639 ArchivingYourDocuments...................................................................................................................642
CreatingaPictureLibraryinSharePoint........................................................................644 UploadingPicturestoSharePoint.........................................................................................................648 UsingtheMicrosoftOfficePictureManager.........................................................................................652 UsingWindowsExplorertoUploadPictures.........................................................................................656 DownloadingImagesfromYourPictureLibrary...................................................................................657 SendingImagestoaMicrosoftOfficeApplication................................................................................660 ViewingthePicturesinaPictureLibrary..............................................................................................662
CreatingaSlideLibraryinSharePoint...........................................................................668 UploadingPicturestoYourSlideLibraryfromPowerPoint..................................................................671 CopyingSlidesfromYourSlideLibrarytoPowerPointPresentations..................................................677
Summary.......................................................................................................................679 Index.......................................................................................................................681
xv
About the Author ■MichaelP.AntonovichgraduatedfromLehighUniversitywitha bachelor’sdegreeinchemicalengineeringin1976andaMBAin1980,but hiscareeralmostfromthestartevolvedtowardcomputersandapplication development.Hestartedworkingwithlargemainframesystemsbutquickly developedakeeninterestinmicrocomputerswhenAppleintroducedits AppleII,forwhichhewrotehisfirstbookin1983.Overtheyears,hehas learnedmanydifferentsystems,applications,andprogramminglanguages, butthefirstdevelopmentenvironmenthefeltreallystrongaboutwas FoxBaseandlaterFoxPro.Duringthe90s,hepublishedfourbookson FoxProbeforetheInternetandSQLServerbugbithim. Inadditiontohisfull-timejobsdevelopingapplications,hehas conducteddozensofdifferentcomputertrainingclassesforcompaniesand universitiesovertheyears.SincehisfirstSharePointbook,Michaelhas becomearegularspeakeratmanyoftheSQLSaturday,CodeCamp,and SharePointSaturdayeventsinthestateofFlorida,havingpresentednearly twodozensessionsinthelastthreeyears.Healsohasbeenservingonthe InformationTechnologyAdvisoryCommitteeofValenciaCommunityCollege. In2003,hejoinedtheITteamofOrangeCountyPublicSchoolsastheypreparedtolaunchamajor newstudenttrackingsystem.ButthelureoftheInternetalongwitha“little”productcalledSharePoint pulledhimbackintoInternetdevelopmentinthefallof2006,whenhetookonthetaskofheadingup thetechnicalteamtodevelopanewSharePointportalfortheschooldistrictthatwouldprovideallusers withasingle,consistent,easy-to-useinterface.Sincethen,histeamhascompletedtherefreshand brandingofalldistrictInternetandintranetsites.Theyalsoworkedwithrepresentativesfromeachof theover170+schoolsinthedistricttocreatenewbrandedsitesthatfollowacommonsitetemplate providingconsistencyinlocatinginformationacrosstheschools.Currently,Michael’steamispreparing forarefreshofthebrandingforboththeschoolsandintranetsitestoenhancetheconsistencybetween sitesfurtherandtotakeadvantageofthenewSharePoint2010features.Theyarealsocommittedto expandingthenumberofapplicationsembeddedorrunthroughSharePointemployeesitestohelp reducethedistrict’spaperusageandimproveoperatingefficiencies.OrangeCountyPublicSchoolsis the10thlargestschooldistrictintheUnitedStates.
xvi
About the Technical Reviewer ■RazibinRaisisaMicrosofttechnologyspecialistwithfocusonMicrosoft SharePointProductsandTechnologies.Razihasextensiveexperiencein designing,implementingandsupportingenterprisesolutionsusing MicrosoftSharePointServer.Razihasauthorednumerousarticles publishedonlineandalsoworkedwithMicrosoftMSLasaSMEonseveral SharePoint2010courses.RaziisalsoaspeakerforINETAandGITCA,and hadledmanysessionsinseveralindustrytradeshowconferencesincluding theMicrosoftTechDays,ISVinnovationDays,CommunityTechnology UpdatesandSharePointSaturdays.Forhiscommunityinvolvementand contribution,hehasalsobeenawardedtheMicrosoftMVPawardfor SharePointServicessince2007.Raziblogsathttp://razi.spaces.live.com andcanbereachedat[email protected].
xvii
Acknowledgments Eventhoughabookmaygetpublishedwithasinglenameonthecover,manypeopleareactually involvedingettingthatbookintoyourhands.I’dliketothankJonathanHassell,myApressLeadEditor, forgivingmethechancetodoasecondSharePointbookonOfficeandSharePointintegration.Thanks toRazibinRais,mytechnicalreviewer,forpointingoutthetechnicalthingsIassumedeveryonewould knowbutneededtoinclude.ToMaryBehrandJimCompton,thanksforhelpingmemakethistextmore readableandfixingmygrammarmistakes,andthankstoMaryTobinforkeepingtrackofeverything betweenallofussowecouldgetthisprojectcompleted.Ijustwantthereadertoknowthatthisteam didawonderfuljobcatchingmanyproblems,soanyerrorsthatyoumaystillfindinthisbookare undoubtedlymine. TotheentireSharePointteamatMicrosoft,thanksforcontinuingthefeatureexpansionofsucha tremendouslypowerfulandsoliddevelopmentplatformlikeSharePoint.Keepthevision.Itbrings togetherthebestoftheInternetwiththebestofMicrosoftOfficeinawaythatboostsproductivityto astronomicalheights.Itistrulyan‘office’game-changer. TomyeverydaySharePointTeamofthelastthreeyears,specialthankstoMikeHealeyforhelping allofusunderstandwebparts,workflowsandgeneralSharePointadministrationtasks.Abigthanksto SuyinFerroRamsforalltheworkyouhavedonetodevelopapplicationsthatwecandeploythrough SharePoint.ThanksalsotoSerenaWrightforguidingusasourunofficialprojectmanagerthroughthe lastthreeyearsofsuccessfullydeployinghundredsofInternetandintranetsites,andover170branded schoolsites.FinallythankstoRobertCurran,ourApplicationsDirector,whobelievedinourabilityto succeedduringthelastthreeyearsaswebuiltallofourdistrict’ssitesandsupportedour‘OnePortal– OneView’visionoriginallyproposedbyCharlesThompson.AsyouknowRobert,wearenotdoneyet. IalsowanttogiveashoutoutofthankstoAndyWarrenofEnd-to-EndTraininginOrlando,FLfor gettingmeoutoftheofficeandinvolvedintheoriginalSQLSaturday(yes,myotherpassionisSQL Server),anactivitythathasledtootherspeakingopportunities. AhugeThankYouhastogotomywifeSusanforunderstandingthatwritingabooktakesalotof timeawayfromotherthings,notjustforafewdays,butformonths.Moreover,thankyouGodabovefor makingallofthispossibleandforgivingmemywifeanddaughterwithoutwhomallofthiswouldhave littlemeaning. Thentherearetheuncountableseminars,webinars,newsletters,whitepapers,blogs,books,and otherinformationsitesIhavereadoverthelastthreeyearsonSharePoint,Office,andSQLServer. Finally,thankstoalltheproductionpeopleatApressfortheirpartsinmakingthisbooknotonly happen,butalsolooksogood.Youmaketheprocesseasy.
xviii
Introduction SincethereleaseofSharePoint2007,thepopularityofSharePointhasgrowneachyear.Withthenew releaseofSharePoint2010,Microsofthasfurtherexpandedthefeatureset.Someoftheimprovements includechangingthewayyouconnecttoexternaldatasources,addingtheabilitytodisplayVisio diagramsdirectlyinthebrowser,publishingAccessapplicationstoawebsiteandmore.Visually,they havemadeeditingthecontentofyourpagesmorelikeworkinginOfficewiththeadditionoftheribbon interface.ItismybeliefthatSharePointisthebiggestchangetothewayyouandIworkinouroffices since…well…sinceMicrosoftOffice.Wordshowedushowtowriteandeditmoreefficientlyona computerscreenthanweevercouldwithatypewriter. Overtheyears,MicrosoftOfficehasbecomesopervasivethatitisalmostimpossibletogetanoffice jobtodayifyoudonothaveafirmunderstandingofatleastMicrosoftWordandMicrosoftExcel. PerhapsnowitistimetoaddSharePointtothatlistofjobrequirements.SharePointcanhelporganize whereyousaveyourdocumentsaswellashowyouarchivethemintoRecordsCenterstopreservethem. Sharingdocumentsandotherfileswithcoworkersinsuresthatthereisonlyasingleversionofthetruth. Theneedtoprintdocumentstosendthemtoothersisallbuteliminatedthroughtheabilitytocreate andusecollaborationsitesandSharePointWorkspaces.Creatingapplicationsquicklyandwithminimal programminghasbeenenhancedwiththeabilitytopublishAccessapplicationsinSharePointsothat anyonewithabrowsercanaccessandinteractwiththem.ThenewBusinessConnectivityServiceslets yougatherdatafrommanydatasourcescreatingasingleviewoftheinformationimportanttoyouand yourcoworkers.Ofcourse,youcanstillcreateyourcorporatewebsitesandeveninternalemployee intranetsitesusingthesametoolsandmethodologiesyoulearnwhileworkingwithyourcollaboration sites. Wehaveallheardofthatutopiaofapaperlesssocietywhereinformationflowsatthespeedoflight fromitspointofcreationtoeachuserwhomustreview,approve,anduseit.However,theelectronic revolutionofthe1990sand2000sdidnotfreeusfrompaper.PerhapstheInternetwasnotthesolution, althoughitwasanenablingtechnologythatmadeourvisionoftheofficeofthefuturepossible.Asa result,therisingtideofpaperonmostinformationworkers’desksseemstohavegottenbigger.Perhaps thetoolsofthelasttwodecadeswerejustnotready.Perhapsweweresimplymissingthatkeystone softwaretoolthatbringsitalltogetherintoacompellingargument. IsSharePointthattool?Ibelievethatitcanbetheenablerthatbringsourdreamofapaperless societyintoreality. Oh,yousayyouhaveheardofSharePoint,butthoughtthatitwasjustaportalforacompany’sweb site.Yes,itisthat,butthatisonlyonepartofthismany-facetedtool.
xix
■ INTRODUCTION
SharePointsitsontopofthemanytechnologies.Itborrowsalotfromwebdevelopment.However, italsointegratestightlyintotheMicrosoftOfficeproducts,givingthemtheabilitytoaccomplishgoals likethefollowing: •
Createshareddocumentlibrariesthatuserscanaccessfromanywheretheycan getanInternetconnectionortoworkonthosedocumentsofflineandthen synchronizetheirchangeswiththedocumentlibrarythenexttimetheyconnect totheircorporateintranet.
•
Presentelectronicformsthatpeopleinteractivelycomplete,ratherthanforcing themtodownloadandprinttheform,writeonit,senditback,andthenhave someoneenterthedataintoacomputerprograminterface.
•
Storemultipleversionsofdocumentssoarevisionhistorycanberetainedorto archiveacopyofadocumentintoyourcompany’spermanentrecordsarchival center.
•
DisplaybusinessinformationinExcel-stylepages,dashboardsandKey PerformanceIndicator(KPI)liststhatchangeinteractivelytohelpmanagersmake betterdecisions.
•
UseagileapplicationdevelopmentwithMicrosoftAccesstomeettheneedsof variousdepartmentsandgroupswithinyourcorporateenvironmentanddeploy thatapplicationtorunontheuser’sbrowsersotheycantrulyaccessitanywhere. BydeployingthroughAccessServicesonSharePoint,theseapplicationsare secure,backedup,andeasilymaintained,sincetheyonlyhaveasinglesourcefor thedata,theforms,andthereports.
Inthelastthreeyears,alargenumberofITpeopleworldwidestartedusingSharePoint.Theyare creatingwebsitesandcollaborationsitesbythethousandseveryday.Andthatisgood.However, SharePointwillnotreachitsfullpotentialuntileverycomputeruserwhoknowshowtouseMicrosoft OfficecanalsouseSharePointtogetherwiththeirfavoriteOfficeapplication,suchasMSWord,Outlook MSExcel,orMSAccess. ThisdoesnotmeanyouneedtoknowhowtoinstallSharePointorevenhowtoconfigureit (althoughunderstandingalittleoftheconfigurationwouldnothurt).However,itdoesmeanthatyou needtoknowhowtocreateanduselibraries,lists,andmanyotherfeatures.Itmeansthatyouneedto learnhowtouseOfficetoolslikeWord,Outlook,Excel,andAccesstonotonlycreateandmaintainyour ownfilesonaSharePointsite,butalsotostorefilesonacentralizedserveratyourcompanythatyoucan accessfromanywhereyoucangetanInternetconnection.Itshouldnolongermakeadifference whetheryouareconnectingthroughyourhomecomputerorusingyourlaptopandwirelessconnection ataresortwhileonvacation.Youcouldevenbeatyourlocallibraryusingitspubliccomputers.Perhaps youwillevenaccessyourinformationfromyourcellphoneortabletcomputer.Anywhere.Anytime. Thedreamofconnectingtoyourcorporatedataexiststodayandisonlyaconnectionaway. However,thereismorethanjustaccessingyourfiles.Youcanshareyourfileseasilywithyour colleaguesoreventheprojectconsultantwhoworksinadifferentcity.Let’screateworkflowswithout resortingtoprogrammingsothat,whenyoucreateadocument,youcanautomaticallysenditto someoneelseforrevieworapproval.Let’sseehowtoconsolidatelists,calendars,andtasksfrom multiplesources.Let’sdiscoverhowtocreateformsforotherstousedirectlyfromtheirbrowser.But mostofall,let’sseehowyoucanbecomemoreproductiveandefficientusingyourfavoriteMicrosoft OfficetoolstogetherwithSharePoint,withoutneedingtospendmonthslearninghowtoprogramfirst.
xx
■ INTRODUCTION
TherevolutioninthewayyouwillworkinanofficebeganthreeyearsagowithSharePoint2007.Are youready?YoualreadyknowhowtousethebasicMicrosoftOfficetools.Now,letmeshowyouhowto leveragethosetoolstoenhanceyourproductivityandfreeyoufromthatpaperavalanchehangingoff thesideofyourdesk.
WhoThisBookIsFor ThisbookisforthoseofyouwhohavebeenusingMicrosoftOfficeperhapsforyearstogetyourdaily workdoneandnowarelookingforwaystoshareyourworkwithyourcoworkersandtocollaboratewith them.Youmaynotreallywanttolearnprogramming.Youwouldratherleavethatforothers.However, youarewillingtousethetoolsandfeaturesthatprogrammersmakeavailabletoyouifitmakesyourjob easierorhelpsyougetyourworkdonequicker.Sure,maybewithsomeprogrammingskillsandsome time(perhapsalotoftime),youcouldmakeSharePointdomanyotherthingsthatitjustcannotdoout ofthebox.Ifthatisyourgoal,therearemanyotherexcellentbooksonthemarketthatwilltakeyou downthatroad.However,fornowyoujustneedtogetthemostoutofyourMicrosoftOfficetoolsas quicklyaspossible.Areyouoneofthosepeoplewillingtolearnanewtoolifitmakesyourjobeasier, faster,andperhapsevenfun?Ifthatdescribesyou,thenyouare(orcanbecome)apoweruserof MicrosoftOffice.Youcanbecomethatindispensablepersoninyourofficethatotherpeoplecometo whentheyneedtodosomethinginOfficeandSharePointbutdon’tquiteknowhowtobegin. WiththereleaseofbothanewMicrosoftOffice2010suiteandSharePointServer2010,thiscouldbe yourbesttimetotakethatnextstepinproductivityatyouroffice.Youcanleadthewaytoincreased collaborationbetweenprojectanddepartmentstaffmembers,buildthecontentforyourcompany intranetandInternetsites,andgogreenbyreducingtheuseofpaperinyourofficebyusingelectronic formsredirectedwithworkflows.Perhapsyoudreamofadaywhenyouwillnotneedasinglesheetof paperonyourdesktoptogetyourworkdone.Perhapsyourdreamistoenableyourcoworkersto collaboratefromanywherearoundtheworld.Perhapsyoudreamofadaywhenyoucanworkfrom homewithouthavingtocommutehourseachweektoandfromyourofficeorburnmoreofourprecious oilsittingintrafficjams.IfthissoundslikeIamdescribingyou,thenthisbookisyourstartingpoint towardthatfuture.
ContactingtheAuthor Youcancontacttheauthorbyemailat[email protected].Iwillbeestablishingablog,at www.micmin.org/blog.aspx,togoalongwiththisbook;therefromtimetotimeIwillpostadditionaltips andtricksrelatedtocollaborationbetweenMicrosoftOfficeandSharePoint2010.
xxi
CHAPTER 1
■■■
An Overview of SharePoint ThisbookfirstwentonsaleasMicrosoftintroducedSharePoint2010,aremarkablefollow-uptothe highlysuccessfulSharePoint2007product.Itishardtobelievethatitwasonlythreeyearsagothat SharePoint2007debutedasenterprise-levelapplicationsolutionfororganizationsdeployingvarious combinationsofinternet,intranet,andextranetsites.ItwassosuccessfulthatGartnerplaced SharePoint2007inits2008leader’squadrantforHorizontalPortalProducts,EnterpriseContent Management,andInformationAccessTechnology.ByheavilyleveragingMicrosoft’sOfficefamily products,theSharePointenvironmentallowsteamstoworktogetherandcollaborateevenwhen separatedacrossthecountryortheglobe. SharePoint2010continuesinthatfinetraditionbyenhancingitscollaborationfeatures.Throughout thelatestreleaseofthisproduct,youwillfindmanyimprovementsover2007;somelittleitems,others fairlymajor.TogethertheseimprovementsmakeSharePoint2010yourplatformofchoicefordeploying anyweb-basedinformationorapplicationswebsiteforyourcompanyorcustomers. TherearemanyopportunitiestoexploitSharePoint’sfeatures.Forsome,youneedafairamountof programmingexpertise.However,forpowerusersofMicrosoftOffice,youcaneasilymanipulatemany ofthefeaturesdirectlythroughtheinterfacewithlittletonocodingexperience.Inthisbook,Iwillfocus onhelpingyouextractthemostbenefitfromSharePointusingfamiliarMicrosoftOfficetoolssuchas Outlook,Word,Excel,PowerPoint,andAccess.Iwillalsohelpyouexploresomeofthelesser-known toolssuchasInfoPathtobuildanddeployforms,Groove(renamedSharePointWorkspace)tocreate customlocalcollaborationgroupsthatintegratewithSharePoint,andSharePointDesignerforthose whomaywanttodoalittlecustombrandingorcreatetheirowncustompagelayouts.Overall,thisbook concentratesoncollaboration-typeactivitiesasopposedtoInternetsitedevelopment.However,many ofthesametechniquesusedincollaborationsitesapplyjustaswellwhenworkingwithwebpages,web parts,libraries,andlists. Inthischapter,youwillfirstdiscoverthebasichierarchyconsistingofsitecollectionsandsitesused inSharePointsitedevelopment.Thinkofitascreatingtheframeworkofanewbuilding.Next,youwill seehowtobuildoutthatframeworkwithpages,libraries,lists,andmore.Youwillalsolearnhowtoset permissionsforusersandhowtodefineandinheritpermissionsfromonesitetoanother.Youwillgain anunderstandingofhowpermissionsaffectwhatausercandowithinasite,fromcreatingnewcontent tojustviewingsomeoneelse’scontent.Next,youwillbuildadocumentlibraryandlearnhowtouse MicrosoftWordtoaddandeditdocumentsstoredinthatlibrary.ThenIwillshowyouhowtopreserve theintegrityofyoureditingwiththeCheckOutandCheckInfacilityfordocuments.Finally,youwill exploretheuseofversioningtokeeptrackofchangesandtocontrolwhatinformationotherscanview.
1
CHAPTER1■ANOVERVIEWOFSHAREPOINT
SubsequentchaptersexploreSharePoint’sotherfeatures,fromliststhroughwebpages,butinall cases,youwilldiscoverhowtointegrateyourcurrentknowledgeofMicrosoftOfficetoolswithyour SharePointactivities.MygoalisnottomakeyouaSharePointadministratororevenaSharePoint programmer;rather,mygoalistomakeyouapoweruserwhenitcomestoworkingwithSharePointand MicrosoftOffice. ForthoseofyouwhomayhaveusedWindowsSharePointServices3.0(WSS3.0)forcollaboration withinyourcompany,youmaybepleasedtoknowthatWSSlivesonbutwithanewname,SharePoint Foundation2010.AlthoughIwillnotsingleoutfeaturesofSharePointFoundation2010,muchofwhatI coverincollaborationappliestothatproductaswell.Infact,Microsoftiscurrentlyexpectedtomarket atleastseveraldifferentversionsofSharePoint2010: •
•
•
•
SharePointServer2010:IntranetScenarios •
EnterpriseClientAccessLicense
•
StandardClientAccessLicense
SharePointServer2010:Internet/ExtranetScenarios •
SharePointServer2010forInternetSites,Enterprise
•
SharePointServer2010forInternetSites,Standard
FASTSearchversions •
FASTSearchServer2010forSharePoint
•
FASTSearchServer2010forInternetBusiness
EntryLevel/Pilotsolutions •
SharePointFoundation2010
•
SharePointOnline
•
SharePointOnlineforInternetSites
SiteCollections,Sites,andSub-sites SharePointorganizescontentaroundacontainerstructurereferredtoasasite.Infact,whenyoufirst installSharePointonaserveritcreatesasiteusedtomanagetheentireSharePointfarmcalledCentral Administration.However,otherthanyourSharePointadministrator,mostuserstypicallyneverinteract withCentralAdministration.Asitecancontainsub-sitesandthosesub-sitescancontainadditionalsubsites.Thetop-levelsitedefinestheoverallsitecollection.Youmaybeginyourinteractionatthistoplevelsiteoratoneofthesub-sitesinthesitecollection.ASharePointinstallationcanhavemultiplesite collections.TosupportSharePoint,youmayneedmorethanasingleservertosupportthedatabase, indexing,searching,applications,etc.AlloftheseserverstogetherconstituteaSharePointfarm.
2
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
SharePoint Farms SomeofyoumayhaveheardthetermSharePointfarmandwonderedwhattheyweretalkingabout. Surely,theydon’tgrowSharePointinthefieldsoutsideofRedmond,Washington.Rather,theSharePoint farmisanamegiventothecollectionofalloftheserversthatmakeyourSharePointinstallationwork.At itssimplest,youcouldbuildafarmwithasingleserveronwhichyouhaveeverythinginstalled.Small companiesmaygetalongfinewithasingleserverinstallation.However,asyoursitegrows,youmayfind theneedtomoveSQLServertoaseparatephysicalserver.Next,youmightaddseparatewebservers. Then,asyoursitecontinuestogrow,youmightneedaseparateserverforsearchingorindexingyoursites orperhapsaservertohostotherapplicationsthatyouwanttorunfromwithinSharePoint.Asyoucansee, yourserverneedscangrowfromsinglemachinestomultiplemachinessortoflike...well…likeweedson afarm. YoucreatesitecollectionsonlyfromwithinCentralAdministration.YourSharePointadministrator cancreatemultiplesitecollectionswithinwhatiscalledawebfarmandmaydefinedifferentsite collectionsfordifferentpurposes.AllotherSharePointuserstypicallycannotcreatetheirownsite collectionbutmustworkwithintheonegiventothemfromtheirSharePointadministrator.Therefore,I willnotgointocreationofsitecollectionsindetailinthisbook. Asitecollectionformsthecontainerinwhichyoubuildallsub-sites.Yourorganizationmayhave onesitecollectionortheymayhavemany,perhapsoneforeachdepartmentoreachdivision.However, nomatterhowmanysitecollectionsyouhave,youbuildeachofyourothersitesassub-sitesbeneath one,andonlyone,ofthesesitecollections.Interestingly,thesitecollectionmustcontainatleastonesite referredtoasthetop-levelsiteofthesitecollection,andfromwithinit,youcandisplaypages,lists,and libraries.Itisfromwithinanysitethatyoucanbuildasub-site,anothercontainerinsidethelarger container.ThismayremindyouofnestedRussiandolls,butthatimageisincomplete.Unlikenested Russiandolls,asitecanhavemorethanonesub-sitedirectlybeneathit.Tothatextent,thehierarchyis morelikeafamilywitheachparentsitehavingnochildren,onechild,ormultiplechildren.Figure1-1 showstypicalbutverysimplesitehierarchyarchitectureinSharePoint.
Figure1-1.Sitearchitecture
3
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Anotherinterestingthingaboutsitecollectionsisthateachsitecollectioncanbestoredwithina separatedatabaseinSQLServeroryoucancombinemultiplesitecollectionswithinasingledatabase. Storingeachsitecollectioninaseparatecontentdatabasemakesiteasytobackupandrestore individualsitecollections.Storingmultiplesitecollectionsinasingledatabasemeansthatthereare fewerbackupjobsfortheDBAtomanage.Usingseparatedatabasesmeansthateachdatabasecould resideonadifferentdrivethroughpartitioning.Soisitbesttoplaceallofyoursitecollectionswithina singleSQLdatabaseorshouldyouplaceeachsitecollectioninaseparatedatabase?Theanswerisnot clearlyoneortheother.Itisnotthatblackorwhite.Ratheritprobablyisalittleofboth.SharePoint administratorstrytolimitthenumberofsitecollectionsineachdatabasedependingontheamountof activityeachsiteisgoingtogetanditsexpectedsize.Theydothisforthefollowingreasons: •
ImprovedperformancewithinSharePointmayoccurbygroupingsiteswithinone databasethatarereadmoreoftenthanupdated.
•
Datacanberetrievedfasterifyouspreaddatabasesacrossmultiplediskdrives.
•
Keepthenumberofsitecollectionsinsomecontentdatabasessmallifthedata updatesfrequentlyandthelossofdatacouldbecritical.Thisalsomakesbackups andrestoresfasterbecauseeachdatabaseissmaller.
•
Specialsitecollectionscreatedforshorter-termprojectscanbemoreeasily archivedandremovedwhentheyarenolongerneededifyoustorethemintheir ownsitecollection.
Whenconsideringwhichsitecollectionshouldholdwhichsite,youmightbeinterestedingrouping siteswithsimilaruserpermissionstogetherinonesitecollectionsothatyoucanmanagethe permissionsatthetoplevelofthesitecollection.Youcouldthenalloweachsub-sitetoinheritthe permissionsofitsparent.Onlyifasub-siteneedsitsownuniquepermissionswouldyouneedtobreak inheritanceanddefinecustompermissions. Sowhatgoesintoasiteotherthanchildsites?Eachsiteyoucreatesupportsgroupsofrelatedpages, libraries,andlists.Thinkofthisasyoursite’scontentthatyoucanviewusingawebbrowser.Intermsof content,asitetypicallyfocusesonspecifictopics,groupsofpeople,orrelatedactivities.Eachsitehasa homepage,calleditsdefaultpage,whichisthefirstpageusersseewhengoingtothesite.Thisdefault pageusuallyprovidesnavigationtotheotherpagesinthesite,eitherthroughmenusorlinks.Each subsequentsitepagesupportscontentrangingfromliststolibrariestoplaintextandimages.Once created,togethertheyformwhatlookslikeatraditionalwebsite. SharePointcallsuserswhohavetheabilitytochangecontentwithinasitecontentcreators.Asa contentcreatorwithinSharePoint,youhavetheauthoritytocontroltheappearanceandcontentof pages.Nolongermustyousubmitcontentchangestoawebdesignpersonorwebmasterandthenwait forhimtoincorporatethechangesintoyourorganization’swebpages.Ifyoudefinedthesitefor collaboration,youmayworkwithgroupsofpeoplewithinyourorganizationwhoalsohavepermission toupdatelists,documents,andevencontentpages. Asmentionedpreviously,asitecanhaveoneormoresub-sites.Whileasub-siteinheritsmanyofits propertiesfromitsparentsite,youcanalsogiveititsownidentity,properties,andobjects.Youusesubsitestodividefurtherthefocusortopicofthehigher-levelsite.Forexample,ifonesiterepresentsa department,asub-sitemightrepresentaprojectorateamwithinthatdepartment. Whileyoutypicallystoreallcontentforasitewithinthatsite,thereisnoreasonwhyyoucannot referencecontentfromsub-sites.Infact,thetop-levelsite(thefirstsiteattherootofthesitecollection) hasseveralspecialobjectcollections.OneiscalledSiteCollectionImagesandtheotherisSiteCollection Documents.Botharelibrariesspecificallydesignedtosharefilesacrossanyofthesub-siteswithinthat sitecollection.
4
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Perhapsyou’rethinkingthatcreatingasitefromscratchsoundsalittleintimidating.Indeed,before SharePoint,theprospectofcreatingsitestosupportanentireorganizationwouldprobablyrequirea teamofdevelopersandmonthsoftime.However,SharePointstreamlinestheprocessofbuildingsites byprovidingacollectionoftemplatesforpagesandforvariousobjecttypesthatyoucanplaceonthose pagestohelpgetyoustarted.Ofcourse,asyouprogressinyourSharePointknowledge,youcanaddto thesetemplateswithyourownorthosefromthird-partydevelopers.Whilethisbookfocuseson collaborationsites,let’sstartwithaquickoverviewofallthesitetypesyoucancreateoutoftheboxwith SharePoint.I’llbeginwithcollaborationsites.
SiteCollectionTemplates SharePoint2010providesfivetypesofsitecollectiontemplates,asshowninFigure1-2.Eachtemplate providesauniquestartingpointforcreatinganewsitecollection.However,justbecauseeachsite collectiontemplateinitiallydefinesspecificuniquefeaturesandwebparts,itdoesnotlimityour subsequentcustomizationofthesite.Infact,SharePointallowsyoutocustomizeasitecreatedwithone templatewithfeaturesandwebpartsfoundinanother.Youcanevencreateyourowncustomtemplates startingfromoneofthesuppliedtemplates.Solet’sseewhateachsitecollaborationtemplatetype providesbybeginningwiththecollaborationtypetemplates.
CollaborationTemplates Collaborationtemplateshelpyoucreatesitesthatsupportahighdegreeofinteractionbetweenthe userswhohaveaccesstothosesites.Infact,mostpeoplewhogotocollaborationsitesgotheretoadd informationorrespondtoexistinginformation,notjusttolookatwhatisthere.SharePoint2010 providessixdifferenttemplatesthatitclassifiesascollaborationstyletemplatesthatitusestocreatea top-levelsiteinanewsitecollection.Youcanalsousemostoftheseassub-sites.Figure1-2showsthe availablecollaborationtemplates.Let’stakeabrieflookateachofthem.
Figure1-2.Collaborationtemplates
5
CHAPTER1■ANOVERVIEWOFSHAREPOINT
TeamSite Ateamsitetemplateservesasafast,out-of-the-boxstartingpointforcontentcreatedbyandforwork teams.Forthatreason,itmaybecomeyourfavoritesitetemplateforbuildingcollaborationsites.It providesacommonareaforcreatingandsharingofinformationusingdocumentlibrariesandlists.It letsyouestablishprojectcalendars,trackindividualandprojecttasks,andfacilitatediscussionsamong theteammembers. Figure1-3showsthehomepageofateamsitecreatedbytheSharePointadministratortobethe top-levelsiteinanewsitecollection.IhavemadeseveraladditionstoitsoIcanidentifythedifferent areasofthepagethatyouneedtobecomefamiliarwith,asIwillrefertothemoftenthroughoutthis book.Asyoubeginworkinthischapter,IwillassumethatyourSharePointadministratorhascreateda teamsiteforyoutouseinordertopracticeyournewskillsinthisandsubsequentchapters.Ifnot,goask foronenow.I’llwait.
■NoteAteamsitecreatedwithinSharePointincludesaMySitelinkintheMyProfiledrop-downmenuofyour usernamefoundintheupperrightofthescreen.Yourprofilepagethencontainslinkstotagsandnotesthatyou mayhavecreated.Italsocontainslinkstoyourorganizationinformation,colleagues,andmemberships.Ofcourse, theamountofinformationstoredinyourprofilepagewilldependonwhetherusersatyourorganizationchooseto usetheprofilefeatures.TheSiteActionsbuttonappearsontheupperleftsideofthescreenforthoseuserswho havepermissiontouseoneormoreoftheoptionsintheresultingdrop-downmenu.Userswhocanonlyviewthe sitewillnotseethisbutton.Thefollowingexamplesassumethatyouhavethenecessarypermissionstoeditsite content.Anythingdescribedherethatyoucannotseeonyoursiteisprobablyduetopermissionsettings,andyou shouldaskyourSharePointadministratorifyoucangetthoserightsatleastwithinyourpracticesitecollection.
Figure1-3.ThemajorsectionsofaSharePointpage
6
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
1.
ThetopbannerofthesitebeginswiththeSiteActionsdrop-downmenuon theleftside.Thismenuonlyappearsforuserswhohaveeditrightswithinthe site.NextistheNavigateUpicondisplayedasafolderwithanup-pointing arrow.Clickingthisoptionfromanypageshowsthesitehierarchyfromthe top-levelsitetothecurrentpage.Youcanclickonanyoftheintermediate levelstonavigateimmediatelytothatlevel.Thenexticonlookslikeapage withapencilonit;thisistheEditicon.Thisiconletsyoueditthecurrentpage, assumingyouhavethenecessarypermissions.Thisiconalsoactivatesthe EditingToolsforthepageandopenstheFormatTextribbonallowingyouto immediatelystartmakingchangestotextonthepage.Whenineditmodefor thepage,thisiconchangestoaSavelink.NextisthewordBrowse,which representsthedefaultdisplaymodeforthepage.ClickingBrowsewhile editingapagehidestheribbonsbutleavesthepageineditmode.Clickingthe wordPageopensthepageineditmodeliketheEditiconbutdisplaysthePage ribbon,whichincludesvariousactionsthatyoucanperformagainstthepage itself.Finally,onthefarrightofthisbannerSharePointdisplaysthenameof thecurrentlylogged-inuser.Ifyouaccessthesiteanonymously,youwillsee thewordsLog Ininstead.Yourusernameservesasadrop-downmenuthat includesoptionsthatallowyougotoyourprofile,changeyoursettings,signin asadifferentuser,andevensignoutofthesite.
■TipThesitedevelopersinsomeorganizationshavemultipleaccountsrepresentingdifferentpermissionsetsso thattheycanloginandviewpagesasotheruserswouldseethem.Forexample,membersoftheITdepartment mayhaveasecondaccountthatallowsthemtomanageanysiteintheentireSharePointfarm.
2.
TheTitleAreabeginsontheleftwiththesitelogofollowedimmediatelybythe nameofthesiteandthenbythenameofthepage.Beneaththesitename, SharePointdisplaysthesitedescription.Ontherightsideofthetitlearea,you willfindseveralbuttonsdependingontheoptionsyourSharePoint Administratorhasturnedon.Thefirstoneshowninthisimageallowsyouto addasuggestedtagtothepage,suchastheoneshownherethatsimplysays thatyoulikethepage.Ifyouwanttotagthepagewithyourowntextstringorif youwouldliketoaddanotetothepage,clickontheTags&Notesbutton foundonthefarright.Thisbuttonopensadialogthathastwotabs,onefor tagsandonefornotes.Youcanaddpublicandprivatetagsonthefirstpage. Tagstypicallyconsistofindividualwordsorshortphrases.Mostpeopleusetag wordstoidentifyrelatedcontent.Thepagecreatormaythencreateapage withthenewtagcloudwebpart,whichdisplaysthetagwordsinvarioussizes basedonthefrequencyoftheiruse.Whenauserclicksonataginthecloud,it displaysalistofthepageswherepeopleenteredthosetagwordssouserscan findrelatedcontent.Thesecondoptionofthisbuttonletsyoucreatenotes aboutthepage.Notesdifferfromtagsinthatnotesaremorelikelytoconsistof sentencesorevenparagraphscommentingonthepage.
7
CHAPTER1■ANOVERVIEWOFSHAREPOINT
3.
TheTopLinkBarliststhesub-sitesdefinedunderthecurrentsite.Whenauser createsanewsite,theyhavetheoptionofwhethertoincludethesiteinthe toplinkbaroftheparentsite.Theyalsohavetheoptionofwhethertousethe parent’stoplinkbarortobeginanewtoplinkbarbeginningwiththecurrent site.EventhoughthisremovesthelinktotheparentsiteontheTopLinkbar, theusercanstillreturntotheparentsitebyusingtheNavigateUpicon mentionedinthetopbanner.Ontherightsideofthetoplinkbar,youwillfind theSearchandtheHelpbuttons.
4.
TheQuickLauncharealocatedalongtheleftsideofthepageprovidesoneclickaccessnavigationtoselectedsites,documents,andlists.Dependingon yourpermissions,youcancustomizewhatappearsinthisareaandthe NavigationBar.
5.
TheMainContentareatakesuptherestofthepage.SharePointdividesthis areaintooneormorecontentsections.Youcanaddcontentineacharea consistingoftextlibraries,lists,andotherwebpartstocustomizeyourpage.
BlankSite TheblanksitetemplateisSharePoint’sversionofablanksheetofpaper.Thepersoncreatingasitewith thistemplatemustbuildthesite’spagecontentfromscratch.Untilyouhavedevelopedsomefamiliarity withtheotherbuilt-insitetemplatesandhaveexperiencecustomizingthemwiththeavailableweb parts,youmaywanttoskipovertheblanksite.Ontheotherhand,experiencedsitedevelopersoften prefertheblanksitetemplatebecausetheydonothavetowastetimedeletingormovingwebpartsand featuresthattheydonotwanttouseorthattheywanttoappearelsewhere.Instead,theycanfocuson buildingwhattheydowant.
DocumentWorkspace SharePointprovidesadocumentworkspacetemplatedesignedaroundcreatingaplacewhereagroup canworkcollaborativelyonasingledocument.Itfacilitatesthisthroughadocumentlibraryalongwith tasklistsforto-doitemsandliststotrackresourcesconsistingofbothpeopleandthings.Thesesitesare generallytemporaryandwhenworkisfinishedonthedocument,itispublishedtoadocumentlibrary onanothersiteafterwhichthesiteadministratororSharePointAdministratordeletestheworkspace.
Blog Blogsitesgenerallyexistforanindividualorteamtopostmajorideasorobservations.Blogsitesusually donotallowuserstoeditpriorpostingsbyothers,butuserscanpostcommentstoindividualblog entries.Blogentriestypicallyappearinreversechronologicalorder,makingiteasierforreaderstosee themostrecententries.Newsgroups,acloseanalogytoblogs,haveasimilarstructurebuttypicallypost entriesinachronologicalhierarchybeginningwiththeinitialentry. Bloggers(blogsitecontributors)typicallyuseblogsitestodiscusstheirprojectsorfavoritesubjects, ortoprovideadditionalinformationorviewpointsonwhattheyareworkingonorjustabout themselves.Infact,mostofthepeoplewhocreatedentriesonnewsgroupsnowuseblogsitesinstead.In addition,manyorganizationsuseinternalblogsitestodocumenttheirworkeffortonprojectsby creatingdailyorweeklyentriesdetailingtheprogressmadesincethelastentry.ForthoseStarTrekfans
8
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
outthere,youcanthinkofablogsiteasawrittenanaloguetotheCaptain’sLog.Maybeafuturerelease willaddvoice-to-texttranslationsforblogs.
GroupWorkSite Thistemplateisanothergroupwarealternativetoallowteamstoworktogether.Itincludesagroup calendartotrackschedules,circulation,phone-callmemolists,tasklists,andaDocumentlibrary.
VisioProcessRepository TheVisioProcessRepositorytemplateallowsteamstoview,share,andstoreVisioprocessdiagrams.It provides,bydefault,aversioneddocumentlibraryforstoringtheVisiodiagramsaswellasliststo manageannouncements,tasks,anddiscussionsrelatedtothosediagrams.
MeetingTemplates Meetingtemplatescomprisethesecondtemplatetypeandprovidepredefinedconfigurationsthat includespecificwebpartsinthedefaultsitetemplatetosupporttrackinginformationrelatedto meetings.SharePointreferstothesesitesasworkspacesratherthansitesbecausetheyprovidetools,web parts,andresourcesspecificallyorientedtowardfacilitatingtheactivitiesofworkgroupsforarelatively short-termactivity.Oncethatactivityiscomplete,youcanarchiveanddeletethesite.Meeting workspacesincludelistsanddocuments,links,andteammemberinformation. Whileeachmeetingtemplatehasauniquecombinationofwebpartsthatdefinesitscharacter, alwaysrememberthatyoucancustomizetheappearanceofyourmeetingworkspacetoincludeweb partstypicallyfoundinothertemplates.Solet’slookattheprovidedmeetingtemplatesaslistedin Figure1-4.
Figure1-4.Meetingtemplates
9
CHAPTER1■ANOVERVIEWOFSHAREPOINT
BasicMeetingWorkspace Mostmeetingshavecommonrequirementstohelpmembersplan,conduct,anddocumentthem. Thingslikeagendas,attendeelists,andlibrariesfordocumentsreviewedinpreparationforthemeeting, duringthemeeting,orasfollow-uptothemeetingdefineafewoftheimportantcomponentsofabasic meetingworkspace.
BlankMeetingWorkspace TheBlankMeetingworkspacetemplate,likeitsnameimplies,startswithnopredefinedpages containingspecificwebparts.Thistemplatebestsuitstheexperiencedsitedesignerwhopreferstostart withacleansiteratherthanspendingtimedeletingwebpartsfromapredefinedtemplate.
DecisionMeetingWorkspace Peoplecallmeetingsforavarietyofpurposes.Youmightholdameetingtobrainstormnewideasorplan thestepsofanewproject.Youcouldholdinformationalmeetingstoupdateyourstaffaboutactivitiesin othergroupsordepartments.Youmightevencallameetingtoevaluatelessonslearnedafteraproject ends.However,ifyourorganizationisanythinglikeours,youprobablycallmanymeetingsjusttomake adecision. Thisworkspacetemplateincludeswebpartstodocumentobjectives,agendas,andattendees.It includesadocumentlibrarythatholdsdocumentsrelevanttothedecisionathand.Italsoprovidesa meanstocreateatasklistpriortothemeeting,documentthedecision,andfollowuponassignedtasks.
SocialMeetingWorkspace TheSocialMeetingworkspaceincludesfeaturesthathelpplanforspecialeventssuchascompany picnics,awardspresentations,andconferences.Thisworkspaceincludesdiscussionboards,picture libraries,directionstotheevent,andlistsofthingstobring.
MultipageMeetingWorkspace Thistemplateincludesmanyofthefeaturesfoundinabasicmeetingworkspacebutisorganizedover multiplepages.Ofcourse,theotherworkspacetemplatespermittheadditionofmorepagesaswell,but youmayliketostartwiththepreconfiguredpagesinthistemplate.
EnterpriseSiteTypes Asthenameimplies,theEnterpriseSiteTypesonlybecomeavailablewiththeenterpriseversionof SharePoint2010.Iwilltouchonsomeoftheselater,butfornowlet’spreviewwhattemplatesSharePoint 2010addsfortheenterpriseuser.Figure1-5showstheenterprisetemplates.
10
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-5.Enterprisetemplates
DocumentCenter TheDocumentCentertemplateallowsyoutomanagedocumentsfromacentrallocationfor organizationswithalargevolumeofcontentand/oralargenumberofdocuments.
RecordsCenter TheRecordsCentertemplatesupportsrecordsroutingandcantrackandrouterecordsbasedonrules youdefine.Itcanholdrecordsbasedonadateorapprovalstatus,storerecordswithincomplete informationseparatelysoyoucanaddressthemmanually,andseparatelystorerecordsthatdonot matchanyexistingroutingrules.UnlikecontentaddedtomostotherSharePointsites,youcannotedit recordsafteryouaddthemtotherecordscenterrepository.
Records Centers MostorganizationshaveaRecordsCenter—acentralrepositorywheredocumentsaresentforlong-term storage.Theytypicallyretainthesedocumentsforlegalortaxreasonsforaspecifiednumberofyears. UsersdonotcreaterecordsinaRecordsCenter.Theycreaterecordsindocumentlibrariesorothersites. Oncetheynolongeractivelyneedthosedocuments,theysendthemtotheRecordsCentertobestored andmanageduntiltheyaredestroyed.Typically,yourorganization’slegaldepartmentexercisessomelevel ofcontrolovertheoperationoftheRecordsCenterandtherulesusedforretainingrecords.
BusinessIntelligenceCenter TheBusinessIntelligenceCenterisasitetodisplaydataintheformofBIreports,scorecards, dashboards,dataconnections,statuslists,statusindicators,etc.Itisagoodstartingsitefordisplaying ExcelServicesWorkbooksandforperforminganalysisofdatafrommultiplesources,creatingvisual chartsofdata,anddisplayingdashboards.ManyorganizationswillfindtheBusinessIntelligenceCenter ausefulwaytobuildsitesformanagementtoreviewthestatusofprojects.
11
CHAPTER1■ANOVERVIEWOFSHAREPOINT
EnterpriseSearchCenter TheEnterpriseSearchCentersitetemplatecreatessearchpages.Bydefault,theWelcomepagecontains twotabstoidentifydifferenttypesofsearches.Thefirstisageneralsearch.Thesecondtaballowsyouto searchforinformationaboutpeople.Inaddition,youcanaddmoretabstofocusonothersearch criteria,searchscopes,orresulttypes.
MySiteHost YoucanonlyusetheMySiteHosttemplatefromtheCentralAdministrationareabecauseitcreatesa containertohostallotherpersonalsites.Furthermore,youshouldonlyusethistemplateonceforeach UserProfileServiceApplication.Inotherwords,ifyougetallyouruserinformationfromonesourcelike ActiveDirectory,youneedonlyprovisionthissiteonce.Ontheotherhand,ifyouuseActiveDirectory foryouremployees,butperhapsanothertoolforextranetusers,youshouldcreatetwotop-levelhost sites. OnceyoucreatetheMySitecontainer,individualuserscancreatetheirownMySitehomepage (fromtheirnamedrop-down)totracknewsfeedsofinteresttothem,createcontentpagesandlibraries fortheirpersonaldocuments,andperhapscreatetheirownpersonalblogoftheirworkactivities.Of course,oneofthekeyadvantagesofstoringtheirpersonalfilesintheirMySitelibraryisthat,unlike theirlocalharddrive,theirMySiteisbackedupregularly.
BasicSearchCenter TheBasicSearchCentertemplatecreatesthenecessarypagesforgeneralsearchresultsandadvanced searches.Youcaneasilycustomizethissitewithlittletonocodetoprovideagoodsearchexperiencefor users.Commonfeaturesthatyoumightchangerangefromthebasiclookandfeelofthesearchpageto thenumberofresultsreturnedtotheusersfromasearch.
FASTSearchCenter TheFASTSearchCentertemplateisanotheronethatisonlyavailablefromCentralAdministrationand issimilartoEnterpriseSearchCenter.FAST(FastSearch&Transfer)Searchaddsseveralcapabilitiesto thestandardSharePointsearchincludingdocumentpreviewthatshowsthumbnailsofWordand PowerPointdocumentsrightinthesearchresults.Fastalsoletsyourerunthesearchbasedonaselected searchresultitemtofindsimilaritems;itcanautomaticallyeliminateduplicateresultsofthesameitem foundindifferentlocations.DeepResultsrefinementletsyousurfaceresultsthatyoumightnot otherwiseseeandyoucansortonmanagedpropertiessuchasauthoranddocumentsize.The refinementoptionsfoundontheleftsideoftheresultspageprovidedrill-downcapabilityfilteredonthe refinementandthegeneralsearchresults.UsersofFASTSearchcanalsosubscribetoanRSSfeedofthe searchresultsandcreateanalerttorerunthequeryatpredefinedintervalsthatcannotifytheuserof changesintheresults.
PublishingSites(onlyavailablefromCentralAdministration) SharePoint2010addstwospecialsitecollectiontypesthatyoucanonlycreatefromCentral Administration,showninFigure1-6,relatedtopublishingcontent:PublishingPortalandEnterprise Wiki.Organizationsusethesesitetemplatestocreateinternetorintranetsiteseitherfortheentire
12
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
organizationorforspecificgroupswithintheorganization.Theysupportfeaturessuchasthepage editingtoolbar,contenteditor,andseveralwebpartsspecifictocreatinginternetandintranetportals. Whilethisbookdoesnotfocusoncreatingwebportals,itmaybeusefultoknowwhatpublishingsites offerincaseyouneedtousethem.
Figure1-6.Publishingtemplates
PublishingPortal ThePublishingPortal’sfocusisasastartingpointforahierarchyofInternet-facingsitesandpages.You canalsouseittoorganizeanintranetportalforusebyyouremployees.Publishingsitestypicallyhave morereadersthancreators,unlikecollaborationsiteswherethecreatorsarethereaders.Alsounlike collaborationsites,youtypicallypublishcontentheresubjecttoapprovalbeforeotherscanseeit.Often SharePointdeveloperscustomizethelookandfeelofsitestoestablishabrandingviathemes,custom masterpages,andCSSfiles.OrganizationsoftenusethePublishingPortaltemplatetopublish informationthattheywantthepublictosee.
EnterpriseWiki WikimeansquickorfastinHawaiian,andthereforetheEnterpriseWikisitetemplateprovidesaquick waytoshareanddiscussinformation.Theuserswithcontentcreationrightsinthesesitescaneasilyedit thecontentandlinknewpagesusingkeywordsinthetopictext.Wikisitesgenerallyconsistofasetof collaborativewebpagestowhichuserscaneasilycontributecontent.Linksbetweenthepagesofawiki siteallowreaderstobranchfromthemaintopictorelatedtopicsastheyappearinthetextashyperlinks. Forexample,youmightuseawikitopublishtricksandtipsforvariousapplicationswithinyour organization.Linksmightrefertosimilartricksdescribedonotherpages.Youcanalsousepagesto presentdefinitionsfortechnicaltermsyourorganizationuses,organizationalinformation,project definitions,andadditionalusefulpiecesofinformation.
13
CHAPTER1■ANOVERVIEWOFSHAREPOINT
■NoteTypically,onlyyourSharePointFarmAdministratorhasthepermissionsnecessarytocreatetop-levelsite publishingtemplatesdescribedhere.
OtherSiteTemplates Youcanusemostofthesitecollectiontemplatesexaminedinthelastsectionnotonlyasthetop-level siteinasitecollection,butalsotodefineasub-site.Theexceptionstothisdualuseinclude: •
BusinessIntelligenceCenter
•
MySiteHost
•
PublishingPortal
However,SharePointprovidesadditionalsitetemplatesthatmayonlyappearassub-sites dependingonthetypeofsitecollectionfromwhichyoubegin.Asyouwillseelater,youcancreatesubsitesbeneathanytop-levelsiteofasitecollection(assumingyouhavesitecreationpermissions).Figure 1-7showsthesitecreationscreenandsomeofthepossiblesitetemplatesavailable.
Figure1-7.Publishingtemplates
14
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
IfyoudonothaveSilverlightrunningwithyourbrowser,yourexperienceonthisscreenandmany otherswillbedifferent.Figure1-8showsatabbedversionoftheCreatepagewiththerecommendation toinstallSilverlighttoimprovetheuserexperience.
Figure1-8.Publishingtemplates Fornow,notethatSharePointcategorizessitesdifferentlywhenyoucreateasub-siteunderatoplevelsiteoranothersiteascomparedwiththeorganizationoftemplateswhencreatingatop-levelsite foranewsitecollectionfromwithinCentralAdministration.Infact,Figure1-7showstheuser experiencefromacomputerwithSilverlightinstalled.Ifyouhaveacomputerthatdoesnothave Silverlight,yourexperience(andmanyotherscreensthroughoutSharePoint)willappearmoreliketheir SharePoint2007versionsusingtabs(likeFigure1-8).Forthepurposeofallimagesinthisbook,Iwill assumeamachinewithSilverlightinstalled.NotethatwithSilverlight,insteadofatabbedwindow,you canselectthesecategoriesfromtheheadingFilterByoptionintheleftcolumnofthefigure.Alsonote thatyoucanusemanyofthesetemplatestocreateatop-levelsiteinanewsitecollection.Someofthe newtemplatesthatyoucanusewhencreatingasub-siteinclude: •
AssetsWebDatabase
•
CharitableContributionsWeb
•
ContactsWebDatabase
•
IssuesWebDatabase
15
CHAPTER1■ANOVERVIEWOFSHAREPOINT
•
PersonalizationSite
•
ProjectsWebDatabase
•
PublishingSite
•
PublishingSitewithWorkflow
•
EnterpriseWiki
ApplicationsSiteTypes ApplicationsitetypesareanewadditiontoSharePoint2010.SharePointprovidesseveralbuilt-inbut fullyfunctionalexamplesofhowtobuildanapplicationtypesitebasedonaMicrosoftAccessdatabase andusingAccessServices.Atthetimeofwriting,fiveapplicationsareincluded.Thatcouldchangeby theproductreleasedateorasadditionalapplicationsbecomeavailable.
AssetsWebDatabase YoucanusetheAssetsWebDatabasesitetemplatetocreateasub-sitetotrackassets,theirdetails,their owners,andmore.
CharitableContributions TheCharitableContributionsapplicationisanotherAccessapplicationrunningwithinSharePointthat tracksinformationaboutfundraisingcampaigns.Itletsyoutrackdonationsbycontributor,campaign events,andtasks.
ContactsWebDatabase TheContactsWebDatabaseapplicationletsyoumanageinformationaboutpeople.Thiscanrepresent peopleinateam,aproject,orcompany.Youcantrackwhoeachpersonworkswithandidentify customersandpartners.
IssuesWebDatabase TheIssuesWebDatabaseapplicationtemplateprovidesaready-to-usesitethatusesanAccess applicationwithinSharePointtotrackandreportonsoftwaredevelopmentbugsandissues.Aswiththe otherapplications,SharePointdisplaystheAccessformsandreportsfromthisapplicationdirectly withintheSharePointpage.
ProjectsWebDatabase WhileSharePoint2007providedliststotracktaskswithinindividualprojects,itwasdifficulttotrack multipleprojects.TheProjectsWebDatabaseapplicationletsyounotonlytrackthetasksformultiple projects,butalsotoassignthosetaskstoindividuals.
16
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
AdditionalSiteTemplates SharePointprovidesafewadditionalsitetemplatesthatarenotapplicationsusingAccess.Youcanuse twoofthesesitetemplateswithinatop-levelsitecreatedwiththePublishingPortalsitecollection template.Thethirdsitetemplate,thePersonalizationsite,isoptimizedtoworkundertheMySiteHost sitecollection.
PersonalizationSite ThePersonalizationSitetemplateallowsuserstocreatecustomviewsofavailablesiteinformation. Usersofapersonalizedsitecandefinenavigationtopagesimportanttothem,bypassingthenavigation ofthemainsitetowhichitbelongs.
PublishingSite SharePointdesignedPublishingSitesspecificallytodisplaybasiccontentonwebpages.Developersof internetorintranetsitesoftenusethePublishingSitetemplateasastartingpoint.However,youcan includedocumentandimagelibrariesaswellaslistsandotherwebpartobjects.
PublishingSitewithWorkflow SharePointbasesthePublishingSitewithWorkflowtemplateonthePublishingSitetemplatebutadds theabilitytoincludeworkflows.Workflowsmightrequiredocumentstohaveapprovalbeforemaking themavailableforthegeneralusertoview.
ListsandLibraryTypes Oneofthemostbasicobjectsthatyoucanaddtomostsitesisalibrary.Librariesstoredocuments, images,reports,andotherobjects.Somelibrariesserveasageneralcollectionpointfordifferenttypesof documents.Ontheotherhand,youcancreateotherlibrariesforveryspecificpurposeswithonly particularfiletypesallowed.Thus,thetypeoflibraryyouneeddependsonwhattypeofinformationyou wanttostoreinthelibrary.Let’sexamineafewofthebasiclibrarytypesfoundinatypicalcollaboration site,asshowninFigure1-9.
17
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-9.Librarytemplates
AssetLibrary TheAssetLibraryisanewlibrarytypethatprovidesaplacetostore,share,andmanagemanyrichmedia assetsfromimagestoaudioandvideofiles.WithSharePoint2010’ssupportofstreamingvideos,the AssetLibraryprovidesabetterlibrarytypetostoremediafiles.
DataConnectionLibrary Ifyouneedtoworkwithexternaldatasources,meaningdataoutsideofaSharePointlist,youneedto createdataconnectionstothosedatasources.WiththenewBusinessConnectivityServices(BCS),your dataconnectionscanbothreadandwritedatatoanexternaldatasource.Iwillreturntolookat creating,storingandusingdataconnectionsinseveralofthelaterchapters,includingthechapterson InfoPathandAccess.
DocumentLibrary TheDocumentLibraryisthemostcommonlibrarytype.Itcanholdpracticallyanyfiletypenormally foundonyourcomputer’sharddisk.Adocumentlibrary,likeadiskdirectory,canstoresvariousfile typeswithlittleornorelationshiptoeachother.However,goodfilemanagementappliesasmuchto SharePointlibrariesasitdoestoyourharddisk.Justasyoumightcreatedifferentdirectoriesfor differenttypesoffiles,projects,orapplications,youshouldconsidercreatingandmanagingmultiple documentlibrariessoallfilesinonedocumentlibraryhaveacommonfocus,perhapsevenacommon
18
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
type.Ofcourse,youcanusemetadatacolumnsandfilteredviewstodisplaydifferentsubsetsofa documentlibrary’sfilesandavoidtheuseofmultiplelibrariesandevenfolderswithinthelibraries. Chapter4coversmoredetailsonusingdocumentlibraries.
FormLibrary TheFormLibrarystorestheXMLsourcedocumentsforformscreatedwithMicrosoftOfficeInfoPath. UserswithInfoPathinstalledontheirlocalcomputercanstoreformdefinitionsinanydocument library,butthenpublishthemastemplatestoformlibraries.IcoverworkingwithInfoPathandForm LibrariesinmoredetailinChapters9and10.
PictureLibrary ThePictureLibraryprovidesacommonplacetostoreimagesusedincontentpagesonyoursite.You mightalsouseapicturelibrarytostoreimagesorphotographsforyoursalesormarketingstafftohelp themprovideaconsistentmessage.Picturelibrariesalsoprovideastoragelocationforpicturesusedin webpages.Bydefault,somesitetemplates,suchasthepublishingtemplates,createalibrarycalled Imagesspecificallyforimagesusedonwebpages.Inaddition,thetop-levelsiteinasitecollection createsalibrarycalledSiteCollectionImages.Chapter12coversmoredetailsaboutthepicturelibrary.
ReportLibrary(SharePoint2010EnterpriseEditiononly) TheReportLibrarystoreswebpagesanddocumentsthatworkwithwebpartstotrackmetrics,goals, andbusinessintelligenceinformation.Chapter8examinestheReportLibraryindetail.
RecordLibrary TheRecordlibraryisessentiallyadocumentlibrary,butfocusedonstoringimportantbusiness informationthatyoumustoftenretainforlegaland/ortaxreasons.Youwillreturntothislibraryin Chapter12whenItalkaboutcreatingaRecordCenter.
SlideLibrary SharePointprovidestheSlideLibrarytoworkspecificallywithMicrosoftPowerPointforthestoringof individualslides.Chapter12explorestheSlideLibraryindetail.
TranslationManagementLibrary(SharePoint2010EnterpriseEditiononly) YouwillfindtheTranslationManagementlibraryonlyintheenterpriseeditionofSharePoint2010, whereadvancedsitedesignersuseittomanagetranslationworkflows.Atranslationmanagement workflowmanagestheprocessofroutingadocumenttodesignatedtranslatorsreadfromaLanguage andTranslatorslist.Theworkflownotifieseachtranslatorforthedocumentofthetask.Aseach translatorfinishesthetranslationoftheircopyofthedocument,theycanmarktheirpartofthe workflowascomplete.Theentireworkflowisnotcompleteuntilalltranslatorsforthedocumenthave finishedtheirtranslations.
19
CHAPTER1■ANOVERVIEWOFSHAREPOINT
WikiPageLibrary Theprevioussectionbrieflymentionedwikisitesanddefinedthemasaforumforuserstoaddtheirown linkablecontentonindividualtopics.Therefore,itshouldcomeasnosurprisethatwikisitesneeda specialtypeoflibrarytosupportusercollaboration.SharePointusestheWikiPageLibraryasthestorage containertoholdwikipagecontent. ThesearenottheonlylibrariesthatSharePointsupports.However,ifyoulearnhowtoworkwithat leasttheselibraries,youcanworkwithanyotherlibrariesyoumayfindonyourSharePointinstallation.
PermissionsandGroups Whenyou,asSharePointadministrator,setupatop-levelsite,youneedtodeterminewhocanview, edit,anddesignpagesandcontentonthesite.Youmayhaveaverysimplesitethateveryonecanview, oryoumaywanttolimityoursitetoonlythepeopleinyourcompany,yourdepartment,oryourproject. Youalsoneedtodecidewhocancontributecontenttoyoursite,whocanmakedesignchange,andwho canapprovecontentforpublishingsitesbeforemakingitvisibletothepublic.Atfirst,youmaythink thatyoucandothisonaperson-by-personbasis,butformostsites,youtypicallyhavegroupsofpeople towhomyouwanttoassignthesamerights.Infact,aftercarefulanalysis,youmayonlyhaveasmall numberofgroupsthatrequireuniquerights.Forthatreason,SharePointallowsyoutoassociateusers togetheringroupsandthenassignpermissionlevelstothosegroups.Then,whenyouneedtoassign permissionstoanewuser,youcansimplydetermineinwhichgrouptheyshouldbelongandassign themtothatgrouptodefinetheirpermissionsautomatically. Oneofthefirstgroupsyouwillprobablyencounteristhesiteownergroup.Whenyoucreateanew sitecollection,youcanassociateuptotwositecollectionadministratorstoit.Althoughyoucangetby withonesitecollectionadministrator,Ialwaysrecommendabackup.Forthetop-levelsiteofthesite collection,thesetwoadministratorsautomaticallyreceiveownerrights.Inasimilarfashion,anyonewho hasthepermissiontocreatenewsitesautomaticallybecomesanownerforanysitestheycreate.Site ownerscanthenaddotherusersandgroupstothesite,customizeordeleteitemswithinasite,and createanddeleteadditionalsub-sitesunderthecurrentsite.Therefore,ifyou,asSharePoint administrator,haveturnedontheMySitesfunctionalityofSharePoint,eachuseristheownerofatleast onesite,theirpersonalMySite. Notethatyou,asSharePointadministrator,alsodeterminewhetherthesitesallowanonymous accessaslongasyouenableanonymousaccessatthewebapplicationlevel.Thenthesitecreatorfor everysitecreatedbelowthetop-levelsitecanenableordisableanonymousaccessaslongassheenables anonymousaccessforitsparentsite.
■NoteBeforethesitecollectionadministratorcanturnonoroffanonymousaccesstoasite,theSharePointFarm administratormustgointoCentralAdministrationandturnanonymousaccessonforthewebapplication.Thisis donebygoingthroughtheAuthenticationProvidersoptionoftheSecuritysettingsandselectingthedefault zone.Ontheresultingauthenticationpropertypage,shecansetthetypeofauthentication(Windows,Form,or WebSingleSignOn)andenableanonymousaccess,amongotherthings.
Thepersonwhocreatesasite,evenatop-levelsite,automaticallybecomesanownerofthatsite. Thesiteownershavethepermissionsneededtoaddadditionaluserstooneormoreofthesitegroupsor
20
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
createtheirownnewgroupswithcustompermissions.Newsitesbeginwitheitherthepermission groupsfromtheirparentsiteifthesiteinheritsitspermissionsduringcreationoradefaultofthree groupswhenyoucreateasitewithuniquepermissions.Atop-levelsitealsobeginswiththesethree defaultgroupsasdescribedbelow.Noticethateachgroupnamebeginswiththesitename.
Visitors Thisgroupdefinesthelowestdefaultsecuritygroup,andSharePointassociatesitwiththeRead permissionlevel,whichallowsthegroupmemberstoonlyviewpagesanditems.Theycannot contributecontent.TheymayhavetheabilitytocreateaSelf-ServiceSiteiftheSharePointadministrator activatesthatfeature.Theyserveasanadministratorinthesesitesonly.Foreveryothersite,theRead permissionlevelgrantsthefollowingindividualpermissions: •
ViewItems:Viewlistitemsincludingdocumentsinlibraries.
•
OpenItems:Viewdocumentsourcewithserver-sidefilehandles.
•
ViewVersions:Viewpastversionsoflistanddocumentitems.
•
CreateAlerts:Createalertsforchangestolistsandlibraries.
•
ViewApplicationPages:Viewforms,views,andapplicationpages.
•
UseSelf-ServiceSiteCreation:CreateawebsiteusingSelf-ServiceSiteCreation (yourSharePointAdministratormayhaveturnedthispermissionoffdepending onyourcompanypolicies).
•
ViewPages:Viewpagesinawebsite.
•
BrowseUserInformation:Viewinformationaboutsiteusers.
•
UseRemoteInterfaces:UseSOAP,WebDAV,theClientObjectModeland SharePointDesignertoaccessthiswebsite(yourSharePointAdministratormay haveturnedthispermissionoffdependingonyourcompanypolicies).
•
UseClientIntegrationFeatures:Usefeaturesthatlaunchclientapplications.
•
Open:Allowuserstoopenawebsite,list,orfoldertoaccessitemswithinit.
WhileyourSharePointadministratortypicallyhandlesthecreationofpermissionlevelsandsecurity groups,youmightbeinterestedtoknowthatSharePointsupports32differentindividualpermissions, whichyoucancombineinvariouswaysintopermissionlevels.ThedefaultReadpermissionlevel includesonlythepermissionspreviouslylisted.
Members SharePointassociatesthisgroupwiththepredefinedpermissionlevel:Contribute.Comparedtothe Visitorsgroup,thispermissionlevelhasadditionalrightstoadd,edit,anddeleteitemstolistsand libraries,includingpagelibraries.Usersinthisgroupcanworkwithwebpartsandcreatecontent. However,theymayormaynotbeabletocreatenewlistsorlibrariesdependingonhowtheSharePoint administratordefinedthepermissiontomanagelists,which,bydefault,SharePointdoesnotgrant.In addition,anycontenttheycreateorupdatemayrequireapprovalbyapersonwithapprovalrights beforeotherscanseeit.Membersofthisgrouptypicallycannotapprovethecontenttheycreate.
21
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Owners SharePointassociatestheOwnersgroupwiththeFullControlpermissionlevel.Bydefault,this permissionlevelincludesall32individualpermissionsandyoucannoteditit.Usersassignedtothis groupcanview,add,update,delete,approve,andcustomizeallaspectsofthesite.Theyalsohavethe abilitytoaddnewusersandgroups,aswellasassignpermissionsandcreatenewsites.Ifyoudonot wanttograntquitethismuchaccess,youmustcreateyourowncustompermissionlevel. Shouldyoudecidenottoincludeanewuserinoneofthepredefinedsitegroups,youcanassign themtoapermissionleveldirectlyusingtheoptionsintheGrantPermissionsectionofthepageshown inFigure1-10.Initially,SharePointdefinesseveralpermissionlevels,ofwhichthreearedirectly associatedwithoneofthesitegroupsjustdiscussed:
22
•
FullControl:Userswiththispermissionlevelsharethesamepermissionsasthe SiteOwnersandhavefullaccesstoallfunctionalityofthesite.
•
Design:Adesignercanmanagelistsandlibraries,createpages,andcustomize them.TheymayapprovepagescreatedbytheSiteMembergroup.Theycanalso overrideCheckOutlocksonlistsandlibraryitemscreatedbycontributors.They donothavetheabilitytoaddormanageusers,createordeletesub-sites,manage alerts,orenumeratepermissions.
•
Contribute:Contributorscanview,add,update,anddeletecontentonthesite includingitemsanddocuments,buttheycannotapprovethatcontentonsites thatrequireapproval.Therefore,visitorstothesitecannotseetheirchangesuntil someonewiththepermissiontoapprovethemdoesso.
•
Read:Userswiththisgrouppermissioncanviewpagesandlistitemsjustlike memberswiththeViewpermission,andtheycanalsodownloaddocuments.
•
ViewOnly:Userswiththispermissionlevelcanviewpages,listitems,and documents.Furthermore,ifthedocumenthasaserver-sidefilehandler,theycan viewthedocumentonlythroughthatfilehandler.
•
Approve:Membersofthisgroupcaneditandapprovepages,listitems,and documentscreatedbyothersbeforepublishingthem.
•
ManageHierarchy:Thisgroup'smemberscancreatesitesandeditpages,list items,anddocuments.
•
RestrictedRead:Thisgroupcanreadpagesanddocuments,butcannotview historicalversionsoruserpermissions.
•
RecordsCenterWebServiceSubmitters:Usethisgroupspecificallywiththe RecordsCentersitetograntpermissionstouserswhoneedtosubmitcontentto thesiteviaWebServices.
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-10.Permissionoptions Inadditiontothedefaultgroups,youcanaddothergroupsoreditthepermissionsofexisting groups.Forexample,supposeyouwanttocreateaseparategroupthathasalmostallthepermissionsof asiteowner,butyouwanttowithholdthefollowingpermissionsfromthisgroup: •
ApproveItems
•
ApplyThemesandBorders
•
ApplyStyleSheets
Todothis,openyoursiteandclickontheSiteActionsdrop-downmenuontheupperleftofthe page.ThenselectSiteSettings.FromtheSiteSettingspage,selectSitePermissionsfoundintheUsers andPermissionsgroupoftheSiteSettingspage.Figure1-11showsthispage.
23
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-11.SiteActionsmenu TheSitePermissionspageshowninFigure1-12displaysoptionstoletyoucreatenewusergroups; grant,edit,andremovepermissions;definenewpermissionlevels;andsetorresetthesitecollection administratorsifyouareinatop-levelsite.Fornow,yourgoalistocreateanewgroupcalledSite AdministratorsthathasanewpermissionlevelcalledSiteAdministrator.
Figure1-12.Selectingpermissionlevels
24
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
■NoteIfyouarenotinthetop-levelsiteofthesitecollectionFigure1-12willappearsomewhatdifferent.Ifthe siteownercreatedthesitebyinheritingpermissions,youmustfirstclickontheoptionStopInheriting PermissionsthatwillappearintheInheritancegroup.
SharePointbreaksdowntheseoptionsintofivesectionswithintheribbon: •
Grant:Thissectionincludesoptionstocreategroupsandgrantinitialpermissions toagroup.
•
Modify:SharePointenablestheoptionsinthissectiononlyafteryouselectoneor moreoftheuser/groupsinthelistbelowtheribbonsothatyoucanmodifythe permissionsofthatgroup.[Thisgrouponlyappearsifyoucaneditthe permissions.]
•
Check:Thisoptionopensaseparatewindowinwhichyoumustenterthenameof theuserorgroupyouwanttocheck.Itthenliststhepermissionsfortheselected userorgroupandidentifieswhethertheyreceivedpermissionsdirectlyorthrough membershipinanothergroup.
•
Manage:Thissectionallowsyoutomanagethepermissionsinanyofthe permissionlevelsortocreateyourown.Youmayalsobeabletomanageaccess requestsandthesitecollectionadministratorsforthesitedependingonyour permissions.[Thisgrouponlyappearsifyoucaneditthepermissions.]
•
Inheritance:ThissectionwilleitherletyouStopInheritingPermissionsorto ManageParentpermissionsifthecurrentsub-siteinheritspermissionsfromthe parentsite,oritwilldisplayabuttontoallowyoutoInheritPermissionsagain fromtheparentifyoupreviouslybrokeinheritance.[Thisgrouponlyappearsfor sub-sitesofthetop-levelsite.]
Belowtheribbon,youwillseethegroupscurrentlydefinedforthesiteandtheirpermissionlevels. Youcanchangethepermissionlevelassociatedwiththegroupbyselectingthegroupusingthecheck boxtotheimmediateleftofthegroupnameandthenclickingEdituserpermissionsintheModify groupoftheribbon.YoucancreatenewgroupsbyclickingtheCreateGroupoptionintheGrant sectionoftheribbon.Youwillreturntothisoptiontocreateanewgroupinaminute. BeforeaddingthenewgroupSiteAdministrators,let’screatethenewpermissionlevelSite Administrator.Youmustcreatepermissionlevelsatthetop-levelsiteevenifyouonlyusetheminoneof thesub-sites.Ifyouarenotatthetop-levelsite,whenyouclickPermissionLevelsintheManagegroup ofthePermissionToolsribbon,youwillnotseeaCreateoption.Rather,youwillseeintheleft navigationalinktoManagePermissionsLevelsonParentWebSite.Tocontinue,youcanclickthis linktoreturntothepermissionlevelsofthetop-levelsite. Next,tocreateacustompermissionlevel,youhavetwochoices:eitherchangethepermissions associatedwithanexistingpermissionlevelorcreateanewpermissionlevelwithyourunique permissions.Thenassignittoanexistingornewsitegroup.However,beforeyoudecidewhattodo,let’s examinewhatpermissionsmakeupeachpermissionlevel. ThePermissionLevelspageshowninFigure1-13displaysthecurrentlydefinedpermissionlevels inthecurrentsitecollection.NoticethatyoucannotaccesstheFullControlandLimitedAccess permissionlevels.Theselevelsmustalwaysexist,andtheirdefinitionscannotchange.TheFullControl levelbelongstositeownersandinsuresthattheseusersalwayshavefullpermissionsoverthesite.The
25
CHAPTER1■ANOVERVIEWOFSHAREPOINT
LimitedAccesslevelbelongstositeguestswhoonlyhavelimitedaccesstospecificlistsordocuments libraries,nottheentiresite.
Figure1-13.Reviewingpermissionlevels Inyourcase,youwanttoaddanewpermissionlevelcalledSiteAdministrator.Userswiththis permissionwillbeabletodoalmosteverythingasiteownercandoexceptapprovepagesandapply themesandstyles.BeginbyclickingtheAddaPermissionLevelmenuoptionnearthetopofthepage todisplaythepageshowninFigure1-14.Thefirstsectionasksyoutoprovideanameanddescription forthenewlevel.Thenyoucanselectfromthepossiblepermissions.SharePointcategorizes permissionsintothreemajorgroups: •
ListPermissions:Relatestolistobjectsincludinglibraries.
•
SitePermissions:Relatestosites.
•
PersonalPermissions:Relatestopersonalization.
Notethatinordertosavespace,thefollowingimageonlydisplaysthefirstportionoftheAdda PermissionLevelpage.
26
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-14.Addingapermissionleveldefinition Ofcourse,youcanselectallpermissionsbyeitherclickingeachpermissioncheckboxindividually orbycheckingtheSelectAlloption.Thenjustdeselectthepermissionsyoudonotwanttograntforthe currentleveldefinition.Whensatisfiedwiththepermissionsettingsselectedforyournewlevel,click Createtobuildthenewpermissionleveldefinition.ReturningtothePermissionLevelspage,younow seetheSiteAdministratorpermissionlevelasshowninFigure1-15.
27
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-15.Yournewpermissionlevelappearsinthelist. Atthispoint,youmightgobacktotheSitePermissionspageforyoursiteandaddagroup specificallyforSiteAdministratorsusingtheCreateGroupoptionintheGrantsection.OntheNew Grouppage,enteragroupnameSite Administratorsalongwithadescription.Youwillseeother optionsthatallowyoutoaddanownerforthegroup(typicallythesiteowner),changegroupsettings, andhandlemembershiprequests.IwillnotdetailtheseoptionsherebecauseyourSharePoint administratortypicallydefinesstandardsformostoftheseoptionsforyou.Theimportantselectionis thelastoneinwhichyoucanassignapermissionleveltothisnewgroup.Thenfinishcreatingthegroup byclickingtheCreatebuttonatthebottomofthepage,asshowninFigure1-16.
28
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-16.Definethepropertiesofyournewgroup
29
CHAPTER1■ANOVERVIEWOFSHAREPOINT
AfterclickingCreate,SharePointfinishescreatingthegroupandopensthePeopleandGroups pagewiththenewgroupselectedsoyoucancontinuebyaddinguserstothegroup.NoticeinFigure 1-17thatSharePointautomaticallyaddstheGroupOwnerasamemberofthenewgroup.
■TipYoucannestonegroupinsideanothergroup.Thiscanbefasterthanremovingusersfromonegroupand addingthemtoanother.ForthosefamiliarwithActiveDirectory,youcanaddActiveDirectorygroupsasusers withinaSharePointgrouptoassociateallusersinthatActiveDirectorygroupwiththepermissionsassociatedwith theSharePointgroup.
Figure1-17.YournewgroupappearsinthegroupslistontheleftofPeopleandGroups. Insummary,beforeaddinguserstoagroup,youneedtodeterminewhatgroupsyouneedandwhat permissionsthosegroupsshouldhave.ThenyoucanworkwithyourSharePointadministratortocreate thosegroupswiththerightpermissionsandensurethatsheaddsuserstotheappropriategroup.
AddingaDocumentLibrary Inmostcases,whenyoufirstcreateacollaborationsite,yougetadefaultdocumentlibrarycalled SharedDocuments.Inapublishingsite,SharePointcallsthedefaultdocumentlibraryDocumentsbut isessentiallythesamething.However,youmaywanttocreateadditionaldocumentlibrarieswiththeir ownnames.Infact,justasyouwouldusemultipledirectoriesonyourlocalharddiskoryourfileserver fordifferentfiletypesorprojects,youmightconsiderusingmultipledocumentlibrariesinSharePointto organizeyoursite’sdocuments.
30
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Why Do I Need More than one Document Library? Documentlibrariescancontainhundreds,eventhousands,ofdocuments.Youcanstoredifferenttypesof documentsinalibrary,althoughthemostcommontypewillprobablybeOfficedocumentssuchasWord, Excel,andPowerPointfiles.However,youcanalsosavetextfiles,PDFs,andmanyotherfiletypes.You cangroupfilesbytypeindifferentfolders.Youcanalsogroupfilesbytheircreatorindifferentfolders.In fact,youcancreatefoldersforanycriteriayoumightwant.SharePoint2010alsointroducestheconcept ofDocumentSetswhichyouwilllearnmoreaboutinChapter4.Evenifyoudon’tusedifferentfolders,you cancreatedifferentviewsofyourdocumentlibrarytoshowonlythosedocumentsinthesegroupsby usingacolumninthelibrarytofilterthefiles.Sowhywouldyoueverneedtocreatemorethanone documentlibrary? OneofthebestreasonsIcanofferforhavingmorethanonedocumentlibraryinasiteoccurswhen differentgroupsofpeopleneeddifferentaccessrightstodocumentsatdifferentstagesinthedocument’s life.Agoodexampleispurchaseorders.Supposethatanyoneinthedepartmentcancreateapurchase orderinthesite’smainshareddocumentslibrary.However,oncethedepartmentheadsignsthepurchase order,youmustmoveittoanotherdocumentlibrarywhereonlythedepartmentheadandperhapsthe secretarialstaffcanstillopenandeditthedocument.Inthisnewdocumentlibrary,therestofthe departmentonlyhasviewrightssothatnoonecanmodifyanapprovedpurchaseorder,yetthe informationisstillaccessibletoeveryone. Anothergoodreasonformultiplelibrariesrelatestodefiningdifferentdefaultdocumenttypes(discussedin thenextsection)orcontenttypes(discussedinChapter10inrelationtoInfoPathforms)ineachlibrary. Tocreateanewdocumentlibrary,clickViewAllSiteContentfromtheQuickLaunchareaofyour collaborationsiteorfromtheSiteActionsdrop-downlistiftheQuickLaunchareaisnotcurrently visible.TheAllSiteContentpageshowsyourcurrentdocumentlibrariesandlists.Ifsomeonehas alreadycreateddocumentlibrariesotherthantheSharedDocumentslibrary,youwillseethemhere. Noticethatyouwillseeadditionallibrariestoholdpages,forms,imagesandmoreintheDocument Librariessection.Next,clicktheCreateoptionatthetopofthepagetodisplaytheCreatedialogshown inFigure1-18.
31
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-18.Addinganewdocumentlibrary
■TipYoucanalsogodirectlytotheCreatepagebyclickingMoreOptionsfromtheSiteActionsmenu.
TheCreatedialogletsyoucreateseveraldifferentobjecttypesforyoursite.SharePointdivides theseobjecttypesintofourbasiccategories:
32
•
Library
•
List
•
Page
•
Site
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
SelecttheobjecttypeLibrarytodisplaytheavailabletypesoflibrariesyoucancreate.Withallthe possiblelibrariesdisplayed,youcannarrowyourchoicesbyselectingacategory.Figure1-18showsonly thoselibrariesthatbelongtothecategoryContent&Data. LocateandclicktheDocumentLibraryicon.Thecolumnontherightprovidesashortdescription ofthelibrarytypeselectedandpromptsyouforthelibraryname.Youcanuseanycharacterstringasa name,butthenamemustbeuniqueatleastwithinthecurrentsite.Thereareadditionaloptionsthat youcanselectwhendefiningalibrary.However,onlythelibrarynameismandatory.Tospecifythe otheroptions,clicktheMoreOptionsatthebottomofthisrightcolumn. Figure1-19showstheoptionsyoucandefineforyournewdocumentlibrary.Besidesspecifyinga nameforyournewlibrary,youcanprovideadescriptionforthelibraryanddefinewhetherthelibrary appearsintheQuickLaunchmenu.
Figure1-19.Definingdocumentlibraryproperties Bydefault,newlibrariesdonotsupportversions.Inotherwords,whenyoumakechangesto documentsinthelibrary,thechangesreplacethepreviouscopystoredinthelibrary.Thisdocument modeusestheleastamountofstoragespace,butitleavesyouunabletoretrieveapreviousdocument versiontocomparechangesortorevertbacktoapreviousversionshouldyouaccidentallydeletea sectionoftextandneedtoretrieveit.Youwilllearnalittlelaterhowtofine-tuneyourversionhistoryto keepalimitednumberofpriorversions,thusstrikingabalancebetweenstoragespaceandtheabilityto recoverpastversions. Thelastoptionletsyouselectadefaultdocumenttemplatewhencreatinganewdocumentwithin SharePointforthislibrary.Eachlibrarycanhaveonlyonedefaulttemplate,soyoushouldselectthe mostappropriatedocumenttemplateforthelibrary.Thistemplatealsodefinesthedefaultcontenttype forthatlibrary.Whileyoucanstoremultipletypesoffileswithinadocumentlibrary,thedefault templatedefinesthetypeoffileSharePointcreatesforyouifyousimplypressedtheNewbuttonwhen displayingthelibrary’scontents. Afterdefiningtheoptionsforyournewlibrary,clickCreatetobuildit.SharePointopensthelibrary aftercreatingit.Ifyoudonotseeoneoftheribbonswhenthelibrary’sAllDocumentspagedisplays,
33
CHAPTER1■ANOVERVIEWOFSHAREPOINT
youareinwhatSharePointcallsBrowsemode.Youcanreturntothismodeatanytimebyclickingthe Browsetab.Toopenanyoftheotherribbons,clickoneoftheotherdisplayedtabs.Inparticular,you shouldseethatunderthetabLibraryTools,therearetwosub-tabsrepresentingtwoseparateribbons. TheDocumentsribboncontainsoptionstomanageyourdocumentssuchascreatingnewdocuments, uploadingdocuments,editingdocuments,etc.TheLibraryribboncontainsoptionstomanagetheway yournewlibraryappearsonthescreenincludingdefiningdifferentviewsforthelibrary,permissions, anddefiningadditionalcolumns,filters,andsortorders. IfyouopentheDocumentsribbon,youcanadddocumentstoyourlibraryfromyourlocalor networkdrivesbyusingtheUploadDocumentoptionoryoucancreatenewdocumentsusingthe defaulttemplatedefinedwhenyoucreatedthelibrarybyusingtheNewDocumentoptionfromthe Newsectionofthisribbon.
■TipWhileyoucanuploaddocumentsofdifferenttypesintoasinglelibrary,youmayconsidercreatinga separatelibraryforeachmajordocumenttypeyouneedtostore,especiallyifyoudefineacustomtemplatefor yourdocumentlibrary.Thereareseveraladvantagestothis.First,theuserdoesnothavetodecidewhichcontent typetouse;theyjustclickNewDocument.Second,youdon’thavetodefinedifferentviewstosupportthe differentmetadatathatmightbeassociatedwithdifferentcontenttypes.Iwillcoverthistopicinlaterchapters whendiscussingmetadatawithlibrariesandmultiplecontenttypes.Forexample,Chapter10discusseshowyou canpublishmultipleInfoPathformsasseparatecontenttypestoasinglelibrary.
KnowingYourDocumentTemplates TheDocumentTemplatesectionshowninFigure1-19allowsyoutodefineadefaulttemplatetouse whenyoucreateanewdocumentdirectlyfromwithinthelibrary.Thedefaultlistofavailabletemplates onmycomputerincludesthefollowingdocumenttypes:
34
•
MicrosoftOfficeWord97–2003document
•
MicrosoftOfficeExcel97–2003spreadsheet
•
MicrosoftOfficePowerPoint97–2003presentation
•
MicrosoftOfficeWorddocument
•
MicrosoftOfficeExcelspreadsheet
•
MicrosoftOfficePowerPointpresentation
•
MicrosoftOfficeOneNotesection
•
MicrosoftOfficeSharePointDesignerWebpage
•
Basicpage
•
WebPartpage
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Youmightaskwhythislistincludessomeofficeproductstwice.Thedifferencebetweenthetwo WordtemplatesisthatthetemplatenamedMicrosoftOfficeWorddocumentdefaultstoaWord 2007/2010documentstyleusingthe.docxformat,whereasMicrosoftOfficeWord97-2003defaultsto theearlier.docformat.AsimilardifferenceaccountsforthemultipleExcelandPowerPointentries. EachofthesepredefinedtemplatesopensblankOfficetemplatesorwebpages.However,your SharePointadministratormayhavealsopreinstalleddocumenttemplates.Forexample,afolderfor expensereportsmayhaveablankformattedexpensereportformcreatedinWordorExcel.Just rememberthatthislistofavailabletemplatesdoesnotlimitwhatyoucansavewithinthelibrary.They merelydefineadefaultdocumenttypewhenyoucreateanewdocumentfromwithinthelibrary.
AddingaDocumenttoYourNewLibrary WhenmostpeoplestartusingSharePointforcollaboration,oneoftheirfirsttasksistocreatea documentlibrarytostorefilesthattheywanttosharewithothers.IfyouhadyourSharePoint administratorcreateateamsiteforyouorifyoucreatedityourself,youprobablynoticedthataShared Documentslibraryalreadyexistsinyoursite.ThislibraryappearsunderDocumentsintheQuick Launchmenualongtheleftsideofthemainsitescreen. ToopentheSharedDocumentslibrary,clickit.SharePointopensascreenthatdisplaysalistof yourshareddocuments.Ofcourse,anewlibrarywouldnothavedocumentsinityet.Tocreateyourfirst document,displaytheDocumentsribbonandclickthebottomhalfoftheNewDocumentbuttonas showninFigure1-20.
■NoteButtonsthatdisplayadown-pointingarrowopenadrop-downmenuofmultipleoptions.Thefirstortop optioninthemenucorrespondstothedefaultchoicethatSharePointexecutesifyouclickthetophalfofthe buttoninsteadofthebottomhalf.
Figure1-20.Creatinganewdocument SharePointattemptstocreateandopenanewdocumentbasedonthedefaultdocumenttemplate definedforthislibrary.Ifthisisnotwhatyouwant,youcanchangethedefaulttemplateforthelibrary evenaftercreatingthelibrary.OnewaytodothisisbypointingtoadifferentfileintheFormsfolderof thelibrary.Ifyouhaveownerrightstothesite,youcanplaceanyMicrosoftOfficedocumentinthis
35
CHAPTER1■ANOVERVIEWOFSHAREPOINT
folderandselectitasthedefaultdocumenttemplate.Forexample,ifyouhaveastandardizedexpense reportandwanttouseitinaseparatedocumentlibrary,addablankcopyofthatexpensereporttothe Formsfolderofthelibraryasdescribedinthefollowingsidebar.Thenpointthedocumenttemplate URLforthelibrarytothatform.ThenwhenyouclickNewinthislibrary,SharePointdisplaysablank expensereportforyoutofillinratherthanjustablankWorddocument.
Change the Default Template for a Document Library Usingthenext11steps,youcanchangethedefaulttemplateforanexistingdocumentlibraryto theMicrosoftOfficedocumentofyourchoiceoranyotherdocumenttypethatyourusers'computers recognize. 1.
Createthedocumentyouwanttouseandsaveittoyourdesktop(ifitisaWord document,saveitasa.docxor.dotx).
2.
InSharePoint,openthelibraryfromtheQuickLaunchareaorclickViewAllSite ContentifyourlibrarydoesnotappearintheQuickLaunch,andthenclickon yourlibrary’sname.
3.
SelecttheLibraryribbonandthenclicktheoptionOpenwithExplorerinthe Actionssection.
4.
Usingaseparatewindow,browsetothetemplateyoucreatedinstep1.
5.
Right-clickthefileandselectCopy.
6.
Clickbackonthewindowthatholdsthelibrary’sFormsfolder.Ifyoudonotsee theFormsfolder,selectToolsfromthemenubarandthenselectFolderOptions. ClicktheViewtabandthenfromtheAdvancedSettingslist,clicktheoption Showhiddenfilesandfolders.YoushouldnowseetheFormsfolder.
7.
Right-clickablankareaandpastethetemplateinthisfolder.
8.
ClosetheExplorerwindow.
9.
FromtheSettingssectionoftheLibraryribbon,selectLibrarySettings.
10. ClickAdvancedSettingsundertheGeneralSettingscolumn. 11. ChangethetemplateURLintheDocumentTemplatesectiontopointtothefile youjustpastedtotheformsfolder.TheURLshouldlooklike /Forms/
whereisthelibrarynameandisthenameof thedocumentpastedintotheFormsfolderinstep7.Noticethatthisisarelative referenceURL. Thenexttimeyoucreateanewdocumentinthislibrary,itdefaultstothenewdocument.Chapter10 showshowtosetthedefaultlibrarytemplatetoanInfoPathformusingcontenttypes.
36
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
AssumethatyounowwanttocreateanewdocumentonthissitebasedonyournewMicrosoft Wordtemplate.ClickNewDocument.EditthenewdocumentasyouwouldanyothernewWord documentand,whenfinished,clickSaveintheOfficeButtonofWord.NoticethatwhentheSaveAs dialogboxappears,itdoesnotdisplayfilesfromyourlocaldirectories.Rather,itdisplaysareferenceto theSharedDocumentssite. Next,enteranameforthedocument.NoticeatthebottomoftheSaveAsdialogboxshownin Figure1-21thatthedocumenttypesimplysaysWordDocumentbutformatsthedocumentwiththe .docxextension.WhenIcreatedmysiteandthedocumentlibrary,IselectedWordDocumentasthe defaultdocumenttype.Yourdocumentlibrarydefaultmayvary.Youcanalsoclickthecheckboxbefore MaintaincompatibilitywithpreviousversionsofWordifyouneedtostoredocumentsinthe.doc format.Noticealsothatyoucanupdatesomeofthedocument’smetadataincludingtheAuthorsand Titleproperties.
Figure1-21.SavingyournewdocumenttoSharePoint Figure1-22showsthatuponreturningtotheSharedDocumentspageinSharePoint,youseeyour newdocument.SharePointdisplaysatleastthreedefaultpropertiesforeachdocumentandperhaps moredependingonthelibrarysettings.Thefirstcolumn,Type,displaysaniconrepresentingthe documenttype.WindowsExplorerusesthesesameiconsforitsfiletypes.Clickingtheiconopensthe fileorfolder.Thesecondcolumndisplaysthedocumentname.Noticethegreentextafteryourfile name:NEW.SharePointautomaticallyaddsthistexttonewdocumentstoindicaterecentlyaddedfiles. Thisindicatordisplaysfor2days,andthenSharePointautomaticallyremovesit.Inthemeantime,it helpssitevisitorsidentifynewdocuments,whichcanbeespeciallyusefulifyouhavemanypeople addingdocumentstothelibrary.
37
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-22.Viewingyourfirstsaveddocumentinthelibrary Inthethirdcolumn,SharePointdisplaysthedateandtimethatthefilewaslastmodified. SharePointthendisplaystheSharePointnameofthepersonwhomadethemodificationinthefourth column. Ifyouclicktheperson’sname,ascreenappearswithinformationaboutthatuser.Ifthesite administratorwhoaddedtheuserincludedtheire-mailaddressintheirprofileorifyourorganizationis usinganypresenceindicatorsuchasMicrosoftWindowsMessengerversion4.6orlater,MSNMessenger version4.6orlater,andMicrosoftOfficeCommunicationserver2005orlater,youcansendane-mailto thatpersonbyclickingtheire-mailaddress.Inadditiontotheuser’snameande-mailaddress,this screencanincludetheperson’sphoto,department,jobtitle,andotherinformationdefinedintheir profile. ThefifthcolumnshowninFigure1-22appearsonlywhenthelibraryrequirescheckingoutthe documenttoeditit.Ittrackswhohasthisdocumentcurrentlylockedforediting.Chapter2coversthe purposeofthispropertyinmoredetail.Fornow,rememberthatSharePointshowsthiscolumninyour libraryviewonlyifyoupracticesafeeditingwithCheckInandCheckOut. ThesixthcolumnshowninFigure1-22onlyappearsifthedocumentlibraryhastheRequire contentapprovalforsubmitteditemssettingfromthelibrary’sVersioningSettingspageenabledand showsthecurrentstatusofthedocument.Inthiscolumn,astatusofDraftindicatesthateitherthisisa newunpublisheddocumentorthedocumentcreatorhasmadeandsavedchangestothelastpublished versionofthedocumentbuthasnotyetsubmittedthedocumentforpublication.AstatusofPending indicatesthatshehassubmittedchangesforapprovalandastatusofApprovedindicatesthatthe currentversionistheapprovedandpublishedversion.You’lllearnmoreaboutthedocumentapproval processinthe“RequireDocumentApprovaltoHideDrafts—ASimpleWorkflow”sectionlaterinthis chapter.
Adding Columns to a View DocumentshavemanymorepropertiesthanshowninFigure1-21.AswiththeCheckedOutTocolumn, SharePointdoesnotdisplaysomedocumentpropertiesunlessyouaskitto.Infact,wheneveryouseea listorlibrary,youarelookingataviewofthelistorlibrary,nevertheactuallistorlibrary.Viewsdefine whichcolumnsappearaswellaswhetheryouseealltheitemsorjustselecteditemsbasedonafilterand sortcriteria.
38
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
ToaddanothercolumntotheSharedDocumentlibrarylist,clickLibrarySettingsintheSettingsgroupof theLibraryribbon.ThenscrolldowntotheViewssectionandclicktheAllDocumentsview.The displayedpageallowschangestotheviewname,columns,sort,filter,andotherproperties.Fornow, focusontheColumnsgroup.Noticethatitdisplaysoveradozenpossiblecolumns,ofwhichonlyafew havetheircheckboxselected.ScanthelistuntilyoufindthecolumnCheckedOutTo.Selectthiscolumn byclickingthecheckboxtoitsleft. Youmayhavealsonoticedthedrop-downliststotherightofeachcolumn.Thenumbersinthesefields definethecolumnorderfromlefttorightwhendisplayed.Tochangetheorder,clickthecolumnyouwant torepositionandchangethepositionvalue.SharePointadjustsaffectedcolumnsbetweentheoldandthe newvaluetomakeroomforthemovedcolumn.Whenyouaredonemakingchangestotheview,clickOK atthetoporbottomofthepagetosaveyourchanges. NowwhenyoureturntotheSharedDocumentslibrary,youseethenewcolumntellingyouwhochecked outthedocument.AswiththeModifiedBycolumn,youcanusetheinformationstoredabouttheuserto sendane-mailtothemaskingwhentheymightfinishusingthedocument. IfthepersonintheModifiedByorCheckedOutTocolumnalsousesMSNMessenger,Live Messenger,oracompatiblepresenceawarenessapplicationsuchasMicrosoftOfficeCommunicator,an iconappearsbeforetheperson’sname.Thecoloroftheballindicatestheuser’sstatusasshowninTable 1-1.Whenyouhoveroverthecoloredball,itopensamenuasshowninFigure1-23. Table1-1.MessengerStatusIndicator
Color of Icon
Status
GreenOnline Orange/Red
Busy/Inacall
Yellow
Berightback/Away/Outtolunch
Figure1-23.OptionsforModifiedByperson
39
CHAPTER1■ANOVERVIEWOFSHAREPOINT
UploadingaDocument IfyoupreviouslycreateddocumentsthatyounowwanttouploadtoyourSharedDocumentssite,click theUploadDocumentoptionintheLibraryribbon.Ifyouclickonthelowerpartofthebutton,yousee adrop-downmenuthatletsyouuploadasingledocumentoruploadmultipledocuments.Figure1-24 showstheUploadDocumentscreenifyouchoosetouploadasingledocument.
Figure1-24.Uploadingadocument Inthisscreen,youhavethreeoptionsforselectingfilestoupload: •
Youcandirectlyenterthenameofthedocumentthatyouwanttoupload.
•
YoucanclicktheBrowsebuttontoopenabrowsewindowtofindandselectthe filetoupload.
•
YoucanclicktheUploadMultipleFilesoptiontouploadmorethanonefileina singleoperation.
I’llletyouexplorethefirsttwooptionsonyourownsincetheyarestraightforward.However,the thirdoptionprovesratherusefulwhenuploadinggroupsofexistingdocuments.Whenyouclickthis link,thewindowshowninFigure1-25appears.Youwouldseethissamewindowifyouselectedthe UploadMultipleDocumentsoptionfromtheUploadDocumentsmenu.
■NoteThewindowthatappearswhenyouselecttheUploadMultipleDocumentscouldlookdifferentfromFigure 1-24ifyouareusingMicrosoftOffice2007.NotethatthefiguresinthebookaretheOffice2010versionofthe screens.Insomecases,thefunctionalitymayexistbutinadifferentforminOffice2007;inafewcases,itmay notexistatallinearlierOfficeversions.
40
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-25.Uploadmultipledocumentsscreen
■CautionAlthoughitmayseematfirsttobeagoodideatochecktheoptionOverwriteexistingfiles,this optionallowsyoutooverwriteamorerecentversionofadocumentwithanolderversionfromtheuploadselection withoutanywarning.
Notethatthisscreenconsistsofanareawhereyoucandropinfilesthatyouwanttoupload.You canclicktheoptionBrowseforfilesinsteadtoopenWindowsExplorertoselectyourfiles.Ofcourse, youcanalsoworkfromaninstanceofWindowsExplorerpreviouslyopenedoutsideofSharePoint.In eithercase,navigatetothefolderthatcontainsthefile(s)youwant,selectthefiles,andthenclickand dragthemintothetextareainthemiddleofSharePoint’sUploadDocumentwindow.Youcanselect filesfromanyfolderyoucanaccess,includingothercomputersornetworkshares. Asmentionedabove,therehasbeenadialogchangewhenuploadingmultipledocuments dependingontheversionofMicrosoftWordinstalledontheclientmachine.Themostsignificant improvementistheabilitytouploadfilesfrommorethanonefolderordriveatonetime.Simply navigatetoeachfolderthathasafileyouwanttoupload,anddragittotheSharePointDragFilesand FoldersHeresection.Whenyouhaveaddedallthefilesyouneedintothisarea,clicktheOKbutton.
41
CHAPTER1■ANOVERVIEWOFSHAREPOINT
NotealsothatyoucanchecktheboxOverwriteexistingfilestoreplacefilesalreadyinthe SharePointdirectorywithcopiesfromyourcopylocation.Ifyoudonotcheckthisoptionandyouselect afilewhosenamealreadyexistsinthelibrary,SharePointdoesnotuploadthefile,evenifthefile selectedhasamorerecentmodifieddatethantheversionSharePointhas.Figure1-26showsseveralfiles afterdraggingthemintotheuploadarea.NotethatSharePointtellsyouhowmanyfilesyouareaboutto uploadandthetotaluploadsize.Whyistheuploadsizeimportant?MostSharePointadministrators limitthesizeofanupload.Infact,thedefaultlimitis50MB.Thatlimitdoesnotapplytoindividualfiles inamulti-fileupload,butrathertothetotalsizeoftheupload.
■NoteThelibrarydidnothaveversioningturnedonforFigure1-25.Ifyouturnonversioning,SharePoint replacestheoptiontooverwriteexistingfileswithamessagetoaddthefileasanewversiontoexistingfiles.
Figure1-26.Selectingmultiplefilestoupload Tocompleteyourselection,clicktheOKbutton.SharePointtakesafewmomentstoretrieveand uploadyourfiles.Theamountoftimeneededdependsonthenumberoffilesyouareuploading,their sizesandthespeedofyournetwork.However,SharePointdoesdisplayaprogressbarasituploadsthe files.
42
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
■NoteBydefault,siteslimituploadsto50MBfortheentireupload,whethertheuploadconsistsofasinglefileor multiplefiles.However,thissettingcanbechangedbyyourSharePointadministratorbygoingintoCentral Administration,selectingManagewebapplicationsfromtheApplicationManagementsection,selecttheweb application(SharePoint – 80,ifyouusedthedefaultinstalloptions),thenopenthedrop-downmenuforGeneral SettingsintheWebApplicationsribbon,andthenselectResourceThrottling.OntheResourceThrottlingpage, scrolldownuntilyoufindtheMaximumUploadSizeoptions.Hereyoucanchangethe50MBlimittoanother value.Ifyouexceedthe50MBuploadlimitbecauseyouruploadincludesmultiplefiles,youmaysuccessfully uploadyourfilesasaseriesofsmalleruploadgroupsorevenindividually,aslongaseachuploadgroupisless than50MB.Oneadditionalfactorthatcouldaffectyourabilitytouploadlargefilesisthesessiontimeoutsetting controlledbyIISandyournetworkspeed.
Figure1-27showstheSharedDocumentslibraryafteruploadingtheselecteddocumentsfrom Figure1-26.
Figure1-27.SharedDocumentslibraryafteruploadingmultipledocuments
43
CHAPTER1■ANOVERVIEWOFSHAREPOINT
■TipWhenyouuploadmultipledocuments,theyappearinitiallyinyourlibraryascheckedouttoyou.Ifyouwant tocheckallofthemin,youcouldusetheindividualitem’sdrop-downmenubyhoveringovertheitem’snameto displaythedrop-downbuttontoitsrightandthenselectthecommandtocheckintheitem.However,afaster methodistoclickthecheckboxtotheleftofeachlibraryitemasyouselecteachchecked-outfileandthenselect thecommandCheckInfromtheDocumentsribbon.
WhilemostofthefilesuploadedinFigure1-26camefromWord2010,IalsouploadedaWord2003 filenamedPortal_PreparationfoundinthemiddleofthelistinFigure1-27.Ifyoudothis,howcanyou tellaWord2003documentfromaWord2007document?Theiconstotheleftofthefilenamedohavea smalldifference(lookattheupperleftsideoftheicon),butaneasierwayexists.Whenyoupositionyour mouseoverthedocumenticon,atooltipstyleboxappearsbelowthecursorwiththefullfilename,and thefilenamealsodisplaysintheStatusBaratthebottomofthescreen.Eitherway,thefilename’s extensionsuggeststheversionofWordusedtosavethatdocument. Youcanchangethesortorderofyourdocumentlistbyclickingthecolumnheaderbywhichyou wanttosort.Thefirsttimeyouclickthecolumnheader,SharePointsortsthatcolumninascending order,anditdisplaysasmalluparrowtotherightofthecolumnname.Thesecondtimeyouclickthe columnheader,SharePointsortsthatcolumnindescendingorderandaddsasmalldownarrowtothe rightofthecolumnname. Youcanalsosortacolumnbyplacingyourmouseoveracolumnheadertohighlightit.Ontheright sideofthecolumnheader,adrop-downarrowappears.Clickthisarrowtoopenamenuthatallowsyou tosortthecolumn.Inadditiontosorting,thedrop-downlistalsoallowsyoutofilterthelistbasedon valuesintheselectedcolumn.Figure1-28showsthatyoucanfilterdocumenttypes.
■NoteYoucannotfiltertheNamecolumn.
Figure1-28.Filteringtheshareddocumentsinalibrary Ifyouselectthe.docfilterfromthetypecolumn,thelibrarydisplaysonlythePortal_Preparation documentbecauseitisaWord2003-formatteddocument.SharePointdoesnotdeletetheWord2007formatteddocumentswhenitappliesthisfilter,itmerelyhidesthem.Althoughyoucanonlydefinea singlefilterpercolumn,youcouldaddanadditionalfilteronanothercolumn,inwhichcaseSharePoint displaysonlydocumentsthatmatchthefiltersfrombothcolumns.
44
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
■NoteAcolumnwithanactivefilterdisplaysafunneltotherightofthecolumnname.
Toremovefilters,openthedrop-downforeachcolumnthathasafilterandselecttheClearFilter option.
DisplayingDocumentsintheDatasheetView Beforelookingathowtoeditadocumentinthelibrary,let’slookattwootherwaystoviewyour documents.YoucanaccessbothmethodsfromtheLibraryribbonatthetopoftheSharedDocuments page. Figure1-29showsthefirstalternativelibraryview:DatasheetView.
■NoteDatasheetViewrequiresadatasheetcomponentcompatiblewithSharePoint2010.Italsorequiresthat yourwebbrowsersupportActiveXcontrolsandthatyouhavesupportturnedon.
Figure1-29.LibrarydisplayedinDatasheetViewmode Asyoucansee,thisviewdisplaysthesameinformationastheStandardView.InDatasheetView, noticetheiconintheupper-leftcornerofthetable.ThisiconresemblestheiconusedbyAccess.Infact, SharePointusestheAccessenginetodisplaythelistofdocumentsasatable. Thisviewalsosupportstheabilitytosortandfiltertheinformationdisplayed.However,ratherthan hoveringoverthecolumnheaderwithyourmouseasinStandardView,clickthedownarrowtothe rightofthecolumnheadername,asshowninFigure1-30,toopenthemenu.
45
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-30.SortingandfilteringinDatasheetViewmode Noticethatthesortoptionsappearatthetopofthelistinthisfigure.Beneaththesortoptions,you findthefilteroptions.Inadditiontofilteringonspecificvaluesfoundintheselectedcolumn,youcan defineacustomfilter.Thisfeaturecanhelplocatedocumentsinlargelibrarieswhenyouonly rememberpartofthefilename.Figure1-31createsacustomfilterforvaluesoftheNamecolumnthat beginwiththeword“SharePoint.”
Figure1-31.Definingacustomfilter
■NoteYoucanfilteronanydisplayedcolumnwithinthelibraryusingthismethod.Forexample,ifthedocument listdisplaysaCreatedBycolumn,youcanfilterondocumentscreatedbyaspecificperson.
Whendefiningacustomfilter,youcanspecifyuptothreeexpressionsforthefilteredcolumn.You canthenconnecteachoftheseexpressionswitheitheranAndoranOr.Whenyouconnectexpressions withAnd,theexpressionsoneithersideoftheconnectormustbetrueforadocumenttoappearinthe librarylist.WhenyouconnectexpressionswithOr,onlyoneofthetwoexpressionsmustbetrueforthe documenttoappear.IfyouuseexpressionsconnectedwithbothAndandOrconnectors,SharePoint executestheexpressionsfromthelefttotheright.TheAndexpressiondoesnothaveprecedenceover theOrexpression. Toturnafilteroff,selecttheoption(ShowAll)fromthedrop-downmenu(Figure1-30).
46
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
■TipUsetheDatasheetViewtomakechangestoseveralcolumnsacrossmanyofthedocumentsinthelibrary. YoucaneditthedatainthecolumnsinthismodejustlikeyoueditdatainanAccesstableview.Additional discussiononusinglistsappearsinChapter2.
DisplayingDocumentsinWindowsExplorer ThelastwaytolookatthedocumentlibraryinthischapterbeginsbyopeningtheLibraryribbonand choosingtheoptionOpenwithExplorerintheActionssection.Thiscommandopensaseparate windowanddisplaysthedocumentsusingWindowsExplorer.Thisviewsupportsaninterestingfeature. IfyouopenasecondWindowsExplorersessionfromyourdesktop,youcandraganddropfilesbetween thetwowindows.Inotherwords,thisviewprovidesanotherwaytouploaddocumentsintoSharePoint libraries.InFigure1-32,youseetwoseparateWindowsExplorersessions.Thetopwindowbelongsto theSharePointSharedDocumentslibraryandthebottomwindowisaWindowsExplorerviewoffileson myEdrive.ThefigureshowsthatIhavejustselectedthefileSites of Interest.docfrommyEdriveon mylocalmachineandIamdraggingitintotheSharedDocumentslibrary.
Figure1-32.DragginganddroppingdocumentsintoSharePoint
47
CHAPTER1■ANOVERVIEWOFSHAREPOINT
WhenyoureturntoyourSharePointwindow,youmayneedtorefreshyourpage,butyouwillsee thatthenewfilenowappearsintheSharedDocumentslibrary.
■TipYoucanalsoopentwodifferentlibrariesinSharePointusingWindowsExplorermodetocopyandpaste documentsbetweenthelibraries.Youcanalsomovedocumentsfromonefolderinalibrarytoanotherfolderin thesamelibrary.
YoucanalsousecopyandpastekeystrokesbetweenlibrariesdisplayedinWindowsExplorermode byselectingdocumentsfromonelibrary,pressingCtrl+C,thennavigatingtotheotherlibrary(orfolder) andpressingCtrl+Vtocopythefile.
EditingDocumentsStoredinYourLibrary Afteryouhavesavedseveraldocumentstoyourlibrary,youprobablywanttoeditthem.Youcanchoose fromseveralwaystoeditadocumentdependingonyourcurrentlyselectedlibraryview,StandardView orDatasheetView.
EditingaWordDocumentfromStandardView SupposeyouwanttoeditoneoftheWorddocumentspreviouslyaddedtothelibrary.OpentheShared Documentslibrary.Positionyourmouseoverthenameofthedocumentyouwanttoedit.Noticethat SharePointsurroundsthedocumentnamewithaboxandadrop-downarrowtotheright.Italso underlinesthedocumentname,changingittoahyperlink.Youcaneditthisdocumentbyeitherclicking thedocumenticonoritshyperlinkedname. Fornow,let’sassumethatthisSharePointlibrarydoesnotrequireCheckOutbeforeopeningthe file.YouwillseehowtorequireCheckOutalittlelaterwhenyouvisittheVersioningsettingsintheList Settings.HowSharePointtriestoopenyourdocumentdependsonyourversionofWord.Bydefault, Word2007triestoopendocumentsinread-onlymode.Youshouldopendocumentsthiswayifyouonly wanttoview,download,orprintacopyofthedocument.Thisallowsotherpeopletoopenthe documentforediting.However,ifyouneedtoeditthedocument,clicktheEditDocumentbuttonthat Word2007displaysinabaracrossthetopoftheopeneddocument.Thisoptionallowsyoutoswitchto editmodeasshowninFigure1-33.
Figure1-33.Switchingadocumenttoeditmode Onceineditmode,makeyourchangestothedocumentandsavethembyclickingSaveinthe OfficeButtonmenu.
48
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Ontheotherhand,ifyouopenthedocumentwithWord2010anddonotrequireCheckOutofthe document,Wordthensupportssimultaneouseditingofthedocumentbymultiplepeople.Moreonthis newcapabilityappearsinChapter4. Youcanalsobegineditingadocumentbyclickingthedownarrowdisplayedtotherightofthe documentnamewhenyoupositionyourmouseoverthenametoopenthedocument’sdrop-down menu.Thisdrop-downmenushowsavailableoptions.SelectEditinMicrosoftOfficeWordasshown inFigure1-34toeditthedocument.
Figure1-34.ChoosingEditinMicrosoftOfficeWord
EditingaDocumentfromDatasheetView IfyouprefertousetheDatasheetViewofyourdocuments,youcanstillinitiateeditingofadocument byrightclickingintheNamefieldofthedocumentyouwanttoedit.Thisalsoopensadrop-downmenu ofavailableoptions.ClicktheDocumentoptiontodisplayasubmenu.Thissubmenu,showninFigure 1-35,providesoptionstoopenthedocumentinRead-OnlyorEditmode.Youcanalsoreviewtheprior versionsofthedocumentifthelibrarytracksversions.
49
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-35.DocumentoptionsintheDataSheetView TheCheckOutDocumentoptionopensthedocumentinEditmode,assumingnooneelsehasthe documentopenforediting.Iftheydo,SharePointcanonlyopenthedocumentinRead-Onlymode. Sonowyouknowseveraldifferentmethodsofopeningadocumentforediting.However,what happenswhensomeoneattemptstoopenyourdocumentwhileyouhaveitopenineditmode?
SimpleLockingofDocuments Whenyouopenadocumentineditmodewithoneoftheprecedingmethods,Word2007tells SharePointtolockthedocumenttemporarily.SharePoint2010alsolocksthedocumentifyoucheckout thedocumentbeforeeditingit.Ineithercase,ifanotheruserattemptstoopenthedocumentwhileyou haveitopen,theyreceiveawarningmessagesimilartotheoneshowninFigure1-36.
Figure1-36.FileinUsemessage
50
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
WhenSharePointlocksafile,itgivesyoutwochoicesofwhattodo: •
Openaread-onlycopy.
•
Editthefileandmergeyourchangeswiththeserverfilewhenitbecomes available.
Inadditiontothesetwooptions,youcanchoosetoreceivenotificationwhenthefileisavailable. Thisnotificationisnowavailablewithbothfile-in-useoptions. Let’sassumethatyoureallydoneedtoeditthedocument,notjustvieworprintit.Inthatcase, openingaread-onlycopyisnotanoption.Therefore,youmightselectthesecondoption.However,if youdothis,youwillneedtoopenbothyourcopyofthedocumentandtheSharePointversionofthe documentlaterusingWord’sComparefeaturetomergeyourchangesintotheSharePointversion.This soundslikealotofextrawork,solet’sassumethatyoujustopenaread-onlycopyofthedocumentand thenselecttheoptiontoreceiveanotificationwhentheserverfileisavailable. Withthisoption,youcanaskSharePointtonotifyyouwhentheotherpersonclosestheircopyof thedocumentsoyoucaneditit.Inthemeantime,youcanreviewthecurrentdocumenttoseeifyou wanttomakeotherchangesoryoucouldjustopenanotherapplicationwindowtoproceedtoanother taskwhileyouwaitforaccesstothedocument.Maybeyouevencontactthepersonwhohasthe documentopenandaskthemtofinishtheirchangesquickly.Inanycase,oncetheychecktheirversion ofthedocumentbackintothelibrary,SharePointsendsyouthemessageshowninFigure1-37.
Figure1-37.FileNowAvailablemessage Whenyoureceivethismessage,clicktheRead-Writebuttontobegineditingthedocument,orif younolongerneedtomakethechanges,clicktheCancelbuttontomakethefileavailabletoothers. Formostquickchanges,workinginEditmodeasdescribedinthissectionwiththeautomatic lockingthatSharePointprovidesmaynotposeaproblem.IfyouareusingWord2010,thismayactually bethepreferredwaytomakeminorchangestodocuments.However,thedefaultSharePointlocking doesnotlastforever.Infact,dependingontheoperatingsystemusedbythepersoneditingthe document,thelockmayonlyguaranteeexclusiveuseofthedocumentfor10minutes,accordingto Microsoft’sKnowledgeBasearticle899709.Thus,ifyouneedmoretimethanthattoeditthedocument, youcouldhaveaconcurrencyproblem.
51
CHAPTER1■ANOVERVIEWOFSHAREPOINT
WhatIsaConcurrencyProblem? Aconcurrencyproblemoccurswhentwoormorepeopleeditadocumentatthesametimebutonlythe changesforoneofthemcanbesaved.Forexample,supposeyouopenadocumentusingWord2007 fromtheSharedDocumentslibrary.After30minutes,youleaveforlunchwithoutclosingthedocument. NowNatashafromtheofficedownthehallopensthesamedocument.Sincemorethan30minuteshave passedsinceyouopenedthedocument,theimplicitlockonthedocumenthasexpired.Therefore, Natasha,unawareofyourchanges,opensthedocument,makesherquickchanges,andsavesthem. Finally,youcomebackfromlunchanhourlaterandrealizethatyouhavenotclosedyourdocument.So youclickSaveandclosethedocument. Laterthatsameday,Natashagoesbackintothedocumenttocheckoneofherchangesand discoversthatshecannotseeherchanges.Furthermore,thedocumentlooksentirelydifferentfromthe onesheedited.Shewonderswhodeletedherchanges. Well,youdiddeleteherchanges,butnotintentionally.Whenyoucamebackfromlunchandsaved thedocument,SharePointhappilyoverwrotetheexistingversioninthelibrary,theonecontaining Natasha’schanges. Whilesuchimplicitlocksmayseemlikeaneasysolution,foraquickchangetheuseofexplicitlocks isasaferpractice.Youcanexplicitlylockfilesmanually,oryoucanmakeiteasyforusersbyforcing SharePointtocheckout(lock)eachdocumentwheneversomeonetriestoeditit.SharePointcalledthis processofcreatingexplicitlocksdocumentCheckOutandCheckIn.
WhyUseCheckOutandCheckIn? UsingCheckOutlocksadocumentbeforeopeningitforediting.Thismanuallyappliedlockstaysin placeuntilyoudecidetocheckthedocumentbackin,whichmeansyoucankeepadocumentchecked outforanhour,aday,orevenlongerwithoutworryingaboutsomeoneelsemakingchangestothe documentwhileyouhaveit.ThinkofCheckOutasgettingexclusivecontroltoafile,likecheckinga bookoutofaphysicallibrary.Whileyouhaveitcheckedout,nooneelsecancheckitout.(Well,almost noone.I’llgettothatinamoment.)However,unlikeyourpubliclibrary,whenyoucheckouta documentfromaSharePointlibrary,otherpeoplecancomeinandopenaread-onlycopyofthelast savedversion. Checkingoutadocumenthasotheradvantages.BoththeStandardViewandtheDatasheetView canshowyouthenameofthepersonwhohascontrolofthedocument.Therefore,ifyoureallyneedto gettothatdocument,youcanjustwalkdownthehall,callthemonthephone,orinstantmessagethem toaskwhentheywillfinisheditingthedocumentsoyoucanopenittomakeyourchanges. However,therealbenefitofcheckingoutadocumenttoedititoccurswhenyouplanonworkingon thedocumentchangesoffline.EvenWord2010’sabilitytosupportsimultaneouseditorsdoesnotwork whenyoueditthedocumentoffline.
HowtoCheckOutaDocument TocheckoutafilemanuallywhenusingStandardView,openthedrop-downmenuforthedocument andselectCheckOutasshowninFigure1-38.
52
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-38.CheckingoutadocumentinStandardView Afteryoucheckoutafile,youstillmustreturntothedrop-downmenutoselectEdittoopenthe document.However,fromthetimeyoucheckoutafileuntilthetimethatyoucheckitbackin,youhave exclusiveaccesstothefile.RemembertodisplaytheCheckedOutTocolumninyourShared Documentsviewtoseewhohasdocumentscheckedout.
■NoteTheCheckedOutTocolumnshouldappearautomaticallyinyourdefaultviewwhenyousetRequired CheckOuttoYesintheVersioningsettingsoptionoftheListSettingsfoundintheLibraryribbon.
ThisCheckedOutTocolumnoptiondoesnotexistifyourelyontheautomaticlocksprovidedby simpledocumentediting.AnotheradvantageofusingCheckOutoccurswhenothersattempttoeditthe documentyouhavecheckedout.TheFileinUsedialogboxpreviouslyshowninFigure1-36displays thenameoftheuserwhohasthefileopenforediting.Figure1-39showsanexampleofhowthe StandardViewlookswhensomeonehascheckedoutthedocument“My First Document.”
■TipEvenifyouuseMicrosoftWord2010,whichsupportssimultaneouseditingofdocuments,youmaystill wanttocheckoutadocumentifyouplanonworkingonthedocumentoffline.
53
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-39.CheckedoutfileslistedinStandardView Ifyoucheckoutadocumentandrealizeyoupickedthewrongdocumentoryounolongerneedto savechangestothatdocument,selecttheDiscardCheckOutoption.Thisoptiononlyappearsinthe drop-downmenuwhenyouhaveadocumentcheckedout. Whenyoucheckoutadocument,SharePointaskswhetheryouwanttosaveacopyofthedocument inyourlocaldraftsfolderasshowninFigure1-40.Ifyoudonotclickthisoption,SharePointcreatesa copyontheserverthatyoucanedit.However,onlybysavingacopyofthedocumentinyourlocaldrafts folderwhenyoucheckitoutcanyouworkonthefileoffline,atopicthatIdiscussfurtherinChapter4.
Figure1-40.Savingacopyinyourlocaldraftsfolder
■NoteYoumayneedtomakeyourSharePointsiteatrustedsiteinyourInternetExplorerSecurityoptionsbefore youcanuseyourlocaldraftsfoldertotransferthefilebackandforthbetweenyourlocalmachineandtheserver.
54
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Onceyoucheckoutadocument,youcaneditthedocumentforhoursorevendaysifnecessary. Whenyouaredone,makesurethatyousaveyourchanges,closeWord,andthencheckinthe document.SavingyourchangesandclosingWorddoesnotautomaticallycheckinthedocument.Good officeetiquetterequiresthatyouonlycheckoutafileforaslongasnecessarytomakeyourchanges. Keepingafilecheckedoutlongerthannecessarymerelypreventsothersfromgettingtheirworkdone. IfsomeonedidnotnoticethecheckedoutinformationintheSharedDocumentslistingand attemptedtoeditthisdocumentanyway,theywouldreceivethewarningshowninFigure1-41.
Figure1-41.FileinUsewarning
CheckingDocumentsBackIntotheLibrary Whenyoudonotturnversioningon,SharePointdoesnotmakeyoursavedchangesvisibleuntilyou checkthedocumentbackintothelibrary.Thisfunctionalitydiffersfromeditingadocumentwithout checkingitout.Inthatcase,everytimeyousavethedocument,whetheryoucloseMicrosoftWordor not,otheruserscanseeyourchanges. Whenyoudoturnversioningon,eachtimeyousaveyourchanges,SharePointcancreateaminor versionofthedocument.Whenyoucheckinthedocument,otheruserswithpermissiontoeditcan openthemostrecentdocumentversionandmakefurtheredits.Minorversionsofthedocumentmayor maynotbevisibletouserswithonlyReadpermission,dependingontheDraftItemSecuritysettingin thelibrary’sVersioningsettings.Thus,youcanusethissettingtodeterminewhetheruserswithonly Readpermissionscanseeminorversionsofthedocument.Whenyoucheckoutadocumenttoyour localdraftsfolder,SharePointremainsunawareofchangesuntilyoucheckthedocumentbackin becauseyouareworkingwithalocalcopyofthedocument.Uponcheckingitbackin,youcanassignthe updateaminororamajorrevisionnumberandproviderevisioncomments. WhenyouclosetheWordsessionusedtoeditthedocument,amessagepromptremindsyouthat SharePointdoesnotmakechangesvisibletootherusersuntilyoucheckthedocumentin.Ifyouhave notfinishedallyourchangesbutmerelywanttogotolunch,clickNo.However,ifyouhavefinished, clickYestocheckyourdocumentbackinasshowninFigure1-42.
55
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-42.Prompttocheckinchanges Ifyourdocumentlibrarydoesnotuseversioningorifitonlykeepsmajorversions,youwillseethe dialogshowninFigure1-43.Inthiscase,youonlyneedtosupplyanoptionalcommentbeforesaving thefile.
Figure1-43.SelectCheckInversionandaddcommentsviatheCheckIndialogbox. Whenyoucheckinchangeswithmajorandminorversioningturnedon,SharePointprovides severalalternativestolabelyournewversionasshowninFigure1-44.
Figure1-44.Selectalternativecheck-inversions
56
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
■NoteYouwillnotseetheCheckIndialogboxifyoursitedoesnotuseversioning.
Bydefault,SharePointlabelsyourchecked-inversionwiththenextavailableversionnumber.If yoursiteonlyusesmajorversioning(wholenumbers),SharePointautomaticallyincrementstheversion byone.Ifyoursiteusesminorversioning,SharePointincrementsthenumbertotherightofdecimal. Youmustdecidewhethertoacceptthenextavailableminorversionnumberorinsteadusethenext majorversionnumber.Howyoudecideisuptoyou,butifyoumademajorchangestoadocumentand havecompletedthosechanges,youprobablyshouldgowiththenextmajorversionnumber.Another pointtorememberisthatuserswithviewrightstypicallycanseeonlythelastmajorversionsavedbased ontheDraftItemSecuritysettingofthedocumentlibrary.HowyourSharePointadministratorhasset versioninginyourlibrarymayalsoinfluencewhichoptionyoucanchoose. Inadditiontoselectingtheversionforyourchanges,youcanentercommentsaboutthenew version.Inthecommentssection,youshouldincludeinformationaboutthechangesyoumade,who requestedthem,whoapprovedthem,orwhatimpactthechangewillhaveonyourorganization.You canviewthesecommentswhenyoudisplayadocument’sversionhistory(whichyou’lllearnmoreabout intheupcomingsection,“TrackingDocumentVersions”).
OverridingaCheckOut Previously,Istatedthatadocumentcheckedoutbyausercannotbeeditedbyanyoneelse.However, supposeyouabsolutelymustgetintoadocument,butthepersonwhocheckeditouthasleftforatwoweekMediterraneancruise.IfyouhaveadministratorrightstotheSharedDocumentslibrary,youcan right-clickthedocumentandselectCheckIntobringupadialogboxaskingyoutoconfirmthatyou wanttooverridetheCheckOutasshowninFigure1-45.
■TipIfyoudonothavetherightstooverrideachecked-outdocument,contactyourSharePointadministratoror thesiteowner.TheycanoverrideaCheckOutforyouifnecessary.
Figure1-45.OverridingaCheckOut. Whenanadministratoroverridesachecked-outdocument,theuserwhooriginallycheckedoutthe documentmaylosesomeoftheirchangesunlesstheyediteditfromtheirlocaldraftsfolder.Therefore,
57
CHAPTER1■ANOVERVIEWOFSHAREPOINT
itisgoodofficeetiquettetolettheotheruserknowthatyouhadtooverridetheirchecked-outdocument whiletheywereoutoftheoffice.
■NoteWhileitispossibletoopenyourlocaldraftcopyofadocument,saveitinadifferentlocation,andthen compareittothecurrentversionofthedocumentinSharePointusingMicrosoftWord’sdocumentcompare featuretorecoveranyofyourchangeswhensomeoneelseoverridesyourCheckOut,thisprocessistime consuming.
TrackingDocumentVersions WhenyourSharePointadministratorturnsondocumentversioning,SharePointstoresmultiplecopies ofeachdocument,representingsavedchangestothedocument.Toseetheversionsforadocument, clickthedownarrowwhenpositioningyourmouseoveradocument’snameinalibraryandselect VersionHistory.Figure1-46displaystheversionsforatypicaldocument.
Figure1-46.Displayingadocument’sversionhistory
58
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Noticetheversionhistoryoftheselecteddocumentincludesbothmajorandminorrevisions.Recall thatwholenumbersdefinemajorversionsanddecimalnumberslike2.1identifyminorversions. DependingonhowyouuseyourSharedDocumentslibrary,youmaynotwanttotrackminor versions,especiallyifyouarenotusinganapprovalprocessondocumentchanges.However,ifyoudo useanapprovalprocess,thenyoucanhideminorversionsofadocumentfromthosewhocanonlyview yourdocuments.Userswitheditrightstothelibrarycanperformadditionaleditsonthedocumentas longasitisnotcheckedout.Onceeveryonehascompletedtheirchangestothedocument,youcansave itwiththenextmajorversionnumberbystartingtheapprovalworkflowprocess.Still,onlyacontent approvercanpublishanewversionofadocument.Untilthen,everyoneotherthancontentcreatorsin thatlibrarycontinuestoviewthelastpublished(major)version. YourSharePointadministratormayalsolimitthenumberofbothmajorandminorversionsthat SharePointstores.Afterall,themoreversionsyouretain,themorediskspaceyouneed.Asanexample,a SharePointadministratormaylimitthelibrarytostoringonlythelastthreemajorreleasesandperhaps theminorreleasesmadesincethelastmajorversion.Figure1-47showshowaSharePointadministrator mightconfigureversionssothatonlyuserswithpermissiontoeditcanviewminorreleasesandonly minorversionssincethelastmajorversionarestored.
Figure1-47.Definingversioningsettings
59
CHAPTER1■ANOVERVIEWOFSHAREPOINT
■TipTochangetheversionsettings,openyourdocumentlibraryanddisplaytheLibraryribbon.Next,select LibrarySettingsintheSettingsgroup.OntheListSettingspage,selectVersioningsettingsintheGeneral Settingssection.
PromotingaPriorVersiontotheCurrentVersion Occasionally,youmayneedtoreturntoapreviousversionofadocument.Perhapsmanagementhas rescindedthechangeyouaddedtoapolicydocument,andtheywantthepreviouspolicystatement reinstated.Ofcourse,youcouldeditthecurrentdocumentandhopetoreverseallchanges,returning thedocumenttoitspreviouscontent.Thatcouldentailamajoreffortfraughtwiththepotentialof missingachange.Itisfareasiertosimplyviewtheversionhistoryforthedocumentandselecttheprior version,makingitthecurrentversion. Todothis,firstcheckoutthedocumentfromtheStandardView.Thisactionautomaticallycreates anewminorversionifyoudidnotalreadyhavethedocumentcheckedout.ThenselectVersionHistory inthedocument’sdrop-downmenu.Next,positionyourmouseovertheModifiedDate/Timeofthe versionyouwant,andclicktheRestoreoptionintheitem’sdrop-downmenuasshowninFigure1-48.
■NoteIfyoudonotfirstcheckoutthedocumentbeforeyouattempttorestoreapriorversion,SharePoint displaysanerrormessageinformingyoutocheckoutthedocument.
60
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-48.Restoringapriordocumentversion SharePointpromptswithawarningthatyouarereplacingthecurrentversionofthedocumentwith theselectedversion.ClickYestoproceed. Whenyourefreshthedisplayofthecurrentpage,youshouldseetheselectedpriorversionofthe page.
PublishingDocumentstoYourDocumentLibrary Ifyoursiterequirescontentapproval,alldocumentsfirstenteradraftstate.WhileyoucansettheDraft ItemSecurityoptioninVersioningsettingstoallowanyusertherighttoreaddraftitems,Idonot generallyrecommendthis.Rather,youtypicallywanttolimittheabilitytoseedraftversionstoonly userswhocanedititemsinthecurrentlibraryortouserswhocanapproveitemsinthecurrentlibrary. Ofcourse,thecreatorofthedraftcanalwaysseethedraftversion.Thisistruewhetheryouaretracking versionsoftheitemornot. Thesituationisalittlemorecomplexwhenyoudonotrequirecontentapproval.Inthiscase,ifyou donottrackversions,theneverytimeyousavechangestoanitem,thosechangesareimmediately visibletoeveryone.Infact,evenifyouonlykeepmajorversions(publishedversions),everyonestillsees immediatelyanychangesyoumaketoanitem.Onlywhenyoukeepmajorandminorversionscanyou choosetohidetheminorversions(drafts)fromallusersandlimitthevisibilityofthosedraftstoother usersofthelibrary.
61
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Withthatbasicunderstanding,howdoesthataffectpublishingyourdocuments?Well,youshould consideradocumentpublishedimmediatelyifyoudonotrequirecontentapprovalnomatterwhether youtrackversionsornot.Ontheotherhand,anytimeyourequirecontentapproval,whetheryoutrack versionsornot,SharePointdoesnotconsideryourchangespublisheduntilsomeonewithapproval rightshasapprovedthem.Duringthattime,youcandeterminewhocanviewthosedrafts. Whenyouturnoffallversioning,managementofthedocumentlibrarybecomesinformal.While thispracticeminimizestheamountofspaceneededbyyoursite,ifyoueverneedapriorversionofa document,youmaybeoutofluckunlessyoucanrestoreonefromabackupcopyoftheSharePoint database.However,retrievingdocumentsfromabackupcopyofthedatabaserequirestimeanda separateplacetorestoreit.SuchextraworkwillnotearnyouanybonuspointswithyourSharePoint administrator. Thelibraryexampleabovehasmajorandminorversioningenabled.Topublishyourmostrecent document,returntoyourSharedDocumentsfolderandopenthedrop-downmenuassociatedwiththat document.IfitshowsthedocumentasstillcheckedoutbecausetheCheckInoptionappears,clickthe CheckInoption,andchoosehowyouwanttosaveyourchanges.Youcansaveyourchangesasanew minorversion,youcanreplacethecurrentminorversion,oryoucanpublishthenextmajorversion. Figure1-49showtheseoptions.
Figure1-49.PublishingarestoreddocumentduringCheckIn Ifyouchoosetoleavethedocumentasaminorversion,youcanalwaysreturntothelibrarylaterin StandardView,openthedrop-downmenuforthespecificdocument,andclickPublishaMajor Version.Whenpublishedthisway,youcanstilladdcomments,asshowninFigure1-50.Adding commentstoapublisheddocumentletsyouidentifywhathaschangedsincethelastmajorversion.
62
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-50.Publishingamajorversion ClickOKtosubmityourrequesttopublishthisversionforapproval.Ifthesitedoesnotrequire approval,savingadocumentasamajorversionmakesitpublicimmediately.However,ifyour documentlibraryrequiresapproval,savingamajorversionmerelysetsthestatusofthepagetoPending asshowninFigure1-51.
Figure1-51.Viewingdocumentapprovalstatus WhenaSharePointlibraryrequiresapprovalofdocuments,itautomaticallyaddsthecolumn ApprovalStatus.Toapprovethedocument,loginassomeonewithapprovalpermission.Bytheway, siteownersautomaticallyhaveapprovalpermissions.Ifyouhaveapprovalpermission,gototheShared Documentspageandopenthedrop-downmenuforthedocument.Younowhaveanewoptioninthis drop-down:Approve/Reject.ClickingApprove/RejectdisplaysthepageshowninFigure1-52.
63
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-52.Approvingadocumentforpublishing Asyoucanseeinthisfigure,approvershavethreeactionsfromwhichtoselect: •
Approved:Thedocumentbecomesvisibletoallusers.
•
Rejected:Thedocumentdoesnotbecomevisibletootherusers.
•
Pending:Thedocumentremainsinitscurrentstate.Approversshouldusethis optionwhenaskingforfurtherclarification.
Nomatterwhatactiontheapproverselects,theycanincludeacomment.Anapprovershould alwaysincludecommentswhenrejectingadocumentorsendingitbackpendingadditionalwork, information,etc.WhentheapproverselectsApprovedandclicksOK,SharePointpublishesthepage changingitsstatustoApproved.Nowallsiteviewerscanseetheupdateddocument. Figure1-53looksattheversionhistoryforthisdocument.Youseeanewmajorrelease(5.0)now listedandSharePointremovesalltheminorreleasesfromversion4.0.Thisoccursbecausetheversion setupdefinedinFigure1-47tellsSharePointtoretainonlyonesetofminorreleases,whichmeansonly theminorreleasesincethatlastmajorrelease.
64
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
Figure1-53.Newmajorreleaseafterpublishingdocument
RequireDocumentApprovaltoHideDrafts—ASimpleWorkflow Workflowsconstituteanimportantfeatureofcollaboration.Mostbusinessenvironmentspass documentscreatedbyonepersontotwoormorepeopleforreview,furtherediting,andultimately approvalbeforepublishingthem.Inthedistantpast(20yearsago),organizationsimplemented workflowsbyphysicallytransferringadocumentfromoneofficetoanotherviainterofficemailorby walkingitfromoneofficetoanother.Morerecently,e-mailreplacedtheneedtomovemostdocuments betweenofficesphysically.However,evenwithe-mail,eachpersonintheapprovalprocessmustknow towhomtheyaresendingthedocumentnext.Butallthosee-mailsandattachmentscloggedup everyone’sinbox.WorkflowsautomatethatentireprocessandeliminatetheloadonExchangeservers createdbypassingtheentiredocumentasanattachmenttothee-mail. Workflowsmanagethestagesofadocumentfrominitialdraftthroughediting,approval,and publishing.Itcandeterminewhoshouldreceivethedocumentnextbasedonthespecificactiontaken bythecurrentperson.Perhapsmostimportant,sinceSharePointcarriesoutallstepsintheworkflow electronically,itispossibletolocatewhereeachdocumentexistsintheflowandwherebottlenecksslow downtheapprovalprocess. Forsimpledocumentapproval,usetheDocumentLibrary’sVersioningsettings.Openthelibrary youwanttoworkwithandchooseLibrarySettingsfromtheSettingsgroupintheLibraryribbon.From thesettingspage,clickVersioningsettingsintheGeneralSettingsgroup.Next,definetheversioning settingssimilartothoseshowninFigure1-54.Thesesettingsturnoncontentapprovalfornewand editeditems. Usemajorandminorversionhistorytotrackmultipledraftversionspriortopublishingamajor version.Inthisexample,settingthenumberofmajorversionsto3meansthatSharePointonlyretains thethreemostrecentapprovedversionsofthedocument.Onceyouhavefourormoreapproved versionsofadocument,SharePointautomaticallydeletestheoldestone.Similarly,settingthedraftfor majorversionsto1meansthatSharePointretainsonlydraftsmadetothemostrecentpublished version.Assoonasyouapprovethedocumentagain,SharePointdeletesthosedraftsfromthatprevious approvedversion.Thesesettingshelpyouconservespaceusedbystoringmultiplecopiesofadocument whileretainingtheabilitytorecoverfromrecentaccidents. ThensettheDraftItemSecuritysothatonlyuserswitheditrightstothelibrarycanviewthedraft documents.Finally,selecttheRequireCheckOutoptiontoforceSharePointuserstocheckoutthe documentbeforeeditingit.
65
CHAPTER1■ANOVERVIEWOFSHAREPOINT
Figure1-54.Libraryversioningsettingsfordocumentapproval Asimpleworkflowbeginswiththecontentcreator.Whileworkingonadocument,SharePointsets thedocumentstatustoDraft.Oncethecontentcreatorcompletestheirchangesforadocument,they submititforapproval,whichchangesthestatustoPending.Anapprovermayapprove,reject,orleavea documentinapendingstate(referbacktoFigure1-52).Someapproversmayhavepermissionto performbasiceditingtasks,ortheirrightsmaylimitthemtoverifyingtheinformationinthedocument. Iftheapproverrejectsthedocument,SharePointsetsthestatustoRejected.Similarly,SharePoint changesthestatusofanapproveddocumenttoApproved. Thissimpleworkflowforadocumentallowsdocumentstoremainhiddenwhileindraftmode, usuallyrequiringapersonotherthanthecontentcreatortoapprovethedocument.However,atthis level,SharePointprovidesnodynamicnotificationtoapproverswhentheusersubmitsadocumentfor approval.NordoesSharePointprovidenotificationtothecontentcreatorwhentheapproverchanges thedocumentstatustoapprovedorrejected.Ratherallpartiesmustconstantlymonitorthestatusof documentsinthevariouslibraries.Ifyouonlyhaveasinglelibrary,thismaynotseemlikeamajor inconvenience.However,ifyousupportseveralsites,eachofwhichhasmultipledocumentlibrariesand lists,manuallycheckingthestatusofdocumentsandlistswillprobablynothappenonaregularbasis.In Chapter2,youwillseehowtosetupalertsandRSSfeeds,whichyoucouldusetomonitorchangesto
66
CHAPTER1■ ANOVERVIEWOFSHAREPOINT
yourlibraries.Whatwouldmakethisworkflowusefulise-mailnotificationwhenataskpassesfromone persontoanother.IwillreturntothisissueinChapter10toshowyouhowtobuildsimpleworkflows withe-mailnotificationusingSharePointDesigner.
RecoveringAccidentalDeletionswiththeRecycleBin WhenyoudeleteadocumentfromyourSharedDocumentslibrary,SharePointpromptstoconfirmthat youreallywanttodeletethefile.Youmayaskwhyyouwouldneedtoworryaboutaccidentaldeletions.I didtooatfirst,untilIrealizedthatwithmorethanonepersonhavingaccesstoasite,noteveryonemay realizethevalueofthedocumentsyoudecidetopublish. Shouldsomeoneaccidentallydeleteadocument,SharePointsupportsarecyclebin,which,likethe recyclebinonyourdesktop,allowsrecoveryofdeletedfiles.Forexample,supposeyouaccidentally deletedthefileMy first document.docxfromtheSharedDocumentsfolderandthenrealizedthatyou reallyneedtokeepthatdocument.YourfirstthoughtshouldbetochecktheRecycleBinoptionfound atthebottomoftheQuickLinksmenuontheleftoftheSharedDocumentspage.Thisoption,shownin Figure1-55,displaysapagelistingallthedocumentsdeletedwithinthelast30days.
Figure1-55.TheRecycleBincollectsalldeleteddocuments. Torecoveradocument,clickthecheckboxtotheleftofthedocumentandclicktheRestore Selectionoptionatthetopofthepage. Whenyoudeleteadocument,youdeleteallversionsofthatdocumentaswell.Youmaybe surprisedtolearnthatwhenyourecoveradocumentfromtheRecycleBinyoualsorecoverallversions ofthatdocumentaswell.So,ratherthanthinkingoffilesinyourdocumentlibraryassinglefiles,thinkof themasacollectionoffileswiththesamename.
■TipYoucanaskyourSharePointadministratortochangethelengthoftimedeleteditemsstayintheRecycle Bin.Todoso,theycangointoCentralAdministrationandselecttheApplicationManagement.Next,select ManagewebapplicationsintheWebApplicationsgroup.IdentifythewebapplicationcontainingtheSite Collectionforwhichyouwanttoeditproperties.Bydefault,thiswouldbeSharePoint – 80.Clickontheweb applicationnametoselectit.ThenopentheGeneralSettingsdrop-downmenufoundintheManagegroupofthe WebApplicationsribbonandselecttheGeneralSettingsoption.ScrolldowntheGeneralSettingsdialoguntil youfindtheRecycleBinpropertygroup.
67
CHAPTER1■ANOVERVIEWOFSHAREPOINT
HeretheSharePointadministratorcanchangethefunctionalityoftheRecycleBin.Forexample,theycandefine thesizeofthesecondstagerecyclebinthatholdsitemsthatusersdeletefromtheirRecycleBin.YourSharePoint administratorcanconfigurethissecondrecyclebinasanadditionalpercentageofthelivesitequotaforthesite collectionscreatedinthecurrentwebapplication.However,itshouldbenotedthatthesettingtodeleteitemsafter xdays,wherexdefaultsto30daysaftertheitemisinitiallydeleted,appliestoboththeprimaryuserrecyclebin andthesecondaryrecyclebin.
Summary ThischapterbeganbylookingatSharePoint’shierarchicalstructurestartingwithatop-levelsiteand thennestingadditionalsiteswithinit.WiththestandardeditionofMOSS2010,youhavecollaboration andmeetingsitetemplates.TheenterpriseeditionofMOSSaugmentsthesewithenterpriseand publishingtemplates.Rememberthattemplatesprovideastartingpointforbuildingyoursite.Youcan alwaysaddfeaturesthatareavailableinonetemplatetoothertemplatesaswell.Thisallowsyouto customizeatemplatenomatterwhichoneyoustartwith. Next,yousawhowtoaddusersandpermissionstoasite.Bydefault,whenyoucreateanewsite underthetop-levelsiteorasub-site,youcansimplyinheritthepermissionsusedfromitsparent.This savesyoutime.However,ifyouneedtocustomizethepermissionsortheuserswhohaveaccesstoyour site,youcanaddusersforspecificsitesaswellasassignthemtocustomgroupdefinitionshaving custompermissionlevels. Afterdefiningwhichuserscanaccessasite,youcanstartbuildingcontentforthesite.Yousawhere howtousethedocumentlibrarytoholdMicrosoftWordfiles.However,itcanholdotherfiletypesas well.UsingMicrosoftWord,yousawhowtocreatenewdocumentsinthelibraryaswellashowto uploadexistingdocuments.Onceuploaded,anyonewithacompatibleclientapplicationcanedita documentstoredinalibrary.However,unlessthelibraryforcesyoutofirstcheckoutthedocumentsor youmanuallycheckoutthedocument,youcouldrunintoconcurrencyproblems.MicrosoftWord2010 handlesthispotentialproblembymanagingchangedcontentattheparagraphlevel,butWord2007tries tolocktheentirefile.Ofcourse,whenyoucheckoutadocument,youhaveexclusiverightstoeditthe entiredocument.Justremembertocheckthedocumentbackinsootherscanseeyourchangesandto allowotherstomakefurtherchangestothedocument. Documentversionsallowyoutotrackchangesmadetothedocument.Youcantrackbothmajor andminorversions.Keepinmindthatvisitorstoyoursitemayonlybeabletoreadmajorversions. Therefore,agoodpracticeistouseminorversionsasworkingdocumentswithinyourteamuntilyouare readytopublishthefinalversionasthenextmajorversion. Youcanalsousethedocumentapprovalfeaturetoallowdocumentstoremainhiddenuntil someonewithapprovalpermissioncanreleasethedocument.Organizationsoftenusethismodelwhen publishinginformationthatthepubliccanviewonInternetpages.Theymaygranteveryoneinthe organizationthepermissiontocreatenewdocumentsortoeditexistingdocuments.However,untilan approverreviewsthosedocuments,thepubliccannotseethem. Finally,thechapterclosedwithabrieflookattheRecycleBin.Thisfeaturehelpsyourecover documentsyouaccidentallydelete.Asyouwilllearninlaterchapters,italsoworkswithmanyother SharePointobjects. ThenextchapterextendsthisintroductiontousingSharePointlistsandChapter3completesthe introductionbylookingataddingcontenttositepages.
68
CHAPTER 2
■■■
SharePoint Lists Everything Is a List Well,perhapsnoteverything.However,SharePointstoresmostcontentinformationinlists,or variationsoflists.Thisshouldcomeasnosurprise,consideringthatSharePointusesSQLServerasa storagecontainerfornotonlyallcontentinformationbutalsoalltheinformationusedtodefinethe appearanceofyoursite.Ofcourse,liststhemselvestranslatewellintothetableparadigmofdatabases sincetheyconsistofrowsandcolumnsofinformation.
■NoteSharePointdoesnotsaveeachlistasaseparatetable.Rather,itcombinesinformationfromalltables togetherinaspecialtableschema,butsinceyouarenotstudyinghowtoreadtheSharePointdatabasefileshere, butratherhowtousetheSharePointfeatures,thisdifferencewillnotmattertoyourunderstanding.Oneimportant note:directlymodifyingtheSharePointdatabasefilesinSQLServerwillterminateallMicrosoftsupportforyour installation.
OnecouldsaythatSharePointevenstoresthedocumentlibrariesdiscussedinChapter1inaspecial typeoflist.Byaddinguniqueattributestothoseofabasiclist,SharePointcancreatenotonlyother typesoflists,butalsolibrariesfordocuments,images,andpages.Thischapterexaminesaselectionof SharePoint’sbuilt-inlistsandthenexploreshowtocreateandusecustomlistsoncollaborationpages.
69
CHAPTER2■SHAREPOINTLISTS
■TipItispossibletostorelargedatafilesoutsideofSharePointusingSQLServerFILESTREAMRBSProvider. Whilethissolutionisnotforeveryone,itcouldhelpthoseSharePointuserswhoarepushingthe4GBdatabase limitationofSQLServerExpress.Notethat,althoughthissolutiondoesremovelargefilesfromtheSQLdatabase, itaddsanotherpointoffailuresinceitreliesonstoringthefileonanothernetworkfileshareorstoragesolution suchasDocumentum.Notethatperformancemaytakeahitduetotheextrajumptogetthedata.Ifyouare reachingthe4GBlimitforotherreasons(suchasjustahugeamountofnormalsizecontent),youmayjustwantto considerupgradingyourSQLServeredition.
ExploringSharePoint’sBuilt-inListTypes ListsprovidetheeasiestwaytostoreinformationinSharePointusingafamiliarparadigm.Youprobably haveseverallistsgoingrightnow:importantworktasksattheoffice,groceryitemstobuyonyourway home,andhomeimprovementprojectsfortheweekend.SharePointprovidesavarietyofwaystokeep thisinformationelectronicallyinpredefinedlists.Itgroupsthemintosixcategories: •
Blank&Custom:Blankandcustomlistsallowyoutodefineyourownlist columnsandviews.Theyareidealwhenimportingdatafromothersourcessuch asspreadsheetsandexternaldatasources.Theyalsoallowyoutobuildlists structuresthataresignificantlydifferentfromtheotherlisttemplates.
•
Collaboration:Outofthebox,SharePointprovidesonlyasinglecollaboration stylelist,theDiscussionBoard.Thislistletsyoueasilymanagediscussionthreads. Youcanevenconfigurethelisttohideentriesuntilsomeoneapprovesthem.
•
Content&Data:Thisgroupincludesthoselistsmostoftenusedtodisplay contentonpages.
•
Search:Thiscategoryincludesliststhatviewersoftenusetosearchforspecific informationsuchaseventsonacalendarortaskswithinaproject.
•
Tracking:Theseliststrackthingssuchaspersonalandprojecttasks,issues,and languageandtranslationworkflows.
•
WebDatabases:Outofthebox,thiscategoryhasnolisttemplates.
Inthefirstpartofthischapteryouwillexaminemostoftheavailableliststolearnhowtheycanbe used.Thesecondpartofthischapterfocusesonhowtoinstantiateandmodifytheselistsaswellashow topublishalistthroughacollaborationpage.Let’sbeginwithacoupleofpredefinedlistsfoundinthe Content&Datagroupsoyoucanlearnhowlistsworkbeforelearninghowtobuildcustomlistsfroma blankorcustomtemplate.
Content&DataLists AContent&Datalistgenerallyfacilitatesthecollectionanddisplayofinformationonasite.You’lluseit toexplorethebasicinteractionbetweenthecolumnsandtheitemsofthelist.Let’sassumethatyouare beginningfromabrandnewTeamSitecreatedwhenyoustartedChapter1.Youcanworkwithoneof
70
CHAPTER2■ SHAREPOINTLISTS
theexistingcontentlistsbychoosingViewAllSiteContentfromtheSiteActionsbuttonorbyclicking theListslinkintheQuickAccessmenutotheleftofthepage. AsmentionedinChapter1,theAllSiteContentpagedisplaysallthelibrariesandlistsdefinedin thecurrentsite.Evenwhenstartingtouseanewsite,mostsitetemplatesautomaticallyaddseveral defaultlibrariesandlistsforyou.OneofthelistsyoushouldseeinyourteamsiteisanAnnouncements list.Figure2-1showstheavailablelistsinadefaultTeamSite.
Figure2-1.TheCreatepageliststhevariouscontentobjectsyoucancreate. Bothlibrariesandlistsdisplaytheobjectnames,thedescription,thenumberofitemsinthelistor library,andthelastdatewhensomeonemadeachangetothelistorlibrary.Let’sbeginbylookingatthe AnnouncementslistthatSharePointinstallswithonedefaultitem.Toopenanylist,justclickonits name.
AnnouncementsList Severalcollaborationsitetemplatesincludebydefaultanannouncementslist.Usethislisttodisplay upcomingevents,news,oractivitiesthatyouwantyoursitereaderstoknowabout.Anannouncement itemconsistsofseveralpre-definedcolumnsincludingatitle,abody,andanexpirationdate.Thislist
71
CHAPTER2■SHAREPOINTLISTS
hastwoadditionalcolumns,CreatedByandModifiedBy,thatSharePointautomaticallypopulateswhen theuseraddsorchangesanitem.Let’sfocusonjustthefirstthreecolumnsfornow. Figure2-2showstheAnnouncementslistwithitsonedefaultevent.EachSharePointlistconsistsof asetofcolumns.Somecolumnsappearinnearlyeverylist.Othercolumnsadduniquecapabilitiestoa list.IntheAnnouncementslistshowninFigure2-2,youseefourcolumns(youmaynotthinkofthefirst twoasdatacolumnseventhoughnearlyeverylistsupportsthem).Thefirstcolumnis,infact,a checkboxthatallowsyoutoselectoneormoreitemsfromthelistandperformacommonoperation suchasdeletingtheitems,checkingtheitemsinorout,orpublishingtheitems.Theabilitytoperform anactiononmorethanoneiteminalistorlibraryatatimeisanewSharePoint2010feature.Depending onhowyouwanttousethelist,youmaywanttoturnthischeckboxcolumnoff.(Seethe“Workingwith ListViews”sectionfordetailsonturningthisfeatureonandoff.)
Figure2-2.Thisannouncementslistincludesattachments.
■TipWhendefiningtheviewdefinitionusedtodisplayannouncements,opentheFilterssection,selectthe Expirescolumn,andsetittobegreaterthanorequalto[Today].Thisfilteredviewhidesexpiredannouncements.
Thesecondcolumnshowsapaperclipindicatingthatyoucanincludeanattachmenttothelist item.Forexample,youmayaddasupportingdocumenttoalistitembyattachingthatdocument.(If yourlistwillneverneedattachments,youmaywanttodefineaviewforthelistthatdoesnotinclude thiscolumn.)Thethirdcolumnholdsthetitleoftheannouncement.TheTitlecolumnisanother commoncolumninnearlyeverylist.Ittypicallyservesasalinkbetweenthelistitemandaneditpage whereyoucanchangetheinformationinthelist.Finally,thefourthcolumnshowsthedateandtimeof theitem’slastmodification. Asmentionedearlier,theAnnouncementslisthastwoadditionalcolumns.Toseethesecolumns, clickontheTitlevalueoftheitemtodisplayawindowshowingtheeditablecolumnsofthelist.You can’tdirectlyeditthedatadisplayedinthisformunlessyoueditpermissionsforlistsasdiscussedin Chapter1.However,ifyoudohaveeditpermissions,theViewribbonofthiswindowdisplaystheEdit ItemiconintheManagegroup.Clickthisicontodisplaytheeditformforthislistitem,asshownin Figure2-3.
72
CHAPTER2■ SHAREPOINTLISTS
Figure2-3.Thisannouncementslistincludesexpirationdates. NotethattheTitlecolumnhasaredasteriskafterthecolumnname.Theredasteriskindicates columnsthatrequireavalue;youcannotleaveitblank.EachannouncementitemalsohasaBodyand anExpiresdatefield.TheBodycolumnprovesamulti-linetextareawhereyoucanprovideadditional detailsabouttheannouncement.TheExpirescolumnletsyouselectadatewhentheannouncement expires.Inthiscase,theannouncementreferstotheGetStartedwithMicrosoftSharePointFoundation announcement,whichhasanexpireddateof11/22/2009.Ifyouthinkaboutit,whatgoodisan announcementofaneventthatdisplaysaftertheeventhasoccurred?Ideally,youwouldlikeyourweb sitetoremovepasteventsfromyourannouncementslistautomaticallysothatyouwouldnotneedto monitoryoursitecontinuallytoremovethemmanually.Unfortunately,SharePointwillnotdothateven withanExpiresdate,atleastnotwithoutcreatingacustomviewthatcancomparetheExpirescolumnto thecurrentdate.However,youwilllearnhowtodoexactlythatinthe“SortingandFilteringLists” section. Fornow,let’sfocusontheotheroptionsintheEditribbon.Let’sassociateanotherfiletoalistitem bymakingitanattachment.YouwillfindtheAttachFileoptionintheActionsgroupoftheEditribbon. Clickthisoptiontodisplayadialogboxthatallowsyoutodefinetheattachment.Beforedefiningan attachment,however,uploadthefiletoalibraryonyoursite.Neverdefineanattachmenttoafileon yourlocalsystem.However,youmaywanttoattachtofilesonanetworkfilesharetoconservedatabase spaceandreduceredundancy,especiallyifyouareusingSharePointFoundationwithaninternal databasewitha4GBdatabaselimit. Youcanalsocut,copy,andpastetextwithinanycolumnvaluefieldusingtheoptionsinthe Clipboardgroup.Youcansaveandcancelanychangesyoumake.Youcanevendeletetheitemfromthe list.
73
CHAPTER2■SHAREPOINTLISTS
■NoteIfyoudeleteanitemfromalistthathasanattachmenttoanotherfileinaSharePointlibrary,SharePoint doesnotdeletethatfile.WhileyoucouldhandlethissituationwithSharePointEventHandlers,thefocusofthis bookisforthenon-developer;thereforethissolutionwillnotbecoveredhere.
ThelastitemintheEditribbonistheSpellCheckoption.Clickthisoptiontospellcheckanytext fieldinyourlist.IntheAnnouncementslist,spellchecklooksatthetextinboththeTitleandBody column. WhenyouclickanywherewithintheBodytext,anewsetofribbonsappearsatthetopofthedialog. Infact,tworibbonsappearunderthecommonheadingofEditingTools.Thefirstribbon,FormatText, allowsyoutoperformbasictexteditingsuchasfontstyle,paragraphformatting,andtextstyle.Youcan evendisplaytheHTMLofthetextandedittherawformattingofthetext.
■CautionOnlyedittheHTMLofacontentareaifyouhaveexperienceworkinginHTML.
ThesecondribbonisInsert.Itincludesanoptionthatallowsyoutoinserttables,pictures,andlinks intoatextfieldofanitem.Thereisalsoanoptioninthisribbontouploadafilefromyourlocalmachine tooneofthedocumentlibrariesonthesite.Afteruploadingthedocument,SharePointautomatically insertsalinktothedocumentintothetextatthecurrentcursorposition.
AddingItemstoYourNewList Nowthatyouknowyourwayaroundanexistinglist,howdoyouadditemstoit?First,returntothe defaultlistviewoftheAnnouncementslistasshowninFigure2-2. SharePointopensalistinBrowsemode,meaningthatitdisplaysthedefaultlistviewalongwiththe tabsfortheotherribbons.YoucanalwaysremovethevisibleribboncommandsbyreturningtoBrowse mode.Sinceyouwanttoaddanewannouncement,youneedtodisplaytheItemsribbonintheList Toolsribbongroup.TheItemsribbonallowsyoutoaddnewitemsaswellaseditanddeleteitems.You canalsochangepermissionsfortheitemandviewtheitem’shistoryifyourlistorlibrarytracksversions ofeachitem. Inthiscase,clickNewItemintheNewgrouptoaddanotherannouncement.Thisactionopensthe editdialogforthelistitem,lettingyousupplythecolumnvaluesforanewiteminthelistusingthesame dialogasshowninFigure2-3.ClickSaveintheCommitgroupoftheEditribbontosaveyournew announcement.Aftersavingtheannouncement,youcanreturntothelistviewtoseethenew announcement.Figure2-4showstheAnnouncementslistafteraddingseveralannouncements.
74
CHAPTER2■ SHAREPOINTLISTS
Figure2-4.TheAnnouncementslistdisplayingseveralnewannouncements OneoftheenhancementsmadetoSharePoint2010involvestheabilitytoeditlistitemsnotonly fromthedefaultlistview,butalsofromanypagethatdisplaysthelistaspartofthatpage’scontent.The “WorkingwithListViews”sectionlaterinthischaptercoversthisinmoredetail.
ContactsList ThesecondContent&DatalisttypetolookatistheContactslist.Becausetheteamsitedoesnot automaticallycreateacontactslistforyou,youneedtocreatethislistbeforeyoubeginusingit.Ifyou clickListsintheQuickAccessmenu,youcanthenclickCreatefromthetopoftheAllSiteContent pagetoselectthetypeoflistyouwanttocreate.Figure2-5showstheavailableContent&Datalists. ClickontheContactsiconandthenprovideanameforthelist.SharePointrequiresuniquenamesfor listsandlibraries.However,alisthasadditionalpropertiesyoucansetbyclickingonthebuttonMore Options.
75
CHAPTER2■SHAREPOINTLISTS
Figure2-5.CreatingaContactsList AsyoucanseeinFigure2-6,theMoreOptionsbuttondisplaysasecondpageintheCreatedialog thatpromptsforadescriptionofthelistandaskswhetheryouwanttoincludealinkforthislistinthe QuickLauncharea.Ifyoudonotincludeaseparatelink,userscanstillnavigatetoyourlistbyclicking theListsheadingtodisplaytheavailablelistswithinthesite. TheDescriptionfieldinthisdialogdisplaysitstextintheDescriptioncolumnofFigure2-1.Note thatthedescriptionmaybehelpfultoyourusersindeterminingthepurposeofeachofyourlists.Ifyou createalistwithoutsupplyingadescription,youcanalwaysreturntothelisttomodifyitspropertiesto provideadescription.
76
CHAPTER2■ SHAREPOINTLISTS
■CautionSharePointdeterminesthesizeofthedialogboxbasedonthesizeofthebrowserwindowsothatthe dialogboxfitsinsidethewindow.Ifyoustartwitharelativelynarrowwindow,youmayfindthatittruncatesthe detailsoftheCreatedialog.Oncloserexamination,youshouldseeahorizontalscrollbaratthebottomofthe dialogthatwillletyouscrolltoseethecontentsofthedialog.However,toavoidthisinconvenience,youshould alwaysbeginwithamaximizedbrowserwindowbeforeopeninganycommandthatdisplaysadialogbox.Thebest waytoinsurethisistokeepyourbrowsersettoMaximize.
Figure2-6.MoreOptionsfortheContactsList Afteryoudefinethepropertiesforthelist,clickCreatetobeginusingthelist.YoucanseeinFigure 2-7thatthelistdisplaysseveralcolumnsacrossthetopofthepageincludingLastName,FirstName, Company,BusinessPhone,HomePhone,andE-mailAddress.WhatifyoudonotneedtheCompany namecolumnbecauseallofthecontactsinyourlistarepartofyourcompany?AndinsteadofBusiness Phone,youwouldratherhavejusttheirphoneextension?Youcaneasilyupdatethecolumnsinyour contactlistbygoingtotheListToolsribbongroupandselectingtheListSettingsintheListribbon.
Figure2-7.ViewingtheDefaultContactsColumns
77
CHAPTER2■SHAREPOINTLISTS
TheListSettingspageconsistsofsixparts: •
ListInformation:Youcannoteditthissectionbecauseitdisplaysbasic informationaboutthenameandlocationofthelist.
•
GeneralSettings:Theoptionsinthissectionopendialogsthatallowyouto modifybasicparametersdefiningthelist.
•
PermissionsandManagement:Thissectionprovidesoptionstochange permissionstothelistandtomanagefeaturessuchasworkflowsandpoliciesfor thelist.
•
Communications:ThissectionallowsyoutoturnonoroffRSSsettingsforthelist aslongastheSharePointFarmAdministratorhasenabledRSSatthefarmlevel.
•
Columns:Usethissectiontoreviewandeditthecolumnsthatdefinethelist.
•
Views:Thissectionlistsallcurrentlydefinedviewsforthelist.
IfyouarenewtoSharePoint,youmaywonderifyoumustdisplayallcolumnsinalist.Thesimple answerisno.Alistconsistsofacollectionofcolumns(thinkofcolumnsasfields)arrangedbyitems (thinkofitemsasrows).Youcreateormodifyviewsforthatlisttodisplaythespecificcolumnsandrows youwant.First,youshouldnoticethatthelistdefinitiononthelistsettingspagehasmanymore columnsthandisplayedinFigure2-7.Therefore,beforeaddinganewcolumntoalist,seeifthere’sa columnyoucanuseas-isorifyoucanrenameonethat’snotinuse.Onlyifyouneedauniquecolumn shouldyouconsideraddinganewcolumn. Forexample,youwantacolumnforjustthecontact’sbusinessextension.WhynotusetheBusiness Phonecolumnandredefinethecolumnname.Todothis,clickonthecolumnnametodisplaythe columnproperties.ChangetheColumnNamefromBusinessPhonetoBusinessExtension.Leavethe columntypesettoSinglelineoftext.However,youmaywanttoconsiderreducingthemaximum numberofcharactersfromthedefaultof255toamorerealistic3to5charactersdependingonthesize ofyourtelephoneextensions.ThenscrolltothebottomofthepageandclickOK.Figure2-8showsthe ChangeColumnpagefortheBusinessPhone/Extensionpage.
78
CHAPTER2■ SHAREPOINTLISTS
Figure2-8.TheChangeColumnpage Next,considertheotherrequestnottousethecolumnCompanyname.Youcouldclickonthe columnnamedCompanyandfromtheChangeColumnpage,clicktheDeletebuttonatthebottomof thepagetoremovethiscolumn.However,youmaynotwantsuchanextremesolution.Perhapsallyou reallyneedtodoistoremovethecolumnfromthelist’sdefaultview.Justbecauseyoudon’tusea columndoesn’tmeanthatyoumustdeleteitfromthelist. ReturntotheListSettingspageandscrolltothebottomofthepagetodisplaytheViewssection.A listcanhavemanyviews,witheachonedisplayingadifferentsetofcolumns,adifferentsortorder,ora differentfilter.Whileyoucanhavemanyviewsforanyonelist,youcanonlyhaveoneviewdesignatedas thedefaultview.SharePointusesthedefaultviewwhenyouopenthelistfromyouravailablelibraries andlists.Toedittheview,clicktheviewnametodisplaytheviewdefinition,asshowninFigure2-9.
■TipFromthedisplayofthelistitself,youcanquicklymodifytheviewbyselectingthecommandModifyView fromtheManageViewsgroupoftheListribbon.
79
CHAPTER2■SHAREPOINTLISTS
Figure2-9.ViewingtheDefaultContactscolumns
80
CHAPTER2■ SHAREPOINTLISTS
Theviewdefinitionconsistsofadozensections;youwillonlydealwiththesecond,Columns,here. Thissectiondisplaysallcurrentlydefinedcolumnsforthelist.Thecheckboxestotheleftofthecolumn namesindicatewhetherthatcolumnappearswhendisplayingtheview.Asyoucansee,evenadefault viewdoesnotnecessarilyincludealltheavailablecolumns.Toincludeanothercolumnintheview, selectthecheckboxtotheleftofthecolumnname.Toexcludeacolumnalreadydisplayedintheview, uncheckthecheckboxtotheleftofthecolumnname. Totherightofthecolumnnamesyouseeadrop-downlist.Eachdrop-downlisthasadifferent numberinitandtheyaresequentialfromtoptobottom.SharePointlistsusethiscolumntoindicatethe orderofthecolumnsfromlefttorightwhenyoudisplaytheview.Tochangetheorder,youneedonly openthedrop-downlistandassignthecolumnanewnumericvaluetoindicateitsnewposition. SharePointtakescareofthehardworktorearrangetherestofthecolumnstoinsertthecolumninthe positionyouselected.Forexample,ifyouwantedtomovethee-mailaddresssothatitappears immediatelyafterthecontact’sname,youcouldopenthedrop-downlistfore-mailandchangeits positionfrom‘7’to‘4’.Noticethat,whenyoudothis,SharePointautomaticallyrenumbersallthe columnsbetween4and7. Tofinishthisexample,uncheckthecheckboxbeforethecolumnCompanysinceyoudecidednot todisplaythatcolumn,andthenclickOKatthebottomofthisdialog.Aftersavingyourchanges, SharePointdisplaystheOfficeContactslistwithyournewviewdefinition.Youwilllearnmoreabout viewsinthe“DefiningViewsforYourList”sectionofthischapter. Thecontactslist,bydefault,includeshyperlinkfields.Thefirsttypeofhyperlinkfieldoccursonthe contact’slastname.SharePointcreatesthishyperlinkautomaticallytolinkeachitemtoaneditpage thatdisplaysallthedataforthatcontact.Alllistshaveonefieldthatcanopentheeditpage.Bydefault, SharePointnormallynamesthiscolumnTitle.However,youcanrenamethecolumntosomethingmore appropriateforyourlist,suchasLastName. Asecondtypeofhyperlinkexistsonthee-mailaddresscolumn.Allhyperlinkcolumnsconsistof twoparts,onepartdefineswhatdisplaystothelistviewerandthesecondpartistheactuallinkusedto openapageorapplicationwhensomeoneclicksonthelink.Inthecaseofthee-mailaddress,clicking onthee-mailaddressautomaticallyopensyoure-mailapplicationandcreatesablankmessageforthis contact.Thecontact’se-mailaddressinthelinkportionofthiscolumnmustbeginwithmailto:.The hyperlinkcolumntypecanalsoreferenceawebaddresseitherwithinyourSharePointsiteoranywhere ontheInternetbyprefixingtheaddresswithhttp://orhttps://asappropriate.
ExternalList TheExternallistisnewtoSharePoint2010.Itallowsyoutodisplaydatafromadatasourceoutsideof SharePointasifitwerealistbuiltwithinSharePoint.Thankstothenewread/writecapabilityofBusiness ConnectivityServices(BCS),whichreplacestheBusinessDataCatalog(BDC)fromMicrosoftOffice SharePointServer2007,youcandefineaconnectiontoalmostanytypeofexternaldatasource,suchas anotherSQLServerdatabaseoranOracledatabase.Onceyouhaveaconnectiondefined,youcan instantiateanytablefromthatdatasourcetodisplayanduseitfromwithinSharePointasifitwerejust anotherSharePointlist.You’llexaminethisnewfeatureinmoredetailinalaterchapter.
81
CHAPTER2■SHAREPOINTLISTS
ImportSpreadsheet IfyoualreadycreatedyourdatalistinExcel,youcanquicklyandeasilyimportthatdataintoa SharePointspreadsheetwithoutre-enteringallthedata.Chapter7discusseshowtoimportExceldata andhowyoucanworkwithbothSharePointandExcel.
LinksList YoumightthinkoftheLinkslistasoneofthesimplerlistsintheContent&Datagroup.Itconsistsofa collectionoflinkstootherpagesorotherwebsites.ManypagedesignersusetheLinkslistasacontainer toholdthelinkstheywanttodisplayonthewebpagestheybuild.ALinkslistmightevenprovidethe dataforasimplemenutopagesonyoursiteorrelatedsites. WhileSharePointprovidesseveralwaystoaddlinkstoawebpage,theLinkslistisaneasyto maintainstructure.However,onceyouhavemorethanadozenlinks,youmightbetemptedtostart groupingyourlinkstoorganizethemusingeitherseparatefoldersorevenseparatelists.Abetterdesign choiceaddsacustomcolumntothelist.Withacustomcolumn,youcancreateviewsthatfilterthelinks. Whetheryouuseaseparatecolumnforeachfilteredvieworasinglecolumnwithdifferentvaluesor evenamulti-valuedcolumnbecomesadesigndecision.Theadvantageofnotorganizingyourlinksin foldersorinseparatelistsismanageability.Youcaneasilygroupitemsindifferentviewsbydefining differentfilteringcolumns.Ifyoustoreeverythingbyfoldersorseparatelists,itisdifficulttocreateviews thatcombineandreuselinksindifferentadhocways.
■TipSharePoint2010buildscollaborationpagesonaWikipage,whichallowsyoutolinkpagesonyoursite easilywithoutusingaLinkslist.However,forlinksoutsideofthecurrentsite,youmightusetheLinkslistor similartechniquetomakethemeasiertofindandmaintain.
Figure2-10showstwoexamplesofapossiblesitemenuusingaLinkslist.Thetopone,calledMy Links,displayslinksinacustomviewthatincludesonlytheURLcolumnfromaLinkslist.Youmight useamenusuchasthisonetolinktoobjectsthatyoudonotincludeintheQuickAccessareaontheleft sideofthepageortopagesoutsideofyoursite. ThesecondlistinstanceusesadifferentviewofthesameLinkslist.Inthisview,thefirstcolumn identifiestheitemtype(folderorlink)usingdifferenticonsforeachtype.Thesecondandthirdcolumns displaytheURLandNotesforthelinkrespectively.The“DefiningViewsforYourList”sectionprovides furtherdetailsonhowtocustomizeandcreateviews.Chapter3explainshowtoaddviewstoapage,as showninFigure2-10.
82
CHAPTER2■ SHAREPOINTLISTS
Figure2-10.ALinkslistcanprovidehyperlinkstointernalandexternalpagesandsites.
StatusList Thestatuslistprovidesawaytotrackanddisplaygoalsusingcolorediconsthatindicatehowsuccessful youhavebeenatreachingthosegoals.Icoverthislisttypeindetailinthe“IntroductiontoKPIs”Section inChapter8.
SurveyList ThelastlisttemplateintheContent&DatacategoryistheSurveylist.Thislistprovidesanexampleofa highlyspecializedlist.Itdisplaysitscolumnsasaquestionnaireorapollforthereadertocomplete ratherthanalistofcolumnsandrows.Youbeginthesamewaywhencreatinganewsurveylistby assigninganameanddescriptiontoanewsurvey.However,surveyshavetwoadditionaloptionsthat youmustsetwhenyoucreatethelist. Thefirstoptionaskswhetheryouwanttodisplaytherespondent’snameinthesurvey.Somepeople liketohavetherespondent’snameinthesurveysotheycancontactherforadditionalcomments relatedtoherresponses.However,ifyoursurveyasksquestionssuchastherespondent’ssatisfaction
83
CHAPTER2■SHAREPOINTLISTS
withcurrentmanagementpoliciesortheeffectivenessoftherespondent’simmediatesupervisor,they maynotbeentirelyhonestintheirresponsesunlessyoumakethesurveyanonymous. Thesecondoptionyoumustspecifyletsyoudecidewhetherasingleusercanrespondtoasurvey onlyonce(nostuffingtheballotboxeshereplease).Eveniftheuserrespondstoananonymoussurvey,if thesurveyisonacollaborationsitethatrequiresalogin,ahiddenfieldcantracktheusernameand thusrestrictuserstooneresponsepersurvey. Next,youcreateyoursurveyquestions.SharePointprovides13built-inquestiontypesfromwhich tochoose.Thequestiontypesrangefromsimpletextresponsestomultiplechoiceanswersandeven ratingscalequestionsusingaLikertscale.Eachquestiontypehasitsownuniquesettings.Youcanmake individualquestionsrequired.Somequestiontypesallowmultiplevalueselections.Youcanalsoset minimumandmaximumvaluelimitstonumericquestions.
The Likert Scale ALikertscalesurveyattemptstodeterminetherespondent’slevelofagreementwithastatementby selectingavaluefrom1tonbasedonhowstronglyheagreesordisagreeswiththestatement.Asimple examplemightbeasfollows: SharePointprovidesagoodcollaborationframeworkfortheworkenvironment. 1.
StronglyDisagree
2.
Disagree
3.
NeitherAgreenorDisagree
4.
Agree
5.
StronglyAgree
Somescalesdonotincludeacentralchoicelikethethirdchoiceabovewheretherespondentdoesnot reallyhavetomakeachoiceononesideortheotherofthequestion.Otherscalesmightincludemore values.However,themorevaluesthatseparatethetwoextremesofthescale,themoredifficulty respondentshavedecidingbetweenthechoices. Aconceptknownascentraltendencybiasreferstoarespondentwhoavoidsextremeresponses.Ina scaleofonly1to5,suchabiasforcesarespondent’sanswerstothethreemiddlevalues.Thisbias providesoneargumentforscaleswithmorechoices. TwoothercommonreactionsinLikertscalesincludetheacquiescencebiaswhererespondentstendto agreewithallstatementsandthesocialdesirabilitybiasinwhichrespondentstendtoselectanswers basedonwhattheythinkthesurveyorexpects.Thislatterbiasoftenappearsasaproblemwithnonanonymoussurveysinaworkenvironmentwhererespondentsfeelthattheirresponsescouldaffecttheir career. Surveyssupportbranchinglogic.Ratherthanbuildingasurveyinwhichtheuseranswersevery question,youcancreateaquestionnairethatbranchestodifferentquestionsdependingonhowthe userrespondstoaquestion,thuscustomizingthesurveybasedontheindividual’searlierquestion responses.
84
CHAPTER2■ SHAREPOINTLISTS
Figure2-11showstheuserviewofanavailablesurvey.Theuserinitiallyseesonlythenameofthe surveyalongwithabriefdescriptionanditscreationdate.Theuseralsoseesthenumberofresponses alreadysubmitted.Torespondtothesurvey,theyshouldclickthelinkRespondtothisSurveyfoundat thetopofthesurveyorclickthetitleofthesurveydependingonwhereyoudisplaythesurvey.Both actionsopenaseparatepagetodisplaythesurvey.Themenubarofthisscreenalsohastheoption RespondtothisSurveythatyoucanusetostartthesurvey.
Figure2-11.Displayinganotificationofsurveyavailability Whentheuseropensthisexamplesurvey,SharePointdisplaysapagewiththequestions,asshown inFigure2-12.Noticethatforyes/noquestions,SharePointusesacheckboxthatwhenchecked indicatesYesandwhenleftblankindicatesNo.AlthoughyoucansetthedefaultvaluetoeitherYesor Nowhenyoudefinethequestionsforthesurvey,neitherdefaultchoicereallyguaranteesthatthe respondentactuallymadetheresponse.Amoreaccuratewaytoaskevenasimpleyes/noquestion mightusetheChoicequestiontype.Whenusingthisquestiontype,includeadefaultoptionNAto indicatethattherespondenthasnotmadeachoiceorsimplyleavethedefaultvalueblank.
85
CHAPTER2■SHAREPOINTLISTS
Figure2-12.Respondingtoasurvey
Steps to create survey in Figure 2-12 1.
Navigatetothesitewhereyouwanttocreatethesurvey.
2.
SelectSiteActions➤ViewAllSiteContents.
3.
ClicktheCreatebuttonfromthetopofthepage.
4.
Selectfromtheavailablelisttypes,thesurveylist.
5.
Provideanameforthesite:Collaboration Training Survey.
6.
ClickMoreOptions.
7.
Enteranoptionaldescription.
8.
ChoosewhethertodisplaythesurveyintheQuickLauncharea.
9.
IntheSurveyOptionssection,choosenottoshowtheusernamesandchoose nottoallowmultipleresponses.
10. ClickCreatetobeginenteringsurveyquestions.
86
CHAPTER2■ SHAREPOINTLISTS
11. Enterthefirstsurveyquestion:On what date did you attend the collaboration class?
12. Fromthequestiontypes,selectDate and Time
a. Thescreennowrefreshestoshowadditionalsettingsforthisquestiontype 13. SelectYesforthequestionRequirearesponsetothisquestion. 14. ForthequestionEnforceuniquevalues,selectNo. 15. ForthequestionDateandTimeFormat,selectDate Only. 16. FortheDefaultvalue,select(None). 17. ClicktheNextQuestionbuttonatthebottomofthepage. 18. Enterthesecondquestion:Did you have experience building collaboration sites prior to attending class? 19. Fromthequestiontypes,selectYes/No (checkbox). 20. Afterthepagerefreshes,selectNoastheDefaultvalueintheadditionalsettings. 21. ClicktheNextQuestionbuttonatthebottomofthepage. 22. Forthelastquestion,enterthetext:What was your opinion of this class. 23. Fromthequestiontypes,select: Rating Scale. 24. Afterthepagerefreshes,selectYesforthepromptRequirearesponsetothis question.
a. Thenextsettingpropertyletsyouenteranynumberofsub-questions.Toaddmorethan onesub-question,pressEnterattheendofeachlinebeforebeginningthenextsub- question. 25. Enterthefirstsub-question:I learned new techniques that I can apply to my site from this class. 26. AfterpressingEnter,typethesecondsub-question:The class materials were presented clearly.
87
CHAPTER2■SHAREPOINTLISTS
27. AfterpressingEnter,typethethirdsub-question:The instructor did a good job presenting the materials. 28. AfterpressingEnter,typethefourthsub-question:The instructor kept the class on task. 29. AfterpressingEnter,typethefifthsub-question:The handout materials augmented the class instruction. 30. AfterpressingEnter,typethesixthsub-question:I would recommend this class to my co-workers. 31. NextyoumustselecttheNumberRange:4 32. NextspecifytheRangeTextreplacingLowwith:Strongly DisagreeandHigh withStrong Agree.Changethemiddleboxtoablanksinceyouhavenomiddle value. 33. DeselectifnecessarytheShowN/Aoption. 34. ClickFinishtocompletethesurvey. Asmentionedpreviously,youcanclickthesurveytitletoopenaseparatepagedisplayingonlythe survey.Thispagehassomeoptionslistedatthebottom.Thefirstoptionaskswhethertheuserwantsto showagraphicalsummaryofresponses,asshowninFigure2-13.Thisviewmakesiteasytointerpretthe surveyresults.Beneaththat,asecondoptionletsyoushowallresponses.Theinitiallistshownwiththis optiononlyshowsadefaultresponseidentifyingnamethatincludesasimplenumericsequence indicator,thenameoftheresponder(ifnotanonymous),thedatethesurveywastaken,andwhether theycompletedthesurvey.
88
CHAPTER2■ SHAREPOINTLISTS
Figure2-13.Displayingsurveyresultsgraphically
89
CHAPTER2■SHAREPOINTLISTS
■NoteOneofthesurvey’sAdvancedSettingoptionsallowsthesurveybuildertodeterminewhetherotherusers canseeeveryone’sresponsesorjusttheirown.Ofcourse,thesurveybuilderaswellasthesiteownerscan alwaysviewallsurveyresults.However,allowingpotentialrespondentstofirstviewpriorresultsmightdistorttheir responses(seethesidebar“TheLikertScale”fortypesofbiasinsurveys).Theymayevendecidethat,basedon theoverwhelmingdirectionofcurrentresponses,theiropinionmaynotmatterandthusnottakethesurvey.
CollaborationLists Outofthebox,SharePointonlyprovidesonelistclassifiedasacollaborationlist,theDiscussionBoard. SharePointplacesthislistinthecollaborationcategorybecauseadiscussionimpliesmorethanone person,asmostpeopledonothavediscussionswiththemselves.(AlthoughIhavetowonderifthat personwalkingdownthestreettalkingtohimselfreallyhasaBluetoothconnectionforhisphone.)So let’slookathowthediscussionboardworks.
DiscussionBoardList ThediscussionboardremindssomepeopleofanInternet-stylenewsgroup.Bothdiscussionboardsand newsgroupssupportmultiplemessagesrelatedtoeachtopic.Bothobjectsallowyoutogroupmessages chronologicallyorbythreadsubject.ASharePointdiscussionboardsupportscolumnssuchasthe discussionsubjectandbody,thenameoftheuserwhocreatedthemessage,andthecreationdate,as wellasuser-definedcolumns.Youmightimplementadiscussionboardlistontopicswhereyouwant feedbackfrommembersofyourorganizationorwhenyouneedtoprovideaplacewheretheycanpost comments,questions,orconcerns.Figure2-14showsadiscussionboardforanewcollaborationproject usedtoobtainopinionsfromthestaffconcerningfeaturesneededforcollaboration.
Figure2-14.Showingsubjectsfromadiscussionboardlist
90
CHAPTER2■ SHAREPOINTLISTS
Figure2-14showsalistingofdiscussiontopicsbysubject.Notethatthefirstandseconddiscussion threadshavenorepliesyet,whilethethirdtopicalreadyhasthreereplies.Toviewthesereplies,clickthe subject.Thisactiondisplaysanewpagewithonlythemessagesrelatedtotheselectedsubject.By default,SharePointdisplaysthemessagesinaflatview,meaningthatthemessagessimplyappearin sequencebasedontheModifieddatecolumn.However,thereisanotherbuilt-inviewforthislist,called thethreadedview,whichdisplaysthemessagesinahierarchyview.
■NoteTodisplayaviewotherthanthedefaultview,usetheListribbonandopenthedrop-downlistinthe CustomViewsgrouptodisplayandselectfromavailableviews.Youcanalsoclickonthelastitemofthe breadcrumbsinthetitlebarofthelisttoopenadropdownlistofallthedefinedviewsforthecurrentlist.
Inathreadedview,SharePointindentsamessagereplyasmallamountfromthemessagetowhich itreplies.Multiplerepliestothesamemessagehavethesameindent.InFigure2-15,user “Administrator”respondedtotheoriginalmessagefrom“Michael.”However,both“MPATrainer”and “Susan”respondedtotheAdministrator’smessage.Notethat,fromthisview,youcanreplytoany messageatanylevelwithinthethreadbyclickingtheReplybuttontotherightonthereplyheader.
■NoteWhenSharePointgroupsthemessagesbythread,itsortsbyModifieddate.Therefore,youneedtorely ontheamountofindentingforeachmessagetodeterminetowhichmessageeachmessagereplies.Youcanalso clickthelinkShowQuotedMessagesatthebottomofamessagetoseejustthemessagesinthecurrent response’shierarchy.
91
CHAPTER2■SHAREPOINTLISTS
Figure2-15.Showingthreadedmessageswithinadiscussionboardsubject Overtime,asinglemessagecanspawnmultiplebranchesoffthemainthreadaspeopleexplore differentissues.Usingthethreadviewtodisplaymessageshelpsorganizewhatmightotherwisebea confusingchronologicalsequenceofmessagesintoarationalconversationalsequence.
SearchingCategory AlthoughthiscategoryincludestheCalendarandProjectTaskslists,Iwillreservediscussionofthe ProjectTaskslistfortheTrackingCategory,whichalsoincludestheProjectTaskslist.
CalendarList Thecalendarlistsharessimilaritiestotheannouncementslist.Bothdisplayeventsandactivities. However,thecalendarlistextendsthisfunctionalityshowingeventsinafamiliarmonth,week,ordaily
92
CHAPTER2■ SHAREPOINTLISTS
graphicallayoutsimilartowhatyoualreadyuseinOutlook.Evenbetter,thecalendarlistintegrateswith Outlook2003andlater.Chapter5exploresthecalendarlist’scapabilitiesmorefully. Figure2-16showsabasiccalendarlistwiththreeupcomingevents.Thedefaultviewdisplaysthe dateandtimeoftheeventsalongwiththeeventtitleanddescription.Thecalendarlistincludesthe built-inviews: •
AllEvents:Thisviewdisplaysallpast,present,andfutureevents.
•
CurrentEvents:Thisviewdisplaysallpresentandfutureeventsonly.
Figure2-16.CalendarlistusingtheAllEventsview Inadditiontoalist-styleview,thecalendarlistincludesspecialviewsthatdisplaycalendardataby month,byweek,orbyday.Figure2-17showsanexampleofthemonthviewofthesameeventsshown inFigure2-16.
93
CHAPTER2■SHAREPOINTLISTS
Figure2-17.Calendarlist’smonthlyview Thecalendarlisthasanotherinterestingfeature.Itsharesitseventswitheventsinyourlocalcopyof Outlooksoyoucanaccessyourschedulesnomatterwhereyoustoreyourevents,meetings,and appointments.Forexample,youmightuseaSharePointsitetotrackinformationaboutyourproject. Withinthissite,yourprojectmanagermaintainsasinglecalendarofmajoreventsrelatedtotheproject. YoucanmergethissitecalendarwithyourOutlookcalendartobuildasingleconsolidatedviewofall yourevents.Chapter5exploresindepthhowtoworkwithcalendarliststhroughOutlook.
■TipDon’tlikethewayyourlistviewdisplaysonawebpage?Changeit!Clickthesmalldownarrowtotheright ofthelistnameonthewebpageandselectModifySharedWebPart.Adialogboxappearstotherightofyour page.Youmayneedtoscrollhorizontallytoseeit.FindtheSelectedViewpropertyinthisdialogandchoosea differentviewfromthedrop-downlist.ClickOKtoapplyandexitthisdialogboxandreturntothenormalpage viewmode.Thenextchaptercoversmoreondisplayingviewsonwebpages.
94
CHAPTER2■ SHAREPOINTLISTS
TrackingLists YoucancreateavarietyoftrackinglistsbyclickingMorecreateoptionsfromtheSiteActionsmenu. Trackinglistscontaininformationsuchaslinkstootherpagesorsites,calendarevents,tasks,issues,or evensurveys.YouwillfindtheselistsundertheTrackinggroup: •
Tasks
•
ProjectTasks
•
IssueTracking
•
Agenda(availableonlyinMeetingsites)
TasksList IfyouusetheTaskslistinOutlooktomanageyourto-dolistsortheto-dolistsofyourstaff,youhave someideaofhowsuchlistshelporganizeyourworkday.TheSharePointtaskslistalsoincludescolumns thatletyouentertasktitles,descriptions,startdates,duedates,status,andtaskpercentcompletion.You canassign(dependingonyourpermissions)taskstootherusers.Thenyoucanchangetheviewtoseeall tasks,justtasksassignedtoyou,tasksduetoday,orallactivetasks.
■TipYoucandefineanalerttoreceivenotificationbye-mailwhensomeonecreatesanewtaskandassignsitto you.ButabettermethodistoturnontheE-MailNotificationoptioninthelist’sAdvancedSettings(SeeList SettingsintheSettingsgroupoftheListribbon)tosendane-mailaboutthetaskwhenyouassignownershipof thetaskusingtheAssignedTofield.
What is an Alert? AnalertisaflagsetwithinSharePointtonotifyyouviae-mailwhenachangeoccurstotheselecteditem. Youcandefinewhenyouwanttoreceivealertsandforwhattypesofchangesyouwantthem.Theirreal valueisthattheyeliminatetheneedtomonitorlistsandlibrariesmanuallytotrackchangesoradditions.I coveralertsinmoredetailinthe“UsingAlertstoNotifyYouofListChanges”sectionlaterinthischapter Ifyoumanageworkforotherusers,thetaskslistmighthelpyouorganizeyourstaff’swork.Since evencompletedtasksremaininthelist,youcouldcreateafilteredlistviewtoshowyourbossallthe taskscompletedbyyourstaffinthelastreportingperiod.Withafewcustomfields,youcouldalsocreate viewstotrackhoursexpendedpertask.Trackingactualtimetocompletetaskscanhelpyouestimate requiredtimeforsimilartasksinthefuture.Youcanalsousethisinformationtobillbackyourgroup’s timeifyoumanageaconsultinggroup.Byaddingafieldforcompletiondates,youcouldcomparethe differencefromthetaskduedatestodeterminewhetheryourstaffcankeepupwiththeworkloador whetheryouneedtorequestadditionalstaff. Figure2-18showsasimpletaskslist.
95
CHAPTER2■SHAREPOINTLISTS
Figure2-18.Taskslistforaprojectinprogress Aswiththecalendarlist,youcanintegratethetaskslistwithOutlook.Chapter5exploresthese capabilities.
ProjectTasksList Theprojecttaskslistatfirstlookssimilartotheprevioustaskslistinthatitsupportsthesamebasic fields.However,whiletheitemsinthetaskslistmightrepresenttasksfrommultipleindependent projectsoreventasks,theitemsintheprojecttaskslistgenerallyrepresentsrelatedtasksforasingle project.Infact,asyouenteritemsinthislist,SharePointusesthestartandduedatestodefineabarina Ganttchartautomaticallyasthelist’sdefaultview.
Gantt Charts YouuseaGanttchartinprojectmanagementasawaytovisuallyshowthesequenceoftasksinaproject alongahorizontaltimeline.Italsoshowsthestatusoftheprojectbyshadingeachtasklinebasedonits percentcompletion,whichwhencomparedtothecurrentdateonthehorizontaltimelineprovidesavisual estimateoftheproject’sstatus. Alistofthemajortasksinaprojectappearstotheleftofthechart.Therightsideofthechartconsistsofa timelinedepictingdaysorweeksintheproject,dependingonthetimescale.EachrowontheGanttchart identifiesonespecifictaskwithintheproject.Thehorizontalbandtotherightofthetasknameidentifies
96
CHAPTER2■ SHAREPOINTLISTS
thestartandendoftheprojectalongthetimeline.Ifonetaskdependsonanothertask,linesfromtheend ofthefirsttaskconnecttothestartofthenexttasktoindicatethatthesecondtaskdependsonthe completionofthefirsttask.SharePointdepictseachtaskwithtwohorizontalbands.Thewiderband representstheentireplannedtimespanfromthestartdatetotheenddateofthetask.Theinnerband indicatesthepercentcompletion.Ifthisinnerbandismissing,thetaskhasnotyetstarted.Iftheinner bandstartedontimebutextendsbeyondtheouterband,thetaskwasunderestimated.Acrossthetopof thechartisacalendarribbonfromwhichyoucanidentifythecurrentdate.Anytaskinwhichtheinner banddoesnotreachthecurrentdateisbehindschedule.Anytaskinwhichtheinnerbandstretches beyondthecurrentdateisaheadofschedule.Thusyoucanvisuallycomparedthebandsforeachtaskto thecurrentdatetoestimatethestatusofeachprojecttask. Figure2-19showsaGanttchartforasimpleproject:fiveitemsnecessarytoimplementa collaborationsitefortheHumanResources(HR)departmentofanorganization.Supposethattodayis 5/1/2010.Youcouldquicklyseethatyouareaheadofscheduleonthesetasks.Ontheotherhand,if todaywere6/1/2010,youwouldclearlybebehindschedule.
Figure2-19.ProjecttaskslistdisplayingaGanttchart Ofcourse,thisGanttchartforasingleprojectdoesnotshowMichael’sinvolvementinthreeother projectsthathaveahigherprioritythanthisproject.Asaresult,hecouldnotdevotethenecessarytime tothisprojecttokeepitrunningonschedule.Theprojecttasklistdoesnot,byitself,combine informationfrommultipleprojectstofacilitateseeingrelationshipsbetweenprojectsandhowthat mightimpactresourceavailability.YoumaywanttoconsiderimplementingMicrosoft’sProjectServer 2010alongwithMicrosoftSharePointServer2010tomanagemultipleprojects.
IssueTrackingList Theissuetrackinglistalsolookssimilartothetaskslistinthatittracksindependentactivitiesthatmight involvemultipleprojectsoractivities.Yourorganizationmayuseanissuetrackinglisttotrackcustomer supportcalls,riskmitigationactivities,orotherissuesthatdonotnecessarilyrelatesolelytooneproject. Inadditiontothefieldssupportedbythetaskslist,theissuetrackinglistclassifiesitemsbycategories.A categorymightrepresentadepartment,application,project,team,oranyothergrouping,oritcould simplyindicatetheseverityoftheissue.
97
CHAPTER2■SHAREPOINTLISTS
■TipTheIssueTrackinglistdefinesthecategoriesaspartofthedefinitionofthelist.Ifyoudonotlikethedefault categories,simplyeditthecolumnpropertiesbygoingthroughListSettingsandcreateyourowncategories.
Youcanalsoassociateaniteminthelistwithotheritemsalreadyinthelist.Thisisagreatwaytotie togetherrelatedissueswheresolvingoneissuemayresolveoratleastpartiallyresolveanotherissue. Figure2-20showsanexampleofanissuetrackinglistcreatedbyaCustomerCaregroup.
Figure2-20.Anissuetrackinglisttracksoutstandingissuesforthecompany.
OtherLists SharePointmakesseveralotherlistsavailablewhenyouselectCreatefromtheAllSiteContentpage. Somelistsareonlyavailablewithcertainsitetemplates.Forexample,thefirstfivelistsshownbelowonly existwithameetingsite.
98
•
Agenda:Createanoutlineofmeetingtopics,whowillcoverthem,andthe amountofallottedtimeforeachtopic.
•
Decisions:Usedtotrackdecisionsmadeatthemeeting.
CHAPTER2■ SHAREPOINTLISTS
•
Objectives:Usedtoinformattendeesofthemeetinggoalsbeforetheyattendthe meeting.
•
TextBox:Usedtoinsertcustomtext,instructions,messages,orquotesintoa meeting.
•
ThingstoBring:Listofthingsthemeetingattendeesshouldbringtothemeeting suchashandouts,projectors,laptops,powercables,etc.
Figure2-21showsanexampleofwhatameetingsitecouldlooklikewithseveralofthespecial meetinglistsonthemainpage.Keepinmindthatonceyouhaveameetingsitedefinitionthatworksfor yourorganization,youcancreateacustomtemplateofthatsitesoyoucanreuseittocreateother meetingsites.
Figure2-21.Atypicalmeetingsitewithseveralmeetingspecificlists
99
CHAPTER2■SHAREPOINTLISTS
Itistypicalforasitetemplatetohavespecializedlibrariesorlistsdesignedspecificallyforthatsite. However,youarenotlimitedtojustthelistsdefinedbythesite.Youcanalsocreatecustomlists.These listsbeginwithonlytherequiredTitlecolumn(thatyoucanrename).Youcanthenaddyourown columnstothisbasiclistdefinitiontocreatealistthatmeetsyourspecificneeds.TheImport SpreadsheetlistisacustomlistthatisespeciallyusefulwhenyouneedtobringdatafromanExcel spreadsheetintoSharePointwithouthavingtoretypeeverything.Iwillcovermanyofitsspecialfeatures insubsequentchapters. SharePoint2010alsoaddsaLanguagesandTranslatorslist.ThislistworkswiththeTranslation ManagementworkflowsandtheTranslationManagementLibrarytoassigntranslationtasksbasedon thelanguagesinvolved.
EditingDataintoYourList Earlierinthischapter,yousawhowtoperformsimpledataeditingwithinyourlist.Yousawhowtoedit theinformationusingoneoftwoviewstyles,StandardvieworDatasheetview.Tobegineditingdatain anexistinglist,openthelistbygoingtoSiteActions➤ViewAllSiteContentandthenclickingonthe nameofthelistwhereyouwanttowork. ListstypicallyopeninStandardview.Noticethatoneofthecolumnsthattypicallyappearhasthe nameTitle.Asmentioned,youcanrenamethiscolumntomakeitmoresuitableforyourneeds.The importantthingisthatthiscolumnlinkseachiteminthelisttoaneditpagewheretheusercanmodify thedataintheothercolumns.
■TipIfthelinkedcolumndoesnotappearinadifferentcolor,youcanalsodeterminewhichcolumnlinkstothe editpagebyslowlypassingyourmouseovereachcolumnintheitem(orrow).Adrop-downarrowappearstothe rightofthecolumnvalueforthefieldlinkedtotheeditpage.
YoucannoteditthecolumndatadirectlyintheStandardview.Youmustclickonthevalueinthe Titlecolumntoopenaformthatfirstdisplaysthedataforthatitem.YoumustthenclickEdititeminthe headerofthatformtoopenaneditableviewofthedata.Figure2-22showstheformthatfirstdisplays thecolumndataforanitemalongwiththeViewribbonandFigure2-23showstheformusedtoeditthe item.
100
CHAPTER2■ SHAREPOINTLISTS
Figure2-22.DisplayinganindividualitemintheUpcomingEventslist
Figure2-23.DisplayingtheeditformoftheUpcomingEventslistforanitem
101
CHAPTER2■SHAREPOINTLISTS
Onthiseditpage,youcanchangetheitem’sdataandthenclickSaveintheCommitgroupofthe Editribbon. Ifyouonlyneedtochangeafewvaluesinoneortwoitemsinalist,thismaybeagoodtechniqueto editthedata.However,ifyouneedtomakemanychangestothedata,youmaywanttoconsider switchingtoDatasheetviewforthelist.YoucandothisatanytimebyselectingDatasheetViewinthe ViewFormatgroupoftheListRibbon.Thisviewstyle,asshowninFigure2-24,resemblesanExcel spreadsheetoranopenAccesstableinthatitallowsyoutoeditanycolumnvalueinanyrowbysimply clickingonitandmakingyourchanges.
Figure2-24.DisplayingalistusingDataSheetview SharePointautomaticallysavesyourchangeseverytimeyoumovefromonerow(oritem)to another.However,therealadvantageofeditingmultipledataelementsusingtheDatasheetviewcomes fromtheflexibilityofeditingandmovingaroundyourdata.Table2-1showssomeofthemajor keystrokeshortcutsavailableinDatasheetview. Table2-1.KeystrokeShortcutsinDataSheetView
102
Key
Action
Arrowkeys
Leftandrightmovethroughthetextofthecellandtothenextorpreviouscell.Up anddownmovetothesamecolumninthepreviousornextrow.
Ctrl+A
Usedtoextendtheselectiontoallcellsintheentirelist.
Ctrl+C
Copiesthecontentsofthecurrentcelltotheclipboard.
Ctrl+End
Movestothelastcellinthelastrowofthelist.
Ctrl+Home
Movestothefirstcellinthefirstrowofthelist.
Ctrl+Shift+End
Usedtoextendtheselectiontoallcellsfromthecurrentcelltothelastcellinthe list.
CHAPTER2■ SHAREPOINTLISTS
Key
Action
Ctrl+Shift+Home Usedtoextendtheselectiontoallcellsfromthecurrentcelltothefirstcellinthe list. Ctrl+Spacebar
Usedtoextendtheselectiontoallcellsinthecurrentcolumn.
Ctrl+V
Pastesthecontentsoftheclipboardtothecurrentcell.
Ctrl+X
Cutsthecontentsofthecurrentcellandplacesitontheclipboard.
Ctrl+Z
Undoesthelastedit.
Delete
Deletesthecurrentcontentsofthecurrentcell.
End
Movestothelastcellintherow.
Enter
Movestothesamecellinthenextrow.
Esc
Restoresthepreviousvaluetothecurrentcell(likeanUndo).
F1Opens
Help.
F2
PutsthecurrentcellinEditmodewiththecursorattheendofthetext.
F8
OpenstheDatasheetTaskPane.
Home
Movestothefirstcellintherow.
PageDown
Movestothenextpage.
PageUp
Movestothepreviouspage.
Shift+ArrowKey
Usedtoextendtheselectionofcellsinthedirectionofthearrow.
Shift+F8
HidestheDatasheetTaskPane.
Shift+F10
Opensacontextmenuforthecurrentcell.
Shift+Spacebar
Usedtoextendtheselectiontoallcellsinthecurrentrow.
Shift+Tab
Movesonecelltotheleft.
Tab
Movesonecelltotheright.
103
CHAPTER2■SHAREPOINTLISTS
■CautionAlthoughitispossibletousetheEnterkeytoenterdataintoalloftherowsforonecolumnbefore movingtothenextcolumn,ifanyofyourothercolumnsarerequiredfields,thisactionfails.SharePointtriesto saveeachrowwhenyouexittherowanditcannotexitarowifanycolumnthatrequiresdataremainsblank.If yourcurrentviewdoesnotincludeallcolumns,thiscanbeconfusingwhentherequiredcolumndoesnotappear intheview.
Whenyoufinishworkingindatasheetmode,youcanclicktheStandardViewbuttonintheView FormatgroupoftheListribbon.
WorkingwithListViews IstartedthischapterassumingthatyouhavebeenfollowingalongusingaTeamsite.Forexample,the teamsiteautomaticallyincludestheAnnouncementslistonthesite’shomepage.Asyoumadechanges totheAnnouncementslist,addingormodifyingthecontentofindividualannouncements,youmay havenoticedthatthecontentchangedonthehomepagetoreflectthechangesyoumadeinthelist. However,itisimportanttoknowthattheviewofthelistonthehomepageofthesiteisnotthesame thingasthelistitself.Infact,ifyouweretomakeachangetothestructureoftheviewfromthelistitself, perhapsbyaddingorremovingacolumn,changingthesortorder,orapplyingafilter,thosechanges wouldnotappearintheannouncementssectionofthehomepage.Onlychangestothelistdata immediatelyappearsinthehomepageviewofthelist. Whydosomechangesappearandothersdonot?Thatisafairquestionandonethatperplexes manySharePointusers.Thekeytounderstandingthisapparentinconsistencycomesfromthe understandingthatthelistitselfdoesnotappearonasitepage,onlyaviewofthatlistappears. Changingthedatadisplayedbythatviewdoesnotrequireachangetotheviewdefinitionitself. Therefore,datachangesflowthroughtheviewdefinitiontothepage.However,whenyouchangethe underlyingviewdefinition,youmustrefreshtheviewdefinitionstoredwithinthepagewiththenew viewdefinitiondefinedinthelist. Let’ssupposethatyouonlywantedtodisplaytheannouncementtitleandnotthemodifieddateas originallyshownatthebeginningofthischapter.Youhavetwowaystomakethischange.Oneway makesthechangetotheviewdefinitiondirectlystoredwithinthepage.Makingthechangethiswayhas noeffectontheoriginalviewdefinitionbackinthelist.Icallthisadisjointedchangebecausetheview usedonthepagenolongerreflectsanychangesmadetothesupposedlysameviewbackinthelist.If youwanttomakebothviewsmatchagain,youmustopentheviewdefinitioninthelistandmakethe samechangestherethatyoumadetotheviewdefinitioninthepage.Ifyouonlymadeafewchanges, youmaybeabletosuccessfullychangebothviews,butasthenumberofchangesincreases,thechances ofmissingoneormoreofthechangesfromoneviewtoanotherincreases.
■TipIfallyouneedtodoischangetheviewusedonthepageanddonotcareabouttheviewinthelist,youcan easilyeditthelistrightfromthepage.Placethepageineditmode.Thenclickanywhereinthelisttodisplaythe ListToolsribbongroup.ThenclicktheModifyViewoptionintheManageViewsgroupoftheListsribbon.
104
CHAPTER2■ SHAREPOINTLISTS
Thesecondwaytomakethechangestartsbymakingthechangeintheexistingviewdefinitionin thelistorbycreatinganewviewdefinitioninthelist.Usingthismethodmakesthechangeinthelist, butthechangesdonotimmediateappearinthepagethatdisplaysthelist.Tocorrectthepagedisplay, youmustopenthedefinitionofthelistonthewebpageandrefreshtheviewdefinition.Iprefermaking changestoviewsusingthissecondmethodbecauseIonlyhavetomakethechangestoonecopyofthe viewandthensimplyrefreshtheotherinstanceofthatviewonthepage.Thefollowingparagraphs describethestepsneededtousethismethod. First,opentheoriginallistandthroughtheListSettingspage,selecttheviewyouwanttomodify, makeyourchangestotheview,andthensavetheview.Inthiscase,toshowonlytheTitlecolumn,you wouldneedtoopentheAllItemsviewanddeselectallthecolumnsexceptfortheTitlecolumn.Ifyou alsowanttoremovethecheckboxthatappearstotheleftofthetitlecolumninthelist,scrolldownto thesectionTabularViewanddeselectthecheckboxAllowindividualitemcheckboxes.ClickOKto savethechangestotheview. Next,navigatetothepagethatdisplaystheview.(Iknowwehavenotyetreallydiscussedhowto placelistsonwebpages.IwillcoverthattopicinChapter3.Ifyoufollowthestepslistedhere,you shouldstillbeabletoaccomplishthegoal.)PlacethepageinEditmodeandlocatethewebpartthat holdsthelist.Findandclickonthesmalldown-pointingarrowtotherightofthelisttitle.ThedropdownmenuthatappearsincludestheoptionModifySharedWebPart.Clickthisoptiontoopena panelofpropertiesforthislistinstanceonthecurrentpage.Ifyoudonotseethispanel,youmaynotice thehorizontalscrollbaratthebottomofthepage.Usethescrollifnecessarytoviewtheareatotheright ofyourpage.Thereyoushouldfindapanelwithseveraloptions.Thefirsttwopromptsincludedropdownboxes.Thefirstdrop-downboxallowsyoutoselectwhichviewfromthecurrentlist’sviewsyou wanttousetodisplaydataonthispage.SharePointselectsthedefaultviewforthelistinitially.However, youmaywanttocreateacustomviewtolimitthecolumns,changethesort,orapplyafiltertothedata thatuserssee.Inthisexample,selecttheAllItemsviewtorefreshthedefinitionoftheviewforthepage. ThenclickOKatthebottomofthispaneltostopeditingthewebpart’sproperties.
■CautionWhenyouapplyaviewtoapage,SharePointmerelymakesacopyoftheviewdefinitiononthepage. Ifyougotothelistandsubsequentlychangethatview’sdefinition,thepagedoesnotautomaticallyknowabout thechange.Rather,youmustre-editthepageandre-applytheviewtothepagetoupdatethelatestchangesto theviewdefinition.
Theseconddrop-downboxallowsyoutochangetheToolbartype.Bydefault,thelistdoesnot displayalinkonthepagetoaddnewdatatoyourlist.Youcanlimitadditionstoyourlistbysettingthe ToolbarTypetoNo Toolbar.(Ofcourse,onlyuserswiththeAdditemspermissioncanaddtoalistinthe firstplace).TheShowToolbaroptiondisplaysaheaderbarlikeyouseewhenyouopenthelistdirectly providingtheabilitytosortandfilterthelist.However,ifyouonlywanttoallowuserstoaddrecords easilytoyourlist,changetheToolbarTypetoSummary ToolbarandclicktheOKbuttoninthelist propertiespanel.SharePointnowdisplaysalinkbeneaththelistAdd new announcement.Clickingit displaysablankversionofthedialogshowninFigure2-25,allowingtheusertoaddvaluesforanewlist item.Remember,thisonlyworksiftheuserhaspermissiontoaddannouncementstothelist. Finally,youcanadditemstoyourlistbyopeningyourlistdirectlybygoingthroughSiteActionsto ViewAllSiteContentandthenclickingonthedesiredlist.Onceopened,clickinablankareaofthelist todisplaytheListToolsribbongroup.SelecttheItemsribbonandthenclickontheupperportionof theNewItemoptionintheNewgrouptoshowthesamewindow,asshowninFigure2-25.
105
CHAPTER2■SHAREPOINTLISTS
Thefirstfieldinthisnewwindow,namedTitle,hasaredasteriskafterthename.Thisasterisk indicatesthatanannouncementmusthaveatitlebeforeSharePointcansaveit.Enteringdataintothe otherfieldsisoptional.
Figure2-25.Addinganewannouncementitem ClicktheOKbuttonwhenyouhavefinishedenteringthedataforthecurrentlistitem.SharePoint automaticallyreturnsyoutothelistpagewhereyoucanseethenewitemintheAnnouncementslist,as Figure2-26shows.
■NoteThepositionofthenewitemwithinthelistdependsonthesortorderusedbythedefaultviewofthelist.
106
CHAPTER2■ SHAREPOINTLISTS
Figure2-26.UpdatedAnnouncmentslistdisplayingthenewlyaddeditem
BuildingaCustomList EventhoughSharePointprovidesawidevarietyoflistsoutofthebox,youmayhavearequirementthat notemplatecompletelysatisfies.Ifoneofthetemplatescomesclosetomeetingyourneeds,youmay wanttouseitandaddafewadditionalcolumns,modifyafew,orevendeleteafewtobuildexactlywhat youwant.However,ifyourrequirementsdiffergreatlyfromanyoftheavailabletemplatesyousawin thefirstpartofthischapter,thencreatingacustomlistfromscratchcanbethebestchoicetosatisfy yourspecificneeds. IfyouhavetheCreatepermissionforlists,youmayfindcreatinganewlisteasierthaneditingan existingone.Let’sseehowtobeginanewlist.First,clickViewAllSiteContentfromtheSiteActions menu.OntheCreatepage,previouslyshowninFigure2-17,selecttheListtypeandtheBlank&
107
CHAPTER2■SHAREPOINTLISTS
Customcategory.Fromthedisplayedicons,selectCustomListasshowninFigure2-27.Likemostother lists,youmustprovidealistnamethatisuniquewithinyoursite.Youshouldalsoprovideadescription thatinformsyoursitereadersaboutthepurposeofyourlist.Toprovideadescription,clicktheMore OptionbuttonbeforeclickingtheCreatebutton.
Figure2-27.Creatingacustomlist Underthenavigationsection,youcanchoosewhethertoincludethelistintheQuickLauncharea. Ifyoudonot,userscanstillnavigatetoyourlistbyclickingeitherListsorViewAllSiteContentinthe QuickLauncharea.Ofcourse,itisalwayspossibletocomebacklaterandchangethissettingthrough theListSettings,sodonotfrettoomuchoverdecidingwhethertoincludethelistintheQuickLaunch area.Also,keepinmindthatlistinstancesbecome“webparts”thatyoucanaddtoanypagewithina webpartzone. Next,definethecolumnsforyourlist.AfteryouclickCreate,SharePointdisplaysanemptylist.By default,alistmusthaveatleastonecolumn,whichSharePointnamesTitle.Infact,ifyouonlyneeda singlecolumn,youcanusethatonecolumn,perhapsrenamingittosomethingmoreappropriate.While youcanrenametheTitlecolumn,youcannotdeleteit.EvenafterrenamingtheTitlecolumnto somethingyoudowant,youwillprobablyneedtoaddafewmorecolumnstothatinitiallist.
■TipToaddorrenamealistcolumn,selectListSettingsfromtheSettingsgroupoftheListribbonwhile displayingthelist.Forexample,withintheColumnssection,locatetheTitlecolumnandclickonittoeditthe propertiesofthecolumn.HereyoucanchangetheColumnNameofthecolumnandthenclickOKtosaveyour update.
108
CHAPTER2■ SHAREPOINTLISTS
FromtheListribbon,clickCreateColumnfromtheSettingsgroup.ThetopportionoftheCreate Columnpage,showninFigure2-28,letsyounameyournewcolumnandselectitsfieldtype.
Figure2-28.Addingacolumntothelist Youmustdefineuniquecolumnnameswithinalistinstance.However,youcanusethesamename forcolumnsindifferentlistinstancesevenwithinthesamesite.Whenitcomestodatatypes,SharePoint providesacollectionofcolumntypesfromwhichtochoose:
109
CHAPTER2■SHAREPOINTLISTS
•
Singlelineoftext:Shorttextentries
•
Multiplelinesoftext:Longtextentries
•
Choice:Selectoneormoreitemsfromapredefinedlistofchoices
•
Number:Anyinteger,real,orpercentagenumber
•
Currency:Anumberwithcurrencyformatting
•
Dateandtime:ADateoraDateandTimevalue
•
Lookup:Selectavaluefromanotherlist
•
Yes/No:Acheckbox
•
Personorgroup:WorkswithAuthenticateduserswithinSharePoint
•
Hyperlinkorpicture:Linkstootherpages,documents,websites,ore-mail addresses
•
Calculated:Calculationbasedonothercolumnsinthecurrentlist
•
ExternalData:DataoutsideofSharePointaccessedthroughtheBCS
•
ManagedMetadata
•
Publishing:Image,HTML,scheduleenddate,schedulestartdate;availableonly assitecolumns
•
Audiencetargeting:Automaticallyaddedifyouturnonaudiencetargetingfora listorlibrary.Thisoptionisnotselectableasauser-definedcolumntype.
■TipIfyouplantousethecolumnasalinkingfieldinamaster-detailrelationship,ithelpsclarifyyourdesign intentifyouusethesamecolumnnamesinbothtables.
Youwillprobablyneveruseallthesecolumntypesinasinglelist.Infact,sometypesonlyappearin listsavailablethroughSharePointenterprisefeaturesorwhenusingspecificsitetemplates. Dependingontheselectedcolumntype,thesecondhalfofthecolumndefinitionpagerefreshesto displaypromptsforspecificpropertiesforthatcolumn.Thesepropertiesincludesettingstomakethe columnrequired,tolimitthemaximumlengthofstrings,toprovideminimumandmaximumvaluesfor numericfields,andmore. Whendefiningacolumn,thelastpropertydetermineswhetherthisfieldappearsonthedefaultview forthelist.
110
CHAPTER2■ SHAREPOINTLISTS
■NoteThedefaultviewisnotthesameastheformdisplayedbySharePointwhenyouaddanewitemtothelist. TheformthatSharePointcreatestoenternewlistitemsoreditexistingonesalwaysdisplaysallcolumnsdefined inthelist.Youcannoteditthisform.However,thedefaultviewforalistconsistsofauniquecombinationof columns,filters,sortorders,andothercharacteristicsusedtodisplayasubsetofthelistonapage.SharePoint optionallyaddscolumnstothedefaultviewforyouasyoudefinethecolumnsinyourlist.Youcancreate additionalviewsforasinglelistandyoucanchangewhichoneisthedefault.However,youcanonlydefineone viewperlistasthedefaultview.Ifyouaddnewcolumnsafterchangingwhichviewisthedefaultview,youmay endupwithnoviewthatincludesallcolumnsfromthelist.Ofcourse,youcanalwaysmodifyaviewdefinitionto addorremovecolumns.
AfteryouclickOKtoaddanewcolumn,SharePointreturnstotheListSettingspagefromwhere youcanaddmorecolumnsoreditexistingones.Ifyouhavefinisheddefiningthecolumnsforyourlist, youcanreturntothelistviewbyclickingonthelistnameintheheader. Figure2-29showsacustomlistafteraddingseveralcolumns,butbeforeitemshavebeenadded.At anytime,youcanrepeatthisprocesstoaddmorecolumns.Infact,youcanaddseveralthousand columnsinastandardlist.Afteryouaddmorethanacouplecolumns,thatlastsettingthataskswhether toaddthecolumntothedefaultviewbecomesmoreimportant.Forlistswithmanycolumns,youmay onlywanttodisplaythemostessentialonesinthedefaultview.Readerscanalwaysclicktheitem’stitle field(theonelinkedtotheeditmenu)todisplayapagewithalltheitem’scolumns,ortheycanswitchto adifferentviewthatdisplaysadifferentsubsetofcolumnsfromthelist.
■TipIfyouwanttousetheDatasheetviewtoedityourlistdata,youshouldhaveatleastonemasterviewthat includesallcolumnsandrowsinyourlist.Otherwise,youmayencounterproblemstryingtosaverowsthathave requiredcolumnsthattheviewdoesnotdisplay.
Figure2-29.Defaultlistview
111
CHAPTER2■SHAREPOINTLISTS
Limits and Performance ThelatestreleaseofSharePointdoesnothavelimitsonlistsandcolumnswithinlistsasrestrictiveasprior versions.MicrosoftsaysthatSharePointsupportslistsofasmanyasseveralmillionrecords.However, practicalconcernsrelatedtousabilitystillaffecthowyoudesignlists.Canyouimaginescrolling horizontallytoviewhundredsorthousandsofcolumns?Doyoureallyneedalistwithmorethan2,000 columns?Asaresult,SharePointusesathrottlingsettingtolimitthenumberofitemsausercanquery anddisplayatatime.Thedefaultlimitis5,000itemsformostusers,and20,000itemsforsuperusers. Thisisstillalargenumberofitemstoformatforasinglewebpage!Onepossiblewaytooverridethislimit viacodeusestheRequestThrottleOverridepropertyinSPQuery.Anotherpossibleworkaroundinvolves creatingtwoormoreliststhatyoulinkinamaster-detailrelationshiptoretrieveonlyasubsetofrecordsat atime. Forthosereaderswithawebbackground,talkofperformancelimitswhendisplayinglargelistsshould comeasnosurprise.Theperformanceofwebpageshasalwaysdegradedasthesizeofatabledisplayed onthepageincreased.WhileInternetconnectionshaveimproved,theseimprovementsonlypushfurther outthesizeofalistortablebeforeusersnoticeperformanceissues.That’sbecauseatleasttwofactors influencetheperformanceofawebpage.First,thesheerquantityofdataclearlyaffectsthetimeneeded todownloadtheentiredataset.However,theformattingofawebpagecanalsobeaverytime-intensive task.Thekeytoimprovingperformanceforlargetablesinvolvessplittingtablesintosmallerunits.Youcan accomplishthiswithasetofseparatelyfilteredviewsorwithaviewthatusespagingcapabilitytodisplay alimitednumberofitemsatatime.Usingthepropertiesofviews,youcaneasilylimitthenumberofitems displayedatatime.Furthermore,allviewsshouldonlyincludetheminimalnumberofcolumnsneededfor thecurrentdisplay. Finally,ifyoureallyneedlistswithalargenumberofitems,maybewhatyoureallyneedisatablebuiltin AccessorSQLandthendisplayedinSharePoint.Chapter6examineswaystouseAccesswithSharePoint. Afteryoufinishaddingthecolumnsyouneedintoyourlist,youcanbeginaddingitemsbyclicking NewItemfromtheNewgroupoftheListribbon.Regardlessofhowmanycolumnsyouincludeinthe defaultview,SharePointincludesallcolumnsfromthelistintheformthatitgenerateswhenaddinga newitem.Figure2-30showstheformcreatedfromtheCustomlisttomaintainacorporateServerList.
112
CHAPTER2■ SHAREPOINTLISTS
Figure2-30.ItementryformfortheServerList
■NoteThedescriptionforacolumnappearsbeneaththedataentrycontrolsonthegeneratedEditpage.
Afteryouseethenewitemdataformforthefirsttime,youmaydecidetochangethedatatype descriptionorthenameofoneormoreofthelistcolumnstohelpusersunderstandwhatyouwantthem toenter.Youmightevendecidetochangethedatatypeofoneormorecolumns.Thisexampleusesa choicelistintheformofadrop-downlisttoallowtheusertoselecttheservertype.Similarly,youmay notwanttoallowtheusertoentertheServerOperatingSystem(OS).Becausethelistofpossible operatingsystemschangesrelativelyinfrequently,youprefertohavetheuserselecttheOSfromalist thatyoucaneasilyupdatewithnewoperatingsystemnamesastheybecomeavailable.Let’sseehow youcanmodifythisServerOperatingSystemcolumntobeachoicetypecolumn.
ModifyingtheColumnTypesinYourList TomodifyacolumnofaSharePointlistthatyouoracolleaguecreated,beginbyopeningthelist.Let’s opentheServerListdescribedintheprevioussectiononcustomlists.SelectListSettingsfromtheList ribbon.
113
CHAPTER2■SHAREPOINTLISTS
ThisoptionopenstheListSettingspagefortheselectedlist,asshowninFigure2-31.Locatethe columnyouwanttomodifyintheColumnssectionofthispageandclickthecolumnname.SharePoint thendisplaysapagewithpossiblechangesyoucanmaketothecolumn.Formanycolumns,youcan changethecolumnnameaswellasitstype.
Figure2-31.Modifyingalist’ssettings
114
CHAPTER2■ SHAREPOINTLISTS
■NoteYoucannotchangethecolumntypeoftheTitlecolumn.However,asmentionedpreviously,youcan changeitsname.Inaddition,SharePointcannotconvertseveralcolumntypessuchasmultilinetextfieldsand datetimefieldstoothercolumntypes.Datatypesthatyoucanconverttoothertypesincludethesinglelineof text,number,currency,andyes/nocolumntypes.
Initially,youdefinedtheServerOScolumnusingthesinglelineoftextcolumntype.However,this couldresultinproblemsasusersincorrectlyspelltheirentries.Eveniftheydocorrectlyspelltheentry,a valueofMicrosoftWindows7wouldnotmatchanentryofWindows7orevenMSWindows7;thiscould causesortingandfilteringerrorswhentryingtoanalyzetheresults.Therefore,foracolumnwitha limitednumberofvaluesthatchangeonlyoccasionally,abetterdesignusesachoicetypecolumn. Fortunately,itiseasytochangethesinglelineoftextcolumntoachoicecolumnbyjustchangingthe columntype.Figure2-32showstheServerOScolumndefinitionafterconversiontoachoicetype column.Achoicetypebeginswithasetofpossibledrop-downvaluesthatyousupply.SharePointcan thendisplaythechoicetypeusingadrop-downlist,asetofradiobuttons,orasetofcheckboxes.
115
CHAPTER2■SHAREPOINTLISTS
Figure2-32.Modifyingacolumn’stype
116
CHAPTER2■ SHAREPOINTLISTS
Building Choice Lists for Columns Inmanylists,thereaderselectsvaluesforacolumnfromadrop-downlist.Youdefinedrop-downlists whenyoucreatethecolumndefinitionusingthechoicetype.Youthendisplaypossiblevaluesinoneof threeways:adrop-downmenu,asetofradiobuttons,oragroupofcheckboxes. Onlythecheckboxoptionallowstheusertoselectmultiplevaluesforthecolumn. Developersuseadrop-downlisttosavespacewhenthenumberofchoicesexceedsmorethanfouror five. Radiobuttonssavekeystrokesbydisplayingallvalueswithoutneedingtoopenadrop-downandthey forcetheusertoselectonlyasinglevalue. Noticealsothatthesettingsinthisfigureallowtheusertoenterherownvalueratherthanselecting onefromthelist.Usethisoptiononlyifyoudonotknowallpossiblevaluestheusermightenter.Also, knowthatmisspelledentriesmaycomplicatefiltering,sorting,andselectingthedatalater. Finally,thechoicetypesupportsadefaultvalue.Ifyoudonotwanttoforceadefaultvalue,leavethe textboxblank.Anadvantageofleavingthedefaultvalueblankisthatanyvaluereturnedbythelist absolutelyreflectsaselectionmadebytheuser. Ifthisisyouronlychange,clickSavetoupdatethelistdefinition.Whenyoureturntothelist andaddthenextitem,youwillseethenewdrop-downoptionfortheServerOScolumnshownin Figure2-33.
117
CHAPTER2■SHAREPOINTLISTS
Figure2-33.Updateditementryform Youcanmakechangestoothercolumnsinthesameway.Note,however,thatifyoumakechanges tovaluelimitssuchasmaximumlengths,theserestraintsonlyapplytonewdataaddedtothelistor whenyoueditandsaveanexistingitem.Itdoesnotautomaticallyapplytoallpreviousitems.
■CautionSharePointallowsyoutochangethecolumnsofalistatanytime.However,withasurveylist, changingthesurveyquestionsorpossibleanswersafterseveralrespondentshavetakenthesurveyinvalidatesthe initialresults.Thatreasoningshouldgovernchangesyouallowtothecolumnsofanylist.
Alookupcolumnisavariationofachoicecolumnwiththeprimarydifferencebeingwhereyou definethepossiblevaluesforthecolumn.Whileyoumustenterthepossiblevaluesintothedefinitionof achoicecolumn,abasiclookupcolumngetsitsvaluesfromanotherlist.Youmustcreatethislistbefore
118
CHAPTER2■ SHAREPOINTLISTS
addingthelookupcolumntothecurrentlist,butyoudonotneedtopopulateallofitsvaluesbefore definingthelookupcolumn.Thenyoudefinetherelationshipbetweenthelookupcolumnandthis othertablebydefininginthelookupcolumnpropertiesthetableandcolumnyouwanttouseasthe currentcolumn’spossiblevalues.Forexample,youcouldcreateanewtablenamedOperatingSystems andchangethedefaultTitlecolumnnametoOperatingSystem.IntheServerlist,youcandefinethe ServerOperatingSystemcolumntobealookupcolumntypethatusestheOperatingSystemcolumnof theOperatingSystemstabletodefineitspossiblevalues. However,supposeyouwanttousethelistofoperatingsystemnamesinmorethanjustthisonelist. YoucancreateaspecialtypeofcolumncalledaSiteColumn(seethesidebarofthesamename).
■TipItisalwaysagoodpracticetogiveusersalistofpossiblevaluesforanycolumnwherealimitednumberof possiblevaluesexist,especiallyifyoumustensurethespellingoftheenteredvalues.
Site Columns Asitecolumndiffersfromaregularlistcolumninthatyoucanaccessthecolumnfromanylistwithinthe siteoritssub-sites.Ifyoucreateasitecolumninthetop-levelsiteofthesitecollection,anylistwithinthe entiresitecollectioncanuseit.Ifyoucreateitinasub-site,onlythosesub-sitesbeneaththatsitecansee anduseit. Supposeyourorganizationusesmultipleoperatingsystemsonitscomputers.Ratherthancreatean operatingsystemcolumnineverylist,whichwouldmeanupdatingmultiplelistswhenanewOScameout, youcancreateasitecolumninyourtop-levelsitetodefineyouroperatingsystemsonetimeinoneplace. Thefollowingstepsshowhowtocreateanduseasitecolumn: 1.
Navigatetoyourtop-levelsite.
2.
ClickSiteSettingsfromtheSiteActionsbutton.
3.
OntheSiteSettingspage,clickSiteColumnsintheGalleriesoptiongroup.
4.
ScrollthroughtheSiteColumnGallerypagetoverifythatnoexistingsitecolumn wouldserveyourneedsorusesthesamenameyouwanttouse.Notethatthis pageorganizessitecolumnsintogroups.MakesureyouselectAllGroupsfrom theShowGroupdrop-down(shouldbethedefault)whenverifyingtheneedfora newcolumn.
5.
ClickCreatetostartdefininganewsitecolumn.
6.
Enteranameforthenewsitecolumnandthenchooseatype.Callyourcolumn OperatingSystem.
7.
ChoosethecolumntypeChoice.
119
CHAPTER2■SHAREPOINTLISTS
8.
Next,associatethenewsitecolumnwithanexistinggroupordefineanewgroup. Ifyouhavenotyetcreatedagroupforyoursitecolumns,youmaywantto consideragroupnameconsistingofyourinitialsorcompanyname.
9.
IntheAdditionalColumnSettingssection,beginbysupplyingtheoptional Description.RememberthattheDescriptionappearsbydefaultbeneaththefield inthedefaulteditformSharePointcreatesforthelist.
10. Next,selectYesafterthepromptRequirethatthiscolumncontains informationifyouwanttorequiretheusertorespondtothisfield. 11. AlthoughSharePointshowsyouasettingtoEnforceuniquevalues,thissetting maynotmakeasmuchsenseforachoicetypefield,soselectNoforthisexample. 12. Inthenexttextbox,entereachofthechoicevalues. 13. TheDisplaychoicesusingsettingletsyouselecthowtodisplaythechoices.You canchoosefromaDrop-DownMenu,RadioButtons,andCheckboxes.Notethat onlytheCheckboxoptionallowsyoutoselectmultipleselections.Forthis example,selectDrop-Down Menu. 14. Next,decidewhetheruserscanentertheirownvaluesbyclickingYesforthe settingAllow‘Fill-in’choices.SelectingNorestrictstheusertothechoices previouslydefined. 15. Finally,chooseadefaultvaluefromtheavailablechoices.Clearthetextboxto createthecolumnwithoutadefaultvalue. 16. ClickOKtocreatethesitecolumndefinition. 17. Createanewlist(ormodifyanexistingone)inyoursite.Forthisexample,modify theServerlist. 18. SelectListSettingsfromtheListribbon. 19. IntheColumnssectionoftheListSettingspage,clickAddfromexistingsite columns.(IfyoupreviouslyaddedtheOperatingSystemcolumntothislist,you needtofirstopenthecolumnpropertiessoyoucanclickthedeletebuttonto removethiscolumnbeforeaddingthenewcolumnfromtheexistingsite columns.) 20. FindthenewsitecolumninthescrollablelistoftheAvailablesitecolumns sectionandclicktheAddbutton.Ifyouhavealargenumberofsitecolumns,filter thelistbyselectingthesitecolumngroupusingthedrop-downlistatthetopof thispage.Thisisanothergoodreasonforstoringyoursitecolumnsinagroup namedwithyourinitialsorcompanyname. 21. ClickOKtoaddthesitecolumntothelist. 22. Youcaneditthepropertiesofthesitecolumnsuchasthename,description,etc.
120
CHAPTER2■ SHAREPOINTLISTS
NowclickbackonthelistnamefoundintheheaderatthetopoftheListSettingspage.Addanewitem tothelisttoseeyoursitecolumnappearwhenyouenter,andedititeminformation.Ifyouneedtousethe samecolumndefinitioninanotherlist,simplyaddthesitecolumntocreateaconsistentdefinition. Thebestfeatureofasitecolumnisthis:Ifyouaddanewoperatingsystemtoyourcompany,andyouwill, youneedonlygobacktothesitecolumndefinitionandupdatethechoicelistinoneplacetoincludethe newOS.Immediatelyinalltheliststhatusethissitecolumndefinition,youwillseethenewoperating systemwithouthavingtotouchanyoftheotherlistdefinitions. AnothertypeofcustomlistyoucanbuildinSharePointbeginsfromanExcelSpreadsheet.You canfindtheImportSpreadsheetintheBlankandCustomcategoryoftheListtypeontheCreate dialogfromtheAllSiteContentpage.IwillexploretheuseofExcelwithSharePointinmoredepthin Chapter7.
■TipEvenifyoudonotcreatetheSharePointlistbyimportinganentireExcelspreadsheet,youcancopyand pasteselectedrowsorcolumnsfromthespreadsheetintoaSharePointlistifyoufirstdisplayyourSharePointlist inDatasheetview.
UsingAlertstoNotifyYouofListChanges Doyouwanttoknowwhensomeonemakeschangesoradditionstoalist,butyoudreadhavingto spendtimereviewingeachlisteveryday?WhatifSharePointcouldnotifyyouofchangesoradditions madetothelist?Well,itcan.WiththeAlertMefeatureoflistsandlibraries,youcanhaveSharePoint sendyouane-mailwheneversomeonemodifiesoraddsanitemtoanylist.
■TipIfyousetanalertwhenyoucreateanewlist,youcanmonitorallchangestoit.
Tosetupanalertforalist,firstopenthelist.Withthelistdisplayed,clickonthetabListandthen selectAlertMefromtheShare&Trackgroupoftheribbon,asshowninFigure2-34.
121
CHAPTER2■SHAREPOINTLISTS
Figure2-34.SelectingAlertMetocreateanalert Youmustnameeachalertyoucreate.Bydefault,thealertnameincludesjustthenameofthelist, butsinceyoucancreatemorethanonealertforanygivenlist,youmaywanttoexpandthisname.For example,tomakeiteasiertoidentifyyouralerts,youmightconsidercombiningthenameofthelistwith yourinitialsandperhapsanindicationofthetypeofalertsuchasAddorModify.Infact,asyoucansee fromFigure2-35,therearemanyoptionsavailablewhenyoudefinealistandanyoftheseoptionsmight beincludedinthetitletohelpdifferentiateonealertfromanother.
■TipIfyoudon’tseetheAlertMeoptionshowninFigure2-34,makesurethattheFarmAdministratorhas turnedonalertsattheWebApplicationlevel.(AlertscanbefoundbyselectingManagewebapplicationsinthe WebApplicationsgroupoftheApplicationManagementpage.SelecttheWebApplicationandthenchoose GeneralSettingsfromtheGeneralSettingscommandintheManagegroupoftheWebApplicationsribbon.) Also,makesurethattheaccountyouhaveloggedintoSharePointwithhasane-mailaddressassociatedwithit. Finally,haveyourSharePointadministratorconfirmthatoutgoingmailhasbeenconfigured.Youcanfindthese settingsinCentralAdministrator’sSystemSettings➤E-MailandTextMessages➤Configureoutgoingemailsettings.
122
CHAPTER2■ SHAREPOINTLISTS
Figure2-35.Settingthepropertiesofthealert
123
CHAPTER2■SHAREPOINTLISTS
■TipIfyouareasiteadministratororowner,youcanreviewthealertsbyuserbygoingtoSiteActions➤Site Settings.ThenselectUserAlertsfromtheSiteAdministrationgroup.Finally,selecttheuserfromtheDisplay alertsfordrop-downlistandclicktheUpdatebutton.Whenthepagerefreshes,youseealltheselecteduser’s alerts.YoucanselecteachalertbyclickingthecheckboxbeforethealertnameandthenclickDeleteSelected Alertsfromthetopofthepage.
Whendefininganalert,youmustspecifythechangetypeyouwanttomonitor.Perhapsyouonly wanttoknowwhensomeoneaddsanitem,deletesanitem,ormodifiesitems.Unfortunately,eachof thesechangetypesisseparateandyoucanonlychooseone.Therefore,youronlyoptionsaretoeither createseparatealertsforeachnotificationtypeorselectAllChangesintheChangeTypesection. Youcanfurtherfine-tuneanalerttoe-mailyouonlywhensomeoneelsechangesaniteminthelist. Afterall,doyoureallyneedanotificationwhenyoumakethechangeyourself?Similarly,youmayonly wantanotificationwhensomeonechangesanitemthatyoucreatedoranitemthatyouwerethelast persontomodify.Ifyouhaveoverallresponsibilityforthelist,youmayprefernotificationofany changesmadebyanyonetoanyiteminthelist.InthesectionSendAlertsforTheseChangesyoucan seethatthereareninedifferentcriteriayoucanapplyastowhenyoushouldreceiveanalert.An interestingoptionistoreceiveanalertonlywhenanitemappearswithinaspecificviewratherthanall oftheitemswithinthelist. Finally,youcandecidewhenyouwantSharePointtosendyouralerts.Doyoureallyneedtoknow aboutchangesimmediately?Perhapsyouonlyneedadailysummaryofalerts.Ifso,youcanevenspecify thetimethatyouwantSharePointtosendthealerts.Ifyouonlyhaveaninterestinmonitoringthelist, perhapsaonce-a-weeke-mailwillsatisfyyou.Inthiscase,youcandefineboththedayandthetimeto receiveyourweeklyalerts.
■TipWanttogetridofyouralertsbutdon’tknowwhereyoucreatedthem?Clickonyournameintheupperright ofanypagewithinyoursiteandselecttheoptionMySettings.Inthemenubaracrossthetopofthispage,select MyAlerts.Thesubsequentpageshowsallyouralertsforthecurrentsite.Youcanselectanyorallofthealertsby clickingthecheckboxbeforeeachalertandthenselecttheDeleteSelectedAlertsoption.
Thatisallyouneeddo,otherthantoclickOK,tostartreceivingalertswhendatachangesinyour lists.
■TipThereareseveralthird-partywebpartsavailableontheInternetthatenhancethebuilt-incapabilitiesof SharePoint’salertmodel.YourSharePointAdministratormayuseoneofthesetoolstomanagealertsacrossall sites.
124
CHAPTER2■ SHAREPOINTLISTS
YoucanalsomanageyouralertsfromtheManageMyAlertsoptionintheAlertMedrop-downin theShare&TrackgroupoftheListribbon.
CreatingRSSFeedsforYourList RSSfeedsprovideanotherwaytotrackadditionstoalistorlibrary.RSS,whichstandsforReallySimple Syndication,hasgonethoughseveralchangessincetheideaofcontentsyndicationacrosstheInternet gotitsstart.Webdesignerswantedawaytopublishfrequentlyupdatedinformation,suchasnews,that peoplecouldsubscribetoandreceiveautomaticallywithoutforcingthemtoreturntotheirsite. Originally,toreadanRSSfeed,youneededtodownloadorpurchaseaprogramthatcouldreceivethe RSSfeedsanddisplaytheircontentasreadabletext.Today,youcanuseIE8.0orMicrosoftOffice2010 orlaterversionstosubscribeandreadRSSfeeds.Inaddition,youcanfinddozensoffreewareprograms thatcanreadRSSfeeds. SettingupRSSfeedsinSharePointrequiresyoutoopenyourlist.ThenclickListSettingsinthe SettingsgroupoftheListribbon.Figure2-36showsthesettingspagefortheUpcomingEventslist. ClickRSSSettingsundertheCommunicationsareatodefineyourRSSfeedsettings.
Figure2-36.StartingalistRSSfeed
125
CHAPTER2■SHAREPOINTLISTS
WhendefiningoptionsfortheRSSfeed,youbeginwithasimplepromptaskingwhetheryouwantto allowRSSforthecurrentlist.Ofcourse,tocreateafeed,youneedtoselectYes.UnderChannel Information,youalsoneedtodefinefeedpropertiessuchasthetitle,thedescription,andanoptional imageURL.Noticeyoualsohavetheoptionoflimitingmultilinetextfieldsto256characters.Thisoption trimslongfeedsthatmayconsistofentirenewsstoriestojustenoughtexttoenticetheviewertoclick theitem’stitletoreadtheentirestory.Asyouwillseeinamoment,thetitleofthelistitemservesasa hyperlinktoopenthedetailsoftheitem. IntheColumnssection,youdecidewhichcolumnstoincludeinthefeed.TheRSSfeedinFigure 2-37includesatextcolumnnamedBodyalongwiththeexpirationdatefortheitem.However,RSSfeeds canincludeanyorallcolumnsfromalist,includingnotonlyothercustomcolumnsyoumayhave added,butalsocolumnsthatSharePointprovideslikeTitle,ModifiedBy,andModified. Next,youcandecidehowmanyitemstoincludeinthefeedandthemaximumnumberofdaysto includeaniteminafeed.Bothofthesesettingshelpkeepyourfeedfreshbyconstantlydisplayingonly thenewestchangestoyourlist.Becarefulwhensettingtheseoptions;youdon’twanttooverwhelmthe readerwithtoomanyitems.Finally,clickOKonthesettingsscreentoenableyourRSSfeed.
126
CHAPTER2■ SHAREPOINTLISTS
Figure2-37.DefiningsettingsfortheRSSfeed
127
CHAPTER2■SHAREPOINTLISTS
IfyouuseIE7.0orbetter,youshouldseetheRSSiconinyourbrowser’smenubarturnfromgrayto orangethenexttimeyoudisplaythislist.Thisbuttonremainsinactiveandgraywhenyouviewliststhat donotsupportanRSSfeed.However,whenyounavigatetoalistorpagethatsupportsanRSSfeed,this buttonturnsorange. ClicktheRSSfeedbuttonwithinIEtodisplayaviewoftheRSSfeed,asshowninFigure2-38.With SharePointlists,thisviewdisplaysthesitenamealongwiththelistnameasthetitle.Itthentellsyouthat youcansubscribetothefeed.Subscribingautomaticallydownloadsinformationfromthefeedtoyour computer,whereyoucandisplayitinIEoraddittoanyotherprogramthatsupportsanRSSreader. Thesamplefeedviewalsoshowsthecurrentcontentsofthefeed.Inaboxintheupperrightofthe screen,thefeeddisplaysacountofthenumberofitemscurrentlyinthefeed.Youcanalsosortthefeed itemsbydate,title,orauthorbyclickingthelinksundertheSortbysection.Notethesmallbluearrowto theleftoftheselectedsortfield.Ifyouclickthefieldmultipletimes,thisarrowtogglesfrompointingup topointingdownandbackagain.Thisindicatesthesortdirectionofthefeeditemsbasedonthe selectedfield.
■NoteIfRSSfeedsstilldonotenable,youmaywanttotalktoyourSharePointsystemadministratortoseeifshe hasenabledRSSSettingsfortheWebApplicationyouareusing.YoumayalsoneedtocheckyourIEsettingsto seethatthefollowingoptionsaresetinTools➤Internetoptions➤Content➤FeedsandWebSlices➤ Settings.
128
CHAPTER2■ SHAREPOINTLISTS
Figure2-38.Subscribingtoafeed WhenausersubscribestoafeedusingIE,adialogboxpromptshimforthenamehewantstouse onhiscomputertoidentifythefeed.Thedefaultnameincludesthesitenameandthelistname separatedwithacolon,asshowninFigure2-39.However,theusercanprovideanynameforthefeed. Next,defineafolderinwhichtostorethefeed.JustlikefavoritesinIE,youcancreateahierarchyof folderstoorganizeyourfeeds.
129
CHAPTER2■SHAREPOINTLISTS
Figure2-39.Namingthefeed,andplacingitinaneworexisingfolder. Afteryousubscribetothefeed,youcanopenitbyclickingtheFavoritesCenteroptioninIE.You see,inadditiontoyourotherbookmarkedURLsstoredunderFavorites,atabnamedFeeds.Clickthis tabtoseethefoldersandfeedswithinthem.Figure2-40showstwofoldersunderFeeds:Microsoft FeedsandSharePoint Book Feeds.OpeningtheSharePoint Book FeedsfolderdisplaysanRSSfeeds addedfromTaskslistoftheMicMinsite.
Figure2-40.SelectingthefeedfromwithinIE’sFavoritesCentertoviewthefeedcontents
■NoteARefreshbuttonappearstotherightofeachfeed.TheRefreshbuttonconsistsoftwogreenarrows pointingupanddown,asshowninFigure2-39.ClickthisbuttontorefreshyourRSSwiththelatestfeedsfromthe RSSsite.
DefiningViewsforYourList Perhapsyoudonotlikeyourlist’sdefaultview.Ontheotherhand,maybeyoujustwanttocreate differentviewsofthesamelisttouseondifferentpageswithinthesiteorfordifferentusers.Forlistslike
130
CHAPTER2■ SHAREPOINTLISTS
taskslists,projecttaskslists,andissuetrackinglists,youmightwantmultipleviewsofthelistdatato examinetasksorissuesbyperson,project,status,orothercriteria. Toworkwithviews,opentheListribbonandlookattheoptionsintheCustomViewsgroup,as showninFigure2-41,fortheUpcomingEventslist.Thedrop-downinthisgroupdisplaysallcurrently definedviewsforthelist.Youcanswitchfromoneviewtoanotherbyclickingtheoneyouwant.While displayinganyview,youcanclickModifythisViewtomakechangestothecurrentview.Ifnoneofthe existingviewsmeetsyourneeds,youcancreateanewviewbyclickingtheCreateViewoptiononthe leftsideofthisoptiongroup.
Figure2-41.UsingtheViewdrop-downtomanageyourviews Alternatively,youcangothroughtheListSettingsoptionoftheSettingsgroupintheListribbonto displaythepageshowninFigure2-42.ThisoptiondisplaystheListSettingspageforthecurrentlist alongwithallthelistoptions.Scrolltothebottomofthispagetofindthedefinedviews.Noticethat SharePointdefinesoneviewasthedefaultview.Youcanmodifyanyviewlistedherebyclickingits name,oryoucancreateanewviewbyclickingthelinkCreateView.
■TipYoucandeleteanyview,exceptthedefaultview,byclickingittodisplayitsEditViewpageandthen clickingtheDeletebutton.However,whatifyoureallywanttodeletethedefaultview?Youmustfirstselectoneof theotherviews,andintheEditViewpagepromoteittobethedefaultview.Thenreturntotheoriginalview, whichSharePointnolongeridentifiesasthedefault,openitsEditViewpage,anddeleteit.Keepinmindthata listmusthaveatleastoneview,andthatoneviewmustserveasthedefaultviewuntilyoupromoteanotherview tobethenewdefaultview.
131
CHAPTER2■SHAREPOINTLISTS
Figure2-42.TheListSettingspageletsyoudefinecolumnsandviews. Whencreatinganewview,SharePointfirstdisplaysascreenthatletsyouselecttheviewformat. SharePointgroupsviewformatsintotwostartingstyles,asseeninFigure2-43.Thefirststartingstylelets youbuildaviewfromscratchbyselectingyourcolumns,sortorder,andfiltercriteriausingoneoffive predefinedformats:
132
•
StandardView:Thisviewdisplayslistitemsinatraditionalstylelist.
•
DatasheetView:Thisviewdisplayslistitemsinaneditablespreadsheetformat.
•
CalendarView:Thisviewdisplayslistitemsindaily,weekly,ormonthlycalendar formandisusefulifyouorganizeyourdatabydate.
•
GanttView:ThisviewdisplayslistitemsinaGanttchart,andisusefulifyourdata representstasksorprojectsthathavestartdates,completiondates,andpercent completions.
CHAPTER2■ SHAREPOINTLISTS
•
AccessView:ThisviewworkswithMicrosoftOfficeAccessontheviewer’s computertoshowlistitemsinformsorreportsbasedonthecolumnsfrom thislist.
Figure2-43.Creatingtheviewnameandcolumns Thesecondstartingstyleletsyouselectoneoftheexistingviewsfromthecurrentlisttouseasa startingpointforanewview.Thisoptionsavesyoutimeifyouneedaseriesofsimilarviewsthatmay differbyonlyafewcolumns,sortorder,orfiltercriteria.Whenstartingfromanexistingview,youdonot havetodefineeverythingfromscratch;youjustdefineorresetthosepropertiesofthenewviewthatare different. IfyoustartfromanewStandardview,SharePointdisplaysascreenliketheoneshowninFigure 2-44whenyoucreateoreditaview.Actually,thisfigureonlyshowsthetoptwosectionsoftheview definition.Inthetopsection,youcanentertheviewname.Whatifyoudecidelaterthatyoudonotlike thenameyoupreviouslygavetheview?Don’tworry.Generally,youcanchangeaviewnameatanytime withnoadverseeffects.Infact,SharePointautomaticallyupdatesmostreferencestotheviewname automaticallywhenyouchangeit.ThesameappliesifyouchangetheURL,aslongasyoustoretheURL initsownfieldsuchasintheLinkslist.However,ifyouembedtheURLinothercontent,SharePoint maymissit.Asarule,trytominimizechangestoURLsafteryoustartincludingreferencestothemfrom otherpartsofyoursite.
133
CHAPTER2■SHAREPOINTLISTS
Figure2-44.Creatingtheviewnameandcolumns
134
CHAPTER2■ SHAREPOINTLISTS
If,ratherthanaddingaview,youdecidetoeditthedefaultview,thistopsectionremindsyouthat youcannotdeletethecurrentviewduetotheabsenceofaDeletebutton.Ifyouhadstartedfromanondefaultview,aDeletebuttonwouldappeartotheimmediateleftoftheOKbutton.Asmentionedina previoustip,ifyouhavemorethanoneview,youcansetanyoneofthemasthedefaultviewanddelete anyoftherest. TheColumnssectionshowstheavailablecolumnsinthelist.Thecheckboxtotheleftofthecolumn nameindicateswhethertoincludethecolumninthecurrentview.Toaddorremoveacolumnfromthe view,togglethecheckbox.Thedrop-downboxtotherightwithanumberinitdefinestheorderofthe fieldsfromlefttoright.Tochangetheorderofthecolumns,changethenumberinthedrop-downofthe columnyouwanttomove,selectingthenumericvalueofitsnewposition.Forexample,tomovethe columnAttachmentstothefourthposition,openitsdrop-downlistandselectthenumber4.Allother columnspreviouslynumberedfrom2through4automaticallymovetopositions1through3,making roomfortherepositionedAttachmentsasthe4thcolumn.
SortingandFilteringLists ThethirdsectionoftheEditViewpageletsyoudefinethesortorderfortheitemsintheview.Youcan sortbynomorethantwocolumns.However,youcanindependentlysorteachcolumninascendingor descendingorder.Figure2-45showsaviewsortedfirstbythefieldExpiresinascendingorder.When morethanoneitemhasthesameexpirationdate,itsortsbyTitleinascendingorder.
Figure2-45.Sortingyourlistonuptotwocolumns Asyourlistgrows,youmaywanttodefineafilterforalisttofocusondifferentitemgroups.For example,youcouldcreateacustomviewofupcomingeventsthatautomaticallyhidesitemswith expirationdatespriortotodaybyaddingafilterthatcomparesthecolumnExpirestothecurrentdateas showninFigure2-46.
135
CHAPTER2■SHAREPOINTLISTS
Figure2-46.Definingafilterforyourlist Thereareothersectionsonthispagethatdefineaviewfurther.Forexample,theGroupBysection allowsyoutogroupitemsinthelistusinguptotwocolumns.Theadvantageofusinggroupsovermerely sortingyouritemsisthatyoucanexpandandcollapsegroupstoletusersseejustaportionofthelist withoutneedingafilteredviewforeachgroup.
■NoteGroupByworksbestoncolumnsthathaveonlyalimitednumberofvalues,suchaschoicefields.
TheTotalssectionletsyouaddtotalsonyourlist.Forexample,ifyourUpcomingEventslist includesaDepartmentcolumntoassociateeventswiththeirhostingdepartment,youcouldcountthe numberofeventsbydepartment.Iftheeventshadacolumnwiththeassociatedcostoftheevent,you couldsumthatcolumntocalculatethecostofeventsbydepartment. IntheStylesection,youcanselectfromapredefinedsetofstylesforyourlist.Forexample,the Shadedstyledisplaysitemswithanalternatingbackgroundshadingtomakethelistmorereadable. Becauselistscanincludefolders,theFoldersgroupletsyoudecidewhethertonavigatethrough foldersortoviewallitemsasiftherewerenofolders.Ifyoumustusefolders,youmaywanttocreate viewsthatignorethefolders. Asyourlistgrows,youmaydiscoverthatitsuddenlystopsdisplayingsomeofitsitems.Youmay findthesolutiontothatprobleminthelistsettingItemLimit.First,Iwouldnotrecommendthatyoutry todisplayalistwiththousandsofitemsasasinglescreen.Evenifperformancedoesnotdegrade significantly,youruserswillnotwanttoscrollthroughalistthatlarge.Rather,useItemLimitalongwith theoptiontodisplayitemsinbatches.Forexample,ifyourlisthas345itemsandyouspecifyanitem limitof100,yourlistbeginsbydisplayingthefirst100items.Youcanthenselectthenextpageofthelist todisplaythesecondsetof100items.Controlstonavigatebetweenpagesofyourlistappearatthe
136
CHAPTER2■ SHAREPOINTLISTS
bottomofthelist.Inthisway,youruserscanpagethroughallitemsinthelist,100itemsatatime,until theyreachtheitemtheywanttosee. Finally,youcandefineviewsformobiledevices.Theseoftenincludefewercolumnsanditemsthan theirPCscreencousinsdo.TheinterestingthingisthatSharePointreformatsthecontentautomatically tofitthesmallerscreen.
■TipConsiderusingfilteredviewstolimitthenumberofitemsinalist’sview.Thisimprovesuseracceptance. YoucouldalsousetheGroupBy(collapsed)optiontolimitthenumberofitemsdisplayed,yeteasilyallowusersto expandthegroupsforwhichtheywanttoseethedetails.
■TipWhensortingorfilteringalargelist,indexthecolumnusedbythefilter.Youcancreateindexedcolumnsby clickingtheIndexedcolumnshyperlinkatthebottomoftheColumnssectionofthelist’sCustomizepage.
InlineEditing InlineeditingofyourlistdataisanewfeaturetoSharePoint2010.Itallowsyoutoeditthelistdata,even whenitisdisplayedonapage,withoutfirstopeningthelistfromViewAllSiteContent.Toturnthis featureon,youmustselecttheAllowInlineEditingcheckboxintheInlineEditingsectionoftheview properties,asshowninFigure2-47.
Figure2-47.TurnonInlineEditingforalist Nowwhenyouviewthelist,andpositionyourmouseoveranyrow,anediticon(pagewithapencil) appearsatthebeginningofthelist.Ifyouclickthisicon,allthecolumnsinthelistdisplayaseditable fields.Inaddition,theoriginaliconchangestoapairoficons.Thefirsticonshowsadiskrepresentingan optiontosavethechangestotheitemwhilethesecondiconshowsaredsquarewithawhiteX representinganoptiontocancelanychangesmadetotheitem.Figure2-48showsthisfunctionalityina progressionofscreenshots.
137
CHAPTER2■SHAREPOINTLISTS
Figure2-48.ExampleofInlineEditing
ValidationSettings SharePoint2010introducesvalidationsettingstolists.Therearetwotypesofvalidationsettings.One settingforthelistitemallowsyoutocomparevaluesfrommorethanonecolumn.Asecondsettingfor columnvalidationappliesavalidationcheckagainstthecurrentcolumnonly.
ItemValidation Avalidationexpressionatthelistlevelisaformulathatcanincludeanyofthecolumnsinthelistand resolvesaseitherTrueorFalse.Inorderforanitemtobesuccessfullyaddedormodifiedinthelist,this expressionmustresolvetoTrue. Forexample,returningtoyourTasklist,averyimportantvalidationmightbethattheDueDatefor thetaskcannotoccurbeforetheStartDate.Sincethisvalidationinvolvesmorethanonecolumninthe list,youcannotvalidateeitherfieldindividuallyatthecolumnlevel.Rather,youcanonlyvalidateboth fieldstogetherasyouattempttosavethenewormodifieditem.Tocreateanitemlevelvalidation,follow thesesteps:
138
1.
Navigatetothelistwhereyouwanttoaddavalidation(suchastheTaskslist).
2.
FromtheListribbon,selectListSettings.
CHAPTER2■ SHAREPOINTLISTS
3.
IntheListSettingspage,selectValidationSettingsfromtheGeneral Settingsgroup.
4.
EnteraformulathatevaluatestoTrueorFalse(seeFigure2-49foran example).
5.
EnteramessagethatSharePointcandisplaytotheuserwhenthevalidation fails(seeFigure2-50).
6.
Finally,clickSavetosetyourvalidation.
Figure2-49.Creatinganitemlevelvalidation
139
CHAPTER2■SHAREPOINTLISTS
Figure2-50.Errordisplayedfromanitemlevelvalidation
ColumnValidation SharePoint2007hadsomesimplecolumnvalidationsbuiltintoseveralofthecolumntypes.Themost commonvalidationwastheRequiredvalidation.However,numericvaluesalsosupportedaRange validation. SharePoint2010expandsonthosevalidationoptionsallowingyoutodefineaformulatovalidate thecolumn.Notethatthisformulacannotreferenceothercolumns. Aswiththeitemlevelvalidation,theformulaforthecolumnvalidationdefinesaBooleanexpression thatreturnsaTrueorFalsevalue.Inaddition,youcanspecifyausermessagewhenthevalidationfails tellingtheuserwhySharePointrejectedtheiritemupdateoraddition.
140
CHAPTER2■ SHAREPOINTLISTS
UsingtheTaskslistonemoretime,let’saddacolumnvalidationontheStartDatetocheckthat startdatesfallonorafterthecurrentdate.(OpentheTasklistandgototheListSettingspage.Then clickontheStartDatecolumnnameintheColumnssectionofthepagetoeditthecolumnproperties.) Figure2-51showstherequiredcolumnvalidationexpression,andFigure2-52showstheresultof attemptingtoenteraninvaliddate.
Figure2-51.Creatingacolumn-levelvalidation
141
CHAPTER2■SHAREPOINTLISTS
Figure2-52.Errordisplayedfromacolumn-levelvalidationforfieldStartDate
■NoteAtthetimeofthiswriting,documentationforhowtodefinevalidationexpressionshasnotbeenreleased, butmytestingindicatesthatthevalidationissimilartovalidationinExcelcells.
ReferentialIntegrityinListLookups InSharePoint2007collaboration,whenyoucreatedalookuprelationbetweenlists,therewasno referentialintegritysupport.Inotherwords,assoonasyouaddedalookupvaluetoaniteminthe
142
CHAPTER2■ SHAREPOINTLISTS
currentlistfromthelookuptable,someonecouldgointothelookuplistandchangeorevenremovethe lookupvalue.Furthermore,thelookupfieldwaslimitedtotheidentifiercolumn. InSharePoint2010collaboration,youcanincludeadditionalcolumnsfromthelookuplistinthe currentlist.Perhapsmoreimportantly,youcanenforcereferentialintegritybetweenthetwolistseither byrestrictingdeletionsfromthelookuptableorbycascadingdeletesfromthelookuptabletothe currenttable. Toillustratethesenewfeatures,supposeyouhavetwotables,anOrderstableandanOrderDetails table.Todefinearelationshipbetweenthesetwotables,firstcreateanOrderstable.Iamnotgoing throughthespecificsofhowtocreatetheOrderstablehere,butyoushouldatleastbeawarethatthe columnintheOrderstableusedtolinkthetablestogetherwillbeOrderID.TheOrderstablemustalso haveatleastafewadditionalfieldsthatyoucandisplaywithyourorderdetails,suchasthecustomer’s nameandtheorderdate.However,youcanhavemanyadditionalcolumnsinyourOrderstable. TheOrderDetailstablecontainscolumnsthatdefinetheindividualitemsordered,includingthe item’sname,cost,andquantityordered.However,mostimportantly,theorderdetailsmusthavea columnwiththeorderidoftheparentorder.Figure2-53showshowtodefinethiscolumnasalookup type.NoticethatitdefinesthelinktotheOrderstableandspecificallytotheOrderIDfield.However, unlikeSharePoint2007,whichendsthere,inSharePoint2010,youcanalsoselectothercolumnsfrom thelookuptablethatyouwanttodisplaywhenyoudisplaytheOrderDetails.Inthisfigure,Ihave selectedthecolumnsOrder_DateandCustomer_Name. Inthenextsection,youcandeterminewhetheryouwanttoenforcereferentialintegritybetween thetwolists.Ifyouselectthisoption,youhavetwodifferentenforcementmodes.Thefirstmodeallows youtocascadedeletesfromthelookuptabledownthroughalltherecordsthatusethelookupvalue.For thisexample,itwouldbetheequivalentofsayingthat,whenyoudeletetheorderrecord,youalsowant todeletealloftheorderdetailrecordsassociatedwiththatorder. Thesecondmoderestrictsthedeletionofrecordsfromthelookuptableifyouusethelookupvalue inanyotherrelatedtable.Forthisexample,itwouldbetheequivalentofsayingthatyoucannotdelete anorderrecordifithasorderdetailrecords.Ofcourse,youcoulddeletealltheassociateddetailrecords first.Thenyoucoulddeletetheorderrecordinthelookuptablesinceitnolongerhasanyrelatedorder detailrecords.
143
CHAPTER2■SHAREPOINTLISTS
Figure2-53.DefiningtheLookupUpOrderIDfieldintheOrderDetailstable AfterdefiningtherestofthecolumnsfortheOrderDetailstable,Figure2-54showswhatyousee whenyouaddadetailrecord.Ofcourse,youmustaddtheOrderrecordfirst.However,whenyouadd anorderdetailrecord,youcanselectthecorrespondingOrderIDfromthedrop-downlistthatconsists oftheOrderIDsfromtheOrderstable.
144
CHAPTER2■ SHAREPOINTLISTS
Figure2-54.UsingLookupFieldtoidentifytheOrderID Figure2-54onlyshowsfourfieldsintheitemeditformthatSharePointgenerates.However,the OrderDetailtablealsohasacolumnnamedOrder_Extended_Price.Sincethiscolumnhasbeen definedasacalculatedcolumn,itdoesnotappearwhenaddingoreditingdata.Theformulathatdefines thiscolumnis: =Order_Quantity*Order_Unit_Price
145
CHAPTER2■SHAREPOINTLISTS
Figure2-55.ViewofOrderDetailsitemwithcalculatedOrder_Unit_Pricefield Figure2-56showstheOrderDetailstableafteraddingseveralrecords.Noticethatthisview containsthecolumnOrderID:Order_DateandOrderID:Customer_Namewhichitpullsfromthe OrderstablefromthesamerecordasthematchingOrderIDvalue.Ofcourse,youcanoptionally renamethecolumnstomakethemmoreuserfriendlybyreplacingunderscoreswithblanksorremoving theOrderID:references.NotethattheExtended_Pricecolumnnowappearsandshowstheproductof theOrder_QuantityandtheOrder_Unit_Price.
Figure2-56.OriginalOrderDetailstablewithOrderID10005 IfyounowreturntotheOrderstableanddeletearecord(Figure2-57),SharePointautomatically deletesthecorrespondingOrderDetailrecordsrelatedtotheOrder(Figure2-59).However,firstit promptstheuserwiththewarningshowninFigure2-58thatwarnstheuserthatitwilldeleterelated recordsandplacethemintheRecycleBin.
146
CHAPTER2■ SHAREPOINTLISTS
ThefactthatthedeletedrecordsareplacedintheRecycleBinmeansthatyouhave30daysto changeyourmind,selecttheOrderrecordfromtheRecycleBin,andrestorenotonlytheOrderrecord, butalltheassociatedOrderDetailrecords.
Figure2-57.SelectinganOrderitemtodelete
Figure2-58.WarningthatdeletedordersareputintheRecycleBin.
Figure2-59.UpdatedOrderDetailsshowingOrderID10005hasbeendeleted.
147
CHAPTER2■SHAREPOINTLISTS
However,whatifinsteadofselectingCascadeDeleteasyourreferentialintegrityrelationship,you chooseRestrictDelete,asshowninFigure2-60?
Figure2-60.SelectRestrictedDeleteasthereferentialintegrityenforcement. Again,ifyoureturntotheOrderslistandattempttodeleteanorderthathasoneormoreOrder Detailitems,SharePointdisplaysthemessageshowninFigure2-61.Atfirst,thismightseemlike SharePointwillallowyoutodeletetheorderitemeventhroughyoudefinedtherestrictdelete relationship.
Figure2-61.Errordisplayedwhenattemptingtodeleteaorder However,ifyouclicktheOKbuttononthisfirstdialog,aseconddialogappearswiththetitleError. InthebodyofthedialogshowninFigure2-62,themessagetellsyouthatitcannotdeletetheselected itemfromtheOrderslistbecausetherearerelateditemsintheOrder_Detailslist.
Figure2-62.RestrictingreferentialbehaviorstopsthedeleteoftheOrder.
148
CHAPTER2■ SHAREPOINTLISTS
Thus,SharePointnowenforcesreferentialintegritybetweentwolinkedtablesusingoneoftwo relationshipmodes.Ofcourse,youcanstilllinklistswithoutdefiningareferentialintegrityrelationship andtakeyourchances.
Summary Thischapterbeganbyreviewingthebuilt-inliststhatSharePointsuppliesoutofthebox.SharePoint dividestheavailablelistsintothreebroadgroupings.Thefirstgroup,communications,includeslists thatfacilitatecommunicationsbetweenusers.Thesecondgroup,tracking,includesliststhathelpusers trackinformation.Thelastgroupincludescustomlisttemplates. Ithenshowedyouhowtouseexistinglisttemplates.Bycreatinginstancesofthesetemplates,you canadditemstoyourlistinstancesandpublishtheresultinglist.SharePointtreatstheselistsasweb partsthatyoucaninsertintowebpartzonesofwebandwiki-stylepages. Youthensawhowtocustomizealistbyaddingnewcolumnsandmodifyingexistingcolumns.By creatingsitecolumnsratherthanjustaddinganewcolumntoanindividuallist,youcancreatereusable columndefinitionsthatyoucanthenaddtoanylistinthecurrentsiteanditssub-sites.Thistechnique canbeespeciallyusefulwhendefiningchoicecolumns;youonlyneedtomaintainthechoiceoptionsin oneplace. Next,youlookedatusinge-mailalertstokeepontopofchangesoradditionsmadetoalistor library.Youcancustomizehowoftenyoureceivealertsandforwhateventsyouwanttoreceivealerts. ListsandlibrariesalsosupportRSSfeedsasawaytopublishadditionstoalistorlibrary.BothIE7.0 andMicrosoftOutlook2007andtheirsubsequentversionssupportRSSfeeds,makingiteasyforusersto monitorupdatestolistsandlibrarieswhiletheychecktheire-mailorbrowsetheInternet. Youalsolearnedhowtodefinemultipleviewsforalist.Eachviewcansupportadifferent combinationofcolumns,sorts,andfilters.Itisalsopossibletogroupalistbya“slowingchanging” column(acolumnthatonlysupportsafewuniquevalues)anduseanexpand/collapsefeaturetomake iteasiertoseesubsetsofyourlistitemswithoutcreatingseparateviewsforeachgroup. MicrosoftSharePoint2010collaborationaddsnewfeaturesforListsandLibraryvalidationand referentialintegrity.Validationcomesintwoflavors,listandcolumnvalidation.Usingthesevalidations, youcankeepbaddatafromenteringyourlistbasedonrulesthatyoudefine.Finally,yousawhowtouse referentialintegritybehaviorwithlookupfieldstoprotectthedatabyeithercascadingorblocking changesfromtheparent(lookup)table. Inlaterchapters,IwillshowhowtoaccessandworkwithlistsdirectlyfromMicrosoftOffice productssuchasExcel,Access,andOutlook.
149
CHAPTER 3
■■■
Creating Content Pages Content Pages Display Your Data ContentpagesinSharePoint2007were,insomeways,simpler.Acontentpagewasawebpage.You coulduseoneofseveralpagelayouts.Eachonehaditsownconfigurationandnumberofwebpartzones inwhichyoucouldaddwebparts.WhileyoucanstillcreatecontentpagesthatwayinSharePoint2010, youhaveanotheralternative,wiki-stylepages.Thesepagesfeaturepagelayoutscalledrichtextareas thatoffertwobenefitsoverthemoretraditionalwebpages.First,youcantypetextdirectlyintothetext areaswithoutfirstneedingtoinsertawebpartsuchasthecontenteditorwebpart.Second,youcan createlinksfromonewikipagetoanotherjustlikethewikipagesinSharePoint2007wikilibraries. Moreover,youcaninsertwebparts,lists,tables,images,andanythingelseyoucouldputinawebpage intotheserichtextzones. Sowhichpagestyleshouldyouuse? BeforeIcananswerthatquestion,let’slookatbothpagestylesandseehowtheyarethesameand howtheydiffer. IfyoulookatthecollaborationsitethatyoustartedusinginChapter1,SharePointnamesthe defaultpageforthesite:home.aspx.Whatyoumaynothavenoticedisthatthispageisactuallyawiki page.Furthermore,ifyouopentheSiteActionsmenu,thereisanoption,NewPage.Ifyouselectthis option,SharePointgeneratesanewwikipageandplacesitinalibrarycalledSitePages.Iwillreturnto thatoptioninalittlebit.Let’sfirstlookattheotherwaytocreateapagebyselectingViewAllSite ContentfromtheSiteActionsmenu.
AddingaWebPagetoYourCollaborationSite Inthepreviouschapters,yousawhowtocreatelibrariesandlistsbygoingtotheSiteActionsbuttonin theupper-leftcornerofyoursiteandclickingtheViewAllSiteContent.Tocreateanewwebpage, beginthesameway1.Youwillneedalibraryinwhichtostoreyourwebpages.Whileyoucouldstore yourwebpagesinthesamelibraryasyourdocuments,abetterdesignchoiceputswebpagesintheir ownseparatelibrary.Therefore,let’stakeasidetripfromcreatingyourpagetocreateanewlibraryfor yourwebpages.
1
Thischapter’sexamplesaddpagestonon-publishingtemplates.However,mostofthetechniquesapplytoweb pagesaddedtopublishingsitesaswell.
151
CHAPTER3■CREATINGCONTENTPAGES
WhenyouclickCreate,theCreatedialogappears,whichyoufirstsawinChapter1.Rememberthat whencreatinganewlibraryyoushouldfiltertheobjectsyoucancreatebychoosingLibraryintheleft navigation.Oftheavailablelibrarytypes,nonesaysWebPageLibrary.Thatisbecauseyoucancreatea webpagelibraryfromadocumentlibrary.SimplyselecttheDocumentLibraryiconandsupplya uniquenameforthelibrary.ThenproceedtoMoreOptions.
■TipIfyouhavethefeatureSharePointServerPublishingactivated,youwillseeaPageslibrarythatyoucan usetocreatewebpages.
AsyoucanseeinFigure3-1,youmustdefineanameforthelibraryalongwithanoptional description.IhavechoseninthisexamplenottodisplaythedocumentlibraryintheQuickLauncharea, butIdowanttocreateanewversionofthepageeverytimeIeditthefile.Youcancustomizethetypes andnumberofversionsyouwouldliketokeeplater.Finally,noticethatthedocumenttemplatechosen forthislibraryisnotaWorddocumentasyousawinyourfirstdocumentlibraryinChapter1.Ratheritis aWebPartpage.
Figure3-1.CreatingaNewWebPageLibrary
152
CHAPTER3■ CREATINGCONTENTPAGES
AfterclickingCreate,SharePointgeneratesyournewlibraryandopensitasshowninFigure3-2. Whenyouopenalibrary,inadditiontotheBrowseandCustomCommandstabs,youseetwonewtabs representingribbonsundertheheadingLibraryTools.Thefirsttabwhenclickeddisplaysthe Documentsribbon.Thisribbonholdsoptionsthatletyoucreatenewdocuments,uploaddocuments, checkoutandeditdocuments,viewproperties,andmuchmore.Thesecondribbon,Library,focuseson managingthelibrary.Itallowsyoutoswitchbetweenthestandardanddatasheetview,createand modifyviewsofthedocumentsinthelibrarydefiningwhichcolumnstoshow,andsortordersand filters.However,italsohastheLibrarySettingsbuttonintheSettingsgroup,whichyouwilluse frequentlyasyouprogressthroughthischapter.
Figure3-2.StartingwithaNewWebPageLibrary Toaddanewpage,simplyclickonNewDocumentintheNewgroupoftheDocumentsribbon. ThisoptiondisplaystheNewWebPartPage.Foranewpage,youmustselecttwoproperties.Thefirst propertyisthenameofthepage.Pagenamesmustbeuniquewithinthelibrary.Youcanusethesame nameindifferentlibrariesevenwithinthesamesite,butIwouldnotrecommendthisunlessit representsthesamedocumentformatteddifferently.
■NoteTheAddnewdocumentlinkatthebottomofthelibraryitemlistopenstheUploadDocumentdialog.
Thesecondpropertyasksyoutoselectapagelayouttemplate.Figure3-3showsthatSharePoint supplieseightdifferentpagetemplates.Asyouclickoneachpagetemplatenameinthelist,asmall figureappearsontheleftthatshowshoweachtemplateconfiguresitswebpartzones.Awebpartzoneis anareaonthepageinwhichyoucanaddwebpartsfordisplay.Youcanuseotherlistsorevenlibraries asawebpartonapage.ThereisalsoquiteaselectionofwebpartsprovidedbySharePointtogetyou started.Inaddition,yourSharePointadministratormayhavedownloadedadditionalwebpartsfrom otherdevelopersormayhavedevelopedsomeherself.Let’sstartwiththerelativelysimpleHeader,Left Column,Bodytemplateforyourfirstwebpage.Bytheway,I’venamedthispageOwls.aspxforreasons thatwillbeapparentshortly.
153
CHAPTER3■CREATINGCONTENTPAGES
■TipIfyouseemorethaneightpagetemplatesinyourpagelayoutlist,yourSharePointAdministratoror someoneinyourSharePointdevelopmentteammayhavecreatednewpagetemplatesusingSharePointDesigner andaddedthemtoSharePoint.
Figure3-3.CreatinganewwebpageusingtheHeader,LeftColumn,BodyLayoutTemplate
■TipAsagoodpractice,donotincludespacesinpagenames.Ifyouwanttoseparatewordswithinaname,use anunderscorecharacter(_)betweenthewords.Webpagestranslateaspaceinanametothestring%20,making referencingthemalittlemorecomplex.Also,itdefinitelylooksodd.
154
CHAPTER3■ CREATINGCONTENTPAGES
Evenwithsuchalargeselectionoftemplates,youmaynotfindoneyoulike.Therearetwowaysyou canincreaseyourtemplateoptions. •
YoucanaskyourSharePointadministratortocreateanewpagetemplateforyou usingSharePointDesigner.Thisoptionmaytakesometime,butafterinstallingit, youcancreatewebpageswithitjustlikeusinganyofthebuilt-intemplates.Use thismethodifyourequireahighlycustomizedzonelayout.
•
Youcanmanipulatetheappearanceofthevariouswebpartzonesbyleaving selectedzonesemptyand/orphysicallychangingthewidthorheightofwebparts inadjacentzones.However,thismethoddoesnotletyouaddorredefinewhere zonesappear.
AfteryouclickCreate,SharePointgeneratesthepageandopensitinEditmode.NoticeinFigure 3-4thattheEditribbonallowsyoutoeditthepropertiesofthepage,changethepagepermissions, deletethepage,managepageversion(ifyouhavemorethanone),approvethepage,manageaworkflow onthepage,andevenmakethecurrentpagethedefaultpageforthesite.Ofcourse,onlyonepagecan bethedefaultsitepage.ThepreviousversionofSharePointcreatedthedefaultsitepagewhenyou createdthesiteandcalleditdefault.aspx;whileyoucouldchangethedefaultpageforthesitetoanother page,thisoptionwasburiedinthepagelibrarysettings.InSharePoint2010,youhavetheabilityto promoteanypageinyoursitetobethedefaultpagedirectlyfromthepageedittoolbar.
Figure3-4.ThePageEditRibbonforaNewWebPage
155
CHAPTER3■CREATINGCONTENTPAGES
AddingaContenttoaWebPartZone Next,youwillwanttoeditthecontentonthepage.Noticethat,whileinEditmode,thepagehassome textthatidentifiestheHeader,LeftColumnandBodyareas.Thesearetheareasdefinedbytheselected LayoutTemplatefromFigure3-3;thetextonlyappearsduringEditmodetohelpyouidentifythezones. ToaddtextorotherinformationintheHeaderarea,moveyourmouseintotherectanglenamed Header.Specifically,moveyourmouseintothesmallerrectanglewithintheHeaderrectanglethat displaysthetextAdd a Web Part.YoucanseesimilarrectanglesinthewebpartzonesfortheLeft ColumnandBodyzones. IfyouclickonthewordsAddaWebPartintheHeaderrectangle,youshouldseeimmediately belowtheribbonanareathathasthreecolumnslabeled:Categories,WebParts,andAbouttheWeb Part.Thefirstcolumn,Categories,listsallofthedifferenttypesofobjects,calledwebparts,thatyoucan placeonthewebpage.Whenyouclickanyofthecategories,SharePointupdatestheWebPartscolumn tofilterthewebpartsdisplayedbythatcategory. Forexample,toaddtexttotheHeaderwebpart,clickthecategoryMediaandContent.Thisaction displaysfourobjectsintheWebPartscolumn.Thefirstobject,ContentEditor,allowsyoutoaddcontent toawebpartzoneusingarichtexteditorsimilartoWordPad.Clickthiswebpartobjecttoselectit.The AbouttheWebPartcolumndisplaysthenameoftheselectedwebpartandabriefdescription.Atthe bottomofthecolumnisadrop-downlistthatletsyouselectthewebpartzonewhereyouwanttoplace thewebpart.EventhoughyoumayhavestartedbyclickingtheAddaWebParttextintheHeaderzone, youcanchangeyourmindandaddtheselectedwebparttoanyofthezonesusingthisdrop-downlist. Afterselectingthewebpartzone,clicktheAddbuttontoinsertthewebpartphysicallyontothepageat thetopoftheselectedwebpartzone. NoticethatIsaidSharePointaddsthewebparttothetopofthezone.SharePointalwaysinsertsa newwebpartintothetopoftheselectedwebpartzone,pushinganyotherwebpartsinthezonedown tomakeroomforthenewwebpart.Youwillseelaterinthischapterthatyoucaneasilymovewebparts aroundwithinthezoneandbetweenzones,sodon’tbetooconcernediftheorderofthewebpartsas youaddthemtothepagedoesnotmatchyourfinaldesiredorder.Youcaneasilyfixtheorder.
156
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-5.Addingcontenttoanewwebpage WhenyouclickAdd,youwillseearectangularareabeneaththeAddaWebPartbuttonwiththe nameContentEditor.BeneaththistitleisahorizontalseparatinglineandthewordsClickheretoadd newcontent. Whenyouclickthatphrase,thetextdisappearsandablinkinginsertcursorappearsontheleftside ofthisarea.Inaddition,newtabsappearatthetopofthepage.ThefirsttabgroupisnamedEditing Toolsandithastworibbons,FormatTextandInsert.ThesecondtabgroupisnamedWebPartTools andhasonlyasingleribbonOptions,whichprovidesseveralchoicesfordefiningthestateand propertiesofthewebpart. IntheContentEditor,typethetextFlorida Owls.Thenselectthetextbydraggingyourmouse throughit.ClicktheFormatTextribbonifnotalreadyselectedsoyoucanformatthetext. Thetextformattingfeaturesincludethefollowing: •
Fonts
•
Fontsizes
•
Fontstyles(bold,italic,underlined)
•
Fontcolors
•
Texthighlighting
•
Alignment(left,center,andright)
•
Lists(unnumberedandnumbered)
•
Indenting(andoutdenting)
157
CHAPTER3■CREATINGCONTENTPAGES
•
Copyandpasteoftext
•
Doandundo
•
Tablesandmanipulationoftablesandtheircells
•
Hyperlinks
•
Images
Onethingthatyoucannoteasilyaccomplishfromthenewribbonmenuthatyoucoulddoin SharePoint2007istoselectaportionofthetextinthecontenteditorwebpartandremoveallinline formatting.Manysitedesignersfoundthisoptionusefulwhencopyingtextfromaheavilyformatted MicrosoftOfficeWorddocument.
■CautionWhileyoucanchooseanyfontinstalledonyourmachinewhenyoucreateyourwebpages,theactual fontthatdisplaysdependsonthefontsyourviewershaveontheirmachine.Therefore,bestpracticessuggestthat youusecommonfontssuchasArial,TimesNewRoman,Courier,orHelvetica.
Usingthetextformattingoptions,centerandchangethetextto18ptArialbold,asshownin Figure3-6.
Figure3-6.UsingtheFormatTextRibbonintheContentEditorWebPart
158
CHAPTER3■ CREATINGCONTENTPAGES
Next,opentheeditdrop-downmenuintheContentEditorbar.Thismenucontainsseveraloptionsthat Iwillcoverlater.Fornow,focusontheoptionEditWebPart,asshowninFigure3-7.
Figure3-7.TheEditWebPartdrop-downoption WhenyouclickontheEditWebPartoption,apanelappearsontherightsideofthepage.Ifthe pagedoesnotresizesoyouthatcanseethispanel,lookforascrollbaronthebottomofthepageand scrolltotheright.Thispaneldisplaysmultiplegroupsofoptions.FortheContentEditorWebpart,these areasincludetheContentEditoritself,Appearance,Layout,andAdvanced.Otherwebpartsmayhave differentoptiongroups.Figure3-8showsanexampleofthistoolpanelfortheContentEditor.
Figure3-8.PanelpropertiesfortheContentEditorwebpart UnlikethepreviousversionofSharePoint,younolongerneedtogotothetoolpanelfortheContent EditorWebparttobeabletocreateoreditthecontentsource.Youcannowdothisdirectlyinthe displayareaofthewebpart.However,thetoolpaneldoesbeginwiththeoptionofloadingyourcontent fromatextfileaslongasthattextfilehasbeenloadedtoalibrarywithinyourSharePointsite.Whylink toatextfileforyoucontentratherthanjustenterthecontentdirectly?Ifyouhaveaprocessthat automaticallygeneratesatextfileaspartofitsoutput,youcandisplaythattextinaContentEditorWeb partimmediatelyifyoulinkthattextfiletotheContentEditor.
■CautionThetextistreatedasHTMLandignoresallwhitespace.
159
CHAPTER3■CREATINGCONTENTPAGES
TheAppearancegroupincludesoptionsthatletyouchangethetitleofthewebpart,itsheight,its width,andthestateandtypeofChromeused.Whatischrome?Chromeistheheaderdisplayedatthe topofthewebpart.SharePointsupportsfivechromeformats: •
Default
•
None
•
TitleandBorder
•
TitleOnly
•
BorderOnly
WhenusingaContentEditorWebparttocreateatitleforapage,achrometypeofNonemakesthe mostsense. TheLayoutsectionidentifiesthezoneandzoneindexwhenthewebpartexists.Youcanmovea webpartfromonezonetoanotherorfromonepositioninazonetoanotherbysimplychangingthe valuesofthesetwoproperties. Finally,theAdvancedsectionprovidesavarietyofpropertiesfordisplayingthewebpart.(Iwillskip overthesefornow.) Nowthatyouhaveaheaderforthepage,youcanaddsomecontenttothebodysection.Again,start byclickingonthetextAddaWebPartintheBodyzoneofthepage. Thistime,selecttheImageViewerwebpartfromtheMediaandContentcategoryandaddittothe bodyzone.Beneaththewebpartheaderbar,thetexttellsyoutoopenthetoolpanetoenteraURLfor theimage.Youcanclickonthetextopen the tool pane,whichdoesthesamethingasclickingonEdit WebPartintheEditdrop-downmenu.Thelinkfortheimagecanbefromanywebsiteonanyweb server,butthebestplacetostoreimagesthatyouwanttouseisintheImagelibraryofthecurrentsite. Solet’stakeabriefdetour.(Adetour,asdescribedinthisbook,isasidetaskthatyoumustcomplete beforecontinuingwithyourmaintask.)
AddinganImagetoanImageLibrary Inthiscase,youneedtouploadanimageyouwanttouseonyoursitetothesite’sImagelibrary.Rather thanbackoutoftheworkyouhavestarted,considerfollowingthesesteps. 1.
160
Fromthecurrentpageofyourbrowser,copytheURLtoyourclipboardby clickingintheaddressbarandthenpressingCtrl+C. •
Thenopenanewtabinyourbrowser,orifyouprefer,anewinstanceof yourbrowser.
•
Intheaddressbarofthisnewpage,pastethecontentsofyourclipboard. Noticethatthefullcontentsoftheaddressbarismorethanyouneed. Deleteanythingtotherightofthesitenamewhereyouareworkingand pressEnter.Forexample,iftheoriginalURLwas:http://Vanguard/ Project/TutorTracker/pages/default.aspx,youonlyneedtouse: http://Vanguard/Project/TutorTrackerinthenewtabsoyoucannavigate toyourpicturelibrary.
CHAPTER3■ CREATINGCONTENTPAGES
•
Whenthepagerefreshes,pressSiteActions➤ViewAllSiteContentand thenselectyourpicturelibrary.Ifyouhavenotcreatedapicturelibraryin thecurrentsiteyet,clickCreateandselectPictureLibraryfromthe Librariescategory.Completetheformtodefinethenameandother propertiesofyourpicturelibraryandclickCreate.
•
Withyourpicturelibraryopen,clicktheUploadbuttonintheheaderofthe library.
•
IntheAddPicturedialogthatappears,usetheBrowsebuttontolocate yourimagefileandthenclickOKtouploadyourimagetothelibrary.
■TipResizeyourpicturestothesizeyouwanttodisplaybeforeyouuploadthem.Ifyoudon’townagraphics suite,youcanuseMicrosoftOfficePictureManagerfoundintheOfficeToolsfoldertoresizeyourimages.
•
Whenthepictureuploads,SharePointopentheeditpropertiespageforthe imagetoletyouspecifyotherpropertiesoftheimagesuchaswhenthe picturewastaken,atitle,adescription,andkeywordsthatcanbeusedto helpfinddifferentimagesfromasearch.
•
Afterdefiningthepictureproperties,clicktheSaveoptionintheEdit ribbontocompleteyourupload.
•
Nowthatyouhaveatleastonepictureinyourpicturelibrary,youcanuse thatpictureonyourpage.However,tousethatpicture,youneedtheURLof thepicture.TheeasiestwaytocapturethatURListoclickonthepicturein thelibrarytoopenthepropertiespage.Thenclickonthepreviewpicture showntoopenjustthepictureinaseparatepage.NoticetheURLinthe addressbar.SimplyclickonthisURLandcopyittoyourclipboard.
•
Nowyoucanreturnfromyourdetourbacktothepageyouareediting.Click inthetextboxfortheimagelinkandpastetheURLoftheimage.
■CautionIfyoucopiedtheimageURLasdescribedinthesesteps,makesurethatyoudeletethedefaulttext (http://)beforeyoupastethecopiedURL.Otherwise,youwillhaveanincorrectlyformattedURL.
Wheninsertinganimageonapage,youshouldalwaysconsideraddingalternatetextforthose viewerswhomayhavegraphicsturnedofformaybeusingaprogramtoreadthepagetothem. Ifyoulaterdeletetheimagefromthepicturelibrary,thewebpageswilldisplayaboxwithared“x” init,indicatingthatSharePointcannotlocatetheimage. Thereareotheroptionsinthetoolpanelforthiswebpartincludingalignmentoptionsand backgroundcolorsettings.Inaddition,youalsohavetheAppearance,Layout,andAdvancedproperty
161
CHAPTER3■CREATINGCONTENTPAGES
groups.Infact,youmaywanttoopenthePropertiesgroupandchangetheChromeTypetoNonefor thisimage. Whenyou’redonemodifyingpropertiesoftheimage,clickOKinthetoolpanel. Nowyouhaveapictureinthebodysection.Toaddsomeadditionalinformationaboutthepicture, beginagainbyclickingAddaWebPartfromtheBodyzone.SelecttheContentEditorWebpartfrom theMediaandContentcategory.Next,clickAddtoinsertthiswebpartintheBodyzone.AsFigure3-9 shows,thisnewwebpartappearsabovetheImageViewerwebpartpreviouslyadded.
Figure3-9.Addedwebpartsalwaysappearatthetopofthezone.
162
CHAPTER3■ CREATINGCONTENTPAGES
Addedwebpartsalwaysappearatthetopofthezone.Tochangethesequenceofthewebparts withinthezone,justclickonthewebpartheaderthatyouwanttomoveanddragitupordownwithin thezone.You’llnoticeathickhorizontallineappearsinthezonetoindicatewherethewebpartwillbeif youweretoreleasethemousebutton.Movethecontentareabeneaththeimageandentersometext aboutthisbeautifulowl. Afteryouhavemovedthecontentareabeneaththeimage,clickbelowthewebpartheadertobegin creatingtext.Figure3-10showstheBodyzonewithasmallamountoftextaddedbeneaththepictureof theowl.
Figure3-10.RepositiontheContentEditorwebpartbelowtheImageViewer
163
CHAPTER3■CREATINGCONTENTPAGES
CopyingTextfromaWordDocument Fortheaboveexample,youenteredyourtextdirectlyintotheContentEditorWebpart.Perhapsyou alreadyhaveaWorddocumentcontainingthetextyouwanttoaddtoyoursite.Youcouldsimplycopy yourtextfromtheWorddocumentandthenpasteitintotheContentEditorWebPart. Note,however,thatthistechniquecopiesnotjustthetext,butalsoallthetextformattingandstyles. Ifyouhaveverylooseformattingstandardsforyourcontentpagesasopposedtostrictstandardsfor outwardfacingwebpagestothepublic,youmaynothavetodoanythingmore.However,ifyour organizationimposestextformattingstandards,evensomethingassimpleasthetypeoffonttouseor thefontsize,youmayneedtoreformatthecopiedtext.
■NoteOnewaytoremoveallspecialformattingfromcopiedtextistocopythetextfirsttoNotepadandthen copythetextfromNotepadtotheContentEditor.Whilethisoptionrequiresanadditionalstep,itsuccessfully removesthespecialformattingthatWordaddsandpastesaplaintextversionofthecontentintheContentEditor, readyforformattingtomatchyourotherpages.
Let’scontinuewiththeowlpage.Supposeyouwanttoprovidealittlescientificinformationabout thisbirdforyourviewers.Todothis,youneedtoadddataintoatable.Addablanklinebelowthe currenttextbypressingEnterandthenopentheInsertribbonfromtheEditingToolsribbongroup. NoticethatthefirstoptionisTable.Clickingthisoptiondisplaysasmalldialogthatlookslikeagrid. Asyoudragyourmousethroughthegrid,individualsquares(cells)changecolor.Thisindicatesthesize ofthetableintermsofcolumnsandrowsthatyouwillcreate.Whenyouhavehighlightedatableof2 rowsand6columns,clickthemousetocompleteyourinitialtablesizeselection. Thetableappearsbeneaththetext.Youcanaddtextbyclickinginanyofthecellsandjusttyping thetextyouwanttoappear.Inthiscase,I’veincludedafewofthescientificclassificationnamesforthis owl.Ifyouweretojustacceptthetablewithitsdefaultformatting,thedatawouldappearasifitwerein tworowswithsixcolumn,butthetablegriditselfwouldnotappearinthefinalpage.Thisdefaultcan actuallybeagoodwaytoformattextonyourpagesothatyoucandefinedifferentcontentareaswithout displayingobviousgridlinesthatdefinethoseareas.Inthiscase,youwantthetabletolookmorelikea tableanddisplaynotonlythegridlines,butalsoprovidesomeadditionalformatting. Sowiththetablestillselected(ifyouclickedoutsideofthetable,justclickanywherebackinthe tableagain),opentheDesignribbonintheTableToolsribbongroup.First,makesuretoselectthe HeaderRowcheckboxbecauseyoudohaveaheaderrowforyourdata.However,makesurethatyou donotselectFirstColumn.ThenclickontheoptionStylesandselecttheTableStyle3–Dark. Afteryouhaveselectedthestyle,enterthedataasshowninFigure3-11.OpentheEditribbonofthe PagetabandclickStopEditingtosaveyourchanges.Whencompleted,yourpageshouldlooklike Figure3-11.
164
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-11.Addingatabletothecontent
UsingMicrosoftWordtoAddaTabletoYourContent Asyou’veseen,whileyoucancreateatabledirectlyfromwithinSharePoint,yourformattingoptionsare limited.WhenyoucreateatableinWord,however,youcanapplyanyofthemanypredefinedtable styles—orcreateyourown.Figure3-12showsaWordtablesimilartotheSharePointoneinFigure3-11.
Figure3-12.Specifyingnameandlocationforanewbasicwebpage
165
CHAPTER3■CREATINGCONTENTPAGES
Inthiscase,ifyouwantmorecontroloverthetable’sappearance,youmaywanttocreateand formatyourtableinWordandthencutandpasteitintotheContentEditorWebpart.Thisprocess preservesmostifnotalloftheformattingdefinedinWord.
AddingaHyperlinktoYourContent Inadditiontoaddingtables,theContentEditorWebparthastheabilitytoaddahyperlinktoanother pageonyoursiteortoanysiteontheInternet.Supposeyoufindalinktoadditionalinformationon burrowingowlsontheInternetandwanttoletyourvisitorsseethatinformationaswell.Youcancreate alinktoitfromyourdocument. Tocreateahyperlinkfromwithinyourcontent,beginbyselectingthetextonwhichyouwant readerstoclick.ThengototheInsertribbonoftheEditingToolsribbongroupandclicktheLink optionintheLinksgroup.Aswiththeimagedialogbox,thehyperlinkdialogbox,showninFigure3-13, onlyhastwopropertyfields.ThefirstfieldechoesthetexthighlightedbeforeopeningtheInsert Hyperlinktool.YouthenneedtoenterthepageURLtolinktousingthesecondfield.Notethatthisfield doesnotsupportaBrowsebutton.Ifyoudon’tremembertheURLofthepageyouwanttoredirectusers to,openaseparatebrowserwindowortabandnavigatetothepage.Withthepageopeninyour browser,youcanclickintheaddressbartoselectthepageURLandcopythelinktoyourclipboardwith Ctrl+C.ThenreturntoyourSharePointbrowsertabandpastethelinkintheAddressfieldwithCtrl+V, andclickOK.
Figure3-13.InsertingahyperlinktoanInternetsite PerhapsyounoticedthattheLeftColumnzoneappearstobemissing.Actually,itisnotmissing,it’s justempty.Whenazoneisempty,SharePoint(andmostbrowsers)compressthatspacesothatother textonthepagehasmoreroom.IfyouweretousetheleftcolumnzonetocreateamenuofFloridaowls, asshowninFigure3-16,thebodyzonewouldreconfiguretouselesshorizontalspacesothattheleft columnzonecanappear. Tocreatethatmenufortheleftcolumnzone,supposeyouhadpreviouslycreatedaLinkslistthat representsthedifferentpagesonyoursiteaboutFloridaowls.IcoveredhowtocreatelistsinChapter2. YourLinkslisthasthreeorfourentriestootherpagesthatyoumayhavecreatedsofar.Toaddthatlist tothispage,editthepageandmovethemouseundertheleftcolumnzonetodisplaythezonerectangle. ClickintherectangletodisplaythePageTools’Insertribbon.ClickontheExistingListoptiontoselect alist.Figure3-14showstheselectionoftheexistinglistnamedFloridaOwls.
166
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-14.Addinganexistinglisttothewebpage Afteraddingthislisttoyourpage,youmayseemorecolumnsthanyoumayreallywant.Allyou reallywanttodisplayistheURLcolumn.Fortunately,becauseyoulearnedinChapter2howtocreate differentviews,youcancreateanewviewthatonlydisplaystheURL.Becausethecolumnnamewill appearonthepagewhenyoudisplaytheview,youmayalsowanttochangethenameofthecolumnto thenameofthemenu;sochangethecolumnnamefromURLtoFloridaOwlPages.Afterdoingthis,you caneditthewebpartonthepagechangingtheviewusedtodisplaythelistbysettingthepropertiesas showninFigure3-15.Noticethatthepageinitiallydisplaysthelist’sdefaultview.Onlyafteryouaddthe listtothepagecanyouspecifywhichviewtouseonthepagebygoingtothewebpart’sproperties. Somechangesyoushouldmakewhileeditingthewebpart’spropertiesare: •
SettheviewintheSelectedViewdrop-downtotheviewyouwanttouse
•
SettheChromeTypetoNone
•
SettheToolbarTypetoNoToolbar
167
CHAPTER3■CREATINGCONTENTPAGES
Figure3-15.DefiningPropertiesofthelist Aftermakingyourchangestothewebpartproperties,clickOKtosavethechanges.SharePointnow displaysyourupdatedpage,whichshouldlooksomethinglikeFigure3-16.Noticethatwithinformation intheLeftColumnzone,theBodyzoneisnotaswideasinFigure3-11.Actually,bychoosingalonger columnheaderasshowninthisfigure,Iinsuredthatthecurrentpagelinksdidnotwraparoundtwoor morelines.Ifyouwanttoseehowthisworks,gobacktothelistsettingsandchangethecolumnname fromFlorida Owl PagesbacktoURL.
■TipAnotherwayyoucancontrolthewidthsofwebpartzonesistomodifytheWidthpropertyintheAppearance sectionofthewebpartpropertiesbysettingthewidthtoafixednumberofpixels.Youcansetthepixelsbytrial anderrororyoucandownloadasimplescreenutilitythatdisplaysapixelruleronthescreen.Theseutilities (somefree,someinexpensive)areagreathelpindeterminingthenumberofpixelsanimage,column,orwebpart zoneshoulduse.
168
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-16.Finalwebpagewithimage,content,andmenu
■TipIfyoucreatedaLinkslisttofollowalongwiththisexample,youmayhaveseencheckboxesbeforeeachof theitems.Bydefault,SharePointaddscheckboxesbeforeeachitem.Youcanremovethesecheckboxeswhen youdefineyourmenuviewbyopeningtheTabularViewgroupandturningofftheoptionAllowindividualitem checkboxes.
Ofcourse,therearemanyotherthingsyoucanaddtothispage,butthisshouldbeenoughtoget youstarted.Nowlet’slookatcreatingasimilarpageusingthewikipagetemplate.
169
CHAPTER3■CREATINGCONTENTPAGES
AddingaWikiPagetoYourCollaborationSite Thesecondwaytoaddpagestoyourcollaborationsiteistousewikipages.Infact,thisisthedefault pagestyleforaTeamCollaborationsite.Oneofthekeyadvantagesofusingwikipagesforcollaboration isthatanyonecaneditthepagecontentevenifyoudonotwanttogivethemeditrightstothe underlyinglistsorlibraries.Forcollaborationpages,thisfeatureallowsyoutolimitmanagementoflists andlibrariestouserswhohavereceivedadditionaltrainingonhowtoworkwithSharePoint.
■TipIfyouwouldrathernotuseawikiasthedefaultpageforyourTeamCollaborationsite,firstcreateanew webpage.BeforeyouexitEditmode,clicktheoptionMakeHomepagefromtheEditribbon.SharePointdoesnot deletetheoriginalwikipage.ItstillexistsintheSitePageslibraryandyoucanopenitwithalink.However,your newwebpagebecomesthenewdefaultpageforthesite.
FromthemainpageofthecollaborationteamsitecreatedforyouwhenyoubeganChapter1,you caneasilyaddnotonlyalinktoanewcollaborationpage,butalsothepageitself.Startbyclickingthe EdittabtodisplaytheEditribbon.IntheEditribbon,clicktheEditoptionintheEdit&CheckOut group.Whenthepagerefreshes,you’llseerectanglesaroundseveralportionsofthepage.Figure3-17 showsthatthedefaulthomepagehasthreeareas,almostlikethezonesinthewebpartpageyoucreated inthefirstpartofthischapter.
Figure3-17.Wikipageversionofahomepage
170
CHAPTER3■ CREATINGCONTENTPAGES
Ifyoumoveyourmouseoverablankareaintheserectangles,youmayseeatooltipappearbeneath yourcursorthatsaysRichTextEditor.Thesearealreadytextareas.Youdonotneedtoinsertawebpart toaddcontenttotheseareas.Justclickyourmousewhereyouwanttoinserttextandbegintyping.If youdonothavespacetoinserttextbetweenexistingwebparts,checkoutthesidebarMovingWebParts onawikipage.
Moving Web Parts on a Wiki Page Ifyouhavealreadyaddedwebpartstotherichtextarea,youwillfindthatyoucanonlyaddtextdirectlyto areasoutsideofthesewebparts,notwithinthem.Ifyouaddedthewebpartswithoutaddingablankline betweenthem,youmayneedtoaddblanklinesifyouwanttoinserttextbetweenthem.Unfortunately, youcannotjustclickbetweenwebpartsandpressEntertoinsertalinebetweenthem. First,youmustaddaseriesofblanklinesatthebottomoftherichtextarea.Then,beginningwiththe lowestwebpart,clickonthewebpart’sheaderanddragittooneofthesenewblanklines.Thisshould effectively“bubbleup”theblanklinestowhereyouwantthem. IfyousavedthewebpartwithaChrometypeofNone,youcanclickanywhereontheborderoftheweb partwhichappearsasyoumoveyourmouseoverthewebpart.Thendragthewebpartasneededto arrangeyourblankspace. AddingblanklineswhileinEditmodebetweenwebpartsdoesnotaffectthedisplayofthefinalpage becausewikipagesignoretheseblanklines.Souseblanklinesliberallywhendesigningyourpages.Idid thistothehomepageofthesiteusedheresothatIcouldaddtexttothetopoftheleftcolumn. Youcanmoveawebpartfromonerichtextareatoanotheraseasilyasarrangingtheorderofwebparts withinarichtextarea.Theonlyrestrictionisthatyoumusthaveoneormoreblanklinesinthedestination richtextareawhereyouwanttodropthewebpart. Figure3-18showsthewebpartsmoveddowntoprovidespaceatthetopoftheleftcolumn.ThenI addedonelineofregulartext.NotethatIaddedasecondline,butitisnotalineofnormaltext.Rather,it showshowtobeginahyperlinkdefinitionwithinawikipage.Tostartalink,typetwoopensquare brackets.Assoonasyoudothis,acontext-sensitivemenuappears,listingavailablepagesfromtheSite Pageslibrary,whichisthedefaultlibraryforyoursite’swikipages.Inthisfigure,Iselectedthepage namedMySecondPageforthelink. Afteryouselectthedesiredpagetolink,presstheEnterKey.SharePointautomaticallyaddsthe closingsquarebracketstocompletethestatement.
171
CHAPTER3■CREATINGCONTENTPAGES
Figure3-18.Insertingtextintoawikipagecontentarea DoesthismethodonlylinktootherwikipagesintheSitePageslibrary?Atfirstglance,youmight thinkso.Afterall,whenyoutypethetwoopeningsquarebrackets,thelistthatappearsonlyincludesthe namesofpagesintheSitePageslibrary.Infact,thepagenamesdisplayedinthedrop-downcorrespond tothepage’sNameproperty.Therefore,ifyouknowthenameofthewikipageyouwanttolinkto,you canenterthenamedirectly. Socanyouonlyreferenceotherwikipages?Theanswerisno,butlet’sfinishthisexamplebeforeI getintoaccessingnon-wikipages. Whileyoudidnotchangethedisplayedtextassociatedwiththelinkinthiscase,youcaneasily provideadifferenttextstringforSharePointtodisplaytotheuser.Simplyaddthepipecharacter(|)after thepagenameandthenenterthealternatetextyouwanttodisplay.Forthisexample,youcouldhave entered[[MySecondPage|Page 2]]sotheSharePointwoulddisplaythetextPage2asthelink.Thiscanbe especiallyusefulifyouhaveabbreviatedpagenamestokeepthetotalURLsizesmallbutwouldrather haveamoredescriptivepagenamedisplayedtotheusers.
Figure3-19.Wikireferencetoapagenotyetcreated
172
CHAPTER3■ CREATINGCONTENTPAGES
NoticeinFigure3-19that,whenyousavethepage,thelinkdisplayswithadottedunderline.This dottedunderlineindicatesthatthereferencedpagedoesnotexist.Ifyouenteredthepagenamedirectly andyouknowthepageexists,youmaywanttodoublechecktheNamepropertyofthepage.Youmay evenwanttomakesurethatthepageexistsintheSitePageslibraryofthecurrentsiteandnotsome othersite. Ifthepagenameiscorrectandyouknowthatthepagedoesnotexistyet,clickonthispagelink. SharePointrecognizesthatthereisnopagewiththisname.Itthereforeopensadialog,showninFigure 3-20,andpromptsyouwiththequestionwhetheryouwantSharePointtocreateanewwikipageinthe SitePageslibrarywiththatname.
Figure3-20.Wikiwarningwhenabouttocreateanewpage IfyouclicktheCreatebutton,SharePointcreatesapagewiththatnameandopensthepageinEdit mode,asshowninFigure3-21.Notethatanewwikipagehasnodefaultcontent,butitdoeshaveone richtextareathatfillstheentirepage.
Figure3-21.Blanknewpageinwikicreatedfromlink
173
CHAPTER3■CREATINGCONTENTPAGES
Notethattherearenowebpartzones.Wikipagesdonothavewebpartzones,butdon’tworry.You canstillusewebpartsinawikipagebyplacingthemdirectlyintherichtextarea. Perhapsinsteadofjustonerichtextarea,youwanttwo,three,ormoreareas.Infact,youwouldlike tohaverichtextareaslaidoutsimilarlytothewebpartzonesyousawearlierwhencreatingawebpage. IntheEditingToolsribbongroup,selecttheFormatTextribbon.Inthisribbon,locatetheLayout groupanditssoleoption,TextLayout.Ifyouclickthisoption,youwillseethatthereareseveral differenttextlayoutsavailableforwikipages(seeFigure3-22).Thethumbnailtotheleftofthelayout namegivesyouaviewofwhatthoselayoutslooklikebeforeyouselectthem.Inmostcases,youcan guesswhatthelayoutwilllooklikebyreadingthename.Ofcourse,youcouldjustselectonetoseewhat itlookedlike.Ifyouhavenotaddedanycontenttothepageyet,youcaneasilyreopentheTextLayout drop-downmenuandtryadifferentlayoutuntilyoufindtheoneyouwanttouse.
Figure3-22.Availablelayoutsforwikipages AfterselectingaTextLayout,SharePointreconfiguresthecurrentwikipageandshowsyoutherich textareas.Asastartingpointtoreproducetheearlierwebpage,createawikipagebyusingtheTwo columnswithheaderoptionasshowninFigure3-23.
174
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-23.TheTwocolumnswithheaderlayout Richtextareasarenotthesameaswebpartzones.Whiletheystillautomaticallyexpandand contracttoadjusttothesizesofcontentplacedwithinthem,merelyaddingtexttotherichtextareawill notaffectthecurrentrichtextarea’swidth.Youcannotmanuallychangetheirwidthsbysetting propertiesoftherichtextarea.Ontheotherhand,ifyouaddalisttooneoftherichtextareasthatis widerthanthearea,theareawillexpandinanattempttoshowthefulllist.Thefactthatrichtextareas maynoteliminateasmuchwhitespaceastheircorrespondingwebpagecousinscanleadtopageswith considerablymorewhitespacebetweenhorizontallyplacedrichtextareas.Iencounteredthiseffect whenattemptingtorecreatethesamepagecontentformywikipageaswecreatedinourearlierweb partpage.AlthoughmywikipageinFigure3-24isclosetomywebpartpageinFigure3-14,acloselook revealsthatthewebpagerecoversextraspacemoreeffectively.
175
CHAPTER3■CREATINGCONTENTPAGES
Figure3-24.Finalwikipagewithimage,content,andmenu Addinglinkstotakeyoutootherpagesisnottheonlythingyoucandowithwikipages.Youcan createlinkstofiles,lists,andviews.Assoonasyoutypethetwosquarebracketstobeginalinkonawiki page,acontext-sensitivedrop-downmenuappearstoletyouchoosenotonlyotherwikipagesinthe sitepageslibrarybutalsotwootheroptions(seeFigure3-25).
Figure3-25.Context-sensitivedrop-downoflinkoptionsinawikipage Toselectanitemfromthislist,usetheupanddownarrowkeysonyourkeyboardandpresstheTab keytoselecttheitem.SharePointaddsthepagenameorthewordList:orView:afterthesquare brackets.Ifyouselectedapage,youcanclosethelinkbypressingtheEnterkeytoaddtheclosingsquare
176
CHAPTER3■ CREATINGCONTENTPAGES
bracketstotheexpression.However,youcandefineanaliasnameforthepagethatdisplaysonthe currentpageratherthantheactualpagename.Todothis,pressthepipecharacter‘|’andenterthe alternatenameforyourlink.Toclosethelinkexpression,youmustalsomanuallyenterthetwoclosing squarebrackets. IfyouchooseList:fromtheAutocompleteMenu,afteryoupresstheTabkey,adrop-downofall yourlistswillappear(ifyouhavearelativelysmallnumberoflists).Ifyouhavealargenumberoflists,a messagemayappeartellingyouto“Entermoreofthenametoseesuggestions”.Enterthefirstoneor twolettersofthespecificlistnameyouwant.Afterselectingyourlist,youcanpresstheTabkeytoselect anitemfromthelist,oryoucanpressEntertocompletethelink,oraswithpages,youcanaddapipe characterandthensupplyanaliasthatSharePointdisplaysonthepageinplaceoftheactuallistname. TheView:optionstartssimilarlytotheList:iteminthatyoumustfirstselectthelistyouwant. However,inthiscase,youdonotwanttopressEnterafterselectingthelistname.Ratheryouwantto pressTab.Again,SharePointasksyoutoentermoreofthenametoseesuggestions.However,thistime, thepromptisreferringnottothelistname,buttothenameoftheviewwithintheselectedlist. SharePointseparatesthelistnameandviewnamewiththeslash“/”character.Aswiththetwoprevious examples,youcanendyourselectionsbypressingtheEnterkeyoryoucanaddthepipecharacterand supplyanaliasnameforthelink. Finally,youcanreferencenotonlyregularlistswiththeList:option,youcanaccesslibrariesaswell. Forexample,toopenadocumentfromyourSharedDocumentslibrary,selectList:asbefore,butenter thecharacter“s”or“sh”todisplaytheSharedDocumentsnameintheAutocompleteMenu.Aswith views,youwanttopressjusttheTabkeytoselectthelibrarysoyoucancontinuetoselectthefilewithin thelibrary.Alsolikeallofthepreviousexamples,youcansupplyanaliasnameforthelink. Onceyouknowthesyntaxforlinksonawikipage,youcanenterthelinkdefinitiondirectlyifyou knowthelist/libraryandview/documentinformation.However,usingtheAutocompleteMenu eliminatesthepotentialforspellingerrors. Ifyouweretosavethepageatthispointandclickonanyoftheresultinglinks,SharePointwould openthecorrespondinglist,view,library,ordocumentasdefinedbythelink. Figure3-26showsafewexamplesofthelinkoptionswhileinEditmode.Youcanseethatthebasic formatofthelinkissimilartothebasicpagelinkinwhichyoubeginwiththepagenameandthenyou canaddapipecharacter‘|’followedbyanaliastextstringthatappearsonthepagewhenthepage displays.
Figure3-26.Displayofdifferenttypesoflinksonawikipage Afewparagraphsago,Ipromisedtotellyouhowyoucouldreferencenon-wikipagesfromwithina wikipageusingthewikipagelinkformat.JustasyouwereabletoopenadocumentfromtheShared Documentslibrary,youcanaccessafileinanylibraryincludingpagelibraries.Earlierinthischapter, youcreatedadocumentlibrarynamedWebPages.YoucanbeginwiththeList:prefixandthenbuilda referencetoafilenamedOwls.aspxintheWebPageslibrarybyusingastringlikethefollowing: [[List:WebPages/Owls|Owls]]
177
CHAPTER3■CREATINGCONTENTPAGES
■CautionSharePointcannotusesecuritytrimmingtohidelinksyoumightcreateonyourwikipage,asshownin thissection.Therefore,usersmaygetasecuritywarningwhentheyclickonalinkthatpointstoalistorlibrary itemtowhichtheydonothaveaccess.
NowyouknowwhyIstartedChapter2bysayingthateverythingisalist.Youcancreatecontent pageswithbothwebpagesandwikipagesandyoucanreferencebothpagestylesjustasiftheywere anotherlistinyoursite.Let’slookatsomeadditionalcontentissueswhenworkingwithcollaboration pages.
CreatingMaster-DetailRelationshipsbetweenYourLists ■CautionCreatingconnectionsbetweenwebpartsasdescribedinthissectionisonlyafunctionofWebPart pages,notwiki-basedpages.
Oneofthemoreinterestingthingsyoucandowithlistsistodefinemaster-detailrelationshipsbetween twoormorelistsonapage.Amaster-detailrelationshipbetweenlistslooksalotliketheparent-child relationshipbetweentablesinadatabase.Basically,itmeansthatalistdesignatedasthemasterhas itemsthatrelatetooneormoreitemsinasecondlistcalledthedetaillist. Oneexampleofamaster-detailrelationshipmightinvolvealistofthedepartmentsinyour organization.Sincedepartmentsconsistofoneormorestaffmembers,youmightbuildadetailedstaff list,includingnames,titles,telephoneextensions,andrelatedinformation. Anotherexamplemightlistyouremployeesinamasterlistandtheprojectstheyworkoninthe detaillist.Infact,thestaffdetaillistofthefirstexamplemightserveasthemasterlistforthesecond example. InSharePoint,whenyoucreateamaster-detailrelationshipbetweenlistsonapage,themasterlist controlstheitemsyoucanseeinthedetaillist.Themasterlistalwaysdisplaysallitsitems.However,the itemyouselectfromthemasterlistdetermineswhichitems,ifany,appearinthedetaillist. Figure3-27showstwolistsononepage.Thelistontheleftdisplaysalistofprojectsina hypotheticalcompany.Thelistontherightdisplaysalistofstaffassignedtovariousprojectsalongwith theirmainprojectresponsibility.YouprobablynoticedthatProjectNameprovidesacommoncolumn betweenthesetwolists.Youmusthaveacommonorlinkingcolumnbetweenyourtwoliststocreatea master-detailrelationship.However,theselistsdonotneedtohavethesamenameasinourexample.
178
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-27.Createanddisplaytworelatedlistsonapage Onceyouplacebothlistsonthepage,youcandefinetherelationshipbetweenthemstartingfrom eitherlist.IfyoubeginwiththeResearchProjectslist,dropdownthemenufromtheEditbutton(or down-pointingarrow)inthelistheader.YouwillseetheoptionConnectionstowardthebottomofthe menu.AsyoupositionyourcursoroverthewordConnections,asecondarymenudefinesthepossible connectiontypes.Fromthismenu,moveyourmouseovertheSendRowofDataTooption.Youusethe SendRowofDataTooptionwhenyoubeginfromthemasterlistsideoftherelation.YouusetheGet FilteredValuesFromOptionwhenyoubeginwiththedetaillist. Next,anothermenuappearslistingtheavailablelistsonthecurrentpage.Inthiscase,selectProject Stafffromthemenu.Figure3-28showsthissequenceofselections.
179
CHAPTER3■CREATINGCONTENTPAGES
Figure3-28.Definingtheconnectionfromthemasterlist Next,SharePointdisplaysatwo-tabdialogboxinwhichthefirsttabasksforthetypeofconnection forProjectStaff.SinceyoustartedbysendingarowofdatafromtheResearchProjectslist,youwantto getfilteredvaluesfromtheProjectStafflist.Figure3-29showsthisdialogbox.
Figure3-29.Selectingthelinkingfieldfromthemasterlist ClickingontheConfigureConnectiontab,youmustnextselectthecolumnfromthemasteror providerlisttousetofilter(link)thedetailorconsumerlist.Afteryouselectthecolumnfromthemaster list,youmustselecttheconnectingcolumnfromthedetaillist.Figure3-30showstheselectionofthe ResearchProjectscolumnProjectNamefromtheproviderlistandtheconsumerlistcolumn, Project_NamefromtheProjectStafflist.
180
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-30.Selectingthelinkingfieldfromthedetaillist ClicktheFinishbuttontocompletetherelationshipdefinition.WhenyouexitEditmodeforthe page,youseethatthemasterlist,ResearchProjects,displaysanadditionalcolumnatthebeginningof thelist.ThiscolumnhastheheaderSelect.Itplacesadouble-headedarrowbeforeeachlistitem.Tosee therelationshipbetweenthemasteranddetaillist,clickanyofthedouble-headedarrows.Theselect provideditemwillhavesolidarrowswhiletheunselecteditemshavehollowarrows.Figure3-27shows theResearchProjectslistwiththeprojectQuantumFluxCapacitorselected.InProjectStaff,notethat onlystaffmembersworkingontheQuantumFluxCapacitorappear.Similarly,clickingthedoubleheadedarrowbeforeanyotherprojectfiltersthestafflisttodisplayonlythestaffforthatproject.
Figure3-31.FilteringstaffbyProject
181
CHAPTER3■CREATINGCONTENTPAGES
EditingPageswithCheckOutandCheckIn Inthefirstportionofthischapter,IdidnotmentiontheneedforCheckOutorCheckInwithregardsto weborwikipages.However,justlikedocumentsinadocumentlibrary,youneedtobeconcernedabout lockingyourwebandwikipageswhileyoueditthem.Let’ssayyouopenawebpagetomakechanges. Whileyouhaveitopenforanextendedtime,anotherstaffmemberopensthesamewebpagetomake changes.Whoeversavestheirchangesfirstlosesbecausethesecondpersontosavethepagecould overwritethechangessavedbythefirst. Actually,thesecondpersontosavetheirchangesreceivesthedialogshowninFigure3-32.
Figure3-32.SaveConflictnotice Ofcourse,justopeningtwocopiesofthepageandattemptingtomergechangesmanuallycanbe problematic.Afterall,howeasilycanyouspotallofthedifferencesbetweenthetwopageversions? Chancesaregoodthatyouwillmisssomeofthechanges. Sowhatcanyoudotoprotectyourwebpagewhileyouhaveitopenforediting?Youcheckthepage outjustasyoudowithdocuments.DependingonwhetheryourSharePointadministratorhas configuredyourlibrarytocheckoutpagesautomatically,youmaywanttoperformthecheckoutasa separatestep,asshowninFigure3-33.Openthepagelibrary,usethedrop-downmenuforthepageyou wanttoedit,andmanuallyselecttheCheckOutoption.
Figure3-33.Manuallycheckingoutwebpagesbeforeediting
182
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-33showstheoptionsavailablefromthedrop-downmenuwhenyouviewyouravailable pagesinapagelibraryinapublishingsite.Inthisparticularcase,supposethesitedoesnotforceacheck outbeforeopeningthepageforediting.Ifyouwanttoeditthepagesafelyanddonotknowhowlongit willtakeyoutoeditit,youneedtoselecttheCheckOutoptionfirstbeforemanuallyeditingthepage. Thisgivesyouexclusiverightstoeditthepageaslongasyoukeepthepagecheckedout.Ifyouhave MicrosoftOfficeSharePointDesignerinstalledonyoursystem,youcanusetheoptiontoedityourpage viathistool.IfyouclickthepagenamefromthelibrarytoopenthepageandthenclicktheDocuments tabtoopentheDocumentsribbon,youcanstillcheckthepageoutbyclickingtheCheckOutbuttonin theOpen&CheckOutgroupoftheDocumentsribbon. Notethatotheroptionsavailableinthisgroupincludetheoptiontocheckinapagethatyou previouslycheckedout.Youmustcheckinapagebeforeotherscaneditthepage. Youcanalsodiscardacheckout.Perhapsyouopenedthepagetochecksomeofthecontent propertiesbutdidnotmakeachange.Alternatively,maybeyoumadeabigmistakeeditingthepageand simplywanttoreverttothelastsavedversionofthepage.Inthesecases,discardingacheckoutcancels anychangesyouhavemadetothepagesinceyoucheckeditout. Whenyoucheckoutawebpage,thepageiconbeforethenameinthelibrarydisplaysasmallbox withagreenarrowinit,asshowninFigure3-33nexttotheCheckOutoption.Ifyouattempttoopen andeditachecked-outpage,youwillgetayellowwarningbannertellingyouthatyouareviewingthe checkedinreadonlyversionofthepage(seeFigure3-34).Italsotellsyouwhohasthepagecheckedout exclusively.
Figure3-34.Warningthatyoucannotsavecontentchangestoachecked-outpage Earlierinthissection,ImentionedthepossibilitythatyourSharePointadministratormayhave configuredthesitetocheckoutpagesautomaticallywhenyoueditthem.Toseehowshedoesthat, returntothePageLibraryandselectLibrarySettingsfromtheLibraryribbon.ThenontheList Settingspage,clickVersioningSettingsundertheGeneralSettingsgroupofoptions.Theresulting page,showninFigure3-35,hasfoursettingsgroups.
183
CHAPTER3■CREATINGCONTENTPAGES
Figure3-35.SettingyourPageLibrarytorequirecheckoutofeditedpages Thefirstgrouphasasinglesettingthataskswhetheryouwantsomeonetoapproveallnewand changeditems.WhenyouselectYestothissetting,youmustselectanoptionfromtheDraftItem Securitygroup.Whenyourequireapproval,SharePointplacesallnewandediteddocumentsindraft mode.Whileindraftmode,youmaynotwantvisitorstoyoursitewhohaveread-onlyrightstoseethe page.Perhapsyouwanttoallowanyonewitheditrightstoviewtheneworchangedpages,evenifthat persondidnotcreatethechangesornewpages.Thissecuritymoderepresentsacollaborationmodeto editing.Inthemostrestrictivemode,SharePointlimitsaccesstonewandchangedpagestouserswho haveapprovalrightssothattheycanapprovethepages.Ofcourse,inanyofthesesecuritymodes,the personwhomakesthechangesorcreatesthenewpagehasrightstoviewandfurthereditthepage. Goingbacktothesecondsettingsgroup,DocumentVersionHistory,theSharePointadministrator candefinehowmanyversionsofapageSharePointshouldretain.Thenextsectiondiscussesversionsin moredetail. Finally,thelastgrouponthesettingspage,RequireCheckOut,allowstheSharePoint administratortorequirecheckoutofpagesbeforeyoucaneditthem.Whenset,thisoptionchecks whetheryoufirstcheckedthepageoutbeforeyouopenitforediting.Ifyouattempttoeditapage withoutfirstcheckingthepageout,SharePointdisplaysthedialogboxshowninFigure3-36.
184
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-36.Thedialogboxrequiringcheckout,asseenbyatraditionalOfficeclient IfyouareusingaMicrosoftOfficeWebAppinsteadofthetraditionalOfficeclientapplication,your screensandmessagesmaydifferfromtheonesshowninthisbookwhichfocusontheOfficeclient applicationsonly.Forexample,thissamemessageappearsasshowninFigure3-37whenusingOffice WebApp.
Figure3-37.Thedialogboxrequiringcheckout,asseenbyOfficeWebApp IfyouclickOKinthisdialogbox,SharePointautomaticallychecksoutthepageandopensitfor editing.Whenyoucompleteyourchanges,remembertocheckyourchangesbackin.Ifyouforgetto checkyourpagesin,otherstaffmemberscannoteditthepage.Inaddition,contentapproverscannot approvethepageandmakeitavailabletositereaders.Ofcourse,ifyouhaveadministratorrightstothe site,youcanoverridethecheckoutofsomeoneelse.However,usethispoweronlyasalastresort,asit causesthepersonwhohadthepagecheckedouttoloseherchanges.
TrackingPageVersions Bydefault,SharePointdoesnotactivateversioning.Inversionlessmode,everychangetoapageupdates thecurrentversionofthepage.Thismodeusesthesmallestamountofstoragespaceforyoursite’s pages.Whetheryourlibrarymaintainsversioningforyourpagesornot,allvisitorstoyoursitecanview thecurrentmajorversionand,dependingontheDraftItemSecuritysetting,theymayseeminor versionsofyourpageunlessyourequirecontentapproval.Onlybyusingcontentapprovalcanyou guaranteethatpagesunderrevisionremainhiddenfromyoursitevisitorsuntilyousubmitthepagefor approvalandacontentapproverpublishesthepage.
185
CHAPTER3■CREATINGCONTENTPAGES
IfyourSharePointadministratordecidestoallowSharePointtosaveversionhistories,hemust decidewhethertoretainonlymajorversionsorbothmajorandminorversions.Majorversions representpagescheckedbackinandapproved(ifcontentapprovalisrequired).Minorversions representpagescheckedbackinbutnotapproved.Youcanthinkofminorversionsasintermediate modificationsordraftstoapagebecauseeithermultiplepeoplehavemademodificationsorbecause youcheckedinyourchangesmorethanonceasyouworkedonyourchanges.Inanycase,ifyoudecide tokeepversions,youcanlimitthenumberofversionsSharePointstores.Keepinginmindthateach versionusesstoragespace,youmaywanttolimitthenumberofbothmajorandminorversions.In Figure3-35,theSharePointadministratorhasconfiguredSharePointtostoreonlythelastthree approvedversions(majorversions)andonlytheminorversionssincethemostrecentmajorversion.In otherwords,itonlyretainscurrentworksinprogressaswellasthelastthreepublishedversions.
PublishingPagestoYourSite Whenyoueditapagewithversioningturnedon,yourchangesmaynotbevisibletoeveryonedepending onhowyourSharePointadministratordefinedtheDraftItemSecurityandContentApprovalsettingsfor yourlibrary.Tobevisibletoeveryone,youmustpublishyourpages.Ifyoursitedoesnotuseversioning andapproval,SharePointpublishespagesbydefaultwhenyoucheckthembackin. Ifyoursiteusesversioning,SharePointpublishesonlymajorversionsofpages.However,ifyoursite alsorequiresapproval,checkinginapagetosaveyourchangesfromyourcurrentsessiondoesnot necessarilymakeitvisibletoanyoneotherthanyourselfanduserswithapproverrights.Therefore,ifyou checkinapagebutstillhavemoreworktodoonit,youshouldeitherassignitthenextminorversion numberorreusethecurrentminorversionnumberifthepagealreadyhadaminorversionwhenyou openedittoedit.Keepinmindthat,ifyoureusethecurrentversionnumber,youcannotbackoutyour changesbymerelyrestoringthepriorversions.Ifyouexpecttomakefurtherchangesbeforepublishing yourpageorifyouexpectothermembersofyourteamtomakechanges,youshouldcheckthepage backinusingaminorversionnumber.Ifyourcheckincompletesthechangesyouwanttomakebefore publishing,savethechangeswiththenextmajorversionnumber.Nomatterwhetheryouintendto checkthepageinasamajororminorversion,SharePointtrackstheversionsofthepageand automaticallyassignsthenextavailablemajororminornumberforyou. Perhapsyoudonotneedtokeepintermediateversionsbetweenmajorchangestothepage.You couldaskyourSharePointadministratortoturnoffminorversioning.Thisguaranteesthatevery checked-inversionisamajorversion. YoucanalsoturnoffallversioningifthePageLibraryisinformalandyoudonotneedtosaveeach version.Thisselectionsavesstoragespacerequiredbyyoursite.However,ifyoueverneedaprior versionofthepage,youmaybeoutofluckunlessyourSharePointadministratorcanrestoreonefroma backupcopyofthedatabase.Retrievingpagesfromabackupcopyofthedatabaseisatime-intensive task.Ifyoudothistoooften,youmaydiscoveryourSharePointadministratorhidingunderherdesk whenshehearsyoucomingtowardheroffice. Topublishyourmostrecentpageupdate,youmustassignthenextmajorversionnumbertoit whenyoucheckitin.Tocheckinyourpage,openthePageLibrary.NoticethattheApprovalStatus valueforthepageyoujustcheckedinisDraft.Thisstatusindicatesthatsomeonemodifiedthepage sinceitslastapprovedversionbutthattheydidnotsubmitthenewversionforreviewandapproval. Next,right-clickonthepage.SelectCheckInfromthedrop-downlistofoptions.Figure3-38shows theCheckindialogbox.Noticethat,inadditiontoassigningyourupdatedpageeitheraminorormajor versionnumber,youcandeterminewhetheryouwanttokeepthemodifiedpagecheckedout,butonly ifyousavetheupdatedpageasaminorversion.
186
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-38.Checkinginamodifiedwebpage Anytimeyoucheckapagebackin,youhavetheoptionofaddingcommentstotheversion.Youmay wanttousecommentstodocumentwhomadethechangeandwhenandprovideachangesummary. Ifyouchoosetoassigntheupdatedpageaminorversionfornow,youcanpublishamajorversion laterwithoutmakingchangesbygoingtoSiteActions➤ViewAllSiteContent.Openthelibrary,open thedrop-downmenuforthepageyouwanttopublish,andclickPublishaMajorVersion.When publishedthisway,youstillhavetheoptionofaddingcomments,asshowninFigure3-39.
Figure3-39.Addingacommentwhenpublishingamajorversion
187
CHAPTER3■CREATINGCONTENTPAGES
Notethat,ifyourlibraryrequiresapprovalofmajorchangesbeforethepubliccanviewthem,your pageisstillnotvisibletootheruserseventhoughyoujustsavedthepageasamajorversion.ClickOKto finishcheckinginyourpage.WhenyoureturntothelibrarylistingasshowninFigure3-40,noticethat SharePointupdatestheApprovalStatuscolumnfromDrafttoPending,indicatingthatyouhavesaved amajorversionofthepagebutthatitstillneedsapprovalbeforeotherscanseeit.
Figure3-40.PagescheckedinasmajorversionshaveastatusofPending. Toapprovethepage,youneedtohavethesiteadministrator,siteowner,oranotheruserwith approvalrightsopenthePageLibrary.HecanthenclicktotherightofthepagenametoopenthedropdownmenuforthepageandselectApprove/Reject.Clickingthisoptiondisplaysthepageshownin Figure3-41.
Figure3-41.Approverscanapproveorrejectamajorversion.
188
CHAPTER3■ CREATINGCONTENTPAGES
Asyoucanseeinthisfigure,approvershavethreepossibleactionstheycanselectonthisrequest: •
Approved:Thisoptionmakesthenewestpageversionvisibletoallusers.
•
Rejected:Thenewestpageversiondoesnotbecomepublic.Ifthepagehasa previouslyapprovedversion,thatversionremainsthepublicversion.
•
Pending:Thepageremainsinitscurrentsecuritystateandisnotpublished.The approvertypicallyusesthisoptionwhenaskingforfurtherclarificationonthe change.
Nomatterwhatoptiontheapproverselects,shecanleaveacomment.However,approversshould definitelyusecommentswhenrejectingapageorsendingitbackpendingadditionalclarificationor rework.WhentheapproverclicksOKonthispage,SharePointexecutesthepageaction,changingthe statusofthepageinthePageLibrarytoApproved,Rejected,orPendingbasedontheselectionmade. IfyoulookattheversionhistoryforthispageasshowninFigure3-42,you’llseethatSharePointlists anewmajorrelease(2.0)afterapprovingthepage.Italsoremovesalltheminorreleasesfromversion1.0 becausetheversionsetupdefinedinFigure3-35onlyrequiresSharePointtosaveminorreleasesforthe currentmajorrelease.
Figure3-42.Theversionhistoryforapagecantellyouwhomadeeachchangeandwhenshemadeit.
■TipIfyouhaveSiteOwnerrightsandcanmanagethesitehierarchy,youcanalsousetheManageContentand StructureoptionfromtheSiteActionsmenu.ThisoptiondisplaystheSiteContentandStructurepagewhich showsyoutheorganizationofyoursite.PerhapsevenmoreimportantaretheotheritemsintheViewdrop-down fromtheheaderontherightside.Thisdrop-downdisplaysseveraladditionalreportsyoucanrun,includingthe generationofalistofdocumentsandpagescheckedouttoacertainperson,documentsandpagespending approval,alldraftdocumentsandpages,andmore.
189
CHAPTER3■CREATINGCONTENTPAGES
RecoveringAccidentalDeletionswiththeRecycleBin WhenyoudeleteapagefromyourPageLibrary,SharePointpromptstoconfirmyourdesiretodeleteit. Ifyouonlyhadtoworryaboutyourownaccidentaldeletions,thisdialogboxmayseemlikemorethan enoughprotectionforyourpages.However,youprobablyhaveseveralpeoplewitheditrightsonyour site.Insomelargeorganizations,youmayhavedozensofpeoplewitheditrights,perhapseven hundreds.Sowhathappenswhentheydeleteapagebecausetheydon’tthinktheyneedit,andit’sa pageyouworkedonforhoursandforwhichyouhavenootherbackup?Isupposeyoucouldreadthem theriotact,otherwiseknownascorporatepolicy.Ofcourse,iftheysithigherintheorganizationthan you,thatcouldlimityourcareerpotential. BeforeIshowyouwhathappenswhensomeoneelseaccidentallydeletesyourpage,let’sseewhat happenswhenyouaccidentallydeleteoneofyourownpages.SharePointprovidesasafetynet. SharePoint2010supportsaRecycleBin,which,liketheRecycleBinonyourdesktop,temporarilystores deletedfiles.Forexample,ifyouweretodeleteyourOwlpagefromtheWebPagesLibrary,ratherthan rantandraveabouthavingtorecreatethepage,thegoodnewsisthatyoucanrecoverthepagewithjust afewmouseclicks.BeginbyclickingtheRecycleBinoptionatthebottomoftheQuickLaunchmenu ontheleftofthePageLibrarypage.TheRecycleBin,showninFigure3-43,displaysalistingofthe documentsyoudeletedwithinthelast30days.
Figure3-43.TheRecycleBincollectsalldeletedobjects. Torecoveradeletedobject,clickthecheckboxtotheleftoftheobjecttoselectit.Thenclickthe RestoreSelectionoptionatthetopofthepage. Whenyoudeleteapage,youdeletealloftheversionsofthatpageaswell.SharePointkeepsall versionstogetherasasingleitemintheRecycleBinsothat,whenyourecoveranobjectfromit, SharePointrecoversallversionsofthatdocument.
190
CHAPTER3■ CREATINGCONTENTPAGES
■TipYoucanaskyourSharePointadministratortochangethelengthoftimeitemsstayintheRecycleBin.She cangointoCentralAdministrationandselectApplicationManagement.ThenbyselectingGeneralSettingsfrom theWebApplicationsribbon,shecanscrolldowntotheRecycleBinsectionandchangethenumberofdays SharePointkeepsitemsintheRecycleBin.
ThebadnewsisthatonlythepersonwhodeletesthepagecanrecoveritbecausetheRecycleBinis userbased.Therefore,ifsomeoneelsedeletesyourpage,youwillnotseeitinyourrecyclebin.However, SharePointprovidesanescapeclauseforeventhisscenario.Thesitecollectionadministratorscanview allitemsdeletedbyanyonewhentheylookattheRecycleBinviatheSite Collection Recycle Binlink foundattheendofthelastsentenceintheheader(seeFigure3-43).Therefore,allyouneedtodoisgoto thesitecollectionadministratorandaskthemtorestorethefileforyou.Thesitecollection administratorthenseestheSiteCollectionRecycleBinshowninFigure3-44.
Figure3-44.SitecollectionadministratorscanseealldeletedobjectsintheRecycleBin. WhenyouclickontheSiteCollectionRecycleBinlink,SharePointdisplaysascreenthatshowsallof thefilesdeletedwithinthelast30daysbyallusersofthesite.Therefore,asasitecollection administrator,youcanrecoverfilesdeletedbyanyonebyselectingthecheckboxbeforethefilename andthenclickingtheRestoreSelectionoptionintheheader.Youcanalsodeterminewhodeletedthe fileshouldthatbeimportanttothepersonrequestingyoutorecoveralostfile.Finally,noticealsothat youcanclicktheEmptyRecycleBinoptiontodeleteanyfilesintheRecycleBinpermanently.Ifyoudo this,youcannotrecoverthedeletedfileswithoutresortingtoabackup.
TheShareandTrackFeatures SharePoint2010pageshaveagroupoffeaturesintheDocumentsandtheLibraryribbonsthatallowyou toshareandtrackitemfromalibrary.OptionsonthisribbonincludefeaturesliketheAlertsandRSS
191
CHAPTER3■CREATINGCONTENTPAGES
Feeds(seeFigure3-45).Italsogivesyoutheabilitytoe-mailalinkforthecurrentpageorjustcopythe linksoyoucanaddittoahyperlinkonanotherpage.
Figure3-45.Sharingandtrackingoptionsforpagelibraries
E-mailaLink Oftenyouneedtoreferapage,adocument,oralisttooneofyourcolleagues.Youcouldcopytheentire textandpasteitintoane-mail,butthisincreasestheamountofdatayourmailserverhastoprocess, slowsthemailservicedown,andtakesupadditionalstoragespaceasthesameinformationgetsstored multipletimes.Perhapsthemostimportantreasonforsendingalinktothepageordocumentas opposedtocopyingthetextisthat,bysendingalink,thecontenteveryoneseesisalwaysthemost current.What’stosaythat,assoonasyoucopiedthecontentsofapageordocumenttosendtoafriend, theownerofthatinformationdoesnotgooutandupdateitwithnewinformation? Happily,SharePoint2010makesiteasytosendalinkfromthecontentofyourchoice(page,list,or item)byusingtheE-mailaLinkoptionthatappearsintheShare&Trackgroupofmanyoftheribbons. Selectingthisoptionopensanewe-mailmessagewiththelinkofthecorrespondingpage,library,list,or itemalreadyinthebodyofthemessage. Whenthee-mailrecipientopensthee-mail,hecanclickonthelinktodisplaythemostup-to-date versionofthecontent,evenifheopensthelinkhoursordayslater.E-mailinglinkstocontentmightalso solvetheproblemthatoccurswithinsomecompaniesinwhichattachmentswithspecificextensions mightberestrictedorwhentherearelimitationsonthesizeofattachmentsaddedtoe-mailmessages.
■NoteSharePointcangeneratealinkreferenceforalibrary,list,page,orlibrarydocument.However,itcannot generatealinkreferenceforalistitem.
Alerts Alertsletyousubscribetochangesonapage,deliveredinalistorasanindividualitem.Thisalert subscriptionkeepsyouinformedofchangesbysendingyouane-mail.Youcanevenspecifythe frequencyandthetimethatyouwanttoreceivethosee-mails.
192
CHAPTER3■ CREATINGCONTENTPAGES
Ifyouarethesiteowner,youmightwanttoknowwhensomeoneaddsorchangescontentonthe pagesorlistsforwhichyouareresponsible.Ifyouareoneofseveralcontentcreators,youmightonlybe interestedinchangesthatothersmaketopagesyoucreateormaintain.Ifyouareavisitortoasite,you mightwanttoreceivenoticesviae-maileverytimesomeonepostssomethingnewtoapageorlist. Figure3-46showsthattheAlertMedrop-downmenuintheShare&Trackribbonletsyoucreate alertsforpages,lists,oritems.Ofcourse,thetypeofalertthatyoucancreatedependsonwhatyoulast clickedonwithinthepage.Ifyousimplyopenedthepage,theonlyoptionenabledinthismenuisto createanalertforthecurrentpage.However,ifyouclickinalistdisplayedonthepage,youwillseeboth theoptiontocreatealinktothepageaswellastocreatealinktothelistwhereyouclicked.Finally,if younotonlyclickinalist,butalsoifyouclicktheselectioncheckboxesthatlistscandisplay,youcan subscribeonlytoalertsthataffectthatoneitem.
■NoteToenablecheckboxesforalist,youmustmodifythelist’sviewdefinitionandselecttheoptionAllow individualitemcheckboxesintheTabularViewgroup,resavetheviewdefinition,andapplythatviewdefinition tothepage.
Figure3-46.Definingapagealert Settinganalertismuchmorethanjustdefiningwhetheryouwantanalertwhensomethingchanges onapage,list,oritem.Thereisavastsetofparametersyoucansettodeterminewhichtypesofchanges yousee;youcanevenselectchangealertsbasedonwhomadethechanges.
193
CHAPTER3■CREATINGCONTENTPAGES
Figure3-47showsthedialogSharePointprovidestohelpyoudefineyouralert.Itdividesthedialog intoseveraloptiongroups.First,youmustprovideanameforthealert.Tomanageyouralerts,you shouldconsideranamingconventionthattellsyoualittleaboutthenatureofthealert.Forexample,the alertnamecanbeginwiththenameofthepageorlistthatyouwanttomonitor.However,asyouwillsee inamoment,thatmaynotbeenougheitherbecauseyoucandefinemorethanonealertforanypage, list,oritem.Therefore,youshouldincludetheaction(Add,Modify,orDelete)inthename.Andeven thatmaynotbeenoughthough,sinceyoucancreatealertsforallchanges;foronlychangesmadeby someoneelsetoanypage,list,oritem;orforonlychangesmadetoobjectsyoucreatedorlastmodified. Usingthissystem,possiblenamesforanalertmightinclude: •
Main Site Shared Document Changes Made by Someone Else
•
Company Calendar Additions
Whenyoucreateanalert,youcanincludeanyoneelsewhomyoumaywanttonotifyofchanges. AlthoughyoucanreceivetextmessageviaSMS,manypeopleprefertoreceiveane-mailnotification ofthechanges. Inthesectionwhereyoucanselectthechangetypeforwhichyouwanttobenotified,notethatthe optionsinthissectionchangedependingonwhetheryoucancreateanalertforapage,list,oritem. NotealsothattheselectionsintheSentAlertsforTheseChangessectionaremutuallyexclusivesince theyuseradio(option)buttons.Youcannotchoosetwoormoreoftheoptionsatonetimeforasingle alert.However,youcouldcreatemultiplealerts,oneforeachchangetypeifyouneedalertsondifferent changetypes. Finally,youcanselecthowfrequentlyyouwanttoreceivealerts.Forsomealerts,youmayneedto knowofchangesimmediately.However,otherchangesmaynotbeasimportantandthusadailyoreven aweeklyalertmaybeadequate.Noticethat,whenyouchoosetoreceiveadailyalertsummary,youcan specifythetimeofthedaywhenyouwantSharePointtosendthealert.Foraweeklyalert,youmustnot onlyselectthetimeofthedaytoreceivethealert,butalsothedayoftheweek.Forinstance,youmay wanttoreceiveanalertsummaryofchangesattheendoftheweek,especiallyifyoujustwanttoknowif changeshaveoccurredwithouthavingtogoouttothesiteandconstantlycheckforchanges.
194
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-47.Definingthetypeandfrequencyofanalert
RSSFeeds RSSFeedsarerelatedtoalertsinthattheyalsohelpyoustayawareofnewadditionstolists.InChapter 2,the“CreatingRSSFeedsforYourList”sectioncoveredhowtosetupanduseRSSfeedsfromwithin yourbrowser.AsyoucanseeintheShare&Trackribbon,youcanalsosubscribetoanRSSfeedforthe currentlistorpagelibrarydirectlyfromtheribbonoptions.
195
CHAPTER3■CREATINGCONTENTPAGES
■NoteSharePointgeneratesRSSfeedsonlyforlibrariesandlists.Therefore,youwillnotseetheRSSiconinthe Share&TrackgroupofaPageribbonoraDocumentsribbon,butyouwillseeitintheListandLibraryribbonfor listsandlibrariesrespectively.
TheNoteBoard TheNoteBoardletsyouleaveamessageforthecurrentpage.Yourmessagesarepublic,meaningthat peoplewhocanviewthepagecanalsoviewyourmessages.YoucanusetheNoteBoardto: •
Leaveapersonalopinionaboutthecontentofthepage.
•
Makesuggestionsforadditionalcontent.
•
Referenceotherpagesonthisoranothersitewithsimilarcontent.
•
Ifyouarestilldevelopingyoursitepages,youmightwanttoleaveyourselfsome notesaboutwhatyoustillmustdotofinishthepage.
Tocreateanote,clicktheTags&Notesbuttonfoundontherightsideofyoursite’spageheader area.Figure3-48showsanexampleofthisbuttoninbothacollaborationsite(ontop)andapublishing site(onthebottom).
Figure3-48.Addinganotetoapage ThisbuttonopensthedialogshowninFigure3-49whereyoucanenteryournotes.Inthisdialog, therearetwotabs,oneforTagsandoneforNoteBoard.ClicktheNoteBoardtabifnecessarytoselect it.NoteBoardnotesconsistofplaintext.Theydonotsupportspecialformattingoptions,hyperlinks, tables,orimages.Whenyouhavecompletedyournoteentry,clickthePostbutton.
196
CHAPTER3■ CREATINGCONTENTPAGES
Figure3-49.Addinganotetoapage Whenyoupostanote,anyonewhocanviewthewebpagecanalsoviewthenote.However,onlythe siteownerornotecreatorcandeletethenote.Theabilitytodeletenotesisimportantifyouusenotes duringsitedevelopmenttotracktasksyoumuststillcompleteonthepage.Thenotecreatorcanalso editthenote.Figure3-50showsthedialogimmediatelyafterpostinganote.SharePointlistsrecent notesatthebottomofthedialogandprovidesoptionstoeditand/ordeletethenote.
Figure3-50.Displayingnotesforapagewiththeoptionstoeditordeleteindividualnotes
Tags Youprobablynoticedthatthedialogthatletsyouenteranotealsoletsyouenteratagbyclickingthetag tabatthetopofthedialog.Anoteisafree-formtextentrythatappliestothepage,whileatagismore likealabelattachedtoapagesothatyoucanquicklygroupsimilarpagesbyplacingthesametagontwo ormorepages.Tagscanbeprivateorpublic.Publictagseffectivelyassociatesimilarpagesnotonly withinaSharePointsite,butalsoacrosstheentireInternet,butthisdoesdependonhowconsistently otheruserstagpages.Privatetagstypicallyassociatesimilarpagesmoreaccurately,butgenerallydonot
197
CHAPTER3■CREATINGCONTENTPAGES
associateasmanydifferentpagessincetheyrepresenttagsyoucreateonly.NoticeinFigure3-51that notonlycanyouenterandsaveatag,butyoucanalsouseanoptioninthisdialogtoaddalinktoyour browsersoyoucantagexternalsitesaswell.Whentaggingexternalsites,SharePointtracksthetagtext aswellastheURLoftheexternalsitesoyoucangroupsimilarpagesbothwithinyourSharePointsite andwithinexternalwebpages.
Figure3-51.Addingatagtoapage ToviewyourTagsorNoteBoardentries,youcanopenMyProfilefoundinthedrop-downfrom yournameintheupperrightcornerofthescreen,asshowninFigure3-52.
Figure3-52.Personaldrop-downmenuoptions Yourprofileconsistsofsixtabbedpagesincluding:Overview,Organization,Content,Tagsand Notes,Colleagues,andMemberships.ClickontheTagsandNotestab.Figure3-53showsaviewofthe tagsandnotesinyourMySite.Usingtheoptionsintheupperleftofthispage,youcandisplayallyour tags,allyournotes,orboth.Youcanalsochoosebetweenviewingjustyourprivatenotesandtagsand yourpublicnotesandtags. Immediatelybeneaththeselectionoftypeontheleftsideofthepage,youcanselecthowyouwant tosortyourtagsandnotes.Typically,yousorttagsalphabeticallysothatyoucanquicklyfindallthe entriesforaspecifictag.
198
CHAPTER3■ CREATINGCONTENTPAGES
Theactivityforthetypeoftagornoteselectedappearsontherightsideofthepage.More specifically,theactivitydisplayedcorrespondstojustthecurrentmonth.Arrowsoneithersideofthe month/yearletyouviewtheactivityforthepreviousornextmonth. Eachtagornotebeginswithalinktothepageassociatedwiththattagornotefollowedbyits creationdate.Youalsohavealinktoviewrelatedactivities.Ifyoucreatedthetagornote,youalsohave theoptiontodeleteit.
Figure3-53.TagsandNotespagefromyourMySite
Summary ThischapterlookedatcreatingwikiandwebpartpageswithinSharePoint.Bothpagetypessupport similarfunctionalitysoyoushouldhavenotroublemovingfromonestyletotheotherdependingonthe typeofsiteyouarebuilding.Ifyoursiteonlysupportscollaboration,youmaypreferthewiki-stylepage. Ontheotherhand,ifyoupublishpagesofinformation,evenwithinacollaborationsite,thatyoudonot wantotherstochange,youmaywanttousewebpagesandputthosepagesinaseparatelibrarywith differentaccessrights. Youstartedbylookingatthewebpartpage.Thesepagescontainoneormorewebpartzonesto whichyoucanaddwebpartsthatSharePointprovides.Twowebpartsinparticularthatyouexamined werethecontenteditorandimagewebparts.Inbothcases,youmustbecarefulwhenenteringtheURL oftheimageorhyperlinksite,becauseyoumustdirectlyenterthevaluewithoutthehelpofabrowse feature.Furthermore,youmuststoreyourimagesinapicturelibrary.Youthensawthatyoucouldtakea Worddocumentandcopythetextdirectlyintothecontentareaofawebpagewhilepreservingmostof
199
CHAPTER3■CREATINGCONTENTPAGES
theformattingofthepage.Infact,copyingatablecreatedinWordmaybethebestwaytocreatea formattedtable.Youalsosawthatyoucouldtakeanyofthelibrariesorlistsyoucreatedusingtheskills coveredinChapters1and2andaddthemtothepageaswell.Afteraddingtwoormoreliststoaweb partpage,youlearnedhowtodefineamaster-detailrelationshipbetweenthewebpartsonaconnecting field.Afteryouhavedefinedsucharelationship,userscanselectarecordfromthemasterlisttofilter therecordsdisplaysinthedetaillisttothoserelatedtothemasterrecord. Thenyoucreatedsimilarpageasawikipage.Yousawthatwithwikipages,addingcontentdoesnot requireaseparatewebpartandthatyoucanaddlinkstootherwikipagesdirectlyintothecontentalso withoutusinganotherwebpart.Infact,youcanlinktonotonlyotherwikipages,butotherlists, libraries,andevenwebpages. Whenworkingwitheitherwikiorwebpartpages,youshouldusetheCheckOutandCheckIn featuresasdescribedwhenworkingwithlibrariestoprotecttheintegrityofyourchangesuntilyouare done.Youcanalsousepageversioningtotrackchangestoapagesothatyoucanreturntoaprior versionofthepagebysimplyselectingitfromtheversionhistoryofthepage.Whenworkingwith versions,thetotalstoragerequirementofyourpagegrowswiththenumberofversionsyouhave.You canlimitthisgrowthbyspecifyingthenumberofmajorandminorversionsofapageyouwanttoretain. Youcanevendeterminewhocanviewminorversions.However,mostpeoplelimittheviewingofminor versionstoonlythosepeoplewithcontentcreationrightsandapprovers(ifapproversareused). Youlearnedaboutthevalueofapprovingcontentchanges.Ifyourlibraryhascontentapproval turnedon,evensavingamajorversionofthepagedoesnotmakeitvisibletotheaveragesitevisitor. Rather,thepagemustfirstbereviewedbyanapproverwhomustapprovethepagebeforeitcanbe publishedtoyoursite.Contentapprovalappearsmostfrequentlyonpublishedsitesusedaspartofan intranetorevenanInternetinwhichthedepartmentorcompanywantstoensurethatthecontentis accurateandappropriatefordistributiontoothers. YouthensawthattheRecycleBinencounteredpreviouslyforlibrariesalsoworksforwebpages.It allowsyouorthesiteownertorecoveraccidentlydeletedpagesforupto30daysaftertheyhavebeen deleted,dependingonhowyourSharePointadministratorhasconfiguredyoursite. Finally,youlookedatsomeofthesocialenhancementstopages—theabilitytoaddtagsandnotes topages.Taggingofpageshasbecomeincreasinglypopular,andpublictaggingcanhelpassociateyour pageswithothersimilarcontentpages.SharePointprovidesawebpartcalledtheTagCloudwebpart thatcandisplaythisrelationship. ThisintroductiontoSharePoint,providedinthefirstthreechapters,doesnotcovereverythingyou candowithlibraries,lists,andpages,butitlaysaframeworkforthenextgroupofchapters,whichfocus onhowtoworkwiththeseobjectsusingseveralMicrosoftOfficetools.
200
CHAPTER 4
■■■
Using Your Document Library with Microsoft Office Chapter1showedyouhowtouseMicrosoftWordwithyourSharePointdocumentlibrary.However, SharePointdoesnotlimityoutoWorddocuments.YoucanstoreotherMicrosoftOfficedocumenttypes inyourdocumentlibraryincludingExcel,PowerPoint,andOneNote.Furthermore,SharePointdoesnot limityoutoMicrosoftOfficetools.YoucanstorealmostanythinginSharePoint,withtheonlylimitation beingthattheapplicationstheydependonmaynotintegratewithSharePointaswellasOfficedoes. However,becauseofSharePoint’senhancedintegrationwithOffice2010,mostofthediscussion fromthispointforwardfocusonOffice2010unlessotherwisestated.Notethatmostfeaturesdiscussed hereworkthesameacrossallOffice2010tools. SomeofthetopicsdiscussedinthischapterapplyspecificallytoWord2010documentsandmay varyconsiderableifoneusespriorversionsofOffice.IfyoustilluseOffice2007,youwillbehappyto knowthatmuchofwhatIcoverherealsoappliestothatversion.Unfortunately,youshouldnotexpect theintegrationwithearlierversionsofOfficetobeasstrongaswithOffice2010orevenOffice2007.Even withearlierversions,though,youcanstilluseSharePointasafilestorefordocuments.
OpeningaSharePointDocumentfromWithinMicrosoftOffice BeginningfromMicrosoftOfficeWord,yourfirstchallengemightbehowtoaccessSharePoint documentlibrariesfromwithinWord.IfthedocumentyouwanttoopenexistsonaSharePointsitethat youpreviouslyvisitedandyouareusingWindowsXPstill,youmayseeareferencetothatlibraryinyour My Network PlacesfolderofWindowsExplorer.Unfortunately,neitherWindowsVistanorWindows7 automaticallyaddsreferencestoplacesyouvisitinSharePointinitsequivalentofMyNetworkPlaces. However,youcanusemappeddrivesinVistaandWindows7topointtoyourSharePointsite/library. FormoreinformationonsettingupyourMyNetworkPlacesinWindowsXPormappeddrivesinVista andWindows7,seethe“ReferencingyourSharePointSitefromMicrosoftOffice”sidebar.Fora moment,let’sassumeyoustilluseWindowsXP.OpentheMy Network Placesfoldertodisplaythefiles storedthereasshowninFigure4-1.Asyoucanseeinthefigure,Ialreadyhaveareferencetositepages onmyVanguardserver.
201
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-1.OpeningaSharePointdocumentfromWindowsExplorer
Referencing Your SharePoint Site from Microsoft Office If you are using Windows XP InWindowsXP,youcaneasilyaddtothereferencesinMyNetworkPlacestoincludeonethatpointstoa SharePointsiteorlibrarybyfollowingthesesteps:
202
1.
ClicktheStartbuttonandthenselectMyNetworkPlacesfromtheStartmenu.
2.
Intheleftnavigationpane,clickAddanetworkplaceintheNetworkTasks group.
3.
OnthefirstpageoftheWelcometotheAddNetworkPlaceWizard,justclick Next.
4.
OnthepagethatasksWheredoyouwanttocreatethisnetworkplace?Select ChooseanothernetworklocationandclickNext.
5.
EnterthenameoftheURLforthesiteingeneralorthespecificlibraryyouwantto reference.UseasecondwindowtoopenthesiteorlibraryandcopytheURLfrom theaddressbar.ThenpastetheURLinthedialog’sfieldinthefieldlabeled Internetornetworkaddress.ClickNext.
6.
Onthenextpageofthewizard,enterauser-friendlynameandclickNext.
7.
Onthelastpageofthewizard,clickFinish.
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
YoucannowusethisentryinNetworkPlacestonavigatequicklytoyoursiteorlibraryfromwithinan applicationorevenWindowsExplorer.
If you are using Vista or Windows 7 ToaddamappeddrivetoVistaorWindows7,followthesesteps: 1.
OpentheStartmenuandchooseComputer.
2.
ClicktheMapNetworkDriveoptionintheToolsdrop-downmenulocatedatthe topofthewindow.
3.
Inthedialogthatappears,acceptthesuggesteddriveletterorselectadifferent driveletterfromthedrop-downlist.
4.
Inthefoldertextbox,entertheURLoftheSharePointsiteorlibrary.Onewaytodo thisistoopenabrowserwindowandnavigatetothesiteorlibrary.CopytheURL fromtheaddressbarandpasteitinthefoldertextbox.Inmycase,Iwouldenter http://vanguard.
5.
IfyouneedtouseadifferentusernametoconnecttotheSharePointserver,click thelinkinthelineConnectusingadifferentusernameandsupplytheuser nameandpasswordtoconnecttoyourSharePointsite.
6.
ClickFinishtocompletethemappingdefinition.
WhileyoucanusethemappeddrivetoreferenceyourSharePointsitewhenyouareinanapplicationand needtoopenorsaveadocument,youcannotuseitasyourbrowsertoopenthesite.
How Can Vista Store References to Sites You Visit? SinceVistahasremovedwebfolders,someofthestepslistedhereforXPwillnotworkifyouuseVista. However,withjustafewchanges,youcandovirtuallythesamethinginVista. TocreateanewInternetshortcut,followthesesteps: 1.
Useyourbrowsertonavigatetothesiteyouwanttoquicklyaccessinthefuture.
2.
CopytheURLtoyourclipboard.
3.
ClicktheWindowsStarticonandthenclickyourprofilename.Thisopens WindowsExplorertoyourpersonalprofilefolder.
4.
Ontherightsideofthefoldercontents,right-clickablankareaandcreateanew foldernamedSites.
5.
Openthenewfolderbydouble-clickingit.
6.
Right-clickablankareaandcreateanewshortcut.
7.
PastetheURLfromthewebsiteintothetextboxandclickNext.
203
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
8.
ProvideanamefortheshortcutandclickFinish.
Next,toaddthisfoldertoVista’staskbarsoyoucaneasilyaccessitscontents,followthesesteps: 1.
DisplayVista’staskbarandright-clickablankareaofthetaskbar.
2.
NavigatetoToolbarsandselectNewToolbar.
3.
ClicktheDesktopfolderintheleftpane.
4.
Openyourprofilefolder.
5.
LocatethefolderSitesyoucreatedearlier.
6.
ClickSelectFolder.
Now,youcandothesamethingforotherwebsitesinVistaandWindows7.Fromanywebsite,clickthe iconfoundatthebeginningoftheaddresstextboxanddragitintotheSitestoolbarinyourtaskbar.When youreleaseyourmousebutton,VistaaddstheshortcuttotheSitestoolbar.Thenexttimeyouopenthe Sitestoolbar,thenewshortcutappears. LookingatyourSharePointdocumentfoldersfromwithinWindowsExplorerhasseveral advantages.First,youcanrenamedocumentsinthelibrary,movedocumentsfromonelibraryto another,makecopiesofadocumentfromonelibrarytoanother,andevendeletedocumentsfromthe library.FromasingleWindowsExplorerinstance,youcancopyandpastedocumentsfromyourlocal harddriveoranynetworkdriveyoucanaccesstoaSharePointlibrary.Ofcourse,youcanalsocopyfiles fromthatlibrarybacktoyourlocalharddisk.However,ifyouopenasecondWindowsExplorer instance,youcaneasilydraganddropfilesfromonefoldertoanother,eventwodifferentSharePoint folders.Finally,toeditanyOfficedocumentstoredinaSharePointlibrary,justdouble-clickit. AlltherulesabouteditingdocumentsdiscussedinChapter1applytodocumentsopeneddirectly fromWindowsExplorer.Ifthedocumentrequiresyoutocheckitoutbeforeyoucanmodifyit,youwill seeabaratthetopofthedocumentaskingyoutocheckoutthedocument,asshowninFigure4-2.
Figure4-2.OpeningaSharePointdocumentfromMicrosoftWord2010
204
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Ofcourse,ifyouonlywanttoreadthedocumentorprintit,youdonotneedtocheckitout.Should youdecidetocheckoutthedocumenttoeditit,youhavetheoptionofeditingthecopywithin SharePointdirectly,oryoucancopythedocumenttoyourlocalcomputerandedititoffline,asshownin Figure4-3.Ifyouonlyhaveaquickchange,itmaynotseemtomakesensetodownloadthedocument, makethechange,andthenuploadthedocumentagain.However,bydownloadingthedocument,you candisconnectfromtheSharePointsite,editthedocument,saveit,andthenreconnecttoSharePointto saveyourchangeslater. WhywouldyouneedtoeditadocumentafterdisconnectingfromyourSharePointsite?Perhapsyou canonlyconnecttoyourSharePointsitefromyournetworkattheoffice.Toworkonthatdocumentat homeortotakeitwithyouonthatlongcross-countryplaneflight,youneedalocalcopyofthefileon yourharddisk.
Figure4-3.DefiningtheSharePointDraftsfolder
■TipIfyoudonotseeFigure4-3whenyouopenadocumenteventhoughitrequirescheckout,itprobably meansthatyouhaveconfiguredyourcopyofWordtostoredraftsontheserver.Notethatthiswillpreventyou fromworkingoffline.YoucanchangethisbygoingtoWordOptionsdescribedbelow.
NoticethelinknamedSharePointDraftsinFigure4-3.Ifyoupointtothislink,youcanseeinthe pop-uptooltipthecurrentfolderonyourharddrivewhereyourcomputerstoresSharePointdrafts.By default,WindowsXPcreatesafoldernamed :\Documents and Settings\YourUserId\MyDocuments\SharePoint Drafts\ InWindowsVista,Windows7,andWindows2008SharePointcreatesalocaldraftsfolderat :\Users\Your_Profile_Name\Documents\SharePoint Drafts\ Insomeoftheseoperatingsystems,youmaysee\MyDocuments\insteadof\Documents\when youbrowsetothemusingWindowsExplorer.However,theServerdraftlocationinMicrosoft’sOffice productswillsavethelinkas\Documents\. Ifyouwanttodefineadifferentlocationforyourdrafts,clickthesecondlinkonFigure4-3,Offline EditingOptions.ThislinkopenstheWordOptionsdialogbox(becausethedocumentisaWord document),showninFigure4-4.IntheSavepageofthisdialog,findthesectionOfflineeditingoptions
205
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
fordocumentmanagementserverfiles.Inthissection,selectwhethertosavechecked-outfilestoa serverdraftlocationonyourlocalcomputeroreditthemontheSharePointserverbyselectingthe secondradiobuttonTheOfficeDocumentCache.Ifyouchoosetousealocalserverdraftlocationand wanttochangethedefaultlocationdefinedabove,youmustspecifyitslocationintheServerDrafts locationtextboxorusetheBrowsebuttontonavigatetoafolderyouwanttouse.
■TipYoucanalsogettothisdialogbyselectingOptionsfromtheFiletaband,intheresultingdialog,select Saveintheleftpanel.
Figure4-4.Definingofflineeditingoptions
■TipIfyouhavenotalreadydoneso,nowwouldbeagoodtimetodefineafrequencyforsavingan AutoRecoverycopyofyourdocumentasyouworkonit.
Ifyouwanttodefinethesesettingsaheadoftime,youcanopentheoptionsdialogboxforany MicrosoftOffice2010productbyselectingOptionsfromtheFiledrop-downmenu.
206
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
■NoteIfyouareusingOffice2007,youcanfindtheoptionsdialogbyclickingtheOfficebutton.Thenselect OptionsfromtheleftnavigationmenujustaboveExit.
Suppose,however,thatyoudonotseefoldersinWindowsExplorerforyourSharePointlibraries. YoucanstillopenSharePointdocumentsdirectlyfromwithintherelevantMicrosoftOffice2007toolif youknowboththeSharePointsiteURLandthelibrarynames.Figure4-5showstheOpendialogbox fromwithinWord.NoticeintheFilenamefield,youcanenterthenameoftheSharePointsiteURL alongwiththeSharedDocumentslibraryratherthanthenameofafile.
Figure4-5.ReferencingaSharePointlibraryintheOpendialogbox
■NoteYoumustprecedethesiteURLwitheitherhttp://orhttps://,dependingonwhetheryourSharePoint siteusesasecureconnectionornot.Ifyoudonotknowwhichtouse,youcantryboth,oryoucanaskyour systemadministrator.
207
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
DonotchangethecontentsoftheFileoftypefield.Wordfillsinthisfield,aswillmostapplications, basedonthetypesoffilestheapplicationrecognizes.Ifyouchangethisfieldtodisplayotherfiletypes, anyattempttoopenthosefilesmayfail.WhenyouclickOpenwiththeURLofalibraryspecifiedas showninFigure4-5,WorddisplaystheWorddocumentsstoredinthatlibrary,asshowninFigure4-6.
Figure4-6.ViewingtheSharePointlibrarycontentsfromwithinWord Nowyoucanopenanydocumentbydouble-clickingitsname.Youcanalsoclickthedocumentto selectitandthenclickOpen.
EditingandSavingaDocumenttoaDocumentLibrary Intheprevioussection,yousawtwowaystoopenaWorddocumentstoredinaSharePointlibrary withoutfirstopeningaSharePointsite.YoushouldnotethatsecuritydefinedinSharePointforchecking outdocumentsstillappliesevenwhenyouopenthedocumentfromWindowsExplorerorfromwithin Word.Thismeansyoucanonlyopenthedocumenttoedititifyouhaveeditrightsandifsomeoneelse doesnothaveitcheckedout.Rememberthat,whiletheseexamplesuseMicrosoftWorddocuments, thesetechniquesapplytoanyfiletyperecognizedbySharePointandregisteredintheoperatingsystem toaninstalledapplication.
208
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Concurrency Problems Forthosereaderswhoskippedthefirstthreechapters,theimportanceofusingCheckOutandCheckIn featureswheneditingdocumentsderivesfromtheneedtopreventconcurrencyproblems.Concurrency problemsoccurwhentwoormorepeopleeditthesamedocumentatthesametime. Thepotentialforconcurrencyproblemsincreasesasthenumberofusersonthesiteincreases.However, concurrencyproblemsgenerallydecreaseasyousavemorecontenttothesitebecauseanytwousersare lesslikelytoeditthesamedocument.Unfortunately,nostatisticmattersmuchifyouloseyourchanges becausesomeoneelseworkedonthesamedocumentyoudidandhadthehappylucktosavehischanges afteryousavedyours,thusdeletingyourchanges. Word2010offersanewwaytohandleconcurrencyproblemsandallowstwoormorepeopletoeditthe samedocumentatthesametime.Iwilldiscussthisnewfeatureinthe“ManagingMultipleEditorsina Document”sectionfoundlaterinthischapter. WhenopeningdocumentsdirectlyfromWindowsExplorerasdescribedearlier,youreceiveno visualcuesthatsomeoneelsemayhavethefileopenforeditinguntilyoutrytocheckitout.Onthe otherhand,whenyouuseaMicrosoftWord,thefileiconinthetypecolumnoftheOpendialogbox displaysagreenboxwithawhitearrowinthelower-rightcorner,indicatingthatsomeonehasthefile checkedout. Ifyouattempttoopenafilethatsomeoneelsehascheckedout,theFileinUsedialogboxshownin Figure4-7appears.Noticethatthisdialogboxalsotellsyouwhohascheckedoutthefile.
Figure4-7.FileinUsedialogbox YoucanchoosetocontinueopeningthefileinReadOnlymode.Ifyouonlyneedtoviewthe documentorprintit,thismodedoesnotrestricttheseactions.However,ifyoureallymusteditthe document,clicktheNotifybutton.ThisoptiontellsSharePointtonotifyyouwhenthedocument becomesavailable.Whilewaiting,leaveWordopen,althoughitdoesnothavetobetheactivewindow; youcanminimizeitbutyoucannotcloseitoryouwillnotreceivethenotification.Whentheotheruser closesandchecksinthedocument,apop-updialogboxappears,asshowninFigure4-8,notifyingyou thatyoucancheckoutthecurrentdocumentversiontoeditit.
209
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-8.Notificationthatthefileisnowavailableforediting Whenyoufinisheditingthedocument,saveitandclosetheapplicationusedtoeditit.Ifyou checkedoutthedocument,youmustcheckitbackin.Otherwise,itremainscheckedouttoyou,thereby preventingothersfrommakingchangestothedocument.Thecheckoutfeaturesupportsworking exclusivelyondocumentsofflinewhilelettingyouperiodicallysaveyourchangesbacktoSharePoint. However,youshouldnotuseittokeepthedocumentpermanentlycheckedout. Eachofthepreviousexamplesinvolveopening,editing,andresavingdocumentsthatalreadyexist inSharePoint.However,supposeyouwanttocreateanewdocumentandsaveit.Iwilldemonstrate usingMSWordastheapplicationtool,butrememberthatthetechniquesappliedwithoneOffice producttypicallyworkwithothersaswell.
SavingaNewDocument Tobegin,createanewdocumentinWord2010.Forthisexample,callthedocument“HelloSharePoint.” Addingyourowntexttothebodyofthedocumentisoptional.Whenfinished,savethedocumentby clickingtheFiletab.YoucouldsavethedocumentbyclickingSaveandreferencingyourSharePoint documentlibraryjustaswedidintheprevioussectiontoopenaSharePointdocument.However,let’s chooseSharefromtheFilemenuandthenselectSavetoSharePoint,asshowninFigure4-9.This figureshowstheBrowseforalocationbuttonthatappearsifyouhaveneversavedaWorddocument fromwithinWord.ClickingthisbuttonopensthesameSaveAsdialogthatyouwouldhaveseenhadyou selectedSaveAsfromtheFilemenu.IfyouhavepreviouslysavedSharePointdocuments,thisoption appearsandallowsyoutoselectwhereyouwanttosaveyourdocumentwiththeoptionsgroupedin threecategories: •
CurrentLocations:Thiscategoryonlyappearswhenyoubeginbyeditinga documentfromaSharePointlibrary,andthatlibraryappearsasacurrent location.
•
RecentLocations:Thiscategoryshowsallthedocumentlibrarieswhereyouhave recentlysavedfiles.
•
MySharePointLocations:ThissectionreferenceslibrariesinyourMySite.
■TipIfyoupreviouslyusedWordtoatleastopenfilesfromyourSharePointDocumentsfolders,youmayfinda referencetothosefoldersintheRecentPlacesoftheSaveAsdialog.
210
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-9.ShareoptionsintheOfficemenu
SavingaDocumenttoanExistingLibrary Let’scontinuebysavingaseconddocument,calledMySecondDocument,byselectingSaveAsfrom theFiletab.BecauseyoupreviouslysavedadocumenttoSharePoint,youshouldseeareferenceto SharedDocumentsontherightsideofthedialogwhenyouclickonRecentPlacesontheleftsideof thedialog.Double-clickonSharedDocumentstoopentheSharedDocumentslibrary.Nowspecifya filename,suchasMySecondDocument,andclickSaveasshowninFigure4-10.
211
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-10.PreviouslyvisitedSharePointlibrariesonaWindowsXPplatform Noticethatthisdialogopensthespecifiedlibrary,lettingyousaveyourdocumentdirectlyto SharePoint.If,asinthiscase,youhaveanewdocument,makesurethatthenameyouwanttousedoes notalreadyexistintheselectedlibrary.Ifitdoes,MicrosoftWorddisplaysadialogtellingyouthatthe filealreadyexists.Youcanthenreplacetheexistingfile,saveyourfilewithadifferentname,ormerge yourchangesintotheexistingfile. Ifthisisnotthecorrectlibrary,youcansimplyentertheURLforyoursiteintheFilenametextbox todisplayalistofalllibrariesinthesiteaswellasalistofanysubsites.Youcouldthennavigatetothe librarywhereyouwanttosavethedocumentfromaknownsiteURL. Similarly,ifyouhaveneversavedanythingtoadocumentlibrarypreviouslyandthereforehaveno recentlocations,youcaninsteadclickonSavefromtheFilebuttontoagaindisplaytheSaveAsdialog. Asmentionedabove,youcanthenentertheURLforyoursiteintheFilenametextbox.Again,Word showsyoualistofalldocumentlibrariesinthesitewhereyoucansaveyournewdocument. IfyoubeganbyselectingalibraryorenteringtheURLforone,Wordshowsyoualistingofthe documentsinthatlibrary.Unlessyouwanttoreplaceanexistingdocument,specifyanewnameforthe document,andclickSavetoaddyourdocumenttotheselectedlibrary.
WhatIsMetadata? Insimpleterms,metadataisdataaboutdata.WhenyousaveafileinWindowsExplorerandthenview thedirectory,youdonotseejustthefilename.InWindowsXPandmostpriorversionsoftheWindows operatingsystem,WindowsExplorershowsthedatemodified,filetype,andsizeofeachfile.Bydefault, Vista’sWindowsExploreralsoincludesthedatemodified,type,size,andtags.Theseadditionalpiecesof
212
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
informationrepresentmetadataforthefile;thatis,theyprovideyouwithmoreinformationaboutthe file.Inadditiontothesefields,youcanright-clicktheheaderofthedirectorytoseeadditionalavailable columnsormetadatathatWindowsExplorersupports. InVistaandlateroperatingsystemsfromMicrosoft,foldersthatfocusondifferenttypesoffiles mightusedifferentsetsofcolumns.Forexample,ifyouopenafolderthatcontainsmusicfilessuchas MyMusic,youmayseecolumnheaderssuchasName,Artists,Albums,#,Genre,andRating.Aphoto directorymightusecolumnslikeDateTaken,35mmfocallength,Cameramodel,Exposuretime,Focal length,F-stop,andISOspeed.Somemetadatareceivesitsdatavaluesautomaticallysuchasthe ModifiedDate,Type,andSize.However,othermetadataallowsyoutodefineyourownvaluessuchas Tags,Title,andCategories.Infact,therearedozensofdifferentmetadatapropertiesavailableto describethefilesinyourdirectories.Youcanthenusethemetadatatogrouporfilteryourdirectorylists. However,mostpeoplehaveneverusedthembeyondthebasicdefaultproperties.
AddingMetadatatoWordDocuments MetadataalsoexistsindocumentscreatedbymostOfficetoolssuchasWord,Excel,PowerPoint,and others.Theseprogramsallowyoutodefineadditionalpropertiesforyourdocuments. ToaddvaluestothesepropertiesinaWord2007document,clicktheOfficebutton,andthenpoint toPrepare.ClickPropertiesinthemenuthatappears,andWorddisplaysthedefaultpropertiesit supportsinapanelacrossthetopofthedocumentwindow.ClickAdvancedPropertiesinthe DocumentPropertiesdrop-downmenutodisplaytheDocumentPropertiesdialogboxfromOffice. Hereyoucancreatecustompropertiesforthecurrentdocumentandassignthemvalues. Whatifyoudon’tseedocumentmanagementoptionsinyourofficeribbon?InMicrosoftWord 2010,youmaynotseeanyreferencetodocumentmanagementinanyoftheribbonsinitially.However, youcancustomizetheribbontoaddthisfeature.Beginbyright-clickingonablankareaoftheribbon andselectCustomize the ribbon.InthedialogshowninFigure4-11,selectCustomizeRibboninthe leftpanelifnecessary.ThenontherightsideofthepanelyouseetwolistsnamedChoose commands from andCustomize the ribbon.
213
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-11.CustomizingtheRibbon FromtheCustomizetheRibbondrop-down,selecttheoptionMainTabs.AsshowninFigure4-11, thisshowsinthelistbelowthedrop-downalltheavailableribbontabs.YoucancreateaNewTabby clickingthebuttonNewTaboryoucanopenanexistingribbontabbyclickingthesquareboxwiththe plussignbeforetheribbonname. Whenyouopenaribbontab,thefirstlevelofoptionsshowalistofthecommandgroupsorribbon sections.Withanyribbonopen,youcanaddanewcommandgrouporopenthecommandgroupto viewthecommandswithinit.Youcanevenaddnewcommandstoagroup. Inthiscase,thecommandsneededtoopentheDocumentPropertiesPanelalreadyexist.Theyjust havenotbeenaddedtoaribbonyet.YoucanaddthedocumentpropertycommandstotheHome ribbonbyfollowingthesesteps:
214
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
1.
ExpandtheHomeribbonbyclickingontheplussigninthesquareboxbefore itandclickontheribbonname,Home,toselectit.
2.
ClicktheNewGroupbutton,whichcreatesanewgroupnamedNew Group (Custom).
3.
WiththeNewGroupSelected,clicktheRenamebuttonandchangethename toDocument Management.
4.
FromtheChoosecommandsfromcolumn,chooseAll Commands.
5.
Selectanddragthefollowingcommandsfromthelistonthelefttothenew groupDocumentManagementontheright:
6.
•
DocumentManagementServer
•
DocumentPanel
•
DocumentProperty
ClickOKtofinishcustomizingtheribbon.
NowwhenyouopenadocumentinWord2010andopentheHomeribbon,youseethenew DocumentManagementgroupwithitscommandsontherightsideoftheribbon,asshownin Figure4-12.
Figure4-12.UpdatedribbonwithDocumentManagementgroup Withadocumentopen,youcanclickonthecommandDocumentPanelfromtheDocument Managementgroup.Adialogbox,showninFigure4-13,askswhetheryouhaveacustomdocument InformationPanel.WhileIwillskipthisoption,youmaywanttoselectthecheckboxonthebottomof thedialogthattellsWordtoAlwaysshowDocumentInformationPanelondocumentopenand initialsave.Notethat,ifyoudonotselectthisoption,youcanalwaysselecttheDocumentPanelfrom theribbon.
215
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-13.OptionswhenaddingtheDocumentInformationPanel Inafewmoments,theDocumentPropertiespanelwillappearacrossthetopofthedocumentjust belowtheribbon,asshowninFigure4-14.Bydefault,thedocumentpropertiesincludethefollowing: •
Author
•
Title
•
Subject
•
Keywords
•
Category
•
Status
•
Comments
Figure4-14.DocumentPropertiespanelwithinWord2010 Youcandisplaymostofthesedocumentpropertiesascolumnswhenyoudisplayalocaldirectoryof Word2010documentsinWindowsExplorer.
216
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
However,youareinterestedinhowdocumentsinteractwithSharePoint,notWindowsExplorer. TheinterestingpointisthatyoucansurfaceaWorddocument’smetadatawithinaSharePoint documentlibraryascolumnsinthatlibrary.WordpassesthemetadatavaluestoSharePointwhenyou saveadocumentoruploadanewdocumenttoaproperlydefineddocumentlibrary.
■CautionIfyouaddthecolumnsasdescribedbelowtoyourdocumentlibraryafteryouuploadyourWord documents,SharePointcannotpopulatevaluesintothecolumnsunlessyoure-uploadthedocumentoreditthe documentandreassignvaluestothemetadatacolumns.
OpenanewSharedDocumentslibraryonyourteamsiteandgotoSiteSettings.IntheColumns section,youmaythinkthatyoucansimplycreatecolumnswiththesamenamesastheWordmetadata fields.However,thatdoesnotwork.Rather,youneedtoopentheoptionAddfromexistingsite columns,asshowninFigure4-15.
Figure4-15.ToaddWord2010metadatatoyourlibrary,useAddfromexistingsitecolumns. SelectCodeDocumentColumns(orAllGroupsforthecompletelistoffields)fromtheSelectSite Columnsfromdrop-down.Then,fromtheAvailableSiteColumnslist,double-clickorclickthe columnnamefollowedbyclickingAddtotransferthecolumnstotheColumnstoaddlistbox.Youcan addallthecolumnsyouneed.Makesureyouhaveselectedthecheckboxtoaddthecolumnstothe defaultviewbeforeyouclickOK,asshowninFigure4-16.
217
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-16.SelectingcolumnstomatchWord2010metadata Whenyoureturntotheviewofyourlibrarylist,youseethenewcolumns.Ifyouhadpreviously uploadeddocumentstothelibrary,theseadditionalcolumnsremainblankevenifthesedocumentshad metadatavaluesdefinedwhenoriginallycreatedinWord.However,thenexttimeyoueditthese documentsandresavethemtotheSharePointlibrary,Wordtransfersthevaluestothesesitecolumns. Figure4-17showsanimageofaSharePointlibraryinthebackgroundwithasingledocumentto illustratethemetadatasavedinSharePoint;intheforegroundoftheimageistheoriginalWord documentwiththeDocumentPropertiespaneldisplayed.
218
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-17.SharePointdocumentlibraryshowsWord2010metadata. FromwithinSharePoint,youcannowusethismetadatatosortorfiltertheitemsinyourlibrary. AfterSharePointrunsitsnextindexingjob,youcanalsosearchforthisdocumentbyvaluesinthe metadata,aslongasyouhaveselectedtheoptiontoallowitemsfromthelibrarytoappearinsearch results.YoucanfindthisoptionintheSearchsectionoftheAdvancedSettingsoftheLibrarySettings command.
AddingMetadatatoDocumentsfromSharePoint WhileSharePointretainsWord’smetadatawhenyouuploaddocumentstoalibrary,youcanalsoadd moremetadatatothedocumentfromwithinSharePointitselfbyaddingcolumnstothedocument library.Everycolumninadocumentlibrarythenbecomesmetadataforeachdocumentinthelibrary.
219
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Inthecurrentexample,supposeyouaddaTechnicalReviewer,ReviewDate,andPageCount columntoyourSharePointlibrary.Inaddition,let’smakethePageCountcolumnarequiredcolumn thatmusthaveavaluegreaterthan0.Figure4-18showsyourlibraryafteraddingthesethreecolumns. Thetruncatedviewshowsonlyafewofthecolumns.Ihavemovedthenewcolumnsclosertotheleftto facilitatetheformatofthisbook.
Figure4-18.AddingthreenewcolumnstotheSharePointdocumentlibrary IfyoueditthisdocumentinWord2007or2010,yougetabanneracrossthetopofthedocument (showninFigure4-19)thattellsyoutosupplysomemissingorinvalidrequiredpropertiesbeforeyou cansavethedocumentbacktotheserver.Ofcourse,thatmissingpropertyisthePageCount,whichhas noinitialdefaultvaluebutisrequired.
Figure4-19.Awarningthatoneormorepropertiesareinvalidormissing WhenyouclickontheEditPropertiesbutton,WordopenstheDocumentPropertiespanel.Figure 4-20showsthatthePageCountcolumnhasaredasteriskontherightside.Thisindicatesthatthe propertyisrequired.Noticethatalloftheotherpropertiesincludingtheothertwonewpropertiesfor TechnicalReviewerandReviewDatealsoappearinthepanel.Youcanupdateallthesepropertiesand resavethedocument.
220
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-20.DisplayingthenewcolumnsinWord’sDocumentPropertiespanel YoumayhavealsonoticedthatthetitleofthispanelhaschangedfromDocumentPropertiesto DocumentProperties–Server.Infact,therearetwopropertyviewsforthedocumentatthispoint.The originalDocumentPropertiesdefinedthroughWordcanbeseenbyopeningthedrop-downlistinthe titlebar(clickthedown-pointingarrow)andselectingDocumentProperties.TheDocument Properties–ServerviewshowsallthepropertiesfromtheSharePointDocumentLibrary.Noticethat SharePointandWordsharesomepropertieswhileothersareuniquetoSharePoint. OnlypropertiesaddedtotheSharePointDocumentLibrarythroughtheexistingsitecolumns representcolumnsthatSharePointcansharewithsimilarlynamedmetadatainMicrosoftOffice productssuchasWord.SharePointdoesnotdirectlysharebacktoWordanynewcolumnscreated manually,butyoucanaccessthecolumnthroughtheDocumentProperties–Serverpanel. EventhoughSharePointdoesnotsharethethreenewcolumnswithWord’smetadata,Word respectsthevalidationanddatarequirementsconstraintsdefinedinSharePointbeforesavingaversion ofthedocumentbacktothelibrary.Forexample,supposeyouenteraTechnicalReview’snameand ReviewDate,butmakeamistakebyenteringapastyearratherthanthecurrentyear.Again,apopup bannerappearsimmediatelybelowthedocumentpropertiespaneltotellyouthattheuploadfailed. Unfortunately,thismessagedoesnottellusthespecificfieldthathasaninvalidentry.Figure4-21shows theerrormessagethatappearswhenattemptingtosavethisversionofthedocumentbackto SharePoint.FromWord,youwouldhavetoknowthevalidationrulesfortheserversidemetadatato correcttheproblemandsavethedata.
■CautionTheseerrormessagesmaynotappearifyouhavecreatedcustomerrorpagesforyouroffice applications.
TheAdvancedPropertiesoptioninthisdrop-downopensthestandardpropertiesdialogboxused byWord.Usingthisdialogbox,youcanaccessothermetadatathatWordsupportsoraddnewmetadata fieldswithinthecurrentdocument.
221
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-21.Warningofmissingorinvalidpropertieswhenattemptingtouploadadocument NowthatyouknowthatmetadatacanbeincludedineverythingyoudoinMicrosoftOffice,what canyoudowithit?Metadatacanhelpsearch,filter,orsortthedataitrefersto,suchastheitemsinyour library.Previously,ImentionedthatyoucoulduseWord’smetadatainyourWindowsdirectoriestosort thefilesinthedirectory.ThesameconceptappliestothedocumentsinaSharePointlibraryortheitems inalist.Metadatacanevenhelpyouassociatedocumentsinonelibraryorinformationinalisttothose inanother.Finally,itcanalsohelpautomateworkflowsbysupplyingvaluestovariablesusedbythe workflow. MetadatacanenhanceyourSharePointexperience,justasindexescanenhanceyourdatabase experience.However,toomuchmetadatacanbecomeaburdenforuserstoenter,justastoomany indexescannegativelyaffectdatabaseperformance.Youdonotwantmetadatatobecomesucha burdenthatusersstopenteringit.Toillustratethevalueofmetadata,thenextsectionexplorestheuse ofmetadatawithinacustomlibraryusedtotrackPurchaseOrders.
UsingMetadatawiththeDocumentInformationPanel Yourcompanyprobablyusespurchaseorderstobuytheitemsituses.Onafunctionallevel,youcould useacustomshareddocumentlibrarytostorethepurchaseordersafteryoucreatethem.Ataslightly moresophisticatedlevel,youmighttakeablankpurchaseorderformbuiltwithWordandsaveitasa Wordtemplate.ThenyoucoulduploadthatWordtemplateintoyourSharePointsiteandmodifyyour purchaseorderlibrarytousethattemplateasitsdefaultdocumenttypewhencreatinganewdocument. IdiscussedhowtochangeyourdefaultdocumenttemplateinChapter1. However,youcanleverageSharePointfurther.Supposeyoucreateanewcustomlibrarynamed PurchaseOrders.Aftercreatingthelibrary,gointothedocumentlibrarysettingspageandrenamethe TitlecolumntoPurchaseOrderNumber.Whilethere,youcanselectothercolumnsthatSharePoint automaticallytrackstodisplayinyourlist,oryoucouldaddyourowncustomcolumns.
222
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
■NotePurchaseOrderNumbermakesanidealreplacementfortheTitlecolumnbecauseituniquelydefines eachpurchaseorder.Youshouldneverhavetwopurchaseorderswiththesamenumber.
Becausethislibraryonlyholdspurchaseorders,youmightconsideraddingafewspecialcolumnsto trackinformationtohelpsort,filter,orgroupyourpurchaseorders.Toillustratethispoint,addthe followingthreecolumnstothiscustomlibrary: •
DateCreated:Thedatesomeoneenteredthepurchaseorder.(Iamassumingthat thepurchaseorderdatemaybedifferentfromtheitemcreationdate.)
•
Department:Thedepartmentrequestingthepurchaseorder
•
PurchaseAmount:Thetotalamountofthepurchaseorder.(Iwillcreatethisfield asacurrencyfield,butyoumayhavereasonstoleaveitasastringorjusta number.)
WhendefiningtheDepartmentcolumn,considermakingitaLookuptypecolumnusingacustom listnamedDepartmentssothatyoucanaddnewdepartmentsontheflywithoutmodifyingthe PurchaseOrderslibrarysettings.Ofcourse,youcouldaddmorethanthesethreecolumns,butthese threearegoodenoughfornow. Eachofthesenewcolumnsrepresentsmetadataforthepurchaseorder.Thatmeansthatthey defineadditionalinformationaboutthedocument.Italsomeansthateachtimeyoucreateanew documentinthislibrary,youmayneedtodefinevaluesforthesecolumnswhenyousavethenew document.Infact,whenyouopenanewdocument,Word2010displaysthesedocumentpropertiesina banner-likepanelacrossthetopofthedocument,asshowninFigure4-22.
Figure4-22.Word2010displaystheservermetadatafieldsinapanelatthetopofthepage.
223
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Noticethatthefieldsacrossthebannerpromptforvaluesforeachofthecustompurchaseorder columns.Youcanfillinthesefieldsatanytimefromwhenyoufirstopenthepurchaseordertowhen youcompleteit.Figure4-23showsthepurchaseorderlibraryafteryouaddthefirstpurchaseorder showingthecustomcolumns.
■TipIfyouplantousemetadatatosort,group,orfilteryourpurchaseorderslater,returntoyourcolumn definitionandmakeeachofthesecolumnsrequired.Ifyouhavealreadysavedpurchaseorderswithoutthese columns,SharePointdoesnotraiseanerrorunlessyoueditandresavethosepurchaseordersaftermakingthe customcolumnsrequired.
Figure4-23.SharePoint’slistdisplaysthemetadatafieldsaddedinWord’sDocumentProperties.
UploadingExistingDocumentsintoaLibraryPromptsfor RequiredMetadata Ratherthancreatinganewdocumentdirectlyfromthelibrary,let’sassumethatyouneedtouploadan existingpurchaseorderintothelibrary;youcanaccomplishthistaskbyfirstopeningthedocumentin WordandthenusingtheSaveAsdialogtopointtothelibraryasdescribedearlier.However,ifthe documentdoesnotyethavevaluesfortheanyrequiredSharePointmetadatacolumns,SharePointwill uploadbutnotcheckinthedocument. Tosupplythesevalues,clickthecommandDocumentPanelintheDocumentManagement group.Worddisplaysthepanelacrossthetopofthedocument.Youcannowenteranymetadatathat hasnotalreadybeensuppliedforthecurrentdocumentbeforesavingittoSharePoint. Alwaysremembertosaveyourdocumentafteranychanges,evenifyouonlymakechangestothe metadata.
WorkingwithDocumentMetadata Byaddingmetadatatoadocumentlibrary,youcanmoreeasilysort,filter,andevenperformsimple aggregatefunctionsacrossthedocumentsitcontains.Thefollowingstepsareforascenarioinwhich youviewonlythepurchaseordersfromasingledepartment(Administration),countthenumberof purchaseorders,andcalculateagrandtotalamount.
224
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
1.
OpentheLibraryribbonofthePurchaseOrderslibrary.
2.
SelecttheCreateViewcommandfromtheManageViewsgroup.
3.
FromthefirstCreateViewpage,selecttheStandardViewformat.
4.
InthesecondCreateViewpage,nametheviewAdministrationPurchase Orders.Donotmakethisthedefaultview.
5.
Createthisviewasapublicview.Youcanalsocreateapersonalviewthatonly youcansee.However,forthepurposeofthisexample,Iwillassumethatthe permissionstothislibraryhavealreadylimitedthepotentialaudiencetoan appropriatesubsetofallusers.
6.
Next,selectthecolumnsyouwanttodisplay.Forthisexample,includeatleast thefollowing: •
TypeIcon
•
PurchaseOrderNumber
•
DateCreated
•
Department
•
PurchaseAmount
7.
DefinetheprimarysorttobeDateCreatedinascendingorder.
8.
DefineasecondarysortbyascendingPurchaseOrderNumberincaseyou havemorethanonepurchaseorderadayperdepartment.
9.
FilteroncolumnDepartmentequaltoAdministration.
■CautionNoticethat,whendefiningafilter,youmustenterthevalueofthefilterdirectly,notselectitfromalist ofpossiblevalues.Therefore,keepinmindthatspellingcounts.However,thevalue’scasedoesnotaffectthe result.
10. ExpandtheTotalssection.Noticethisactiondisplayseachcolumninthe librarywithadrop-downofpossiblevalues. 11. SelectCountforthePurchaseOrderNumbercolumn. 12. SelectSumforthePurchaseAmountcolumn. 13. ClickOKtocreatethenewview. SharePointreturnsyoutothelibraryview,asshowninFigure4-24.Noticethatthelistnowcontains onlythepurchaseordersfortheAdministrationdepartment,thePurchaseOrderNumbercolumn containsthetextCount=3,andthePurchaseTotalcolumncontainsthetextSum=$9,510.00.
225
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-24.UsingTotalstocountthenumberofpurchaseordersandthevaluefortheAdministration department Thisexampleshowshowyoucanusemetadatainaviewofthedocumentlibrarytosortthe documents,filteronadepartment,andthencountthenumberofpurchaseorderswhiletotalingthe amounts.Noticealsothat,withRSSfeedsturnedon,youcansubscribetothislibraryandreceive notificationswhensomeonemakesadditionstoitthroughyourfavoritenewsaggregator,IE8.0,Outlook 2010,orbetter.Similarly,youcanalsosubscribetoalertsforchanges.Thisissomethingthatasimple WindowsExplorerviewofadirectoryofpurchaseorderdocumentscannotdo!
ManagingMultipleEditorstoaDocument ConcurrencyproblemsasdescribedinChapter1wereaninevitableconsequenceofthewayWord2007 handledmultipleeditorsofadocument.Basically,itwasanallornothingchoice.Eitheryoulockedthe entirefilebycheckingitoutofSharePointsothatnooneelsecouldopenitineditmode,oryouallowed multiplepeopletoeditthedocument.Ifyouchoosethelatter,thenyouhadtocopewithhavingto comparetwoormoreversionsofthedocument,identifythedifferencesbetweenthem,andaccept whichchangesyouwantedtokeep.Becausethatwassuchatime-consumingprocessing,most SharePointadministratorsdecidedtomakeiteasieroneveryonebyrequiringdocumentcheckout beforeyoucouldeditthedocument. NowWord2010comesoutwithapotentiallygame-changingfeature,atleastinthewordprocessing arena,thatallowsmultiplesimultaneouseditorstoeditadocumentwhentheyareusingdocuments storedinSharePoint.Ratherthanlockingtheentirefiletoprotecttheintegrityofchangesmadetothe document,Word2010nowsupportslockingindividualparagraphsofadocument.However,while SharePointandWordlockthoseindividualparagraphs,othereditorscanmakechangestootherpartsof thedocument.Ofcourse,assoonasyoubegineditingadifferentparagraph,WordandSharePointlock thatparagraphtoanyotherusers. Whileeditingadocumentthatsomeoneelsealsohasopen,SharePointpassesinformationbetween alluserstoidentifywhichparagraphsothershaveedited.Itplacesabracketaroundtheleftsideofthe paragraphandaddsatagofftotheleftmargintoidentifythepersonperformingtheedit.However,it doesnotshowtheeditchangesmadebyothersinrealtime.Theseeditedparagraphsremainlocked untiltheirindividualeditorsavestheirchangesbacktoSharePoint. Youcanperiodicallychecktoseeifanyupdatestothecurrentdocumenthavebecomeavailable(in otherwords,savedbyotherusers).Youcanthendisplaytheupdatedtextandmakechangestoit.
226
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Let’sseehowthisworksinasimpleexample.Supposetwopeoplehaveadocumentopenforediting atthesametime.Rememberthatthisabilitytoallowmultipleeditorstoadocumentonlyworksifyou openthedocumentfromalibrarythatdoesnotrequirecheckoutbeforeediting.Now,alsosupposethat theSystemAccountuserhasthesamedocumentopenasIdoandshehasmadeachangetothefirst paragraphwiththetitleIntroduction.Whatyouwillseeonyourscreenwillbealight-bluesolidbracket aroundtheleftsideoftheparagraphwheretheSystemAccountmadeachange.Italsohasaflyouttag displayingtheuser’sname,SystemAccount,astheeditorofthatparagraphasshowninFigure4-25.
Figure4-25.Tagindicatesdocumentparagraphhasbeeneditedbyanotheruser YoumightalsonoticethatthesecondparagraphhasadottedbracketarounditindicatingthatI havemadeachangetothatparagraph.Thereisnoneedforatagtoidentifytheuserinthiscasebecause allparagraphsbracketedwithadottedbracketrepresentchangesmadebyme. Notealsothat,assoonasIinitiateeditingofthesecondparagraph,MicrosoftWordplacesalockon theparagraphthatpassesfrommycopyofWord2010throughSharePointtotheSystemAccount’scopy ofWord2010whereitremainslockeduntilIsavemychangesbacktoSharePointandthusreleasethe lock.Ifanyotherusertriestoclickinsidethatparagraphtomakechanges,Word2010blocksany keystrokesanddisplaysthemessageThis modification is not allowed because the selection is locked. IftheSystemAccountreallyneedstoeditmylockedparagraph(thesecondparagraph),shecould waituntileitherIsavemychangesorshecouldclickonthetagidentifyingmeastheeditorofthe paragraphtodisplayapopupdialogshowninFigure4-26.Thispopupdisplaysthename,picture(if available),andpresenceindicatoratthetopofthedialog.Thefouriconsinarowallowyoutosendanemail,aninstanttextmessageoravoicemessagethroughaninstantmessageapplicationsuchasLive Messenger,ordisplayotheroptionsincludingschedulingameetingwiththatperson.Thedrop-down buttonontherightsideofthisrowexpandsthedialogtoshowadditionalinformationabouttheeditor suchashisdepartment,telephonenumbers,e-mailaddress,andlocation.Theseoptionscanbeusefulif theparagraphyouneedtoeditremainslockedforanextendedperiod,therebypreventingyoufrom completingyourtasks.
227
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-26.Popupidentifyingparagrapheditor Youcanalsoseeacompletelistofalluserscurrentlyeditingthedocumentbyclickinginthethird panelfromtheleftofthestatusbaratthebottomofthewindow.Thispaneldisplaysacountofthe numberofsimultaneouseditorsinthedocument.Whenclicked,itdisplaystheirnamesasshownin Figure4-27.Aswiththetagsforindividuallylockedparagraphs,youcanclickonthenameofanyof theseeditorstodisplaythesamedialogboxjustdescribedinFigure4-26tocontactthem.
Figure4-27.Statusbaridentifiesallcurrenteditorsofthedocument. YoucanalsoseeacompletelistofpeoplecurrentlyeditingthedocumentbyopeningtheFilemenu andselectingInfo.Inthecentersectionofthisscreen,showninFigure4-28,isalistofallthecurrent editors.YoucanclickonanyofthenamestoselectthemandthenclickthelargeSendaMessage buttontoopenane-mailmessagetothatperson.
228
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-28.TheInfopagealsoidentifiescurrentuserseditingthedocument. AlsointheInfosectionoftheFilemenu,Wordnotifiesyouthatnewupdatestothedocumenthave becomeavailable,asshowninFigure4-29.Thisnotificationoccurswhenanyoftheothereditorssaves theirchangesbacktoSharePoint.Onlyaftertheysavetheirchangescanyourefreshyourcopyofthe documenttoseethosechangesandmakeadditionalchangestotheparagraphspreviouslylocked.
■NoteYoudonotneedtoreturntotheInfopagetoseethatupdateshavebecomeavailable.Arefreshicon(two arrowscirclingoneachother)appearsontherightsideoftheindividualmodificationnametagswhenthateditor savestheirchanges.
Figure4-29.TheInfopagealsoidentifieswhennewdocumentupdatesbecomeavailable.
229
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Noticeinthisfigurethatyouhavetosaveyourcopyofthedocumentinordertoupdateitwith changesfromotherauthors.However,youdonothavetocheckinyourcopyofthedocument.When yousaveyourdocumentcopy,thedialogshowninFigure4-30appears.Ittellsyouthatyoucan comparethedocumentwithapreviousversionofthedocumentbyclickingintheFiletab.Evenifyou donotdothat,anyinsertionsareimmediatelyobvious,asWordwillhighlightthemingreen,asyoucan seeintheiconinFigure4-30.
Figure4-30.Wordnotifiesyouwhendocumentchangeshavebeenappliedtoyourcopyofthedocument. Tocomparethecurrentdocumentwithapriorversion,opentheFilemenuandselectInfo.Scrollto thebottomoftheInfopagetothesectiontitledVersions and Check Out.Theavailabledocument versionsappearhereaslongasyouhaveenabledversioningforthecurrentlibrary.Clickontheversion towhichyouwanttocomparethecurrentdocument.AsecondWordwindowopensanddisplaysthe bannershowninFigure4-31.
Figure4-31.Wordnotifiesyouwhendocumentchangeshavebeenappliedtoyourcopyofthedocument. ClicktheComparebuttontocontinuewiththecomparisonofthetwoversions.Thisopensathird windowwithbothversionsofthedocumentintherightcolumnandthecombinedversioninthecenter columnasshowninFigure4-32. Thepointofviewofthecomparisoniswhatchangesyoumustmaketothecurrentversionofthe documenttomakeitlooklikethecompareddocument,theoneyouselectedfromtheInfopage creatinganewreviseddocument.Therefore,itemsdeletedbyyouoranothereditorappearasInserted textbecauseyouwouldneedtoaddthattextbackintothedocumenttomakeitlookliketheolder versionofthedocument.Similarly,youwouldneedtodeletetextthatyouaddedtothemostrecent versiontomatchtheolderversion.Therefore,ifyouwanttokeepyourrecentchanges,youwantto rejectthesuggestedchangesthatwouldrevertyourmodifications.Similarly,youcouldacceptthe changestoundosomethingyoudidthatyoudonotwanttokeep.Forexample,ifyoudeletedsomething byaccident,youcansimplyaccepttheinsertedtexttorecoverthelosttext.Iknowthatsoundsalittle likereverselogicatfirst,butrememberWord’sviewpointistryingtomakeyourcurrentdocumentlook likethecomparisondocument,notviceversa.
230
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Tofinishthisexample,examineeachchangealongtheleftsideofthewindow.Allofthechanges appearasinsertsordeletes.Infact,modificationsappearasapairofchanges,oneinsertandonedelete. Youcanchooseeachindividualchangebyclickingonitandthendecidewhethertoacceptorreject eachoneindividuallybyclickingtheAcceptorRejectbuttonsintheReviewribbon.Whenyouhave finishedreviewingallthedifferencesandarereadytosaveyourupdatedversion,opentheFilemenu andselectSave.WordthendisplaystheSaveAsdialogprefilledwiththedocument’snameandpointing tothelibrarywherethefilecamefrom.SimplyclicktheSavebuttonandWord2010savesyourupdated revisedversion.
Figure4-32.Wordletsyoucomparedocumentchangesandchoosewhichtoacceptorreject. Sowhywouldyouchoosetonotrequirecheckoutofdocumentsbeforeeditingthem?Ifyouhavea largedocumentforwhichseveralpeoplehaveeditresponsibilities,youmaywanttoallowmultiple peopletoeditthedocumentsimultaneouslybecausetheyseldomifeverneedtoeditthesameportion ofthedocumentanyway.Thisallowstheworkfrommultiplepeopletooccursimultaneously,thereby improvingefficiency.Ontheotherhand,smalldocumentsordocumentsinwhichmultiplepeople
231
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
typicallywilleditthesameportionswouldbebettermanagedinalibrarythatrequirescheckoutbefore editingtoprotecttheeditsofeachindividual.
CreatingandUsingDocumentSets Beforeyoucanuseadocumentsetinanysite,youmustfirstactivatetheDocumentSetfeature.Youcan findthisbyopeningCentralAdministrationandclickingonSitecollectionfeaturesintheSite CollectionAdministrationsection. Next,returntothesitewhereyouwanttousetheDocumentSettocreateaDocumentSetcontent type.GotoSiteActions➤SiteSettingsandselectSiteContentTypesundertheGalleriesgroup.Click Createandsupplyauniquenameforyourdocumentsetandincludeanoptionaldescription.Select DocumentSetContentTypesfromthefirstdrop-downintheParentContentTypessectionandthen selectDocumentSetfromtheseconddrop-down.Inthegroupsection,Iprefertocreateaseparate groupforthecontenttypesbasedoneitherthescopeofthedocumentsitcontainsoronthedepartment orgroupthatusesthedocumentset.Forexample,acontenttypeusedforanindividualprojectreceives anamerelatedtothatprojectwhileacontenttypeusedacrosstheentiredepartmentreceivesaname basedonthatdepartment.Figure4-33showsthesesteps.
Figure4-33.CreateaDocumentSetcontenttype
232
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Whileyoucouldusethiscontenttypeas-isinalibrary,itwouldinitiallybeempty.Youcouldthen adddocumentstothedocumentsetasneeded.However,amoreinterestinguseofthedocumentset occurswhenyouwanttocreateacommonsetofdocumentsineachinstanceofthedocumentlibrary. Imaginethatthedocumentsetcreatedinthepreviousfigure,AnnualReviewDocuments,alwaysbegins withacommonsetofdocumentsthatthesupervisormustfillinforeachemployeeevaluation.Ifyou addthosedocumentstothecontenttype,thenSharePointcancreatenewinstancesofthosedocuments inthedocumentseteachtimeyouinstantiateanewdocumentsetforadifferentemployee. Toadddocumentstothedocumentset,findyournewlycreatedcontenttypeinthelistofcontent typesintheSiteContentTypespage.Thenclickonthecontenttypename.Thisdisplaysasettingspage forthecontenttypeasshowninFigure4-34.
Figure4-34.DefinesettingsforDocumentSet ClicktheDocumentSetSettingsoptionintheSettingsgroup.Figure4-35showsthedocumentset settings.ThefirstarealetsyoudefinetheAllowedContentTypesforthiscontenttype.Inthiscase, supposeyouallowDocumentsandImages.Ofcourse,youcouldusethepicklistonthelefttoinclude anyofthecurrentlydefinedcontenttypesforyourdocumentset.Thenextsectionletsyoudefinethe defaultcontentforthedocumentset.ThesearethedefaultdocumentsthatSharePointcreatesinyour documentsetwhenyouinstantiateitinalibrary.Inthiscase,youhavethefourMicrosoftWord documentsthatformthebasisoftheannualreview.Youcanaddanynumberofdefaultdocumentsto yourdocumentset.Ofcourse,youcanalwaysaddmoredocuments.However,ifyouhaveasituation
233
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
likethisonewhereeveryinstanceofthedocumentsetmustbeginwithaminimumnumberof documents,adocumentsetmaybejustrightforyou.
Figure4-35.DefineAllowedContentTypesandDefaultContent Next,navigatetothelibrarywhereyouwillusethecontenttype(orcreateanewlibrary)andopen thelibrarysettings.First,youneedtoenablethemanagementofcontenttypesforthislibraryunderthe AdvancedSettingspage.Then,ontheDocumentLibrarySettingspageyouseeanewsectioncalled ContentTypes.Atthebottomofthissection,clicktheoptionAddfromexistingsitecontenttypes.A newscreendisplaysthedefinedsitecontenttypes.Initially,thelistboxdisplaysallcontenttypes. However,ifyouaddedyourcontenttypetooneoftheexistinggroupsoryourowngroup,youcanselect thegroupfromthefirstdrop-downtonarrowthechoicesintheAvailableSiteContentTypeslistbox. Eitherwayyouchoosetofindit,youshouldseethedocumentsetcontenttypeyoucreatedearlierinthis section.SelectitandclicktheAddbuttonorsimplydouble-clickthecontenttypenametomoveittothe SelectContentTypeslistboxontheright,asshowninFigure4-36.
234
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-36.Addthedocumentsetcontenttypetoyourlibrary. AfteryouclickOK,SharePointreturnsyoutotheDocumentLibrarySettingspagewhereyouwill seeyourcontenttypelistedintheContentTypessection.NoticethatSharePointautomaticallyincludes anynewcontenttypesontheNewbutton.However,theoriginalcontenttyperemainsthedefault contenttype.Ifyouwouldliketomakeyournewcontenttype(thedocumentset)yourdefaultcontent type,clicktheoptionChangeNewButtonOrderandDefaultContentTypefoundatthebottomof thissection.Figure4-37showsthenewpagewhereyoucandecidewhichcontenttypesyouwanttobe visiblebyclickingthecheckboxintheVisiblecolumn.Youcanalsousethedrop-downnumberlistto definethepositionfromthetopforeachcontenttype.SharePointusesthecontenttypeidentifiedas“1” asthedefaultcontenttypeforthecurrentlibrary.
Figure4-37.ChangetheoptionintheNewdrop-down.
235
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Inthisfigure,youcanseethatIhavemadetheAnnualReviewDocumentsnotonlythedefault contenttype,buttheonlycontenttypedisplaybytheNewDocumentdrop-downmenu.Ifyouopen thedocumentlibrary(byclickingonthelibrarynameinthebreadcrumbsatthetopofthispage),you willseethatthenewcontenttypeappearsintheNewDocumentdrop-down(clickingthelowerhalfof theNewDocumentbuttonintheDocumentsribbon).Whenyouselectthisoptiontocreatea documentset,youmustsupplyaspecificnameforthedocumentset.Thiscreatesthedocumentset allowingyoutocreatemultiplegroupsofthisdocumentsetinthelibrary,eachwiththeirownunique name.Inthisexample,youcouldcreateadocumentsetofallthedocumentsneededtoperforman annualreviewforeachemployeebynamingeachdocumentsetwiththeemployee’slastname,asin Figure4-38.
Figure4-38.Createaseparatedocumentsetforeachemployee. Onceyouhavecreatedthedocumentset,youcanopenanyofthesetsandworkwiththe documentsindividuallyjustasiftheywereinamoretraditionalfilefolder.However,theproductivity enhancementscomeaboutduetotheabilitytotreattheentiremulti-documentsetasasingleobject whenyouwanttomoveordeletetheset,startaworkflowfortheset,orarchivetheentiresettoa recordscenter.Youcanevenmanagethepermissionsofthedocumentsetindependentofthelibrary thatcontainsthedocumentset.Toworkwithadocumentset,clickonthedocumentsettoopenits WelcomepageasshowninFigure4-39.Fromthisscreen,youcanmodifyitspropertiesorworkwith anyofthedocumentsdefinedtobepartofthedocumenttype.
236
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-39.DefaultwelcomepagefortheAnnualReviewDocumentsdocumentset Thisintroductiontothedocumentsetwillgetyoustarted.Youcanalsoaddmorecolumnstoyour documentset,andyoucancustomizetheappearanceoftheWelcomepageforthedocumentset.
SearchingForYourDocuments WhenyouonlyhaveafewdocumentsinyourSharePointsite,findingtheoneyouwantisnobig challenge.However,whathappensafteryoursitegrowstohundredsoffilesindozensoflibraries,nested folders,andmultiplesites?Tryingtorememberwhereyoustoredadocumentmaymakelookingfora needleinahaystackseemeasy.However,evenfindinganeedleinahaystackcanbeeasywiththeright tool,suchasastrongmagnet.Similarly,youneedastrongtooltofindthatonedocumentoutof hundredsinthelibrariesonyoursite.Fortunately,SharePointprovidesthattoolintheformofthe Searchfeature.
■NoteBeforeusingSearch,askyourSharePointadministratoriftheyhaveconfiguredyourinstallationtobe periodicallyindexed.Alsofindouthowoftentheindexservicesrun.Ifyoumakeanadditiontoyoursite,Search willnotpickupthenewdocumentuntilthenexttimeSharePointperformsare-indexofthesite.Also,youcan determineonalibrarybasiswhetheritemsinthelibrarycanappearinthesearchresultsbysettingtheSearch propertyintheAdvanceSettingssectionoftheLibrarySettings.
237
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
TheSearchfeaturetypicallyappearsintheupper-rightcornerofeverypageinSharePoint.Of course,ifsomeonebrandedyourpages,theymayhavemovedorevendeletedthisfeature.Hopefully, theydidnotremoveit,becausetheSearchfeatureinSharePointcanhelpyoufindanythinginyoursite quicklyandeasily.
What is Branding? WhileyoucanquicklychangetheappearanceofyourSharePointsitebychangingthethemeyouapplyto it,SharePointprovidesonlyalimitednumberofthemes.Fortunately,itispossiblewithalittleeffortto createyourownthemes.Ifyourorganizationhasprovidedalimitedsetofthemestopreservesome consistentlookandfeelacrossallsites,theymaynotpermityoutoaddyourownthemesorcustomized pagesmadewiththeexistingthemes.Youcanalsodirectlymodifytheappearanceofindividualpages usingtoolslikeSharePointDesigneramongothers.However,youwouldhavetocustomizeeachnewpage thatyouaddtothesitemanually,whichwouldnotbeveryefficient.Whilebeyondthescopeofthisbook,a betterapproachistocreatenewmasterpagesforyoursite(notasimpleeditoftheexistingmasterpages, butnewmasterpagefiles).YoucouldalsocreateyourownCSSfilestocustomizetheappearanceofthe masterpages,butthesemethodsalsoliebeyondthescopeofthisbook. CreatinganewsetofmasterpagesorCSSfilestocustomizetheappearanceofyourmasterpagesallows youtoputthechangesintoplaceonetimeforallpageswithinthesite.Thenallnewpagescreatedwithin thesiteautomaticallyinheritthenewlydefinedlookandfeel. Ifyougotothehomepageofyourtop-levelsiteorthedefaultpageofanysub-site,theSearch feature(showninFigure4-40)searchestheentiresiteandanysub-site.Thisisthesearchscopeorthe definitionofthecontentthatSharePointsearches.Placethewordsorphrasesyouwanttosearchforin thetextboxtotherightofthesearchscopebox.Thenpressthebuttonwiththemagnifyingglassiconto startthesearch.
Figure4-40.SharePoint’sSearchfeature Thetextboxsearchstringcannotexceed255characters.Whileyoudohavetoconsidersimple variationsofwordssuchaswhethertoenterclassorclasses,youdonotneedtoworryaboutcase,as SharePointperformsallsearchesascase-insensitive.SharePointignorescommonwordssuchas“the” or“it.”SharePointalsoignorestheorderofwords,makingasearchonUnited Statesthesameas states united.Sodon’twastetimeandcharactersenteringflags of the United Stateswhenyoucan justaseasilyenterUnited States flags.Notethatthisistrueifyoudon’tsurroundyoursearchstring withquotes.Ifyoudousequotes,thesearchstringmustmatchnotonlythewordsbutalsotheirorder. SearchnowunderstandsBooleanconnectorslikeANDorORbetweenwordsorphrases;itwilltreat thesewordsaslogicalconnectionsbetweenpartsofthesearchbutonlyiftheyarecapitalized.By default,SharePointsearchesforobjects(documents,listitems,etc.)thathaveallthewordsentered whetheryouputANDconnectionsbetweenthewordsornot.IfyouputORbetweenthetwowords, SharePointreturnsallobjectsthathaveonewordortheotherorboth.
238
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Youcanalsoputaplussigninfrontofawordtoqualifythesearch.Forexample,Software +MicrosoftreturnsonlydocumentsthatreferencesoftwareandMicrosoftjustliketheANDconnectoror asimplespace.Likewise,youcanplaceahyphen(minussign)infrontofawordtoeliminatedocuments thatcontainthatword.Forexample,Software –Microsoftwouldincludedocumentsthatcontainedthe wordsoftwarebutnotthewordMicrosoft.
■NoteYoumusthaveatleastoneincludeexpressionbeforeyoucanaddanexcludeexpressionsuchasthe minussign.
Inaddition,SharePointallowsyoutousethewildcardasterisk(*),butonlytocompleteapartialword. Forexample,asearchonSha*returnsanyobjectthatcontainsawordthatstartswiththecharactersSha* suchasSharePointorshampoo.Obviously,themorecharactersyousupply,thebetterresultsyoursearch returns.ThatisnotallthatSearchcando.Table4-1showsalistofcustomsearchesyoucannowperform withSharePointSearch,includingBooleanexpressionsandsearchesagainstobjectpropertiessuchas author,modified,filename,filetypeortitle.Ofcourse,theseexpressionsweredesignedforaspecific documentlibrary.Yourquerieswilldifferinthespecificsearchcriteria,notthestyle. Table4-1.ListofCustomSearches
Expression
Description
Modified=1/31/10
ReturnsallobjectswhichweremodifiedonorafterJanuary31,2010
Modified:11/1/09..12/31/09
ReturnsallobjectsmodifiedbetweenNovember1andDecember31of2009
Status:Draft
ReturnsallobjectsinwhichthestatusisDraft
“Modifiedby”: “MikeAntonovich”
ReturnsallobjectslastmodifiedbyanyonewiththenameMike Antonovich
Filename:Welcome
ReturnsalldocumentswithafilenamehavingthewordWelcomeinit
Filetype:docx
Returnsonlydocumentscreatedwiththe.docxformat(fromWord2007 or2010)
Author:Antonovich
ReturnsalldocumentshavingthewordAntonovichinoneormoreofthe author’snames
239
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Finally,ifyoucombinetwoormoredifferentpropertiesinyoursearch,SharePointassumesanAND connectorbetweentheproperties.Forexampletitle:SharePoint filetype:docxreturnsWord documentssavedinthe.docxformatandhavingthewordSharePointinthetitle.Ifyouhavetwoofthe sameproperties,SharePointassumesanORbetweenthem.Forexamplefiletype:docx filetype:xlsx returnsanyWordfileformattedwiththe.docxformatoranyExcelfileformattedwiththe.xlsxformat. Obviously,anANDconnectingtwodifferentfiletypeswouldmakenosenseasasingledocument cannotbemorethanonefiletype.Youcanalsocombinewordsearcheswithpropertysearchesasinthe caseofsearchingforaWorddocumentwiththestring“2010Budget”somewhereinthedocument: “2010Budget”filetype:docx.Figure4-41showsanexampleofacombinationsearchonanauthorname forWorddocuments.
Figure4-41.Resultsofacombinationsearchforanauthor’sname
UsingWordtoContributetoYourBlogSite Blogsiteshavebecomeincreasinglypopularinthelastfewyears.Manycompaniessupportblogsto providenewsabouttheircompanyortheircompany’sproducts.Theymayevenencouragespecific individualswithaflairforwritingtopostblogsfavorabletothecompanyoritsproducts.Many individualsuseblogsaspersonaldiaries.Developersandconsultantsuseblogstodocumenttheirwork andtoprovideaplacetopostdownloadableinformationabouttheircurrentprojects.Speakersand authorsoftenuseblogstopostadditionalinformationfortheirattendeesorreaderssuchassamplecode ortheirslidepresentation. Beforeyoubegincontributingtoablog,youmusthaveahostedblogsite.Thousandsofblogsites alreadyexistontheInternet.Mostallowvisitorstothesitetocontributetothemafterregisteringon
240
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
theirsite.However,youmaywanttohaveyourownblogsitenotassociatedwithanothercompanyor organization.IfyouhaveaSharePointsite,andifyouhavepermissiontocreatesitesonit,youcan followthestepsinthenextsectiontocreateyourownblogsite.Ifyoudonothavepermissiontocreate sites,talkwithyourSharePointadministratortoseeifhecansetupablogsiteforyouruse.Ofcourse,if youradministratorbuilttheSharePointinstallationasanintranetsiteonly,yourblogwillonlybevisible touserswithinyourcompany.Ifthatsatisfiesyourneedforfame,goforit!Otherwise,youmight considerapublicsitesuchasMicrosoft’sLiveSpacestohostyourblog.
CreatingaBlogSite Youcancreateablogsiteasasubsitetoanysite.Somepeoplemaycreateapersonalblogsiteintheir MySitearea.However,youmaywantadepartmentorprojectblog.Thefollowinginstructionsstepyou throughcreatingablogsitebeneathanysite: 1.
Navigatetothesitewhereyouwanttocreateyourblog.
2.
SelectNewSitefromtheSiteActionsmenu.
3.
SelectBlogfromtheavailablesitetypesunderthecategoryContent.
4.
Beforefillinganythingelse,clickMoreOptions.
5.
Enteranameforyourblogsitealongwithadescription.
6.
Enterawebsiteaddressfortheblog.NoticethatSharePointprovidesthefirst partoftheaddress,definingtherootaddressforthesite.However,youmust supplythefinalportiontoidentifytheblogsite.
■TipInadditiontotryingtokeepyourblogaddressshortandeasytoremember,Irecommendthatyouusethe blogtitlejustentered,removinganyspecialcharactersorblanks.
7.
Definepermissionsforyourblogsite.Youcaninheritthepermissionsfromthe parentsite,oryoucancreateuniquepermissionstoyourblogsite.Remember thatdefininguniquepermissionsmeansthatyouwillhavefullresponsibility forcreatingallpermissionstoyourblog.Ifyouwantjustapersonalblogfor yourself,yourclosefriends,ortheothermembersofyourdepartmentor project,uniquepermissionsmaybeexactlywhatyouneed.
8.
Definethenavigationintoandoutofyoursite.
IntheNavigationsection,youdefinenavigationintoyourblogsite.Youcandeterminewhethera linktotheblogappearsintheQuickLaunchmenuandwhethertodisplaytheblogsiteinthetoplink baroftheparentsite.Whilethesetwonavigationoptionsprovideuserswithwaystogettoyourblog site,theyarenottheonlymethodsyouhaveatyourdisposal.Youcouldalsoaddlinksonyoursite’s homepagepointingtoyourblog.Ifeveryuserinyourcompanyoreveryproductteamhastheirown blogsite,aLinkslistonyoursite’shomepagemaybeabetterwaytohelpvisitorsnavigatetooneof dozensofblogsitesinyourSharePointinstallation.
241
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Thenavigationsectionalsoincludesamethodtohelpusersnavigateawayfromyourblogsite. SharePointaskswhethertheblogsitesharesthetoplinkbarwithitsparentorwhetheritstartsthetop linkbaralloveragainwithjusttheblogsitelisted.Bysharingthetoplinkbarwiththeparentsite,the usercannavigatebacktotheparentsite.However,evenifyoudonotsharethetoplinkbar,userscan stillreturntothetop-levelsitebyclickingthelinkintheGlobalLinksBaratthetopofthepage. Afterdefiningthepropertiesforyoursite,clicktheCreatebutton.SharePointcreatesthesiteand displaysitsmainpageasshowninFigure4-42.Youseeadefaultwelcomemessageprovidedby SharePoint.Ifyouhaverightstoadd,edit,anddeletelistitems,youwillseeacolumntotherightofthe blogentryareawithadministrationtoolsfortheblog.
Figure4-42.Mainpageofablog Thefollowinglistitemizestheavailableadministrationoptions:
242
•
CreateaPost:Createanewblogentry
•
ManagePosts:Edit/Deleteblogentries
•
ManageComments:Edit/Deletecommentsassociatedwithblogentries
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
•
LaunchBlogProgramtoPost:Bydefault,thisoptionloadsWordand automaticallystartsdefiningtheblogaccountneededforWordtopublishablog entrydirectlytothesite.
BeneaththisoptionisawebpartcalledAboutthisblog.ThiswebpartisactuallyaContentEditor webpartandprovidesanimageatthetopfollowedbyawelcometextmessage.Thedefaultimage displayedisaplaceholderimagethatis102pixelssquareandisstoredathttp://vanguard/_layouts/ images/.However,youcanuploadanimagetoanyimagelibraryandreference,itsuchasanimage librarycreatedinyourblogsite.Whileyoucanuseanimagethatislargerthan102pixels,usinganimage thatislargerthanthecontentareayouplaceitincouldcauseyourpagetodisplayincorrectly.Toedit thetextbeneaththeimage,clickanywherewithinthetextandbegintyping. BeneaththeAboutthisblogwebpart,youseeaLinkswebpart.Usethiswebparttodefinelinksto otherpagesonyoursiteoreveninothersites.Ifyouarebuildingapersonalblogpage,theselinksmight pointtoothersitesofspecialinterest. Beforeyoucreateyourfirstblogpost,youshouldalsonotethatSharePoint2010automaticallyturns onRSSfeedsforthepostsontheblogpagesoyourreaderscansubscribetoyourlatestentries.
DefiningCategoriesforYourBlogs PerhapsyounoticedintheQuickLaunchmenuthethreecategoriesgenericallynamedCategory1, Category2,andCategory3.Withinablogsite,youmaywanttoseparateentriesbycategorytoorganize thembytopicsortypes.Forexample,youmightuseadifferentcategorytopostcodeupdates, discussionsonconfigurationsettings,orpostsofinstructionsonhowtouseapplicationfeatures.You mightevenkeepseparatecategoriestopostFAQsortoreportbugs. Whileyoudonotneedtohaveallyourcategoriespredefinedbeforepeoplestarttoaddpoststothe blogsite,youprobablywanttodefineatleastafewmajorcategoriestokeepallofyourpostsfrombeing lumpedtogetherinonecategory.
■TipApersonwithadministratorrightsfortheblogsitecangointoindividualpostsandreassignthemtoa differentcategory.Administratorsoftendothiswhenpostsonasharedsitewithmanyblogcontributorsstartto divergefromtheintendedpurposeofthecategory.Theymayalsodothistosplitcategoriesintosmallergroups.
Todefineyourowninitialsetofcategories,clickCategoriesintheQuickLaunchmenu.SharePoint definescategoriesasasimplelistofitemsinwhichtheTitlecolumndefinesthecategory.Aswithmany lists,whenyouclickatitle,SharePointopenstheviewthatdisplaysallcolumnsfortheselecteditem.Of course,theCategorieslistonlyneedsonecolumn.Tochangethevalueofanyitem,clickEditItemin themenubarandenteryourdesiredcategorytext. Inasimilarway,updateeachofthecategoryitems,addingordeletingitemsasnecessarytobuild thecompletelistofcategoriesyouneed.Whenfinished,returntoyourblogsite’shomepagebyfinding itsreferenceinyourbreadcrumbs.BeforeleavingthispagetocreateblogpostsfromwithinWord,take noteoftheURLintheaddressbarofyourbrowser.Commitittomemory,copyittotheclipboard,or writeitdownbecauseyouwillneedtoreferenceittotellWordwheretosendyourblogposts.Youcan ignoretheportionoftheURLattheendthatsaysdefault.aspx.
243
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
CreatingaNewBlogPosting Tocreateyourfirstblogpost,returntoWordandopentheFilemenu.ClickNew.YoushouldseeBlog postintheAvailableTemplatessection.SelectthistemplateandclicktheCreatebutton.Ifyounever createdablogpostbefore,youmaygetadialogboxaskingyoutoregisteryourblogaccount(seeFigure 4-43).YoucanskipregistrationfornowbyclickingRegisterLater,asWordpromptsyouagainwhenyou attempttopostyourfirstblog.
Figure4-43.RegisteraBlogAccountdialogbox Wordthendisplaysablankdocumentwithatextfieldatthetopofthepagethatprompts[Enter PostTitleHere].Clickanywherebetweenthesquarebrackets,andenterthetitleforyourpost.Then clickbeneaththehorizontallinebelowthetitleandenteryourblogtext.
■NoteIfyoupreviouslycreatedaccountsforyourblogs,immediatelybelowthehorizontallineyouwillseethe wordAccountfollowedbythenameofyourdefaultblogaccount.Ifyouhavemorethanoneblogaccount,simply clickonthenameofthedefaultblogaccounttodisplayadrop-downcontrol.Clickthedrop-downarrowonthe rightsidetodisplayandselecttowhichblogaccountyouwanttosendthecurrentdocument.Iftheblogaccount youhaveselectedhascategories,youcanclicktheInsertCategoryoptionintheBlogPostribbon.Thisaction addsanentrybelowAccounttoletyouselectthecategorytoassignyourblogposttowhenyoupublishittothe currentlyselectedaccount.
BycreatingyourblogentrywithWord,youcantakeadvantageofalltheformattingfeaturesWord offers.Whenyoufinish,clickthePublishbuttonintheBlogsectionoftheBlogPostribboninWord. Figure4-44showsablogpostpriortopublishing.
244
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-44.PublishingablogentryfromWord2010 WhenyouclickPublishforthefirsttime,youmustregisteranaccountifyoudidnotdosowhen youfirstselectedablogstyledocument.Remember,youskippedregistrationearlier,soyoumustdoit now.ClicktheRegisteranAccountbuttoninthefirstdialogthatappears.ANewBlogAccountdialog boxappears,asshowninFigure4-45.Thiswizardprovidesadrop-downlistofavailableblogsitesto whichyoucouldpublish.Maybeyoualreadyuseoneoftheseblogsitesbutdidnotknowthatyoucould publishdirectlytoitfromwithinWord.
Figure4-45.Creatinganewblogaccount
245
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
TopublishtoyourSharePointblog,selectSharePointblogandclicktheNextbutton.TheNew BlogAccountdialogboxneedsonemorepieceofinformationtopostyourtext,theblogURL.ThisURL referstotheaddressIaskedyoutocommittomemoryorwritedownearlier.EnteritintheBlogURL textbox,asshowninFigure4-46,andclicktheOKbutton.
Figure4-46.EnteringyourblogURL
■TipYoucanalsogettothissamepointbyclickingthepreviouslymentionedBlogToolonSharePoint’sBlog pageLaunch blog program to post.
Wordthenalertsyouthatitissendinginformationtotheblogserviceproviderandthatother peoplemayseeit.SettingupaSharePointblogsiteonyourcompany’sSharePointserverexposesyouto littlerisk,especiallyifyourserversandyousitbehindthecompany’sfirewall.SoclickYEStocontinue. WhenWordsuccessfullyregisterswithSharePoint,adialogboxdisplays,confirmingitssuccessandalso informingyouthatyoucangototheBlogPostribbonwithinWordandclickManageAccountsto remove,modify,oraddotheraccounts. WhenWordreturnstothedocumentpage,abanneracrossthetopofthepagetellsyouthatit publishedtheposttotheblogsiteatthespecifiedURL.Switchingbacktoyourbrowser,youcan navigatetoyourblogsitetoseethepostasshowninFigure4-47.
246
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Figure4-47.ViewingapublishedblogentryinSharePoint
■NoteIfyouhadalreadypointedyourbrowsertotheblogpagebeforestartingthisprocess,youmayneedto refreshthepageinordertoseethelatestposting.
SharePointautomaticallyenablesRSSfeedsforblogsites.YoucanseetheorangeRSSfeediconin eitherthebrowser’smenubaratthetopofthewindoworatthebottomofthepagebelowthelastblog entry.WhenyourbrowserdisplaystheorangeRSSfeedicon,youknowthatthefeedhasbeenenabled. ThatmeansthatyouandyouruserscansubscribetothisRSSfeedandreceivenotificationwhenyouor someoneelsepostsnewentriestothisblog.
CommentingonaBlogEntry Toaddacommenttoanexistingblogpost,clicktheCommentslinkbeneaththepost.Thisaddsa smallformtothescreenpromptingforanoptionaltitleandthebodyofthecomment,asshownin Figure4-48.CommentsautomaticallyincludetheSharePointusernameofthepersonaddingthe commentaswellasthedateandtimesheaddedit.Commentsdonotdisplaybydefault,butifyouclick
247
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
theCommentslinkwhenthenumberinparenthesesisgreaterthanzero,youcanviewthesecomments andaddyourown.
Figure4-48.AddingaCommenttoablogentry
SettingListLevelBlogPermissions SharePointstoresblogsasalistnamedPosts.Asalist,youcancontrolwhohasaccesstocreateandedit blogs.Ifyoucreatedyourblogsitebyinheritingpermissionsfromaparentsite,thenanyonewith contentcreatorrightsintheparentsitecancontributetoyourblog.However,ifyouneedtolimitthe numberofpeoplewhocancreateblogentries,youmustbreakthatinheritance. Tobreakinheritanceofpermissions,openthePostslistbygoingthroughSiteActions➤ViewAll SiteContent.WiththePostslistopen,selecttheListribbonandclickonListSettingsintheSettings group.InthePermissionsandManagementcolumn,selectPermissionsforthislist.Ifthisliststillhas permissioninheritanceturnedon,abannerappearsimmediatelybelowtheribbontellingyouthatthe listinheritspermissionsfromitsparent.SharePointprovidesalinktomanagetheparent’spermissions. YoucanbreakinheritanceforthislistbyclickingStopInheritingPermissionsfromtheInheritance groupofthePermissionToolsribbon.Thisoptionallowsyoutodefinecustompermissionsforyour blog. Afteryoustopinheritingpermissions,thepagerefreshesandyoucannowchangethepermissions oftheinheritedgroupsandusers,deletingexistinggroupsandusers,andaddingnewgroupsandusers asnecessary.Remember,onlypeoplewitheditrightscanmanagepostsandcomments.Onmostpublic blogsites,peoplewhocancreateblogpostscangobackandedittheirsubmittedentries.Typically, however,peoplewhocanonlypostblogcommentscannoteditordeletetheirentriesaftertheysubmit them.Sobesureyouwantotherstoseewhatyouhavewrittenbeforeyousubmityourpostsor comments.Finally,ifyouaretheadministratoroftheblogsite,youmightneedtodeleteblogor commententriesiftheybecomeinflammatory,abusive,discriminatory,orconstituteacharacterattack.
248
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Thefollowingstepsdefinehowyoumightcreateanewpermissionlevelthatallowsitsmembersto viewblogswithoutbeingabletocreatenewblogentriesoraddcomments. 1.
NavigatetotheblogsiteandthenselectSitePermissionsunderUsersand PermissionssectionfromtheSiteActionsbutton.
2.
OnthePermissionspage,clickStopInheritingPermissionsfromthe InheritancegroupofthePermissionToolsribbon.Thisoptionbreaksthe inheritancefromtheparentsiteaftermakingacopyoftheparentpermissions onthecurrentsite.
3.
Gotothetop-levelsiteofyourcurrentsitecollectionandselectSite PermissionsfromSiteActionsbutton.
4.
ClickPermissionLevelsfromtheManagegroupofthePermissionTools.
5.
Youcannoweditthepermissionsinanyoftheexistinglevelsoryoucandefine uniquepermissionlevelsforuseanywherewithinthesitecollection,notjust yourblogsite.Forexample,youmightwanttoplaceeveryoneexceptyour departmentstaffinagroupthatonlyhasreadrightstoblogs.
6.
OnthePermissionLevelspage,clickAddaPermissionLevel.
7.
NamethepermissionBlogReaders.
8.
UnderPermissions,selectonlythefollowingoptions:
9.
•
ViewItems
•
CreateAlerts
•
ViewApplicationPages
Inaddition,underSitePermissions,selecttheseoptions: •
ViewPages
•
Open
10. WhenyouclickCreate,youwillseethatSharePointcreatedanewpermission levelnamedBlogReaders. 11. ReturntothePermissionspageofyourblogsiteandcheckthecheckbox beforeVisitorswhererepresentsthenameof yourblogsite. 12. ClickEditUserPermissiontochangethepermissionforthisgroupfromRead toBlogReadersandclickOK. NowwhenusersassignedtotheVisitorsgroupvisittheblogsite,theycanonlyview theexistingblogs.Theycanalsoviewthecommentsassociatedwiththem,buttheycannotcreatenew blogentriesoraddcommentstoexistingentries.Inasimilarway,youcancustomizepermissionsfor othergroupswhoaccessyourblogsite. Inthefuture,ifyoumaydecidethatyouwouldratherinheritrightsfromtheparentsite,youcando sobyreturningtothePermissionspageoftheblogsiteandselectingInheritPermissionsfromthe InheritancegroupofthePermissionToolsribbon.
249
CHAPTER4■USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
SettingItem-LevelBlogPermissions Inadditiontosettingtheoveralllistpermissionsasdescribedinthelastsection,blogs,likeotherlists andlibraries,alsoallowyoutofine-tunepermissionsthatdeterminewhocanread,create,andedit itemsinthelist.Let’slookatthepermissionsthataffectwhatausercanseeanddo.Beginbygoingto theBlogToolssectionoftheblogpageandselectingManagePosts.ThisactiondisplaysthePostslist,a listlikemanyoftheotherlistsyouhaveexamined.FromtheSettingsgroupintheListribbonselectList Settings.ThenselectAdvancedSettingsunderGeneralSettings. Thetopsectionofthispage,showninFigure4-49,beginswithanoptiontoallowyouto managementcontenttypes.Forthislist,leavethisoptionsettoNo.Thenextsectiondisplaysitem-level permissions.Noticethatyoucancontrolwhetheruserscanreadallpostsorjusttheirown.Ifuserscan onlyreadtheirownblogs,yourblogsitebecomesmorelikeaprivatediarythanapublicblog.
Figure4-49.AdvancedsettingsforthePostslist
250
CHAPTER4■ USINGYOURDOCUMENTLIBRARYWITHMICROSOFTOFFICE
Moreimportantly,youcandefinewhetheruserscancreateandeditallposts,onlytheirownposts, ornoposts.Youmaynotwanttoallowanyonewitheditpermissiontobeabletochangeallblogentries nomatterwhocreatedthem.Ontheotherhand,ifyouselectnone,youeffectivelyblockallattemptsto editordeleteapostonceyouhavesubmittedapost.Eventhecreatoroftheblogentrycannotgobackto editordeletedtheirownentries.OnlyasiteadministratororsiteownerwiththeManageLists permissioncantheneditordeleteposts.Youcontrolhowrestrictiveyouwanttomakethissetting. Next,determinewhetherthesearchengineincludesblogentriesinitssearch.Youcanalsoset whetheruserscandownloadblogentriesintoofflineclientsandwhetherthelistcanappearinbulkedit mode,otherwiseknownasDatasheetmode.Finally,SharePoint2010allowsyoutodeterminewhether thenew,edit,anddisplayformsappearwithinaseparatepopupdialogorwhethertheyappearasafullpageform.
Summary InChapter1,yousawhowtocreatedocumentsusingWordforyourdocumentlibrariesandhowto definedefaulttemplatesforthoselibraries.Inthischapter,youtookadeeperdiveintousingMicrosoft WordwithyourSharePointsite.YousawhowtoworkwithdocumentsinWordandthensavethem directlytoexistingSharePointlibrariesandevenhowtocreatenewdocumentsfromWord. Youalsolookedatmetadata.OfficeproductssuchasWordhavesupportedtheadditionalfile propertiesforsometime.SharePointmakesuseofthosepropertiesbyallowingyoutoassociatethem withcolumnsinalibraryview.Onceexposedascolumnsinaview,youcancustomizetheviewto aggregatetheinformationfoundinthosecolumnstocreatecounts,sums,filters,etc. YoualsolookedathowyoucanusetheDocumentInformationpaneltoshowmoreaboutthestatus ofthedocumentandyourlibrarysite.TheSharePointSearchfeaturehelpslocatedocumentsinyour librariesbecauseitsearchesforwordsnotonlyinthedocument’stitle,butalsointhedocument’s contentaswellasitsmetadata.YoualsocreatedentriestoyourblogsitesdirectlyfromwithinWordand postedthoseentrieswithoutloggingdirectlyintoSharePoint. MicrosoftWordstronglycomplementsSharePointandopensthedoortoweb-basedcollaboration supporttopeoplewithnormalOfficeskills.MostusersknowledgeableinWordcanbecomeproductive inacollaborativeenvironment,supportingdocumentlibrariesandcontributingtoblogsitesinashort time. Inthenextchapter,youwillexploreadifferenttoolintheMicrosoftOfficeSuite,Outlook.Youwill seehowOutlookintegratesitscalendarandtaskswithsimilarfeaturesinSharePoint.Youwillalsolearn howtouseOutlooktosynchronizedocumentssoyoucantakeadvantageofofflineediting.
251
CHAPTER 5
■■■
Using Outlook ThischapterfocusesonusingOutlook2010.AlthoughmuchofwhatIdiscussherealsoworkswith Outlook2007,previousversionsofOutlooksupportedfarfewerintegrationpointswithSharePoint.In fact,Office2003onlyallowedyoutoviewcopiesofSharePointlistssuchasthetaskslist,thecontacts list,andcalendarlist.Youcouldnoteditthedatainthesecopiedlistsandsendthechangesbackto SharePoint.WhileOutlook2003couldreceivealertsgeneratedbySharePointwhensomeonemade changestotheselists,itcouldnotuseRSS(ReallySimpleSyndication)feeds. Ofcourse,Outlook2007andOutlook2010expandontheselimitations,turningOutlookintoa virtualfront-endclientforSharePoint.TodaynotonlycanyoucopyliststoOutlook,butyoucanshare changesmadeinOutlookwithSharePoint.Inaddition,OutlooksupportsRSSfeeds,workflow integration,recordsmanagement,andmore. Let’sbeginbylookingatbasicsharingoflistssuchasSharePoint’scontactslistswithOutlook.
SynchronizingYourContactsListsBetweenSharePointand Outlook SupposeyouhaveoneormoreSharePointsitesthatyouregularlyvisitinyourorganization.Theymay bedepartmentalorprojectsites,itdoesn’tmatter.Whatdoesmatteristhateachofthesesiteshas multiplecontactsliststhatyoumightneedtoreferenceonaregularbasis.Butgoingonlineandfinding whichsitethecontactisineachtimeyouneedaphonenumber,physicaladdress,orane-mailaddress justtakestoolong.Ofcourse,youcouldjustreentertheinformationyoufrequentlyuseintoOutlook yourself,butwhohastimeforthat?Besides,storingdatainduplicatelocationsisasurewaytocreate datainconsistencieswhenonesourcegetsupdatedwhileothersdonot.Fortunately,SharePointcan simplifyyourlife.
ConnectingYourSharePointContactsListtoOutlook Tobeginorganizingyourcontactsinoneplace,openyourfavoriteSharePointsite,onethathasa contactslistthatyoufrequentlyaccess.I’mgoingtoopenthelistCoWorkerslocatedinmyteamsite. (Ofcourse,youcanbeginwithyourowncontactslistinoneofyourownteamsites.)
253
CHAPTER5■USINGOUTLOOK
1.
OpenthelistinaseparatewindowbyselectingthelistfromtheViewAllSite Contentpage.
2.
OpentheListribbonfromtheListToolsgroup.ThenintheConnect& Exportgroup,locatedthecommandConnecttoOutlook.
Atthispoint,SharePointattemptstoconnecttoOutlookonyourlocalcomputer.First,Internet ExplorerraisesasecuritywarningtotellyouthatMicrosoftOutlookisattemptingtoopencontenton yourcomputer.Sinceyouinitiatedthisaction,youshouldfeelsafeclickingtheAllowbuttonasshown inFigure5-1.
Figure5-1.VistaandWindows7trytoprotectyourcomputerfromdataconnections.
■NoteThewarningmessageinFigure5-1popsupfrequentlywhenyoufollowtheexamplesinthischapterand manyoftherest.However,Iwillnotdisplaythisdialogeachtime.Justkeepinmindthat,ifyouareworkingwith yourownSharePointservers,thereisnoreasonnottoallowthewebsitetoaccesscontentonyourcomputer. Also,thisdialogmayappearslightlydifferentlyifyouareusingWindowsXP.
Outlookrecognizesthisattemptandraisesawarningmessageboxaskingyouwhetheryouknow andtrustthissource.Tohelpyoudecidethisvitalsecurityquestion,themessagebox,showninFigure 5-2,displaysthenameofthesiteandthelist.Italsoincludesthelist’sURL.Thebuttonsatthebottomof theboxletyouaccepttheconnectionbyclickingYesorrejectitbyclickingNo.Ofcourse,inthiscase youtrustthesource,soclickYes.
254
CHAPTER5■ USINGOUTLOOK
Figure5-2.ConnectingtoatrustedSharePointcontactslist Inmostcases,youwillnotneedtoopentheAdvanceddialogbox.However,ifyouarecuriousand doclicktheAdvancedbutton,itwilldisplaythedialogboxshowninFigure5-3.Thisdialogboxallows youtochangethefoldernamewhereOutlookstoresthetransferredcontactslist.Bydefault,SharePoint concatenatesthesitenamewiththecontactslistname,usingahyphenbetweenthem.Thisusually definesauniquetaskslistnameinOutlook.However,youcansupplyyourownnameifyouprefer.You canalsoprovideadescriptionforthefolder.Outlookdisplaysthisdescriptionwhenyoulookatthe propertiesofthecreatedfolder.Thisdialogboxalsodisplaysotherpropertiesforinformational purposessuchasthelistname,listtype,anditsURL.
Figure5-3.Definingthefoldernameanddescriptionforasharedcontactslist AfteryouclickOK,SharePointtransfersallitemsfromtheSharePointlisttothenewfolderin Outlook.IftheSharePointlisthascolumnsthatdonothavecorrespondingfieldsinOutlook,Outlook
255
CHAPTER5■USINGOUTLOOK
ignoresthem.Table5-1showsalistofthedefaultSharePointcontactcolumnsandtheircorresponding Outlookcontactfields. Table5-1.MappingSharePointContactColumnstoOutlookColumns
SharePoint Column
Outlook Column
LastName
LastName
FirstName
FirstName
FullName
FullName
E-mailAddress
E-mail
CompanyC
ompany
JobTitle
JobTitle
BusinessPhone
Business
HomePhone
Home
MobilePhone
Mobile
FaxNumber
BusinessFax
AddressBusiness
Address
CityBus
inessCity
State/ProvinceBusiness Zip/PostalCode
BusinessZip/Postal
Country/RegionBusiness WebPage
State/Province
Country
WebPage
NotesNotes
256
CreatedBy
ModifiedBy
CHAPTER5■ USINGOUTLOOK
AddingSharePointColumnsThatWillSynchronizewithOutlook PerhapsyourealizedthatOutlooksupportsmanyotherfieldsthanthoseshowninTable5-1.Canyou usethosetoo?Yes,youcanusethemontheOutlooksidewithoutaffectingthesynchronizationofthe otherdatafieldswithSharePoint.SharePointignorestheseadditionalfields. InChapter2,yousawthatyoucouldaddcolumnstoalist.Let’susethatsametechniquetoadd someoftheotherfieldsthatOutlooksupportsthatwerenotintheinitialSharePointcontactslistby addingthecontact’shomeaddressinformation. 1.
BeginbyopeningthelinkedcontactslistinSharePoint.
2.
OpentheListribbonandselectListSettingsfromtheSettingsgroup.
3.
IntheColumnssection,clickAddfromexistingsitecolumnsatthebottom ofthissection.
4.
SelectAllGroupsfromthefirstdrop-downcomboboxifnotalreadyselected.
5.
Scrolldownthroughthelistoffieldsuntilyoufindthehomeaddressfields. Selectthefollowingfields: •
HomeAddressCity
•
HomeAddressCountry
•
HomeAddressPostalCode
•
HomeAddressStateorProvince
•
HomeAddressStreet
6.
BesuretochecktheboxAddtodefaultviewifyouwanttoseethesevaluesin thelistview.
7.
ClickOK.
Selecting Multiple Items Whenselectingmultipleitemsasinstep5,youcan •
SelecteachonebyclickingitandthenclickingtheAddbutton.
•
Double-clickeachitem.
•
Clickthefirstitem.WiththeShiftkeypressed,clickthelastitem.(Usethistechnique whenselectingacontiguousrangeofvalues.)ThenclicktheAddbutton.
•
Clickthefirstitem,andthenwhileholdingdowntheCtrlkey,clickeachadditional item.(Usethistechniquewhenselectingitemsscatteredthroughoutthelist.)Then clicktheAddbutton.
257
CHAPTER5■USINGOUTLOOK
Nowwhenyoureturntoyourlist,youcaneditanyorallofyourcontactitemstoaddhomeaddress information.However,justbecauseyouclickedOKtosaveyourchangesinSharePointdoesn’tmean thosechangeswillimmediatelyappearinOutlook.Toforcearefresh,opentheListribbonandagain selecttheConnecttoOutlookoptionfromtheConnect&Exportgroup.ThisforcesSharePointand Outlooktoresynchronizethechangesmade. Similarly,youcanmakeachangetocontactinformationinOutlook.Again,thechangetothefields visibleornotvisibleinthedefaultviewofthelistmaynotappearimmediatelyinSharePoint.Whycan’t youseethechanges?Actually,inthiscase,OutlookhaspassedthechangestoSharePoint,butwebpages donotautomaticallyrefresh.Toseetheupdatedvalues,clicktheRefreshbuttoninthebrowsermenu.
ManagingUpdateConflicts WhatifsomeoneupdatesacontactinOutlookatthesametimethatsomeoneelseupdatesthesame iteminSharePoint?Whathappenstobothsetsofchanges?Itdependsonwhosaveshischangesfirst.If theOutlookusersaveshischangesfirst,thenyouastheSharePointusergetanerrormessagewhenyou attempttosaveyourchangesthatsays: Save Conflict. Your changes conflict with those made concurrently by another user. If you want your changes to be applied, click Back in your Web Browser, refresh the page, and resubmit your changes. Whatthisstatementdoesnotmakeclearisthatyoumayneedtoreapplyyourchangestothe refreshedpage.Considerthatrefreshingawebpageupdatesallfieldsonthepageincludingthosefields justchangedbytheOutlookuser.This,ofcourse,erasesallyourchanges. IftheSharePointusersavesherchangesfirst,theOutlookuser’schangedoesnotgothrough,but againnoerrormessageappearstotelltheuserthattheirchangeswerenotsavedduetoaconflictwith anotheruser’sedits. Figure5-4showsanexampleofwhatalistsynchronizedfromSharePointlookslike.Noticethat OutlookplacessynchronizedlistsinafoldergroupnamedOtherContactsintheNavigationpanelof theContactspage.However,youcanclickanddragcontactslistsbetweenfoldergroups.Ifyoudonot likethesefoldergroups,youcancreateanewfoldergroupbyright-clickinganyofthefoldergroup headersandselectingNewFolderGroup.
258
CHAPTER5■ USINGOUTLOOK
Figure5-4.SynchronizedcontactsinOutlook Witheachcontactslist,youcanright-clickthelistnametodisplayitspropertiesfromthedropdownmenu.Thepropertydialogboxconsistsofthreetabbedpages.ClicktheGeneraltabtoseethe descriptionyouenteredbackintheSharePointListOptionsdialogboxinFigure5-3wheninitially synchronizingtheSharePointlisttoOutlook. Youalsohavetheabilitytoshoworhideacontactfolderfromthee-mailAddressBookdrop-down showninFigure5-5.Youcanfindtheoptioninthethirdpageofthepropertiesdialog.Whenyouclick thecheckboxbeforetheoptionShowthefolderasane-mailAddressbook,youcanalsodefine anothernametouseforthecontactlistotherthantheonethatappearsintheleftnavigationpanel. EvenifyouhidethecontactslistfromtheAddressBookonthee-mailpage,youcanstillopenthe Contactspageandclickthedesiredlistfromtheleftnavigationpanel.Thenlocatethecontactyouwant tosendane-mail.Finally,right-clickthecontactandselectCreate➤E-mailfromthepop-upmenuto beginane-mailmessagetothatperson.
259
CHAPTER5■USINGOUTLOOK
Figure5-5.SynchronizedlistsappearinOutlook’sAddressBook.
DeletingContacts JustasyoucaneditcontactinformationineitherOutlookorSharePoint,youcandeletecontactsfrom eitherlocationaswell.IfyoustartfromSharePoint,followthesesteps: 1.
Openthecontactslistyouwanttoedit.
2.
Locatethecontactyouwanttodelete.
3.
Hoveryourmouseoverthecontacttoactivatethedrop-downmenubuttonto therightofthecontact.
4.
Openthedrop-downmenu(seeFigure5-6).
Figure5-6.DeletingacontactfromSharePoint
260
CHAPTER5■ USINGOUTLOOK
5.
ClickDeleteItem.
Aswithdocumentsandotherlists,SharePointpromptsyouwithadialogboxtoensurethatyou reallywanttodeletetheitem.Rememberthatevenwhenyoudeleteitemsfromlists,SharePointfirst placestheminthesiteRecycleBinforalimitedtime,fromwhereyoucanrestorethemlater.
■NoteRememberthatyoucanaskyourSharePointadministratortochangethelengthoftimeitemsstayinthe RecycleBin.Bydefault,theystaythere30days.However,youradministratorcanchangethisbygoinginto CentralAdministrationandselectingManageWebApplicationsfromtheApplicationManagementtab.Then selectyourwebapplication,probablySharePoint–80ifyouacceptedthedefaultname.Then,fromtheGeneral Settingsdrop-downintheManagegroup,selectGeneralSettings.Finally,scrolldownthepagetotheRecycle BinsectiontotheRecycleBingroupandchangethenumberofdaysitemskeptintheRecycleBin.
IfyouopentheOutlookContactspageandviewthesharedSharePointlist,youwillfindthatthe contacthasalsobeendeletedfromtheOutlooklist.
RecoveringDeletedContacts Ifyouaccidentallydeletethewrongcontact,openthesiteRecycleBinfoundatthebottomoftheQuick Launchmenu.Youmayneedtoscrollthroughtheitemspreviouslydeletedtofindthecontactrecord,or youcansortontheDeleteddatefieldbyclickingit.However,afteryoufindit,clicktheboxtotheleftof thenameandclickRestoreSelectionfromthemenubaratthetopoftheRecycleBin. After30days(orwhatevernumberofdaysyourRecycleBinhasbeensetto),SharePointremoves theitemfromthesiteRecycleBinsoitdoesn’tcontinuetogrowindefinitely.Evenifyouweretogointo yourRecycleBinanddeleteanitemfromthebinbeforethe30dayshaveexpired,youcancontactyour SharePointadministratorandaskhimtoretrievetheitemfromthesitecollectionRecycleBin. SharePointholdsdeleteditemshereuntiltheoriginal30days(orothertimeperiod)hasexpiredbefore permanentlydeletingtheitem. Figure5-7showsthatthedeletedcontactintheRecycleBinisselectedforrestoration.Noticethat theRecycleBinalsocontainsadeleteddocument.TheRecycleBinholdseverythingfromliststo librariestowebpages.Ifyouhavetroublefindingadeleteditem,youmightwanttosortbyitemtypeas wellasthedeleteddateandtimetohelplocatetheitemyouwant.
261
CHAPTER5■USINGOUTLOOK
Figure5-7.RestoringadeletedcontactfromtheRecycleBin AfteryouclicktheRestoreSelectionlink,SharePointpromptstoconfirmtheitembynamethat youwanttorestore.WhenyouclickOK,SharePointrestorestheitemfromtheRecycleBin,returningit tothelistitoriginallycamefrom.Youmaybesurprisedtolearnthattheprocessofrestoringthecontact fromtheSharePointRecycleBinalsoplacesthecontactbackinOutlook’ssharedlist.Youcanverifythis byopeningOutlookandlookingatthesharedcontactslist. SowhathappenswhenyoustartbydeletingthecontactfromwithinOutlook?Inthiscase, SharePointrecognizesthatyoudeletedthecontactthroughOutlookandmovesthecontactinformation fromthelisttotheRecycleBin.Fromthatpoint,thestoryremainsthesame.YoucangointotheRecycle BininSharePointandrestorethecontacttoboththeSharePointlistandtheOutlookcontactslist.
■TipAquickwaytorefreshyoursharedcontactlististoswitchtooneoftheotherOutlookpages,suchasthe Mailpage,andthenswitchbacktotheContactpage.
MovingContactsbetweenLists SharePointdoesnotreallyprovideawaytomoveorcopyacontactfromonelisttoanother.However,if yousharebothcontactsliststhroughOutlook,Outlookcanaccomplishthistaskquicklyandeasilyby followingthesesteps:
262
1.
WithbothcontactslistssynchronizedinOutlook,openthelistthatyouare goingtocopythecontactfrominordertoshowtheindividualitemsit contains.
2.
Clickanddragthecontacttothedestinationcontactslisttitleinthe Navigationpanelontheleftsideofthescreen.
CHAPTER5■ USINGOUTLOOK
3.
Whenyoureleasethemousebutton,Outlookmovesthecontactfromthe originallistandplacesitinthenewlist.Youcanverifythisbyreturningtoyour SharePointwindowandviewingtheitemsineachcontactslist.Rememberto refreshthelistdisplaysifyoualreadyhadthemopen.
■TipThisabilitytocopybetweencontactslistsextendstoallcontactslistsinOutlook,notjustthoselinkedto SharePoint.Asaresult,youcanusethistechniqueasaneasywaytopopulateanewSharePointlistfromyour maincontactslistinOutlook.
IfyouworkatacompanythatusesExchangeServer,yourmainOutlookcontactslistalready containsallthepeopleinyourorganization.YoucantransferthatinformationtoacustomSharePoint listforadepartmentorprojectbyfollowingthesesteps: 1.
OpenSharePointandcreateanewemptycontactslistinthedesiredsite.
2.
Openthelistaftercreatingit.
3.
SelectConnecttoOutlookfromtheConnect&ExportgroupoftheList ribbon
4.
OpenthemainContactslistinOutlookusingtheContactspage.
5.
LocatethepeopleyouwanttoaddtotheSharePointlist.
6.
Right-clickanddragthecontactstotheSharePointlistnameinthenavigation panel.
7.
ReleasethemousebuttonandselectCopyfromthepop-upmenu.Inthis case,youdon’twanttomovethecontactsfromonelisttoanother.
8.
RepeatStep5tocopyeachadditionalcontacttotheSharePointlist.
9.
Whenfinished,returntoSharePointandopenthenewlist,orifyoustillhaveit openfrombefore,refreshthepage.
YounowknowhowtopopulateaSharePointlistfromOutlookwithoutretypingtheentries.
SynchronizingYourCalendarsbetweenSharePointand Outlook Calendarsseemtobespringingupeverywhere.IfyouhavebeenaMicrosoftOfficeuser,youprobably alreadyuseOutlook’scalendartotrackyourappointments,meetings,taskduedates,andmorewhilein theoffice.Youmayalsoaddyourpersonaleventssuchasdoctorappointments,birthdays, anniversaries,andyourchildren’sschoolevents. WiththeintroductionofSharePointcollaboration,ithasbecomeeasyforprojectmanagersand groupmanagerstocreateshareableonlinecalendarswitheventsthataffecteveryoneintheprojector group.Likecontactslists,themoreprojectsyoubelongto,themorecalendarsyoumustcheckona
263
CHAPTER5■USINGOUTLOOK
regularbasistomakesurethatyoudonotmissanevent,adeadline,orameeting.Withsomanyplaces tocheckfortheinformationyouneed,youcaneasilymisssomethingcritical. Tosolvethisproblemofhavingtoomanycalendars,youcanjoincalendarsfromSharePointand Outlookintoacommonview.Functionally,thistechniqueworkssimilarlytoviewingcalendarsfrom multiplepeople.Besidesbeingabletoviewmultiplecalendarstogetheronthescreen,sharingcalendars betweenSharePointandOutlookletsyoumanagemultipleSharePointcalendarsfromOutlook.
AddingaSharePointCalendartoOutlook ToaddaSharePointcalendartoOutlook,beginbyopeningthecalendarwithinSharePoint,asshownin Figure5-8.
Figure5-8.TypicalcalendarlistshowninSharePoint’scalendarview
264
CHAPTER5■ USINGOUTLOOK
Itdoesnotmatterwhichcalendarviewyoubeginfrom,asSharePointsynchronizesallcalendar itemswithOutlook.InformationthatSharePointsynchronizesincludesthesecolumns: •
ItemTitle
•
Location
•
StartTime
•
EndTime
•
Description
•
AllDayEvent
•
Recurrence
■NoteWhilecalendareventsinOutlooksupportsschedulingoptionssuchasselectingattendees,setting reminders,andaddingflagsandcategories,thesefeaturesdonotexistinSharePoint.Thisdifferenceinsupported elementslimitswhatinformationSharePointcansynchronize.
Next,opentheCalendarribbon,asshowninFigure5-9,andselecttheoptionConnecttoOutlook fromtheActionsgroup.
Figure5-9.ChooseConnecttoOutlooktoconnectacalendarlisttoOutlook. Aswithcontacts,InternetExplorerbeginsbypoppingupapairofdialogssimilartoFigure5-1and Figure5-2.ThefirstasksifyoureallywantopenMicrosoftOutlooktoaccesswebcontent.Clickthe Allowbuttononthisdialog.Outlookneedsyoutoverifythatyoutrustthesourcebeforesynchronizing withacalendarlistfromSharePointoranyothersource.IfyouclickDon’tAllow,theprocesshalts. InthedialogboxshowninFigure5-10,OutlookdisplaystheURLofthecalendarlistsoyoucan verifywhetheryoutrustthelist.Ifso,clickYestocontinue.Alsointhisdialogbox,Outlookshowsthe nameitintendstoassigntothecalendar.Bydefault,thecalendarnameconcatenatesthesitenamewith thelistnameseparatedwithahyphen.
265
CHAPTER5■USINGOUTLOOK
Figure5-10.Confirmthatyoutrustthecalendarsource. IfyouclicktheAdvancedbuttoninthisdialogbox,youcanspecifyyourowncalendarnameaswell asadescription.YoucanviewthisdescriptionwhenyouopenthepropertiesoftheCalendarfolder withinOutlook.Youmightusethisdescriptiontoprovideamoredetailedexplanationofthepurposeof thecalendar. AfterOutlookcreatesthefolderfortheSharePointcalendar,youcandisplayitwithintheCalendar page.Outlookhastheabilitytodisplaytwoormorecalendarsatthesametime.Todisplaymorethan onecalendar,opentheNavigationpanelshowninFigure5-11ifnotcurrentlyopen.Youcandothis throughOutlook’sViewmenu.
Figure5-11.TheCalendarNavigationpanelinOutlook
266
CHAPTER5■ USINGOUTLOOK
InthetopportionoftheNavigationpanel,acalendarappears.Usethiscalendartoselectthe month,week,ordayyouwanttoview.Beneaththiscalendarisasectionthatcontainsoneormore subsections.Bydefault,thesubsectionnamedMyCalendarsrepresentsstandardcalendarscreated withinOutlook.Inthissubsection,youshouldhaveatleastonecalendarnamedXXXXCalendarwhere XXXXrepresentsyourOutlookname.ThisisyourprimaryOutlookcalendar.Ifyouhavecreated additionalcalendarsorattachedadditionalfilestoOutlooksuchasarchivedOutlookfilesfromthe currentordifferentmachines,youmayseeadditionalcalendarsfromthesearchivesaswell.
Creating a New Outlook Calendar YoucancreateanewOutlookcalendarforaprojectorotherspecialpurposebyright-clickinganywhereon thelineofoneoftheexistingcalendarsintheleftnavigation.Fromthedrop-downmenuthatappears, selectNewCalendar. 1.
Inthedialogboxthatappears,supplyanameforyournewcalendar.
2.
MakesurethattheFolderContainsdrop-downhastheoptionCalendarItems selected.
3.
Selectwhereyouwanttocreatethecalendar.Youmustcreateitfromauser account,notunderanotherfolderorcalendar.
4.
Oncecreated,thenewcalendarappearsintheMyCalendarsubsectionofthe Navigationpanel.
Todisplaythecalendar,clickthecheckboxtotheleftofthename. Asecondsubsection,namedOtherCalendars,holdscalendarslinkedtoOutlookfromSharePoint.I usetheterm“linked”hereratherthan“copied”toemphasizethattheSharePointcalendarcanbe updatedineitherSharePointorOutlookandhavethoseupdatesdisplayedintheothersystem. Youcandisplayanycombinationofthecalendarsfromthesetwosubsectionsbyselectingthem usingthecheckboxtotheleftoftheirnames.Whileyoucandisplayseveralcalendarsatonce,the physicalwidthofyourmonitordetermineshowmanycalendarsyoucanreasonablyview.Generally, viewingmorethantwoorthreeatatimemakesitdifficulttoreadtheeventsandappointments. However,bypositioningyourmouseoveraniteminthecalendar,aToolTip-stylewindowappears beneathyourcursorwiththeitem’stime,subjectandlocation. Figure5-12showstwocalendarssidebyside.ThedefaultOutlookcalendarappearsontheleft,and aSharePointcalendarontheright.
267
CHAPTER5■USINGOUTLOOK
Figure5-12.DisplayinganOutlookcalendarandaSharePointcalendarsidebyside Outlookletsyoudisplayoneday,oneweek,orafullmonthofeachcalendarbyusingthebuttons acrossthetopofthecalendararea.YoucanquicklymovebetweenmonthsbyclickingthePreviousand Nextbuttons,representedbyleftandrightarrowsrespectively,atthetopleftofthecalendararea.Each clickmovesyourviewonemonthatatime.
■CautionYoumustbeinmonthmodeinordertomovethroughyourcalendaroneweekatatimeusingthe scrollwheelonyourmouse.
OverlayingCalendars Whiledisplayingtwocalendarssidebysideallowsyoutovisuallycompareeventsandappointmentson commondays,youcanmakethisprocesseasierbyoverlayingthecalendarsontopofeachother.Todo this,clickthearrowtotheleftofthecalendarnametabofanycalendarafterthefirstone.Whenyoudo this,Outlookoverlaysthecalendarstoshowasingleviewofyoureventsandappointments.
268
CHAPTER5■ USINGOUTLOOK
Alternatively,youcanselectOverlayfromtheArrangementgroupoftheViewribbon,asshownin Figure5-13.
Figure5-13.SwitchingviewmodesintheArrangementgroupoftheViewribbon WhenOutlookoverlayscalendars,itdisplaysatabforeachcalendaratthetopofthecombined calendar.Clickthetabofthecalendaryouwanttoappearontopoftheothers.Theeventsand appointmentsofthetopcalendarappearinboldblacktextcomparedtotheeventsandappointments beneaththetopcalendar.Youshouldalsonoticethateventsforcalendarsbeneaththetopcalendaruse afontcolorthatmatchesthetabcolorsoyoucaneasilyidentifytowhichcalendaraneventbelongs whenoverlayingthreeormorecalendars.Clickingbetweenthetabsillustratesthispoint.Figure5-14 showstwooverlaidcalendars.Youcanoverlaycalendarsinanyoftheviewmodes:month,week,orday.
■NoteGrayscaleimagessuchasinthisbookdon’treallydojusticetothefull-colorimageofoverlaidcalendars. However,eveninagrayscaleimage,youcanidentifythe“on-top”calendarbecauseitwillhaveadarkerfontfor thecalendartext(inthiscase,Michael’sCalendar).
269
CHAPTER5■USINGOUTLOOK
Figure5-14.Overlayingtwocalendarsusingthemonthview
■TipIfyoucanseethecalendarsofyourcoworkers,youcanusethistechniquetooverlaythemtoquicklyspot timeswhenyoucanhavegroupmeetings.
Todisplayeachcalendarseparatelyagain,clickthearrowtotheleftofanycalendarnameinthetab area.YoucanalsoclickOverlayfromtheArrangementgroupoftheViewribbontodeselectthisoption.
MakingChangestoCalendarItems YoucanchangethepropertiesforaneventorappointmentinasynchronizedSharePointcalendarby double-clickingitinOutlooktoopentheitem’spropertyform.ThenclicktheSaveandClosebuttonto savethosechanges. OutlooksynchronizeschangestotheoriginalSharePointcalendarsothatsomeoneviewingthe calendaritemdirectlyfromSharePointseesyourchanges.Similarly,changesmadeintheSharePoint calendarupdatetheviewinOutlookthenexttimeyouopenthecalendarpage(orwhenyoupressF9).
270
CHAPTER5■ USINGOUTLOOK
■CautionWheneditinganeventorappointmentfromaSharePointcalendarwithinOutlook,youcanset propertiesthatwillnotsynchronizebacktoSharePointsuchascategories,flags,reminders,andseveralothers. WhileOutlooksavesthesepropertiesforusewithinOutlook,SharePointignoresthem.Forexample,Categorizein Outlookisusedtovisuallytagappointmentswithdifferentcolorsbasedoncategoriesthatyoudefinewhile CategoryinSharePointisatextpropertyorattributeofthecalendareventandhasnothingtodowiththephysical displayoftheevent.
BecauseuserscanupdatethecalendarfromeitherSharePointorOutlook,conflictresolutionfor calendardataishandledthesamewayaswhendealingwithcontactdatadescribedinthe“Managing UpdateConflicts”sectionofthischapter.
CopyingandMovingItemsbetweenCalendars Ifyouhaveappointmentsinmorethanonecalendar,youmightdisplaymultiplecalendarstohelp visuallyorganizeyourday.Youcanalsolookforconflictingappointmentsorfreetime.Youmighteven wanttomoveappointmentsoreventsfromonecalendartoanother. Tomoveaneventorappointmentwhenyouhavetwoormorecalendarsdisplayed,clickanddrag anitemfromoneopencalendartothenext.Ifyouarecopyinganeventthatispartofarecurring sequence,apopupdialogaskswhetheryouwanttocopytheentireseriesorjusttheselected occurrence.Youcanalsocancelthecopyfromthisdialog.Furthermore,ifyoucopyaneventfrom OutlooktoSharePoint,Outlookdisplaysadialog(showninFigure5-15)thatwarnsyouthatcopying eventsfromOutlooktotheSharePointlistautomaticallyremovesincompatiblecontentduring synchronization.ThereisnocorrespondingwarningwhencopyingeventsfromSharePointtoOutlook.
Figure5-15.Outlookwarning Whileyoucaneasilychangethedayofanappointmentwithinasinglecalendardisplayedinmonth mode,youcannotchangethestartorendtimesoftheappointmentbysimplydraggingtheitem;you mustmanuallyeditthetimes.Thismethod,however,ismuchfasterthanreenteringtheappointment.
271
CHAPTER5■USINGOUTLOOK
■CautionRemember,anyonewithaccesstothatSharePointcalendarcanseeanycalendareventyoucopytoa SharePointcalendar.ItwillalsosynchronizewiththeirOutlookiftheyconnectthatcalendartotheirlocalOutlook. And,ofcourse,youmaynotwanttoshareyourpersonalappointments.
YoumaywanttocreateaseparatecalendarinOutlooktoplanaprojectschedule.Thenwhenyou haveworkedoutthedetails,youcanlinktoaSharePointcalendaronaprojectcollaborationsiteand transferyourmilestonedatesbydraggingthemfromonecalendartoanother. YoucancopyitemsineitherdirectiontoorfromSharePoint.Youcouldalsousethistechniqueto copyimportanteventsorappointmentsfromasharedcalendartoyourpersonalcalendar.However, oncecopied,thecopyinyourpersonalcalendarwillnotshowchangesmadetotheSharePointeventor appointmentorviceversa. If,ratherthancopy,youwanttomovetheitemfromonecalendartoanother,youcouldproceed exactlylikethecopymethodIjustoutlined.Aftermakingthecopy,deletetheitemfromtheoriginal calendar.Alternatively,youcanperformtheoperationinasinglestepbyholdingdowntherightmouse buttonwhileyoudragtheitem.Whenyoureleasethebutton,youcandecideviaapop-upmenu whethertocopyormovetheitemtothenewlocation.
■TipNeedtocreateaprojectcalendarbutfeelmorecomfortableworkingwithOutlook’scalendarinterface?No problem.BuildyourprojectcalendarinaseparateOutlookcalendar,linktotheprojectcalendarinSharePoint,and copytheeventsfromyourlocalcalendartoSharePoint.
DeletingItemsfromtheCalendar WhenyoudeleteanitemfromanOutlookcalendar,youcanrestoreitbyselectingUndofromtheEdit drop-downmenuaslongasyouhavenotclosedOutlook.However,afteryoucloseOutlook,youcannot recoverit. Ontheotherhand,ifyoudeleteanitemfromaSharePointcalendar,evenifyouperformthedelete onasynchronizedcalendarwithinOutlook,SharePointplacesthedeletediteminthesite’sRecycleBin. YoucanrecovertheitembyopeningtheRecycleBinandselectingtheitemtorestore,asshownin Figure5-16.ThenclicktheRestoreSelectionoption.
272
CHAPTER5■ USINGOUTLOOK
Figure5-16.RecoveringadeletedcalendaritemfromSharePoint’sRecycleBin Afterconfirmingthatyouwanttorestoretheitem,SharePointputstheitembackinthecalendar. YouwillalsoseetherestoreditemintheOutlooksynchronizedcopythenexttimeyouopenOutlook.If youhaveOutlookopenwhilerestoringtheitem,youmayneedtoclickofftheCalendarpage,then perhapsgototheMailpage,andthenreturntothecalendarpagetoseetherestoreditem.Youcanalso pressF9toperformasend-receiveupdate.
SynchronizingTasksbetweenSharePointandOutlook Sharingtasksmaybeasimportantassharingcontactsformanypeoplewhentheybeginusing SharePointtogetherwithOutlook.IfyoualreadyuseOutlooktoplanyourday,youknowhowvaluableit canbetokeepallyourtasksinoneplacewhereyoucanmonitorstartandduedates,grouptasksby priority,categorizeyourtasksbypercentcompletion,andsetupremindersasdeadlinesapproach.If youworkasaconsultant,youcanuseOutlook’sTaskstooltotrackhoursforbillinginformation.You canevenusethelargetextareaOutlooktasksprovideasataskjournal.Fornon-consultants,youmight usethesefeaturestodocumenttheworkeffortrequiredtocompletetasks.Youmightevendocument externalfactorsthataffectyourabilitytomeetdeadlines. Nomatterthespecifics,usingtheTasksfeatureinOutlookcanhelpyouorganizeanddocument yourwork.Formanyofthesesamereasons,yourimmediatemanageroryourprojectmanagersmight alsousethetaskslistandprojecttaskslistfeaturesofSharePointasaconvenientwaytoplanworkloads andassigntaskstoyou.However,nowyouhaveaproblem:youmustviewtaskslistsscatteredinseveral differentplacesacrossoneormoreSharePointinstallations.Yourbosskeepshistaskslistinthe departmentworksite,whileeachoftheprojectmanagersyousupporthavetheirownprojectsiteswith theirindividualtaskslists.Inaddition,youhaveyourownpersonaltasksliststoredinOutlookonyour desktop.Howcanyoukeepupwithchangestotheindividualtaskslistsstoredindifferentplacesto determinewhatyoureallyneedtofocusontoday?Ofcourse,youcouldperiodicallyopeneachlistone atatimeandcheckfornewtasksorchangestoyourexistingtasks.However,asyoubecomebusyand focusonanyonetask,youmayforgettochecktheothertaskslistsforthelatestcrisis.Fortunately, OutlookcanserveasacollectionpointformultipleSharePointtaskslistsandcandisplaythemtogether withyourownpersonaltaskslistthroughasinglepage.
273
CHAPTER5■USINGOUTLOOK
What About the Issue Tracking List? PerhapsyourememberfromChapter2thatanotherlistexiststhattrackstasks:theissuetrackinglist. Yourhelpdeskstaffmightusetheissuetrackinglisttologissuescalledintothem.Theycouldusethislist toassignissuesthattheycouldnotdirectlyresolvetotheappropriatedevelopmentstaff.Youmighteven usetheissuetrackinglistonyourpersonal,project,ordepartmentsitetotrackproblems. Youmightthinkthatitwouldbegreattocombinethesetaskswithothertasksgatheredfromother SharePointtaskslistsandprojecttaskslists.Unfortunately,SharePoint2010stilldoesnotsupport connectingtoOutlookfromanissuetrackinglist. Inthemeantime,youcouldsetupanalertinthelistbyclickingAlertsintheActionsmenuofthelist. TheninthesectionSendAlertsforTheseChanges,selecttheoptionAtaskisassignedtome.Thiswill sendyouane-mailwhenanyoneaddsorassignsanewtasktoyou.
AddingTasksListstoOutlook Tobeginorganizingyourtasks,openSharePointandidentifythenamesandlocationsofeachtaskslist youwanttosynchronizewithOutlook.Inthissection,I’mgoingtoloadtasksfromthreetasksliststo showhowOutlookgathersyourtasksinoneplace.Thesetaskslistsincludethefollowing: •
DataServicesDeptTasks:Abasictaskslistcreatedbyadepartmentmanager,as showninFigure5-17
Figure5-17.TheDataServicesDeptTaskslistfromSharePoint
274
CHAPTER5■ USINGOUTLOOK
•
MyHelpDeskCalls:Ataskslistupdatedbythecompany’shelpdesk,asshownin Figure5-18.
Figure5-18.TheHelpDeskCallslistfromSharePoint •
CollaborationSiteforHR:Aprojecttaskslistcreatedbythecollaborationproject manager,asshowninFigure5-19.
275
CHAPTER5■USINGOUTLOOK
Figure5-19.TheCollaborationSiteforHRlistfromSharePoint 1.
OpentheDataServicesDeptTaskslistasshownpreviously.Besurethatthe listmenuappearsacrossthetopofthelist.
2.
OpentheListribbonandclickConnecttoOutlookfromtheConnect& Exportgroup.
Whenyouselectthisoption,SharePointattemptstoconnecttoOutlookonyourlocalcomputer.As yousawearlierwithsynchronizingcontacts,Outlooktriestoprotectyoufromoutsideapplications writingtoOutlookandthusdisplaysawarningmessagewhenitdetectssuchanattempt(shownin Figure5-1).Inthismessagebox,youcanacceptorrejecttheconnection.Inthiscase,trustthe connectionandacceptthedefaultnameforthenewtaskslistSharePointcreatesinOutlookforthe transferreddata. Inasimilarfashion,youcanopeneachoftheothertwolistsandattempttotransferthemto Outlook,acceptingtheirdefaultnames.YouwillfindthattheHelpDeskCallslistbasedontheIssue TrackinglisttemplatewillnotconnecttoOutlook.Therefore,Figure5-20showstheNavigationpanel onOutlook’sTaskspageafterattachingtheothertwolists.
Figure5-20.Outlook’sTaskspageNavigationpanel
276
CHAPTER5■ USINGOUTLOOK
EditingTasksfromOutlook Afteryouhaveconnectedtoprojectordepartmenttaskslists,youcouldeditthesetaskswithinOutlook andhavethoseeditsappearinSharePoint,justlikewithcontacts.However,unlessyouaretheproject managerordepartmentmanagerandownthetaskslist,Iwouldrecommendcautionaboutmaking changes.Ontheonehand,yourmanagermaywantyoutoupdateselectedfieldssuchasthe% Complete,FinishDate,CompletedFlag,andNotesfields.Ontheotherhand,thatmanagerwouldnot appreciateyourchangingthedetailsofthetaskortheduedate.Atthispoint,SharePointdoesnot providecustomcolumn-levelsecurity,soifusersneededitpermissionsonsomefields,theygetedit permissionsonallfields.
■NoteIfyouhaveSharePointdevelopersonyourstaff,theymightbeabletoaccomplishthistaskusing SharePointEventReceivers.
Ofcourse,ifyoumanagethelist,notonlycanyoueditexistingtasks,butyoucanalsocreatenew tasksanddeletetasksfromwithinOutlook.Youcanevenmonitorthestatusoftasks,theirprogress,and theircompletionfromwithinyourOutlookTaskspage,evenasyourstaffupdatestheirtaskstatus throughtheirOutlookTaskspages,aslongasyoubothlinkthroughthesameSharePointtasklist. Sowhatifyouwanttopreventunintendedchangestoyourtasksbyyourstaff?Onewayistouse custompermissionsonthetasklist.Anothermethodistouseanapprovalprocessliketheoneyousaw earlierfordocuments.Whenturnedon,theapprovalprocesshidesthepublishingofchangestothe taskslistuntilapersonwithapprovalrights,suchasyou,approvesthechanges.Theuseofapprovals providestwobenefits.First,youcansimplydenyanyunintendedchangesthatmightmodifyordelete thetask.Second,youcanreviewthelegitimateupdatestothetasksbyyourstafftomonitorwhatthey haveaccomplished. Beforeyouactivatetheapprovalprocess,makesurethatyouhaveassignedApprovalpermissionsto managersofthelists.Thenfollowthesestepstoturnontheapprovalprocessforataskslist: 1.
Openthetaskslistwhereyouwanttoenabletheapprovalprocess.
2.
OpenListSettingsintheSettingsgroupoftheListribbon.
3.
ClickVersioningSettingsintheGeneralSettingssection.
4.
IntheContentApprovalarea,selectYestorequirecontentapproval.
5.
Youcanalsochoosetokeepbothmajorandminorversions.Irecommend keepingatleasttwomajorversionswithdraftversionsmadetothemost recentapprovedversion.Thesesettingsprovidebasicversionprotection withoutconsumingahugeamountofadditionalstoragespace.Inaddition, theyletyouseefromwhatthecurrentdatawaschanged.Changethese settingsintheItemVersionhistorysectiontosuityourneeds.
6.
InDraftItemSecurity,Irecommendonlyallowinguserswithapprovalrights andtheauthortoviewthechanges.Thatwayeveryoneelseseesonlythemost recentlyapprovedversions.
7.
ClickOKtoacceptthesechanges.
277
CHAPTER5■USINGOUTLOOK
8.
Clickthenameofyourlistinthebreadcrumbsatthetopofthepagetoreturn tothelistview.
■NoteDraftversionsoftasksmaynotbeascommonasdraftversionsofdocuments,butyoumayencounter them,especiallywhenmanagersbuildtaskslistsforlargeprojects.
YoucannowconnectthelisttoOutlook.SelectConnecttoOutlookfromtheActionsmenuand tellOutlookthatyoutrusttheSharePointlistwhenthemessageboxappears.
SendingE-mailsfromTasks Youcansendane-mailwhenyouassignatasktoapersonfromwithinyourSharePointtasklist.By default,SharePointturnse-mailnotificationsoff.However,youcaneasilyturnthemonbygoingtoyour tasklistandchoosingListSettingsfromtheSettingsgroupoftheListribbon.ThenselectAdvanced SettingsfromtheGeneralSettingsoptiongroup.OntheAdvancedSettingspage,locatetheE-mail NotificationgroupandclicktheYesradiobuttonforthequestionaskingwhethertosendane-mail whensomeoneassignsownership.ClicktheOKbuttontoexitthispageandthennavigatebacktoyour tasklist. Nowwhenyouaddanewtasktothetasklist,ifyoudefinetheAssignedTopropertysettingittoa validuserthatSharePointknowsandwhohasane-mailaddress,SharePointsendsane-mailtothat personassoonasyouclickOKtosavethattask.
■TipTheSharePointe-mailnotificationforyourtasklististurnedonifyouseeamessageatthetopofthepage whenaddinganewtaskthatsaysThecontentofthisitemwillbesentasane-mailmessagetotheperson orgroupassignedtotheitem.
UsingOutlooktoWorkOfflinewithContent YoucanworkondocumentsinadocumentlibrarybyconnectingtheSharePointlibrarytoOutlookas describedpreviouslyforcontactsandtasks.Withoneadditionalstep,youcancheckthedocumentout fromwithinSharePointtoprotectyourchanges. Openthelibrarythatcontainsthedocumentyouwanttoworkon.Ifyourdocumentisinafolder withinthelibrary,openthefoldersuntilyouseethedocumentlistcontainingthedocumentyouwant. Fromwithinthedocumentlibrary,right-clickthedocumentsyouwanttoworkwithofflineand checkthemout.Youdonothavetocheckouteverydocumentinthelibrary,justtheonesyouplanon workingwithoffline.Thisallowsotheruserstoworkwiththedocumentsyouhavenotcheckedout. SelecttheConnecttoOutlookoptionintheActionsmenu.Outlookopensonyourlocalcomputer, ifnotalreadyopen,andpromptsyoutorespondwhetheryoutrustthesourceattemptingtoconnectto it.SinceyouknowthesourceisyourSharePointdocumentlibrary,checkYestocontinue(shownin Figure5-1andFigure5-2).
278
CHAPTER5■ USINGOUTLOOK
OutlookthencreatesafoldernamedSharePoint ListsifonedoesnotalreadyexistinyourMail Folderslist.Itthenaddsafolderforthesitelibraryusingthenamingconvention .Withinthisfolder,itbuildsanyadditionalfolderstructureneededtomatchthefolder hierarchywithinthelibrary,downtothefoldercontainingyourdocument.Inthelastfolder,theoneyou saidtoconnecttoOutlookfromSharePoint,Outlookdisplaysalistofallfiles.Figure5-21showsan exampleoftheTrainingfolderfoundwithintheSharedDocumentslibraryofasitenamedMicMin.
Figure5-21.SharedDocumentslibraryreferencedthroughOutlook Whenyoulookatthefilesinthisfolder,howcanyoudeterminewhichyouhavecheckedoutsoyou caneditthemoffline?Ifyoupositionyourmouseoverthefilename,theToolTiptextbeneaththefile tellsyouwhenthefilewaslastmodified,whocurrentlyhasitcheckedout,andthedocument’ssize. NotethatnoonehasthedocumentcheckedoutiftheCheckedouttolinedoesnotcontainthenameof auserimmediatelyafterit.Finally,ifyoudouble-clickanyfileinthefoldertoopenit,Wordopensthe documentinReadOnlymodefirstbutdisplaysthemessageshowninFigure5-22atthetopofthe openeddocument.
Figure5-22.SharedDocumentseditedofflinethroughOutlook Thismessageremindsyouthatthedocumentisanofflinedocumentandthat,ifyoueditthe document,youmustsaveitbacktotheserverlater.TheconnectionbetweenSharePointandOutlook copiesallthedocumentsinthefoldertoyourlocaldraftsfoldersoyoucanviewthefilesoffline.Youcan eveneditdocumentsofflinethatyoudidnotfirstcheckout.However,onlydocumentsthatyoudo checkoutfirstbeforedisconnectingfromyournetworkaresafetoedit.Bysafe,Iamreferringtothe
279
CHAPTER5■USINGOUTLOOK
abilitytoeditthedocumentwithoutconcernaboutsomeoneelseeditingthesamedocument.Ifyou wanttoeditthedocument,youmustclicktheEditOfflinebuttonshowninFigure5-22.
■TipOutlookprovidesagreatpreviewfeatureforOfficefilessuchasWord,Excel,andPowerPoint.Whenyou clickane-mailmessagewithanattachmentfromoneoftheseapplications,youcanpreviewtheattachmentby clickingit.Similarly,whenyouuseOutlooktoworkofflineonSharePointlibrarieswiththesefiletypes,youcan previewtheircontentwhenyouselecttheindividualitemsinthelinkedlibrary,asshowninFigure5-21.
Let’sassumethatyouwanttoworkonthedocumentlater.Afteryouhavedisconnectedfromyour network,youcaneditthelocalcopyofthedocumentsavedintheSharePointDraftsfolder.Youcan openthedocumentbydouble-clickingitthroughOutlookorbyopeningyourSharePointDraftsfolder anddouble-clickingthefiledirectly.Infact,youcanopen,edit,andsavethedocumentrepeatedlywhile disconnectedfromthenetwork.Wordstoresallyourchangesinthelocalcopyofthefile. Aftereditingadocumentoffline,youwillseethefollowingtextatthetopofthedocumentpreview withinOutlook. Changes to this document are only available on this computer. in your changes.
Open this document to check
Youwillalsoseeasmalliconofapagewitharedarrowontherightsidebeneaththedate,asshown inFigure5-21. YoucanuploadyourchangestoadocumentthatyoudidnotcheckoutfromSharePointthenext timeyouconnecttothenetwork.Tobegintheupload,doubleclickthedocumentnamefromwithin Outlook.OutlookdisplaysthemessageshowninFigure5-23.ClicktheUpdatebuttontosendyour currentversionofthedocumenttoSharePoint.Ifyouarenotquitereadytosendyourupdatesto SharePointyet,youcancontinueeditingwithoutupdatingSharePointbyclickingtheDonotupdate serverbutton.
Figure5-23.Prompttoupdateanuncheckedoutdocumentafterreconnectingtothenetwork IfthedocumentwascheckedoutbeforeeditingitofflinefromOutlook,youcansimplycheckit backinfromwithintheSharePointlibrarythenexttimeyouconnecttothenetwork.FromOutlook,you willseethefollowingmessageatthetopofpreviewwindowwhenyoucheckoutafilebefore disconnectingfromthenetwork.
280
CHAPTER5■ USINGOUTLOOK
Changes to this document are only available on this computer. your changes, check in this document from your Web browser.
To update the server with
Theadvantageofcheckingoutthedocumentbeforedisconnectingfromthenetworkisthatyouwill haveexclusiveaccesstothedocument.Nooneelsecanmakechangestothedocumentwhileyouhaveit checkedout.Therefore,whenyoucheckthedocumentbackin,thereisnochanceofconflicts.Ifyoudo notcheckoutthedocumentfirstandsomeoneelseeditsthedocumentfromSharePoint,youmayhave toreconcileyourdocumentchangeswiththeirchanges.
LettingAlertsNotifyYouofSharePointChanges AnalertisafeatureofSharePointthatyoucanusefornotificationofchangesmadetolibrariesandlists viae-mail.Thissavesyouthehassleofconstantlyreturningtothelibraryorlisttoseeifanythingwas changed.Withamanualcheck,youmightspotnewadditionsordeletionstothelibraryorlist.However, unlessyouweretotrackthemodifieddatesofindividualitemsinthelibraryorlist,itwouldbedifficult todeterminewhensomeonemodifiedthem.Alertscandothisworkforyou.Ifirstdiscussedalertsin Chapter2inthecontextofyourinitialexplorationoflists.YoucanturnalertsonbyopeningtheLibrary ribbonandclickingonthebottomhalfoftheAlertMebutton,asshowninFigure5-24.
Figure5-24.SelectingtheAlertMeaction Yourtwooptionsaretosetanalertonthecurrentlibraryortomanageyouralerts.Let’sfirstlookat howtocreateanewalertonthelibrary.
ConfiguringYourAlerts TheSetalertonthislibraryactionopenstheNewAlertpageshowninFigure5-25.Thefirstproperty youmustdefineistheAlertTitle.Overtime,youmaycreatehundredsofalertswithinaSharePointsite. Sonamingthealertcarefullyanduniquelynowhelpsyoumanageyouralertslater.NotethatSharePoint usesthealerttitleasthesubjecttextwhensendingyouthealertviae-mail.Auniquenameinthesubject wouldcertainlyhelpyouidentifywhichalertsyouneedtolookatfirst.SharePointalsousesthealerttitle whenitlistsyouralerts,shouldyoudecidetodeletesomeofthemlater.
281
CHAPTER5■USINGOUTLOOK
Figure5-25.DialogboxwhencreatinganewAlert Afterthealerttitle,youcanspecifywhoshouldreceivethealert.Bydefault,SharePointplacesyour SharePointuserIDinthisfield,whichlinkstothee-mailaddressdefinedinyouruseraccount.However, youcancreatealertsforotherpeopleifyouhaveadministratorrightsbyaddinge-mailaddressesfor othersseparatedwithsemicolons.Ifseveralpeopleneedtoreceivethesamealert,youcansavetime withthisfeaturebynothavingtocreateindividualalertsforeachperson.
282
CHAPTER5■ USINGOUTLOOK
Next,youneedtospecifyforwhichtypesofchangesyouwanttosendalerts.Ofcourse,youcould sendalertsforallchanges,butthatmightcreatetoomanye-mails.Youcanlimitalertstojustadditions, modifications,ordeletions.Unfortunately,youcannotselectbothadditionsanddeletions,butnot modifications.Radiobuttonsusedinthissectiononlyallowmutuallyexclusiveselections. Youcanalsospecifywhetheryouwanttoseealertswhensomeoneotherthanyourselfchangesany document.Departmentandprojectmanagersmaywanttochoosethisoptiontokeepontopof documentsundertheirresponsibility.Youcanalsolimitalertstowhensomeonemakeschangesto documentsyoucreatedormodifiedlast.Withtaskslists,youcansetyouralerttonotifyyouofonly thosetasksassignedtoyou. Thefinalsectionletsyoudefinethefrequencywithwhichyouwanttoreceivethealerts.Youcould receivethealertassoonastheeventmonitoredoccurs.ThismaybeimportantwhenSharePoint immediatelypublisheschangeddocumentsorwhenyouaremonitoringtasksassignedtoyou. Ontheotherhand,maybeyouonlywanttoreceiveadailynotificationofevents.Whenusingthis option,youcanspecifythetimeofdaytoreceivethealert.SharePointthendeliversalertsona24-hour cycle.Therefore,ifyouspecifythatyouwanttoreceivealertsat4:00p.m.andsomeoneupdatesor deletesadocumentat4:30p.m.,youwillnotreceivethatalertuntil4:00p.m.thenextday. Youmightalsochoosetoseealertsonlyonceaweekonaspecificdayandtime.Forexample,you mightwanttoseealertsfirstthingMondaymorningsforchangesmadethepreviousweek.Aspreviously stated,eventsthatoccurimmediatelyafterthealertnoticegoesoutmustthenwaituntiltheendofthe newcycle,evenifthatmeanswaitingfor6days,23hours,and59minutes. Youcandefinemultiplealertsforthesamelist.Perhapseachonenotifiesyouofdifferentactions performedonthelist.Forexample,youmaywantSharePointtonotifyyouimmediatelyofinserts,daily ofdeletes,andweeklyofupdates.
■TipYoucancreatecustomalertsbyusingmultiplealerts.Forexample,toreceivechangenotificationsevery TuesdayandThursdayatnoon,createtwoweeklyalerts,oneforeachday.Inthiscase,eachalertworks independentlyoftheothersothateventstypicallyappearinbothlists.Forexample,aneventonMondaywill appearinboththeTuesdayandThursdayalerts.
Sohowdoesanalertgettoyou?SharePointsendsittothee-mailaddressassociatedwithyour SharePointuserID.Figure5-26showsanexampleofwhatatypicalalertmessagelookslike.
283
CHAPTER5■USINGOUTLOOK
Figure5-26.SamplealertsenttoOutlook
■NoteWhileitispossibletomodifythealerte-mailsinSharePointusingtheIAlertNotifyHandlerinterface,it requirescodingknowledgethatisoutsidethescopeofthisbook.
Correcting/ModifyingAlerts Ifyoumakeamistakeenteringyouralertoryoujustwanttomodifyit,howcanyouchangeit?Oneway istoeditthealert.Youcaneditanyalertfromanylistorlibrary.SimplyopentheListorLibraryribbon andclickthelowerportionoftheAlertMebuttonintheShare&Trackgroup.Selecttheoption ManageMyAlertstodisplayapagewithallyourcurrentalerts.Notethatthislistofalertsincludes alertsfromotherlibrariesorlists.Therefore,asmentionedabove,itisimportanttoincludethenameof thelistorlibraryinthenameofyouralert. Tochangeoneofthealerts,clickonthealertname.Thisdisplaysthealertdialogwithitscurrent propertysettings.YoucanchangeanyofthesesettingsandclicktheOKbuttonatthetoporbottomof thiswindowtoupdateyouralertdefinition.YoualsoseeaDeletebuttontotheimmediateleftoftheOK button.Clickthisbuttontoremovethisalert.Youmaystartbyaddingalertstomanydifferentlibraries andlistsindifferentsites.Soon,however,youmayreceivesomanyalertsthatittakesmuchtoolongto
284
CHAPTER5■ USINGOUTLOOK
reviewallthechanges.Thatisagoodtimetoreviewyourcurrentalertsanddeletetheonesyouno longerneed.Perhapsyoucouldevenchangethefrequencywithwhichyoureceivealertnotifications. Youcanfindasecondwaytodeleteyourobsoletealertsbackonthepagethatlistedallyouralerts. Noticethatyoucanselectanyofyouralertsusingthecheckboxesintheleftcolumn.Selectthealerts younolongerneedandclicktheoptionDeleteSelectedAlertsfromtheheaderofthealertslist. Finally,ifyouareasiteadministrator,youcaneliminateanalertfromanyuserbyfollowingthese steps: 1.
SelecttheSiteSettingsoptionafterclickingtheSiteActionsbutton.
2.
SelectUserAlertsfromtheSiteAdministrationsection.Youmusthave administrationrightstothesitetoseeandselecttheseoptions.Ifyoudonot, youmustcontactyouradministratorforhisassistance.
3.
IntheDisplayAlertsFordrop-down,selecttheUserID/Nameoftheperson fromwhomyouwanttodeleteanalertandclicktheUpdatebuttontoshow heralerts.
■NoteOnlyuserswithalertsappearinthisdrop-downlist.Inaddition,youcanonlydeletethesealerts,not modifythem.
4.
Fromthelistofalerts,findtheoneyouwanttoremoveandclickthecheckbox totheleftofthealertname.Youcanselectmultiplealertsforthepersonby selectingtherespectivecheckboxes.
5.
ClicktheDeleteSelectedAlertslinkatthetopofthelisttoremovethechosen alerts.
Figure5-27showstheUserAlertspagewithafewalertsselected.Noticethevalueofusingunique namesheretoidentifywhichalertstodelete,especiallywhenmultiplealertsexistforthesamelist.
285
CHAPTER5■USINGOUTLOOK
Figure5-27.Dialogboxfordeletingalerts
■TipIt’sgoodpracticetonamealertsbythelisttheyapplyto,theeventstheytrack,andperhapseventheir deliveryschedule.
UsingOutlook’sRSSReadertoSubscribetoSharePointRSS Feeds BothInternetExplorerandOutlook2007haveanRSSaggregatorthatdisplayslinkstoyoursubscribed RSSfeedsdirectlyfromtheirrespectivemenus.
AddinganRSSFeedtoInternetExplorer7.0 ToaddanewRSSfeed,navigatetoapageinaSharePointsitethatsupportsRSS.Youcaneasilyidentify thosesitesbylookingattheRSSfeediconinInternetExplorer7.0’smenubar.Figure5-28showstheRSS feedicon.
Figure5-28.TheRSSfeediconusedinInternetExplorerandwebpages
286
CHAPTER5■ USINGOUTLOOK
Turning RSS On and Off Is a Three-Step Process Step1:BeforeyoucanturnRSSonforanylistorlibrary,youmustfirstturnonRSSfortheentiresite.To dothis,askyoursiteadministratortogointoCentralAdministrationandselectManageWeb ApplicationsfromtheApplicationManagementgroup.Thenclickonthenameofyourwebapplication (bydefault,thiscouldbeSharePoint–80)toselectthewebapplicationyouwanttosetproperties.Then fromtheGeneralSettingsdrop-downmenuintheManagegroupoftheWebApplicationsribbon,select GeneralSettings.ScrollthroughthedisplayeddialogtofindtheRSSSettingssectionandselectYesto enabletheRSSfeeds.Inasimilarfashion,youcanturnoffallRSSfeedsforasitebyselectingNoasthe RSSSetting. Step2:IfyouaretheSiteAdministratorforyoursite,youcanperformthenextstep.Ifyouarenot,youwill needtosolicitthehelpofyourSiteAdministrator.GotoSiteActions➤SiteSettings.Next,clickRSSin theSiteAdministrationgroup.HereyoucanturnRSSfeedsonforthesitecollection,butonlyifRSS feedshavealreadybeenturnedonforthewebapplicationthatcontainsthesite.Youcanalsospecify additionattributesoftheRSSfeedsuchasCopyright,ManagingEditorandWebMaster. Step3:OnceyouhaveturnedonRSSattheWebApplicationlevelandatthesitelevel,youcanturniton forindividuallistsorlibraries.Todothis,openthelistfromthelistorlibraryandclickonListSettingsor LibrarySettings.IntheCommunicationssectionnearthetopofthesettingspage,clickonRSS settings.Ontheresultingpage,youcanturnRSSonoroffforthecurrentlistorlibrary.Youalsocan specifyparametersthatdefineoptionssuchaswhichcolumnstodisplaytouserstryingtosubscribeto yourRSSfeedaswellasthenumberofitemstoincludeandthemaximumnumberofdaystoincludethe itemintheRSSfeed. WhenInternetExplorerdisplaysthisiconinorange,oneormoreelementsonthepagesupportan RSSfeed.Byclickingthedownarrowtotherightoftheicon,thedrop-downdisplaysthepage componentsthatsupporttheRSSfeed.Figure5-29showstheCalendarpagefromaSharePointsitewith anenabledRSSfeed.
287
CHAPTER5■USINGOUTLOOK
Figure5-29.CalendarpagewithanactiveRSSfeed IfthepageonlyhasasingleRSSfeedcomponent,youcanselectitbyeitherclickingitinthisdropdownlistorsimplyclickingtheRSSiconitself.Ineithercase,SharePointdisplaysawindowcontaining informationaboutthefeed,asshowninFigure5-30.Theupper-leftportionofthiswindowidentifiesthe sourceofthefeedusingthesitenameandthelibrarynameseparatedwithacolon.Theboxontheright displaysthenumberofitemsavailableinthelistorlibraryandletsyousorttheseitemsbydate,title,or author.Beneaththesetwoareasappearthecurrentitemsinthelist.
288
CHAPTER5■ USINGOUTLOOK
Figure5-30.SubscriptionpageforatypicalRSSfeed ToviewRSSsettingswithinInternetExplorer,gotoTools➤InternetOptions.Thenclickthe ContenttabfollowedbyclickingtheSettingsbuttonintheFeedsandWebSlicesareaatthebottomof thisdialog.Thisopensadialogwithseveralsettings.Youprobablywanttoselectascheduleofatleast onceadaytocheckyourfeeds.Youalsowanttoautomaticallymarkfeedsasread,turnonfeedreading view,andturnonin-pageWebSlicediscovery.ThesesettingsareshowninFigure5-31.
289
CHAPTER5■USINGOUTLOOK
Figure5-31.FeedandWebSlicesettings Tosubscribe,youcouldclickthelinkSubscribetothisfeed.Whilethisoptionaddsthefeedtoyour FavoritesCenterinInternetExplorer,itmaynotaddittoOutlookdirectly(seetheupcomingsection “AddinganRSSFeedtoOutlook2007and2010”).WhenyouclicktheSubscribetothisfeedlink, InternetExplorerdisplaysthesubscriptionbox,whichrequiresthefeednameandthelocationwhere youwanttocreatethefeed.Bydefault,thefeednamecombinesthesitenameandthelibraryorlist nameseparatedbyacolon.IfyouhavenevercreatedanRSSsubscriptionbefore,theCreateIntextbox displaystheFeedsfolder.Youcanaddyoursubscriptiondirectlytothistop-levelfolder,oryoucanfirst createanewfolderunderFeeds.Ofcourse,whenyouaddanewfolder,youcannameitsomething appropriatetothetypeoffeedsyouintendtostoreinit.Figure5-32showsthatthreefoldersexistunder Feeds,andyouhaveselectedthethirdfolder,SharePoint Book Feeds,toholdthenewsubscription.
Figure5-32.SettingpropertieswhensubscribingtoanRSSfeed Afteryouhavespecifiedanameandafolderinwhichtostoreyourfeed,clicktheSubscribebutton. Afterafewmoments,InternetExplorercreatesthefeedanddisplaysaconfirmationdialogbox.This
290
CHAPTER5■ USINGOUTLOOK
dialogboxlookssimilartotheoneshownpreviouslyinFigure5-30,butwiththeSubscribetothisfeed linkchangedtoViewmyfeeds.YoucaneitherclickthislinktoviewyourfeedsorclicktheFavorites buttonintheInternetExplorerbuttonbartodisplaytheFavoritesCenter.Normally,thecenterdisplays yourwebsitefavorites.However,atthetopofthelist,youwillfindtheFeedsbutton.Whenyouclick thisbutton,thecenterdisplaysyoursubscribedfeedsasshowninFigure5-33.
Figure5-33.RSSfeedsshownintheFeedssectionofOutlook’sFavoritesCenter
AddinganRSSFeedtoOutlook YoucansaveyourselfalotoftimebylettingthefeedsaddedinIEautomaticallypopulatethefeedslistin Outlook.IfyouwantIEandOutlooktoshareRSSfeeds,andyouaddafeedtoIE7.0orbetteranditdoes notupdateOutlook,followthesesteps: 1.
GototheFilemenuofOutlook.
2.
ClickOptionstodisplaytheOptionsdialogbox.
3.
ClicktheAdvancedoptionintheGeneralsection.
4.
OntheAdvancedOptionspage,findtheoptionSynchronizeShareRSS FeedstotheCommonFeedList(CFL)inWindowsintheRSSFeedssection andmakesurethatyouselectthecheckbox.
5.
CloseOutlookandreopenit.
Ifyoudon’twanttopopulatetheRSSfeedsinOutlookautomaticallywiththefeedsfromIE7.0,you mustmanuallyaddRSSfeedstoOutlook.Thereareseveralwaystodothis.However,thefastestmethod isafteryoucreatetheRSSsubscriptioninInternetExplorer,youcanusethatfeedlinkdirectlyasfound intheFavoritesCenter.Whenyoufinishdefininganewfeedorwhenyouclickoneofyourexisting feeds,InternetExploreropensapagewiththecurrentRSSitems.
291
CHAPTER5■USINGOUTLOOK
Youmaynothavenoticedthatthetextinyourbrowser’sURLfieldatthetopofthispagedisplays thefeedlink.YoucanalsocopythisURLtotheclipboard.Thenasbefore,right-clickRSSFeedsin OutlookasshowninFigure5-34,selectAddaNewRSSFeed,andpastethecopiedURLintothedialog boxthatappears.
Figure5-34.AddaNewRSSFeedtoOutlook’sRSSFeeds InthedialogboxthatOutlookdisplaysnext,youcanpastetheURLyoucopiedfromInternet Explorer.ThenclickAdd,asshowninFigure5-35.
Figure5-35.ItemsdisplaysfromanRSSfeedinOutlook Outlookrecognizesthatthissubscriptionlinkcouldbeapotentialrisktoyoursystemandprompts youwithanotherdialogboxaskingwhetheryouknowandtrustthesitefromwhichthefeedoriginates. Ifyoudo,asinthiscase,youwouldclickYes.Otherwise,clickNo.Afterafewmoments,Outlook connectstotheRSSsourceusingthesuppliedURLandpopulatesyournewRSSfeedfolder,asshownin Figure5-36.
292
CHAPTER5■ USINGOUTLOOK
Figure5-36.ItemsdisplaysfromanRSSfeedinOutlook NoticethateachiteminthecalendarappearsasaseparateentryinthisOutlookfolder.Ifyouclick theArrangebybuttonatthetopofthelist,youcansorttheitemsbyanyofthecolumnsinthecalendar list.Youcanalsogrouptheitemsbasedonthesort. SinceanRSSfeedautomaticallyupdatestheitemsshowninthesubscriptionandboldsanyitem youhavenotyetopened,youcaneasilyspotnewitemsaddedtothelist.Afteryouopenanitemtoview it,thetextintheOutlooklistrevertstonormalforthatitem.
DeletingItemsfromanRSSFeed YoucandeleteitemsfromtheOutlookRSSlistbyright-clickingthemandselectingDelete. Unlikeotherlists,thishasnoeffectonthesubscription’ssource.However,ifyoureallywanttodelete theitem,youcanclickittodisplayapreviewoftheitemandthenperformoneofthefollowingactions: •
ClickthelinkViewarticlefromthepreviewpane.
•
ClicktheoptionViewArticlefromtheRSSgroupoftheHomeribbon.
293
CHAPTER5■USINGOUTLOOK
Ineithercase,theseactionsdisplaytheSharePointiteminyourbrowserasshowninFigure5-37. ThisformusesthedefaultviewformforcolumnsinaSharePointlist.
Figure5-37.Viewformforanitem’sproperties Atthetopofthisform,youhavethestandardoptionstoeditordeletethecurrentitemusingthe Viewribbon,assumingyouhavethesepermissionsforlistitemsinthecurrentsite.Ifyoudeletethe itemhere,SharePointasksyoutoconfirmthatyouwanttosendtheitemtotheRecycleBin.Ifyouclick OK,SharePointdeletestheitemfromthelist,butitmaystillappearintheRSSsubscriptioninOutlook, atleastuntilthenextsynchronization. Aswithotherdeleteditems,youcanrecoveritemsdeletedwithinSharePoint.GototheRecycle Bin,selecttheitemyouwanttorecover,andclicktheRestoreSelectionbutton. WhenviewinganRSSfeedtoadocumentlibrary,thismethodstillbeginsbyshowingtheproperties oftheindividuallibraryitem,asshowninFigure5-38.Toviewthedocumentassociatedwiththeitem, clickthedocumentname.Inthisfigure,clickingBackgroundtoinstallSharePointretrievesthe documentfromSharePointandopensalocalcopyofit.
294
CHAPTER5■ USINGOUTLOOK
Figure5-38.ViewinganitemfromadocumentlibrarythroughanRSSfeed
■TipDon’twanttheRSSfeedanymore?Justright-clickitandselectDelete.IfyoudeletetheRSSfeedfrom Outlook,itdoesnotdeleteitfromInternetExplorer.However,ifyouwanttoaddtheRSSfeedbacktoOutlook,you mayneedtousethemanualmethoddiscussedearlierinthissection.
ViewingOtherListItemsNotintheRSSFeed RememberthattheRSSfeedwillonlydisplayrelativelyrecentadditionstothereferencelistorlibrary. YouwillnotnecessarilyseeallthedocumentsintheRSSfeed.
■NoteYoucanspecifyhowlongdocumentsorlistitemsremainintheRSSfeedbygoingtothelibraryorlistin SharePointandselectingLibrarySettingsorListSettingsfromtheSettingsgroupoftheLibraryorListribbon respectively.ThenontheSettingspage,selectRSSsettingsfromtheCommunicationsoptiongroup.Onthe RSSSettingspage,findthesectionlabeledItemlimitatthebottomofthepage.
Byselectinganyoneitemanddisplayingitseditpage,youcannavigatetothefulllistorlibrary. Withtheitem’seditpageopen,selecttheBrowsetabatthetopofthepage.Thenfindthelistorlibrary nameinthebreadcrumbs.Typically,theentryimmediatelybeforethenameofthecurrentitem representsthelistorlibraryfromwhichtheentryoriginates.Clickthisnametodisplaythefulllistor library.Fromthispage,youcanthenopenandeditanyiteminthelistorlibrary,eventhosenolonger referencedintheRSSfeed.YoucanalsousetheNavigateUpicontotheimmediaterightoftheSite Actionsbuttontodisplaythesitehierarchyandreturntothelistorlibrary.
295
CHAPTER5■USINGOUTLOOK
■TipForlibrariesorliststhataddnewitemsonlyoccasionally,youmaywanttolimittheRSSfeedbasedonthe numberofitemsdisplayedsothatthelistfeedisneverempty.Ifitemadditionsoccurfrequently,considerusing themaximumdayoptiontodeterminehowmanyitemstodisplayinthefeedsothatthefeedstaysfresh.
SendingE-mailtoLists Inthischapter,I’vedemonstratedseveralwaystouseOutlooktoconnecttovariouslistsandlibrariesin SharePoint.YoualsosawthatSharePointcouldsende-mailmessageswhensomeoneaddsitemstoa list,changesitemsinalist,ordeletesitemsfromalist.However,youcanalsosende-mailmessagesto groupsofSharePointusersaswellasseveralofSharePoint’slists.
SendingaMessagetoaListorLibrary NotallSharePointlistscanreceivee-mail,andeventhosethatdohandleitindifferentways.Liststhat canaccepte-mailinclude •
Announcements
•
Blogs
•
Calendars
•
Discussionboards
•
Documentlibraries
•
Formlibraries
•
Picturelibraries
Theabilitytosende-mailtotheselistsdependsonthesettingsyourSharePointadministrator appliedintheSharePointCentralAdministrationsite.Italsodependsonsettingsaddedtoyourlists whenyoursiteadministratorcreatedthesiteanditslists.Toenableandconfiguree-mailatthelistor librarylevel,youmusthavetheManageListspermission.Siteownershavethispermissionbydefault. Thus,eventhoughtheselistshavethepotentialofreceivinge-mailasdefinedatthesitelevel,their currentconfigurationmaynotallowreceivinge-mails. Todeterminewhetheryourlistcanreceivee-mailmessages,firstcheckthesitesettingsforthelist, assumingyouhavetheappropriaterights.Alternatively,checkwiththesiteadministratortoaskwhether thelistsupportse-mailandwhate-mailaddressyoumustusetosendcontenttothelist.
296
CHAPTER5■ USINGOUTLOOK
How to Enable E-mail Toadde-mailsupporttoaSharePointsite,yourSharePointadministratormustenablee-mailsupportat thewebapplicationlevelintheSharePoint’sCentralAdministrationsite.InCentralAdministration,they needtonavigatetotheSystemSettingspageandthenselectConfigureincominge-mailsettingsin theE-MailandTextMessagessection.YourSharePointadministratorisresponsibleforspecifyingthese settingsandtheymayneedtoworkwithyourExchangepeopletoproperlyconfigureallthesettings. Next,youenablee-mailbydefiningane-maillinkforindividualsitelistsandlibrariesthatyouwantto receivee-mailbygoingtotheirSettingspageandselectingIncominge-mailsettingsfromthe Communicationsoptiongroup.Ifthisoptiondoesnotappear,youmustseeyourSharePointadministrator tofirstturnone-mailsupportasdefinedinthepreviousparagraph.Eitheryoudonothavethenecessary permissionstoconfigurethissettingoryoumusthaveyouradministratorturne-mailonthroughthe CentralAdministrationsite.
■TipIfyouhavetherighttoupdatelists,youshouldconsideraddingthee-mailaddresstothelistdescriptionif youhavee-mailenabledthelist.Becausethedescriptiontextappearsimmediatelybeneaththelisttitlewhen displayedinSharePoint,thispracticemightreducethenumberofcallsyouwillgetaskingforthee-mail addressesofyourlists.
Toenablealistorlibrarytoaccepte-mail,youmustopentheSettingspageforthatlistorlibrary. ThenclicktheoptionIncominge-mailsettingsintheCommunicationsgroup.Figure5-39shows thesesettingsforatypicallist/library.Inthefirstsection,Incominge-mail,youmustenablee-mailfor thelistorlibrary.Withoutthissetting,thelistorlibrarycannotreceivee-mail.Inaddition,youmust identifyaspecifice-mailaddresssothatSharePointcanroutethee-mailtothecorrectlistorlibrary. Next,youmustidentifywhattodowithanyattachmentsintheE-mailattachmentsection.For document,picture,andformlibraries,theattachmentisthefilethatyouwanttoaddtothelibrary.For mostlists,thecontentyouwanttoaddtothelistisinthee-mailbody,nottheattachment,butyoucan optionallyarchivethee-mailattachmentsinthelistaswell.Formostlibraries,theE-mailmessage sectionletsyoudecidewhetheryouwanttosavethee-mailitselfasanotheriteminthelibrary.For manylists,youcansavethee-mailasanattachment. TheE-mailsecuritysectionletyoudeterminewhetherthelibraryorlistcanonlyaccepte-mailsset toitbyuserswhohaveupdaterightstothelibraryorlist.Thisparticularoptioncanbeusefultoprevent spam. Thesiteathttp://office.microsoft.com/en-us/help/HA100823071033.aspxprovidesdetailson settingupe-mailforseveraldifferenttypesoflibrariesandlists.ThecontentwaswrittenforSharePoint 2007,butitstillappliestosendinge-mailtoSharePoint2010librariesandlists.
297
CHAPTER5■USINGOUTLOOK
Figure5-39.ViewinganitemfromadocumentlibrarythroughanRSSfeed Afteryoudeterminewhetheralistsupportse-mail,createanewmessageinOutlook.Youcanplace theliste-mailaddressineithertheToortheCcfield.Youcansendthemessagetooneormorelists, people,orgroupsfromasinglemessageentry.ThenrefertoTable5-2toseehowtoaddcontenttothe listsviayourmessage. Table5-2.SendingContenttoaSharePointList
298
List/Library
Where to Place Content
Announcements
Includeyourannouncementtextasanattachment.SharePointtakesyour messagetitleasthetitleoftheannouncement.
Blogs
Includeyourblogtextinthemainbodyofthemessage.
Calendars
Sendameetingrequestorappointmenttothelist.
Discussionboards
Includeyourtextinthemainbodyofthemessage.
CHAPTER5■ USINGOUTLOOK
List/Library
Where to Place Content
Documentlibraries Includethedocumentyouwanttoaddasanattachmenttothee-mail. Formlibraries
Includetheformyouwanttoaddasanattachmenttothee-mail.
Picturelibraries
Includethepictureasanattachmenttothee-mail.
Ifyouwanttosendane-mailwithbothablogentryandadocumentfilethatyouwillreference withinyourblog,youcansendbothwithasinglee-mail.Includeboththebloglistandthedocument libraryliste-mailaddressintheTofieldofthemessage.SharePointextractsthetextfromthemainbody ofthemessageandsendsittotheblogsitewhilesendingtheattachmenttothedocumentlibrary.Itcan dothisbecauseeachlisttypecanonlyacceptinformationfromspecifypartsofthee-mailmessage. Whenyouarereadytosendyourcontent,includetheappropriateSharePointe-mailaddressinthe ToorCcbox,andthenclickSend.
SendingLinksviaSendTo SharePointcansendalinkforanydocument,image,orformtoanyoneviae-mail.Youcanfindthis optionbyopeningthedrop-downlistforanyiteminalibraryorlist.Inthedrop-downmenu,pointto SendTotoopenthesecondaryflyoutmenu.Inthismenu,selecttheoptionE-mailalink.Thisopensa normale-mailmessagewiththelinktotheiteminthebodyofthemessage. Whenthee-mailrecipientreceivesthee-mailmessage,shecanclickthelinktoopenandeditthe document,resultinginamoreefficient,smallere-mailmessagethansendingtheentirefile.Theuser mayinitiallyopenaread-onlyversionofthedocumentpointedtobythelink.However,shecanchoose toeditthedocumentandofcoursesaveherchangesbacktoSharePoint.
Summary ThischaptershowedyouseveralwaystouseOutlooktogetherwithSharePoint,beginningwithalookat organizingmultiplecontactslistsindifferentSharePointsiteswithyourOutlookcontactslist.Byadding linkstotwoormoreSharePointcontactslists,yousawthatyoucancopyandmovecontactsbetween anyofthelistsincludingtheOutlookContactslistitself. Inasimilarway,youcanuseOutlooktoconsolidatemultipleSharePointcalendarswithyourown OutlookcalendartoplanyourdailyscheduleaswellasbuildSharePointcalendarsbycopyingevents fromyourOutlookcalendartothem.Outlookletsyouoverlaytwoormorecalendarssoyoucansee wheneventsconflictandwhenavailabletimeexists.Italsoshowstherelativesequenceofeventsfrom differentcalendars. Next,youlookedatcombiningtasksfrommultipleSharePointlistswithinOutlook.Aswithcontacts andcalendars,theabilitytoconsolidateinformationfrommultipletaskslistshelpsensurethatyoudo notoverlookeventsfromonecalendar. Outlookalsoletsyouworkwithdocumentsasiftheyweree-mailmessages.Itsupportstheabilityto checkoutdocumentssoyoucaneditthemofflineandthenresynchronizeyourchangeswiththe originaldocumentsinSharePointthenexttimeyouconnect. Alertscreateanotificationcapabilitythatletsyouknowwhenitemsareadded,deleted,ormodified inlibrariesandlists.Youcanalsodeterminehowfrequentlyyouwanttoseethealerts.Bymonitoring
299
CHAPTER5■USINGOUTLOOK
changeswithinSharePointlibrariesandlists,alertssaveyouatremendousamountoftimethatyou wouldotherwiseneedtospendmonitoringeachofthelibrariesandlistsforpertinentorinteresting changes. SharePointlibrariesandlistshavetheabilitytosupportRSSfeedsasawaytodistributenews,blogs, library,listadditions,andotherinformationfeeds.RecentversionsofbothIEandOutlookhavebuilt-in RSSreadersandsupportindependentRSSfeedlists,oryoucansynchronizethefeedsthatappearin bothprogramsusingtheCommonFeedslist. Finally,youcansende-mailstomostblogs,lists,andlibrariestoupdateinformationstoredinthem. ThismayrequiresomeadditionalconfigurationfromyourSharePointadministratorinboththeCentral Administrationsiteaswellasthecommunicationsettingsoftheindividuallibrariesandliststowhich youwanttosende-mailupdates.Youcanalsosendane-mailtootherswiththeURLofanitemina libraryorlist.Therecipientofthate-mailcanthenclickthatlinktoopenandeditthatitemwithout taxingyoure-mailserverswithlargefiletransfers. Thus,youcanseethatOutlookprovidesmanywaystoworkwithseveralSharePointfeatures organizeyourworkandpersonalactivities.Outlookcanchangethewayyouworkwithdocuments,lists, andtasks.Itcanhelpyoushareyourthoughtsthroughdiscussionsandblogs.Youcanusethe combinationofalerts,RSSfeeds,andOutlooktostayinformedaboutchangestolistsandlibraries.
300
CHAPTER 6
■■■
Managing Lists with Access ManycompanieshavehundredsofunmanagedAccessapplicationsrunninginvariousdepartments throughouttheorganization.WhilemanyOfficepowerusersfinditveryeasytocreateanAccess applicationtoquicklymeetaneed,oftenthoseapplicationssufferfromproblemslike: “IjustlookedawayaminuteandwhenIturnedbackmylaptop,whichIleftontheseatbesidemein thewaitingarea,wasgone,alongwithallofourcustomerorderdata.” “AllIknowisthatthescreensaysthatitcannotreadmyC-drive.YoudohaveabackupofmyCdrive,don’tyou?” “Thesereportsdon’tmatch,andIknowthatmydataiscorrect,soyourdatamustbewrong.” Thesearejustafewoftheproblemsyoumayencounterwhenusersbuildimportantdatabaseson theirlocalmachines.Everythingfromsecurityissuesthatmayormaynotinvolvetheftofhardware, simplehardwarefailure,andinconsistentresultscausedbyduplicatedataresidingindifferent databasescanruinyourdayquickly. WhileAccesshasprovidedahighlevelofagilitybyallowingindividualstobuildapplications quickly,theproblemswithmanagingthoseapplicationshavegrown.However,youcangetahandleon managingtheinterfacetothoseapplicationsaswellasthedatabyusingAccessalongwithSharePoint. Inthischapter,youwillseehowusingAccessstoredinacentralSharePointlibrarycanprovidefora singleversionoftheapplicationinterfacewhilemakingiteasytodeploynewupgradestothe application.Also,bystoringthedatainaSharePointlist,youcanleverageSharePoint’sabilitytolink withAccesstablestosupportasingleversionofthedata,provideforasingleplacetocreatebackups, andprotectthedatawithpermissionswhileprovidingphysicalsecuritybystoringthedatainacentrally locatedserverbackinyourcompanyheadquarters. Inchapter1,ImentionedthatSharePointincludesfivedefaultAccesswebapplicationsas templates:AssetsWebDatabase,CharitableContributions,ContactsWebDatabase,IssuesWeb Database,andProjectWebDatabase.Whileanyorallofthesemightserveasastartingpointforaweb applicationatyourorganization,youcanalsousethemtodevelopawebbasedapplicationviaAccessto provideanagiledevelopmentplatform.SincetheseapplicationsrequireAccessservicestorun,youwill needtheEnterpriseversionofSharePoint2010tocreateandusethem. IstatedinthebeginningofChapter2thatyoucouldthinkoflistsintermsusedbydatabase systems:itemsrepresentrows,andcolumnsrepresentfields.Thischapterwillprovehowwell SharePointliststranslateintodatabasesbydemonstratinghowyoucanmanageyourlistsanddatabases applicationsusingacombinationofMicrosoftAccessandSharePoint.
301
CHAPTER6■MANAGINGLISTSWITHACCESS
■NoteThistextfocusesonAccess2010,andwhilemuchofwhatisdiscussedworkswithAccess2007,earlier versionsofAccessdonotsupportthefeaturesrelatedtopublishingAccessServicesontheEnterpriseeditionof SharePointServer2010.
ExportingSharePointListstoAccess ToexportaSharePointlistintoAccess,youcanstartfromSharePointorAccess.Let’sfirststartfrom SharePoint.NavigatetoyourSharePointsite,andopenthelistyouwanttoexport.FromtheListribbon, clickOpenwithAccessfromtheConnect&ExportgroupasshowninFigure6-1.
Figure6-1.ExportingaSharePointtabletoAccess Amessagebox,showninFigure6-2,promptsyoufortwopiecesofinformation.First,youmust specifyalocationandnameforaneworexistingdatabase.Accessstoreseachdatabaseasaseparatefile. Further,itcanstorethefileinanydirectory.Bydefault,SharePointandWindows7attemptstocreatea databaseinyouruserDocuments folder.Alsobydefault,SharePointwantstousethelistnameasthe databaseandthetablename.Youcanchangeeitherofthesedefaultsbyenteringadifferentfilename and/orpath.YoucanalsousetheBrowsebuttontolocateadifferentdirectory.However,youmayfind therealadvantageoftheBrowsebuttonoccurswhenyouneedtofindanexistingdatabaseintowhich youwanttoaddthecurrentSharePointlist.
Figure6-2.YoucaneitherexportacopyofaSharePointlisttoAccessorcreatealinktothelistinAccess.
302
CHAPTER6■ MANAGINGLISTSWITHACCESS
Ifyouselectanexistingdatabasewithadifferentdatabasenamethanyourlist,SharePointstilltries tonameatleastthetableinthatdatabasewiththelistname.However,ifthedatabasenameexists alreadyintheselecteddirectory,SharePointappendsa“1”totheendofthedefaultdatabasename.Ifa databasealreadyexistswiththatnewname,itkeepstryingthenextsequentialnumberuntilitfindsa validyetuniquedatabasenameforthedirectory.Ifyouattempttooverwritethedefaultdatabasename thatSharePointselectsandtrytoexporttheSharePointlisttoanexistingdatabasename,SharePointwill trytoaddtheselectedtabletotheexistingdatabase.Ifthatdatabasealreadyhasatablewiththatname, itwillappenda“1”totheendofthedatabasenametomakeitunique.Ifyouattempttosavethesame listtothesamedatabaseagain,itaddsanewtablewiththenextsequentialnumbertomakeitunique. Ofcourse,youcouldoverridethisautomaticallygeneratednameandsavethedatabasewithyourown uniquename.However,youcannotoverwritethetablenamefromthisdialog.Theimportantpointis thattheexportoptionneverletsyoureplaceanexistingtableordatabase. SohowdoyoureplaceanexistingAccesstableinagivenAccessdatabasewiththeupdatedcontents ofthesameSharePointlist?ThesimplewaywouldbetodeletetheAccesstablefirst,andthenexportthe SharePointlist.ThismaynotalwaysbefeasibleifyoupreviouslyestablishedlinkstootherAccesstables orusethetableasadatasourceforviewdefinitions,reports,orformswithinAccess.Youhaveseveral programmaticalternativesatthispoint,thedetailsofwhicharebeyondthescopeofthisbook.Most beginbyopeningtheSharePointlistinAccessusingatablewithadifferentname.Thenyoucanupdate theoriginaltablefromthesecondtableusingSQLstatements.
■NoteInthissection,IamtalkingaboutcopyingaSharePointlisttoAccess,notlinkingthelisttoanAccess table,whichiscoveredinthe“LinkingSharePointListstoAccess”sectionofthischapter.
IfyouprefernottomanipulatethetablewithSQL,youcanmodifytheconnectionpropertiesof eachobjectthatusestheoriginaltabletopointtothenewtable.Theriskhereofmissingareferenceto theoriginaltablemaybehighdependingonthecomplexityofyourdatabase.
Synchronizing the Data in Two Versions of an Access Table SupposeyouhavetwotablescalledTable1andTable2,inwhichTable2isamorerecentcopyofTable1 andhaschangesinitthatTable1doesnothave.Howcanyouprogrammaticallysynchronizethechanges fromTable2backtoTable1? FromwithinAccess,youcanquicklyupdateTable1tolookexactlylikeTable2ifyoumakeafew assumptions.First,assumethatifTable1andTable2useanyotherrelatedtablesforlookupvalues, nothinginthosetableshaschangedthatwouldrequirethosetablestobeupdatedfirst.Second,assume thatTable1usesauniqueIDfieldconsistingofperhapsasequentialnumberandthatitsvaluehasno additionalmeaningotherthantodefinetherowsofthetableuniquely.Third,bothtableshavethesame columndefinitions. ThefirststepupdatesallofthefieldsinTable1withvaluesfromTable2wheretheuniqueIDfieldin Table1equalsTable2.ThecomplexityofthisSQLUPDATEexpressioncomesfromtheSETclause,which mustincludeanexpressionforeveryfieldinthetable.
303
CHAPTER6■MANAGINGLISTSWITHACCESS
UPDATE Table1 INNER JOIN Table2 ON Table1.ID = Table2.ID SET Table1.[Field1] = [Table2].[Field1], Table1.[Field2] = [Table2].[Field2], Table1.[Field3] = [Table2].[Field3];
Next,youeliminateanyrecordsinTable1thatdonothaveacorrespondingIDvalueinTable2. DELETE * FROM Table1 WHERE Table1.ID NOT IN (SELECT Table2.ID FROM Table2);
Finally,youaddanyrecordsfromTable2thatdonotexistinTable1. INSERT INTO Table1 SELECT * FROM Table2 WHERE Table2.ID NOT IN (SELECT Table1.ID FROM Table1);
Atthispoint,thedatainTable1shouldexactlymatchthedatainTable2.
■TipTochangetheAccesstableusedbyaform,openthePropertySheetfortheform.ClicktheDatataband thenlocatetheRecordSourceproperty.Openthedrop-downlistforthisfieldandselectthenewtable.
■CautionIfyouupdateanobjectsuchasareportorformwithanewrecordsource,bewareoffieldsdeletedor renamedfromtheoriginaltableschema.Thiscancausetheformtofailunlessyouremovesuchfieldsfromthe formortableorassociateitwithadifferenttablefield.
GettingbacktotheseconddecisionyoumustmakeinFigure6-2,youmustdecidewhetheryou wanttolinktheSharePointlistdatawiththeAccesstableorexportacopyofthelistdatatothetable. ThemainadvantageoflinkingdatafromAccesstoSharePointinvolvesediting.Whenyoulinkthelist andtable,changesmadetoarecord/iteminAccessautomaticallyupdatetheSharePointlist.Linking yourSharePointlisttoAccesseliminatesthecomplexitycausedbylistupdateswhenyouonlyexporta copyofthelisttoAccess. ThereareotheradvantagesoflinkingtheSharePointlisttoanAccesstable.However,firstlet’s continuetolookatwhathappenswhenyoucopythelisttoanAccesstable. AfteryouclickOKinFigure6-2,SharePointtakesafewmomentstotransfertheselectedcolumnsto Access.Aftercompletingthetransfer,Accessopensanddisplaysthenewtable,asshowninFigure6-3.
304
CHAPTER6■ MANAGINGLISTSWITHACCESS
■NoteInAccess2010,youmayneedtodouble-clickthetablenameinthelistofAccessTableObjectstoopen thetable.
Figure6-3.SharePointlistshownasanAccesstable NoticethatwhencopyingaSharePointlisttoAccess,onlytherowsandfieldsincludedinthe SharePointviewappearinthetable.Thus,youcanuseacustomviewtodeterminenotonlythe items/rowstransferredtoAccess,butalsothecolumns/fieldstransferred.
■TipUsethecopydataoptionwhenyouwanttoarchiveselecteditemsfromthelist.Toperformthearchive, firstdefineanewviewinSharePointtofilterontherecordsyouwanttoarchive.Thenswitchtothisviewwhen youdisplaythelist.Thisviewdoesnothavetobethedefaultview,butitmustbethecurrentview.Thenselect OpenwithAccessasbefore,selectingExportacopyofthedata.Placethisdatainadatabasewhereyouwant tostorearchiveddata.Youcoulduseadifferentdatabaseeachtimeyoudownloadthelist,perhapsincludingthe datetoidentifythearchiveddaterange,oryoucouldaddsequentiallynumberedtablesortablesthatincludea dateinthenameforasinglearchiveddatabase.
305
CHAPTER6■MANAGINGLISTSWITHACCESS
Aftertransferringthedata,youcansavethedatabaseinoneofthemorerecentAccessdataformats: •
Access2007
•
Access2002–2003
•
Access2000—(Onlyindirectlypossiblesinceyoucouldcreateablankdatabase usingtheAccess2000formatifyouwentintoAccessOptions(fromtheFile menu)andchangedtheDefaultfileformatforBlankDatabasesintheGeneral pageoftheoptionstoAccess2000.)
■NoteWhiletheredoesnotseemtobeaselectionfordefiningwhethertosaveyourdatabaseinAccess2007or Access2010format,therearesomedifferencesbetweendatabasescreatedbyeachoftheseversionsofAccess. Infact,dependingonthefeaturesofAccess2010youuse,Access2007maynotopenthesaveddatabase.Thisis especiallytrueofanywebrelatedfeaturesyoumightuseinAccess2010inpreparationtopublishingthedatabase toSharePoint,butotherchangescanalsoaffectyourabilitytoopenyourAccess2010databaseinAccess2007. Forcompletedetailsonthefeaturesthatcancauseyouproblemsandstepsonhowtoresolvethoseproblems, refertothefollowingarticleonMicrosoft’sMSDNsite:http://msdn.microsoft.com/en-us/office/ cc907897.aspx.
Thus,youcansharelistdatawiththoseunfortunateassociateswhodonothaveaccesstoyour SharePointsite. However,whatif,afteryoucopydatatoanAccesstable,youdecidetotransferitbackto SharePoint?Canyoudothat?Yes,youcanexportdatafromAccessnotonlytoExcel,butalsotoa SharePointlist. Figure6-4showstheAccess’sExternalDataRibbon.WithintheExportsection,findthebutton MoreandselectSharePointListfromthedrop-downmenuofadditionaloptions.
306
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-4.ExternalDatatabintheAccessRibbon Whenyouclickthisbutton,adialogboxopens.YoumustfirstspecifythenameoftheSharePoint sitewhereyouwanttopublishthedata.InFigure6-5,Ihaveselectedthesiteaddresshttp://vanguard, theURLofthetop-levelsiteofmySharePointserver.
307
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-5.ThedialogboxpromptsforSharePointsiteandlistnames Next,youmustspecifythenameofthelistintowhichyouwanttocopytheAccessdata.Notethat youcanonlyexportyourAccesstabletoanewSharePointlist.Ifyouattempttospecifythenameofan existinglist,SharePointadds“_1”totheendofthelistname.IfSharePointalreadyhasalistwith“_1”at theendofthename,itaddsitagainmakingit“_1_1”.
■NoteThisnamingconventionisdifferentfromthatusedwhencopyingdatafromSharePointtoAccess.
Inaddition,thecheckboxatthebottomofthisfigureletsyouimmediatelyopenthenewlistafter youcreateit.Personally,Iliketoseethelistaftercreatingittoverifythateverythingtransferred correctly.It’sa“TrustbutVerify”ruleIencouragedeveloperstoadopt.IfyoufeelluckyandtrustAccess totransferyourtabletoaSharePointlist,Isupposeyoucouldleavethisoptionunchecked. ThenoteatthebottomofthisscreeninformsyouthatAccessexportsanytablesrelatedtothe exportedtabletotheirownSharePointlists.Infact,notonlydoesAccessuploadallrelatedtablesto individualSharePointlists,butSharePointalsoautomaticallyconvertstheforeignkeyfieldsinthe parenttabletolookuptypefieldstoensurethattheusercanselectvaluesonlyfromthechildtable.In addition,SharePoint2010nowsupportstruereferentialintegrity.Ifyoudefinedreferentialintegrity
308
CHAPTER6■ MANAGINGLISTSWITHACCESS
betweenyourtablesinAccess,theprocessofexportingthetablestoSharePointretainsyourreferential integritysettingsbetweenthelists. Forexample,supposeyouhavetwotablesinAccess.Thefirsttable,Departments,listseach departmentinyourorganizationwithrelatedinformationaboutthatdepartment,suchasthe departmentname,departmenthead,andperhapsthedepartment’sprimaryphonenumber.Inthe secondtable,CoWorkers,youlistemployeesinyourorganization.Besidestheobviousfieldssuchasthe employee’sname,phonenumbers,startdate,andothers,youincludethedepartmentfromthe Departmentstable.Let’salsoassumethatyouhaveformalizedthisrelationshipbetweenthesetwo tablesusingtheDeptIDcolumninbothtables.First,youshoulddefinetherelationshipbetweenthetwo tablesdefiningwhichfieldsfromeachtableshoulddefinetheline. Tip:Thecolumnnameinthetwolinkedtablesdoesnothavetobethesame.However,I recommendusingthesamecolumnnameforafieldfoundinanytableifitrepresentsthesamedatain thesameformatwiththesamevalues. Afteryoudefinetherelationshipbetweenthetwotables,youcanthengobackandmodifythetable definitionofthechildtable,CoWorkers,todefinethelookuppropertiesofthelinkingcolumn.
■CautionJustdefiningthedepartmentfieldinCoWorkerstobealookupfieldfromtheDepartmentstableisnot reallydefiningreferentialintegrity.YouneedtodefinetherelationformallybetweenthetwotablesinAccess.
WhenyouattempttoexportjusttheCoWorkerstabletoSharePointasanewlist,SharePoint recognizestherelationshipbetweentheCoWorkersandDepartmentstablesanduploadsbothtablesas newlistsontheselectedsite.OpeningtheCoWorkerslistsettings,youcanseethattheDeptIDfield definitionusesalookupfieldtypethatpointstotheDeptIDfieldintheDepartmentslist.Furthermore, sinceyoudefinedreferentialintegritywhileinAccess,youshouldfindthesamerelationshipdefinedin theRelationshipsectionoftheDeptIDcolumn.Ifyouselectedtocascadedeletedrecordsfromthe primarytabletothechildtableinAccess,SharePointadoptsthissamepropertybetweentheuploaded lists.
SavingYourExportSteps WhenyouclickOK,anotherdialogbox,showninFigure6-6,appearsaskingwhetheryouwanttosave yourexportsteps.
309
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-6.Promptingtosaveexportsteps Ifyouplantoperformthisexportonlyonetime,youmaynotwanttoselectthisoption.If,however, youthinkyoumightperformthistaskfrequently,youmaywanttosavethesesteps.Ifyouselectthis option,AccessdisplaysthedialogboxshowninFigure6-7.
Figure6-7.Definingthenameanddescriptionoftheexportsteps
310
CHAPTER6■ MANAGINGLISTSWITHACCESS
ThisAccessdialogboxasksyoutoenteranameandadescriptiontoidentifyyourexportsteps.You mustenteraname,becauseAccessusesthisnametoidentifythissetofexportstepsfromothersyou maydefine,asyouwillseeshortly.WhileAccessconsidersthedescriptionoptional,itappearsin Access’slistshowingavailableexportsandcanhelpfurtheridentifydifferentexports. YoualsohavetheoptionofcreatinganOutlooktask.Whileyoucannotreruntheexportdirectly fromthistask,youcanusethetaskasaremindertoruntheexportonafuturedate.Youcanevensetup areoccurringremindertorunthetaskperiodically. WhenyouclickSaveExport,SharePointperformstheexport,createsthesavedstepsinAccess,and createsthetaskinOutlook.ThisprocessshowsanotherexampleofthepowerofSharePointandOffice integration,asitupdatesthreeseparateMSOfficeproductswithoneaction.
TransferIssues WhenyoureturntoAccess,youmayseeanothertableintheNavigationBarcalledMovetoSharePoint SiteIssues.OpenthistabletoexamineanyproblemswiththeexporttoSharePoint.Figure6-8shows theissuesgeneratedwhenmovingtheMyWorkContactstablebacktoSharePoint.
Figure6-8.IssuesgeneratedwhenmovingatablebacktoSharePoint
IssueswithAutoIncrementFields ThefirstissueinthislistreferstothefieldID.InAccess,thisfieldiscalledanautoincrementfield becauseeachtimeyouaddanotherrecordtothetable,Accessautomaticallyincrementsbyonethe valueusedwhenitaddedthelastrecordandusesthisnewvalueforthenewrecord.WhileSharePoint willacceptthevaluesfromthiscolumnwhenitconvertsthetabletoaSharePointlist,ifyourAccess tablehasgapsintheautoincrementfieldvalues(becauseyoudeleteditemsaftercreatingthetable entries),thesegapsareclosedinthegeneratedSharePointlist.Inotherwords,ifyouhadashortlistof 10itemsanddeleteditem5fromtheAccesstablebeforeuploadingthetabletoSharePoint,SharePoint renumberstheitemstofillinthegapusingvaluesfrom1through9ratherthan1through10.Itthenwill use10forthenextvalueaddedinSharePoint.
311
CHAPTER6■MANAGINGLISTSWITHACCESS
Auto Increment Fields Everytableinrelationaldatabasesshouldhaveaprimarykey.Mostrelationalsystemsdonotallowyouto updateexistingindividualdatarecordswithoutaprimaryoruniquekeytoidentifywhichrecordtoupdate. Whenpossible,youshouldalwaysuseexistingtablefieldstocreatea“natural”key.However,atthesame time,youshouldavoidlong“natural”keysorkeysthatrequiretheconcatenationofmanyindividualfields. Onesolutiontolongkeysusesa“created”keycalledanautonumberfield.Accessusesthisfieldtypeto createauniqueintegerfieldforeachrecord.Youshouldaddthisfieldtothetableschemabeforeadding anyrecordstothetable.Inaddition,onlyonefieldpertablecanbeanautoincrementfield,andyoucannot setafieldtobeautoincrementafteryoudefinedthetableevenifyouhavenotaddeddatatothetable. Thestartvalueforanewtabletypicallybeginswith1,andeachrecordaddedtothetableincrementsthis valueby1.WhileyoucannolongeruseyourownincrementvalueinAccess,youcanuseaRandomvalue fortheID.However,arandomgeneratedIDvaluedoesnottranslatetoSharePointthesamewayasan autoincrementwill.WhiletheIDfielddoestransfer,itwillnotgenerateanewrandomIDfornewvalues addedinSharePoint.Ifyoudeletearecord,thedatabasedoesnotreusethatnumber.Inaddition,auto incrementfieldsgenerallycannotbeedited. Inadditiontoservingasindexes,autoincrementfieldsoftenmakeidealchoicesasrelationalfields betweentables.Sinceyoucannoteditthisfield,youcannoteasilybreakthereferentiallink. Whenused,theautoincrementfieldshouldnotimplyanysignificanceotherthantoprovideaunique identifierforarecordthatmayormaynotalsoserveasalinkingfieldbetweentwotables. Duetoalloftheprecedingcharacteristicsofautoincrementfields,younormallycannotincludethisfield whenyoucopyatablewithoneofthesefieldstoanothertable,regardlessofwhetheryoucreateanew tableorintendtoappendtoanexistingtable. Surprisingly,theimportofalistfromSharePointtoAccessdoesappeartoimporttheIDfield.You canprovethisbytakinganissuetrackinglistcreatedinSharePointanddeletingafewitemsfromthe middleofthelist.ThenimportthelistintoAccess.IfyouopentheAccesstableindesignmode,youwill discoverthatAccessdefinedtheIDfieldasanautonumberfield.However,whenyouopenthe correspondingAccesstable,youwillseeagapintheIDsequenceexactlyrepresentingthepositionsof thedeleteditemsfromSharePoint. However,exportingthetablebacktoSharePointdoesnottransfertheautonumberfield.Ifyouwere toexporttheissuetablewiththedeletedrecordsfromthemiddleofthetable,thenewSharePointlist displaysanewIDfieldwithnogapsinthesequence.Inotherwords,thetransferbacktoSharePoint reassignsnewIDvaluestoallitems,closingthepreviousgap.
■CautionBasedonthewaytheSharePointandAccesstreatstheIDfieldwhentheytransferinformationback andforth,IwouldnotrecommendusingtheautoincrementIDfieldintheissuetrackinglistasalookupfieldora linkingfieldtoanotherlist,becausethevaluescouldchangeifsomeoneexportsthelisttoAccessandthen importsitbacktoSharePoint.
312
CHAPTER6■ MANAGINGLISTSWITHACCESS
IssueswithValidationRules ThesecondtransferissuereferstoavalidationconcernwiththeEmployeeNumberfieldinthetable CoWorkers.InSharePoint,thisfieldhasamaximumoffivecharacters.Whenyouexportthelistto Access,theSharePointsizerestrictiononthefieldbecomesanAccessvalidationrule.Ifyouthenexport thetablefromAccessbacktoSharePoint,SharePointdoesnotalwaysconverttheAccessvalidationrule toacolumnvalidationformula,muchlessaMaximumnumberofcharacterssetting. Anotherissuereferstoread-onlyfieldsthatoriginatedintheSharePointlist.Whilethetransferof thelisttoAccessincludesthesefields,Accessdoesnotnormallydisplaythemwhendisplayingthetable, althoughyoucanseetheminthetable’sdesignview.Asread-onlyfieldsthatSharePointgeneratesfor eachlist,AccesscannotexportthesefieldsbacktoSharePoint.
■CautionReviewtheissuelistwhenyoutransferanAccesstablebacktoaSharePointlist.Someissuesyou cannotdoanythingabout.However,ifthetransferdropsvalidationsthatyouneedonfields,youshouldopenthe listsettingsandseewhethertheSharePointcolumnpropertiessupportasimilarstyleofvalidation.
TransferringReferentialTables Anotherexampleofissuesthatyoumayhavepreviouslyencounteredwhenyoutransferreddatafrom AccessbacktoSharePoint2007occurredwhenyouhadtwoormorerelatedtablesinAccess.Ifyou establishedreferentialintegritydefinitionsbetweenthesetables,andyouattempttoexportthemback toSharePoint,youobservedoneormoreofthefollowingissues: •
SharePoint2007hadnowaytoenforcereferentialintegrity.
•
SharePoint2007couldnotblockorcascadedeletestorelatedrecords.
•
SharePoint2007couldnotcascadeupdatestorelatedrecords.
InSharePoint2010,themoveoftablesfromAccessbacktoSharePointdoesretainthereferential relationshipintheresultingSharePointlistsifyoumoveallthetablesatonetimeusingtheSharePoint commandintheMoveDatagroupoftheDatabaseToolsribbon.However,forthistoworkcorrectly, youmustexplicitlyreferenceeachofthefieldstobeusedasshowninFigure6-9andyoumustdefine therelationshipbetweenthetablesasshowninFigure6-10.Thesesettingsarealsonecessaryifyou wanttopublishyourAccessdatabasesuccessfullytoSharePoint’sAccessServices,whichIexaminelater inthischapterinthesection“DeployingYourAccessApplicationtoSharePoint–Option2.”
313
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-9.Definingthelookupqueryexpressionbyexplicitlynamingfields
Figure6-10.DefiningtherelationshipbetweenthetablesbeforemovingthemtoSharePoint
314
CHAPTER6■ MANAGINGLISTSWITHACCESS
DealingwithDuplicateLists Figure6-11showsthelistsinmySharePointsite.NoticethatbecauseIaddedthelistMyWorkContacts asecondtime,SharePointaddsa“_1”suffixtothelistnametomakeitunique.Inowhaveessentially twolistswiththesamenameandcontent,lessanyminorchangesmadewhileinAccess.
Figure6-11.SharePointlistsafterexportingtablesbackfromAccess Ifthishappenstoyouandyouwanttokeepbothlists,youshouldrenameoneofthemtoavoid confusion.Howeverlet’sassumethatyoudon’twanttokeepboth.Youcoulddeletetheoriginallistand renamethenewlistbacktotheoriginalnamebydeletingthe“_1”.Thistechniquerepresentsamanual waytoupdateaSharePointlistusingAccess,butitcanleadtoproblemsiftheoriginalSharePointlist appearsonwebpagesorifotherlistsreferenceitasalookupbecausethesereferenceswillpointonlyto theURLoftheoriginallist,nottothenewlist.Therefore,abetterwaytodealwithupdatesistolinkthe AccesstabletotheSharePointlistsoyoucanperformcontinuoussynchronizationbetweenthem.The “LinkingSharePointListstoAccess”sectioninthischapterexploresthismethod.
TheOutlookTaskfortheExportSteps IfyoucreatedataskinOutlookfortheexportstepsearlierinthischapter,youcanopenyourTasks paneltoseethetaskwiththenameyoudefined.InFigure6-12,youcanseethatthistaskdoesnot currentlyhaveaduedateandhasastatusofNotStarted.
315
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-12.DetailsoftheexporttaskinOutlook IfOutlookdidnotautomaticallyopenthetaskwhenitcreatedit,youcandouble-clickitinyour OutlooktaskslisttoviewthedetailsshowninFigure6-12.Youcannowdefineastartdateandadue dateaswellassetaremindertoperformthetask.IntheTaskRibbon,clicktheRecurrenceoptioninthe Optionsgrouptodefinearecurrencescheduleifyoumustperformthisexportonaregularbasis.
■TipYoumaywanttosetuptaskstoremindyoutoarchiveolddatafromlists,suchasissuetrackinglists,to preventsuchlistsfromgrowingtoolargewithcompletedtasks,therebydegradingperformance.
Unfortunately,youcannotruntheexporttaskdirectlyfromtheOutlooktask.However,Access automaticallyincludestextinthetaskinstructingyouonhowtoexecutethesavedexportoperation fromwithinAccess.
ReusingSavedExportSteps Toexecuteasavedexport,openAccessandclicktheExternalDatataboftheAccessRibbon.Inthe Exportgroup,clicktheSavedExportsoptiontodisplayawindowliketheoneshowninFigure6-13.
316
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-13.SavedExportstabintheManageDataTasksdialogboxinAccess Inthistabbedwindow,youcanseeallyoursavedimportsandexports.ClicktheSavedExportstab andselecttheexportyouwanttorun.NoticethatyoucancreateanOutlooktaskfromhereifyoudid notdosowhenyoucreatedtheoriginalexport.Youcanalsodeleteanyofthesavedexportsyouno longerneedaswellaseditthenameorthedescriptionofthesavedexportbyclickingitsrespectivetext. Ifyoudidnotincludeadescriptionwhenyouoriginallysavedtheexport,clickbeneaththeSharePoint servernameonthetextClickheretoeditthedescription.Atextboxappearsinwhichyoucanentera description.
ImportingaSharePointListDirectlyfromAccess YoubeganthissectionbyexportingtheSharePointlistbyopeningthelistinSharePoint.However,you canperformthesameoperationdirectlyfromAccesswithoutfirstgoingtoSharePoint.Startbyopening Accessandthenfollowthesesteps: 1.
IfyougettheGettingStartedscreen,selectBlankDatabasefromthe AvailableTemplatesgroup.
2.
Ontherightsideofthepage,defineafilenameforthedatabaseandclick Create.
3.
BuildyourdatabasetablesinAccess
4.
SelecttheExternalDatatabintheAccessRibbon.
5.
ClicktheMorebuttonfromtheImport&Linkgrouptoopenadrop-downof additionimportoptions.
6.
SelectSharePointlistbutton.
317
CHAPTER6■MANAGINGLISTSWITHACCESS
ThisactionopensthedialogboxshowninFigure6-14,whichissimilartothedialogboxshown earlierinFigure6-2.YoumustspecifytheSharePointServersiteaddress.Thenyoucanchoosetoeither importthesourcedata,therebycreatinganewAccesstable,orcreatealinkedtable.Let’sstickwiththe importoptionfornow.Iwilltalkaboutlinkinglistsandtablesinthe“LinkingSharePointListstoAccess” sectionlaterinthischapter.
Figure6-14.Selectingthesourceanddestinationofdata ThenextdialogboxdisplaysalllistsintheselectedSharePointsite.Eachlisthasaseparatecheck box,whichallowsyoutoselectmultipleliststoimportatonetimeratherthanexportingthemoneata timeasyoudidwhenstartingfromSharePoint.Noticethatafterselectingalist,theItemstoImport columndisplaysadrop-downlistfromwhichyoucanselectaviewtouse.Rememberthatnotonlydo viewscontrolwhichcolumnsSharePointexportstoAccess,buttheview’sfilteralsodefineswhichitems (rows)totransfer.Figure6-15showsanexampleoftransferringthreelistsusingselectedviews.
318
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-15.ImportingmultipleSharePointlistsusingselectedviews AccessthenallowsyoutosavetheimportstepsjustasyoudidwhenyouexporteddatafromAccess. Ifyouchoosetosaveyourimportsteps,youmustspecifyanamefortheoperation.Bydefault,Access createsanamethatbeginswith“Imports-”followedbythenameofthefirstlist.Youcanalsocreatean Outlooktasktoremindyoutoperformthisoperationlater.WhenyouclickOK,Accessimportsthelists. NotethatthelistofobjectsthatAccesscouldimportincludesalltheSharePointlibrariesaswellas thelists.WhenimportingintoAccessfromalibrary,Accessonlyimportsthemetadataforeachlibrary item.TheactualdocumentitselfdoesnottransfertoAccess.However,ifyouonlywanttomanipulate themetadatafromthelibrary,thismaybeokay.Forexample,afterimportingthemetadatafromthe PurchaseOrderslibraryintoanAccesstable,youcouldeasilycreateanAccessreportusingthetableas thedatasource.Forexample,thisreportmightsumthepurchaseamountsbydepartmentforeach monthinthemostrecentfiscalperiod.
LinkingSharePointListstoAccess Intheexamplesdiscussedintheprevioussection,youimportedacopyoftheSharePointlistdatainto anAccesstable.BeforecontinuingwithsomeotherwaystoworkwithSharePointdatafromAccess,let’s seehowlinkingtotheSharePointlistsdiffersfromsimplycopyingthedataintoanAccesstable. BecauseyouhavealreadyseenhowtobeginatransferofalistfromSharePointtoAccessinthe previoussection,let’spickupthetransferatthepointwhereyouhavetodecidewhethertolinkto SharePointorsimplycopythedata.Figures6-2and6-14illustratearrivingatthispointintheprocess beginningfromSharePointorAccess,respectively.However,ratherthancopyingthelistdatatothe Accesstable,selecttheoptionLinktodataontheSharePointSite.
319
CHAPTER6■MANAGINGLISTSWITHACCESS
Forthisillustration,supposeIstartedfromtheMyCoWorkerslisttotransferandlinktoAccess. However,rememberthattheMyCoWorkerslistcouldusealookupreferencetoselectthedepartment towhichthecoworkerbelongs.SinceSharePointnowsupportsrelationalintegritybetweenlists,itdoes recognizewhentransferringalistwithalookuptoAccessthatitshouldalsotransferthelookuplist.This processmirrorsthewayAccessincludesrelationaltableswhentransferringdatabacktoSharePoint. Figure6-16showsthatthelinkprocesshastransferredboththeMyCoWorkersandDeptstablesto Access.
Figure6-16.EmployeesandDeptslistsloadedintoAccess Inaddition,youshouldseeabannerimmediatelybelowtheribbonthataskedifyouwanttosave yourchangestotheserver,asshowninFigure6-17.
Figure6-17.SavechangesbacktoSharePoint WhenyouclickonthebuttonSavetoSharePointSite,Accessdisplaysalistofthedocument librariesinyourcurrentsite.Fornow,saveyourdatabaseintheShareDocumentsfolderofyourlibrary.
EditingLinkedData WhenyoulinkratherthancopyaSharePointlisttoanAccesstable,youcanedititemsineither SharePointorAccess,andthechangesautomaticallyappearintheother.
320
CHAPTER6■ MANAGINGLISTSWITHACCESS
■TipAsastandardpractice,youprobablydon’twanttouseAccesstoeditindividualelementsofdataina SharePointlist.However,youmightwanttouseAccessanditslinkingabilitytomakemassupdatestodata,move databetweenlists,orevenmovedatabetweenlistsondifferentservers.Italsocouldprovideawaytolinkdata fromaSharePointlisttootherdatabases.
Aslongaseveryoneworksondifferentitems/rows,nooneknowsthatothersmightbeeditingthe samelist.However,whentwoormorepeopleeditthesameitematthesametime,aconflictsituation arises.Asexpected,thefirstpersontosaveherchangestotheitemsucceeds.Thesecondpersontosave hischangesseesanerrormessagesuchastheoneshowninFigure6-18.
Figure6-18.EditconflictonalistlinkedtoSharePoint Inthiscase,Accessraisesthemessageboxbecauseitrecognizesthatoneormorecolumnsinthe rowhavechangedsinceyoubeganeditingit.Accessgivesyouthreeoptionstoresolvethisconflict.First, youcouldsaveyourrecordanyway.Thisoptionblindlyoverridesthepreviouschangestothefieldswith yourvalues.Anobjectiontothisoptionmightbethatyoudonotknowwhichfieldstheotherperson updated,muchlessthechangesshemayhavemade. ThesecondoptionletsyoucopyyourchangestotheclipboardwhileupdatingtherecordinAccess withthemostrecentvalues.YoucanusetheClipboardViewerorpastetheclipboardcontentsintoan instanceofWordPadtoseeandevaluatethechanges.Ifyoustillwanttouseyourvalues,youcanreenter thefieldswithyourvaluesandsavetherecordbynavigatingtoanotherrecord.Figure6-19showsan exampleofconflictdatafromtheDeptstable.Iaddedtheconflictingdatatotheclipboardandthen displayeditinaWordPaddocument.
321
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-19.ContentsofanupdateconflictaddedtotheclipboardandviewedinWordPad Thethirdandfinaloptiondropsyourchanges.Whenyouselectthisoption,Accessupdatesthe tablewiththevaluesenteredbytheotherpersonandignoresallyourchanges. Youmightbethinkingthatyoucouldavoidconflictproblemsifyoucheckoutthelistbeforeyou beginmakingchanges.Unfortunately,theCheckOutfeaturedoesnotexistforlists.However,ifyoulink tothemetadataassociatedwithadocumentlibrary,youcancheckoutitemsinadocumentlibrary.This preventsanyoneelsefrommakingchangestothemetadata.
■NoteYoucouldsimulatethebehaviorofCheckInandCheckOutbyusingSharePointeventhandlersanda customfield,butthatwouldrequiresomecodingthatisoutsidethescopeofthisbook.
UsingAccesstoMakeMassUpdates SharePointhastroublemakingmassupdatestolists.Asanexample,supposeyouhaveanInventorylist ofitemsyousell,andyouneedtoincreaseallofthepricesofallitemsby10percent.Whatarethenew itemprices?Howmuchdoesyourinventoryvaluechange?Youcouldopenyourlistandediteachitem toupdatethepricefortheitem.Ifmodifyingthepriceofeachofyourproductrecordssoundslikealot ofwork,youareright.Youmightevenneedtopulloutyourcalculatortodeterminethenewprice,and updatethemetadatausingtheDatasheetViewofthelist. However,ifyouhavemorethanafewrecords,afasterwaytoupdatethepriceforallitemsinyour InventorylistbeginsbylinkingthelisttoanAccesstable.FromwithintheAccesstable,asingleupdate
322
CHAPTER6■ MANAGINGLISTSWITHACCESS
statementcanincrementtheproductpriceby10percentforallitemsinboththetableandthelinked list.Whenfinished,youcansimplydeletetheAccesstable,andthedataintheSharePointlistshowsthe newproductprices.Noticethatextendedinventoryvalueinthelastcolumnisacalculatedvaluethat multiplestheitem’spricebythenumberofitemsintheinventory.
■NoteTherestofthesectionrequiressomeintroductoryknowledgeofcreatingandusingSQLQueriesin Access.
Let’sbeginbylookingattheInventorylistbeforemakinganychanges.Figure6-20showsthefirst severalproductsinthelist.
Figure6-20.OriginalpurchaseamountsinthePurchaseOrderslibrary Next,openAccessandcreateablankdatabasenamedInventory.FromtheExternalDataribbon, selecttheSharePointListoptionfromtheMoredrop-downintheImport&Linksection.Inthe subsequentdialogboxes,definetheSharePointsiteandselectInventoryfromthelistofobjectsthatyou canimportintoAccess.BesuretolinktheSharePointlisttotheAccesstable.Afteryouhaveloadedthe listintoanAccesstable,youcancreateaquerytoupdatethedata. Tocreateanewquery,selecttheCreateribbon.ThenselectQueryDesignfromtheMacros& Codesection.Thefirststepincreatingaquerydisplaysadialogboxtoselectthetablesyouwantto includeinthequery.Inthiscase,selectthenewlyaddedInventorytablebyclickingitandthenclicking Add.Ifyouhaveothertablestoincludeinyourquery,youcouldaddthemhere.Ifyoudonot,closethis dialogboxbyclickingtheClosebutton. Next,scrollthroughthelistoffieldsuntilyoufindthefieldProductPrice.Double-clickthefieldto selectitandaddittothegridinthelowerhalfofthequerybuilderscreen.Bydefault,Accessassumes thatyouwantaSELECTquery.However,youneedtouseanUPDATEquerytochangethevaluesofthe ProductPricefield.Therefore,clicktheUpdatebuttonintheQueryTypegroupoftheDesignribbon. Thisalsochangestheotherinformationyoumustprovidefortheselectedfieldsoyoucanaddan updateformula.Next,youcanspecifyafiltercriterionsothatyourupdateonlyactsonasubsetofthe rowsinthetable.Ifyouwanttochangealltherows,donotincludeafilter.However,youmustsupplya formulatoincreasetheProductPricefieldvalues.Figure6-21showstheformulaneededtoadd10 percenttotheproductprice.
323
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-21.Adding10percenttotheproductprice Torunthequery,clicktheRunoptionintheResultsgroupoftheDesignribbon.Whenyourunan UPDATE query,Accessremindsyouthatyoucannotundothechangesmadebythequerytothelinked table.Therefore,thefirstdialogboxthatAccesspopsupletsyoucanceltheupdatebyclickingNoor proceedwithyouractionquerybyclickingYes. TheseconddialogboxthatAccessdisplaystellsyouhowmanyrowsitwillupdateinthetable. Again,youcancanceltheupdatebyclickingNonow.IfyouclickYes,Accessperformstheupdatetothe table.BecauseyoulinkedtheSharePointlisttoAccess,thechangesalsoapplytothecolumnsinthe InventorylistonyourSharePointsite.IfyouopentheSharePointsiteandviewtheInventorylist,you willseethatitalsoupdatedtheProductPricefields.Figure6-22showstheitemsinthelist,soyoucan verifythatthefirstitemnowhasaproductpriceof$10.98ratherthan$9.98representingtheoriginal priceplusa10percentincrease.
Figure6-22.UpdatedpurchaseamountsintheSharePointPurchaseOrderslibrary
UseMultivalveFieldsinLists Multivaluedfieldsallowasinglefieldtohavemorethanonevalue.Microsoftaddedthiscapabilitytothe mostrecentversionofAccessaswellastoSharePoint.Manypeoplebelievethatthisfeatureviolates datanormalizationrules,whichcallforatomicityoffieldvalues.However,italsoservesasaneasily
324
CHAPTER6■ MANAGINGLISTSWITHACCESS
solutiontoproblemsinwhichyouwanttoassociateasinglerecordoriteminalistwithmultiplevalues fromanotherlist.
■NoteAtomicitymeansthatafieldshouldhaveoneandonlyonevalue.
Ifarecordinatablehasafieldthatneedsmorethanonevalueforanyfield,datanormalization requiresthatyouremovethatfieldandmakearelatedbutseparatetableforit.Onthatbasis,peopledo notbelievethatadatabasefieldshouldhavemorethanonevalue.However,simplelistsdonothaveto followsuchrules.Therefore,itmayhavebeenSharePoint’suseofmultivaluedfieldsthatdrovethe changeinAccess,nottheotherwayaround.Ormaybetheyarenotrelatedatall. Ratherthandebatetheprosandconsofmultivaluedfields,let’slookatanexampleofaSharePoint listthatusesthemandseehowyoucanenterandmaintainthatdata.Youwillalsolookathow SharePointandAccessexchangedatawiththesefieldtypes.
CreatingaMultivaluedColumninSharePoint InSharePoint,youhavetwowaystocreateamultivaluedfield.Thefirstwayusesthechoicecolumn type.Fromthediscussiononthiscolumntype,youmightrecallthatyoumustspecifythepossible valuesforthisfieldwhenyoudefineit.Youcanthendisplaythevaluesasradiobuttons,adrop-down list,orcheckboxesonthedefaulteditformwhenaddingormodifyingitemsinthelist.Whendisplayed withcheckboxes,theusercanselectoneormoreofthevalues.Iftheuserselectsmultiplevalues, SharePointdisplaysthemintheStandardViewconcatenatedtogetherwithasemicolontoseparate them. Alternatively,youcouldusealookupcolumntypetocreateamultivaluedfieldbyclickingtheAllow multiplevaluescheckboxwhendefiningthefield.Thekeyadvantagetousingthismethodlieswiththe easeinwhichyoucanmaintainthelistusedtosupplyvaluestothelookup.Thedisadvantageofthis methodderivesfromSharePoint’sinabilitytoallowtheusertodefinetherelationshiptypebetweenthe twolists.WhiletheusercanselectfromRestricteddeleteorCascadedeletewhenyouallowthenew listtoselectasinglevaluefromthelookuplist,onlycascadedeletes(andupdates)areallowedwhen yournewlistallowstheusertoselectmultiplevalues. Figure6-23showsanewlistcolumnIaddedtotheCoWorkerslistusingthelookupcolumntypeto defineemployeeskillsfromtheSkillstable.Eachemployeecanhaveoneormoreskills.Actually,unless youmakethisfieldrequired,youcouldhaveanemployeewithnoskills,butthenheprobablywouldnot remainanemployeeforlong.Right?
325
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-23.Definingamultivaluedcolumn Tocreateamultivaluedcolumn,youmustselecttheAllowmultiplevaluescheckboxinthe AdditionalColumnSettingsgroup.Ifyoudonotselectthisoption,theusercanonlyselectoneskill fromthelist.Thismightbeokayifthefielddescriptionasksfortheemployee’sprimaryskillratherthan herskillsingeneral.However,assoonasyouselectthischeckbox,SharePointdisablestheabilityto enforcerelationshipbehavior,otherwiseknownasreferentialintegrity. Lookupfieldsalwaysdisplayintheadd/modifyformSharePointautomaticallygeneratesforalist, usingaduallistboxsometimesreferredtoasmoverboxes.Theygotthisnamebecausetheyhelpyou moveoneormorevaluesfromonelisttotheother.Moverboxesalsogenerallytakelessspaceonaform thanthecorrespondingradiobuttonsorcheckboxesforsituationsthathavemorethanjustafew options.Thelistboxontheleftshowstheavailablevaluesfromwhichyoucanselect.Thelistboxonthe rightshowsthevaluesyouhavealreadyselected.Buttonsbetweenthetwolistboxeshelpfacilitate movingitemsfromonelisttotheother.Figure6-24showsanexampleofhowSharePointimplementsa lookupfield.
326
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-24.Moverboxesusedtoselectvaluesfromalookuplist Toaddaskill,youcandouble-clicktheskillnameintheskillboxontheleftside.Youcanalsoclick thevalueandthenclicktheAddbuttonfoundbetweenthelists.Bothmethodsaddtheskilltothelist boxontherightsidecontainingyourselectedskills. Youcanalsoselectmultipleskillsfromtheavailableskilllistbyclickingthefirstskill,andthen pressingtheShiftkeywhileyouclickthelastskillyouwanttoselect.Thistechniqueselectsnotonlythe twoskillsyouclicked,butalsoalltheskillsbetweenthem.IfyouholdtheCtrlkeyinsteadoftheShift key,youwilladdtotheselectiononlytheskillsyouclicked. Youcanalsoremoveselecteditemsfromtherightsideofselectedlistboxbyfollowingthesame techniquestoremoveindividualorgroupsofvalues. WhenyouclickOK,SharePointaddsormodifiestheitemandshowstheupdatedlistasshownin Figure6-25.
327
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-25.EmployeeslistwithmultivaluedSkillscolumn NoticethattheselectedskillsforSusanAntonappearintheEmployeeSkillsfieldseparatedwith semicolons.Anotherthingtonoticeaboutthislistfocusesonthecolumnheader,Skills.InChapter2, youlearnedthatthecolumnheadershavedrop-downmenusthatusuallyallowyoutotemporarilysort orfilterthelist.InthecaseoftheEmployeeSkillscolumn,whenyouopenthisdrop-downmenu,you seetextatthetopofthemenuthatsaysThis column type cannot be sorted.Thisoccursbecauseyou cannotsortmultivaluedlistitems.Afterall,whichofthemultipleitemsinthelistshouldhavepriority forsorting?Figure6-26showsthisdrop-downmenu.
Figure6-26.Drop-downmenuforamultivaluedcolumn
■NoteThisdrop-downonlylistsskillstofilterbythatappearinatleastoneofthelist’sitems.
328
CHAPTER6■ MANAGINGLISTSWITHACCESS
Notice,however,thatyoucanfilterthelistbyindividualvalueseveninthemultivaluedfield.For example,ifyouselectthevalueSharePoint,SharePointrefreshesthelist,applyingthefiltertodisplay onlythoseemployeeswithSharePointasaskill.Openingthedrop-downmenufortheEmployeeSkills columnasecondtimedisplaysanoptiontoclearthefilterfromthecolumn,andthusdisplayingall employeesagain.Whenacolumnhasanactivefilter,afunnel-shapediconappearsintheheadertothe rightofthename.
■NoteYoucannotselectmorethanonefilterforacolumnatatime.However,youcanselectfiltersontwoor morecolumnsatonce.
■TipIfyouswitchtotheDatasheetView,youcancreatecustomfiltersthatcanincludemorethanonefilterfor asinglecolumn.
InadditiontotheEmployeeSkillscolumn,supposeyouaddedachoicetypecolumn,named Language,soyoucantrackthelanguageseachemployeeknows.Sinceanemployeemightknow multiplelanguages,youdecidetomakethiscolumnamultivaluedcolumnaswell. Figure6-27showsthisfieldafteryouhaveaddedittothelistandspecifiedvaluesforeach employee.Onyourscreen,youmightnoticethatthevaluesdisplayinadifferentcolorfortheEmployee SkillsasopposedtotheLanguagecolumneventhoughtheyarebothmultivaluedcolumns.Whenyou createamultivaluedcolumnusingthechoicecolumntype,thewayyoudefinethefieldfixesthe possiblevalues.However,theEmployeeSkillscolumnlinkstotheSkillslist,buildingthelistofpossible valuesdynamically.Thisdifferencecreatesasahyperlinkvalueratherthanjusttext.Ineithercase,you cannotsortonamultivaluedcolumnnomatterhowyoucreateit.Youcanverifythisbyclickingthe columnheadertoopenthedrop-downmenu.However,youcanagainfilterthelistsbyindividualvalues usedinthemultivaluedcolumn.
329
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-27.EmployeeslistwithSkillsandLanguagemultivaluedcolumns Atfirst,youmaythinkthateithermethodofaddingamultivaluedcolumnshouldresultinthesame end-userexperience.Theprimarydifferencebetweenthetwomethodsisthatuserswiththerightsto addandmodifyitemsinalistcanmaintaintheskillslookuplist,buttheycannotaddormodifythe itemsinthelanguagechoicelistunlesstheyalsohavetheManageListspermission.However,thatisnot theonlydifference.
OpeningaListwithMultivaluedColumnsinAccess Let’sopentheCoWorkerslistinAccesstoseehowAccesstreatsthesetwocolumntypes. 1.
OpentheCoWorkerslistinSharePoint.
2.
SelectOpenwithAccessfromtheConnect&ExportgroupoftheListribbon.
Atthispoint,AccessopensadialogboxaskingwhetheryouwanttolinktothedatainSharePointor exportacopyofthedata(seeFigure6-2).Let’sseewhathappenswhenusingeachmethod,beginning withexportingacopy. 3.
SelectExportacopyofthedataandclickOK.
Afterafewmoments,AccessopenswithacopyoftheemployeedataasshowninFigure6-28.Ifthe tabledoesnotimmediatelyopen,youmayneedtoopentheCoWorkerstablefromtheNavigation panelbydouble-clickingit.
330
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-28.Employeestableaftercopyingthelist YoushouldfirstnoticethatAccessreplacedtheskillsintheSkillscolumnwiththeircorresponding skillID,makingitratherdifficulttointerprettheSkillscolumninanyusefulmanner.Thisdoesnot happentotheLanguagecolumndefinedasachoicetypecolumn.Thus,whencopyingalist,Access treatslookupcolumnsdifferentlyfromchoicecolumns.Furthermore,ifyouclickintheSkillscolumnof anyrowintheAccesstable,thedrop-downonlyincludestheIDvaluesalreadyusedforthatemployee. Thus,thedrop-downforeachoftheemployeesdiffers.NorcanyoumanuallyenterotherIDvalues, evenifyouknowwhatskillseachIDvaluerepresents.Figure6-29showsatypicalskillsdrop-downfor anemployee.
Figure6-29.Skillsdrop-downlistthatappearswhenyoucopytheEmployeestable Ontheotherhand,theLanguagecolumndisplaystheselectedlanguagesjustasitdidwithin SharePoint,exceptcommasseparatethevaluesratherthansemicolons.Inaddition,ifyoueditthisfield byopeningthedrop-downlistofvaluesforanyemployee,youwillseethecompletelistofpossible valuesexactlyasdefinedinSharePoint.Usingthisdrop-down,youcanmodifythelanguagesassociated withanyemployeebyclickingthecheckboxbeforeeachlanguage.However,changestoanyofthese columnsdonotresynchronizewiththeoriginalSharePointlistbecauseyouchosethecopyoptionto createthistable. InsteadofchoosingExportacopyofthedatawhenyouopentheSharePointlistinAccess,open AccessusingtheLinktodataontheSharePointsiteoption.Whenyouselectthisoption,SharePoint notonlycreatesalinkinAccessfromtheCoWorkerstabletotheCoWorkerslistinSharePoint,butalso includeslinkstoallthelookuptables.Figure6-30showsthatinadditiontotheCoWorkerstable,Access alsocreatestableslinkedtoSkillsandDepts.Asaresult,whenyouopentheCoWorkerstable,younow seetheskillnames,nottheskillIDvalues.Furthermore,ifyouclickintheSkillscolumnforany employeeandopenthedrop-downmenu,youseeallavailableskillsfromtheSkillslist.
331
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-30.Theskillsdrop-downiscompletewhenlinkingtotheEmployeeslist. Forthisreasonalone,youmaychoosetousethelinksoptionratherthanthecopyoptiontoview SharePointlistsinAccess.Butwait,thereismore. WhenyoulinktotheSharePointlistratherthancopyfromit,youcanmakechangesineither SharePointorAccessandhaveyourchangesappearintheotherplatform.Whenyoucopythelistfrom SharePointtoAccess,changesyoumakeineitherplatformremainonlyintheplatforminwhichyou makethem.Thismeansthatbyusinglinkstoyourlists,youcanuseAccesstomanageyourSharePoint lists,eventhosewithmultivaluedcolumns.
SomeReasonsNottoUseMultivaluedColumns Thefirstargumentagainstusingmultivaluedcolumnscomesfromtheinabilitytosortbythem.You cannoteasilyresolvethisproblembecauseyouwouldneedtodecidewhichvalueinamultivaluedset controlsthesort. Filteringposesadifferentproblem.Whileyoumaybeabletofiltertherecordsinatableusinga “contains”filter,thefilteringstringmustuniquelyidentifythevalueyouwantandnoothervalue.For example,ifyouusedthetwolanguagesFrenchandFrenchCreole,youmightencounterproblemsifyou attemptedtofilterorsearchtherecordsforemployeeswhocouldspeakFrench.A“contains”filteron thetext“French”wouldreturnemployeeswhospokeeitherFrenchorFrenchCreole. AnotherpotentialproblemoccurswhenyouwanttolinktheCoWorkerstabletoanothertableona multivaluedfield.Forexample,supposeyouhaveatableofprojectsthatincludesafieldthatdefinesthe skillsneededbytheproject.Youmightwanttorelatethesetwotablestoseewhichemployeesyoucould assigntoeachprojectbasedonmatchingtheirskillstotheskillsneededfortheproject.However,ifyou definetheSkillsfieldineitherorbothtablesasmultivaluedfields,youcannotusethatfieldtolinkthe tables. Beforeleavingthisdiscussiononmultivaluedfields,let’stakeaquicklookattheschemaforthese fieldsinAccess.Figure6-31showsthefieldpropertiesfortheSkillsfield.IntheLookuptab,youcansee thattherowsourceusesaSELECTstatementthatpullsdatafromtheSkillstable.Itdefinesthebound columnastheIDcolumn(rememberthatthecopyoptionshowsonlytheIDvalues),butdefinesthe widthofthefirstcolumnas0sothattheskillname(Title)appears,nottheID.Noticealsotheproperty AllowMultipleValuesmustshowYestoallowmultiplevaluesinthefield.
332
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-31.SkillsfielddefinitionintheAccessversionofEmployees Althoughpowerfulintherightcircumstances,Irecommendthatyouexercisecautionwhenusing multivaluedcolumns,withfullknowledgeofthelimitationstheyimpose.
CreatingAccessFormsandReportsfromaSharePointList OnceyoubringyourfirstlistintoAccess,anaturalquestionmightbe,“CanIcreateformsandreports fromthelistdata?”Theanswerisyes. SupposeyoustartwiththeCoWorkerslist.Ifyourememberfromearlierdiscussioninthischapter, theCoWorkerslistusestwofieldsthatdefinetheirvaluesusingitemsfoundintwootherlists,theDepts andtheSkillslists.Thus,whenyoulinktheCoWorkersSharePointlisttoAccess,italsolinksthesetwo lists,asyousawinthelastsection.
CreatingaSimpleForm Withthethreeemployee-relatedtableslinkedintoAccess,youcangenerateasimpleformfordisplaying andusingjustthedatafromtheCoWorkerstable.Thefastestwaytocreateanewformforasingletable usestheFormWizard,whichyoucanfindbyopeningtheCreateribbonandlookingforForminthe Formsgroup.
333
CHAPTER6■MANAGINGLISTSWITHACCESS
■TipBydefault,Accessgeneratesaformforwhichevertableyouhaveopenorhaveselectedfromtheleft-side Navigationpanel.Ifyoudonothaveatableselectedoropen,theFormWizardappearsgrayed-outand unavailable.
Figure6-32showsanexampleofadefaultformgeneratedbyAccessfortheCoWorkerstable.Like allAccessforms,youcanfurthercustomizetheformafterusingthewizardtobuildthebaseform.
Figure6-32.AsimpleformfortheEmployeestable
■TipIfyoudonotlikethedefaultformgeneratedbyAccessusingtheFormWizard,youcanabandonthisform byclosingitwithoutsavingit.CreateanewformusingtheFormDesignoptionfromtheFormsgroupofthe Createribbon.Youcouldalsogenerateaform,saveit,andthenuseFormDesigntoedittheappearanceand/or functionalityoftheform.
NoticethatallfieldsoriginallycreatedaslookuporchoicefieldsinSharePointnowappearasdropdownlists.Ofcourse,onlytheEmployeeSkillsandDepartmentdrop-downslinktoothertablesinthe Accessdatabase,whiletheLanguagedrop-downreferencesafixedselectionofvalues.Inaddition,the fieldsforEmployeeSkillsandLanguagesdisplaythemultivaluedformatdiscussedearlierinthis chapterwhenyouclickopentheirdrop-downlists.
334
CHAPTER6■ MANAGINGLISTSWITHACCESS
■NoteTheDepartmentcolumndoesnotdisplaycheckboxesbeforethepossiblevaluesbecauseitisasingle valuelookupfield.
Ifyoulikethewayaformappears,youcansaveitforfutureusebyrightclickingthehighlightedtab atthetopoftheformandselectingSavefromthemenuthatappears.Thisactionopensasimpledialog boxthatpromptsfortheformname.Accesssupportsformnamesthathaveanycombinationofletters andnumbers.However,youshouldneverusespecialcharacters.Idonotrecommendusingspacesin tableorfieldnameseither,althoughitispossibleifyouthendelimitthosenameswithsquarebrackets whenyoureferencethem. Astohowlongtableorfieldnamesshouldbe,youshouldalwaysuseasmanycharactersas necessarytofullydescribeyourAccesstablesandforms,uptothelimitof64characters.Don’t,however, makelongnamesjustbecauseyoucan.Youcanevensaveaformorreportwiththesamenameasthe tableonwhichyoubaseit,althoughthatcanleadtosomeconfusion.Infact,theiconbeforetheobject namemaybeyouronlyclueifyoudisplaythetableandformintheNavigationpanelgroupedby TablesandRelatedViewsratherthanbyObjectType,asshowninFigure6-33.
Figure6-33.AsavedformappearsintheNavigationpanelwithitsownicon. InadditiontothebasicformshowninFigure6-32,Accessprovideswizardstohelpyoucreate severalothertypesofforms,includingthefollowing: •
SplitForm
•
MultipleItems
•
PivotChart
•
PivotTable
•
ModalDialog
•
Datasheet
•
Severalvariationsofformswithtabsforsubreports.
Itisbeyondthescopeofthisbooktoexamineeachoftheseformtypes.However,let’slookattwo formvariationsbeginningwiththeSplitForm.
335
CHAPTER6■MANAGINGLISTSWITHACCESS
CreatingaSplitForm TheSplitFormgivesyoutwoviewsofthesamedataonthesameform.Figure6-34showsaSplitForm fortheCoWorkerstable,inwhichthetopportionoftheformshowsthefieldslaidoutsimilarlytothose ofFigure6-32.However,thebottomoftheformdisplaysthetablerecordsinagridformat,inwhich eachrecorddisplaysasarowinthegrid.
Figure6-34.ASplitFormprovidestwowaystoeditrecords. Youcanchangetherecordshowninthetopportionofthisformbyscrollingthroughtherecords usingthegridinthelowerportionandclickinganywhereintherowofthedesiredrecord.Onceyou selecttherecord,youcantheneditthefieldsineitherportionoftheform.Whenyoumoveoffthe record,Accessautomaticallysavesthechangesyoumadetothatrecord. Ifyoudonotlikethewayaformgeneratedbythewizardlooks,youcanedittheformdesignby right-clickingtheform’shighlightedtabandselectingDesignViewfromthedrop-downmenu.Youcan alsoselectDesignViewfromtheViewdrop-downmenufoundintheViewsgroupoftheHomeribbon. Figure6-35showsthetopportionofyouroriginalCoWorkersformdisplayedinDesignView.A formlikeareportinAccessconsistsofaseriesofbands.Inaform,thedefaultbandsincludeaForm Header,Detail,andFormFootersection.(NotshownbydefaultarethePageHeaderandPageFooter bands.Youprobablywillusetheselattertwobandsinfrequentlywhendesigningforms.However,you mayfindthemquiteusefulwhendesigningreports.)WhiletheFormHeaderbandonlyappearsonceat thebeginningofareportnomatterhowmanypagesthereportruns,thePageHeaderrepeatsatthetop ofeachnewpageinthereport.Developersoftenusethisbandtodefinecolumnheadings. Similarly,thePageFooteroccursatthebottomofeachpageandmayincludeinformationsuchas thepagenumber,reportname,orthereport’sgenerationdate.Notethatyoudonotneedtouseeachof thesebands.Infact,youcancreateaformthatonlyusestheDetailband.Youcanturnonoroffanyof
336
CHAPTER6■ MANAGINGLISTSWITHACCESS
thesebands,aswellasaccessotherbandfeatures,byright-clickingtheband’stitlebarandde-selecting thebandfromthedrop-downmenu.
Figure6-35.DesignViewletsyoucustomizeyourform’sappearance.
CreatingaCustomFormUsingaSubform ThelastformtypeIwillbrieflyexplorehereisthecustomform,whichusesasubformtodisplaydata fromarelatedtable.Youwouldusethistypeofformtoshowaparent-childrelationshipbetweentwo tables.Forexample,supposeyouwanttodisplayalistofemployeesbydepartment.Inthiscase,the Deptstableactsastheparent,aseachemployeebelongstoonlyonedepartmentbuteachdepartment canhavemultipleemployees. Tobeginaformthatdisplaysthisrelationship,createasimpleformfortheDeptstable.Thenafter theFormWizardfinishes,choosetheDesignViewfortheform.Next,findtheSubformiconinthe ToolsgroupoftheDesignRibbon,asshowninFigure6-36.
Figure6-36.TheDesignRibbonwiththeSubformtoolselected
337
CHAPTER6■MANAGINGLISTSWITHACCESS
Afterselectingthisdesigntool,movebackintotheformanddrawarectangletorepresentthearea whereyouwantthesubformtoappear.Whenyoureleasethemousebutton,Accesspromptsformore informationtotiethemainportionoftheformtothesubformusingaseriesofdialogboxes. Thefirstdialogbox,showninFigure6-37,askswhetheryouwanttouseanexistingtableorqueryor ifyouwanttouseanexistingform.Irecommendthatyoucreatethesubformfirstandthenjust referenceitfromthelistofavailableforms.Inthiscase,choosethepreviouslycreatedCoWorkersform.
Figure6-37.Creatingyoursubformfromtables,queries,orexistingforms
■TipUsetoolsandwizardsasmuchaspossibletoreducetheamountofworkyoumustperformmanually.
Ifyouhavenotcreatedasubformaheadoftime,youcanalwaysgodirectlytoatableorquery.In thatcase,youmustbeginbyselectingthetableorqueryyouwanttouseinthesubform.Thenselectthe fieldsyouwanttoappearinthesubform.Figure6-38showsanexampleofthedialogboxthatletsyou selectfieldsfromthelistofavailablefieldsintheselectedtableorqueryandmovethemintothe SelectedFieldslist.Theorderinwhichyouselectfieldsforthislistdeterminestheorderinwhichthe fieldsappearinthesubform.Therefore,selecttheordercarefully.WhileAccessletsyourearrangefields inDesignViewmode,youcansaveyourselftimebygivingtheorderofthefieldssomethoughtbefore youselectthemratherthanspendingtimelatermovingthemaround.
338
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-38.Selectingthefieldstoincludeinthesubform Afteryouhavedefinedthefieldsinyoursubform,youstillneedtodefinehowyouwanttolinkthe mainformtothesubform.Accessattemptstohelpbyprovidingsomesuggestionsinthenextdialogbox ofthewizard.However,ifnothinginthislistseemscorrecttoyou,youcandefineyourownconnection. Figure6-39showsthedialogboxusedtodefineyourownlinkbetweenthemainformandthe subform.Inthiscase,youwanttousetheIDfieldastheconnectingfieldbetweentheDeptstableand theDepartmentfieldintheCoWorkerstable.Rememberthat,whenyoubringalistfromSharePoint overtoAccess,thelookupcolumnsinthelistcontaintheIDoftherecordinthelookuptable.
Figure6-39.Definingthelinkbetweenthemainformandthesubform
339
CHAPTER6■MANAGINGLISTSWITHACCESS
■CautionWhenyoudefineyourownlink,thefieldtypeonbothsidesofthelinkmustbethesame.Inother words,ifyouselectanintegerfieldonthemainformside,youmustselectanintegerfieldonthesubformside. Ontheotherhand,thenamesofthefieldsdonotmatter.
Whileyoucanbuildlinksbetweenthemainformandsubformusingmorethanonefield,Istrongly recommendusingsinglefieldsforprimaryandforeignkeysbetweentables.Ifyoudonothaveanatural uniquesinglefieldtoserveasthekey,youmaywanttouseanautonumberfieldontheprimarysideof therelationship. Afteryoufinishdefiningthelinkbetweentheformandsubform,youarereadytosavethesubform. However,youmustsupplyanameforit.Aswithtablenames,youcanuseanycombinationofletters andnumbersaslongasthetotallengthofthenamehaslessthan64characters.Figure6-40showsan exampleofthecompletedformdisplayingtheemployeeswithinadepartment.
Figure6-40.ExampleoffinishedSplitForm SowhydidyougothroughallofthistroubletocreateanAccessformbasedontablesthatrepresent linkstolistsinSharePoint?TheanswerrestswiththefactthatyoulinkedtheSharePointliststoAccess. BecausetheAccesstablesrepresentlinks,youcanmodifythedataintheAccesstableoranyforms createdfromthosetables,andAccesssynchronizesyourchangesbacktotheSharePointlist.Thenext timesomeoneopenstheSharePointlist,shewillseeyourchanges.Thus,youhaveanalternativewayto maintainyourlists.RatherthangothroughtheSharePointinterfacetoedityourlists,youcancreatea seriesofAccessformsandorganizethemintoanAccessapplicationthatanyonecanusetomaintain yourSharePointlists.
CreatingaSimpleReport Inasimilarfashion,youcancreateAccessreportstodisplaydatafrommultipleSharePointlists.Infact, thetechniquefordesigningreportsusesmanyofthesameconceptsandsimilarwizardsthatyouused
340
CHAPTER6■ MANAGINGLISTSWITHACCESS
whencreatingforms.Forillustrationpurposes,thereportshowninFigure6-41displaystheemployees ineachdepartment.
Figure6-41.SampleofanAccessreportcreatedfromlinkedSharePointlists Again,IwanttoemphasizethatlearninghowtouseAccesstocreateformsandreportsgoesbeyond whatwehavetimeforhere.TherearemanybooksavailableforAccessthatcanprovideyouwithfurther assistanceinlearninghowtocreateformsandreports.
CanRecycleBinRecoverDeletedListRecords? Bynow,itshouldnotcomeasasurprisethat,whenyoudeletearecordinanAccesstablethatlinkstoa SharePointlist,SharePointalsodeletestherecordfromthatlist.Accesswarnsyouthat,whenyoudelete arecord,itisdeletedpermanently.However,thatdoesnottakeintoaccountthefactthatyoulinked AccesstoSharePoint.Remember,unlikedeletingarecordfromastand-alonetableinAccess,whenyou deletejustaboutanythinginSharePoint,SharePointsendsittotheRecycleBin.Therefore,ifyou happentodeletethewrongrecordwhileinAccess,youcanrecoveritthroughSharePoint. Torecoveradeletedrecord,openSharePointandnavigatetothesite.Youdonotneedtogofirstto thelistthatlinkstotheAccesstable.Justfollowthesesteps: 1.
ScrolldownthroughtheQuickLaunchareaonthelefttoRecycleBinfound atthebottom.
2.
ClickRecycleBin.
3.
WhentheRecycleBinopens,itshowsalltheitemsdeletedinthelast30days (bydefault).Locatethedeletedrecord(seeFigure6-42).
341
CHAPTER6■MANAGINGLISTSWITHACCESS
Figure6-42.RecoveringadeletedAccessrecordusingtheSharePointRecycleBin 4.
Clickthecheckboxtotheleftoftherecordyouwanttorestore.
5.
ClicktheRestoreSelectionbuttonatthetopoftherecyclelist.
Ifyounowreturntothelist,thedeletedrecordagainappearsinthelist.Furthermore,ifyougoto Accessandopenthetablecorrespondingtothelinkedlist,youseethatthedeletedrecordappearsthere aswell.
DeployingYourAccessApplicationtoSharePoint–Option1 NowthatyouhaveseenhowAccessandSharePointcanshareindividuallistsandtables,youarenow readytoaddressthelargerissueofwhatyoucandowithAccessapplicationsthemselves.Oneofthe reasonsmostITdepartmentsshutteratthethoughtofthenumberofAccessapplicationsrunningwild withintheircompaniesisthattheseapplicationsaretotallyunmanageable—andmultiplecopiesofthe dataexistthroughouttheorganizationonlaptopsthatcanbeeasilystolenorcompromised ThefirstpartofthischapteraddressedonewayinwhichSharePointcanhelpmanagethedatafrom theseapplications.YousawhoweasilyyoucanuploadAccesstablestoSharePointandthenlinktothose lists.SharePointthenbecomestheownerofthedata.Youcanthenallocatepermissionstoaccessthe datathroughSharePointtotallyindependentofAccess.Thus,ifalaptopisstolenorcompromised, unlessthethievesalsoknowtheoriginalowner’susernameandpassword,theycannotaccessthe SharePointsitetogettothedata.Thus,movingthetablesfromAccesstoSharePointaccomplishesthe followingdatamanagementgoals:
342
•
Establishesoneversionofthetruth,onecopyofthedata
•
Providesforaneasywaytobackupthedataonaregularbasis
•
Protectsaccesstothedatawithuserbasedpermissions
•
Tracksversionsofthedata
•
ProvidesforaRecycleBintorecoveraccidentallydeleteddata
CHAPTER6■ MANAGINGLISTSWITHACCESS
However,theapplicationitselfstillresidesonauser’sdesktop(orlaptop),makingitdifficulttopush outnewversionsoftheapplicationbecauseitisalmostimpossibletotellwhereallthecopiesofthe applicationexist.Sometimes,thedevelopermayevenlocktheapplicationsothatwhileotherscanrun theapplication,theycannotgettothesourceoftheforms,reports,queries,ormacrostomakechanges. Atfirst,thismaysoundlikeagoodideatoprotecttheintegrityoftheapplication’slogic.However,when thedeveloperleavesthecompany,noonecangetintotheapplicationtomakeneededchanges.What youstillneedisawaytomanagetheapplication’sinterfaceincludingthefollowinggoals: •
Maintainasingleversionoftheapplication
•
Provideawaytoeasilydeployandupgradetheapplication
•
Centrallydeploytheapplicationsouserscaneasilygettoit
Inthissection,Iwillshowyouawaytoachieveallofthesegoalsusingthetoolsavailableinall versionsofSharePointthatsupportAccessservices(which,atthetimeofSharePoint2010release, appearstobelimitedtotheEnterpriseversion)andMicrosoftOffice2010.
MovingAllAccessTablestoSharePoint Thefirstpartofthischaptershowedhowyoucouldmoveindividualtablesortablesgrouped togetherthroughreferentialintegrityfromAccesstoSharePoint.However,dependingonthecomplexity ofyourapplication,youmaystillneedtomovemultipletablesorgroupsoftablesmanuallytotransfer everythingfromasingleAccessapplicationtoSharePoint.However,thereisafasterwaytomoveall tablesfromasingleAccessdatabasetoaSharePointsitebyfollowingafewsimplesteps. First,openyourAccessapplicationanddisplaytheDatabaseToolsribbon,asshowninFigure6-43. IntheMoveDatagroup,selectSharePointtomovealltablesinthecurrentdatabasetoSharePointlists. NoticethatyoucouldalsomoveyourAccessdatatoacentrallymanagedSQLServerorevenacentrally managedAccessDatabase.However,theseotheroptionsdonotprovidesomeofthefunctionalitythat SharePointlistsprovide,suchasversioningandtheabilitytoeasilyrecoverdatafromarecyclebin.
Figure6-43.Access2010providesacommandtomovealltablestoSharePointatonce.
■NoteYoumustuseatleasttheAccess2007/2010formatfortheSharePointoptiontoappearenabledinthe MoveDatagroup.
343
CHAPTER6■MANAGINGLISTSWITHACCESS
Whenyouclickonthiscommand,Accessopensadialogboxtoaskwhereyouwanttomoveyour data(seeFigure6-44).Inthetextbox,youcanenteranyexistingSharePointsite.Inthelistbox,youseea listofthepreviouslyreferencedSharePointsitesthatyoucanselectandaddthetablesfromthecurrent database. IgenerallyrecommendthatyoumoveyourAccesstablestoanewsitecreatedjustforthatone application.Thiseliminatesthepotentialproblemsthatwouldoccurifyoutriedtouploadtableshaving namesthatalreadyexistaslistsinthedesiredsite.Asyousawearlier,Accesswouldthenattempttoadd aprefixtothenametoinsurethatitwasunique.Ifyouplantoconsolidatetablesthatexistinmultiple applicationssoyouonlyhavetomaintainonecopyofthelistinSharePoint,youmaywanttostorethe listsforgroupsofapplicationsinonesite.
Figure6-44.AccessletsyouchoosethesitetoloadyourAccessdata. AccessfirstbuildsthelistdefinitionsinSharePointbasedonthetableschemainAccess.This processincludesnotonlythedefinitionofthecolumnsinthelist,butalsothevalidationsandany referentialintegritybetweenlists.ItthenuploadsthedatafromtheAccesstabletothenewlycreated SharePointlists.DependingontheamountofdatainyourAccesstables,thisprocesscantakesome time.OnceAccessfinishesexportedthetablestoSharePoint,thedialogshowninFigure6-45informs youthatthetransfercompletedsuccessfully.
344
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-45.Accessnotifiesyouofasuccessfuluploadofthedata. IfyouclicktheShowDetailscheckboxatthebottomofthisdialog,theexportwizardtellsyouthe namesofthelistscreatedonthesiteasshowninFigure6-46.Italsotellsyouthatitcreatedabackup copyoftheAccessdatabase
Figure6-46.ThedialogdetailstellyouwhatlistsitcreatedinSharePoint.
MovingtheAccessDatabasetoSharePoint YoumayhavealsonoticedabannerimmediatelybeneaththeAccessribbonthatasksyoutosaveyour changestotheserver.Thisnotification,showninFigure6-47,isnotreferringtochangesinthetable datajusttransferred.Rather,itasksyoutosaveyourAccessdatabasetoSharePoint.
Figure6-47.AccesspromptsyoutosavethedatabasetoSharePoint.
345
CHAPTER6■MANAGINGLISTSWITHACCESS
WhileyoucouldchooseanysiteinwhichtostoreyourAccessdatabase,mostpeoplewillstorethe databaseinalibraryonthesamesiteasthelistscreatedfromthedatabase’stables.Thispracticemakes iteasytoassociatetheapplicationwiththelistsusedbytheapplicationbecausetheyallresideina singlesite. However,therearegoodreasonstostoretheapplicationsinaseparatesite,including: •
Providingasinglesitefromwhichuserscanaccessallapplicationsratherthan havingtonavigatefromonesitetoanother.
•
Providinguniquepermissionstotheapplicationsitethatallowselectusersor groupstheabilitytoedittheapplicationswhilelimitingthemtoreadandupdate accesstothedatainthesitecontainingthelists.
Youmustcreatethelibraryfirst.InFigure6-48,youseethatafterclickingtheSavetoSharePoint SitebuttoninFigure6-47,theSaveDialogletsyouselectthesiteandlibrarywhereyouwanttostore theAccessdatabase.Inthiscase,youareusingaSharedDocumentslibrary.
Figure6-48.UsetheSaveDialogtoselectalibraryinwhichtosavetheAccessdatabase. AftersavingtheAccessdatabaseinthelibrary,youcandeleteyourlocalcopyoftheapplication usedtouploadtheproductionversiontoSharePoint.Younolongerneedittoruntheapplicationorto accessthedata.Furthermore,youcangetallotherusersoftheapplicationtoremovetheirlocal(and nowredundant)copiesoftheapplicationfromtheirlocaldrives.Alluserscanopenthedatabaseby clickingonthedatabasenameorbyusingthedrop-downmenuassociatedwiththeapplication. Younowhaveasingleapplicationthatalluserscanaccess,asshowninFigure6-49,ratherthan multiplecopiesscatteredoncomputersthroughoutyourorganization.Ifyouneedtoupdatethe databasetoaddanewfeatureorcorrectaproblem,youonlyneedtodeploythenewversiontoone library.Similarly,allusersoftheapplicationusethesameapplicationcodesinceitresidesnowinonly onelocation,buttheyallalsoaccessandupdateacentraldatasource.
346
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-49.AlluserscannowopentheAccessdatabasefromasinglelocation. ClickingontheAccessdatabasenameinthelibraryopensthedialogshowninFigure6-50.Users thatdonothaveeditrightsmustopenthedocumentinReadOnlymode.Ifyouhaveeditrightstothe library,youcanopenthedatabaseinEditmode.However,whenyoudothat,youmustsupplyalocation wherealocalcopyofthedatabasecanbestoredwhileyoueditit.
Figure6-50.UserscanopentheAccessdatabaseinReadOnlymodeorEditmodedependingon permissions. WhenopenedinReadOnlymode,theusersseesabanneratthetopoftheopeneddatabase(Figure 6-51)thattellsthemthattheycanonlychangedatainlinkedtables.Sinceyoustartedbylinkingallthe tablestoSharePointlists,thiswarningdoesnotpresentaproblem.Thebannerfurthergoesontosay thattomakedesignchanges,theymustsaveacopyofthedatabase.Ofcourse,iftheydonothaveedit rights,theycannotresavethedatabasewiththeirchangesbacktotheSharePointlibrary.Onlyuserswho
347
CHAPTER6■MANAGINGLISTSWITHACCESS
haveeditrightsinthefirstplacecanchooseEditfromthedialoginFigure6-50makechangestothe forms,reports,etc.andsavetheirchangesbacktothelibrary.
Figure6-51.NoticethatusercanonlyeditlinkedtableswhenopeningtheAccessapplicationfromthe library. Ineithercase,userscanmakechangestothedatainthelinkedtables.Accesssendschangesmade toanyrecordinthetabletothelinkedlistassoonasyoumoveofftherecord.Anyoneelseviewingthe recordfromtheSharePointlistwillseethechangethenexttimetheyrefreshtheirpage.Inaddition, userscanmakechangesdirectlytothedataintheSharePointlists.Thesechangesalsoappearthenext timesomeoneopensaform,report,orviewofthetablefromtheAccessapplication. Overall,thisisnotabadsolutiontomanagingAccessapplicationsforyourorganization.Theone majorflawofthisoptionisthatwhentwoormorepeopledownloadacopyoftheapplicationatthe sametimetomakechangestoforms,reports,ormacros,thelastpersontosavetheirchangeswill overwritethechangesoftheothersimultaneouseditors.However,thesecondoptioncanevenaddress thatproblem.
DeployingYourAccessApplicationtoSharePoint–Option2 WhilethemethodofdeployinganAccessapplicationtoSharePointinOption1solvesmanyofthe problemsthatconcernITdepartments,suchashavinganunknownnumberofcopiesoftheapplication aswellascopiesofthedatafloatingthroughtheorganization,itstillrequireseachusertohaveAccess ontheirdesktop.IfyoudeployaversionofMicrosoftOfficethatincludesAccess,thismaynotbea concern.However,thereisstillaconcernaboutsimultaneouslyeditingthedatabaseobjectsbytwoor morepeople.Therefore,ifyouwanttodeployAccessapplicationsforotherstousewhomaynothave Accessontheirdesktoporifyouhavemanypeoplewitheditrightstothedatabaseobjects,youmay wanttoconsiderdeployingyourapplicationtoaSharePoint2010serversupportingAccessServices. Unlikeoption1,youdonotneedtofirstmoveallofyourAccesstablestoSharePointlistsasa separatestep.WhilethetablesstillbecomeSharePointlists,Accessmovesthemforyouwhenyouselect theoptiontopublishyourAccessapplicationtoAccessServices.Todeployyourapplication,following thesesteps:
348
1.
OpenyourAccessapplication.
2.
OpentheFiledrop-downmenuandselectInfo(asshowninFigure6-52).
3.
Fromtheoptionsinthecentercolumn,selectPublishtoAccessServices.
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-52.AccessapplicationsmustbepublishedtotheAccessServices. Whenyoupublishanaccessapplication,youneedtonamethesitewhereyouwantitpublished. Thissitecannotexistpriortopublishing.Inotherwords,youcannotaddyourAccessapplicationtoan existingsite.Figure6-53showsthatyoumustentertheserverURLaswellasthesitename.Notethatthe serverURListhepathofthesitelessthesite’snameitself.
Figure6-53.SpecifytheserverandthesitenameforpublishingtheAccessapplication.
349
CHAPTER6■MANAGINGLISTSWITHACCESS
■CautionYoucanonlypublishanAccessapplicationtobeasubsiteofanexistingsite.Youcannotpublishan Accessapplicationtobetherootsiteofasitecollectionortherootsiteinawildcard.Inotherwords,whileyou canpublishtosomethinglike:http://vanguard/orhttp://vanguard/sites/MyProjects,youcannotpublish tohttp://vanguard/sites/.
WhenyouclickthePublishtoAccessServicesbutton,Accessperformsacompatibilitycheckto identifyitemsthatmaynotbecompatiblewiththeweb.Ifitfindsanything,thewizardstopsthe publishingprocessanddisplaysadialogthatsaysPublishFailed.Withinthisdialog,youwillfindalink calledWebCompatibilityIssues.Clickthislinktodisplayatableofalltheissuesthatarepreventingthe currentapplicationfrompublishingtoAccessservices.Thecolumnsinthistableidentifythetypeof elementthatcausedtheproblem,thecontroltypeandnamewithinthatelement,thepropertywhere youcanfindtheproblem,andadescriptionoftheissue.Withthisinformation,youcangobacktoyour originalAccessapplicationandfixtheproblem. AfteraddressingeachoftheissuesintheWebCompatibilityIssuestable,youcanretrythewizardto publishyourapplicationtoAccessServices.Ifyousuccessfullyfixedalltheissues,youshouldseethe dialogshowninFigure6-54thatsaysPublishSucceeded.
Figure6-54.Publishsucceededdialogprovidesalinktothenewsite. Ifyouclickthelinkonthisdialog,youcanopenyournewapplicationsitewithinyourbrowser,as showninFigure6-55.Notethatallofthedatabaseobjectsappearinthisscreen.Thewizardhasalready builttheSharePointlistsalongwithallthecorrespondingvalidationandreferentialintegrity.Italso convertsalloftheotherdatabaseobjectsintoXMLrepresentationsofthoseobjects.Atthispoint,you coulddeleteyouroriginalAccessdatabasebecauseyouwillnolongerneedit.Alltheinformationthat definestheapplicationnowresidesinSharePoint. Nowyoucanmakechangestotheschemafortheapplicationdirectlyfromthisscreen.SharePoint appliesthesechangesimmediatelytothelistdefinitionsinrealtime.However,youwillalsoneedto buildwebforms,webreports,webqueries,andwebmacrosthatyoucanuseontheweb.Youcannot simplydisplaytheformsorreportsbasedontheXMLdefinitionsuploadedwhenyoupublishedthe application.
350
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-55.ListofobjectsinthepublishedsiteoftheAccessapplication Tomakechangestoanyoftheseobjects,clickontheOptionsbuttonatthetopofthepagetoopen thedrop-downmenuandselectOpeninAccess.ThisoptionusesyourlocalAccessclienttoopenthe database.YoucannowusetheCreateribbontodefinenewwebbasedforms,reports,macros,and queriessuchastheoneshowninFigure6-56.
Figure6-56.BuildaNavigationformusingwebformscreatedfromtheAccessServicesapplication.
351
CHAPTER6■MANAGINGLISTSWITHACCESS
Aftercreatingwebversionsoftheformsandreportsyouwanttouseontheweb,youarealmost readytosaveyourchanges.However,firstyoumaywanttochangethedefaultformthatappearswhen someonegoestotheapplicationsite.Inthisexample,Icreatedanavigationformusingthewebformsof theothertablesinthedatabaseastheindividualtabelements.Togetthenavigationformtoappear whentheapplicationstarts,opentheFiledrop-downmenuandselectOptions.Thisselectiondisplays theAccessOptionsdialogshowninFigure6-57.SelecttheCurrentDatabasegroupofoptions.Findthe propertyWebDisplayFormandusingthedrop-down,selecttheformthatyouwanttouseasthe defaultformwhentheapplicationstarts.
Figure6-57.SetthedefaultwebpageforAccessServices. ThesechangesarenotwrittenbacktotheSharePointsiteimmediately.YoumustopentheFile drop-downmenu,asshowninFigure6-58,andfromtheInfogroup,clicktheSyncAllbutton.Asan applicationdeveloper,thisbehaviorbenefitsyouasitallowsyoutomakechangesinyourlocalclient versionoftheobjects.YoucanthentestanddebugthembeforepublishingthembackwiththeSyncAll option.
352
CHAPTER6■ MANAGINGLISTSWITHACCESS
Figure6-58.SyncchangestoAccessobjectsbacktoAccessServices YoucannowcloseyourAccessclientandreturntotheSharePointsitewhereyoupublishedyour applicationandrefreshthepage.Thepageshouldnowshowthewebpageyouselectedtoserveasthe defaultpagefortheapplication,asshowninFigure6-59.
Figure6-59.DefaultpageofAccessApplicationdisplayedinabrowser
353
CHAPTER6■MANAGINGLISTSWITHACCESS
IntheOptionsdrop-downfromthetopofthepage,youcanalsomanageyoursitepermissions.For example,youcanbreakinheritanceforthissiteanddefineuniquepermissionsforwhocanmake changestotheapplication,whocaneditthedatainthelists,andevenwhocanonlyviewinformation. YoucanalsochooseSettingsfromtheOptionsdrop-down.Fromthecontextmenu,youcantell SharePointtoopenyourAccessclienttoeditanyoftheobjects(assumingyouhavethenecessary permissions).Inaddition,youcanopenanywebobjectandviewthatobjectdirectlywithinthebrowser. Forexample,youcanclickonthenamesofanyofthewebformscreatedfortheapplicationandselect Viewtoopenthatforminthebrowser.Similarly,thecontextmenufortableshavetwo options,onetoopenthetableasalistallowingyoutomodifythedata,andonetoexportthetable’sdata toExcel.
Summary Inthischapter,yousawhowtouseAccesstoworkwithSharePointlists.Youbeganbyperforming simpletaskstoexportSharePointliststoAccessandtopublishAccesstablestoSharePoint.Youlearned thatbylinkinglistsfromSharePointtoAccess,youcouldeditdatafromeitherplatform.Furthermore, withinAccess,youcouldbuildformstoeditthelinkedtables.Youalsolookedatusingmultivalued fields,anewandsomewhatcontroversialfeaturetoAccess,asitviolatesthefirstruleofdata normalization—tokeepalldatafieldsatomicbysupportingmultivaluedfields. Untilthispoint,youhadperformedalleditingwhileremainingonlinewiththeSharePointserver. However,theadvantageofusingAccesstomanageyourlistscomesfromitsabilitytoworkwithlists offline.IshowedyouhowtotakeAccesstablesofflineandthenresynchronizeyourchangeswith SharePoint’slistvalues.Ofcourse,anytimemorethanonepersoncanmodifydatafromtwoormore platforms,conflictscanandwilloccurifmultiplepeopleattempttoupdatethesamerecordatthesame time.Therefore,Ialsodemonstratedhowtoresolveconflicts. Finally,youlookedattwooptionsonhowtopublishyourAccessapplicationstoSharePoint.By publishingAccessapplicationstoSharePoint,youcanalleviatemanyoftheconcernsITdepartments havewithusingAccesswithintheorganization. Insummary,Accessisapowerfultoolforquicklybuildingapplications.Ofcourse,youmaystill needtobuildsomeapplicationsusingamorerobustprogramminglanguage.However,ifyoucanuse Accesstobuildapercentageofthesimplerapplicationsquickly,yourdepartment(andSharePoint)can looklikeheroes.
354
CHAPTER 7
■■■
Managing SharePoint Lists from Excel AlongwithMSWord,MSExcelisoneoftheoldestproductsintheMicrosoftOfficeSuite.Microsoft developedExcelintheearlydaysofPCsascompetitionforthewildlysuccessfulLotus1-2-3program, whichwasoneofthegreatearlyproductivitytoolsthathelpedjustifyusingPCsinmanybusiness offices.However,evenbeforetheintroductionofLotus,VisiCalcandMultiPlan(anearlypredecessorto MicrosoftExcel)testedthespreadsheetwaters.Theirabilitytoworkwithrowsandcolumnsofnumbers tookadvantageofaparadigmwellknowntoaccountantsandfinancedepartments. TheseearlycompetitorshopedtomakePCsrespectableincorporateenvironmentswherelarge mainframecomputersruledtheday.Ofcourse,MicrosoftExcelisnowassynonymouswithMicrosoft OfficeasMicrosoftWord.InconjunctionwithMicrosoftOutlook,thesethreeproductsformthecentral corearoundwhichmostofficeusersspendthemajorityoftheirday.Therefore,whenMicrosoft introducedSharePoint,integratingcollaborationfeatureswiththesethreeOfficeproductsseemedtobe ano-brainer.Whyforceusersalreadyfamiliarwithseveralofyourotherproductstolearnanewproduct paradigm? ForMicrosoftWord,Outlook,andeventherelativelynewkidontheblock,Access,integrationwith collaborationhasbeenaprioritywithSharePoint.However,isthesametrueforExcel?Inthischapter andthenext,youwillexplorehowSharePointworkswithExcel.
ExportingaListfromSharePointtoExcel ThelastseveralchaptershavecoveredexportinglistsfromSharePointtoOutlookandAccess.Therefore, itshouldnotsurpriseyouthatyoucanexportaSharePointlisttoExcel.Infact,ifyouhavebeen checkingouttheoptionsinSharePoint’slistanddocumentribbons,youprobablyalreadyhaveagood ideaofhowtostart. Toshowthatdocumentlibrariesactverymuchlikelists,let’sstartwiththePurchaseOrders library.YouusedthislibrarywhenyouwerelearninghowtouselibrarymetadatainotherMicrosoft Officeapplications.YoucreatedacustomviewtosumthePurchaseAmountcolumnbydepartmentto produceareportwithinSharePointshowinghowmucheachdepartmentspentduringaspecifiedtime definedbyafilter. Begin,asalways,bynavigatingtothelibraryorlistyouwanttousefromyourSharePointsite.Next, opentheLibraryribbonforthePurchaseOrderslibrary.Figure7-1showsthisribbon.Noticethatwhile
355
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
ithastheoptionsConnecttoOutlookandExporttoExcel,itdoesnothaveanoptionyoumight expect,OpenwithAccess.
Figure7-1.OpeningtheExporttoExcelmenuoption
■NoteAccesscanonlyopenlists,notlibraries.
Thisdifferencebetweenlistsandlibrariesisimportantintermsofhowyouworkwiththem.Iwill mentionotherdifferencesasyouproceedthroughthischapter. TakeacloserlookatFigure7-1.Whenyouhoveroverthecommandswithyourmouse,theConnect toOutlookoptionincludesdescriptivetextthattalksaboutsynchronizingitemsandworkingwiththem offline;however,theExporttoExceloptionusesnosuchlanguageinitsdescription.Rather,itsimply referstotheabilitytoanalyzeitemswithinMicrosoftExcel.Youwillseealittlelaterinthischapterwhat thisdifferenceinterminologymeanswithrespecttoyourabilitytocollaborate.
■CautionThebuttontoExporttoExcelisenabledevenifyourlocalmachinedoesnothaveExcelinstalled.Ifyou don’thaveExcelinstalledandyoutrytoexportalistbyclickingonthisbutton,youwillgetanerrormessage statingthatyouaremissingaMicrosoftSharePointFoundation-compatibleapplication.
TheRoleoftheIQYFile AfterselectingtheExporttoExceloption,adialogboxpopsupwiththetitleFileDownload.Figure7-2 showsthisdialogbox.Itaskswhetheryouwanttoopenorsaveafilewiththeratheroddextensionof .iqy.ThisfiletyperepresentsaMicrosoftOfficeExcelWebQueryFile.IfyouclickSave,theSaveAs dialogboxappears,lettingyouselectwheretosavethisfile.However,byitself,theSaveoptiondoesnot openthefileinExcelorevenopenExcel.Itmerelysavesafiletoyourlocalharddrive.Interestingly,if youdouble-clickthisfileaftersavingit,itopensExcelandbeginstheprocessofretrievingdatafromthe SharePointlibrary.IfyouopentheIQYfileusingNotepad,youwilldiscoverthatthissmallfilecontains someverycryptictext;youshouldbeabletoreadenoughofittolearnthatthisfilecontainsinformation pointingbacktoyourSharePointsiteandspecificallytothelibraryyouwanttoexporttoExcel.
356
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-2.TheFileDownloaddialogboxsavestheExcelWebQueryFilethatretrievestheSharePoint List. Regardlessofwhetheryoutrytoopenthequeryfileimmediatelyordecidetolateropenthecopyof thequeryfilesavedtoyourlocalharddrive,youwillfirstseeasecuritynoticegeneratedbyExcel.This securitywarningoccursbecausethequeryfileattemptstocommandExceltomakeaconnectionwith anotherserver.Withever-increasingconcernsaboutviruses,Trojanhorses,andothernastythings gettingintoyourcomputer,allsoftwarevendorsbydefaultlockdownconnectionsbetweenmachines butallowyoutodecidewhichconnectionstoallowandwhentoallowthem.Figure7-3showsthe MicrosoftExcelSecurityNoticedialogboxthatappearswhentheIQYfiletriestoconnectExcelto SharePoint.
Figure7-3.MicrosoftExcelSecurityNoticedialogboxbeforemakingadataconnection Inanysituationwhenyouattempttoconnecttoanotherserver,alwaysverifythatyoutrustthe connectedsource.Ifyouhaveanydoubtsaboutacontentsource,clicktheDisablebutton.However,if theserverresidesinsideyourcorporatefirewall,youcanprobablysafelyclicktheEnablebuttonto continue.
357
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
ChoosingHowtoDisplayYourImportedList IfyoualreadyhadaworkbookopenwithExcel,youwillseeanadditionalsetofdialogsthatdonot appearifyoubeginwithExcelclosed.Solet’sassumeyouhaveaworkbookopeninyourlocalExcel. SinceExcelisnotsurewhatyouwanttodowiththenewimporteddata,itdisplaysanotherdialogbox, theImportDatadialogbox,showninFigure7-4.Hereyoumustmaketwodecisionsonhowtodisplay yourimportedlistdata.Inthetopportionofthisdialogbox,youmustchoosefromfouroptionsonhow toviewyourdata: •
Table
•
PivotTableReport
•
PivotChartandPivotTableReport
•
OnlyCreateConnection
Figure7-4.TheImportDatadialogboxletsyoudecidehowandwheretoplaceyourdata. Bydefault,mostlistsexporttotables.Thesecondhalfofthedialogboxletsyouchoosewhetherto placethelistinanexistingworksheet,anewworksheet,oranewworkbook.Ifyoustarttheexport processwithExcelopen,youcanselectanyoftheseoptions. BeforeclickingOKtobegintheactualexportofdatatoExcel,youcanclickthePropertiesbuttonin thisdialogbox.ThisbuttonopensadialogboxnamedConnectionProperties.Atthetopofthedialog box,youcanfindtheconnectionnamealongwithanoptionaldescription.Therestofthedialogbox consistsoftwotabbedpages. Inthefirsttab,youcannoteditmostofthedatafields.However,youshouldfindtwoenabledfields intheRefreshcontrolarea.Thefirstfieldletsyoutoenablebackgroundrefresh,whichallowsyouto continuetouseExcelwhilethequeryexecutes.Unlessyouhaveaverylargelistfromwhichtorefresh yourExceldata,thequeryexecutiontimemaynotmattermuchtoyou. ThesecondoptionthatyoucansetistoRefreshthedatawhenopeningthefile.Ifyoudonot selectthisoption,Excelstoresalocalcopyofthecurrentdatawhenyousavethespreadsheetand displaysthatsamedatathenexttimeyouopenthespreadsheet,regardlessofwhatchangeshave occurredintheoriginalSharePointlist.Ofcourse,youcouldalwaysmanuallyrefreshthedataby clickingtheRefreshbuttonintheExternalTableDatagroupoftheTableToolsDesignRibbon.
358
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
However,byselectingthisoption,youcouldsavetimeandreduceuncertaintyofthecurrentdatavalues bytellingExceltorefreshthedataautomaticallyeachtimeyouopenthespreadsheet.
■NoteExceldoesnotautomaticallyrefreshdatafromaSharePointlist.Thataccountsinpartfortheuseofthe term“export”intheSharePointmenuselectionExporttoExcel.Thusyourfirstclue:SharePointdoesnot maintainacontinuouslinktothedatainExcel.
Thesecondtab,titledDefinition,containsinformationabouttheconnectionbetweenExceland theSharePointlistsothatmanualrefreshesofthedataknowhowtoaccessthelistdata.Youcanalso saveacopyoftheconnectiondefinitionbyclickingtheExportConnectionFilebuttonandselectinga locationtosavethefile.TheAuthenticationsettingsbuttonletsyouselectthetypeofauthenticationyou wanttousewithExcelServices.UnlessyouplantousesomethingotherthanWindowsAuthentication, youdonotneedtoworryaboutthissetting.
■CautionDonotchangetheconnectiondefinitionunlessyouhaveadeepunderstandingofhowtodefine connectionstrings.Eventhen,thinktwice.
WhenyouclickOKontheImportDatadialogtobegintheimportofdataintoExcel,Excelusesthe informationintheIQYfiletoimportthelistdataintoaspreadsheet.ForthePurchaseOrderslibrary, Figure7-5showstheresultingworksheetafterexportingandopeningthelistdatawithinExcel.
Figure7-5.TheExcelworksheetdisplaystheexportedSharePointlist.
359
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
■TipOnceyouhaveexportedthedatatoanExcelspreadsheet,youcanremoveunwantedcolumnsthatthe processbringsalongfromthelistorlibrary,suchasCheckedOutTo,ItemType,andPath.
HowViewsAffecttheDataExportedtoYourList Whenyouexportalisttoaspreadsheet,theitemsyouexportaswellasthespecificcolumnsyouexport dependverymuchontheviewopenatthetimeyouchoosetoexport.Forexample,lookingatthedata inFigure7-5,supposeyouhadaviewthatincludedonlypurchasesbytheAdministrationdepartment, whichincludedthreecolumns:PurchaseOrderNumber,DateCreated,andPurchaseAmount.Then theexporttoExcelwouldincludeonlytheAdministrationdepartmentitemswiththethreeselected columns. Youmayhavenoticedthatthedatainthisworksheetisnotjustsimplespreadsheetdata.Rather,it appearsstructuredwithinatable,witheachcolumnrepresentingaseparatecolumnandeachrow representingaseparatelistitem.Yourothercluethatthisisnotjustacollectionofcellswithdatain themshouldhavebeenthetitleoftheRibbon,TableTools.
UsingHyperlinksinYourList IfyouincludeinyourexportoneoftheinstancesoftheNamecolumn,itremainslinkedtothe documentintheshareddocumentslibrary.Therefore,Exceldisplaysthatcolumnasahyperlink.Italso meansthatyoucanclickthedocumentname,andthroughtheURLassociatedwiththehyperlink,the documentopensusingtheappropriateMicrosoftOfficeproduct,whichwouldbeMSWordinthiscase.
■NoteClickingalinktothedocumentcanonlyopentheoriginaldocumentifa)youhaveanappropriate applicationthatcanopenthedocumentinstalledonyourdesktop,andb)ifyouhaveanactivenetwork connection.Openingalinkwillnotworkifyouareoffline.
Figure7-6showsadialogboxthatmaypopupwhenyouclickthehyperlinkedNamefieldinthis example.WhenaccessinganinternalSharePointsiteatyourcompany,youprobablycantrustthefiles tobevirusfree.However,youshouldhaveavirus-scanningprogramonyourlocaldesktopcomputeror onyourSharePointnetworktoensurethatharmfulprogramscannothideinyourfileswhenyouopen themfromasharedlocation.
360
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-6.ThewarningdialogboxthatpopsupwhenopeningadocumentfromaSharePointlibrary Whenyouopenadocument,itappearsnodifferentthanifyouopeneditdirectlyfromthe SharePointlibrary.InthecaseofaMSWorddocument,theDocumentManagementpanelmayalso open(asdiscussedinChapter3).Withthedocumentopen,youcanmakechangesandthenclosethe document.Youcanthensavethosechanges,andExcelsendsthembacktotheSharePointlibrary becauseyoueffectivelyperformedaremoteeditdirectlytothatfile.Remember,thefileitselfdoesnot becomeapartofyourExcelworksheet. However,althoughyouhavethedocumentopenforediting,youhavenotcheckeditout.Youcan verifythisbylookingbackatthedocumentlibraryfromwithinSharePoint;noticethatthedocument icondoesnotcontainthegreenboxwiththearrowinthelower-rightcorner,indicatingachecked-out document.Therefore,someoneelsecouldcheckoutandeditthesamedocumentwhileyoueditit.For thatreason,IdonotrecommendeditingdocumentslinkedtoanExcellistasaregularpractice.
■TipTheaboveconcernabouteditingdocumentsfromyourExcelspreadsheetistrueunlessyougointo DocumentLibrarySettingsfortheSharePointlibraryfirst,selectVersionSettings,andchangetheRequire CheckOutoptiontoYes.Ifyoudothisfirst,thenwhenyouattempttoopenthedocumentfromExceland someoneelsedidnotcheckitoutfirst,youcanopenthedocumenttoreadit.Whileopeningit,SharePoint promptsyoutocheckthedocumentoutbeforeyoucaneditit.Ontheotherhand,ifsomeoneelsehadalready checkedoutthedocumentandyouattempttoopenit,youwillgettheFileinUsenotificationdialogboxthat allowsyoutoopenthedocumentinRead-Onlymodeorbenotifiedwhenthedocumentbecomesavailablefor editing.
361
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
Ifyoumakechangestothedocument,MSWordasksyoutosaveyourchangesifyouattemptto closethedocumentwithunsavedchanges.Youcanopen,edit,andsavethedocument.MSWordwill evensavechangestoanyofthemetadatabacktotheSharePointlibrary.However,thechanged metadatawillnotappearinanyoftheexportedcolumnstoExcel.Thekeypointtorememberisthatyou caneitherexportaSharePointlistorlibrarytoExcelorexportanExcelspreadsheettoaSharePointlist. YoucanevenrefreshtheExceldatafromSharePointbyusingtheRefreshAlloptionintheConnections groupoftheDataribboninExcel.
OtherTableToolsinYourExcelWorkbook YoucanexportyourchangedspreadsheettoanewSharePointlist.YoucandothisbyopeningtheTable Toolsribbon,asshowninFigure7-7.TheExternalTableDatagrouponlycontainstwooptionsunder theExportbutton.OnesupportsexportingthecurrenttablefromExceltoaSharePointlistandtheother exportsthetabletoaVisioPivotDiagrams.
Figure7-7.Externaltabledataribbonoptions
■NoteIfyoudonothaveVisioinstalled,theoptiontoexporttoVisioPivotDiagramswillbegrayedoutand unselectable.
TheRefreshbuttoninthisgroupletsyourefreshtheExceldatausingtheoriginalconnection createdtotransferthedatatoExcel.However,neitheroftheseoptionsletyousynchronizedatachanges inExcelbacktoSharePoint. Furthermore,youcanonlyexportExceltablestolists,nottolibraries.ThatmeansExcel’sexport optioncannotre-createanewlibraryinSharePointfromthepurchaseorders,eventhoughtheitems originallycamefromalibrary.However,itcancreateastandardlistinwhichtheitem’sNamefield displaysasahyperlink,lettingyouopentheWorddocumentalmostasyouwouldinalibrary.Isay “almost”becausesinceitisalist,youdonothavetheabilitytocheckoutdocumentswhileyouedit them.Thus,ifyoustartwithaSharePointlibraryandexportittoanExceltable,youcanonlyimportit backintoSharePointasanewlist,notasareplacementfortheexistinglibraryorevenasanewlibrary. TheRefreshbutton,mentionedpreviously,allowsyoutorefreshthedataintheExcelspreadsheet withdatafromthesourceSharePointlibraryorlist,updatingchangestotheitemsandcolumns displayed.Thisincludesnotonlyitemsthathavechanges,butalsonewitemsandremoveditems.This refresh,however,overwritesanychangesyoumadeintheExcelworksheetwiththecurrentinformation fromtheSharePointlibrary.
362
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
■NoteWhenyouclicktheRefreshbutton,SharePointonlyupdatestherowsandcolumnsintheExceltablethat matchacolumnfromSharePoint.IfyouaddedrowsinsidetheExceltable,theRefreshbuttonwillremovethem, butifyouaddrowsoutsideoftheExcelTable(belowit),Refreshwillnotaffectthoserowsevenifitneedstopush themdowntoaddmorerowsfromtheSharePointlist.Ontheotherhand,columnsinsertintothetableareignored byarefresh.IfyoudeletedcolumnsfromyourExcelspreadsheet,therefreshwillnotrestorethosecolumns.This functionalitymaybegoodorbaddependingonwhatyouwantedtherefreshtoreallydo.
ThePropertiesbuttonallowsyoutoselectsomeofthepropertiesthataffecthowthetableresponds tonewanddeletedrows. TheOpeninBrowserbuttonopensthelibraryorlistpagefromtheSharePointsite. TheUnlinkbuttonpermanentlyremovestheconnectionfromtheworksheet.Whiletheworksheet remainsintactwithallitsdataafteryouselectthisoption,youcannolongerupdatethedatafromthe SharePointlibraryorlistbyclickingtheRefreshbutton.
■CautionWhenyouunlinkatablefromitscorrespondingSharePointlibraryorlist,youcannotrestorethelinkor theconnection.
ThecrucialconcernaboutexportingyourliststoExcelcomesdowntothelackofsynchronizationof changes.WhileyoucanrefreshyourExceltableasoftenasyoulikebyusingtheRefreshbuttoninExcel togetthelatestandgreatestvaluesfromtheSharePointlist,thisprocessisone-wayonly—andamanual processatthat,unlessyouusetheRefreshthedatawhenopeningthefileoptionmentionedearlier.In addition,thisrefreshprocessoverwritesanychangestotheExceldatayoumadefromwithinExcel,asit completelyreplacestheExceldatawithdatafromtheSharePointlist.Theconsequencesoftherefresh optionalsolimityourabilitytoreorganizetheinformationinthespreadsheet.
■NoteExcel2003hadtheabilitytoupdateSharePointlists.However,withbothOffice2007andOffice2010,this featurewasbeendeprecatedinfavorofusingAccess2007.Iwillreturntothisissueinthesection“What HappenedtoSynchronization?”laterinthischaptertoshowawaytoresolvethislimitation.
ExportingDatafromanExcel2007/2010Spreadsheetintoa CustomList Inthelastsection,yousawthatwhenyouexportaSharePointlisttoExcel,youcanmanuallyupdatethe ExcelspreadsheetwithchangesmadeinSharePoint,butyoucannotupdateSharePointwithchanges
363
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
madedirectlyintheExcelspreadsheet.Let’snowlookatwhatyoucandowhenyoustartfromExcel 2007/2010. Fortheexampleshownhere,IhavecreatedanExceltablethatliststhe30brighteststarsinthe eveningskies.Thetableincludesthenameofthestar,thenameoftheconstellationinwhichyoucan findthestar,andthestar’sapparentmagnitude.
Absolute vs. Relative Brightness for the Layman Apparentmagnitudedefinestherelativebrightnessofthestarswhenyouviewthem.However,similar starsappeartovaryinbrightnesswhenyoulookatthemnotonlybecausesomearebiggerorhotter,but alsobecausetheyexistatdifferentdistancesfromtheEarth.Ifyoucouldplaceallstarsatthesame distancefromtheEarth,aboutthesamedistanceasthesun,youcouldthenrefertotheirabsolute brightness. Figure7-8showsthebeginningofthisworksheet.
Figure7-8.Portionofthe30BrightestStarsspreadsheet
364
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
DefiningaTableWithinYourExcelWorksheet BeforeyoucanexportthisExcelworksheettoSharePoint,youneedtodefinethedatathatyouwantto transferasatable.Atablecanincludeallthedatainaworksheetorjustasubsetofthedata.Todefinea tablewithinaworksheet,followthesesteps: 1.
GototheInsertRibbonandselectTablefromtheTablessection.
2.
Selectthecellsyouwanttoincludeinthetable.Dothisbyclickinginany cornerofthedatablockyouwanttouseand,whileholdingtheleftmouse buttondown,dragthroughthedatatothediagonalcorner.
3.
Whenyoureachthediagonalcorner,releasethemousebutton.Excel circumscribestheselecteddatawithadottedborderandlightlyshadesthe cellsoftheselectedrange.
4.
Afterreleasingthemousebutton,apop-updialogboxappearsshowingyou therangeoftheselectedcells,asdisplayedinFigure7-9.Youcaneditthis rangemanually.However,ifyoucarefullychoseyourstartingandending pointwhendraggingthroughthedata,thisrangeshouldaccuratelyrepresent thedatayouwanttouse.
Figure7-9.Definingthecellrangeyouwanttoexporttocreateatable
365
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
■CautionWhileitispossibletodefinemultipledatarangesforsomecommands,theCreateTablecommand doesnotsupportmultipledataranges.
Inadditiontodefiningthecellrangeforthetable,youcandeterminewhetheryourdatarange includesheaders.WhencopyingdatatoSharePoint,theheadersfromtheExceldatarangebecomethe columnnames.Therefore,includingthemletsyoudeterminethecolumnnames.Ifyoudonotinclude columnnamesinyourcellrange,thenSharePointgeneratesasetofdefaultnamesforitscolumnssuch asColumn1,Column2,etc.
ExportingtheExcelTable Onceyouhavedefinedatable,anewtabappearsabovetheExcelRibbonnamedTableTools.Thistab containsonlyasinglesub-tabnamedDesign.ThisRibbondisplaysonlythosecommandsthatacton tablesnotworksheets.InthisRibbon,locatetheExternalTableDatasectionandclickthelowerportion oftheExportbutton.Thisbutton’sactiondisplaysadrop-downmenuofthetypesofexportsthatExcel supportsfortables.InFigure7-10,youcanseethatthisworkbooksupportstwoexports,onefor SharePointandoneforVisio.Inthiscase,youwanttoexportthetabletoaSharePointlist,soselectthe firstoption.
Figure7-10.ExportingthetabletoaSharePointlist BeforeExcelcanexportthetable,itneedsadditionalinformation.First,itneedstheaddressofthe SharePointsite.Forthisexample,Iwillagainusethetop-levelsiteonmySharePointservernamed Vanguard.Figure7-11showsthisdialogbox.
366
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-11.DefiningtheSharePointservertopublishtoandprovidingatablename ImmediatelybeneaththeAddressfield,youseeacheckboxthataskswhetheryouwanttocreatea read-onlyconnectiontotheSharePointlist.Thisoptionmaybeconfusing;youmaythinkthatifyoudo notselectit,youwillgetaread-writeconnection.Actually,ifyoudonotselectthisoption,no connectionbetweentheSharePointlistandtheExcelworksheetwillexistafterExcelpublishesthedata toSharePointsothatExcelcanreadchangestothelistdata.Thethingtorememberisthatthis statementisfromExcel’spointofview.Therefore,youneedtocheckthisboxtocreateaone-waydata synchronizationthatallowsExceltoreadchangesmadeintheSharePointlistandupdatetheExcel worksheet.Unfortunately,itdoesnotallowExceltowritechangesmadeinExcelbacktoSharePoint. Next,youmustsupplyanameforthenewSharePointlist(eventhoughthedialogreferstoyour “table”).ThisnamecannotbethenameofanyexistinglistinyourSharePointsite.Ifalistalreadyexists withthenameyousupply,Exceldisplaysamessagethatsays,“Thespecifiedlistnameisalreadyinuse onthisserver.Youmustrenamethelistbeforepublishingittotheserver.”
■NoteYoumusthavepermissioninSharePointtocreateliststoexportdatafromExceltoSharePoint.
Youcanalsosupplyalistdescription.Thisdescriptionappearswhenyoudisplaythelistsonthe site.Therefore,supplyameaningfuldescriptionthatwillhelpsiteusersdeterminewhattypeofdatato expectinthelist. Thesecondpageofthisdialogbox,showninFigure7-12,displayshowitassociateseachtablefield withadatatyperecognizedbySharePoint.Exceltriestoassignappropriatedatatypestoeachfield. However,ifitdoesnot,youmayneedtocancelthecurrentoperation,returntothedatainthe worksheet,andchangethedataformattingofindividualcellstoatypethatconvertstotheSharePoint datatypeyouwant.
367
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-12.VerifyingthedatatypesselectedfortheSharePointcolumns
■NoteYoucannotdirectlychangethedatatypesshownintheExportTabletoSharePointListdialogbox.You canonlychangetheunderlyingExcelcellformattingtoaffecttheselecteddatatypes.
Tobegintheactualdataexport,clicktheFinishbutton.Dependingonthesizeofyourtable,this operationcantakefromafewsecondstoafewminutes.Whenitfinishesexportingthedata,thedialog boxshowninFigure7-13tellsyouwhetheritwasabletopublishthetablesuccessfullyornot.Ifthe publishingtasksucceeds,thisdialogboxalsocontainsaclickablehyperlinktodisplaythenew SharePointlist.
Figure7-13.Dialogboxannouncingthesuccessfulpublishingofthetable
■TipYoumaywanttoclickthislinkbeforeyouclickOK.Thiswayyoudon’tnothavetomanuallyopen SharePointandnavigatetothenewlisttoverifythedatatransfer.JustremembertocomebackandclicktheOK buttontofinishthepublishingprocess.
368
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
ViewingtheExportedExcelDataintheNewSharePointList Figure7-14showsthelistsinmySharePointsite.NoticethatthelistStarsappearsalongwiththe descriptionsuppliedintheExportTabledialogboxfromFigure7-11.
Figure7-14.TheAllSiteContentpagedisplayingalllistsinthecurrentsite IfyouclicktheStarslist,SharePointopensthelistusingthedefaultviewasshowninFigure7-15. Noticethatthetransferaddstwocolumnsatthebeginningofthelistthatdefinetheitemtypeandallow attachments.
369
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-15.TheStarsdataafterbeingimportedtoaSharePointlist
■TipIfallthevaluesinacolumntypicallyremainemptyorunimportant(suchasTypeorAttachmentintheabove list),youshouldconsidermodifyingtheviewtoeliminatethatcolumnfromdisplayinginthedefaultviewandmost, ifnotall,otherviewsyoumightsubsequentlycreate.Eventhemandatorylistcolumn,Title(whichyoucould renametosomethingmoreuseful),canbeskippedinaviewthatisusedtoexportdatatoExcel.
NotethatSharePointchangesthenameofthecolumndefiningthestarnames.InExcel,you identifiedthiscolumnintheheaderasName.However,SharePointreservesthisnameandtherefore renamesthecolumnbyaddinga“1”totheendofthecolumnname.Ifyoudonotlikethis,youcangoto thelistpropertiesandchangethecolumnnametosomethingmoremeaningful,suchasStarNames. Ifyoudidnotchecktheboxtocreatearead-onlyconnectiontotheSharePointlist,youcannot synchronizeanychangesyoumakeinthisSharePointlistbacktotheExcelspreadsheet.Ifyoudidselect thisoption,youcanmakechangestotheSharePointlist,andthenwiththeExcelspreadsheetopen, navigatetotheTableToolsDesignRibboninExcel.IntheExternalTableDatagroup,clicktheRefresh buttonandselecttheoptionRefreshorRefreshAllasshowninFigure7-16.Theseoptionsusethe storedconnectioninformationbetweentheSharePointlistandExcelcreatedwhenyouexportedthe originalSharePointlisttoExcel.YoucannowreusethisconnectiontoupdateExcelwiththecurrent valuesintheSharePointlist.
370
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-16.TheRefreshoptionsavailablewhenusingaread-onlyconnectiontoSharePoint WhileyoucanupdatetheExceltablewithchangesmadetotheSharePointlistthatyouexported fromExcel,youcannotmakechangestotheExceltableandautomaticallysynchronizethosechangesto theSharePointlist.Asmentionedbefore,MicrosoftdeprecatedthisfeatureinExcel2007.Onesolution wouldbetodowngradeyourOfficeinstallationanduseMicrosoftExcel2003,whichcansynchronize datachangesinbothdirections.However,ifyouthinkofdowngradingyourcopyofMicrosoftOfficeas somethingonparwithgivingupyourfullyloadedBMWforaYugoKoral45,readontothenextsections.
AQuickLookatExcel2003andSynchronization BecauseIhavementionedseveraltimesthatExcel2003providesdifferentfunctionalitywithSharePoint 2003/2007thanExcel2007/2010,youmaybediscouragedaboutExcel’sroleinSharePoint2010’s collaborativefuture.BeforepresentingasolutionfortheExcel2007/2010and2010user,let’stakea quicklookbackatExcel2003andSharePoint2003/2007.
ExportingaSharePoint2007ListtoExcel2003 InSharePoint2003and2007,youcouldexportalisttoExcel2003byselectingtheSharePointlistyou wantedtouseandchoosingExporttoSpreadsheetfromtheActionsmenu.Asbefore,yourcomputer firstdisplaysadialogboxaskingwhetheryoutrustthesourcewhenSharePointtriestosendtheIQYfile. ClickOpentoallowyourcomputertodownloadthefile. Excelmayalsopromptyouwithasimilarquestionaboutwhetheryoutrustthequeryusedto importexternaldata.Sinceyoutrustthesourceinthiscase,clickOpentocontinue. Youmightseeonemoredialogboxaskingyouforyourusernameandpasswordtoaccessthedata onSharePoint,dependingontheintegrationofyournetworksecurity.AfteryouclickOKonthisdialog box,youshouldseethelistappearinanExcelworksheet,asshowninFigure7-17.Noticethatduring thisprocess,youonlyhavetheoptionofselectingwheretoloadthelist,suchasintoanewworkbookor anewworksheet,orwhereonanexistingworksheettoplacethelistifyouhaveExcelopenbeforeyou starttheexportfromSharePoint.Excel2003alsodoesnotsupportthePivotChartoptionfoundinExcel 2007andExcel2010.
371
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-17.Excel2003usestheListtoolbartoworkwithsynchronizedlists. TheListtoolbarinExcel2003allowsyoutoworkwiththedownloadedlist.Let’slookfirstatthe thirdandfourthbuttonsfromtheleft. ThethirdbuttonsynchronizestheExcellistwiththeSharePointlist.Whenyouclickthisbutton,it sendschangesmadetodatarowsinExcelbacktoSharePointandchangestoSharePointitemsoverwrite theexistingdatainExcel.IfsomeonemakeschangestoboththeSharePointitemandtheExcelrowof thesameitem,thesynchronizeactiondisplaysaResolveConflictsandErrorsdialogboxshowingboth setsofchangesandallowsyoutodeterminewhichsetofchangesyouwanttokeep. ThefourthbuttonletsyoudiscardyourchangesandrefreshyourExcellistwithcurrentdatafrom theSharePointlist.UsethisoptionifyoumadeaccidentalchangestotheExcellistorchangesthatyou donotwanttokeep. Thefirstbuttoninthetoolbaropensadrop-downlistofoptionsthatallowyouto:
372
•
Insertrowsandcolumnsintothelist.
•
Deleterowsandcolumnsfromthelist.
•
Sortthelist.
•
ViewandeditthelistdatawithanExcel-generatedform.
•
PublishthelisttoSharePoint.
•
Resizethelist.
•
Viewthelistontheserver.
•
Convertthelistbacktoanormalrangeofdata.
•
Unlinkthelist(fromSharePoint).
•
Defineotherdatarangepropertiesandconnectionproperties.
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
ExportingExcel2003WorksheetstoSharePoint OneofthefirstdifferencesyouwillnoticewhenstartinganexportfromExcel2003ishowtobeginthe process.InExcel2007and2010,youhavetodefinetherangeofcellsyouwanttouseasatablebefore youcanexportthedatatoSharePoint.InExcel2003,theproperterminologydefinesalistinstead.You stillmustselecttherangeofdatayouwanttodefineinyourExcellistthesameasyoudoinExcel2007 and2010.However,tocreatethelist,opentheDatadrop-downmenu.Fromthismenu,selectListand thenCreateListasshowninFigure7-18.
Figure7-18.CreatingaListinExcel2003beforeyoucanexportdatatoSharePoint TheCreateListoptionopensadialogboxthatconfirmsthedatarangeyouwanttouseforthelist. Youcanmanuallyadjustthislistbyeitherenteringanewrangedirectlyorclickingthebuttontothe rightofrangeanddraggingthroughtherangeofcellsyouwanttouse.Youshouldalwaysinclude headersasthefirstrowofthelist.Asmentioned,SharePointusestheseheadersasyourcolumnnames. Otherwise,SharePointcreatesdefaultnamesforthecolumns:Column1,Column2...ColumnN.Figure 7-19showsthatthisdialogboxlookssimilartotheoneusedinExcel2007and2010exceptthatit replacestheword“Table”with“List.”
373
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-19.Confirmingthelistdatarangeandwhetherithasheaders Havingdefinedalist,youcannowusetheListtoolbar.OpentheListdrop-downmenutofindand selectthePublishListoptionasshowninFigure7-20.
Figure7-20.UsingthePublishListoptionfromtheListtoolbartopublishtoSharePoint
374
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
TherestoftheprocessforpublishingthelistparallelswhatyousawearlierusingExcel2010.The nextdialogboxthatappearsasksyouforthesiteaddresswhereyouwanttopublishyourlist.Insteadof acheckboxaskingyoutocreatearead-onlyconnectiontotheSharePointlist,Excel2003displaysa checkboxaskingwhetheryouwanttolinktothenewSharePointlist.Ifyoudonotselectthischeckbox, youcannotsynchronizechangesbetweenthetwolistsafterthepublicationprocesscompletes.Ifyoudo selectit,youcansynchronizedatainbothdirections. IfthepublicationofyourExcel2003worksheetsucceeds,youshouldseeadialogboxsimilartothe oneinFigure7-21.
Figure7-21.SuccessfullypublishedExcelworksheetsdisplayalinktothenewlist.
WhatHappenedtoSynchronization? Asmentionedattheendofthelastsection,MicrosoftchosetodeprecatetheabilityforExcelto synchronizedatawithaSharePointlist.Excelproponentsarequicktopointoutthatalargenumberof OfficeusersfeelverycomfortableworkingwithExcelspreadsheetsandmanipulatingitsdata.Access supporterscounterthattheyhaveasuperiordevelopmentplatformthatallowsfortheeasycreationof formsandreports.Aftercarefullyconsideringwheretoplaceitsefforts,apparentlyMicrosoftmadethe decisiontodeprecatesynchronizationfromExcel2007aswellasExcel2010.Ofcourse,thisisjustan opinion. Thefactisthat,outofthebox,Excel(since2007)nolongersupportssynchronization.However,not allislost.Anotheralternativeisavailable. Microsoftpublishedanadd-onforExcel2007thatallowsittosynchronizedatawiththe correspondingSharePointlist.Fortunately,thisadd-onstillworksforExcel2010,althoughitappearsto workslightlydifferentforExcel2010.ThemajorcaveatisthatyoumayfirstneedtosavetheExcel spreadsheetusingtheolder2003format,loadtheadd-onfromMicrosoft,andthenopenthe spreadsheetagaintousetheadd-on. Youcancurrentlyfindthisadd-onatthefollowingaddress(it’salongURL;besuretoenteritasa singleline): www.microsoft.com/downloads/details.aspx ?FamilyId=25836E52-1892-4E17-AC08-5DF13CFC5295&displaylang=en or just enter http://tinyurl.com/yvw8g5 Thissiteincludesfullinstructionsonhowtodownloadandinstallthisadd-on,soIwillskipthat process.Instead,Iwillshowhowyoucanusetheadd-ontouploadanewtabletoanewSharePointlist andthenmaintainthelistdatafromeitherSharePointorExcel. Onemorenote:youshouldreadthe“PublishingandSynchronizingExcel2007TablestoSharePoint Lists”articleatmsdn.microsoft.com/en-us/library/bb462636(office.11).aspx.
375
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
LinkingaListinExceltoSharePoint IwillassumethatyouhavesuccessfullyinstalledtheExceladd-onmentionedintheprevioussection.In fact,IwillstartwithabasicspreadsheetshowninFigure7-22thatcontainssomedataonNASA’sfleetof spaceshuttlesfromthepast30years.
Figure7-22.ShuttlelistcreatedinExcel2010butsavedin2003format Theworksheetcontainsasimplesetofdataconsistingoffourcolumnsandfiverows.(Ifyouarea spaceenthusiastwhoiswonderingwhathappenedtotheEnterpriseandtheBuran,notethatIamonly includingmannedshuttlesthathaveactuallyflownintospace.)However,youcannotsimplypointata spreadsheetanduploadthedatafromitintoaSharePointlist.Isupposethisapparentlimitationderives fromthefactthataworksheetbyitselfdoesnothaveanyboundaries.Howmanyrowsdoesitreally have?Howmanycolumnsdoesitreallyhave?Youcanresolvethesequestionsbyselectingthecolumns androwsyouwanttodefineasalistandthenformattingthemasatablewithinExcel2010.Todothis, followthesesteps: 1.
Clickinoneofthecornersofthespreadsheetand,whilepressingtheleft mousebutton,dragthroughthecellstothediagonalcorner.
2.
ClicktheInsertribbon.
3.
SelecttheTableoptionintheTablesgroupoftheInsertRibbon.
4.
Asmalldialogboxappearsallowingyoutoverifythedatarangeyouselectedin Step1forthetable.Youcanalsoselectwhetherthisdatarangeincludes headersasitsfirstrow.Theseheaders,whenpresent,definethenamesofthe columnsintheSharePointlist.
WhenyouclickOK,youhavedefinedalimitedareaofaworksheetbyselectingatable.Youcan haveotherdataonthespreadsheetthatisnotpartofthistable.Infact,youcanhaveseveraldifferent
376
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
tablesdefinedonthesameworksheet.Ifyouclickanywherewithinthetableyouwanttopublish,anew ribbontabnamedTableToolsDesignappears.Clickthistabtoopenthisribbon.Theadd-on mentionedatthebeginningofthissectioncreatesanewgroupnamedSharePoint.Thisgrouphasa singlebuttonlabeledPublishandallowSync. InSharePoint2007,youcouldsimplyclickthisbuttontopublishyourExceltabletoSharePoint. However,thepre-releaseversionofSharePoint2010andExcel2010willfailduringthepublishprocess withamessageindicatingthatthelistdoesnotexist.Thisprovidesapossiblecluetoaworkaround (assumingthisproblemwilleventuallybeaddressed).BeforeclickingthePublishandallowSyncbutton, exporttheExceltabletoyourSharePoint2010siteasdescribedinthesection“ExportingtheExcel Table”ofthischapter.ThisprocesspublishesthetaletoaSharePointlistbutdoesnotprovidefor synchronization.OnceithasbeenpublishedtoSharePoint,clickthePublishandallowSyncbuttonto createthesynchronizationbetweentheExceltableandSharePoint. Excelthenopensadialogboxthataskswhereyouwanttopublishyourtable.Eventhoughyou alreadypublishedthetableusingtheExportoption,youmuststillentertheURLofthesitewhereyou publishedyourtableintotheAddressfield.(InFigure7-23,thissiteishttp://vanguard.)Thensupplythe listnamepreviouslyusedintheExportofthetableintheNamefieldalongwithadescription. Rememberthatatthispointyouareidentifyingthesiteandlistnameofthetableyoujustexportedto SharePoint,notanewsiteorlistname.
Figure7-23.UsingPublishandallowSynctopublishExcel2007/2010spreadsheetstoSharePoint2010
377
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
WhenyouclickPublish,ExcelidentifiestheexistinglistinSharePointandaddsthesynchronization capabilitybetweenExcelandSharePoint.Perhapsbythetimeyoureadthis,theproblemwiththisaddonwillgetresolvedsothatyoucanpublishandsynchronizewiththisonebuttonratherthanhavingto firstexportthetableandthensynchronizeitastwoseparateprocesses.Inanycase,youshouldnowbe abletogotoSharePointandopenthelistasshowninFigure7-24.
Figure7-24.PublishedExcelspreadsheettabledisplayedinaSharePointlist Supposeyoudiscoverthatyouhavetomakeachangetothedataforoneoftheshuttles,suchas changingthelastflightdate.YoucanopentheExcelspreadsheetofyourshuttleinformationtofindand editthespecificcell.Infact,youcanmakeseveralchanges.However,whenyouaredonemaking changes,youcannowsynchronizeyourchangesbacktotheSharePointlistbyrightclickinganywhere withinthetable.Thisopensthedrop-downmenushowninFigure7-25.FindtheTableoptioninthis menu.Asyouhoveroverthismenuoption,asubmenufliesouttodisplayoptionsspecifictotables. LookforandselecttheoptionSynchronizewithSharePoint.
378
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-25.SynchronizingExcelchangeswithSharePoint
■NoteOncepublishedtoSharePoint,anewcolumnappearsatthestartofthespreadsheetinExcelcalledID, whichisread-only.ThisIDremainsread-onlysoSharePointandExcelcanidentifywhichrowstolinktogether.
Whenyouselectthisoption,ExcelsynchronizesitschangeswithSharePointandviceversa.Aslong asnoonetriestoeditthesameitem/row,thisprocesscompletesafterafewseconds.Ifaconflictoccurs, adialogboxappearswithbothsetsofchanges,andyoucanselecthowyouwanttoresolvetheconflict.
■NoteWiththisadd-ontoallowsynchronization,youcannolongerclicktheRefreshbuttonintheExternal TableDatasectionoftheTableToolsDesignRibbon.Allsynchronization,bothways,occursthroughthe SynchronizewithSharePointoptionjustdescribed.
IfyouhavebeenmakingchangesinExcelanddecidebeforeyousynchronizethosechangesthat youreallywanttodiscardthemandrefreshyourspreadsheetwiththedatafromtheSharePointlist,you canright-clickanywherewithinthetableandselecttheTableoption,asshowninFigure7-26.Then clicktheDiscardChangesandRefreshbutton.
379
CHAPTER7■MANAGINGSHAREPOINTLISTSFROMEXCEL
Figure7-26.DiscardingyourExcelchangesandrefreshingfromSharePoint ThisactionupdatestheExceltablewithvaluesfromtheSharePointlist.Youcannotselectwhichof yourchangedExcelvaluesSharePointwillupdate.Therefore,thedialogboxshowninFigure7-27 remindsyouthatrefreshingyourdatafromtheSharePointlisterasesanychangesyoumadeintheExcel table,preventingyoufromupdatingSharePointwithanyofthem.Inotherwords,unlikesynchronizing, thisoptionperformsaone-wayoverwriteofeverythinginyourExceltableusingdatafromthe SharePointlist,justastheoldRefreshbuttonwould.
Figure7-27.RefreshreplacesallExceldatawithSharePointdata.
Summary Inthischapter,youexaminedthebasiccollaborationfeaturesbetweenSharePointandExcel2010.You startedbyexportingthemetadatafromadocumentlibrarytoanExcelworksheet.Ifyouincludea SharePointcolumnthatalsoincludesalinktothedocumentitself,youcanopenthedocumentfrom Excelbyclickingthelink. Atfirst,itmayseemthatthecollaborationbetweenthesetwoproductsworkslikeSharePoint’s collaborationwithotherOfficeproductssuchasMSWord,butyouquicklydiscoveredthatitactually hasatleastoneseriouslimitation.WhileyoucanexportdatafromSharePointtoExcelandyoucan refreshExcelwithchangesmadeinSharePoint,youcannotsendchangesmadetotheExcelworksheet backtotheSharePointlist.Thesynchronizationbetweenthesetwoproductsonlyworksinone direction.
380
CHAPTER7■ MANAGINGSHAREPOINTLISTSFROMEXCEL
LookingbackatExcel2003,youseethatSharePointdidsupportbidirectionalsynchronizationof changesmadeoneitherplatform.Fortunately,althoughMicrosoftchosetodeprecatebidirectional synchronizationbetweenSharePointandExcel,Microsoftdoesprovideanadd-ontoExcelthatrestores thiscapability.Inthelastsectionofthischapter,yousawhowtousethisadd-onwithExcelto synchronizechangesbetweenExcelandSharePoint. PerhapsMicrosofthopesthatuserswillswitchfromExceltoAccessformanipulatingSharePoint listswhilealsocreatingadditionalfunctionalitythroughformsandreports.However,SharePointstill hasaspecialroleforExcel,asyouwillseeinthenextchapter.SharePointcombinesExcelspreadsheets withanewservicecalledExcelServicesthatallowsthepublicationofspreadsheetsacrosstheWeb.It alsoprovideslimitedfunctionalitytousersofthesespreadsheets,evenifthoseusersdonothaveExcel ontheirdesktops.
381
CHAPTER 8
■■■
Publishing Excel with Excel Services YousawinChapter7thatMicrosoftOfficeExceldoesnot,byitself,bringasmuchcapabilitytothetable ofcollaborationasWord,Outlook,orAccess.BecauseMicrosofthasdecidedtodeprecate synchronizationbetweenExcelandSharePointlists,yourinitialimpressionmaybethattheonlyvalue Excelcanoffermightlieinitsabilitytohelpyoucreatelistsfromotherdatasources.Perhapsifyoucan exportotherdataintoanExcelformatormaybereaditintoExcel,youmightsubsequentlyexportittoa newSharePointlist.Similarly,youmighttransferthedatafromaSharePointlisttoanExcelworksheet sothatyoucansaveitperhapsasaCSVfilethatotherapplicationsmightthenimport.Nottosaythat thesecapabilitiesdonotaddvalue,butforatoolaspopularasExcelhasbecome,youmayexpectmore. Thegoodnewsisthatthereismore.Thebadnewsisthattousethefeaturesdiscussedinthis chapter,youneedtoberunningtheEnterpriseversionofSharePointServer2010withExcelServices turnedon.YoucannotrunExcelServicesonSharePointFoundation2010alone.Therefore,ifyouare fortunateenoughtohavetheEnterpriseversion,youwillwanttoreadthischapter,whichexamineshow topublishExcelspreadsheetstoSharePoint.Then,fromwithinSharePoint,you’llbeablenotonlyto viewthedataalreadyintheworksheet,butalsotoupdatethedataintheworksheetwhileprotecting yourformatandcalculationformulaswithparameters.SomeoftheotherbenefitsofpublishinganExcel spreadsheetusingSharePoint’sExcelServicesincludethefollowing: •
Youcannowmakeyourspreadsheetavailabletoanyonewhohasaccesstoyour SharePointsitethroughabrowser.UserswithaccessdonotneedtohaveExcelon theirdesktops.
•
Youcanpublishjustthepartsofyourspreadsheetthatyouwantotherstosee.You canhideyourstagingdataandformulas.
•
Youcanlimitviewers’interactionwithyourspreadsheettoselectedcellswith parameters.
IwillalsodemonstratehowyoucancreatedashboardswithExcelandworkwithdatacubes.Finally, thechapterwillclosewithabrieflookatusingtheReportCentertogetherwithExcelServices,KPIs,and more.
383
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
ConfiguringExcelServices Typically,thetaskofconfiguringExcelServicesfallstoyourSharePointadministrator.However,you maybecuriousabouthowtoturnExcelServicesonincaseyouneedtogotoyourSharePoint administratorwithadditionalrequeststoexpandyouruseofExcelServicestonewsitesandlibraries. Therefore,thissectionbrieflyliststhestepsrequiredtoaccomplishthistask.First,yourSharePoint administratormustopenyourSharePointCentralAdministrationsite. 1.
SelectCentralAdministrationfromtheleftnavigationpanel.
2.
SelectManageserviceapplicationsfromtheApplicationManagementgroup inthemainpanel.
3.
OntheServiceApplicationspage,clickExcelServices.
4.
Onthenextpage,clickTrustedFileLocations.YouneedtotellSharePointthe locationofthelibrarythatholdstheExcelfilessothatIIStrustsopeningand displayingthosefiles.
5.
OntheExcelServicesTrustedFileLocationpage,checkforyoursite location.NotethatifyourSharePointadministratorhasalreadyaddeda parentsiteandselectedYestoTrustChildren,youmaynothavetodoathing. Otherwise,clickAddTrustedFileLocation.
6.
Onthispage,theAddresssectionexpectstheURLofthedocumentlibraryor networkfolderwhereyouwillstoretheExcelfilesyouplantoaccess.With whateveraddressyouenter,youmustselectalocationtype.Ifyouplanto storeyourExcelfilesinaSharePointdocumentlibrary,selectMicrosoft SharePointFoundation.Ifyouareusinganetworkfolderorawebfolder,use theUNCorHTTPoption,respectively.
7.
Youcanleavemostoftheotheroptionsonthispageontheirdefaultsettings. However,youshouldchangethesettingAllowExternalDatatotheoption Trusteddataconnectionlibrariesonlyandembedded.
8.
ClicktheOKbuttontocompleteyourdefinitionoftheTrustedFileLocation.
■NoteIfyouhavedifferentsitesthatneedtheirowndocumentlibraryforstoringExcelfilesforusewithExcel Services,youmustrepeattheprecedingsteps,creatingaTrustedFileLocationforeachone.
Atthispoint,youradministratorhasenabledExcelServicesforyourdocumentlibrary.Ifyouplanto usesimpleExcelworkbookswithself-containeddata,youaresettocontinue.However,ifyouwantto useanExcelworkbookthatconnectstoanexternaldatasource,firstyoumustcreateadataconnection library.Inaddition,dataconnectionlibrariesareonlyavailableforsitesbuiltwiththeEnterpriseedition ofSharePointServer2010.Iwilltalkmoreaboutworkingwithdataconnectionslaterinthischapter.
384
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
PublishinganExcelFormtoExcelServices BeforeyoupublishyourspreadsheetstoExcelServices,youshouldknowthatExcelServicessupportsall thelayoutandformattingfeaturesfoundinExcel,butonlywhenyousaveyourspreadsheetsin.xlsxor .xlsbformat.Whattheuserseesafteryoupublishyourspreadsheetvisuallymatcheswhatyoudesigned withinExcel.Therefore,donotbeafraidtocreatevisuallyappealinglayoutswithformattingto emphasizedifferentaspectsofyourspreadsheet.AllofyourformattingworktranslatestoExcelServices. TopublishaformtoExcelServices,youonlyneedtoaddittothedocumentlibrarydefinedwhen youactivatedExcelServicesandspecifiedasaTrustedFileLocation.YoucandothisfromSharePointby addinganewdocumenttothedocumentlibrary,oryoucanpublishtheworkbookfromwithinExcelto yourSharePointlibrary.Let’slookfirstatsimplyaddinganewworkbooktothedocumentlibrary.
AddinganExcelWorkbooktoYourDocumentLibraryfrom SharePoint Forthismethod,supposeyoupreviouslycreatedandsavedaworkbookthatcalculatesthemonth-bymonthinterestandprincipalportionofaloanpayment.Figure8-1showsaportionofthisspreadsheet.
Figure8-1.AninterestpaidcalculatorbuiltinExcel YoucanbeginbyopeningthedocumentlibrarywhereyouwanttostoreyourExcelworkbook.For thepurposeofthisexample,supposeyouplantostoreyourExcelworkbookintheSharedDocuments
385
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
libraryofasitenamedVanguard.SimplyopenthelibraryandclicktheUploadDocumentoptioninthe NewgroupoftheDocumentsribbon. ThisoptionopenstheUploadDocumentdialogboxyousawearlierinthisbookinFigure1-24,that allowsyoueithertolocatethefileyouwanttouploadbyusingtheBrowsebuttonortouploadmultiple filesbyclickingtheUploadMultipleFileslink.Forasingleworkbook,youcouldalsojustenterthefile namebytypingitintheNametextbox,buttoensurethatyoudonotmisspellthename,Irecommend usingtheBrowsebuttontoselectthefileusingthestandardWindowsOpenFiledialogbox. Withthefiletouploadselected,clicktheOKbuttontocontinue.SharePointnowloadsthefile,and itappearsintheSharedDocumentslibrarylookinglikeanyotherfile.Youcannowviewthefileeither bydirectlyclickingitsnameinthelibrarylistor,ifyoudisplaythelibraryusingtheStandardView,by positioningyourmouseoverthefilenametodisplaythedrop-downmenuarrowtotherightofthefile nameandselectingViewinWebBrowser.
■CautionClickingdirectlyonthefilenameinthelibrarymayopentheExcelworkbookinyourwebbrowserorin yourlocalcopyofExcel,dependingonthesettingofthelibrary.Tofindouthowyourlibraryhasbeensetup,open SettingsforyourlibraryandchooseAdvancedSettings.TheninthesectiontitledOpeningDocumentsinthe Browser,selecttheoptionOpeninthebrowserorUsetheserverdefault(Openinthebrowser)toopenyour Exceldocumentwithinthewebbrowserbydefault.
WhenyouopentheworkbookwithinyourbrowserusingExcelServices,itshouldlooksimilarto Figure8-2.NotethatitresemblestheworkbookopenedinExcel.
Figure8-2.AsimpletotalinterestpaidcalculatordisplayedwithExcelServices
386
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
NavigatingAroundYourWorksheet SharePoint2010opensyourentireworkbookandletsyouscrollaroundwithoutthewindowingeffect thatSharePoint2007used.In2007,yourworkbookviewdefaultedto75rowsby20columnsatatime. Youthencouldusearrowslocatedintheupperrightofthebrowserwindowtonavigatethroughtherest ofyourspreadsheet.InSharePoint2010,youcansimplyusethehorizontalandverticalscrollbarsasyou wouldwithinExceltonavigatethroughtheentireworkbook. OnthetopleftoftheExcelgrid,youseethreeoptions.Thefirstoftheseoptionsletsyouopenthe workbookinyourlocalExcelclientifyouhaveExcelinstalledonyourlocalcomputer. Thesecondoptionprovidesadrop-downmenuwhereyoucanrefreshselectedorallconnections intheworkbookorrecalculatetheentireworkbook.Refreshingaconnectioninstructsthespreadsheet toreadthedatafromitsexternaldataconnection,checkfornewvalues,andupdatethespreadsheet appropriately.Recalculatingtheworkbookrecalculatescellsbasedonformulas,butitdoesnotcheck whetheranydatainitsdatasourcehaschanged. Thethirdoptionsetprovidestheabilitytofindtextstringsanywherewithinthespreadsheet.For example,youcanlookforaspecifictextstringrepresentingcharactersorevennumbersinthevaluesof thespreadsheetcells.Unfortunately,youcannotsearchusingBooleanexpressionsoncellvalues.Nor canyousearchwithintheformulasusedtocalculatethecells. Youcanevennavigatebetweenworksheetsofyourworkbookifyouhavemorethanonesheetby usingthecontrolsinthelower-leftcornerofthegrid.NoticethatjustlikewithinExcel,youcanmoveto thefirst,previous,next,orlastworksheetinyourworkbookusingthefirstfourcontrols.Youcanalso clicktheworksheettabsinthissectiontojumpdirectlytoanyoftheworksheetsintheworkbook. Whatyoucannotdoisdirectlyeditanyofthecellvaluesinthegrid.Whenyousimplyloadyour spreadsheetintoalibrarythathasExcelServicesenabled,youcanonlyviewthespreadsheet.
WhyYouNeedParameterstoMakeYourExcelForm Interactive Providingastaticspreadsheettoviewinthebrowsermayhaveitsplace,butformostspreadsheetsyou wantuserstobeabletochangedata,sortit,orevenfilterthedatatobetterservetheirneeds.Afterall, spreadsheetsareallaboutwhat-ifanalysisandmakingbusinessdecisionsafterevaluatingdata. Whileyoucannotprovidetotalaccesstoallthefeaturesspreadsheetusersmightnormallyuse directlywithinExcel,youcanatleastprovidetheoptiontochangevaluesassociatedwithspecificcells whileviewingthespreadsheet.Besides,anyonewhoreallyneedstohavetotalcontroloverthedesignof thespreadsheetandchangetheformatting,structure,oreventheformulasusedbythespreadsheetcan alwaysclicktheOpeninExceloptionmentionedearlierandworkwiththespreadsheetusingtheir desktopcopyofExcel.Justbesuretolimitthesepermissionstopeopleyoutrustsothatonlytheycan savechangestotheworkbookbacktothelibrary. WhenyoudefineparametersforyourExcelworksheet,userscanentervaluesforeachofthe parametersandthenrecalculatetheworksheetthesameasiftheyenteredthevaluesdirectlyinthe spreadsheet.Basically,aparameterdefinesaninputvaluethatupdatesanamedcell,whichinturn updatesalldependentcells.Inthenextsection,youwillseehowtodefineparametersthatallowusersto “update”thebrowserviewofthespreadsheet.
387
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
DefiningParametersforYourExcelForm WhenyoudecidetopublishaspreadsheetwithExcelServices,youmustdecidewhichfield(s)users wouldmostlikelyneedtomanipulate.Asanexample,let’sreturntoourexampleofthesimpleinterest calculationprogrammentionedearlier.Supposewedeterminethattheuseronlyneedstovarythree values: •
Theinitialloanamount
•
Theloaninterestrate
•
Themonthlypayment
Withthesethreepiecesofinformation,youcancalculateeachmonth’spayment,determiningthe portionthatpaystheinterestdueandtheamountusedtoreducetheloan’sprincipalamount.Youcan thencreatearunningtotalofthesetwonumberstodisplaybymonththeamountininterestyoupaidto thebankfortheprivilegeofborrowingthemoneyandtheremainingamountdueontheloan.Itthen makessensetodefineonerowinthetableforeachmonth,withthecolumnsrepresentingthevarious calculatedsums.Infact,onceyouhavedesignedtheformulasthatyouneedtocalculateforthefirst month,youcancopythemforanynumberofmonths. Inthesamplespreadsheetcreatedfortheexamplesinthischapter,Istoppedthecalculationsafter 30yearsfortheloan.Butthatdoesnotmeanthatitwilltake30yearstopayofftheloanorthatyouwill necessarilypayofftheloanonthelastmonthofthelastyear.Itjustprovidesaworkspaceforthe calculations.Inworkingwithloans,youreallyneedfourpiecesofinformation:thethreespecified previouslyandthelengthoftheloan.Youcanspecifyanythree,butyoucannotforcethefourthtoa specificvaluewithoutcalculatingit.Avariationonthisthemewouldbetocreateaspreadsheetinwhich youstartwithaninitialloanamount,aninterestrate,andafixednumberofmonthstopayofftheloan, andthencalculatetheamountofthemonthlypaymentyouneedtomakegiventheotherthree constraints.Thislatterexampleillustrateshowabankdeterminesyourmonthlymortgagepayment amountwhenyoubuyahousefor$200,000witha30-year6%annualinterestrateloan.Byrunningthe interestcalculatorasdefinedhere,youcouldseehowmuchsooneryoucouldpayoffyourloanby makinganextra$200permonthpaymentandhowthatreducesthetotalamountofmoneyyou ultimatelypaytothebank. Tocreateaparameter,youfirstneedtocreateanamedrange,orinthiscaseanamedcell.Todo that,clickthecellyouwant,suchastheBeginningLoanAmountfromFigure8-1.Thensimplygotothe Nameboxtotheleftandimmediatelyabovethecolumnheadersofthegrid.Bydefault,theNameBox currentlydisplaysthecellreference.OnceyouclickintheNamebox,toselectthecellreference,youcan simplytypethenameyouwanttogivetothecell,replacingthecellreference.Forexample,afterclicking intheloanamountcell(E3),youmightenterthenameBeginning_Amt. Youcanrepeatthisprocessforeachcellyouwanttodefinewithaname.Infact,youcannameany cellorcellrangeandthenusethosenamesinyourformulasratherthanthecellreference.This techniquemakesreturningtoyourspreadsheetmonthslaterandattemptingtofigureoutwhatyour formulasmeanaloteasier.Namingacelloracellrangedoesnotmeanthatitwillbecomeaparameter foryourspreadsheet,buttocreateaparameter,youmustbeginwithanamedcell.
■NoteAsyouwillseelater,youcancreatenamedcellrangesthatyoucanthenuseintheExcelwebpart SharePointprovidestodisplayaportionofaspreadsheet,butacellrangecannotbeaparameter.
388
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Anotherwaytodefinethenameforthecellbeginsagainbyselectingthecellorcellrangeyouwant touse.ThenopentheFormulasribbon.IntheDefinedNamesgroup,selectthebuttonDefineName. Adialogboxappears,showninFigure8-3,thatletsyoudefineaname.Namescanconsistofupto255 characters.However,aswithanyobjectname,youshoulduseonlyasmanycharactersasnecessaryto clearlyanduniquelyidentifytheobject.Anamemustbeginwithaletter,underscore,orbackslash.Excel treatsthenameInterestthesameasinterest,sodonottrytodifferentiatecellnamesmerelybasedon case.Youcannotnameacellthesameasanothercellreference.Youcannotincludespacesinaname. However,usinganunderscoreinplaceofaspacemakesthenamejustasreadable.
Figure8-3.Namingacellorcellrange Nextinthedialogbox,selectascope.Bydefault,Excelassumestheentireworkbookasthescopeof thename.However,youcanlimitthename’sscopetojustthecurrentworksheet. Thethirditeminthedialogboxletsyoudocumentthecellbyaddingacomment.Whileaddinga commenttoanamemightdefinewhythecellorrangewasimportantenoughtoname,thisinformation doesnotappearanywhereonthespreadsheetitself.However,youcanseeyourcommentswhenyou opentheNameManagerdialogbox,alsofoundintheDefinedNamesgroupoftheFormulasribbon. Thelastoptionidentifiesthecellorcellrangethatthenamereferences.Youcanchangethisvalue eitherbyenteringthecellorrangereferencemanuallyorbyclickingthebuttontotherightofthisfield, whichletsyouselectthecellorrangebyclickinganddragging(ifyouwanttodefinearange)through thecellsyouwanttoreference.Whenyoufinish,clickOKtocreatethename. Ifyouforgetwhatnamesyouhavealreadyusedorwhichcellorcellrangetheyapplyto,youcan viewadialogboxthatshowsallthedefinednameswithinthecurrentworkbookbyclickingtheName Managerbutton.Figure8-4showsanexampleoftheNameManager.
389
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-4.TheNameManagershowsallnamedcellsandranges. YoucanalsousetheNameManagertoeditpropertiesofanameordeleteaname.Youcaneven createanewnamedefinitionbyclickingtheNewbutton. Ideally,youshoulddefinenamedcellsthatyouwanttouseasparametersbeforeyoubegincreating yourspreadsheet.Agoodpracticegroupstheseparametercellsinasingleplace,perhapsatthetopof thespreadsheetasshowninthisexample,oronadifferentworksheetdedicatedtopromptingfor parameters.Thenasyoulayouttherestofyourspreadsheet,youcanreferencethenamedcellsand namedcellrangesinyourformulasratherthanusingcrypticcellreferences.
PublishingYourExcelWorkbook Onceyouhavefinishedbuildingyourspreadsheet,firstsaveitbeforeyoubeginthestepstopublishitto SharePoint.Youcanchoosefromtwodifferentwaystopublishyourspreadsheet.Youhavealreadyseen onewayearlierinthischapter:youcansimplyopenthelibrarywhereyouwanttopublishyourExcel filesanduploadthefiletothelibrary. However,youcanalsopublishtheworkbookfromwithinExcelitself.OpentheFilesmenuinExcel andselectSave&Send.Fromthefirstcolumnofshareoptions,selectSavetoSharePoint.Thisaction displayssomefeaturesofpublishingyourworkbooktoExcelServicesontherightsideofthepageas showninFigure8-5.
390
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-5.PublishingtheExcelworksheettoExcelServices YoucouldsavethespreadsheetbyclickingtheSaveAsbuttonandsupplyingthenameofthesite whereyouwanttopublishthespreadsheetanditsname.However,youwouldendupwithan uneditablespreadsheet,justasifyouhadusedtheuploadoptionfromwithinSharePoint.Instead,click thePublishOptionsbuttonatthebottomoftheSaveAswindowbeforeuploadingthefile.Thisbutton opensthePublishOptionsdialogboxshowninFigure8-6.
Figure8-6.TheShowpageoftheExcelServicesPublishOptionsdialogboxdetermineswhatuserssee.
391
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Thisdialogboxconsistsoftwotabbedpages.Thefirstpageletsyoudefinewhatpartsofthe workbookyouwanttodisplay.Bydefault,theEntireWorkbookoptiondisplaysallworksheetsand items.Therefore,therearenoadditionaloptionstoselectinthedrop-downlistdisplayedbeneaththe textEntireWorkbook. Ifyouonlywanttodisplayselectedworksheetsfromtheworkbook,openthedrop-downmenuand selectSheets.Thisoptiondisplayseachworksheetintheworkbookwithacheckboxbeforeit.Uncheck theboxforsheetsyoudonotwanttopublishfromthedocument.Youcanselectindividualworksheets orreturntotheAllSheetsoptiontoselectthemallautomatically. Athirdoptioninthedrop-down,ItemsintheWorkbook,liststablesandnamedrangesinthe workbook.Thus,youcanlimitpublicationtoasectionofaworksheetdefinedbyaspecifictableora namedcellrangeandignoreanythingelsethatmightappearintheworkbook. Forthisexample,leavetheoptionEntireWorkbookselectedandclickthesecondtab,named Parameters.Exceldoesnotassumethatanyofthenamedcellsshouldbeparameters.Thus,the parameterlistbeginsemptyasshowninFigure8-7,andyoumustclicktheAddbuttontobeginadding namedcellsthatyouwanttouseasparameterstothelist.
Figure8-7.TheParameterspageofExcelServicesPublishOptionsshowswhichnamedrangestotreatas parameters. WhenyouclicktheAddbutton,youseealistofallthenamedcells.Ifyouhavenamedrangesor namedtables,thesedonotappear.Onlyindividualcellscanserveasparameters.Thus,ifyouhave20 cellsthatyouwanttoletusersupdatewhentheyinteractwithyourspreadsheetonline,youneedtohave 20separatenamedcells.Youcannotsimplycreateasinglenamedrangeanduseitasyourparameter.I knowthatthiswouldmakeyourdevelopmentlifeeasier.Infact,insomecases,itmayevenmakesense whenthevaluesformaseries.However,theparameterfeaturedoesnotsupportthatcapabilityatthis time. Ontheotherhand,asshowninFigure8-8,youcanselectalltheparametersyouwanttoaddatone time.Youdonothavetoselectthemindividually.Whenyouarefinished,clickOK.
392
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-8.Selectingthenamedrangesyouwanttouseasparameters ClickOKtwicetoreturntotheSave&Sendpage.ItisnowtimetoclickSaveAsonthispage.Inthe mainSaveAsdialogbox,clickMyNetworkPlacesalongtheleftside.Ifyoupreviouslypublisheda documenttothelibrarywhereyouwanttosavetheExcelspreadsheet,youprobablywillfindareference tothelibraryhere.Ifso,double-clickittoselectandopenthelibrary.Ifyouhavefoldersalreadysetup fordifferenttypesoffiles,openthefolderbydouble-clickingitalso.Whenyoureachthefolderwhere youwanttosaveyourfile,enterafilenamethatyouwanttouse.Bydefault,Excelassumesthatthe SharePointfilenamewillmatchthenameofthefileonyourlocalfilesystemifyoupreviouslysavedthe filelocally.AlsomakesurethatyousavethefileasanExcelworkbook(*.xlsx)file. Ifyouhavenotpreviouslysavedanythingtothedocumentlibrarywhereyouwanttosavethe workbook,youmustentertheURLofthelibrarydirectlyintotheFileNamebox.Figure8-9showsan exampleofenteringtheURL.NoticethatwhenyouentertheURL,youmustincludetheservernameas wellasallfoldersuptoandincludingthenameofthelibrarywhereyouwanttosavethefile.
393
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-9.EnteringtheURLofthedocumentlibraryinSharePointwhereyouwanttopublishthe workbook
■TipHowdoyouknowtheURLyouneedtoenter?Simple.OpenSharePointandnavigatetothedocument librarywhereyouwanttosaveyourworkbook.Withthelibraryopen,capturetheURLfromtheAddressbaratthe topofyourbrowser.ThisURLcontainssomeadditionalinformationattheendtodisplaythecontentsofthe library.Therefore,youcanremoveanythingafterthenameofthelibraryitself,butleavethelastslashattheend oftheURLsothatExcelknowsthatyouhaveonlydefinedadirectory,notafile.
AfteryouselectthelibrarynamefromyourNetworkPlacesorhavemanuallyenteredtheURLfor thelibrary,presstheEnterkey.Thisdisplaysthecontentsofthelibrary.Again,navigatethroughany subfoldersifnecessarytoopenthefolderwhereyouwanttosavetheworkbook. OnceyouhavesavedyourworkbooktoSharePoint,youcanopenitinyourbrowserbygoingtothe SharePointlibrary,locatingtheworkbookfile,right-clickingthefiletoopenthedrop-downmenu,and selectingViewinWebBrowser.AfterthefewmomentsittakesExcelServicestoopentheworkbookand formatthewebpage,youshouldseeapagethatlookslikeFigure8-10.
394
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-10.Initialvaluesfortheinterestpaidcalculator Noticethat,unlikethefirsttimewhenyouuploadedanuneditableversionofthespreadsheet,this timeyougetapanelontherightsidethatdisplaystheparametersyoudefined.Ifyouwanttochange anyoftheparameters,simplyenterthenewvaluesyouwanttouseinthetextboxestotherightofthe parameternames.Youdonothavetoenteralltheparameters,onlythoseyouwanttochangefromtheir currentvalues.
■TipIfyoudonotincludethecellsreferencedbyyourparametersinavisiblepartofthespreadsheet,youwill noteasilyknowwhichparameterschanged.Therefore,youmaywanttoincludetheminyourdisplayedrangeas shownhere.
ThenclicktheApplybuttonatthebottomoftheParameterspaneltorecalculatethespreadsheet usingyournewparametervalues.Figure8-11showsthescreenupdatedafterchangingthemonthly paymentamountfrom$1,500to$1,300.
395
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-11.Updatedvaluesfortheinterestpaidcalculatorusingparametervalues Therestofthepageworksthesameasdescribedearlier.Theoneremainingitemtonoteisthatby publishingyourExcelworkbookusingthismethod,youuseanentirepagetodisplayit.Youcannot includeanyotherwebpartsonthepage.Youcannotaddaheaderorothertextthatmighthelpexplain tousershowtousetheparametersfortheExcelspreadsheet.Fortunately,Microsofthasaddedaweb partthatallowsyoutoincludeanExcelspreadsheetonanywebpagethathaswebzoneswhereyoucan addwebparts.
■CautionIfrecalculatingtheworkbookdoesnotappeartoupdatethecellsyouexpect,contactyourSharePoint administratortofindoutwhetherthefieldTypeofToolbarissettoNoneorNavigateonly.Anotherpossible settingtocheckistheCalculateWorkbooksetting.
ViewingUploadedExcelDocuments OnceyouhavepublishedanExcelworkbooktoaSharePointlibrary,youcanopeniteitherintheweb browseritselforinExcel.Toselecthowyouwanttoopentheworkbook,opentheworkbook’sdropdownmenuasshowninFigure8-12.
396
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-12.ToviewanExceldocument,openthedocument’sdrop-downmenu.
■NoteIfyouhaveMicrosoftWebApplicationsinstalledonyoursystem,youwillalsoseeinthisdrop-downlistan EditinBrowseroption,whichopensthespreadsheetinabrowserandusesMicrosoftExcelWebApptoeditthe spreadsheetbasedonyourpermissionsforthelibrarywhereyoustoredtheExceldocument.
UserswhohaveExcelinstalledontheirlocalmachinescangainaccesstothefullfunctionalityofthe spreadsheetbyopeningtheExceldocumentinEditmode.Whenaspreadsheetisopenedthisway,users caneditanycellswithinit,notjustthecellsidentifiedasparameters.Theycanalsomakechangestothe spreadsheet.Ifthoseusersalsohavethenecessarypermissiontowritefilesbacktothelibrary,theycan thensavethosechangesbacktothedocumentinthedocumentlibrary.Youcancontrolthisability throughtheoptionPermissionsforthisdocumentlibraryunderthePermissionsandManagement sectionofLibrarySettings,foundintheSettingsgroupoftheLibraryribbon.Ontheotherhand,you managethepermissionsofanindividualfilebyselectingManagePermissionsasshownintheitem’s dropidownmenuinFigure8-12. Also,underSettings,youcancontrolaccessbyselectingAdvancedSettingsandchangingthe optionforOpeningDocumentsintheBrowsersettingtoeitherOpeninthebrowserorUsethe serverdefault.Then,iftheusersimplyclicksthedocumentfromthelibrary,itwillopenbydefaultin theirbrowserratherthanintheirlocalcopyofExcel.
UsingtheExcelPageWebPart ViewinganExcelworkbookfromaSharePointlibraryeitherinthebrowserusingExcelServicesorby downloadingandopeningitinalocalcopyofMicrosoftExcelprovidesaquickwaytoviewthe spreadsheet.However,itdoesnotletyouincludetheworkbookwithotherSharePointfeatures. Fortunately,SharePointprovidesawebpartthatallowsyoutoincludeanExcelworkbookorportionofa worksheetinsideanywebpage.
397
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
SupposeyoustartwithasimplewebpagesuchastheoneshowninFigure8-13.Inthispage,you wanttoaddaspreadsheetwebparttotheLefttextareatodisplaytheinterest-paidcalculatorbeneath theSharedDocumentslist.StartbygoingtoSiteActionsandeditingthepage.
Figure8-13.Beginningwithabasicwebpagewithtwowebpartzones PlaceyourcursorbeneaththeSharedDocumentslibraryandclicktheleftmousebuttontosetthe insertionpoint.Next,opentheInsertribbonundertheEditingToolsandclickWebPart.Thepage refreshesanddisplaythreeareasimmediatelybeneaththeribbon,namedCategories,WebPartsand AbouttheWebPart.Inthefirstarea,Categories,clickOfficeClientApplications.Next,clicktheweb partExcelWebAccess.Finally,clicktheAddbuttonbeneaththethirdsectiontoaddthiswebpartas showninFigure8-14.
398
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-14.Addingawebpartfromtheavailablepartslist YouwillnowseeanewwebpartatthetopoftheLeftzone,titledExcelWebAccess.Theinitial contentsofthiswebparttellsyouthatyoumustselectaworkbookforthewebparttodisplayby openingthetoolpaneforthewebpartandeditingtheWorkbookproperty.DothisbyopeningtheEdit drop-downmenuandselectingEditWebPart.Youcanalsosimplyclickthelinkinthewebpart:Click heretoopenthetoolpane. Whenthetoolpaneopens,asshowninFigure8-15,inthefirsttextboxafterthelabelWorkbook, entertheURLoftheworkbookfromthelibrarywhereyoupublishedit.Ifyoudonotrememberthe name,orifyouwanttomakesurethatyougetthepathcorrect,clickthebuttonwiththeellipsestothe rightofthetextbox.
Figure8-15.DefiningthepropertiesoftheExcelWebAccesswebpart
399
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
ClickingtheellipsesbuttonfortheURLdisplaystheSelectaLinkdialogboxshowninFigure8-16. UsethisdialogboxtonavigatethroughyourSharePointsitetolocatethefoldercontainingthe spreadsheetyouwanttodisplay.Whenyoufindit,double-clickit,orclickitonceandthenclickOKto placetheURLintheWorkbooktextfield.
Figure8-16.Navigatingtoyourworkbook UnderNamedIteminthetoolpane,youcanalsochooseaspecificnameditemfromtheworkbook todisplay.Whenyoudothis,onlythatnamedareaappearswithinthewebpartwhenyoudisplayit.This featureeliminatestheuser’sabilitytomovearoundtheworkbooktootherareasontheworksheetorto differentworksheetsintheworkbook.Youcreateanamediteminthesamewaythatyoucreatednamed cellsforparametersearlierinthischapter.WhileinExcel,selecttherangeofcellsyouwanttotreatasa singleobjectfordisplaypurposesandgiveitaname.Then,whenyouaddtheworkbooktothewebpart, usetheNamedItemfieldtoselectthenamedrange.UnliketheWorkbookfield,whichletsyousearch fortheworkbook,theNamedItemfielddoesnotprovideyouwithaneasylisttoselectfromavailable namedrangesinthecurrentworkbook.
400
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Bydefault,theExcelwebpartautomaticallygeneratesatitleforitself.Toreplacethistitlewithyour own,youmightthinkthatyoucouldsimplychangetheTitlepropertyintheAppearancesectionofthe toolpane.Afterall,thistechniqueworksformanyotherwebparts.However,itwillnotworkhereunless youalsounchecktheoptionAutogenerateWebPartTitleintheToolbarandTitleBarsectionaswell. Ifyoudonotuncheckthisoption,thewebpartcontinuestoauto-generateitstitle,overwritingthe changesyoumaketotheTitlefieldintheAppearancegroupofpropertieswhenyouattempttoapply yourchanges.
■CautionAlwaysturnofftheCloseoptionintheAppearancesectionofawebpartifyoudonotwantusersto accidentallyremovewebpartsfromthepage.Ifyoucloseawebpart,itisstillpartofthepagedefinitionandyou canrecoveraclosedwebpart.Ifyoudeleteawebpartontheotherhand,itisgoneandyouwillhavetostartover withanewinstanceofthetemplateifyouneedit.Torecoveraclosedwebpart,clicktheAddaWebPartbutton atthetopofanywebpartzone.Inthedialogthatappears,insteadofselectingoneofthewebparttemplates, clickthelinkatthebottomofthedialog.Thisdisplaysapaneltotherightofthepage.The firstlinkinthepanelisClosedWebPartswithanumberinparenthesesafterit.Ifthenumberhereisgreaterthan zero,youhaveatleastoneclosedwebpartinthecurrentpage.ClicktheClosedWebPartslinktodisplaythe closedwebparts.YoucanthenselectanyoftheclosedwebpartsandclickOKtoreopenthewebpartatthetop ofthecurrentwebpartzone.Youcanalsospecifyawebpartzone,butevenifyouopenthewebpartinthe currentwebpartzone,youcanalwaysdragittoadifferentpositioninthecurrentordifferentwebpartzone.
Figure8-17showsanexampleofhowyoumightincludeawebpartinthemiddleofawebpage whileincludingotherwebpartsaroundit.Inthiscase,aContentEditorwebpartappearsabovethe ExcelwebparttodescribetheExcelwebpartandexplainitsuse.
401
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-17.AnExcelworkbookshowninsideawebpart
402
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
ViewingDatafromExternalSourcesinExcelUsingaData Connection InalltheExcelexamplessofar,wehaveentereddatadirectlyintothecellsoftheworksheets.However, youcancreateExcelworksheetsthatdisplayandmanipulatedatafromexternaldatasources.Primarily theseexternalsourceswillbedatabasessuchasAccessandSQLServer.However,youcanconnectto manyotherdatasourcesaswell. Forthissection,let’susethePUBSsampledatabaseprovidedforSQLServer2008.
■TipIfyouhaveVisualStudio,youcancreatethePUBSdatabaseforSQLServer2008fromC:\Program Files\Microsoft Visual Studio 10\SDK\v3.5\Samples\Setup\InstPubs.sql.IfyoudonothaveVisual Studio,youcanalsodownloadPUBSforSQLServer2000fromMicrosoft’sDownloadCenteratthefollowingsite (besuretoentertheURLasonelineeventhoughIshowitontwolineshere): www.microsoft.com/downloads/details.aspx? FamilyID=06616212-0356-46A0-8DA2-EEBC53A68034&displaylang=en
orsimplyenter tinyurl.com/yzx6lz
IfyoubeginwiththeoriginalSQL2000PUBSdatabase,youmayneedtosetthecompatibilitylevel,usingthe commandEXEC sp_dbcmptlevel 'Pubs','100' for SQL Server 2008 or EXEC SharePoint_dbcmptlevel ‘Pubs’, ‘90’ for SQL Server 2007.
The AuthorRoyalty View Let’stakeacloserlookattheAuthorRoyaltyviewincaseyouwanttotryre-creatingitonyourmachine.I createdaviewinthePUBSdatabasesothatIcouldretrievedataforeachbookandthencalculatethe salesforthebookalongwiththeroyaltyduetoeachauthor.TheinformationIneedspansfivetables withinPUBS,beginningwiththeSalestable.Thistableidentifiesthebookbyonlyatitle_idvalue. Therefore,IlinkthisIDtothetitle_idvalueintheTitlestable.ThentheTitlestableformsamany-tomanyrelationshipwiththeAuthorstable.Therefore,youneedaconnectingtablenamedTitleAuthor betweenthesetwotablestocreatetwoone-to-manyrelationships.Thenifyoualsowanttoknowinwhich statesbooksweresold,youneedtolinktheSalestabletotheStorestableusingthestor_idfieldfoundin bothtables.
403
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Next,youneedtolookatthefieldsyouwantinthespreadsheetandseewhetherthosefieldsexistas individualfieldsinthetablesselectedoryouneedtocalculatesomeofthem.WhiletheSalestable providesthequantityofbookssoldbytitle,youneedtogetthepriceofthebookfromtheTitletableto calculatethevalueofthebookssold.Similarly,tocalculatetheauthor’sroyalty,youneedtomultiplythe valueofthebookssoldbytheauthor’sroyaltypercentage,whichyoucanfindintheAuthorstable. Afterthoroughlyresearchingwhichfieldsyouneedtogeneratethereportyouwant,youcanwritetheview definitionasfollows: USE [PUBS] GO /****** Object: View [dbo].[AuthorRoyalty] *******Script Date: 01/20/2008 13:39:41 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE VIEW [dbo].[AuthorRoyalty] AS SELECT stores.stor_name , stores.state , sales.ord_date , sales.qty , titles.title , titles.type , titles.price , titles.royalty , authors.au_lname , authors.au_fname , sales.qty * titles.price AS Amount , sales.qty * titles.price * titles.royalty / 100 AS AuthorRoyalty FROM dbo.sales INNER JOIN dbo.stores ON sales.stor_id = stores.stor_id INNER JOIN dbo.titles ON sales.title_id = titles.title_id INNER JOIN dbo.titleauthor ON titles.title_id = titleauthor.title_id INNER JOIN dbo.authors ON authors.au_id = titleauthor.au_id GO
Onceaviewiscreated,youcanaccessitfromadatabaseusingthesamemethodsyouwouldtoaccessa table.IfyouneedaspecialviewforyourExceltableanddonotfeelcomfortabledefiningtheviewyourself, contactyourdatabaseadministratorforfurtherassistance.
CreatinganExternalConnection StartanewExcelworkbookandopentheDataribbonasshowninFigure8-18.IntheConnections group,clicktheConnectionsbutton.
404
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-18.Beginningaconnectiondefinition ThisbuttonopenstheWorkbookConnectionsdialogbox,whichshowsanyconnectionscurrently definedfortheworkbook.AsyoucanseeinFigure8-19,thisdialogboxinitiallycontainsnodefined connectionsforanewworkbook.
Figure8-19.Initially,theworkbookdisplaysnoconnections. Tocreateaconnection,clicktheAddbutton.Thisactiondisplaysalistofallexistingconnections withinyourworkbook,yourcomputer,andyournetwork.Figure8-20showstheexistingData Connectionsdialogbox.Ifaconnectionalreadyexistsonyournetworkoronyourcomputerthatyou canuse,youcansavetimebyreusingit.Asyoucanseeinthisfigure,noneoftheexistingconnection definitionspointtothedatabasesandtablesthatyouwant.
405
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-20.Selectfromexistingconnectionsorbrowseformore. WhenyouclicktheBrowseforMorebutton,theSelectDataSourcedialogboxappears.In additiontodisplayingthesameconnectionsseenintheExistingConnectionsdialogbox,itaddstwo additionaloptions: •
ConnecttoNewDataSource.odc
•
NewSQLServerConnection.odc
Ifyoudouble-clickeitherofthese,itopensanadditionaldialogboxwhereyoucandefineanew connection.WhileitispossibletocreateadataconnectionfromtheConnecttoNewDataSource.odc option,IrecommendusingtheNewSQLServerConnection.odcoptiondirectlyifyourdataresidesin aSQLServerdatabase. YoucanusetheConnecttoNewDataSource.odcoptionwhencreatingaconnectiontonon-SQL Serverdatasources.Forexample,youcancreateODBCdataconnectionstomanyapplications includingCrystalReports,dBase,andAccess.However,youshoulduseOLEDBconnectionswhenever availableforyourdatasource.Therefore,checktheOther/AdvancedoptionintheDataConnection WizardfirsttoseewhetheryouhaveaccesstoanOLEDBdriver.Forexample,hereyoumayfindthe latestdatalinkdriverforMicrosoftAccess2010,calledMicrosoftOffice12.0AccessDatabaseEngine OLEDBProvider.TherearealsoOLEDBprovidersforSQL,AnalysisServices,OLAPServices,Oracle, andmore.Ifyoudonotseetheprovideryouneedinthislist,contactyoursystemadministratortoseeif heorshecanlocateandinstalladriverthatyoucanuse. ChoosingtheNewSQLServerConnection.odcoption,showninFigure8-21,takesyoudirectlyto theDataConnectionWizard,whereyoucanentertheinformationneededtocreateaconnectionto SQLServer.
406
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-21.CreatinganewSQLServerconnection ThefirstpageoftheDataConnectionWizardpromptsforthenameoftheserveryouwantto access.ThisistheSQLServername,notnecessarilythenameofthemachineonwhichSQLServerruns, althoughtheyareoftenthesame.Youcanentertheservernameaslocalhostwhencreatingthe connectionfromthemachineonwhichSQLServerruns.However,youcannotusetheseconnections fromothermachines,becauselocalhostwillnotresolvetothecorrectserver.Therefore,alwaysenterthe nameoftheserver. YoucansupplycredentialstoSQLServereitherbyusingyourWindowsAuthenticationinformation orbysupplyingaspecificusernameandpassword.UsingWindowsAuthenticationgenerallyprovidesa moresecuremethodofdefiningyourconnection.Inthisauthenticationmode,youdonotincludeyour usernameandpasswordintheconnectioninformation,andtheoperatingsystemdoesnotsend unencryptedusernamesandpasswordsacrossthenetwork.Figure8-22showsthedialogboxthat promptsforyourserverinformation.
407
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-22.Selectingthedatabaseserver WhenyouclicktheNextbutton,theDataConnectionWizardcontactstheserveryouspecified andusesthelogoncredentialsyouindicated.Ifitsucceedsinconnectingtotheserver,itreturnsinthe nextpagewithinformationaskingyoutowhichdatabase,table,orcubeyouwanttoconnect. Thefirstpromptusesadrop-downlisttodisplayallthedatabasesonthereferencedserver.It initiallyselectsthedefaultdatabasefortheserver.However,openingthedrop-downlist,youcanselect anyofthedatabasesontheserver. Onceyouhaveselectedadatabase,youcanselectthespecifictable,view,orcubeyouwanttouse. Figure8-23showsthatafterselectingthePUBSdatabase,IselectaviewnamedAuthorRoyalty.Because youcanonlyselectasingletableforaconnectiontoanExcelworksheet,youmayfindthatviews providetheonlywaytoaccessfieldsfrommultipletables.Thisisimportantespeciallyinanormalized databasewhereyouwanttodisplaydescriptivetextforuserstoread,ratherthanIDvaluesthatserveas pointersbacktotheirparenttables.
Figure8-23.Selectingthetableorview
408
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Afteryouhaveselectedthetableorviewyouwanttouseintheconnection,thenextpageofthe wizardpromptsyouforafilenameforthedataconnection.Aswithmostfiles,youshouldchooseafile namelongenoughtofullydescribethecontentorpurposeofthefile,whiletryingtokeepthenameas shortaspossible.Oneadvantagedataconnectionfileshaveovermostotherfilesisafriendlyname.The friendlynameappearsindialogboxessuchastheWorkbookConnectionsandtheExisting Connectionsdialogboxes,makingiteasiertoidentifywhichconnectionfileyouwanttouse.Figure824showsthefinalpageoftheDataConnectionWizard.
Figure8-24.Savingthedataconnectionfile TheoptionAlwaysattempttousethisfiletorefreshdataensuresthatthisconnectionfileis alwaysusedbyeveryworkbookwhenitrefreshesitsdatasource,thususinganyrecentupdatestothe connectionfile. ClicktheFinishbuttonaftercompletingthislastpageoftheDataConnectionWizard.Youthen returntotheWorkbookConnectionsdialogbox,whereyouseethenameofthenewconnectionlisted. ClicktheClosebuttononthisdialogbox.
ImportingtheSharePointListtoaWorkbook YoushouldnowseetheExistingConnectionsdialogbox.Ifyoudonot,opentheExistingConnections dialogboxfromtheDataribbon.YoucanfinditintheGetExternalDatagroup.Clicktheconnection youjustcreatedfollowedbytheOpenbutton.Younowcanimportthedatafromyourexternal connectionintoExcel.First,youmustchoosehowyouwanttoviewthedata,selectingfromtheoptions Table,PivotTableReport,andPivotChartandPivotTableReport.Figure8-25showstheImportData dialogbox.
409
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-25.PlacingdatainaPivotTableReport YourfirstinclinationmightbetoselectTablebecauseyouwanttoviewthecolumnsandrowsof thedata.However,ExcelServicesinSharePointdoesnotsupportexternaldataranges.Fortunately,it doessupportpivottables.
■NoteWhydoesn’tExcelServicessupportexternaldatawhenitdoessupportpivottables?Thetechnicaldetails arebeyondthescopeofthisbook,butthisbehavioriswelldocumentedontheInternet.Inessence,thedifference liesinthewaypivottablesorganizeandsortdataasahierarchyratherthanasatwo-directionalcollectionofrows andcolumns.
Fortunately,withalittlework,youcanmakemostpivottableslooksimilartotheoriginaltablesor viewsfromwhichtheystarted.Thefollowingdiscussiondescribesonewaytoreformatthepivottable. AfterexportingtheviewdatatoaPivotTableReport,yourExcelscreendisplaysthepivottableon theleftandthePivotTableFieldListpanelontheright,asshowninFigure8-26.ThePivotTableField Listpanelconsistsoffiveareas.Thelargestarealistsallthefieldsfromthetableorviewusedtocreate thepivottable.Eachfieldhasacheckboxbeforeit.Youmustselecteachfieldthatyouwanttousefrom theviewortable.
410
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-26.Thedefaultlayoutofdatainapivottable Ifyousimplygodownthelistoffields,selectingthemintheorderdisplayed,thepivottable assumesthatyouwanttocreateahierarchywiththefieldsinthatorder.Ifyouselectthefieldsina differentorder,thehierarchythatExcelbuildschangesaccordingly. Forexample,ifyouselectTitlebeforeStateandthenbookType,Excelassumesthatyouwantto displaydifferentstateswithineachbooktitleanddifferentbooktypeswithineachstate.Dependingon theauthor,thiscouldmeanthatwhilethepivottablelistseachbookseparately,twobooksclassifiedas BusinessmaybeseparatedbyabookclassifiedasFictionjustbecauseyoudefinedthebook’sTitle higheronthehierarchy. Ontheotherhand,ifyouselecttheTypefieldbeforeselectingthebook’sTitle,allbooksofthe sametypeforanauthorappeartogether.Similarargumentswoulddeterminewhetheryouwantedto seeallthebookswrittenbyeachauthororifyoupreferredtogroupallbooksofaspecifictyperegardless oftheauthor.Thishierarchicalapproachtothedatadistinguishespivottablesfromregulartables. Ifyoudecidethatyouwanttocreateadifferenthierarchyafteryouhaveselectedthefields,youdo nothavetostartoveragain.SimplyfindthefieldineithertheRowLabelsorValuesboxandclickitto displaythedrop-downfieldmenu.Optionsinthemenuallowyoutomovethefieldupordowninthe list,orevendirectlytothetoporbottom.Youcanalsoclickanddragfieldsupanddownthelistwith yourmousetomovefieldsandyoucandragfieldsbetweentheotherthreeareasorremovefieldsfrom displayentirely. Astothedifferentareaswherepivottablesplacefieldsbydefault,Excelassignslabelanddatetype fieldstotheRowLabelsbin.ItthenassignsnumerictypedataautomaticallytotheValuesbinand assumesthatyouwanttosumthevalueshere.Thismaynotbewhatyouwant.Youcanmoveallthe
411
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
fieldsfromtheValuesbintotheRowLabelsbin.Inallcases,beawareofanyimpliedhierarchyinthe orderofthefieldsintheRowLabelsarea.
FormattingaPivotTabletoLookLikeaWorksheet Whenyouhavethefieldsyouwanttodisplayselectedandintheorderyouwant,youcanbegin formattingthepivottablesoitlooksmorelikeaspreadsheet.BeginbyselectingthePivotTableTools Optionsribbon.ThenfromthePivotTablesection,clickOptions.ThePivotTableOptionsdialogbox, showninFigure8-27,consistsoffivetabs.SelectthetabLayoutandFormatifitdoesnotappearby default.Onthispage,locatethefollowingtwooptionsandcheckthemifnecessary: •
Autofitcolumnwidthsonupdate
•
Preservecellformattingonupdate
ThenclicktheDatatabandsetthedrop-downvaluetoNoneforthepropertyNumberofItemsto retainperfield.Yougenerallyshouldnotretainitemsdeletedfromthedatasourcewithoutagood reason.
Figure8-27.Settingthepivottableoptions AlsoontheOptionsribbon,theShowgroupontherightallowsyoutoturnthefieldlistonoroff, hideorshowtheexpand/collapsebuttonsassociatedwitheachuniquegroupvalue,andhideorshow thefieldheaders.Typically,Iprefertohidethefieldheadersbecausetheydisplaytheoriginalfield namesfromthetableorview.Unlessyoucreatedmeaningfulaliasnamesforallthefields,thesenames maybesomewhatcryptic.Therefore,ratherthandisplaythesenamestotheuser,Ihidetheheaders, andtheninsertanotherrowatthetopofthepivottableandentermyowncolumnheadersthere. Next,openthePivotTableToolsDesignribbonandlocatetheLayoutgroup.Usingthebuttonsin thisgroup,makethefollowingchanges:
412
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
InSubtotals,selecttheoptionDoNotShowSubtotals,unlessyouwanttocreatesubtotalsfor groups. InGrandTotals,selectOffforRowsandColumns,unlessyouwantgrandtotalsforcolumns,in whichcaseselectOnforColumnsOnly. InReportLayout,selectShowinTabularFormtocreatetheappearanceofanormalcolumnand rowtable. Onthisribbon,youcanalsoselectapivottablestyleifyouprefer.Whenyouchooseapivottable style,youcanusethePivotTableStyleOptionsgrouptodeterminewhetherspecialformattingshould applytoheadersandwhethertoapplyroworcolumnbandingtomakethetablemorereadable. Onceyou’vemadeallofthesechanges,yourpivottablemightlooksimilartoFigure8-28.
Figure8-28.TheformattedpivottableshowninExcel
PublishingYourFormattedWorkbook Topublishyourworkbook,clicktheFiletabandclicktheSave&Sendoptiontodisplaythepageshown inFigure8-29.ClickSavetoSharePointtodisplaytheSharePointoptionsintherightpanel.
413
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-29.PublishinganExcelworkbooktoSharePoint BeforesavingtheworkbooktoSharePoint,clickthebuttonPublishOptionslocatedintheupper rightsectionofFigure8-29.ClickingthisoptiondisplaysthePublishOptionsdialog,whichconsistsof twotabs.TheShowtabletsyouselecttheworksheetsyouwanttopublish.Bydefault,Excelpublishes theentireworkbook.However,youcanchoosefromthedrop-downmenutopublishindividualsheets orevennameditemsfromtheworkbook.Thesecondtab,Parameters,letsyouselectparametersto publish.Whenyoufinishsettingparameters,clickOKtoexitthisdialog. TofinishpublishingyourExcelspreadsheet,clickthelargeSaveAsbuttonatthebottomofFigure829.IntheSaveAsdialogthatappearsnext,youmustspecifythelibrarywhereyouwanttosavethe documentasshowninFigure8-30.ThislibrarymustbeonethatyourSharePointadministrator previouslydefinedasatrustedlibraryusingExcelServices.
414
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-30.Selectingalocationtosavetheworkbook WhenyouclickSave,ExcelsendstheworkbooktoSharePointandopenstheworkbookinyour browserasshowninFigure8-31.Ifyoualreadyhaveaworkbookintheselectedlibrarywiththesame nameasthecurrentworkbook,Excelpromptsyoutoreplacetheexistingworkbook.SelectYesto replacethecurrentworkbookwhenpublishinganupdate.
415
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-31.TheExcelworkbookdisplayedusingExcelServicesinSharePoint
IntroductiontoStatusIndicators(KPIs) Keyperformanceindicators(KPIs)provideavisualcommunicationtoolthatshowsprogresstowarda goal.BetweenSharePointServer2007andSharePointServer2010,MicrosoftdecidedtorenameKPIs, nowcallingthemstatusindicators.EachiteminaStatuslistmeasuresoneitem,andeachitemhasa desiredgoalvalue.Thelistcanthenshowthecurrentvalueofthatitemandcompareittothegoal. Basedonrangesofvaluesdefinedbythepersonbuildingthestatusindicator,youcanthendisplaya color-codedstatusiconillustratinghowwellthecurrentvaluecomparestothedesiredvalue. Projectteams,managers,andbusinessesusestatusindicatorstogainaquickvisualcheckonthe progressoftheirprojects,todeterminewhetheremployeesaremeetingproductiongoalsorwhether salesaremeetingexpectations.Statusindicatorscanquicklyillustratewhetheryouareahead,behind,or onschedulewithwhateverbusinessfactorsthestatusindicatormeasures.
StatusTypesDefined TherearefourbasictypesofstatusindicatorsavailablewithinSharePoint,basedonthesourceofthe datausedtocreatethem.Whilethedatasourcemaydiffer,thebasiclookandmethodofusingstatus indicatorsdoesnot.
416
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
•
SharePointlists:YoucanuseexistingSharePointliststodevelopstatusindicators. Forexample,supposeyoutrackissuesatyourcompanyusinganissue-tracking list.Byusingsimplecounts,youcancomparethenumberofoutstandingissuesto adesiredgoalforyourhelpdesktoseehowwelltheyhandleincomingcalls.For morecomplexissues,youcouldtrackthetimeneededtoresolveissuesbyyour programmingstaffandcomparetheaverageelapsetimetoadesiredgoal.
•
Excelworkbooks:YoucanlinkastatusindicatortoanExcelworkbookstoredina SharePointlibrary.Updatedworkbookdatacanthendrivethecurrentvalueinthe statusindicator.UsingtheExcelwebpartonthesamepage,youcandisplaya detailedlistofthedatabackingupthestatusindicatororyoucanusetheDetails linkwhendefiningthestatusindicatortopointtoanotherpagewhereyoudisplay thespreadsheet.
•
SQLServerAnalysisServices:AnalysisServicescanalsoprovideinformationto createstatusindicators.Thismethodcansupplytrackingdatafromsystems maintainedinSQLServer.Withalittlework,youcanbuildperformance informationintoatableandthenusethatinformationthroughAnalysisServices tocreateSQLperformancestatusindicators.
•
Manualdata:Ifyoudonothaveaformalwaytocollectdatausingoneofthe precedingmethods,youcanalwaysmanuallyenterthegoalanditscurrentvalue inthisstatusindicatortype.
CreatingaStatusList Creatingastatuslistfollowsmanyofthesamestepsusedwhencreatingotherlisttypes.Youbeginby goingtothesitewhereyouwanttocreatethestatuslist,whichinthiscaseisthesameteamsiteinwhich wehavebeenworkingourotherexamples.Onceyouhaveitopened,clickSiteActionsandthenselect ViewAllSiteContent.IfyourcurrentscreendisplaystheQuickLaunchmenu,youmightbeableto clicktheViewAllSiteContentlinkdirectlyfromthetopofthismenu. Next,clickCreateontheAllSiteContentpage.OntheCreatepage,locatetheStatusListtemplate. Thoptionspageforthistemplateasksforthesamebasicinformationasmostotherlists,includingthe listname,description,andnavigationoptionsasshowninFigure8-32.
Figure8-32.CreatingaKPIlist
417
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Supplyanameforthelistandenteranoptionaldescription.Fortheexamplehere,Iwanttocreatea statuslisttotrackproblemcalls.Therefore,IsuggestthenameProblemCalls.Afterprovidinga descriptionforthelist,choosetheNoradiobuttonunderthequestionDisplaythislistontheQuick Launch?Finally,clicktheCreatebuttontobuildthelist. Openingthestatuslistsettings,youcanseethatthedefaultcolumnsforeachitemincludeacolumn namedIndicator,whichdescribesthestatusindicator.TheGoalcolumnrepresentstheminimum acceptablevaluefortheitemthatrepresentssuccessforthestatusindicator.TheValuecolumn representsthecurrentmeasuredvaluefortheitem.Finally,theStatuscolumndisplaysaniconthat visuallyindicateswhethertheitemhasachievedthedesiredgoal.
CreatingaStatusListwithManuallyEnteredInformation Toseehowtodefineastatusindicator,clickthedownarrowtotherightoftheNewoptioninthelist’s menubar.Figure8-33showsthatthismenuletsyouselectfromthefourdifferentdatasourcesforthe statusindicator.IfyouclicktheNewbutton,notthedrop-downarrow,SharePointassumesyouwantto createthedefaultstatusindicatortype,oneusingaSharePointlist.Let’sbegininsteadwiththesimpler (butmanuallyentered)type,byselectingFixedValuebasedStatusIndicator.
Figure8-33.Selectingthetypeofindicator WhileSharePointcallsthefirstpropertyofastatusitemName,itappearsintheIndicatorcolumn whenyoudisplaythestatuslist.Youmustsupplythisproperty.Youcanoptionallyenterthe Descriptionpropertytoexplainthepurposeoftheindicator;Irecommendusingthisproperty.In addition,youmightwanttoindicatewhetherhighvaluesorlowvaluesrepresentsuccess.Then,using theoptionalCommentssection,enteranexplanationofhowyoumeasurethecurrentvalueforthis itemandperhapsevenhowyouselectedthestatusrangevalues.Figure8-34showsthefirstpartofthe pagedefiningthepropertiesofastatusitem.Thesefirstthreepropertiesarecommontoallfourstatus indicatortypes.
418
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-34.DefiningtheNameandDescriptionpropertiesoftheindicatorandenteringComments Next,youmustenterthecurrentvaluefortheindicator.Becauseyouhaveselectedamanual indicator,youmustopenandeditthisitemeachtimethevaluechanges.Sincethisexampletracksteam attendance,youmayfindyourselfdoingthisdaily. Figure8-35alsoshowsthatyouhavetodefinetherulesforthestatusicon.Youcanchooseto representbettervaluesbyhigherorlowervalues.Inthecaseofattendance,highervaluesrepresent bettervalues.Therefore,let’sassumethatyouhavemetyourattendancegoalwhen18ormore employeesoutof20comeintoworkeachday.Ifonly16or17employeesarrive,youwanttoraisea warningtomanagement.Iffewerthan16employeesarrive,youwanttodisplaythedangericon.
Figure8-35.Definingtheindicatorvalueandstatusrules
419
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Afterdefiningthestatus,clickOKtoseehowitappearswhenyoudisplaythelist.Figure8-36 displaysthestatuslistwiththissingleindicator,showingthatyoumighthavethestartofanabsentee problem.
Figure8-36.Viewingtheresultingindicatorinthelist Ifyouwanttoseewhathappenswhenyouchangethecurrentvalueoftheindicator,clickthestatus itemandselectEditIndicatornotfromtheribbon,butfromthelineofcommandsimmediatelyabove theindicatorasshowninFigure8-37.Notethatthereareonlytwootheroptions,onetodeletethe indicatorandanothertomanageitspermissions.
420
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-37.Edit,delete,ormanagepermissionsoftheindicator
CreatingaStatusListUsingaSharePointList Let’snowlookatastatusindicatorthatusesaSharePointlist.I’vecreatedaSharePointlistthattracks thenumberofactiveapplicationsystems.SupposeIdefinesuccessashavingatleast90%ofoursystems running,andfailureashavinglessthan80%ofoursystemsrunning.(OK,Iknowthatmaybelowfor yourorganization.Ofcourse,youcanenteryourownnumbers.) Ratherthantrackthisinformationmanually,supposethatyouhaveaSharePointlistnamed SystemsSupportedthatincludesanitemforeachapplication.Furthermore,supposethatthislisthasa fieldnamedStatusdefinedasachoicefieldtypewithfourpossiblevalues:OK,BeingRepaired,Down, andRetired.Youcanusethislisttosupplythedataforthestatusindicator.Thatway,bymaintaining thestatusinthelistSystemsSupported,SharePointcanupdatethestatusindicatorautomatically. Figure8-38showsthefullpropertieslistforthisstatusitem.Thenewoptionsbeginwiththe IndicatorValuesection.Inthisarea,youmustenterthenameoftheSharePointlistandviewthatyou wanttousetocalculatethestatusvalue.NoticethatyoucanthencalculatethecurrentKPIvalueinone ofthreeways: •
Simplytotalthenumberoflistitemsintheselectedview.
•
Calculatethepercentageoflistitemswithaspecificvalueintheviewbasedona Booleanexpression.
•
Calculateusingalllistitemsintheview.
421
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-38.DefininganindicatorbasedonaSharePointlist
422
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
TheDetailslinkallowsyoutoturnthestatusindicatornameintoahyperlinkforthecurrentKPI itemthatdisplaysdetailsaboutthecurrentKPIvalue.TheUpdateRuleslinkletsyoudecidewhetherto recalculatetheindicatorvalueforeveryviewer.ThiscanbeespeciallyusefulwhenusingaSharePoint listinwhichtheselectedviewdisplaysonlythecurrentuser’sdata.Youcanalsochoosetoupdatethe statusvaluemanuallybyclickingtheUpdateoptionintheStatusindicator’sdrop-downmenu.This optioncanbeusefulifthebackgrounddatathatsupportstheindicatorvalueisdynamicallychanging. Inthiscase,youwanttocalculatethepercentageofsystemsthathaveaStatusfieldvalueofOK. However,ifyouhadalistthatincludedtheamountoftimeasystemwasdown,youcouldsumthedown timeacrossallsystemsforthetimeperiodrepresentedbytheview.
CreatingaStatusListfromanExcelWorkbook Next,ifyouuseanExcelworkbooktosupplyyourindicatorvalues,youmustsupplytheURLofthe workbookpublishedonyourSharePointsiteusingExcelServices.Thenyoumustentertheaddressof thecelltouseforthevalueorreferencethecellbyacellname.Ifyouclicktheicontotherightofthe value,thepop-upwindowdisplaystheworkbookandletsyouselectthecelltousenotjustforthe IndicatorValue,butalsofortheIndicatorGoalandtheIndicatorWarningvalues.Infact,youcan clicktheworkbookiconnexttoanyofthesethreevaluesonthemainpropertypageforthestatus indicatortoreturntotheworkbooktoverifyorselectnewcellstouseforthesevalues.Thisdoesnot meanthatyoumustusecellvaluesfortheIndicatorGoalorIndicatorWarning.Youcanentermanual numbersforthesevaluesaswell.Figure8-39showsjustthisportionofthestatusindicator’sproperties, aswehavealreadydiscussedtheotherpropertiesofthestatusindicatorforthepreviousstatustypes.
Figure8-39.DefininganindicatorbasedonanExcelworkbook
423
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
CreatingDashboardswithExcelandStatusIndicators Whatisadashboard?WithinSharePoint,youcandefineadashboardasanywebpagethatdisplays businessinformation.Oftendashboardsusegraphicstodisplaydata,buttheydonothavetoinclude graphics.Whattheymustdoisshowtrendsthatcanhelpidentifyproblems,opportunities,ordecision points.Somepeoplemightrefertothisabilityasanat-a-glancehealthcheckforabusinessofitskey indicators.However,thefactisyoucanusedashboardsfortrackingprojectprogress,employee satisfaction,customerpurchasingtrends,andmanymorethings.Thevalueofagooddashboardliesin itsabilitytohelpmanagementmakedecisionsthatbenefittheorganization.
BuildingaDashboardfromtheDashboardTemplateintheReport Center SohowcanyoucreateadashboardinSharePoint?First,openyourteamsiteandclicktheoptionView AllSiteContentintheSiteActionsmenu.NextclickCreateatthetopoftheAllSiteContent.Then selecttheLibraryfilterandclickontheReportLibraryoption.Youmustsupplyanameforthelibrary alongwithanoptiondescription.Aswithmostotherobjects,youcanalsodeterminewhethertheobject appearsinthepage’sQuickLauncharea.Becauseit’salibrary,however,youcanalsodetermine whetherSharePointcreatesanewversioneverytimethatyoueditthefile.OnceyouhavetheReports libraryopen,displaytheDocumentsribbon.IntheNewgroup,clickonthelowerhalfoftheNew Documentoption.DonotjustclickthetophalfoftheNewoption,becauseSharePointmayassume thatyouwanttoaddareporttothelibrary.Fromthedrop-downmenu,clicktheoptionWebPartPage withStatusList.SharePointServer2007calledthisoptiontheDashboardpage. AsshowninFigure8-40,youbegindefiningyourdashboardbysupplyingapagenameandapage title.Youcanalsooptionallyenteradescription.Noticethatyoucannoteditthenexttwofieldsinthe Locationsection.SharePointdefinesthedocumentlibraryasareportslibrary,andyoucannotchangeit unlessyouhavemultiplereports-typelibraries.Unlessyouhavedefinedafolderstructureforthislibrary (rememberearlierdiscussionsaboutcreatingfolderstobetterorganizeyourfiles),thefolderalso defaultstothetop-levelfolder.Ofcourse,ifyouhavedefinedafolderstructure,youcanselectanyof yourexistingfoldersfromthisdrop-down.Thisisanotherreasonwhyyoushouldplanyourfolder structurebeforebeginningtoadddocumentstoyourlibraries.
424
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-40.Creatingatwo-columndashboarddocument
■TipOfcourse,ifyoudoprocrastinatebuildingoutyourfolderstructureuntilafteryouhavealreadycreated documents,notallislost.YoucansimplyswitchtotheWindowsExplorerviewofyourlibrarybyusingtheoption OpenwithWindowsExplorerintheActionsdrop-downmenu.Thereyoucandraganddropdocumentsbetween foldersandevencreatenewfolders.
Inthenextsection,CreateLinkinCurrentNavigationBar,youcandeterminewhethertocreate anentryintheQuickLaunchmenu.Hereyouhavethreeoptionsforwhichsectiontoaddthe dashboard:Documents,Lists,andDiscussions.Justthinkofthesethreeoptionsascategorieswhere youcanstorethesespecialwebpagesfornow.
425
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
IntheDashboardLayoutsection,youcanchoosefromthreelayouts,whichdifferbythenumberof columnsinthelayout.Eachlayoutrepresentsapagetemplatespeciallydesignedfordashboardsand combinesbydefaultstatuslists,Excelwebparts,textareas,contactinformationofthepersoncreating thepage,andmore. Thelastoptionletsyoucreateanewstatuslistautomatically.IfyouletSharePointgenerateanew statuslistforyou,itnamesthelistusingacombinationofthecurrentpagenamefollowedbythetext “StatusIndicatorDefinitions.”Thatisnotabaddefault.Youcanalsocreateadashboardusingan existingStatuslist,oryoucoulddecidenottoincludeastatuslistatallonthedashboard.What?A dashboardwithoutKPIs? Actually,despitecallingthiswebpageadashboardandleadingyoutothinkthatitissomething special,itisnot.Thedashboardtemplateprovidesnothingthatyoucannotre-createstartingfroma blankwebpartpagewiththesamewebpartzones. Sowhycreatethedashboardthisway?Itcansaveyoualittletimebypre-positioningcommonweb partsusedbydashboardsonawebpageandthenautomaticallyplacingthatpageinaseparate navigationgroupintheQuickLaunchmenu.
OrganizingWebPartsintheDashboardWebPartZones Solet’scontinuelookingatwhatyougetwhenyoucreateatwo-columndashboard.Figure8-41shows theinitialtwo-columnwebpage.Thispageactuallyplaceseachofthewebpartsinitsownwebpart zone.Thesezonesinclude
426
•
TopLeftzone
•
TopRightzone
•
Filterzone
•
MiddleLeftzone
•
MiddleRightzone
•
BottomLeftzone
•
BottomRightzone
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-41.ThedefaultdashboardpagecreatedbySharePoint Youcanjustimaginewhatyouwouldgetwithathree-columndashboard.Actually,don’timagine, goaheadandtryit.Youcanalwaysdeletethepageifyoudonotwanttokeepit. Ifyoudonotwanttouseallofthesewebparts,noproblem;justeditthepageandclosethem.Ifyou donotlikethewaySharePointlaysoutthepage,justeditthepageanddraganddropthewebpartsto locationsyoudolike.Doyouwantdifferentwebparts?JustclickAddaWebPart,foundatthetopof eachwebpartzone,andselectfromthelistofavailablewebparts.Rememberthatyoucancreate“new” webpartsbydefiningnewlistsusinganyofthelisttemplatesavailable.WhileMicrosoftprovidesa collectionofcommonlyusedwebpartswithSharePoint,youcangoonlineandfindfreeorrelatively inexpensivewebpartstodoallsortsofthings.Onesiteyoudefinitelywanttocheckoutis www.codeplex.com,aMicrosoftOpenSourcecommunitysitewithwideselectionoftoolsandutilities, andinthiscase,SharePointwebparts.Inaddition,ifyoustillcannotfindthewebpartthatwilldowhat youwant,youcanalwaysgodownthehalltothedenofprogrammersthecompanykeepsaroundfor emergenciesandaskthemtobuildawebpartforyouusingVisualStudio.Ifyourcompanydoesnot employadenofprogrammers,youcanfindmanyconsultantsthroughtheInternetwhocangladlybuild thatwebpartforyou.
AddingKPIstoYourDashboard Let’scontinuebymodifyingtheKeyPerformanceIndicatorswebpartfoundintheMiddleLeftwebpart zone.IfyoudonotalreadyhavethepageinEditmode,selectEditPagefromtheSiteActionsdropdownmenu.WiththepageinEditmode,openthedrop-downmenuassociatedwiththeEditbutton andselecttheoptionModifySharedWebPart(ifyouareusingWebPages)orEditWebPartifyouare usingWikiPagesforyourcontent.Whenyoudothis,anoptionpanelopenstotherightofthepage.
427
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
■NoteIfyouclickModifySharedWebPart(orEditWebPartfromaWikiPage)anddonotseetheoptionpanel, itmaybethatyourscreenisnotwideenough.Youcouldgooutandbuyanew24"wide-screenpanel.Asmuch funasthatmightbe,however,thelessexpensivesolutionistolookforthehorizontalscrollbaratthebottomof window.Youshouldseethatyoucandragthebuttoninthebartotherighttobringtheoptionpanelintoview.
Figure8-42showsthetopportionoftheoptionpanel.Thissectionusuallyincludesmostofthe uniquepropertiesforthecurrentwebcontrol.Mostoptionpanelsalsohavesectionsnamed •
Appearance
•
Layout
•
Advance
SharePointleavestheseothersectionscloseduntilyouchoosetoseeonebyclickingtheboxwiththe plussigntotheleftofthesectionname.
Figure8-42.SelectingaKPIlisttodisplay First,youmustdefinetheKPIlistyouwanttodisplayinthewebpart’sfirstoption.Youcanenter therelativeURLforthislistbeginningwiththerootofyoursite.Alternatively,youcouldclicktheiconto therightofthefieldforasimplerwaytocreatethisreference.Thisiconletsyousearchyoursiteforthe KPIlistasshowninFigure8-43.Whenyoufindthelistyouwanttouse,double-clickit,orclickitonce andclickOKtoselectthelist.
428
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-43.NavigatingtotheKPIlistratherthanenteringitsURLmanually Thesecondoption,ChangeIcon,letsyoudoexactlythat.Youcanchoosefromfourdifferenticon stylesforyourvisualstatusindicators,asshowninFigure8-44.Youhavealreadyseenthedefault indicatorsinseveralillustrations.TheCheckmarksconsistofcoloredcircleswitheitheracheckmark, exclamationpoint,orXintheircenters.TheFlaticonsconsistofplaincoloredcircleswithnosymbols. Finally,theTrafficLightsconsistofblackboxeswithagreen,yellow,orred“bulb”inthem.Ifyouwant toseetheseforyourself,selectanyoftheicontypesandthenclicktheApplybuttonatthebottomofthe optionpanel.TheApplybuttonupdatesthecontentsoftheeditedwebpartbutleavestheoptionpanel open.
Figure8-44.ChangingtheKPIstatusicon
429
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-45showstheconfiguredKPIlist:ProblemCalls,whichyoubuiltearlier.Noticethatthe list,eveninEditmode,displaysthelist’smenuselections.Rightfromthisscreen,youcanopentheNew drop-downmenuandaddanewindicatortothelist.YoucanalsoopentheActionsmenuandchange theicons,resettheorderofindicators,andupdatetheirvalues.Theresetorderofindicatorsoption placestheindicatorsinalphabeticalorder.Thelastfeature,toupdatevalues,canbeespeciallyuseful whenworkingwithdatathatchangesfrequently.IfyouhavemanuallyenteredKPIvalues,thisoption doesnotallowyoutochangethevalues.
Figure8-45.DisplayingtheKPIlist Thelastoptioninthelist’smenuletsyoulimitthedisplaytoonlyproblemindicators.Ifyouhavea longlistofindicators,forwhichmostareOK,youcanhelpmanagementfocusonproblemissuesby displayingonlytheindicatorsthatneedattention.
■NoteThestatuslistmenuremainsvisibleafteryoupublishthepage,sothatusersviewingthepagealsohave accesstoit.Usingpermissions,youcancontrolwhichuserscanchangethestatuslist,makingthelistread-only forthevastmajorityofusers.
Asyoumoveyourmouseovertheindicators,adrop-downboxappearstotherightoftheindicator text.Youcanopenthismenutoeditthepropertiesoftheitem,assumingyouhavetheappropriate permissions.Youcanalsomoveindividualindicatorsupanddowninthelist,creatingacustomorder. Finally,Ihavemadeseveralotherchangestothedashboard,resultinginthepageshowninFigure 8-46.Theseadditionsinclude
430
•
AddingsomebasictextasatitleinaContentTextwebpartintheUpperLeftzone
•
AddingthegraphicalresultsofasurveyonemployeemoraletotheMiddleRight zone
•
AddingreferencestopublishedExcelworkbookstothetwoExcelwebpartsinthe LowerLeftandLowerRightzones
CHAPTER8■ PUBLISHINGEXCELWITHEXCELSERVICES
Figure8-46.Thefinalsampledashboardpage
Summary ThischapterstartedbyaskingwhetherExcelwastheweakestlinkintheMicrosoftOfficelineupof productsintermsofcollaborationwithSharePoint.Inthepreviouschapter,yousawthatSharePointhas deprecatedakeyfeatureofsharingdatabetweentwosystems,synchronization.WhileIdidshowaway torecoverfromthisweakness,youmaystillfeelthatExceldoesnotcontributetocollaborationas thoroughlyassomeotherproducts.
431
CHAPTER8■PUBLISHINGEXCELWITHEXCELSERVICES
Todemonstratethatthereisstillalotyoucando,Ilaunchedthischapterbyshowinghowyoucan publishastaticExcelworkbooktoaSharePointsite.Onceaworkbookispublished,aservicecalledExcel Servicescanopenanddisplayitinyourbrowserwithvirtuallynolossofvisualfidelitycomparedto Excelitself.ThisfeatureallowsusersofyoursitewhodonothaveExcelinstalledontheirlocal computerstoshareinthedatafromtheworkbook,atleastbyviewingit.However,astaticworkbook doesnotallowinteraction. Toallowapublishedworkbooktobecomealittlemoredynamic,Inextintroducedtheconceptof parameters.Visitorstoyoursitecansupplytheirownvaluestotheparametersandthenrecalculatethe spreadsheetusingthosevalues. ThenyoulookedatReportCentersites.AnewfeatureexaminedherecalledKPIsprovidesawayto quicklyandvisuallyshowimportantmeasurablefactorsinanorganization.Whenmanagementsetsa goallevelforeachfactor,theycanthenmeasuretheactualvalueofthefactorandcompareittothegoal. Dependingonhowwelltheactualvaluecomparestothegoal,theKPIlistcandisplayastatusiconthat ataglanceshowswhichkeyfactorshavebeenmetandwhichneedfurtherattentionbymanagement. ThechapterclosedbyshowinghowtodisplayExcelworkbooksonawebpagealongwithotherweb parts,suchastheKPIlist,togivemanagementadashboard,asingle-screenviewofthestatusoffactors importanttothesuccessoftheirorganization.WhileSharePointprovidesadashboardtemplatethatcan giveyouaheadstartinbuildingsuchawebpage,Iendedbyshowingthatyoucouldcreatethesame basicwebpagefromablankwebpagethathasaccesstothesamewebparts. Therefore,withthehelpofExcelServices,Excelmaynotbetheweakestlinkafterall.Itcertainly displayssomeinterestingabilitiesthatyoumightbeabletotakeadvantageofinyourorganizationto helpmanagementviewprotectedversionsofyourworkbooks.Thedecisionisyours.
432
CHAPTER 9
■■■
An Introduction to Creating Forms with InfoPath IknowmanypeoplewhohaveinstalledMicrosoftOffice2010oreven2007ontheirdesktopmachines. Onpracticallyadailybasis,theyopenanduseMicrosoftOutlookandMicrosoftWord.Theymayeven useExcel,PowerPoint,andoccasionallyAccess.Nevertheless,manyofthemhavenevernoticedalargely undiscoveredtoolnamedInfoPath,whichfirstbecamepartoftheOfficeSuitein2003andwhich Microsofthassignificantlyenhancedsincethen. InfoPathisimportanttoyourSharePointimplementationbecauseitbringsaneasy-to-useform designtoolbasedonXML(ExtensibleMarkupLanguage)tothedesktopandyourbrowser.Withit,you cangatherdatafromuserswithouthavingtowriteapplications,andyoucanthensavethatdatainXML files,databases,orSharePointlists. ThereasonInfoPathworkswellwithSharePointisthatitisbasedonXMLtechnologyjustlikethe restofOffice2010.WhenInfoPathsavesaform,itcreatesanXSNfile.Thisfileactslikeacabinet(CAB) filetoholdacollectionoffilesneededbytheform.ThesefilesincludeXMLSchemaDefinition(XSD) filesandExtensibleStylesheetLanguage(XSL)filesthatprovideaformaldefinitionoftheXMLdata, suchaselementnames,datatypes,andattributesforeachfieldusedinaform.InfoPathalsousesXSL Transformation(XSLT)filestodefinedifferentviewsofthesamedataorsubsetsofthedata.Becausethe formdataisstoredinXML,youcanstartbuildingaformfromanexistingXMLdataschema,oryoucan beginwithablankformandletInfoPathbuildthedataschemaforyou. Perhapsallthesestrange-soundingtechnologiesscaresomepeopleawayfromusingInfoPath. However,youreallydonotneedanin-depthknowledgeofthesetechnologiestocreateanduseInfoPath forms,asIwillshowinthischapter. YouwillexploreInfoPath’sdesignenvironment,whichincludesarichsetofcontrolsforbuilding formsthatcanbedisplayedthroughyourbrowserandthuswithinSharePoint.Itincludesallthepopular controlsneededforforms,rangingfromstandardtextboxes,lists,anddatepickerstorepeatingand optionalsections,attachments,hyperlinks,andmore.RatherthanbuildingASP.NETpagestocollect dataoveryourinternet,youcanskipmostoftheprogrammingtasksforsimpledata-gathering applicationsbycreatinganInfoPathformandthenpublishingitinalibraryonyoursite.Userscan accessyourformtemplateandfillintheirdataonline.Youcanthensavethedatacollectedbyan InfoPathformlocallyinanAccesstable,aSQLServerdatabase,orevenaSharePointlist. InfoPathalsoletsyouaddworkflowstoformsusingWindowsWorkflowFoundationandthen publishtheformsthroughSharePoint.Workflowsallowyoutodefineaworkprocessfortheform.For example,afteryoufillinanabsencerequestform,youprobablyneedtosubmitthatformtoyour supervisor.Heorshemustthensignthedocumentbeforeforwardingittoyourdepartmentsecretary. Thesecretarythenenterstheinformationintoyourpayrollsystem.Youcanautomatethisentireprocess
433
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
topasstheformfromonepersontonext,sendinge-mailstoeachrecipientthatnotifythatpersonofa tasktocomplete.Moreover,becauseSharePointtracksworkflows,youcanalwaystellthestatusofa documentintheworkflow.TogetherwithSharePoint,InfoPathimprovestheefficiencyofyourwork processes. Inthischapter,youwillseehoweasyitistocreateanInfoPathformfromscratch,aswellashowto takeexistingWordandExceldocumentsandconvertthemtoInfoPathforms.Youwillalsolookathow toworkwithdifferentdatasources.Thisgivesyouthefoundationyouneedtopublishtheseforms withinSharePoint(thesubjectofChapter10),sothatallusersofyoursitecanaccesstheseformsandfill themin.TheadvantageofpublishingyourformsonSharePointsouserscanfilltheminusingtheir browseristhattheydonotneedtohaveInfoPathinstalledontheirdesktop.Ofcourse,theperson creatingtheformmusthaveInfoPathandalicensetocreatecontentontheEnterpriseeditionof SharePoint.Foradditionalquestionsaboutlicensingatyourorganization,contactyourMicrosoft representative.
WhyYouShouldUseInfoPath Idonotknowmanyorganizationsthatdonotcollectdatafortheirbusinessfromcustomers,potential customers,suppliers,partners,oreventheirownemployees.Formshavealwaysprovideda standardizedwaytocollectinformation,ensuringthatallemployeescollectallnecessaryinformationin aconsistentmanner.Sometimescompaniessimplystorethisinformationonthepaperformusedto collectit.Often,however,someonemustenterthisdataintoacomputersystem. Usingpaperformstocollectinformationexposestheprocesstoseveraltypesoferrors.First,ifthe userhandwritesthedataintotheoriginalform,therecouldbeaprobleminterpretingthehandwriting. Second,evenifthedataentryclerkcanclearlyreadthedataontheform,shestillcouldcreateerrors whensheentersthedataintoacomputersystemthroughsimpletypingmistakes.Forexample,suppose someonefillsinanapplicationformforacarorhomeloan.Whetherbecauseoftheapplicant’spoor writingoratypingerrormadebyadataentryclerk,baddatasenttothecreditbureaucanresultinthe denialoftheloanrequest. Inaddition,manybusinessprocessesuseacollectionofformstocompleteatransactionsuchas buyingthatcarorhome.Typically,severalfieldsappearonalloftheseforms,suchasthenamesofthe peopleinvolvedinthetransaction,theiraddresses,phonenumbers,worklocations,andperhapsother fieldsaswell.Eachtimethepersoncollectingthisinformationhastoreentertheinformation,thereis onemorechancetoenterthedataincorrectly.Withfullyintegratedelectronicforms,oncetheperson collectingthedataenterstheinformation,subsequentformscanretrievethedataandpre-fillrepeated fields,makingtheentireprocessrunfasterandwithlesschanceoferrors. Asmentionedinthefirstsection,youcanpublishInfoPathformsthroughtheInternet,allowing peoplenotjustinsideyourcompany,butalsooutsideyourcompanytoview,print,andfillintheform. WiththeincreasinguseofmobiledevicessuchasBlackBerryhandhelds,youmightwanttocreateforms thatuserscanfillinviaoneofthesemobiledevices.UserscanevenfillinInfoPathformsoffline.Once theydownloadaform,theycandisconnectfromtheInternetandfillintheformattheirleisure.Once theycompletetheform,theycanreconnecttotheInternetandsubmitit. Inasimilarway,InfoPathformsalsosupportTabletPCusersbyallowingthemtowritewiththeir tabletpenstofillintheformfieldsdirectly.InfoPathcanthenautomaticallyconvertthis“ink”intotext. YoucanevenallowTabletPCuserstoaddhand-drawnsketchestoillustrateinformation;thesecanbe includedinatrafficaccidentreportusedbythepolice. AnotherbenefitofusingatoollikeInfoPathformscomesfromtheabilitytosharetheresultingdata withotherOfficeapplications.Youcanevensendformsviae-mailandOutlook,exportthedatatoMS Excel,andthenpumpthedataintoanAccessorSQLServerdatabase.
434
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Byhavingusersfillinformselectronically,youcanhelpensurethattheyentercorrectdataby validatingthedataastheyenterit.Byusingvalidationrulesonindividualformfields,youcanprevent baddatafromgettingintoyourdatabase.Thecostofcorrectingdata-entryerrorsincreasesdramatically thefurtherthroughtheprocessthebaddatatravels.Therefore,flaggingbaddataasusersenteritcan savetimeandmoneybypromptinguserstocorrecttheirmistakesimmediately. Completingformsonlineratherthanonpaperalsoappealstothoseinterestedingoing“green.”For others,amorecompellingbenefitmightbethattheuseoflesspaperforformssavesmoney.Your companycanbuylesspaper,cutprintingcosts,andnothavetobuildandmaintainstoragefacilitiesto keepthecompletedforms. BecauseInfoPathformsallowyoutodisplayandhidedifferentsectionsofareport,youmightbe abletocombineseveralsimilarformsintoasingleformandthenprovideawayforuserstohidethe portionstheydon’tneedtoworkwith.Differentviewsonthesamedataallowyoutocollectallthedata neededwithasingleform,andthen,throughdifferentviews,showsubsetsofthedatatodifferentusers withinyourorganizationbasedonwhattheyneedtoseeratherthansendingthemtheentireform.
ExploringtheInfoPathInterface OnehugechangefromOffice2007toOffice2010isthatMicrosofthassplitInfoPathintotwoprograms. Youusethefirstone,InfoPathDesigner,tobuildyourforms.ThenyouandotherscanuseInfoPath Fillertofillinthoseforms.Infact,youcancreateanInfoPathformthatcanonlybefilledoutusing InfoPathFiller.TheprimaryfunctionofInfoPathFilleristolettheuserfillinanexistingformthat someonehascreatedusingInfoPathDesigner;itwouldbeusedeitherbecausetheformisnotbeing publishinginSharePointorbecauseitrequiresfeaturesthatawebbrowsercannotdisplay.Thischapter willfocusonInfoPathDesigner.
InfoPath Features That a Web Browser Cannot Display IfyoumustuseanyofthefollowingfeaturesinyourInfoPathform,youcannotdisplaytheresultingformin awebbrowser.Inthesecases,tousetheformyoumustopenitusingInfoPathFiller.
Objects: •
VerticalLabel
•
InkPicture
•
SignatureLine
Containers: •
RepeatingRecursiveSection
•
ScrollingRegion
•
HorizontalRepeatingTable
•
RepeatingChoiceGroup
435
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
•
HorizontalRegion
•
Master/Detail
Let’sfirstexaminetheInfoPathDesignerinterface.WhenyouopenInfoPathDesigner,the backstageforInfoPathdisplaystheNewgroupasshowninFigure9-1.Inthecenterportionofthe screen,theNewgroupdisplaysfourcategoriesofformtemplates: •
PopularFormTemplates
•
AdvancedFormTemplates
•
InfoPath2007FormTemplates
•
TemplateParts
Wewillexploreportionsofeachofthesetemplategroupsasweprogressthroughthischapterand thenext.Youwillalsoseeadditionalgroupsaddedtothispageaswedevelopandsaveformswe develop.
Figure9-1.TheinitialformtemplatesprovidedbyInfoPath
436
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
ModifyingaFormUsedwithaSharePointList TobeginourexplorationofInfoPath,oneoftheeasiestthingsyoucandoistomodifytheformusedbya SharePointlist.Asyouhaveseenmanytimesinpriorchapters,SharePointbuildsadefaultformfor editingtheitemsinaSharePointlist.Thedefaultformisfunctional,buthaveyoueverwantedtoeditthe form,addfields,changethelayout,orchangethetheme?WithInfoPath,youcanaccomplishallthose things. FromtheNewpageinthebackstagearea,clickSharePointListinthePopularFormTemplates group.Thistemplateletsyoustartfromanexistinglistform,addrules,modifytheformlayout,and changetheformatting.InfoPathfirstneedstogetthelocationoftheSharePointsitethathasthelistyou wanttocustomize.Figure9-2showsthefirstpageofthewizardthatpromptsforthesitelocation.
Figure9-2.IdentifytheSharePointsitelocation. OnthesecondpageoftheDataConnectionWizard(Figure9-3),youcanchoosebetweencreating anewlistforthesiteandworkingwithoneoftheexistinglists.Noticethatyoucannotcustomizealllists. Forexample,youcannotcustomizecalendarorstatuslists.However,youcancustomizemanyofthe otherlisttypes.
437
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-3.SelectanexistingSharePointlistforwhichyouwanttocreateacustomform. WhenyouclickNext,InfoPathattemptstoconnectwiththeSharePointsiteandlistthatyou specified.Thiscouldtakeafewseconds.Dependingonthepermissionsofyoursite,youmayalsoseea dialogpromptingforyourusernameandpasswordtoconnecttotheSharePointsite. TheinitialformthatInfoPathgeneratesforyoutocustomizeisnotexactlythesameasthedefault editformusedbythelist(seeFigure9-4).InfoPathgeneratestheformyoubeginwithbasedonthe columnsinthelist,creatingasingle-columnform.Thinkofthisformasastartingpointthatalreadyhas thecolumnsthatcurrentlyexistinthelist.Thisformactuallyconsistsofatwo-columntableinwhich thefirstcolumncontainsthecolumnlabelandthesecondcolumncontainsthecolumnvalue.Eachrow ofthetablerepresentsacolumnfromthelist.However,sincethisformisatable,youcaneasily rearrangetherowstoputthefieldsinadifferentorder.
Figure9-4.InfoPathcreatesastartingformforyourcustomization.
438
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Totheimmediaterightoftheform,youshouldseeapanelwiththetitleFields.Thispanelbegins withalistofallthefieldsdefinedfortheselectedlist.Whilethelineatthetopofthisformsaysthatyou candragafieldfromthelisttotheformtoaddit,youmaywanttowaitabitbeforedoingthat.Because allofthecolumnsappearinatableontheform,youmustfirstcreateanemptylocationwhereyoudrag thefield.Youwillseehowtodothatinamoment,butfirstlookattheoptionsbelowthelist. AlinkwiththetextShowadvancedviewappearsimmediatelybelowthefieldlist.Whenyouclick thislink,thefieldlistchangestoatreeviewofthefields.Usingthecheckboxbelowthelist,youcan displaythefieldtypesaswell.However,let’sreturntothebasicviewasshowninFigure9-5.
Figure9-5.TheFieldspanelshowstheavailablecolumnsintheselectedlist. BecauseIselectedtheAnnouncementslist,thelistincludesacolumnthatdefinesadatewhenthe announcementshouldexpire.WhenusingtheAnnouncementslist,youcancreateaviewthatdisplays onlythoseeventsthathaveanexpirationdateinthefuture.However,becausethereisnostartdate,the announcementwouldbeginappearingintheviewassoonasyoucreatedit.Ifyouwanttoenteran announcementthatwillnotbeginappearinguntilalaterdate,youneedanotherdatecolumn,whichI willcallPublishDate,thatdefinesthefirstdateonwhichyouwanttheannouncementtoappear. Althoughyoucouldgobacktothelist,selectListSettings,andaddthisnewcolumn,youcanuse InfoPathtoredesigntheeditformandaddthenewcolumnallatonetime.Tobegin,clicktheAddField optionundertheActionssectionoftheFieldspanel.
439
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteInfoPathenablestheAddFieldoptiononlywhendisplayingthebasicviewasshowninFigure9-5.Ifyour FieldspanellooksdifferentandthelinkbelowthefieldlistsaysShowbasicview,clickthislinktoreturntothe basicview.
ThisoptionopenstheAddFieldorGroupdialogshowninFigure9-6.Hereyoucandefinebotha displaynameandacolumnnameforthenewfield.Infact,asyoutypeintheDisplayNamefield, InfoPathautomaticallygeneratesthecolumnname.Itautomaticallyeliminatesblanksandother charactersthatSharePointdoesnotallowinacolumnname.
Figure9-6.Thedialogusedtodefineanewcolumnforthecurrentlist Next,youcanselectthedatatypefromthedrop-downlistoftypes.Dependingonwhichdatatype youselect,therestofthefieldpropertiesareenabledordisabledasappropriateforthatcolumntype.In thiscase,becauseweselectedaDatedatatype,theonlyotheroptionswecanspecifyaretheDefault valueandthecheckboxthatdetermineswhethertheusercanleavethedateblank. Afterenteringalltheparameterstodefinethefield,clickOKtocreateit.Youwillseethenewfieldin theFieldspaneladdedimmediately.However,youreallydonothaveaplaceinthecurrentformwhere youcanaddthisfield. Inthiscase,supposeyouwanttoaddthePublishDatefielddirectlyabovetheExpiresfield.You needtoinsertanewrowabovethisrow.Becausetheformconsistsofatable,youcanselecttheExpires rowbyclickingjustoutsideandtotheleftoftherow.Afterselectingit,switchtotheLayoutribbonthat appearsasasub-tabunderTableTools.IntheRows&Columnsgroup,clicktheInsertAbovebutton toaddanewblankrowimmediatelyabovetheExpiresrowasshowninFigure9-7.
440
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-7.ToinsertanewrowintheformabovetheExpiresfield,firstselecttheExpiresrow. ToaddthenewPublishDatecolumn,clickanddragthecolumnfromtheFieldspaneltothefirst columnofthenewrow.Whenyoureleasethemousebutton,youshouldseetheDisplayNameproperty forthecolumndisplayedinthefirstcolumnofthetableandadatetypefieldinthesecondcolumn,as showninFigure9-8.Notethatthedatetypefieldincludesabuttonontherightsideofthefieldthat whenclickeddisplaysapopupcalendartohelpyouselectthedate.
Figure9-8.ThenewAnnouncementsformwiththeadditionofaPublishDatecolumn Nowsupposeyouwanttomakesurethatforeveryannouncementaddedtothelist,thepublish dateoccursbeforetheexpirationdate.Becausethesearesimpledatefields,youwouldhavenowayto enforcethisrule.However,InfoPathletsyoudefinevalidationrulesforyourformfields.First,clickinthe fieldforwhichyouwanttoaddarule.ThenyoucanclicktheAddRulebuttonintheRulesgroupofthe HomeribbonasshowninFigure9-9.
441
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-9.Addaruletotheform. Thiscommanddisplaysadrop-downlistofpossibleruleexpressionsasshowninFigure9-10.For example,ifyoustartfromthePublishDate,youcouldchoosetheIsAfteroptionbecauseyouwantto raiseanerrorwhenthePublishDateisaftertheExpiresdate.Asyoupositionyourmouseoveryour desiredIFexpression,asecondmenuappearsnexttothefirstthatshowsyoutheactionsandformatting youcanuse.Inthiscase,let’sbeginbyselectingtheShowValidationErroraction.
Figure9-10.SelectanIfconditiontofiretherule.
442
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
IntheRuleDetailsdialog,youcanenteranabsolutevaluetowhichyoucancomparethePublish Datefield,oryoucanclickthefunctionbuttontoselectafieldasshowninFigure9-11.
■CautionYoumustselectthefieldfromtheInsertFormuladialogbyclickingtheInsertFieldorGroupbutton andthenselectingthefield.YoucannotsimplyenterthenameofthefieldinthetextboxshowninFigure9-11.
Figure9-11.Completetheruledetails. NowcompletethedefinitionoftherulebyclickingtheOKbutton.Next,youcangothroughthe AddRulecommandasecondtimeselectingthesameIFexpression,butthistimeselectBadunder formatting.Thisoptionwillformatthefieldvaluewithredtextonalightredbackground,makingit obvioustotheuserthatthevalueisincorrect.Whentheusercorrectstheproblem,thefieldstylereverts tothedefaultblacktextonawhitebackgroundsoyoudonothavetocreateaspecialruleforcorrected values. RatherthanselecttheAddRulecommand,youcanalsoselecttheManageRulesbuttoninthe Rulesgrouptoopenapanelalongtherightsideofthescreenthatshowsallofthecurrentlydefined rulesfortheselectedfieldasshowninFigure9-12.
443
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-12.TheRulespanelfortheselectedfield,PublishDate Usingthispanel,youcanclickinthetextboxafterthelabelDetailsfor:todefineauser-friendly nameforyournewrule.Ofcourse,youcouldleavethedefaultrulenamesprovidedbyInfoPath.Next, youmustdefineaconditiontotriggertherule.RememberthatvalidationtriggersconsistofBoolean expressionsthatmustevaluatetoTrueforinvalidconditions.WhenafieldreturnsTruefromthe validationexpression,InfoPathsurroundsthefieldwithadashedredboxtoshowyouthatthefieldhas aninvalidvalue.However,youshouldalsodefineascreentipthatdisplayswhentheBooleanexpression returnsavalueofTrue.Inthescreentip,youcantelltheuserwhythevalueisnotvalid. AlthoughInfoPathFormsServicescannotdisplayvalidationmessages,definingtheminyourform definitiondoesnotcreateafatalerrorconditionwhenyoudisplaytheform,becauseweb-basedforms simplyignorethisextrainformation.Ontheotherhand,iftheDesignCheckeridentifiesanerror,you shouldfixtheindicatederrorbeforepublishingtheformtemplate. Afterdefiningyourformrules,youcantestthembyusingthePreviewoption,foundintheForm groupoftheHomeribbon,asshowninFigure9-13.
444
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-13.UsethePreviewcommandtocheckhowtheformwouldappearinabrowser. Thiscommandopensanewwindowanddisplaysyourformasitwouldappearinabrowser.You cantestdifferentfieldvaluesintheformtoseeifthevalidations,actions,andformattingoptionsyou selectedworkasexpected.Figure9-14showsanexampleofapreviewoftheAnnouncementsformin whichthePublishDateisaftertheExpiresdate.InfoPathidentifiesthiserrorcondition,surroundsthe fieldwithadashedredbox,anddisplaysthescreentipboxtellingyouthatthe Publish Date must be less than the Expires Date.
Figure9-14.PreviewingtheformshowsavalidationerroronPublishDate. Atanypoint,youcanpublishyourformtoSharePoint.WhileyoucouldgodirectlytothePublish optionintheBackstage,youcanalsoaccessthepublishoptionsbyopeningtheInfopageasshownin Figure9-15.Infact,sincewearepublishinganupdatedformforanexistinglist,theQuickPublish optionmaybeyourfastestandeasiestchoice.However,beforeactuallypublishingtheform,youmay wanttofirstruntheDesignCheckertoensurethatnoincompatibilitiesexistbetweenyourformand yourSharePointwebsite.
445
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-15.UsetheDesignCheckertofindincompatibilitieswithyourSharePointwebsite. WhenyouclicktheDesignCheckerbutton,InfoPathchecksforincompatibilitieswiththeweb serverwherethelistislocated.Uponcompletingthecheck,itopensapanelalongtherightsideofthe screen,namedDesignChecker.Hereitwilllistanyerrorthatyouwouldneedtocorrectbefore publishingtheformbacktotheSharePointlist.Ifitfindsnoerrors,itdisplaysthetextshownin Figure9-16.
446
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-16.DesignCheckerreportsanyincompatibilities. Youarenowreadytopublishtheform.SinceyoubuiltthisformasaSharePointlistform,youcan usetheQuickPublishfeatureinBackstage’sInfopageshowninFigure9-17.InthePublishyourform section,youcanseethatInfoPathalreadyknowsthePublishlocation.Allyouneedtodoisclickthe QuickPublishbuttontopublishtheforminonestep.
Figure9-17.UsetheQuickPublishoptiontopublishalistformbacktothesite.
447
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
InfoPaththenconnectstotheSharePointserverandlocatesthesiteandlist.Itthenuploadsthe form,publishingitasthedefaultformthatuserswillseewhentheyaddanewitemtothelistoreditan existingitem.If,asinthiscase,youaddedfieldstothelist,InfoPathalsotakescareofaddingthosefields tothelist.However,ifyouhaveotherlistviews,youwillneedtoediteachviewmanuallytoidentify whereyouwanttoaddthenewfield.Aftertheuploadcompletes,InfoPathdisplaysonelastdialog, tellingyouthatitsucceededinpublishingtheform.Italsoprovidesalinkinthedialogthatletsyouopen thelistinyourbrowserifyoudonotalreadyhavethelistopen.
Figure9-18.Thedialogthatappearsafterpublishingcompletesletsyouopenthelistinthebrowser. Totestthenewform,clickthelinkinFigure9-18.Withinafewmoments,thelistappears.Then eitheraddanewitemtothelistorclickanexistingitemtoeditit;eitherway,you’llseethenew uploadedformasshowninFigure9-19.
Figure9-19.Viewyourpublishedlistform.
448
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
NowthatyouhaveseenhoweasilyyoucancreateanewformtoedityourSharePointlists,you mightalsowanttolookattheSharePointFormLibrarytemplatetobuildformsthatuserscanfillout andsavetothelibrary.PerhapsyouwanttocreateaformthatcolleaguescanusewithinOutlooktofill indataandsubmitinformationbacktoyou.Ratherthanspendingtimeherelookingatthesesimilar templates,let’sseehowtocreateanewformfromablanktemplate.
CreatingaFormfromaBlankTemplate Tocreateaformfromablanktemplate,youagainbeginbyclickingtheFiletabtoopenInfoPath’s BackstageareaasshowninFigure9-20.WithinthePopularFormTemplatesgroup,selecttheBlank template.Intherightsidepanel,InfoPathtellsyouthatwhenyoucreateablankform,youcanpublish thatformtoeitherSharePointoranetworklocation.ClicktheDesignthisFormbuttontoopenanew blankform.
Figure9-20.InfoPath’sNewpageintheBackstagearea
449
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteAfteryouhavecreatedaformandsavedit,youcanreopentheformbyusingtheRecentareaofthe Backstage.Thisoptiondisplaysalistoftherecenttemplatesyouhaveworkedwith,inthemainpartofthepage. Youcanclickanyofthesetemplatestoreopenthemandcontinueworkingonthem.Ifithasbeensometimesince youlastworkedonthetemplate,youmayneedtoclickOpenintheFilemenutonavigatetothenetworkor SharePointlocationwhereyousavedthetemplate.
TheredesignofSharePointtouseAjaxhaseliminatedinInfoPath2010andSharePoint2010many ofthecontrollimitationsofSharePointServer2007whencreatingforms..Therefore,younolongerhave toremembertocheckaboxliketheEnablebrowser-compatiblefeaturesonlycheckbox.Thecontrols youseeinInfoPathwhencreatingyournewformareallavailablewithinSharePoint2010. AsyoucanseeinFigure9-21,theblanktemplateconsistsofatitleareaatthetopofthepageanda bodysection.Ifyouclickanywherewithinthebodysection,anewribbon,namedTableTools–Layout appearsatthetopofthewindow.Thisbodysectionisjustasingle-celltable.WhileyoucanusetheSplit CellscommandintheMergegroupoftheLayoutribbontodividethebodyareaintosmallercellsto helplayoutyourpage,thereisanotheroptionthatyoumaywanttotryfirst.
Figure9-21.InfoPath’sblankSharePointformtemplate
450
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
ClickthePageDesignribbon.Then,fromthePageLayoutsgroup,clickthePageLayout Templatesbutton.Thisoptionopensadialogofferingthefollowingstartingpagelayouts: •
TitleOnly:Thisoptioncorrespondstothedefaultlayout.
•
TitleandHeading:Thisoptionaddsaheaderrowbeneaththetitleareaandabove thebodytablearea.
•
TitleandBody:Thisoptionincludesatextareabetweenthetitleandthebody areaswhereyoucanprovideadditioninformationtotheuserfillingintheform.
•
Colorbar:ThispagelayoutissimilartotheTitleOnlylayoutbutwiththeaddition ofnarrowcolumnalongtheleftsideoftheformthatyoucandisplayinanycolor toaddalittlestyletoyourform.
•
OffsetBody:Inthislayout,thebodysectionoftheformisoffsetasmallamount fromtheleftedgeoftheformbutotherwiseappearssimilartotheTitleOnly form.
Figure9-22showsthePageLayoutTemplatesdialog.
Figure9-22.InfoPath’sPageLayoutTemplatesdialog Ifyouwanttochangeyourformlayoutbeforeyoubegin,youshouldfirstselectanddeletethe defaultform.Otherwise,selectingaformfromthePageLayoutTemplatesinsertsthetemplateintothe existingformtemplate.(Youcouldusethismethodtobuildaformquicklythatconsistsofaseriesof formtemplatesthateachhavetheirownheadingandbodysection.) TodeletethecurrenttemplatesoyoucanbeginwithoneofthePageLayoutTemplatesinFigure922,clickanywherewithinthedefaulttemplate.Asmallsquareappearsinitsupperleft.Clickinthis squaretoselecttheentiretemplate.Ifyouright-clickthissquare,thedrop-downmenushowoptions thatyoucanperformontheentiretemplate.TheDeleteoptionopensafly-outmenuofthreesuboptions.SelectTablefromthisfly-outtodeletetheentireform,asshowninFigure9-23.
451
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-23.Deletethedefaulttemplatetobeginyourformwithadifferenttemplate. NowyoucangobacktothePageLayoutTemplatesdialogtoselectthelayoutthatyouwanttouse. Forthisexample,wewillbuildaformusedbyemployeestorequesttimeofffromwork.Therefore,let’s usetheTitleandBodypagelayouttostartourformdesign. Tobeginaddingcontenttoyourform,youmaywanttoprovideatitleatthetopoftheform.Click thetextClicktoaddtitleandenterthetitleRequest for Absence Form.Thepagetemplatepreformats thetitleareawithalargerversionoftheCalibrifont.However,youcanselectyourtextandchangeany ofthefontcharacteristicsincludingthefonttype,size,color,andanyoftheotherfontstylingoptions.
■NoteWhileitisoftentemptingtounderlinetitles,rememberthatunderlinedtextonawebpageoftenindicates tousersthatthetextactsasahyperlink.Forthisreason,youprobablydonotwanttounderlineyourformtitles. Ratherthanunderline,useotherfontcharacteristicstomakeyourtitlestandout,suchasaboldfontusingoneof yoursitebrandingcolors.Inaddition,IrecommendusingagenericfontlikeArial,whichappearssimilartoCalibri sothatallviewersofyoursiteseetheformexactlyasyoudesignediteveniftheydonothavethefontCalibrion theirlocalsystem.
Thebodytextareaprovidesanidealplacetodisplayinstructionsfortheusertofillintheform.In thecaseofthisRequestforAbsenceForm,youcanprovideaninstructionparagraphsuchasthe following: You must fill in a Request for Absence and submit the completed form to your supervisor in advance of any planned absence. Do not use this form for sick-time or other emergency leave situations. You can only make requests for absence in units of full or half days. Atthispoint,yourformshouldlooksimilartoFigure9-24.Notethattheareabeneaththebodytext saysAddtables.Inthenextsection,youwillbeginbuildingtheinteractiveportionoftheformusing tablesinthisarea.
452
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-24.ThestartofanewformusingtheTitleandHeadingpagetemplate Next,youneedtostartbuildingtherestoftheform.Whileyoucouldsimplystartaddingtextalong withthevariousinputcontrolsfortheuserstoenterdata,itwouldbedifficulttoarrangetheinputfields andcontrolsontheformneatly.Moreover,evenafteryoumanagedtoaddspacesortabstotryto positioneachitemwherewewantedit,asimplechangeofthefonttypeorsizecouldinstantlyrearrange theform. Tablescanprovidetheunderlyingstructureforaformthatcanretaintherelativepositionsoftext andfieldsevenasyouchangefonts.Tablesalsoprovideanorderedrowandcolumnstructurethatmost formsrequire.Onceplacedonaform,atable’scellscanbemergedandsplittocreatedifferentareasto displayinformationandtopromptfordifferenttypesoftext.Youcanalsoaddmorerowsandcolumns toatableasyouneedtoexpandorshrinkthenumberoffieldsontheform.However,youmaywantto considerhowyouwanttolayoutthecontrolsontheformfirstandthenbeginwithatablethatbest matchesyouroverallcontrollayout. Figure9-25showstheTabledialogavailablefromtheInsertribbon.NotethatInfoPathoffersthree basictablelayouts: •
TwoColumn
•
SingleColumn
•
FourColumn
453
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
InfoPathalsoprovidesaselectionofdifferentstylesthatrunhorizontallywithineachbasiclayout. Theindividualcolumnsalsoprovideauniquecombinationofheadingsasyouexaminethestylefrom lefttoright.Thefirstcolumnprovidesbothamainheadingandasubheadingbeforethestartofthe table.Thesecondcolumnprovidesjustamainheadingatthetopofthetable.Thethirdcolumn providesjustasubheadingandthelastcolumnprovidesonlythetablewithnoheadings.
Figure9-25.InfoPathoffersawideselectionoftabletemplatesortheabilitytocustom-defineatable. Ofcourse,youcanalwaysusemultipletablesfordifferentsectionsofyourformifthestructurefrom onesectionchangesgreatlyfromtheprevioussection.Infactusingmultipletablescansavetimeover tryingtosplitormergecolumnsofasingletabletoachievethesamevisuallayoutofcontrols.In addition,youcanplaceonetableinsidethecellofanothertable. Asyoubuildyourformfromtoptobottom,youmightstartwithatabletemplatethatincludesboth amainheadingandasubheadingforthefirstsetofcontrols.Then,inthenextsectionofcontrols,you mayonlywantasubheadingbeforethestartofthetable.Inthethirdsection,youmayalsowanttobegin yourtablewithasubheadingbutyoumightwantadifferentnumberofcolumns.Inthisway,youcan easilybuildyourformfromthetopdown,foreachdatasectionaddingindividualtablesthatalready havetheexactnumberofcolumnsyouneed. However,ifthepredefinedtabletemplatesstilldonotmeetyourneeds,youcanclicktheoption CustomTableatthebottomoftheTabledialogtobuildyourownuniquetable.Figure9-26showsthe customtabledialog.
454
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-26.Custom-defineatablebydraggingthroughthegridofboxes. Inthisdialog,youcanuseyourmousetodragthroughthegridofsquarestoindicatethenumberof columnsandrowsyouwantinthetable.Forexample,ifyouwantathree-columntable,atabletemplate notshowninFigure9-25,youcandragthroughthreeofthecolumnsandseveraloftherowsasshownin Figure9-26.Doesitmatterhowmanyrowsyouaddtotheinitialtable?No.Withanytable,youcanadd anotherrowbyplacingyourcursorintherightmostcellofthelastrowandpressingtheTabkeytoadd anotherrowmovingthecursortothefirstcolumninthatnewrow. Ifyourtablehasalargenumberofrows,ratherthaninsertingrowsindividually,youmaywantto buildyourinitialtablewithalltherowsyouexpecttoneed.FromthedialoginFigure9-26,clickthe LayoutTableoptiontodisplayadialogthatletsyouenterthenumberofcolumnsandrowsyouwantin thecreatedtable.Figure9-27showstheInsertTabledialogabouttocreateathree-columntablewith50 rows.
Figure9-27.Forlargertables,definethenumberofcolumnsandrowsdirectly.
■TipDoyouwanttoincreasetheheightofthecell?Placethecursorafterthelastcharacterinthecellandpress Shift+Enter.
■TipTochangethecolorofatablecell,placethecursorinthecellandright-click.SelecttheoptionBorders andShading.ClicktheShadingtabandselectanewcolor(orevennocolorifyourformusesabackgroundcolor orimage).
455
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■TipTochangethecolororstyleofaborderonthetable,clickanywherewithinthetable.Youshouldseea smallgraysquareintheupper-leftcorneroftheform.Right-clickthissquareandselectBordersandShading. ClicktheBorderstab.Selectthelinestyle,color,andwidthoftheline.Thensetthetable’sborderlines,byeither usingthebuttonsinthePresetssectionorclickingthebuttonsorndividuallinesintheborderdiagram.
How Do You Decide How Many Columns You Need? Whenlayingoutyourformusingtables,youneedtodeterminehowmanycolumnsyourtableneeds.To determinehowmanycolumnsyouneed,youneedtoknowwhatgoesintoacolumn.Let’ssupposeyou plantoaddafewtextboxeswithlabelsbeforethemtoaidusersinknowingwhatinformationtoplacein eachtextbox.Typically,youshouldplacethelabelbeforethetextboxinaseparatecolumnfromthetext boxitself.Thistechniquegivesyoumorecontroloverthespacingbetweenthelabelandthetextbox. Thus,youalreadyneedtwocolumnsforonefield. Then,ifyouwanttwotextboxesonthesameline,suchasforfirstandlastname,youmightneedthreeor fourcolumnsdependingonwhethereachtextboxhasitsownlabel.Insuchcases,someformdesigners recommendthatyouplaceaspacercolumnbetweenthetwosetsofcolumns.Byaddingaspacercolumn, youcaneasilycontroltheamountofspacebetweenthetextboxofthefirstcolumnsetandthelabelofthe secondcolumnset,evenwhenyouuseright-justifiedlabeltext. Thus,youcanseethatthenumberofcolumnsyouneedforatypicalformcangrowquiterapidly.Youmay needasmanyasfivetablecolumnsinonerowoftwodatacolumnsandeighttablecolumnsforthreedata columnsinthenextrow.Howcanyoucreateatabletohandlethesituationinwhicheveryrowrequiresa differentnumberofcolumns?Bysplittingandmergingcellsorbyinsertingindividualtablesforeachrow. Nomatterwhichtabletemplateyouselectforyourform,itseemsthatyoualwayshaveaportionof theformthatrequiresanexceptiontothenumberofcolumns.Whetheryouneedmoreorfewer columnsforaline,itmaybemoreefforttocreatemultipletablesjustforoneexceptionalrow.This situationiswheretheMergeCellsandSplitCellsoptionsfromtheMergegroupofTableToolsLayout canquickletyouchangethenumberofcolumnsinasingleroworeventhenumberofrowswithina singlecolumnofonerow. Tomergecells,youselecttwoormorecellsbyclickingthefirstcellanddraggingthroughthecells youwanttoinclude.Youcanselectcellsvertically,horizontally,orbothatthesametimewhenyou mergecells.Whenyoumergethecells,theinteriorcellwallsdisappear,andyouendupwithasingle largecell.Youmightdothistoinsertasubform,imageorotherlargeobjectinsidethestructureofyour table. Similarly,youcansplitcellshorizontallyorvertically.Simplyselectthecellyouwanttosplit,and selectthenumberofrowsandcolumnsintowhichyouwanttosplitthecell.Youcanevenselectseveral cellsatonceandredefinethenumberofrowsandcolumnstheselectedcellsshouldhave.Forexample, youcouldselectthreecolumnsandtworowsofcellsbydraggingthroughthemandthenselecttheSplit Cellsoption.IntheSplitCellsdialog,youcouldthenspecifytwocolumnsandthreerowstoalterthe layoutofselectedcellscompletelyaslongasyouselectthecheckboxMergecellsbeforesplit.This optiontakesthecellsintheoriginalthreecolumnsandtworowsandcreatesasinglelargecell.Itthen splitsthiscellintothetwocolumnsandthreerowsthatyouspecified.
456
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■CautionIfyouplantorestructureyourcellsbysplittingandmergingcells,youmightwanttodothatbefore addingtexttothecells.
Finally,theLayoutribbonalsoallowsyoutoaddrowsandcolumnstothetableincaseyou misjudgedyourrequirementswhencreatingthetable.Ofcourse,ifyoumerelywanttoaddanotherrow totheendofyourtable,justplacethecursorintherightmostcellofthelastrowinthetableandpress thatTabkey.Similarly,youcandeleterowsbydraggingthroughthemtoselectthemandpressingthe Deletekeyorbyright-clickinginanycellandselectingDeleteandthenColumnsorRowstoremove thecurrentcolumnorrow. TobeginoursimpleRequestforAbsenceform,let’saddafour-columntable.Inthistable,wewill usecolumns1and3toholdfieldlabelsandcolumns2and4toholdfieldvalues.Figure9-28showsthe startofthetable.Itincludesthefieldlabels,butwheredowegetthefieldvalues?
Figure9-28.Theinitialtablewithlabelsadded
TheTaskGroup:Controls TheControlsgroupoftheHomeribbondisplaysallthecontrolsthatyoucanplaceonyourform.Figure 9-29showstheavailablecontrolsyoucanuseout-of-the-box.InfoPathdividesthesecontrolsintothree groups:Input,Objects,andContainers.Inputcontrolsallowtheusertoenterdataorselectdata. Objectcontrolseitherperformanaction,asthebuttoncontroldoes,orholdspecificfilessuchas pictures.Youusecontainerstoholdothercontrols.
457
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-29.InfoPath’scontroldialog Iwillnotspendalotoftimetalkingabouteachofthesecontrolshere.Thepurposeofmostofthese controlsshouldbeobvioustomostofyou,especiallyamongtheInputcontrols.Theuseofeventhe objectcontrolsshouldbeeasytodeterminebasedoneachone’sname.TheContainercontrolsallow youtogroupotherinputandobjectcontrolsintosections.Youmightusesectionstodoanyofthe following: •
Determinewhichcontrolstodisplaytoauserbasedonentriesinprevious controls.
•
Identifyoptionalsectionsthattheusercanincludeorignore.
•
Provideforarepeatingsetofinputobjectsorevenanentiretablewherethe numberofrepeateditemsisunknown,suchasthenumberofdetailrecordsina singleorder.
•
Allowtheusertochoosewhichsectiontoincludeinaform.
Let’scontinuebuildingtheRequestforAbsenceformbyaddingthetextboxcontrolinthesecond columnofthefirstrowtoallowtheusertoentertheiremployeename. Toaddacontroltothetable,youcanbeginbyclickinginthecellwhereyouwanttoaddthecontrol. ThenopentheControlsdialogfromFigure9-29anddoubleclicktheTextBoxcontrol.Toviewthe propertiesofanycontrol,right-clickthecontrolafteraddingittotheform(youcandouble-clickorclick anddragthecontroltopositionitontheformwithinacellofatable).Fromthedrop-downmenu,select thePropertiesoptionatthebottomofthelist.(AllcontrolshaveaPropertiesoption.)AProperties dialogappears,asshowninFigure9-30.
458
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-30.TheDatapageoftheTextBoxPropertiesdialog ThePropertiesdialogboxhasmanyuserselectableproperties.Therefore,itseparatestheproperties bytypeandplacesthemonseparatetabbedpages.Mostcontrolshavesimilarproperties.TheDatapage hasthemostdifferencesfromonecontroltoanother. OntheDatapageofthisdialog,youbeginbydefiningthefieldnametowhichyouwanttobindthis control.Ifyoudidnotstartwithanexistingdatasource,InfoPathwillcreateaXMLschematomanage thedatafortheform.Asyouwillseelaterinthischapter,youcanthenmaptheXMLschematolist columnstomakeiteasytoexamineandworkwiththecollecteddata. TheseconditemyoumustspecifyistheDataTypeforthecurrentfield.Thedrop-downlistforthis propertyshowsalltheavailabledatatypesthatInfoPathsupports.Keepinmindthatselectingthe properdatatypecanbepartofyourdatavalidation.Forexample,ifyouwantuserstoenteraquantity suchasanumberofitemsorderedconsiderusingtheintegerdatatyperatherthanjustasimplenumber orevenastring.Bydefiningthedatatypeasaninteger,youmakesuretheusercannotentercharacters, norcantheyenteradecimalvalue.Similarly,whendealingwithdates,donotusetheDate/Timetype unlesstimeisimportantfortheinformationtracked.Ifyouonlyusethedate,choosetheDatetype. WhiletheTextBoxcontroldoesnotletyoudefineaformatforthedata,manyoftheotherdata typesdo.Forexample,DateandDate/Timedatatypesallowyoutoselectfromalistofavailabledate andtimeformatsforyourdata.Fornumericdata,youcandefinethenumberofdecimalplacesandthe thousandsseparator(alsoknownasadigit-groupingsymbol).Ifthefieldrepresentsamonetaryvalue, youcanalsoselectthecurrencysymbolyouwanttouse. Next,youcanprovideadefaultvalue.Youcaneithersupplyanabsolutevalueasthedefaultby enteringitinthetextbox,orcreateafunctionbyusingthefunctionbuttontocalculatethedefaultvalue. Whileyoucandefinethedefaultvaluetobeafunctionofoneormoreotherfieldsinthecurrentform instance,youshouldbeawarethattheusermightenterdatainadifferentsequentialorder,leavingthe dependentfieldsundefined.Furthermore,foranewforminstance,thereferencedfieldswillnothave valuesyetunlessthey,too,havedefaultvalues.Forexample,supposeyouhavetwodatesonaform representingadaterange.Youcoulddefaultthestartdatetotoday.Thenyoucoulddefaulttheenddate oftherangeasthestartdateplus14daysortwoweeks.Becausethereferencedfieldfortheenddate
459
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
calculationhasadefaultvaluethatyoucancalculate,bothdatescansuccessfullyuseacalculated defaultvalue. Finally,theTextBoxdialogalsoletsyoudeterminewhetherauserwillbeabletoleavethecurrent fieldblank.Ifyouselectthischeckbox,aredasteriskappearstotherightofthefieldontheformasa reminderthatthefieldmusthaveavalue.Othercontrolsmayhavetheseaswellasadditionalproperties ontheDatapageofthepropertiesdialog. Forexample,theCheckBoxandOptionButtoncontrolshaveaninterestingpropertythatmay surpriseyou.WhenyouaddaCheckBoxcontroltoaform,youwouldexpectthateachcheckboxwould supportaBooleanvalueofTrueorFalse,orperhapstheintegervariationonthis,1or0.However,ifyou openthePropertiesdialogboxandselecttheDatatab,youhavethesevalues,butyoucanalsochange thedatatypeassociatedwiththecheckbox.Infact,thecontrolsupportsseveraltypesofvalues,ranging fromtexttointegers,dates,andevenhyperlinks.Youstillcanonlysavetwovalues,andbothvalues musthavethesamedatatype.However,ifyouwouldrathersaveoneoftwopossibledates,depending onwhethertheuserselectstheoption,oroneoftwopossibledecimalvalues,youcan.Figure9-31 showsanexamplewhereacheckboxreturnsthediscounttoapplytoasaledependingonwhetherthe buyerhasafrequentbuyercard.Inthiscase,thefrequentbuyercardholdergetsanextra20%ontopof the10%offsaleprice.
Figure9-31.Anexampleofthedatapropertiesforacheckboxdatacontrol Similarly,theOptionButtoncontrolreturnsasinglevaluenomatterhowmanybuttonsyou associatewiththeinstanceofthiscontrol.Bydefault,thesebuttonsreturnanintegerrangingfrom1to n,wherenrepresentsthenumberofoptionbuttonsinthegroup.However,youcanreturnletters,text strings,wholenumbers,decimals,ordatesinstead. Anotherinterestingfeatureofcontrols,conditionalformatting,letsyouchangetheappearanceof thecontrol’scontentsbasedonaconditionthatyoudefineasaBooleanexpression.Youcanaccessthis featurebyaddinganewruleusingtheAddRuleoptionintheRulesgroupoftheControlTools Propertiesribbon.Figure9-32showsthatrulescanconsistofvalidations,formatting,oractions.Inthis case,chooseFormatting.
460
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-32.AddaformattingruletotheinputcontrolHours_Requested. Thefirststepinbuildingaformattingruleistodefinetheconditionthatmustexistbeforeapplying thenewformatting.InourRequestforAbsenceform,oneofthefieldsthatwewillneedisatextbox formattedtoholdanintegernumberrepresentingthenumberofhoursrequested.Supposeyour companyhasarulethatgenerallygrantsanyrequestsforlessthan8hours.Wecouldcreatearulethat comparesthevalueofthefieldHours_Requested.Whenthatvalueislessthanorequalto8hours,we wanttochangethefontcolorofthefieldvaluetogreen.Therefore,wedefinetheconditionexpression asshowninFigure9-33.
Figure9-33.Defineaconditionfortheformattingrule.
■TipYoucanuseconditionalformattingtomakefieldsread-onlyoreveninvisiblebasedonapredefined condition,anoptionfoundatthebottomoftheFormattingarea.
Figure9-34showsthatafterdefiningtherulecondition,youcanthenusethebuttonsinthe Formattingareatodefineaspecialstyleforthefield.
461
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-34.DefineaformattingdefinitionfortheNumberofHoursfield. Youcandefinemorethanoneconditionalformattingrule.Forexample,youmightuseanother colortoindicaterequestsofmorethanonedaybutnotmorethanaweek.Finally,youmightformat anythinglongerthanaweekwithathirdcolor. Atfirstyoumightnotgivemuchthoughttotheorderinwhichyoudefinetheserules.However, InfoPathexecutestheserulessequentiallyfromthetopoftheRuleslist.Therefore,ifyoudefinedthefirst tworulesinadifferentorder,youwillnotgetthedesiredresult.Infact,iftherulecomparingthenumber ofhoursto40occursbeforetherulescomparingthenumberofhoursto8,thesecondruleneverfires becauseallnumberlessthan8arealsolessthan40andthereforeonlythefirstrulefires.Therefore,you havetomakesurethatInfoPathexecutesthe8-hourrulefirstbyplacingitphysicallybeforethe40-hour rule,asshowninFigure9-35.Ifyouentertherulesinadifferentorder,youcanusethedrop-down menuthatappearswhenyoupositionyourmouseoveranyoftherulestomovearuleupordownin thelist.
Figure9-35.Definetheorderinwhichtherulesfire. Asyoucanseeinthisfigure,youcanalsodeleteexistingrulesifyounolongerneedthem.Youcan alsocopyandpasterulesthataresimilarandmaybeeasiertomodifythantocreatefromscratch.
462
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Usingasimilartechnique,youcanalsoapplydatavalidationrulestoanyfield.Usingdata validationtoidentifybaddatavaluesattheformlevelbeforesubmittingdatatothedatasourceallows theuserenteringdataintotheformtocorrectproblemsimmediately.Updatingbaddataafter submittingittoadatasourceorevenatalatertimegenerallyrequiresmoretimeandexpensethan immediatelyaddressingit. AvalidationrulealsorequiresaBooleanexpression.Inthiscase,youmustcreateaBoolean expressionthatidentifiesvaluesthatyoudonotwanttoacceptratherthanthecorrectvalues.Youmight thinkofthisastestingforfailure,andIsupposeitis.Youcanthendefineatooltiptoexplainthe problem.WhentheuserentersavalueforwhichtheBooleanvalidationexpressionreturnsTrue, InfoPathsurroundstheoffendingfieldwithareddashedbox.Astheuserplacesthemouseoverthe offendingfield,thetooltipthenindicateswhyInfoPathhasflaggedthevalueasshowninFigure9-36.
Figure9-36.Datavalidationtrapsbaddataasit’sentered. ThelastfeatureofcontrolsI’llexaminehereistheabilitytoaddrulestoyourformthatcandisplay messages,setvaluesofothercontrols,andevenexecuteotheractionsbasedonthevaluesenteredinto thecontrol.Youbegindefininganactionrulemuchasyoudidforthelasttwofeatures,bydefininga Booleanconditionintherulesmanagertospecifywhenyouwanttheruletofire.Thenyoucandefine anaction.Possibleactionsincludethefollowing:
463
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
•
Setafield’svalue.
•
Performaqueryfordata.
•
Submitdata.
•
Senddatatoanotherwebpart.
Eachactionrequiresadditionalconfigurationdata.Forexample,tosetafield’svalue,youmust identifythefieldonthecurrentformyouwanttosetandthevalueyouwantuse.Youcanusean absolutevalueorcreateacalculatedvaluefromotherfieldsontheform. Aswithconditionalformatting,youcanspecifymultipleaction,butmustcarefullyspecifytheorder oftheactions.However,unlikeconditionalformatting,youcandisableandenableactionswithout havingtodeleteandreadactionrules.
TheTaskGroup:DataSources TheDataSourcestaskgroupletsyouexamineyourdatasources.Inthecasewhereyoubuildthedata sourcewhileyoubuildtheform,theDataSourcepaneldisplaysthenameofeachfieldyouaddedalong withselectedpropertiesofthefield,asshowninFigure9-37.
Figure9-37.Viewthedatasourcestructure.
464
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Ifyouuseadifferentdatasource,suchasanAccessorSQLdatabase,youwillseethefieldsusedin thoserespectivedatabases.
TheTaskGroup:DesignChecker TheDesignCheckerpanelisespeciallyusefulwhenyoudesignaweb-basedformusedwithInfoPath FormsServices.Itidentifiesandlistsanyerrorsonyourformthatpreventyourformfromworking properly.Italsolistswarningssuchasthedefinitionofvalidationmessagesforsomeofyourform’s fields.ToruntheDesignChecker,gototheInfopageoftheBackStagearea(Filemenu)andclickthe DesignCheckerbuttonasshowninFigure9-38.
Figure9-38.SelectingtheDesignCheckerfromtheBackstage Asanexample,InfoPathFormsServicescannotdisplayvalidationmessages.
■NoteForthoseofyouwhomaybewonderingwhatInfoPathFormsServicesis,SharePointServerincludes severalservicestoallowuserstointeractwithobjectsthatrangefromInfoPathFormstoExcelworksheetsand evenAccessapplications.TheseservicesarebundledwiththeEnterpriseversionofSharePointServer2010and canbeconfiguredthroughCentralAdministration.
465
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Therefore,definingsuchmessagesinyourform’sfielddefinitionscreatesawarningmessage.The reasonInfoPathdoesnotflagvalidationmessagesasafatalerrorconditionisthatwhenInfoPath displaystheformasaweb-basedform,itsimplyignoresthisextrainformation.Ontheotherhand,ifthe DesignCheckeridentifiesafatalerrorsuchasanunsupportedcontroltype,youmustfixtheindicated errorbeforepublishingtheformtemplate.Figure9-39showssampleresultsoftheDesignCheckerin whichitfoundnoincompatibilities.
Figure9-39.DesignCheckeridentifieserrorsandwarningsbeforepublishingaform. Bydefault,theDesignCheckervalidatestheformasifitwererunningwithinagenericwebbrowser. However,ifyouclickthelinkChangeSettings,youcanchangethecompatibilitysettingstovalidatethe formagainstearlierInfoPatheditionsoragainstthenewInfoPathFillerapplicationincludedwithOffice.
StepstoBuildtheRequestforAbsenceForm Herearethestepstore-createtheRequestforAbsenceformshownearlierinFigure9-8: 1.
466
OpenInfoPathandselecttheBlanktemplatefromthePopularForm TemplatesintheNewpageoftheBackStagearea.
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
2.
Withablankformopen,makesuretodisplaythePageLayoutTemplatesin thePageLayoutsgroupofthePageDesignribbon.
3.
Usethedefaultpagelayoutorselectthelayoutbyright-clickingthesmallbox intheupperleftcornerofthepagelayoutandselectingDelete➤Table.Then chooseapagelayoutsuchastheTitleandHeadinglayout.
4.
ClickintherowthatsaysClicktoaddtitleandenterRequest for Absence Form.
5.
UsingtheoptionsintheFormatTextgroupoftheHomeribbon,makethe textArialBold22ptandcentered.
6.
ClickinthesecondrowwhereitsaysClicktoaddheadingandenterthe followingtext: You must fill in a Request for Absence and submit the completed form to your supervisor in advance of any planned absence. Do not use this form for sick-time or other emergency leave situations. You can only make requests for absence in units of full or half days.
7.
Withyourmousepointerstillinthissecondrow,clickShadingintheColor groupoftheTableToolsLayoutribbonandselectoneofthelightershadesof graytofillinthisrow’sbackground.
8.
ClickwheretheformsaysAddtables.ThenopentheInsertribbonandselect afour-columntablegridwithnoheading.
9.
Inthefirstcolumn,firstrow,enterthetextEmployee Name:
10. Inthefirstcolumn,secondrow,enterDate Requested – From: 11. Inthefirstcolumn,thirdrow,enterTotal Hours Requested 12. Inthethirdcolumn,firstrow,enterEmployee #: 13. Inthethirdcolumn,secondrow,enterDate Requested – To: 14. Inthesecondcolumnofthefirstrow,addaTextBoxfromtheControlspanel foundintheControlsgroupoftheHomeribbon. 15. Right-clickthenewcontrolandselectTextBoxPropertiesfromthedropdownmenu. 16. IntheDatapageoftheTextBoxProperties,enterthefieldname Employee_Nameandindicatethatthefieldcannotbeblank.ClickOKwhen done. 17. Inthefourthcolumnofthefirstrow,addaTextBoxfromtheControlspanel foundintheControlsgroupoftheHomeribbon. 18. Right-clickthenewcontrolandselectTextBoxPropertiesfromthedropdownmenu. 19. IntheDatapageoftheTextBoxProperties,enterthefieldnameEmployee_ID andindicatethatthefieldcannotbeblank.ClickOKwhendone.
467
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
20. Inthesecondcolumnofthesecondrow,addaDatePickerfromtheControls panelfoundintheControlsgroupoftheHomeribbon. 21. Right-clickthenewcontrolandselectDatePickerPropertiesfromthedropdownmenu. 22. IntheDatapageoftheDatePickerProperties,enterthefieldnameFrom_Date andindicatethatthefieldcannotbeblank.Also,changethedatatypeto:Date (date).ClickOKwhendone. 23. Inthefourthcolumnofthesecondrow,addaDatePickerfromtheControls panelfoundintheControlsgroupoftheHomeribbon. 24. Right-clickthenewcontrolandselectDatePickerPropertiesfromthedropdownmenu. 25. IntheDatapageoftheDatePickerProperties,enterthefieldnameTo_Date. Also,changethedatatypetoDate (date).ClickOKwhendone. 26. Inthesecondcolumnofthethirdrow,addaTextBoxfromtheControlspanel foundintheControlsgroupoftheHomeribbon. 27. Right-clickthenewcontrolandselectTextBoxPropertiesfromthedrop-down menu. 28. IntheDatapageoftheTextBoxProperties,enterthefieldname: Hours_Requestedandindicatethatthefieldcannotbeblank.Also,changethe datatypetoWhole Number (integer).ClickOKwhendone. 29. Next,opentheControlToolsPropertiesribbonandselectManageRulesfrom theRulesgroup. 30. ClickinthefieldTo-Date.ThenclickNewintheRulespaneltostartanew Validationrule.Provideanamefortherule,suchasDateSequence Validation.ThenclickthewordNoneunderConditiontoopenthe Conditiondialog.Createthecondition:To_Date is less than From_Date. ThenclicktheAndbuttonandentertherule:To_Date is not blank,because youwanttoallowthisfieldtobeblankiftheabsenceisonlyforoneday.Click OKtocompletethecondition. 31. Forthescreentip,enterthetextEnter a date on or after From_Date. 32. Next,clicktheHours_Requestedfield. 33. ClickNewintheRulespaneltostartanewValidationrule.Let’scallthisone Number of Hours Less than 0.Thenenterthecondition:Hours_Requested is less than 0.Providethescreentip:Hours requested must be positive. 34. ClickNewintheRulespaneltostartanewFormattingrule.Let’scallthisone Number of Hours Less than or equal to 8.Thenintheformattingsection selectboldandchangethefontcolortogreen. 35. ClickNewintheRulespaneltostartanewFormattingrule.Let’scallthisone Number of Hours Less than or equal to 40.Thenintheformattingsection selectboldandchangethefontcolortoyellow.
468
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
36. ClickNewintheRulespaneltostartanewFormattingrule.Let’scallthisone Number of Hours Greater than 40.Thenintheformattingsectionselectbold andchangethefontcolortored. 37. Now,toallowtheusertoenterthetypeofabsence,clickbelowthelastrowof thecurrenttableandthenselectaTwo-columntablewithSubHeadingfrom theTablespaneldrop-downintheTablesgroupoftheInsertribbon. 38. ChangetheheadingtoType of Absence:and,withthetextselected,clickthe left-alignedbuttonintheHomeribbon’sFormatTextgroup. 39. ClickinthefirstcolumnofthefirstrowofthistableandclicktheOption ButtoncontrolfromtheControldrop-downintheHomeribbon. 40. Inthedialogthatpopsupforthenumberofoptionbuttonstoinsert,select6 andclickOK.Noticethatallthebuttonsappearinthefirstcellwithnotext afterthem.However,ifyouhoveroveranyofthem,theyallhavethesamefield name.Therefore,youcanright-clickanyofthemandselectOptionButton Propertiesfromthedrop-downmenu. 41. Clickanddragthebuttononthebottomtocolumn2,row3ofthetable.Click totherightoftheoptionbuttonanddirectlyenterthetext Time Without Pay. 42. Clickanddragthebuttononthebottomtocolumn2,row2ofthetable.Click totherightoftheoptionbuttonanddirectlyenterthetext Military Duty. 43. Clickanddragthebuttononthebottomtocolumn2,row1ofthetable.Click totherightoftheoptionbuttonanddirectlyenterthetext Jury Duty. 44. Clickanddragthebuttononthebottomtocolumn1,row3ofthetable.Click totherightoftheoptionbuttonanddirectlyenterthetext Sick Leave. 45. Clickanddragthebuttononthebottomtocolumn1,row2ofthetable.Click totherightoftheoptionbuttonanddirectlyenterthetext Personal Leave. 46. Clicktotherightoftheoptionbuttoninrow1,column1anddirectlyenterthe text Annual Leave. 47. Eliminateanyextrablanklinesinrow1,column1soallthecellsareonlyas highastheoptionbuttonitself. 48. Right-clicktheoptionbuttoninrow1,column1andselectOptionButton Propertiesfromthedrop-downmenu.IntheDatapage,changethenameto Absence_Type.ChangetheValuewhenselectedto1.ClickOKtofinish changingthisoptionbutton. 49. Right-clicktheoptionbuttoninrow2,column1andselectOptionButton Propertiesfromthedrop-downmenu.IntheDatapage,changetheValue whenselectedto2.ClickOKtofinishchangingthisoptionbutton.Noticethat thenamepropertyhasalreadybeensettobethesameasthepreviousoption button.Alloptionbuttonsdefinedtogetherasagroupmusthavethesame name.
469
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
50. Right-clicktheoptionbuttoninrow3,column1andselectOptionButton Propertiesfromthedrop-downmenu.IntheDatapage,changetheValue whenselectedto3.ClickOKtofinishchangingthisoptionbutton. 51. Right-clicktheoptionbuttoninrow1,column2andselectOptionButton Propertiesfromthedrop-downmenu.IntheDatapage,changetheValue whenselectedto4.ClickOKtofinishchangingthisoptionbutton. 52. Right-clicktheoptionbuttoninrow2,column2andselectOptionButton Propertiesfromthedrop-downmenu.IntheDatapage,changetheValue whenselectedto5.ClickOKtofinishchangingthisoptionbutton. 53. Right-clicktheoptionbuttoninrow3,column2andselectOptionButton Propertiesfromthedrop-downmenu.IntheDatapage,changetheValue whenselectedto6.ClickOKtofinishchangingthisoptionbutton. 54. Whenyouaredonechangingthepropertiesoftheoptionbuttons,youmay wanttoadjusttherowheightorcolumnwidths.Youmayalsowanttoadd shadingtosomeoftherowsorcolumns.However,youhavecompletedthe essentialsofyourRequestforAbsenceform. Wow!Thatwasalotofwork,butyouhavecompletedtheRequestforAbsenceform,andyoudidit withoutwritingasinglelineofcode.Chapter10covershowtopublishformssuchasthisoneindetail.
OtherAvailableInfoPathTemplates WhilewefocusedinthissectiononcreatedanInfoPathformfromtheblanktemplate,InfoPathprovides severalotherinterestingformtemplatesfromwhichtochoose.
470
•
WebService:Thistemplateassumesthatyouwanttodesignaformthatqueries andsubmitsdatatoawebservice.Youcanthinkofawebserviceasanapplication thatusesXMLtotransferinformationbetweenaclientandaserver.
•
Database:Thistemplateletsyoubuildaformtemplatethatqueriesandsubmits datatoanAccessorSQLdatabase.
•
XMLorSchema:ThistemplatestartsaformbyusinganexistingXMLdocument orXMLschemaasthedatasource.
•
DataConnectionFile:ThistemplateenablesyoutouseaSharePointdatasource thatyoupreviouslydefinedinadataconnectionfilewhencreatingyourform.
•
SharePointList:Bystartingwiththistemplate,youcancreateacustomformthat userswillseewhenviewingoreditingitemsinaSharePointlist.Thisform providesagreatwaytocustomizetheplainformthatSharePointauto-generates whenusersaddnewitemstoalistoreditthepropertiesofanexistingitem.
•
DocumentInformationPanel:SimilartoSharePointList,thetemplateletsyou customizetheformusedtoeditthepropertiesofaMicrosoftOfficedocument storedinaSharePointdocumentlibrary.
•
E-mail:Thistemplateletsyoucreateaformthatyouwanttosendtousers throughe-mailandallowthemtocompletetheformandsenditback.
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
InfoPath2010alsoprovidestemplatestocreateformscompatiblewithInfoPath2007. Finally,InfoPath2010allowsyoutoconvertWordformsandevenExcelformsintoInfoPathforms usingtheConvertExistingFormtemplatethatisthefocusofthenextsection.
MigratingYourExistingWordFormsintoInfoPath SupposeyoualreadyhaveaformcreatedusingWord.Youmayhavespentagreatdealoftimecreating theformattingofthatformtomakeitlookexactlythewayyouwant.Alternatively,maybeyoufoundthe perfectformtemplateonMicrosoft’stemplatesite,butthesiteonlyhadaWordversionofit.Ineither case,youdefinitelydonotwanttore-createthatformfromscratch.SohowcanyouimportthatWord formintoInfoPathwithoutalotofextrawork? IamgoingtostartwithaformtemplatedownloadedfromMicrosoft’ssitenamedPettyCash Receipt(office.microsoft.com/en-us/templates/TC010197861033.aspx?pid=CT101423521033)and showninFigure9-40.Whilethisformisbasic,itdemonstratestheconceptsyouneedtoconvertaWord templatetoanInfoPathform.Theoriginalversionofthisformtemplateincludesthreereceiptsona page.Ihaveremovedthetwoextrareceiptssoyoucanfocusonasinglecopyoftheform.
Figure9-40.ThePettyCashReceiptforminMSWord
471
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteIhavereplacedthefieldsthatwereinthistemplateforDate,No.,andAmountwithsimpleunderlines becauseInfoPathwillnotconvertthesefieldsas=is.Youmustidentifythefieldswithunderlinesashints.Theneed forthisstepwillbecomeapparentwhenIdescribehowInfoPathdeterminesthelocationoffieldsinaWord document.
WhenyouhaveaWordtemplateexactlyasyouwouldlikeit,saveitasatemplatefile(withthe extension.dotor.dotx)inadirectorywhereyoucanfinditlater,andthencloseWord. Next,openInfoPath’sBackstagearea(clicktheFilebutton)andclicktheNewsectiontodisplay InfoPath’stemplates.ClicktheConvertExistingFormoptionintheAdvancedFormTemplates section.ThisoptionletsyouimportMicrosoftWorddocumentorMicrosoftExcelspreadsheets.Finally, clicktheDesignthisFormbutton.ThisactionopenstheImportWizard.Fromthiswizard,youcan importeitheranExcelworkbookoraWorddocument.Inthiscase,selectInfoPathimporterforWord documentsasthesourceandclickNext. ThesecondpageoftheImportWizardpromptsforthenameofthefiletoimport.Youcaneither enterthefilenamedirectlyorusetheBrowsebuttontolocatethefilethroughWindows’standardOpen dialogbox.First,let’sclicktheOptionsbuttontolookattheOptionsdialogbox. TheOptionsdialogboxletsyouimportjusttheformlayout.Youmightdothisifyouwantto custom-definetheform’sfields.Thesecondoptionimportsboththeformlayoutandtheformfields, convertingthefieldsasbestitcanbasedonthefieldpropertiesinWord.Thelastoptionimportsthe basicformlayout,butletsyoucustomizetheconversionoftheformfieldswhenitbringstheminto InfoPath.ChoosethisoptionwhenoneormoreofthefollowingconditionsexistinyourWord document: •
YoumustconvertexistingWordformfieldstoInfoPathcontrols.
•
Youmustdetectrepeatingtables.
•
Youmustdetectrichtextareas.
•
Youmustconvertemptyunderlinedareastotextboxes.
•
Youmustconvertemptyspacesaftercolonstotextboxes.
•
Youmustconvertemptytablecellstotextboxes.
•
Youmustconverttablecellscontaininglabeltexttotextboxes.
•
Youmustconvertbracketsaroundmultiplespacestotextboxes.
•
Youmustconvertbracketsaroundsinglespacestocheckboxes.
Forthepurposeofthisdemonstration,selectthecustomconversionoptiontoconvertempty underlineareas,areasaftercolons,andemptytablecellstotextboxesasdefinedinthePettyCash Receipttemplate.ClickOKtoclosetheImportOptionsdialog. Next,entertheWordtemplateyouwanttouseorclicktheBrowsebuttontofindthefileonyour availabledrives.Afterspecifyingthefiletoimportandselectingyouroptions,clicktheFinishbuttonto begintheconversion.Whentheconversionfinishes,thewizarddisplaysonelastpage,informingyou whethertheconversioncompletedsuccessfullyornot.
472
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteYoucannothavethetemplateopeninWordwhileyouconvertittoanInfoPathform. Aconversioncanalsocompletesuccessfullybutwithissues.Whenthishappens,youcanreview theseissuesusingtheDesignCheckerandcorrecttheminInfoPath.Figure9-41showstheresultsof convertingthePettyCashReceiptform.
Figure9-41.ConvertthePettyCashReceiptformintoanInfoPathform.
■TipWhenInfoPathconvertsunderlinecharacterstofields,itnamesthefieldsgenerically:Field1,Field2,andso on.However,whenInfoPathconvertsablankareaafteracolontoafield,itusesthetexttotheleftofthecolonas thefieldname.
OnceyouhaveconvertedyourWordtemplatetoInfoPath,usetheDesignCheckertoseewhether youneedtoresolveanyproblems.Inthiscase,theonlymessageintheDesignCheckerstatesthat objectsmaybepositionedincorrectly.Inadditiontopossiblyrepositioningsomeoftheformfield,you mightalsowanttogointosomeofthefieldstoadddatavalidation,conditionalformatting,orother rules.Otherthanthat,youarereadytopublishyourform.
473
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
MigratingYourExistingExcelWorkbookintoInfoPath AswithMSWordforms,youmayhaveexistingformsinExcelthatyouwanttousewithInfoPath.Or maybeyoufoundtheperfectformtemplateonMicrosoft’stemplatewebsite,butthesiteonlyhadan Excelversionofit.Ineithercase,youdefinitelydonotwanttore-createthatformfromscratch.Sohow canyouimportthatExcelworkbookintoInfoPathwithoutstartingfromablankform? IamgoingtostartwithanExcelformtemplatedownloadedfromMicrosoft’ssite,namedDonation Receipt(office.microsoft.com/en-us/templates/TC060891481033.aspx?pid=CT101423521033),shownin Figure9-42.Whilethisformisbasic,itdemonstratestheconceptsneededtoconvertanExceltemplate toanInfoPathform.Theoriginalversionofthisformtemplateincludesthreereceiptsonapage.Ihave removedthetwoextrareceiptsinordertoworkwithjustasinglecopyoftheform.Donotbeafraidto modifytheformsyoudownloadbeforeyouconvertthemtoInfoPath.Apagemaycontainduplicatesof theformbecausetheyweredesignedtoprintasmanycopiesoftheformaspossibleonastandard8.5"× 11"sheetofpaper.
Figure9-42.TheDonationReceiptformasanExceldocument
474
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteTheExcelformcontainsseveralcellsthathavepromptingtextenclosedinbrackets([]).TheInfoPath ImportWizardwillnotconverttheseareastofields,butsimplyleavethemastext.Toconvertthemtofields,you mustremovethetext,atleastinthethreecellsatthebottomoftheform.Youcanleavetheplaceholdersinthe headerandsubheadertextforuserstoreplacewhentheyfillintheform.
WhenyouhaveanExcelworkbookexactlyasyouwouldlikeit,saveitasanExceltemplate(with extension.xlsx)inadirectorywhereyoucanlaterfindit,andthencloseExcel. Next,openInfoPath’sBackstagearea(clicktheFilebutton)andclicktheNewsectiontodisplay InfoPath’stemplates.ClicktheConvertExistingFormoptionintheAdvancedFormTemplates section.ThisoptionletsyouimportWorddocumentsorExcelspreadsheets.Finally,clicktheDesign thisFormbutton.ThisactionopenstheImportWizard.Fromthiswizard,youcanimporteitheran ExcelworkbookoraWorddocument.Inthiscase,selectInfoPathimporterforExceldocumentsasthe sourceandclickNext. ThesecondpageoftheImportWizardpromptsforthenameofthefiletoimport.Youcaneither directlyenterthefilenameorusetheBrowsebuttontolocatethefilethoughWindow’sstandardOpen dialogbox.First,let’sclicktheOptionsbuttontolookattheOptionsdialogbox. TheOptionsdialogboxgivesyouthreeoptions.Thefirstistoimportjusttheformlayout.You mightdothisifyouwanttocustomdefinetheformfields.Thesecondoptionimportsboththeform layoutandtheformfields,convertingthefieldsasbestitcanbasedonthefieldpropertiesinExcel.The lastoptionimportsthebasicformlayout,butletsyoucustomizetheconversionoftheformfieldswhen itbringsthemintoInfoPath.Choosethisoptionwhenoneormoreofthefollowingconditionsexistin yourExceldocument: •
Youhaverepeatingtables.
•
Youhavecellscontainingformulasthatyouwanttoconverttotextboxes.
•
Youhavecellscontainingnumericdataratherthanjuststringdata.
•
Youhavecellsreferencedbyformulasinothercells.
•
Youhaveemptycellswithinagridthatdisplayscellborders.
■TipIfyouhaveacomplexform,InfoPathmaynotbeabletodeterminewhichemptycellstoconverttotext boxes.InExcel,youcanprovideInfoPathwithhintsbyturningonthebordersforcellsthatyouwanttoconvertto textboxes.ThisprovidesthesameguidancetoInfoPaththatunderlines,brackets,andcolonsdoinaWord document.
Afterspecifyingthefiletoimportandselectingyouroptions,clicktheFinishbuttontobeginthe conversion.Whentheconversionfinishes,thewizarddisplaysonelastpage,informingyouwhetherthe conversionhascompletedsuccessfullyornot.
475
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteYoucannothavethetemplateopeninExcelwhileyouconvertittoanInfoPathform.
Aconversioncancompletesuccessfullybutwithissues.Whenthishappens,reviewtheseissues usingtheDesignCheckerandcorrecttheminInfoPath.Figure9-43showstheresultsofconvertingthe DonationReceiptform.
Figure9-43.RawconvertedExcelform YoucanseeinFigure9-43thatduringtheconversionprocess,severalunexpectedthingsoccurred thatyoumightwanttomodify.First,theconversionprocesschangedthebackgroundcolorsofthe form’scells.Second,theformappearstoincludeafewadditionalcolumnsandrows.Withalittlework, youcanselecttheexcesstablerowsandcolumnsanddeletethem.Then,tochangethebackground
476
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
colorofcellstomatchtheoriginal,beginbyselectingcellrangesthatyouwanttochange.ThenrightclicktheselectedcellsandclickBordersandShadinginthedrop-downmenu.Inthedialogboxthat appears,youmayhavetoclicktheShadingtabtopickthecolorusedtoshadethecells.Fromthispage, youcaneitherselectoneoftheexistingcolorsorclicktheMoreColorsoptionatthebottomofthecolor list.ThisselectionopenstheColorPickerdialogbox.Hereyoucanselectacolorfromalargerlistof definedcolors,oryoucancustomblendacolorusingtheareaontherighttomixthecoloryouwant. Whenyoufindacoloryoulike,besuretoclickthebuttonAddtoCustomColorssoyoucanreusethe samecolorforothercellareasthatyoumaystillneedtoselect.Withthesechanges,theInfoPathform nowlooksliketheoneshowninFigure9-44,whichcloselyresemblestheoriginalExcelworkbookform.
Figure9-44.AftercleaninguptheInfoPathform
477
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteInfoPathconvertsallblankcellstotextboxes.However,youcanchangethecontroltypebyright-clicking thecontrolandselectingadifferentcontroltypefromthesecondaryslide-outmenuthatappearswhenyou positionyourmouseoverChangeto.
DefiningInfoPathViews InfoPathallowsyoutodefinemultipleviewsinthesameformagainstdifferentsubsetsofthedata. Viewscanservemultiplepurposes,includingthefollowing: •
Youhaveaverylargeformanddecidetodivideitintosmallerpagestomakeit moremanageabletothoseenteringdata.
•
Youhaveaworkflowattachedtotheformandtheapproverneedsread-only accesstomostoffields,withperhapstheabilitytoupdateacommentfieldandto acceptorrejecttheform.
•
Youhavedifferentpeoplewhoworkondifferentsectionsoftheform,andthey onlyneedtoseethepartoftheformforwhichtheyareresponsible.
•
Youhavedifferentpeoplewhohaveaccesstotheform,butwhodonotneedto seeallthedataintheform.Perhapstheydonothavetherightstoseeallthedata.
•
Youwanttodefineaseparateprintviewforaformperhapstochangethecontrols usedtorepresentthedata,thusmakingtheoutputeasiertoreadanduse.Youcan hidethisviewfromtheusersenteringdata,butwhomaywanttouseit automaticallywhentheyattempttoprinttheform.
Youmayhaveadditionalreasonsforwantingmultipleviews.However,nomatterwhatthereason, thetechniqueforbuildingthoseviewsbeginsthesameway.Isuggestyoufirstbuildthemasterform thatcollectsallthepossibledatathatyoumightwanttocollect.Onceyouhaveamasterform,whichisa viewinitself,youcancreateadditionalviewsthatdisplaysubsetsofthatmasterformorevenallowusers toenteroreditsubsetsofdata. Beforecreatinganotherviewofanexistingform,let’slookattheviewpropertiesofaform.Youcan findtheviewpropertiesofyourprimarydatacollectionforminalladditionalviewsyoucreate.
ViewingProperties Toviewthepropertiesofaform,opentheRequestforAbsenceformcreatedatthebeginningofthis chapter.Withthisformopen,clickthePageDesignribbonoptionandselectPropertiesfromtheViews group.YoushouldseeadialogboxsimilartotheoneinFigure9-45.Thisdialogboxconsistsofasetof fourtabbedpagesthatallowyoutoconfigureseveralvisualandprintfeatures.
478
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-45.TheGeneraltaboftheViewPropertiesdialogbox TheGeneraltabincludesbasicsettingsfortheviewbeginningwiththeViewname.Bydefault, InfoPathnamestheviewsView_1,View_2,andsoon.However,thesedefaultnamesdonotreally describethepurposeofthepage.Evenifyouplantohaveonlyasingleviewormaybeaviewforediting dataandaviewforprintingit,providingamoredescriptivenamecanhelpyoulaterrememberwhyyou createdmultipleviewsforthesamedatasource. NotethatyoucancreateaviewthatallowsallInfoPathfeatures,includingfeaturesnotgenerally availablewhendisplayingaforminawebbrowser,byselectingtheoptionDesignviewforInfoPath Filleronly.Usingthiscapabilityononeofyourviewsmeansthatyoucancreateoneviewforweb browsersandaseparateviewforuserswhoworkwiththeformdirectlyfromtheInfoPathFillerinstalled ontheirdesktops. Asyouaddmoreviews,youcanselectwhichviewtouseasthedefaultview,aswellaswhetheryou wanttodisplayamenuofavailableviewstotheuserduringdataentry.Finally,theViewsettings sectionallowsyoutodefineaviewthatprovidesread-onlyaccesstothedata. IntheBackgroundsection,youcandefineabackgroundcolorfortheformorevenpaintthe backgroundwithanimage.Whenusinganimageforthebackground,youmayneedtotilethe background.Acommontilingtechniquedefinesahorizontalribbonimagethat,whentiled,vertically givestheillusionofalargerbackgroundimagethatrepeatstocreateapageofanylength. IntheLayoutsettingssection,youcandefinethepagewidthbasedonpixels,inches,centimeters, orpoint.Youprobablywanttousethisoptionwhencreatingaviewforprintingdataandtherefore chooseinchesorcentimeters.Youcanalsochoosetousescrollbarswhennecessarywithintheform. TheTextSettingspageintheViewPropertiesdialogboxletsyouchangethefontandfont characteristicsforanycontrolslistedinthelistboxontheleft.Whenyouchangethefontsettings throughthisdialogbox,youupdatethefontineveryinstanceoftheselectedcontrolthroughoutyour
479
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
formforthecurrentview.Forcontrolsthatappearfrequentlythroughoutyourform,thismethodof changingthefontcharacteristicssavestimeoverchangingthemforeachcontrolinstance. ThePrintSettingspageallowsyoutosettheprintcharacteristicsoftheview.Thefirstoptionon thispageletsyouselectanotherviewtouseinsteadofthecurrentdefaultviewwhentheuserattempts toprint.Youcanalsochangetheprintorientation,includeheadersandfooters,definethenumberof copies,andselecttoprintallorarangeofpages.Whenyou’redefiningheadersandfooters,InfoPath includesautotexttodisplaythedateand/ortimeyouprinttheform.Youcanalsoincludepage numberingforlongerviews. ThePageSetuppageletsyoupresettheprinterthatthecurrentviewusesaswellasthepaperand margins.Thankstothispage,usersdonothavetoworryabouthowtoselectanetworkprinterorwhich papertraytouse,orhowlargetomakethemargins.Youcanpresetalltheseoptionsforthemsothey onlyneedtoprinttheviewandthengototheprintertoretrieveit.
GeneratingYourSecondView Nowthatyouknowthebasicpropertiesofviews,let’screateasecondviewfortheRequestforAbsence formthatshowsonlythenamesofthepeoplewhowillbeabsent,thedatestheyhaverequested,andthe totalnumberofhours. Tocreateanewview,openthePageDesignribbonandclickNewfromtheViewsgroup.Figure946showsthedialogthatInfoPathbeginswithtoaskforthenameofthenewview.Iwillcallthissecond viewManagementAbsenceSummary.Aftersupplyinganame,clicktheOKbuttontobegindefining theview.
Figure9-46.TheViewstaskpanelletsyouaddanewviewwiththisdialog. Thefollowingliststepsthroughthecreationofthissecondview:
480
1.
ChangethetitletexttoManagementAbsenceSummary.
2.
FromtheInsertribbon,selecttheCustomtableoptionfromtheTablesdropdownandcreateatablewithsixcolumnsandtworows.
3.
SwitchtotheDataribbonandclicktheShowFieldsoptionintheFormData grouptodisplaythefieldsassociatedwiththisform.
4.
DragtheEmployee_IDfieldtothefirstcellinthesecondrow.
5.
DragtheEmployeeNamefieldtothesecondcellinthesecondrow.
6.
DragtheAbsentFromfieldtothethirdcellinthesecondrow.
7.
DragtheAbsentTofieldtothefourthcellinthesecondrow.
8.
DragtheHoursRequestedfieldtothefifthcellinthesecondrow.
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
9.
DragtheAbsenceTypefieldtothesixthcellinthesecondrow.Withallfields nowaddedtothesecondrow,youmightwanttoresizesomeofthecells.Also, noticethatbydraggingthefieldsfromtheDataSourcepanelintothecell,you automaticallygetthenameofthefield,notjustthefield’scontrol.Youcanedit theselabelsifnecessary.Attheveryleast,youwillneedtoselectthemand dragthemintothefirstrow.
10. Right-clickeachofthedatecellsandselectChangeControlfromthedropdownmenu.Inthesubmenu,selectTextBox.Thischangesthedisplaytypeof thesetwofields. 11. Right-clickeachofthecellsinthesecondrowandselectTextBoxProperties fromthedrop-downmenu.Inthepop-updialogbox,clicktheDisplaytaband checktheoptionRead-only. 12. OpentheControlspanelandaddatextboxcontroltotheAbsenceTypecell aftertheothercontrols.Bydefault,InfoPathnamesthiscontrolField1. ChangethenameofthisfieldtoAbsenceDescriptionbyusingthetextbox properties. 13. SelecttheAbsenceTypetextboxandthenopentheManageRulesdrop-down menufromtheRulesgroupoftheTableToolsLayoutribbon. 14. ClicktheNewbuttontobeginanewrule. 15. Definethecondition:AbsenceType is greater than 0.Also,clickthecheck boxforHidethiscontrol.Youwanttousethisconditionalformattohidethe AbsenceTypecontrolwhentheformdisplays.Youdonotwanttoseethe integervaluethatthisfieldholds.Rather,youwanttoseetextthatdescribes theabsencetype.However,youcannotdothisdirectlyinthisfield.However, youcanusetheAbsenceTypefieldtocreateasetofrulesthatplace appropriateuser-friendlytextinthetextboxnamedAbsenceDescription. 16. SelectNewfromtheRulespanelagainandselectanActiontyperule. 17. Next,definethecondition:AbsenceTypeisequalto1. 18. ClicktheAddActionbutton.IntheActiondialogbox,selecttheactionSeta field’svalue.FortheField,clickthebuttontotherightofthetextbox,select AbsenceDescription.IntheValuetextbox,enterthetextAnnual Leave,since thistextrepresentsthetypeofleaveassociatedwiththetypevalueof1. 19. ClickOKtwicetosaveyourfirstrule. 20. Repeatthelastfourstepstoaddrulesfortheotherfiveoptionbuttonsdefined asfollows: •
2:PersonalLeave
•
3:SickLeave
•
4:JuryDuty
•
5:MilitaryDuty
•
6:TimeWithoutPay
481
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
21. ClosetheRulesdialogboxwhenyouhavecompleteddefiningallsixrules. Nowlet’stestthenewview.SwitchtotheHomeribbonandclickPreviewfromtheFormgroup.In previewmode,InfoPathshowsasimulationoftheformasitwouldappearinabrowser.Makesurethe currentviewhasbeensettotheinitialview(View1inthisexampleunlessyourenamedit).Enterdata fortheformasifyouwerefillingoutthecompleteform.Ratherthansavingthedata,switchtothe ManagementAbsenceSummaryviewofthedatausingthedrop-downinthePageViewsgroup.You shouldseeaformthatlookssomethinglikeFigure9-47.
Figure9-47.Themanagementsummaryviewofabsences NoticethatonlyonetextboxappearsintheAbsenceTypecolumn.Thetextbox AbsenceDescriptionappearswiththetextassignedtoitbytherulecreatedintheAbsenceTypetext boxcontrol,whichwehid. Ihopethatthissimpleexamplegivesyousomeideasofhowyoucancreatedifferentviewsfromthe sameform.
BuildingDataConnectionsforForms Inthefirstpartofthischapter,yousawhowtocreateabasicformthatgeneratesXMLdatafileswhen yousubmittheform’sdata.However,youcanalsocreateanInfoPathformthatusesSQLorAccess tablesasboththesourceandthedestinationfordatafromaform.Todothat,youneedtocreateadata connectionfromtheformtothedatabase.Actually,ifyouplantousetheformwithInfoPathFiller,you needtwoconnections,onetoselectdatafromthedatabasetobuildtheform,andasecondtoupdate thedatabase.ThissectionexploresthestepsneededtocreateadataconnectiontoaSQLServer database.
482
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Tobegin,selecttheoptionDesignaFormTemplatefromtheGettingStartedmenuwhenyou openInfoPath.ThisopensthedialogboxshowninFigure9-48.
Figure9-48.BeginaformtemplatewithaSQLServerdataconnection. Inthisdialogbox,selecttheDatabaseformtemplate.Bydefault,InfoPathcreatesawebcompatibleform,whichmeansthatitcanreaddatafromthedatabase,butitcannotsubmitdatabackto it.YoumustchangetheformviewpropertiestodesigntheviewforInfoPathFillerifyouwanttoboth displaydataandsavechangestothedata. WhenyouclickDesignthisform,theDataConnectionWizardopens.Atthispoint,youronly optionappearsatthetopoftheform,allowingyoutoselecttheSQLServerorAccessdatabaseyouwant touseasyourform’sdatasource.ClicktheSelectDatabasebuttontocontinue. InfoPaththenopenstheSelectDataSourcedialogbox,showninFigure9-49.Thisdialogbox showsexistingconnections,ifany,thathaveanextensionof.odc.Ifyoudonotknowthedetailsbehind theseexistingconnections,youprobablyneedtocreateanewconnectionbydouble-clickingeither +NewSQLServerConnection.odcor+ConnecttoNewDataSource.odc.
483
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-49.Thelistofavailabledatasources
■NoteIfyouwanttoconnecttoanAccessdatabase,youshoulddouble-clicktheoption+ConnecttoNewData Source.odc.Thisactionopensadialogboxthatletsyouselectfromavarietyofdatasourcesyouhavealready definedonyourmachine.WhileitmaybetemptingtoselectadatasourceotherthanSQLServerorAccessjust becauseyoumayseeitonthislist,theseothersourceswillnotworkwithInfoPathatthistime.
Forthisexample,youwillusethePUBSdatabaserunningonSQLServer2005andwilltherefore selecttheoption+NewSQLServerConnection.odc.Thisactionopensanotherdialogbox,titled WelcometotheDataConnectionWizard,asshowninFigure9-50.
484
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-50.Choosethetypeofdatasourceyouwanttocreate. YouneedtoknowthenameoftheSQLServeryouwanttoconnecttobeforeyoucontinue.Ifyou arenotsure,checkwithyourdatabaseadministrator.IfyouarerunningSQLServeronyour developmentmachine,youcouldreferencetheserverwiththegenericnameoflocalhost.However,if youthenpublishyourformonanetworkshareratherthanyourlocalmachine,theformwillnotbeable toresolvethereferencetolocalhost.Itisalwaysbettertonamethespecificserveryouwanttouse,as showninFigure9-51.
Figure9-51.Defineadatabaseserverconnection.
485
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
IfyouuseacentralDomainControllertologintoyourmachineandvalidateusersonyour corporatenetwork,orevenifyouarerunningeverythingonahigh-powereddesktopworkstation,you cancontinuetouseWindowsAuthenticationasyourlogoncredentials.YoucanalsouseaspecificSQL ServerusernameandpasswordifyourSQLServersecurityhasbeensettomixedmode.However,when youuseSQLcredentials,theoperatingsystempassesyourlogoninformationoverthenetworkusing cleartext,makingitmuchlesssecurethanWindowsAuthentication,whichdoesnot.IfyoudouseaSQL Serverusernameandpassword,atleastuseastrongpassword.Strongpasswordsincorporateatleast threeofthefollowingtypesofcharacters:uppercaseletters,lowercaseletters,numbers,andsymbols. Passwordsshouldhaveatleast8characters;Microsoftrecommends14charactersormore.Most importantly,donotsimplyusewords,nomatterhowlong,thatcouldbe“discovered”usingadictionary attack. Afteryou’vespecifiedadatabaseserver,theDataConnectionWizardgoestotheserverand retrievesthenamesofallthedatabasesdefinedonthatserver.Itthenpopulatesadrop-downlistonthe nextscreenofthewizardwiththesedatabasenames.Youmustselectwhichdatabaseyouwanttousein thisconnection.Whenyouselectthedatabaseyouwant,thewizardpopulatesthelistinthebottomhalf ofthisscreenwiththenamesofthetablesinthedatabase.Figure9-52showsthewizarddefininga connectiontothetableAuthorsinthedatabasePUBS.
Figure9-52.Thedialogboxforselectingthedatabaseandtableyouwanttouse.
■NoteWhenworkingwithInfoPath,youmusteventuallyselectatleastasingletabletoworkwithonyourform. However,youcancreateagenericconnectiontojustthedatabasebynotcheckingtheboxConnecttoaspecific table.Then,eachtimeyouselecttheconnection,beforeyoucancontinuecreatingyourform,InfoPathwillpopup adialogboxaskingyoutoselectatable.
486
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
WhenyouclickNext,thewizarddisplaysthedialogshowninFigure9-53,askingyoutoprovidea nameforthedataconnection.Bydefault,thewizardcombinesthenameoftheserver,thedatabase,and theselectedtabletodefinetheconnectionname.WhileIdonotrecommendchangingthisdefaultsince itisverylogical,youmaywanttoprovideadescriptionandauserfriendlyname,whichthenappearin yourDataSourceslistshownbackinFigure9-49.
Figure9-53.Thedialogboxforsavingthedataconnectionfile Next,thewizardcandisplaytheavailablefieldsintheselectedtableifyouclickthecheckboxas showninFigure9-54.Bydefault,InfoPathselectsallthefieldsinthetable.However,youshoulddeselect anyfieldsthatyoudonotneedtouse,tokeepyourqueriestothedatabaseassmallaspossible.Inthis samedialog,youcanaddanothertable,removeatable,ormodifyatable.
487
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-54.TheDataConnectionWizardshowingonetableselected Ifyouwanttoincludeothertablesintheform,clicktheAddTablebuttoninFigure9-54.Inthis case,toconnecttheAuthorstablewiththeTitlestable,weneedtousethejoiningtable,TitleAuthor,as showninFigure9-55.
Figure9-55.Don’tforgettoincludethelinkingtablesbetweenmany-to-manyrelationships. AfteryouselectthetableandclickNext,InfoPathwillcheckwhetherthedatahasreferential integritydefinitions.Ifso,itwillmakearecommendationforwhichfieldtousetolinkthetwotables,as
488
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
showninFigure9-56.Ifthisisnotthecorrectrelationship,youcanclicktheRemoveRelationship buttonandclicktheAddRelationshiptobuildyourownlinkbetweenthetwotables.
Figure9-56.Selecttheexistingrelationshipbetweenthetablesordefineyourown. Youcancontinuetoaddmoretablestoyourformview.Figure9-57showsthethreetablesneeded tolinkauthorswiththeirtitles.
Figure9-57.Anexamplewiththreelinkedtables
489
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
AfteryoufinishbuildingtheviewneededfortheformandclicktheNextbutton,thewizard promptsyoutosavethedataconnectionfile.Youcanacceptthedefaultfilenameorprovideyourown. Ineithercase,youshouldincludeyourowndescriptionaswellasafriendlynamefortheconnection. Youcanalsosupplykeywordsthatcanhelpyousearchfortheconnectionyouwant.However,most peopledonothaveenoughconnectionstomakethisarequiredstep.Moreimportantly,chooseaname forthefilethatclearlydefineswhatdataitaccesses.Figure9-58showsthefilenameselectedforthis example’sconnection.
Figure9-58.Setthedataconnectionname. WhenyouclickFinish,InfoPathreturnsyoutothefirstscreenoftheDataConnectionWizard. However,nowthelowerportionofthescreendisplaysthedatasourcestructure.Ifyouseeonlythetable name,makesuretoselectthecheckboxShowtablecolumns.Youshouldseethefieldsinthetable, eachwithacheckboxbeforeit.Checktheboxofeachfieldyouwanttouseinyourform.Ifyoudonot needthefield,donotcheckit.Includingonlythefieldsyouneedinyourformhelpsthequeryexecute fasterwhenretrievingdata.Figure9-59showsanexampleofselectingonlyafewoftheavailablefields fromtheAuthorstable.
490
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-59.Selectfieldstoretrievefromthetable. Noticethatthefieldau_idhasaselectedcheckboxbeforeit,butthatInfoPathdimsthecheckbox sothatyoucannotselectordeselectit.Thisoccursbecauseyoumustincludeprimarykeyfieldswhen youwanttoeitherselectspecificrecordstodisplayorupdatedata.Withouttheprimarykey,youcannot submitanychangesyoumaketothefieldsofadisplayedrecord,becauseSQLServerwouldnotknow whichrecordtoupdate. WhenyouclickNext,thewizarddisplaysonefinalscreen.Thisscreenletsyouenteranameforthe primarydataconnectionusedtoselectdatafromthedatabasefortheform.Ifyoudefinedanon-webbasedform,youcanalsosupplyanameforthesubmitconnection.Figure9-60showsthisdialogbox.
491
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-60.Nametheretrieveandsubmitdataconnections. Atthispoint,youhavefinisheddefiningyourconnectionforthecurrentform.However,youcan reusetheconnectionforadditionalforms.Inthatcase,simplyselecttheconnectionfromthelistshown earlierinFigure9-49.Iftheconnectionpointstothedatabaseingeneral(notableselected),youfirst needtoselectatable.Thentherestoftheprocesscontinuesfromthepointatwhichyouselectthefields youwanttouseandenterthenameofoneormoredataconnections.Thenextsectioncontinuesthe storyofcreatingyourSQL-basedformatthepointjustafteryouhavefinishedusingtheData ConnectionWizard.
ConnectingInfoPathFormstoData Onceyou’vemadeitthroughthedefinitionofthedataconnection,InfoPathgeneratesadefaultformfor workingwiththedata.Thisdefaultform,showninFigure9-61,hasthreesections.
492
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-61.Startbypickingaqueryfield(s)fortheform’sdataretrieval. ThetopsectionusestheTitleandTablelayoutcontrolyousawearlier.Hereyoucanenteratitle fortheform.Youcanalsoincludecontentfortheformhere.However,beforedoingthat,let’slookat whatyoucandowiththeothertwosections. Thesecondsectioniscalledthequerysectionbecausehereyoucandragfieldsthatyouwanttouse toquerythedatabase.Yourfirstthoughtmightbetousetheprimarykeyforthemaintableasthequery field.Inthiscase,youprobablywanttodragtheprimarykeyfortheAuthorstable,au_id,fromthelistof queryfieldsintheFieldspaneltothequerysectionoftheform.Whileusingtheprimarykeystoquery thedataisnotabadchoice,youcanactuallyuseanyfieldtoquerythedatabase.Usingfieldsthat correspondtoindexesinthedatabasehelpstheperformanceofthequery. Inthethirdsection,youplacedatafields.Again,InfoPathprovidesaneasywaytodothis.Simply expandtheFieldsintheFieldspanelontheright.Ifyouwanttoincludeallthefields,simplydragthe tableAuthorstothethirdsection,asshowninFigure9-62.However,ifyouonlywantasubsetofthe availablefields,opend:Authorstoaccesstheindividualfields,draggingeachoneindividuallyovertothe thirdsectionoftheform.
493
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-62.Pickdatafieldstodisplayintheform. Noticethatafteryoudragtheentiretabletothethirdsection,InfoPathautomaticallyplacesthe datainarepeatingsectionbecausetherecouldbemorethanonerowdisplayed. Ontheotherhand,therearetimeswhenyoumightwanttousetherepeatingsectionwithcontrols: ifyouwanttoworkonasinglerecordatatime,forexample,ifyouhavealargenumberoffields,orif anyofthefieldsconsistoflargetextareas.Initially,InfoPathaddsallthecontrolsverticallydownthe form.Ifyouwanttoprovideadditionalstructuretothissection,perhapsbyaddingatablewithinthe sectiontopositiontheindividualcontrols,youmustdothatmanually. Nomatterhowyoulayoutthefields,youcancontrolmanyofthepropertiesofthecontrolsasyou sawearlier;specifically,youcanconvertthecontroltypesofsomefieldsoraddconditionalformatting, rules,anddatavalidation.Figure9-63showstheresultingformtemplatedesignedtodisplayalistof employeeswiththeirvacationandsickleavebalances.
494
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-63.Useatablewithinvisibleborderstorearrangetheformcontrolsintoafinalform. Toseehowthistemplateworks,clickthePreviewbuttoninthetoolbar.Thisopensanewwindow thatdisplaystheformasitwouldappearwhensomeoneopensit.InFigure9-64,youcanseetheresult ofenteringasingleAuthorIDvalue.WhenyouclicktheRunQuerybutton,theselectquerybuiltinto theDataConnectionWizardusesthefieldsdefinedinthequerysectionofthereporttoreturnafiltered setofdata.SincetheAuthorIDservesastheprimarykeytothetable,supplyingavalidkeyvaluereturns asinglerecord.
Figure9-64.Querytheformdatausingasinglefield,thetable’sprimarykey,AuId.
495
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■CautionYoumayseeapopupdialogafterclickingRunQueryinFigure9-62ifyouaretestingyourformbefore publishing,asyourlocalcopyoftheformtriestoaccessdataonanetworkSQLServerinstallation.Assumingyou trustbothyourformandtheSQLServer,youcanmerelyclickYestoclosethisdialogandexecutethequery.You shouldnotseethisdialogifyouclicktheRunQuerybuttonafterpublishingtheformaslongastheconnectionis trustedthroughSharePoint.
PerhapsamoreinterestingresultappearswhenyouclicktheRunQuerybuttonwithoutentering anyvaluefortheAuthorID.Inthiscase,thequeryperformsnofilteringonthedataretrieved,thus returningtheentiretableasshowninFigure9-65.Iwouldnotrecommenddoingthisonalargetable withmillionsofrecords.Infact,InfoPathwarnsthatreturningalltherecordsforatablecantakesome time.Ontheotherhand,itcanbequiteusefulforasmallsetofdata.
Figure9-65.Retrievetheentiretablewhennoqueryfieldvalueisspecified. However,evenifyouhavemillionsofrecords,youcouldaddqueryfieldstolimitrecordstoa reasonablenumber.Inthecaseofyouremployeefile,youmightwanttoseeemployeesonlyfroma specificdepartment.
496
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■TipAsyoucanseebytheexamplesprovided,thequeryvaluesmustexactlymatchvaluesinthetable.Youcan getaroundthislimitationbycreatingaviewinthedatabasethatcombinesthedatayouwant,includingthe additionofcalculatedfields.Forexample,ifyouwanttolistemployeeswithmorethan100hoursofcombined vacationandsicktime,youcouldcreateaBooleanfieldintheviewthatresolvestoTrueifthesumofvacation andsickhoursexceeds100.Then,inyourInfoPathform,youcanincludethisfieldinthequerysectionandcheck foravalueofTrue.
CreatingandReusingFormSectionswithTemplateParts Mostprogrammerspracticecodereusability.Formdesignerscanalsobenefitfromreusingcommon groupsofcontrols,especiallywhenthosecontrolsrequireextensiveformatting.InfoPathprovidesaway tobuildgroupsofcontrolsthatyoucanlaterreuseinothertemplates.Inthisexample,youwillbuilda templateforamailingaddresssoyoucanuseitinavarietyofforms,includingtheordershipmentpage ofanordermanifest.Infact,thispageusesthetemplateparttwice,onceforthemail-toaddressand onceforthebill-toaddress. Youstarttheprocessofbuildingatemplatepartsimilartothatofbuildingatemplateform.Open theNewpageoftheBackstagewhenyoustartInfoPath.FromtheTemplatePartssection,selectthe Blanktemplate.ThenclicktheDesignthisFormbuttonasshowninFigure9-66.
Figure9-66.Designatemplatepart.
497
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
■NoteWhendesigningatemplatepart,youmustbeginwithablanktemplateoranexistingXMLschema. However,youcanchangethebindingforthetemplatepartcontrolsafteryouaddittoanotherformtobindthe controlstootherdatasources.
WhenInfoPathopenstheblanktemplatedesignarea,youshouldnoticethatyouhaveallthedesign toolstocreateaformlayout,addcontrolstothatlayout,definedatasources,andrunyourdesign throughtheDesignChecker.Youdonothavetheabilitytocreatemultipleviewsforthetemplatepart. However,inanyformthatyouaddthetemplatepart,youcancreatealternativeviews.Youalsodonot havetheoptionsassociatedwithpublishingtheform,becauseyoucannotpublishatemplatepart,since itisnotmeanttorepresentanentireformbyitself. Figure9-67showsthecompletelydesignedtemplatepart.(Youcanalsofindthiswebparttemplate inthefreebookcodedownloadatwww.apress.comwiththenameTemplateGroup_MailToAddress.xtp.) Itcontainsseveralrequiredfieldsandoneoptionalfield.Whilemostofthesefieldsconsistofsimpletext boxeswithalittleaddedformatting,theStatefieldusesadrop-downlistboxthatincludesthenamesof allthestates.Youcanaddinformationforadrop-downmanually(aswasdoneforthisexample),readit fromtheform’sdatasource,oruseanexternaldatasource.Youcanevenchangethedatasourceafter youdropthetemplatepartontoaformthatyoulaterdesign.Therefore,youmightcreateaminimallist box,onewithonlyafewentriesfortestingpurposes,ifyouknowthatthedatasourcefortheformyou plantobuildlatercanretrievevaluesforthelisteitherfromthedatasourceitselforfromanother externaldatasource.
Figure9-67.Thecompletedtemplatepartshowingadrop-downstatelist
498
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Whenyouhavefinishedthetemplatepart,testitusingthepreviewmode.Thensavethecompleted parttoadirectoryofyourchoice.
■TipIfyouplantodesignalargenumberofforms,keepingyourreusabletemplatepartsinaseparatedirectory onyourdesignmachine(oranetworkshareifyouareonlyoneofseveralformdesigners),helpsorganizeyour templateparts.
Afteryouhavesavedit,opentheControlspanelfromtheControlsgroupoftheHomeribbonand clickthehyperlinkbeneaththelist:AddorRemoveCustomControls.Thisactionopensthedialogbox showninFigure9-68.
Figure9-68.TheCustomControlslistpage ClicktheAddbuttontoaddthecontrolyoujustcreated.
■NoteYoumustsavethetemplatepartfirst.Thisdialogboxdoesnotassumethatyouwanttoaddthecurrently opentemplatepart.
Fromtheresultingmenu,youcanaddeitheratemplatepartoranActiveXcontrol.Inthiscase,you wanttoselecttheTemplatePartoptionandclickNext.
499
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Thedialogboxnextasksforthefilelocationofthetemplatepart.Enterthefulldirectorypathwhere yousavedthecompletedpartmanually,orusetheBrowsebuttontolocateandselectthefile.Whenyou clicktheFinishbutton,thefinalpageofthedialogboxshowsthenameassignedtothecustomcontrol andtheversion.ClickingtheClosebuttononthispageclosesthedialogboxandreturnsyoutotheAdd orRemoveCustomControlspageshowninFigure9-69,whereyoucanseethatyouhaveaddedyour customtemplatepartsuccessfully.
Figure9-69.TheAddorRemoveCustomControlsdialogboxshowingthenewtemplatepart ThenexttimeyouopenInfoPathtodesignanewform,oreventomodifythedesignofanexisting one,youwillseeintheCustomsectionoftheControlspanelthenewtemplatepartyoucreatedand saved.Figure9-70showstheAddressespageoftheOrderShippingInformationform.Onthispage, youneedtohavetwopossibleaddresses.Thefirstisthecustomer’smailingaddress,andthesecondis thecustomer’sbillingaddress.Manybusinessesprovidecentralizedorderingservicesfortheirremote locations.Therefore,whileyoumightshipanordertooneaddress,youmayneedtosendthebillforthe ordertoanentirelydifferentaddress.
500
CHAPTER9■ ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Figure9-70.CompletedAddressespagefortheOrderShippingInformationform
■NoteYoucanalsoviewallofthecontrolsavailablefromtheControlsgroupoftheHomeribbonbyclickingthe Morebuttoninthebottom-rightcorneroftheControlslistbox.
Inthiscase,youaddedthesamecustomtemplateparttwicetothesameform.However,youcan alsoaddthissamecontroltootherforms.Ineachcase,youcancustomizetheformattingofthefields, thelabeldata,thebindinginformationforthecontrols,andeventhedatasourceforthedrop-downlist box.Templatepartscanbeassimpleasthisoneorsignificantlymorecomplex.Thepointisthatthey providereusabilitywithinformdesign,whichalsoresultsinuniformityinthewaysimilarinformation appearsandworks.
501
CHAPTER9■ANINTRODUCTIONTOCREATINGFORMSWITHINFOPATH
Summary Inthischapter,youexploredsomeofthebasicfeaturesofInfoPath.Youstartedbyseeinghowyoucan createnewformsforanyoftheSharePointlistsgivingthemtheirownspecial“flavor”—orperhapsa betterwordisbranding. YouthensawhowtousethesamebasictechniquestobuildanInfoPathformfromablank template.YoucanalsonowbuildformsthatuseexternaldatasourcestodisplaydatafromSQLServeror Access.Youevenlearnedhowtocreatereusableformtemplatepartsthatcansaveyoutimeinthefuture forthosegroupsoffieldsthatseemtoappearineveryformyoucreate.Whilewedidnotpublishthe formstoSharePointyet,youwilllearnhowtodothatinthenextchapter.However,bychangingthe viewpropertiesofanyoftheformsyoucreatedhere,youcancreateformsthatcanincludeadditional features.aslongasyousavethemonanetworkdriveandaccessthemusingtheInfoPathFiller application. InfoPathprovidesmorefeaturesthanIcouldcoverinsuchashortamountofspace.Fortunately, bookslikeProInfoPath2007,byPhiloJanus(Apress,2007)canhelpyoufurtherexplorethedetailsof InfoPath. ThenextchapterdivesdeeperintousingInfoPathwithSharePoint,allowingyoutouseliststoboth populateyourdrop-downformlistsandsubmitdata.Youwillalsolookmorecloselyatformlibraries withinSharePointtostoreyourformsandthenuseFormsServicestodisplaytheformswithina browser.
502
CHAPTER 10
■■■
Publishing InfoPath Forms in SharePoint Libraries Inthelastchapter,yousawhoweasilyyoucanbuildInfoPathforms.Whenbuildingthoseforms,the chapterfocusedprimarilyonusingformscreatedandsavedinasinglelocation,evenifthatlocationwas onyourlocalcomputerorinaregularSharePointdocumentlibrary.However,upuntilthispoint,unless youhadacopyofInfoPath2010installedonyourmachine,youcouldnotopenandusethatform. Furthermore,youreallydon’twanttosendacopyoftheformtoeveryonewhoneedsitbecause,for example,makingupdatestotheformwouldbecomedifficultifeveryoneatyourcompanyhadtheirown copyoftheform.Rather,youshouldpublishtheformtoacommonlocationsuchasanetworkfileshare sothatotherpeopleinyourorganizationcanaccessit. However,eveniftheseusershaveaccesstothenetworkfileshare,perhapsnoteveryonethatneeds toenterdataintothatformhasacopyofInfoPathinstalledontheircomputers.Tobetrulyavailableto everyone,youneedtocreateformsthatdonotrequiretheuserstohaveInfoPathontheirmachines. SharePointtogetherwithFormsServicesprovidessuchasolution.YoucanstoreInfoPathformsin SharePointlibrariesandthenopenthemviaInfoPathFormsServices.However,thereisacosttoprovide thisabilitytodisplayformsusingyourwebbrowser:youmustlimityourdesignoptionsslightlyby avoidingtheuseofsomeofInfoPath’sfeaturesthatFormsServicesandbrowsersingeneraldonot support. Inthischapter,wewilllookfurtheratpublishingforms,bothtonetworkfilesharesandform libraries,usingSharePointtoallowmoreuserstoaccessthem.
PublishingInfoPathFormstoaNetworkFileShare TheeasiestwaytopublishyourInfoPathforms,especiallyifyouareasmallcompanyandeveryonehas InfoPathontheirdesktop,istopublishthemtoasimplenetworkfileshare.Anetworkfileshareisany directoryonyournetworkthatpeopleinyourorganizationcanaccessfromtheirlocalcomputers. AnyonewithInfoPathontheirlocalcomputercanopenthepublishedformsandenterdatausing them.Theycansaveacopyoftheirdatabacktothesamedirectoryortoanyotherdirectory.Let’ssee howthisworksbyusingoneoftheformscreatedinthelastchapter,theRequestforAbsenceReport. IfyoupreviouslysavedyourInfoPathformtoanetworkfilesharethatotherscouldaccesswhileyou weredesigningit,youmaynotneedtodomuchofanything.Infact,allanyoneelsewouldneedtodois tonavigatetothenetworksharewhereyousavedtheInfoPathform(theonewiththe.xsnextension)
503
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
anddouble-clickonitsnametoopenit.Figure10-1showstheRequestforAbsenceformstoredona mappeddrive.
Figure10-1.SaveyourInfoPathformtoamappednetworkdrive. AslongastheusershaveInfoPathFiller2010,thesecondofthetwoInfoPathprogramsinMicrosoft Office2010,installedontheirlocalmachine,itwillopenthe.xsnfilereadyforthemtostartfillinginthe form.ThefirsttimetheyopenanInfoPathform,theymayseeadialogaskingiftheywanttoset MicrosoftOfficeasthedefaultprogramforopeningandediting.xmlfiles.Unlesstheyareusinganother programtoedit.xmlfiles,theyshouldclicktheOKbuttoninthisdialog. YoucouldevenstartdirectlyfromInfoPathFiller2010bygoingtotheOpenpageintheFilemenu (Backstagearea),asshowninFigure10-2.Thispageshowspreviouslyopenedforms.However,italso hasabutton,FindaForm,thatyoucanusetodisplaytheOpendialog.Fromthisdialog,youcan navigatetothedirectoryorfilesharethathasthefileyouwant,selectit,andopenit.
Figure10-2.InfoPathcanopenaformstoredonasharednetworkdrive.
504
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
However,whatifyoudidnotstoretheformonanetworkdrivewhiledesigningit?Onewaytogetit toanetworkdrivewouldbetocopythefilefromyourlocaldrivetothenetworkdrivethenexttimeyou connecttothenetwork.Atthatpoint,otheruserscouldaccesstheformasIjustdescribedaslongas theyhadInfoPathFiller2010installedontheirlocalcomputer. Thereisonemorewayyoucanpublishyourformtothenetworkdrive.Youcouldopentheform usingInfoPathDesigner2010.Thenfromthebackstagearea,selectthePublishpage.Onthispage,find theareatitledPublishaformtoanetworklocationorfileshare,showninFigure10-3,andclickthe buttonNetworkLocation.
Figure10-3.UseInfoPathtopublishaformtoanetworklocation. Thepublishingwizardopensadialogthatbeginsbypromptingforthepathandfilenamewhere youwanttostoretheform.NotethatinFigure10-4,Ihaveenteredthepathusingamappeddriveletter.
505
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-4.PublishingWizardpromptsfortheformpathandfilename. Somecompaniesdefinestandardmappeddrivesforemployeestousewhenaccessingspecial networksharessuchasalocationwheretheycanfindthecompany’son-lineforms.However,unless everyonewhoneedstoaccessthisformdirectorymapstheURLtothedirectorywiththesamedrive letter,theycouldhaveproblemsaccessingthefile.Therefore,whenyouclickNextinthePublishing Wizard,youcanaddanalternatepath,asshowninFigure10-5.
Figure10-5.Provideanalternatepathtoletotherseasilyaccesstheform.
506
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
WhenyouclickNextonthispage,thePublishingWizarddisplaysasummarypagewiththe informationusedtodefinewhereyouwanttopublishtheform.Fromthispage,youcanstillreturnto thepreviousscreenstocorrectanyofthepathsorfilenamesentered.Ontheotherhand,ifeverythingis correct,youcanclickthePublishbuttonatthebottomoftheformtocompletethepublishingofthe formtothenetworkshare. NoticethereferencetoSecurityLevelonthispage.Bydefault,InfoPathsetsthesecuritylevelfora formtoDomainifyouareconnectedtoanetworkwhenyoucreatetheform.Domainsecurityallows formstoaccesscontentstoredintheformitself,aswellasthefollowing: •
Datainthesamedomainastheform
•
DataindomainsincludedinthetrustedsiteszoneinInternetExplorer
•
ContentinthelocalcomputerandlocalintranetzoneofInternetExplorer
InfoPathdefaultstoaRestrictedsecuritylevelwhenyoucreateaformwhilenotconnectedtoa network.Restrictedsecuritylimitstheformtoaccessingcontentonlyfromwithintheformitself.This meanstheformcannotuseanyofthefollowingfeatures: •
Customdialogboxes
•
Customtaskpanes
•
Dataconnections
•
Humanworkflowservices
•
Linkedpictures
•
MicrosoftActiveXcontrols
•
Managedcodeandscript
•
PrintviewforMicrosoftOfficeWord2003
•
RolesbasedonActiveDirectoryservices
•
Rulesassociatedwithopeningforms
Finally,theFullTrustsecuritylevelallowsaformtoaccessdatainitself,inthesamedomainas theform,andinotherdomainswhereithasaccess.Italsoprovidesaccesstofilesandsettingsonthe computer.YoucangrantFullTrusttoaformifyoudigitallysignaformwithatrustedrootcertificate. YoursystemadministratorcanhelpgeneratecertificatesthatallowyoutoinstallanduseFullTrust forms. Toopentheformafterpublishingit,navigatetothenetworkshareanddouble-clickonthe.xsnfile asmentionedearlieroropentheformtemplatedirectlyfromInfoPathFiller.Afterfillingintheform,you mightask,“HowdoIsavemydata?” Goodquestion.Tosaveyourformdata,opentheFilemenuandselectSaveAstodisplaytheSave dialogshowninFigure10-6.Inthisdialog,youcanseethatIamstillpointingtothenetworkshareusing mymappeddriveX:.Youdonothavetostorethedatafromtheforminthesamedirectoryastheform definitionitself.Infact,inmanycasesyouwillwanttouseadifferentdirectorysoyoucandefinemore limitedrightstotheform’ssourcedirectorythantothedatadirectorywhereusersneedread-write capabilities.However,forthepurposesofthisexample,Iwillusethesamedirectory.Noticealsoin Figure10-6thattheform’ssourcefiledoesnotappear.ThatisbecausetheSavedialogfiltersthe
507
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
directorycontentsontheextension.xml,andtheformsourcehasanextensionof.xsn.However,you canviewthefulldirectorylistingbyshowingallfilestoseethatbothfilesarestillthere.
Figure10-6.Saveadatafilefromaformtothesharednetworkdrive. Oneotherconcernaboutsavingyourformdatathiswayisthattheuserisresponsiblefordefining thefilename.Inthisexample,Icreatedafilenamethatcombinedtheuser’sname,thestartdateofthe absencerequest,andthenumberofhoursrequested.Itwouldbegreatifeveryoneusedthisformat everytimetheysavedtheirdatasothatyoucaneasilysortthefilenamestoseewhenpeoplewereoutof theofficeandforhowlong.However,thatexpectationisnotrealistic.Wewillreturntothisquestionina moment,butfirst,let’slookalittlemoreatthefilejustsavedfromInfoPathFiller. IfyouuseWindowsexplorertoviewthefilesinthemappeddrive,asshowninFigure10-7,youwill seethatyoudoindeedhavetwofilesstoredthere.The.xsnfileistheformdefinitionfilethatyou publishedtothislocation.Thesecondfilewiththe.xmlextensionisthedatafileyoujustsaved.Didyou noticethedifferenceinthefilesizes?
508
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-7.WindowsExplorershowsboththeformsourceandformdatafile. ThedatafilecreatedbyInfoPathFillerissubstantiallysmallerthantheformdefinitionfile.The reasonforthisdifferenceisthatwhenInfoPathFillersavesthedatafromtheform,itsavesonlythedata, nottheformitself.However,itdoesretainareferencetothepathandfilenameoftheformusedto createthedatainthebeginningofthefile.Ifweweretoopenthe.xmlfilewithNotepad(oryourfavorite XMLeditor),youwouldseethedatastoredbyInfoPathFiller.Figure10-8showstheopened.xmlfile.
Figure10-8.Examinethexmlbehindaformdatafile. NoticethatthefirstseveralelementsofthisXMLfileprovidetheoperatingsystemwithinformation toidentifythetypeoffile.ItalsoidentifiesthespecificformfileinthefourthlinethatIusedtogenerate thedatafile.Thatinformationexplainswhyyoucandouble-clickonadatafileandtheoperatingsystem knowswhichformtousetodisplaythedataandwheretofindthatform.
509
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Inthelowerhalfofthisfigure,theelementmy:myFieldsdefinesthedatasectionofthisfile.Eachof thesub-elementsdefinesoneofthedatafieldsfromtheformandincludesthevalueofthatfield. Therefore,itwouldbepossibleforyoutowriteotherapplicationstoreadthisXMLfileandextractthe formdata.WhileyoucouldalsouseXSLTagainstthisdatatocreateotherdisplayformats,afareasier approachwouldbetocreatedifferentviewsofthedatawithinInfoPath.Forexample,youmightusethe defaultviewoftheformtocollectdatathatneedstoappearonseveralrelateddocuments.Thencreate theseotherdocumentsasalternateviewsusingthatdatasotheuseronlyneedstoenterthedataonce.
PublishYourFormDatatoSharePoint Whilebeingabletouseyourformfromanetworkshareprovidesagreatstartingpoint,yousawthatone ofthepotentialproblemsisthattheusercansavethedataafterfillingintheforminanydirectoryhe wantsusinganynamingconventionhepleases.Youcanandprobablywilllosedatathisway.Itwould bemuchbetterifyoucouldatleastsaveyourformdatatoaSharePointlibrary.Let’sopentheRequest forAbsenceformstoredinthenetworkshareandseehowtoautomaticallysavetheformdatatoa SharePointlibrary.Figure10-9showsthatwhenyouright-clickontheformnameinthenetworkshare, thedrop-downdialogcontainsacommand,Design,whichopenstheformusingInfoPathDesigner 2010.
Figure10-9.OpentheformdefinitionfilefromthesharednetworkdriveusingtheDesigncommand. Onceyouhavetheformopen,clickonFileandgototheInfopage,asshowninFigure10-10. NoticethedescriptionunderthesectiontitledSubmitOptions.Itimpliesthatthesubmitoptionscould allowyoutodefinehowuserswillreturncompletedforms.
510
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-10.GototheBackstageInfopagetochangetheform’ssubmitoptions. WhenyouclicktheSubmitOptionsbuttoninFigure10-10forthefirsttime,InfoPathopensthe dialogshowninFigure10-11toaskwhereyouwanttosubmittheform.
Figure10-11.TheSubmitOptionsdrop-downmenu. Forthisexample,chooseSubmitOptions.InitiallytheSubmitOptionsdialogshowninFigure1012hasnovaluesselectedorentered.ThatexplainswhytheuserhadtousetheSaveoptionfromthefile menutosavethedata.
511
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-12.TheSubmitOptionsdialog. ThefirstthingyouwanttodoistoclickthecheckboxAllowuserstosubmitthisform.Thisoption addsaSubmitbuttontotheHomeribbonofInfoPathFillerwhentheformisopened.Italsoenables someoftheotheroptionsonthisdialogpage,asshowninFigure10-13.Immediately,youcanchoose fromthreeradiobuttonstodefinetheactionwhentheuserclickstheSubmitbutton.Oftheseradio buttons,let’schoosethefirstone:Sendformdatatoasingledestination.
Figure10-13.TurnSubmitonanddesignateaSharePointdocumentlibraryasthesingledestination.
512
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Evenwiththisoption,youhaveseveraloptionstochoosefromwhendefiningthatsingle destination: •
E-mail
•
SharePointdocumentlibrary
•
WebService
•
WebServer(HTTP)
•
Hostingenvironment
•
Connectionfromadataconnectionlibrary
ThisshortintroductiontousingInfoPathwillnotgointoeachoftheseoptions.Fornowjustknow thateachdestinationpromptsforitsownspecificinformationneededtosendthedatatothe destinationofyourchoice.Forexample,theE-mailoptionneedsyoutodefinethestandardTo:,Cc:, Bcc:,andSubject:fieldsforthemessage.Youcanalsoprovideabriefintroductiontextthatappearsin thebodyofthee-mail.Theformdataitselfbecomesanattachmenttothee-mail.WhileIwillnotgointo thedetailshere,youcandefinethecontentsofthesee-mailfieldswithdatafromtheform. Inourcase,however,youwanttodefinethedestinationofthedataasaSharePointdocument library.Aftermakingthisselection,youmustdefinewhereitcanfindthatlibrarybyclickingtheAdd buttoninthesectionChooseadataconnectionforsubmit. IntheDataConnectionWizard,youbeginbydefiningtheURLtothedocumentlibrarywhereyou wanttosaveInfoPath’sxmldatafile.TheURLmustincludethefullURLofthesiteandlibrary.This shouldmakesenseconsideringthatInfoPathdoesnotknowanythingatallaboutyourSharePointsite. Figure10-14showsthefirstpageoftheDataConnectionWizardwiththeSharedDocuments libraryofourdefaultsiteasthetargetlocationforsavingtheformdata.Next,weneedtoexaminethefile namethatInfoPathwillusewhensavingthedata.
Figure10-14.IdentifytheSharePointdocumentlibrary.
513
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
InFigure10-14youcanseethatthedefaultfilenameissimplyForm.Thisfilenameisverygeneric anddoesnottellyoumuchaboutthecontentsofthedatafile.However,moreimportantly,youcould neverhavemorethanonefileintheSharePointlibrarywiththisname.Infact,withtheoptionAllow overwriteiffileexiststurnedon,youwouldoverwriteanypreviousformdatawiththenewformdata eachtimeyouopentheformandsubmitdata.Ofcourse,turningoffthischeckboxdoesnotimprove thesituationmuchbecauseitstilllimitsyoutoonefilewiththenameForminyourSharePointlibrary. However,inthiscase,SharePointonlysavesthefirstsubmitteddatafile,rejectinganysubsequent submissionsbecausetheyhavethesamenameanditdoesnotallowoverwritingthedatafile. Tosolvethisproblem,youneedtobuildthefilenamedynamicallyusinginformationthatreturnsa uniquevalue.Youcandothisbyclickingthefunctionbutton(fx)totherightofthefilenametextboxto opentheInsertFormuladialog.Inthisdialog,youcanenteraformulainthelargetextboxoryoucan usetheleftmostofthethreebuttonsbelowthetextboxtoinsertfieldvaluesfromtheformtocreatethe filename. Themiddlebuttonbelowthetextboxletsyouuseapredefinedsetofformulastoactonanydata fromtheform.Inaddition,someformulasallowyoutoaccessdynamicinformationsuchasthecurrent date—Today()andNow())—aswellastheusernameofthepersonfillingintheform—Username(). Forthisexample,let’sbuildafilenamethatconsistsofacombinationoftheemployee’sname,the startingdatefortheabsence,andthetotalnumberofhoursrequested.Allthreeitemscanbegathered fromtheform’sfields.Tocombinethemintoasinglefilename,youusetheconcat()function.This functionletsyoucombinetwoormoreindividualitemsbylistingthemasargumentstothefunction separatedwithcommas.EventhoughthefieldsIselectedconsistofthreedifferentdatatypes(string, date,andnumber),theconcat()functionperformsallthehardworkofcombiningeachofthesefields intoasinglestringthatyoucanuseasafilename.Inadditiontothethreefields,Iamalsoaddinga singleunderlinecharacterbetweeneachofthefieldvaluestohelpmakethemreadable.Youcanseethe resultingformulainFigure10-15. Afterenteringtheformulatocreateafilename,clicktheVerifyFormulabuttontocheckthatyou didnotmakeanyformattingerrorswhendefiningtheformula.Ifyougetadialogboxthattellsyouthat theformuladoesnotcontainanyerrors,youcanclicktheOKbuttontotheInsertFormuladialogto ‘lock-in’yourformula.
Figure10-15.Buildacustomanddynamicfilenameforthedatafile. Figure10-16showstheDataConnectionWizardpageagainwithboththedocumentlibrary locationandthefilenamedefined.Youshouldgivesomeconsiderationastowhetheryouwanttoallow theusertooverwriteafileifitexists.IntheRequestforAbsenceexample,ausercangobackintoan existingdatafilefortheformandchangethetypeofabsenceandresavethedatawithoutneededto
514
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
createanewfile.However,iftheusertriestochangethestartdateoftheabsenceorthenumberof requestedhours,InfoPathcreatesanewfilebasedonyourfilenamingconventionthatusesthesetwo piecesofinformation.Notealsothatifyoucreateasecondfilewithadifferentname,InfoPathdoesnot deletetheoriginaldata.Infact,ithasnowaytoknowwhetherthetwodatafilesarerelated.Therefore, youmustdefineanamingconventionthatallowsorblocksadditiondatafilesfrombeingcreatedwhen youedittheoriginalfile.
Figure10-16.SpecifywhetherInfoPathcanoverwriteafilewiththesamename. WhenyouclicktheNextbuttonoftheDataConnectionWizard,InfoPathshowsyouone additionalscreen,Figure10-17,thatletsyouverifytheinformationyouenteredinthefirstscreenand letsyoudefineanameforthisdataconnection.Ifyouonlyhaveasingledataconnectionfortheform, youcanleavethedefaultname.However,ifyouneedtohavemultipledataconnectionsfortheform, youmightwanttocreateamoremeaningfulnamesoyoucanidentifythepurposeofeachone.For example,youcouldchangethenameMainSubmittoSubmitDatatoSharePointLibrary.
515
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-17.Summary/verificationofdataconnectioninformation. IfyounoticeanyproblemswiththedataintheSummarysectionsuchasperhapsforgettingto check(oruncheck)theAlloverwriteifformexistscheckbox,youcanclicktheBackbuttontocorrect yourmistake.Whenyoufinish,clicktheFinishbuttononthislastpageoftheDataConnectionWizard. ThisactionreturnsyoutotheSubmitOptionsdialoginFigure10-18whereyoucansetsomeadditional properties. YoushouldclickthecheckboxtoshowtheSubmitoptioninboththeHomeribbonandtheInfo tabofthebackstagepageofInfoPathFiller.YoucanevenchangethenameoftheSubmitoptionto somethingelsesuchas‘SaveMeNow’or‘PleaseKeepMe’orwhateveryoumayprefer. Next,clicktheAdvancedbuttonatthebottomofthedialogifyoudonotseeadditionaloptions. WiththeAdvancedpropertiesopened,youcanchoosetodisplayamessagewhenthesubmissionfails. Inthetextboxassociatedwiththisoption,youcandefineexactlywhatyouwantthemessagetosay. Unfortunately,thereisnowaytocreatea“smart”messagethattellstheuserwhyhissubmissionfailed. Therefore,youmightleavethemessageasisorperhapsaddafewhelpfulhintsoncommonmistakes suchas: •
Checkyournetworkconnection.
•
Checkthatyourfilenameisunique.
•
Checkthatyournetworkcableissecurelyattached.
•
Checkthatyourwirelessconnectionisturnedon.
Youcanalsodisplayamessagewhenthesubmissionsucceeds.Finally,youcanselectoneofthree actionsforInfoPathtotakewhenthesubmissionends.Youcanautomaticallyclosetheform.Usethis optioniftheusertypicallyonlyentersasingleinstanceoftheformatanyonetime.Thesecondoption opensanewformaftersavingthecurrentdata.Usethisoptioniftheusermustenteraseriesofdatasets usingthesameform.Thefinalactionistoleavetheformopen.Usethisoptionifyouhavealengthy
516
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
formthatusersmightwanttosaveperiodicallywhiletheyentertheirdatatomakesuretheydonotlose alloftheirdata.AfteryouhavecompletedtheSubmitOptionsdialog,clicktheOKbuttontosaveall yourchoices.Thisisalsoagoodtimetosaveacopyofyourformbacktoitssourcelocationbyclicking SavefromtheFilemenu.
Figure10-18.DefineadditionalSubmitOptions. NowyoucantestyournewversionoftheRequestforAbsenceform.InFigure10-19Ihaveentered 32hoursofpersonalleaveforemployeeNatasha.NoticethatnowIhaveaSubmitbuttonintheHome ribbonthatIcanclickaftercompletingtheform.
517
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-19.UsetheSubmitbuttonfromtheHomeribbontosavenewformdata. AfewmomentsafteryouclicktheSubmitbuttonfortheform,themessageboxshowninFigure1020appearstellingyouthattheformwassubmittedsuccessfully.WhenyouclicktheOkbuttonofthis messagebox,InfoPathclosesboththemessageboxandtheformasrequested.
Figure10-20.Useamessagetoindicatesuccessorfailureofthesubmit.
518
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
■CautionIfyouaretestingyourformlocallybeforesubmittingittoSharePoint,youmayseeawarningdialog whenInfoPathattemptstoaccesstheservertosavethedata.Afterpublishingtheform,youwillnolongerseethis warning.
GoingouttotheSharedDocumentslibrarythatIspecifiedasthedestinationformydatainthe DataConnectionWizard,IseeinFigure10-21thatInowhaveonedocumentinthelibrary.Noticethat thenameofthedocumentincludestheemployeename,thebeginningdateoftheabsence,andthe numberofhoursthattheemployeehasrequested.Youcanseehowusefulhavingthisinformationin thedatafilenamemightbewhenyouneedtoidentifyindividualdatafiles.However,let’sseewhat happenswhenyoumakeachangetothedata.
Figure10-21.Exampleofagenerateddatafilename Toeditthedatafile,positionyourmouseoverthedatafilenameuntilyouseethedrop-downarrow totherightofthefilename.Clickonthisarrowtoopenthefile’smenushowninFigure10-22.Youcan editthedatafilebyclickingtheoptionEditinMicrosoftInfoPath.
Figure10-22.EditthedatadirectlyfromtheSharePointlibraryfromtheitem’sdrop-downmenu.
519
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
IfyourememberthatIpreviouslystatedthatthedatafileonlycontainsthedatafortheform instance,nottheformitself,thenhowdoesitknowhowtofindtheform?Figure10-8showedthe contentsofatypicaldatafile.Init,yousawthatoneofthexmlelementsincludedareferencebacktothe form.Therefore,whenyouclickonthedatafiledocumentinyourSharePointlibrary,SharePointcan openInfoPathandreadthexmlofthedatafiletodeterminewheretofindtheformdefinition.Thus,you seethedatafileopenedinFigure10-23usingthesameformdefinitionthatyouusedtocreatethedata fileoriginally.
Figure10-23.SharePointopensInfoPathFillerfromadatafileinadocumentlibary. SupposeyoumakeasmallchangetothisdatafilebychangingtheRequestedTodateto8/4/2010 insteadof8/5/2010and,therefore,changetheTotalHoursRequestedfieldfrom32hoursto24hours. WhenyouclicktheSubmitbuttononthischangedformorclickontheSubmitbuttonintheInfopage oftheBackstagearea,InfoPathsavesasecondcopyofthedatasetwithanewfilename,asshownin Figure10-24.Althoughtheemployeenameandthefirstdateoftherequesthadnotchangedforthisnew versionoftheform’sdata,thetotalnumberofhoursrequesteddidchange,thusresultinginanewfilein theSharedDocumentsfolder.
520
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-24.ResubmitteddatacreatesasecondfilewhentheHoursRequestedchange.
UsingInfoPathFormsServicesforCustomersWithout InfoPath Supposeyoudonotwanttopublishyourformstoanetworkfilesharebecauseitrequiresthattheform usershaveInfoPathontheirdesktop,andnoteveryoneinyourorganizationhasInfoPathinstalled.If youhaveInfoPathFormsServicesinstalledonyourSharePointserver,youcanpublishyourtemplatesto documentlibraries.Userscanthenaccesstheformsfromthelibraryjustliketheywouldaccessother documenttypes. Youcanspecifyinthelibrarywhethertoattempttoopenthefileusingtheappropriateclient applicationortoopenitintheuser’swebbrowser.Ofcourse,ifyoudonothaveFormsServices,youcan stillpublishyourformtothelibrary,anduserscanopentheformusingtheirlocalcopyofInfoPath.But withFormsServices,youcangiveusersthechoiceofwhethertheywanttoopenthedocumentin InfoPathordirectlywithintheirbrowser.
■NoteUsersworkingwiththeSharePoint2010EnterpriseeditiondonothavetoworryaboutFormsServices becausetheEnterpriseeditionincludesthenecessaryservices.However,ifyouusethestandardeditionoruse MicrosoftSharePointFoundation2010,youmaywanttocontactyourMicrosoftrepresentativetoseeifyoucan addFormsServertosupportInfoPathforms.
PublishingtoaSharePointServer UsingtheRequestforAbsenceReportagainfromtheprevioussection,let’srepublishtheform,but insteadofchoosingthenetworkshareoption,choosetheSharePointoptionfromthePublishpageof theBackstagearea,asshowninFigure10-25.
521
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-25.PublishingaformtoSharePoint Next,entertheSharePointsitewhereyouwanttopublishtheform.YouneedtoentertheURLof thelibraryforthesiteyouwanttouse.Ifyounavigatetoitinaseparatebrowserwindow,youcancopy theURLfromtheaddressbaratthetopofyourbrowseraslongasyoudropthenameofthelibraryitself andanythingtotherightofthelibraryname.Figure10-26showsthefirstpageofthePublishing Wizard,whereyoucanspecifythenameofyourSharePointsiteorInfoPathFormsServicessite.
Figure10-26.Identifyingthesitewhereyouwanttopublishtheform
522
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Onthenextpageofthewizard,showninFigure10-27,itasksyoutoindicatewhetheryouwant userstofillouttheformusingabrowserorifyouwantthemtodownloadtheformandopenitwitha localcopyofInfoPath.
Figure10-27.Identifyinghowyouwanttopublishtheform
Validating Your Form Before Publishing Beforebeginningtheprocessofpublishingyourform,youshouldhaveInfoPathverifythattheformdoes notcontainanyfeaturesthatbrowsersdonotsupport.YoucandothisbyselectingDesignCheckerinthe InfopageoftheBackstagearea.ThiscommanddisplaystheDesignCheckerpanelalongwithany incompatibilitieswiththeselectedserverwhereyoupublishedtheform.Ifyouhavenotpublishedtheform yet,youcanselectthelinkChangeSettingsatthebottomoftheDesignCheckerpaneltoopenthe CompatibilitypageoftheFormOptionsdialog.SelectifnecessarytheoptionWebBrowserFormasthe FormType.ToverifythecompatibilityoftheformwithInfoPathFormsServicesonyourspecificserver, enterthenameofyourSharePointserverinthetextboxintheServerValidationsection.Forexample,I wouldenterhttp://vanguardformyserver.WhenIsavetheform,InfoPathautomaticallyaddstherestof theURL,transformingmyentrytohttp://vanguard/_vti_bin/FormsServices.asmx.ClickOKtoaccept yourchangestoFormOptions.Finally,makesuretoselectthecheckboxVerifyonserver.
523
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
YoucanthenclicktheRefreshbuttonimmediatelyabovethecheckboxtocheckyourformfor incompatibilitiesagainstyourformserver.ItmaytakeafewmomentsforInfoPathtoverifyyourform. However,whenitfinishes,itdisplaysasetoferrorsandmessages.Youmustfixerrorsbeforeyoucan publishtheformifyouwantFormsServicestobeabletoopentheform.However,messagestellyouof noncriticalconcernsthatyoucanignoreoraddresswithoutaffectingwhetherFormsServicescanopenthe form.Forexample,amessagewarningyouthatdialogboxvalidationmessageswillnotshowmerely remindsyouthatdialogboxvalidationmessagescanonlyappearwhenyouopentheformwithInfoPath Filler. Next,onthissamepageofthewizard,youmustselectfromthreechoicesforhowyouwantto publishyourform.Thefirstoptionletsyoupublishtheformtoaformlibrary.Ifyourformonlyhas declarativefunctionality,youcanpublishtheformusuallywithoutassistancetoaformlibraryandbegin usingitaslongasyourSharePointadministratorhasactivatedFormsServicesforthesite.
■NoteDeclarativefunctionalitymeanshattheformsupportsbasicconditionalformattingthatmaychangethe form’sappearance,alterthevisibilityofindividualcontrols,orchangetheread-writestateofcontrols.
Whenyoupublishaformtoaformlibrary,Igenerallyrecommendthatyougetstartedbysaving eachtemplatetoanewlibrary.However,youwillseeinthesection“WorkingwithaLibraryThatHas MultipleContentTypes”thatyoucanpublishmorethanonetemplatetoasinglelibraryusingcontent types,whichthesecondoptiononthispageofthewizardforeshadows.
■TipWhendecidingwhethertomakemorethanonetemplateavailableinasinglelibrary,asktheusersofthe libraryifthatmakessensetothem.Forexample,whileyoumightincludeagas-mileage-onlyexpenseforminthe samelibraryasmoreextensivetripexpenseforms,youprobablywouldnotincludeeitheroftheseinalibrarywith avacationorabsencerequestform.
Finally,usethelastoptiononthispagewhenyouhaveaformthatrequiresadministratorapproval. Formtemplatesthatusemanagedcodeordataconnectionsusuallyrequiretheassistanceofyour SharePointadministratortosetup.TheseformsalsotypicallyrequireFullTrustoratleastDomain Trusttorun,sincethedataisnotself-containedintheformandmaynotevenbeonthesameserver. Forthisexample,IwillrunyouthroughpublishingtheRequestforAbsenceReporttoastandard formlibrary,sinceitdoesnotusedmanagedcodeorreferenceexternaldata. Onthenextpageofthewizard,showninFigure10-28,youcanchoosetopublishtheformtoeither anewlibraryoranexistinglibrary.Ifyouchoosetopublishtoanexistinglibrary,youcanselectfromthe availablelibrariesfoundontheSharePointserverlistedatthebottomofthispageofthewizard.
524
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-28.Createanewdocumentlibraryatthesametimeyoupublishtheform. Youmaybetemptedtotrytopublishyourformtoanexistingdocumentlibrarybyclickingthe secondoptionbuttoninFigure10-28andthenselectingalibraryfromthelist.However,ifyoudonot firstconfigurethedocumentlibrarytoacceptInfoPathforms,itrejectstheupdate.Youcanonlyupdate existingdocumentlibrariesthatalreadyhaveanInfoPathformdefinedasthedefaultcontenttype.On theotherhand,thislistmayalsodisplayformlibrariestowhichyoucandirectlypublishyourform. Unfortunately,thereisnoeasywaytodifferentiatefromthislistwhichlibrariesyoudefinedas documentlibrariesandwhichyoudefinedasformlibraries.
■TipWhenIamreadytopublishanewform,Igenerallycreateacorrespondingformlibraryforitbefore publishingtheformsinceformlibrariesbydefaultsupportInfoPathforms.
SoyoumightthinkthatyoucansimplycancelthePublishingWizardatthispoint,switchto SharePoint,andmanuallycreateanewlibrary.Ifyoucreateanewdocumentlibraryfromwithin SharePoint,youdonotgetanInfoPathdocumentasadefaulttemplatetype.Thisisbecauseunlike Word,Excel,andseveralothertemplateoptionsthatSharePointdoesinclude,itdoesnotincludea blankInfoPathformasanoption.Whileyoucouldaccomplishthistaskbycreatinganewcontenttype first,buildingthedocumentlibrary,addingthecontenttypetothelibrary,andthenmakingthatcontent typethedefaultforthelibrary,thatentailsjustafewtoomanystepsforme. Youcouldalsocreateaformlibrary,whichisessentiallyaspecializeddocumentlibrarydesignedto handleXMLdatacreatedfromformtemplates.AformlibraryusesaMicrosoftInfoPathdocumentasits defaulttemplatetype.Youcouldthenupdatethetemplateofthatform.
525
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
However,theeasiestmethodofpublishinganewformistojustselectthefirstoptionshownearlier inthesectioninFigure10-28,andletInfoPathdoallthenecessaryworktocreateanewformlibrary basedontheInfoPathformyouwanttopublish. Infact,choosingthatoptionpromptsyouforthenameoftheformlibraryalongwithadescription. YoucanseethisonthenextpageofthePublishingWizard,showninFigure10-29.
Figure10-29.Providinganameanddescriptionforanewdocumentlibrary
DefiningMetadatafortheDocumentLibrary Whencreatinganewformlibrary,SharePointwantstoknowwhatadditionalcolumnsyouwantto associatewiththelibrary.SharePointgivesyoutheoptionofaddinganyofthefieldsfromtheInfoPath formascolumns.Displayingthemajorformfieldsascolumnsmakesiteasiertoscanthroughthesaved datafilesafterusingtheformtoseeimportantinformationwithouthavingtoopeneachdatafile individually.ItalsomakesiteasytodownloadthedataperhapsthroughanExcelspreadsheetorAccess databasethatyoucanuseelsewhere.
■TipRecallfromChapter7,whichcoveredmanagingSharePointlistsinExcel,thatyoucanexportthemetadata fromadocumentlibrarytoaspreadsheet.Sincethemetadatafromthislibraryrepresentsdatafromcompleting theforms,youcanusetheresultingExcelspreadsheettoprocessthedatatodisplaygroupings,subtotals,totals, averages,andsoon.
526
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-30showsthatInfoPathrecognizesmostofthesimpledatafieldsandautomaticallyadds themtothelistofpotentialcolumnsinthedocumentlibraryitcreates.Ifyouwanttocheckwhetherthe formhasanyadditionalfieldsthatyoumightwanttodisplayasacolumn,clicktheAddbuttontothe rightofthedialogbox.
Figure10-30.Selectingformfieldstoappearascolumnsinthelibrary WhenyouclicktheAddbuttoninthetop-halfofthisform,theSelectaFieldorGroupdialogbox appears,asshowninFigure10-31.Ifyouscrollthroughthelistofavailablefields,youcanselectanyfield fromtheformnotalreadyincludedinthecolumnlist.Noticethatyoucanalsousethisopportunityto renameanyformfieldthatmayhaveanabbreviatedorcomplexnamewithamoredescriptivecolumn namewhenaddedtothelibrary. Inthesecondhalfofthisformyoucanselectfieldsfromtheformthatcanbeusedasconnection fieldstootherlistsintheSharePointsitewhereyousavetheformlibrary.Ifyouknowthatyouwillnot needtocreateconnectionsbetweenthislibraryandanyotherlibraryorlist,youcanignorethisfeature. InFigure10-30,IhaveselectedtheEmployeeIDfieldasafieldthatyoucouldpotentiallyusetoconnect thislibrarywithotherlibrariesandlists.
527
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-31.Addingacolumnorchangingitsname IfyoudecidenottoincludeanyofthecolumnsthatInfoPathpreselected,youcanremovethem fromthecolumnlistbeforeyoubuildthelibrarybyselectingtheminthelistshownearlierinFigure1030andthenclickingtheRemovebutton.Youcanevenupdatethecolumnnamesofthefieldsthat InfoPathpreselectedbyclickingthecolumnnameandthenclickingtheModifybutton. Thecheckboxatthebottomofthepagedetermineswhethertheusercaneditthedataintheselect columnafteritappearsinaSharePointlistusingthedatasheetmodeoreventheedit(properties)page. Youshouldnote,however,thatanyrulesyoudefinewithinyourformdonotgettranslatedtothe SharePointlist. Whenyouhaveallthecolumnsdefinedthatyouwanttoextractfromtheform,clicktheNext buttononthepagetoproceedtotheconfirmationpageofthePublishingWizard,showninFigure1032.Thispagedisplaysasummaryoftheconfigurationinformationforthelibrary.IfyouclickPublishto continue,InfoPathbuildsthenewdocumentlibraryinSharePoint.
■TipIfyouwanttomanipulatethedataintheSharePointlibrarythatholdstheformdatausingaworkflow,you mustclickthecheckboxtoallowuserstoeditthedatainthefield.
528
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-32.Verifyactionparametersbeforepublishingtheform. ItmaytakeafewsecondsforInfoPathtocreatethenewdocumentlibrary.However,whenit finishes,itrefreshesthispageofthewizard,givingyoutheoptiontoopenthedocumentlibrary.Figure 10-33impliesthatyoucanopentheformimmediatelyinabrowser,butifyoujustcreatedanewlibrary forthisform,youmayhaveafewadditionallibrarysettingstolookatfirst.
Figure10-33.Verifythepublishedformbyopeningitorsendingitinane-mail.
529
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
AdditionalLibrarySettings OpentheLibraryribbonandfromtheSettingsgroupclickLibrarySettings.ThenselectAdvanced SettingsundertheGeneralSettingsgroup.YouwillseethattheDocumentTemplatehasbeensetto Absence_Requests/Forms/template.xsn.Thefirstpartofthisnameisthenameoftheformlibrary.Think ofthenextpartofthepath,Forms,asadirectorywherethelibrarystoresallitstemplates.Thenthefile name,template.xsn,isthenameofthedefaulttemplate,whichinthiscaseisanInfoPathtemplate, basedonitsextensionof.xsn. Sohowdoyouknowthatthisfileistheformthatyoubeganwith?YoucouldclickNewbackonthe LibraryToolsDocumentsribbontoshowthatthedefaultnewdocumentforthislibraryopensablank copyoftheform.YoucouldalsoclicktheEditTemplatelinkimmediatelybeneaththeTemplateURL ontheAdvancedSettingspage.Becausetheextensionofthecurrenttemplateis.xsn,thisactionopens thetemplateinInfoPath.Itfirstpopsupadialogboxtotellyouthatyoucanupdatetheformtemplate. However,ifyoumakechanges,youmustsavetheformandthenrepublishittothislibrarytoupdateit. Republishingtheformdoesnotaffectanyoftheexistingdatarecordscreatedwiththeolderversionof theform.
■CautionThefactthattheexistingdatarecordsarenotaffectedbypublishinganewversionoftheformisnot thesameassayingthatthedatawillworkwiththenewform.Deletingorrenamingfieldscancauseanapparent lossofdatawhenthenewformattemptstodisplayanolddatafile.
IfyouclicktheClosebuttoninFigure10-33afterselectingtheoptiontoopenthedocumentlibrary, SharePointopensthenewlibrary,asshowninFigure10-34.Ofcourse,thelibrarystartsoutempty.So youmaybewonderingwhathappenedtotheformthatyoupublishedtothislibrary.Itisthere. However,ratherthanbecominganentryinthelibrary,aswouldhappenifyousimplytriedtouploada documenttothelibrary,ithasbecomethedefaulttemplateforthelibrary.
Figure10-34.Newdocumentlibraryforaformshowingthecustomcolumnsfromtheform WhileyouareintheAdvancedSettingspage,lookatthenextsection,namedOpeningDocuments intheBrowser(Figure10-35).Thissettingletsyouchoosewhethertoopendocumentsinabrowseror clientapplicationforthosedocumentsthatsupportbothmodes.Bydefault,SharePointusestheserver default,whichisdefinedasthebrowserwindowinthisserver.Therefore,foraformlibrary,youcould
530
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
keepthedefaultvalueor,ifnecessary,youcouldchangethedefaultsettingtoOpeninthebrowser.In eithercase,SharePointwillthenuseFormServicessothatuserscanfillinyourInfoPathformonline.
Figure10-35.Changingthedefaultdisplayinyourbrowser Finally,ifyouplantoaddmorethanoneformtothislibrary,youneedtochangethesettingforthe firstoption,ContentTypes.BychangingthevalueofthisoptiontoYes,youallowthelibrarytosupport multiplecontenttypes,whereeachcontenttypeisadifferentform.Ifyouplantouseonlyasingleform typewithinthislibrary,leavethissettingatNo,althoughsettingittoYeswillnothurtanythingeither. WiththeCustomSendToDestinationsetting,youcansetanameandURLtowhichtosenda copyoftheform,generallytoanotherSharePointlibraryonthecurrentorevenanotherSharePointsite. Youmaywanttodothisifyouneedtohaveuserssendacopyoftheirformdatatoasecondlocation aftertheyhavesavedittothelibrary.OtheroptionsincludetheabilitytoturnonorofftheNewFolder commandintheNewmenuandtheabilitytodeterminewhethertoincludethislibraryinsearchresults. Figure10-36showsthetopportionoftheAdvancedSettingspage.
Figure10-36.Decidewhetheryouwanttomanagemultiplecontenttypesinthecurrentlibrary.
531
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
UsingthePublishedForm ClickOKtosaveyourchangesintheAdvancedSettingspage.Thenclickthelibrarynameinthe breadcrumbareatodisplaythelibrarylistagain.Soiftheformitselfdoesnotappearinthelibrary,what doesappearinthelibrary?Let’sseewhathappenswhenyouusethedefaultformtemplatetoenter somedata.ClicktheNewDocumentoptionintheLibraryToolsDocumentsribbontoopenan instanceoftheform.Figure10-37showstheformdisplayednotinInfoPathbutinthebrowser.
Figure10-37.DisplaytheformusingFormsServicesinyourbrowser. TheappearanceoftheforminthebrowsermimicstheappearanceoftheformwithinInfoPath,with theadditionofanEditribbon.ThisribbondisplaysoptionssuchasSave,SaveAs,Close,Views,and PrintView. TheSaveandSaveAsbuttonssimplysavetheformdatatoanXMLfileinyourformlibrary.When enteringdataintoanewform,bothSaveandSaveAspromptyouforafilenamefortheXMLfile. However,afteryouhavesavedtheformdata,youcaneditthedataandsaveitagainusingthesame namewiththeSavebuttonorusetheSaveAsbuttontocreateaseconditemwiththeupdateddata. Savingtheformdatawitheitherofthesetwobuttonsdoesnotclosetheform.
532
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
TheSubmitbuttonallowsyoutodefinemoreoptionswhensavingtheformdataincludingallowing developerstoaddcustomcodetotheform’ssubmitevent.Submittingoptionsalsoletyoueasilydefine rulesthatthedatamustpassbeforeitsavesthedata.Youcanalsodefinealternatedestinationsforthe datasuchasawebserviceorbackenddatabaseand,youcanevenautomaticallydefinetheXMLfile nameusinginformationfromtheformdataitself.Wewillexploresomeoftheseoptionsinthenext section,ChangingSubmitOptionsforaForm.
■TipForenteringdataintoaform,youtypicallydonotneedtheViewscommand.Youdefinitelydonotneedthe Viewscommandifyouonlyhaveasingleviewforaform.
ChangingSubmitOptionsforaForm Ifyouwanttochangetheoptionsdisplayedontheribbon,youneedtoopentheInfopageofthe BackstageareaandlocatethesectionAdvancedformoptions.ThenclicktheFormOptionsbuttonto openadialogboxthatletsyousetmanyoftheform’soptions.Becauseofthenumberofoptions, InfoPathgroupstheoptionsbycategory.Thecategoriesappearinalistalongtheleftsideofthisdialog box.SelecttheWebBrowsercategoryifnotalreadyselected.Inthisarea,youcanselectwhich commandsappearintheribbon.YoucanalsodefinewhetherseparateToolbarsappearatthetop,the bottom,orboththetopandbottomiftheInfoPathribbonisunavailable.Ifyouchoosetousebothtop andbottomtoolbars,youcannotchoosedifferentcommandsforthetoptoolbarcomparedtothe bottomtoolbar.
Configuring Submit Options for a Form TousetheSubmitcommandinthetoolbar,youhavetoconfigurethesubmitoptionsfortheform.Youcan findtheseoptionsbyselectingSubmitOptionsfromtheInfopageoftheBackstagearea.Youcan configuresubmitoptionstosendacopyoftheformdatato: •
E-mail
•
AseparateSharePointdocumentlibrary
•
Awebservice
•
Ahostingenvironment
•
Aconnectionfromadataconnectionlibrary
TheSubmitOptionsdialogboxalsoprovidesoptionstocreatecustomactionsusingeitherrulesorcode. Youcanevenuseadataconnectionoptiontospecifythedocumentlibraryyouwanttoemployanddefine afilenamebasedonfieldswithintheform,suchastheemployee’snameandthedateofherabsence. Thiswouldeliminatetheneedfortheusertorememberthefilenamingconventiondiscussedinthis section.
533
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
SavingtheDatafromaForm AftercompletingtheformasshowninFigure10-37,youneedtosaveyourdata.YoucanclicktheSave orSaveAsoption.BothoptionsopentheSaveAsdialogboxifyoubeganwithaninstanceofanew form.TheSaveAsdialogbox,showninFigure10-38,assumesthatyouwanttosavethedatafromthe formintothecurrentlibrary.However,itpromptsforafilename.Youcanenteranynamehere. Defininganamingconventionmayhelpyoulocatedifferentinstancesoftheformdata.Forexample, SusanfilledintheRequestforAbsenceReport,shownpreviouslyinFigure10-37,totakeaweekoff beginningMay31,2010.Therefore,bycombiningtheuser’snamewiththedatesherequestedtohave off,youcreateameaningfulnamethathelpstoidentifytheuserandthedatesherequestedtohaveoff.
Figure10-38.SavethedatafromfillinginaformusingFormsServices. WhenyouclickSave,InfoPathFormsServicessavesacopyoftheformdatainthelibrary.Whenyou lookatthelibrary’scontents,younowseeanentryhavingthenamejustenteredintheSaveAsdialog boxasthefilename.Youalsoseesomeothercommonlibrarycolumnssuchas: •
Type
•
Modified(whichdisplaysthedatemodified)
•
ModifiedBy
•
CheckedOutBy
Inadditiontothesecolumns,youcanseetheothercolumnsthatyouselectedearlierinthe PublishingWizard.Ifyoudecideyouwanttochangewhichcolumnsappearinthelist,youcanselect LibrarySettingsfromtheSettingsgroupoftheLibraryribbon.IntheColumnssection,clicktheoption Addfromexistingsitecolumnsfoundbeneaththelistofcurrentlyusedcolumns. Figure10-39showsthefirstentryinthelibrary.
534
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-39.Thislibraryshowsanewitemcontainingtheform’soutputdatafile. Likeentriesinotherlibraries,youcanpositionyourmouseovertheitemNamefieldtodisplaya drop-downlistofoptions.Thislist,showninFigure10-40,includesoptionstoviewandeditthe properties,managepermissions,edittheformdata,deletetheentry,sendthedatatoanotherlocation, andcheckoutthefile.
Figure10-40.Thisitemdrop-downletsyouopentheformdatainInfoPathforFormsServices. Toverifythatthisfileisonlythedata,selecttheEditPropertiesoptioninthefile’sdrop-down menu.TheonlyeditablepropertyisName.Whileyoucanchangethemainpartofthename,youcannot changetheextension,whichyoucanseedefaultsto.xml.IfyouweretoselecttheoptionEditin Browser,thisXMLfilewouldlooksimilartotheoneshownearlierinFigure10-37. Noticealsothatthedrop-downmenuhastwoEditoptionsforeditingthedata.Ifyouusethefirst editoptiontoopenacopyofthedatafileinyourbrowserusingMicrosoftOfficeInfoPath,youcanmake changestothedataontheformandthenclickSave,notSaveAs,unlessyouwanttocreateasecond datainstancewithanewname.ThesecondoptionletsyoueditthedatafileusingacopyofMicrosoft OfficeInfoPathfromyourdesktop.IfyoumakechangestothedataontheformusingInfoPath,you mustselectSavefromtheFilemenuinInfoPathtosavethedatachangesbacktothedatafile. Ineithercase,itmayatfirstappearthatthemetadataforthedatafiledoesnotupdate.Remember thatSharePointuseswebpages,andyoumayneedtoclickyourbrowser’sRefreshbuttonbeforethe metadatareflectschangesmadetothedata.
■TipIfyouwanttousetheXMLinanotherprocess,youcandownloadacopyoftheXMLdatafilebyusingthe file’sdrop-downmenuandselectingSendto➤DownloadaCopy.
535
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
PublishingaFormtoaContentType Intheprevioussection,youpublishedtheRequestforAbsenceformtoonespecificlibrarywithinthe site.However,whatifyouwantedtousetheforminseveralsitesofthecurrentsitecollection?Inthis section,youwillseehowtopublishaformtoasitecontenttype.Withasitecontenttype,youcaneasily addtheformasacontenttypetoanylibraryinthesiteoritssubsites.Therefore,ifyouhaveaformthat usersneedtoaccessfrommanydifferentsites,publishingtheformasacontenttypemaybethefastest waytomakeitavailableacrossmultiplelibraries.Itwillalsoletyoumanagefuturechangesfroma centrallocation. Justlikepublishingaformtoaspecificlibrary,youneedtobeginwiththeformopeninDesign modeinInfoPath.ThenselectthePublishpagefromtheFilemenu.ThenclicktheSharePointServer buttoninthePublishformtoaSharePointLibrarysection.OnthefirstpageofthePublishingWizard, InfoPathmayaskyouforthelocationoftheSharePointsite.Onthenextpageofthewizard,selectthe optionSiteContentType(advanced),asshowninFigure10-41.
Figure10-41.PublishyourformasacontenttypetoyourSharePointsite. WhenyouclickNext,thewizardaskswhatyouwanttodo.Youcancreateanewcontenttypeifyou neverpublishedthisformbeforeasasitecontenttype.However,youshouldselecttheUpdatean existingsitecontenttypeoptionifyoupreviouslypublishedtheformandneedtorepublishitdueto changes.Noticethatwhenyouupdateacontenttype,SharePointmustupdatealllibrariesthatusethat contenttype.Ifyouhaveuseditinseverallibraries,thisprocesscouldtakesometime.However,italso showshowyoucanmanagemultiplelibrariesthatusethecontenttypefromoneplace.
536
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
■NoteContenttypesallowyoutostoredifferenttypesofdocumentswithinthesamedocumentlibraryinwhich eachcontenttypehasitsownuniquesetofcolumnsormetadata.Eachcontenttypecanhaveitsownworkflows thatactonlyonfilesofthatcontenttype,notallfilesinthelibrary.Thisallowsyoutopublishmultipleformstothe samecontentlibraryinwhicheachformhasitsownmetadataandworkflows.
Onthebottom-halfofthepageofthiswizard,showninFigure10-42,youmustselectwhatyouwant tobasethecontenttypeon.Foranewform,selectthegenericcontenttypeForm.
Figure10-42.Createanewcontenttypeorupdateanexistingone. Aswithallobjects,whenyouaddasitecontenttype,youmustprovideanameanddescriptionfor thatcontenttype.Youmustsupplyauniquename.Youshouldenterthedescription,althoughoptional, tohelpusersidentifywhatthecontenttypesupports.Figure10-43showstheminimalentriesforthese twoproperties,assumingthatyoubeganwiththeRequestforAbsenceformasthesourceforthe contenttype.
537
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-43.Provideanameanddescriptionforanewcontenttype. Next,Figure10-44showsthatyoumustspecifythenameofthesitewhereyouwanttopublishthe form.Forthisexample,IwillpublishtheformintherootwebofmySharePointsitecollection,soIenter theURLhttp://vanguard/.
Figure10-44.Specifythesitewhereyouwanttopublishthecontenttype.
538
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
WhenyouclickNext,SharePointdisplaysthenamesofallthelibrariesthatyoucanaccessfromthe requestedsite(seeFigure10-45).Notethattheavailabilityoftheformdirectlyrelatestothesite hierarchy.Whenyouaddacontenttypetoasite,allchildsitesalsohaveaccesstothatcontenttype. Therefore,ifyouwantallofyourSharePointsitestouseaspecificform,youneedtoaddthatcontent typetothehighestsitelevelfromwhichyouwanttouseit.Forthatreason,youmaywanttopublishthe contenttypetoyourtop-levelsite.
Figure10-45.Selectaninitiallibrarytouseacontenttype. NoticethatbothformlibrariesanddocumentlibrariesappearinFigure10-45.Thiscanbe confusing,asyouhavetorememberwhichlibrariesyoucreatedasdocumentlibrariesasopposedto formlibraries.Whenyousavetheformtemplatesource(inXSNformat),youshouldsaveitina documentlibrarysootherscanopenandeditthatsourcedocument.Ontheotherhand,youshoulduse formlibrarieswhenyoupublishtheformtosavethedatafilesfromtheform.Adocumentlibrarycan holdanytypeoffile.However,SharePointcustomizedtheformlibrarytoworkwithXMLdocuments basedononeormoreformtemplatesdefinedascontenttypesforthatlibrary.Theformlibrarystoresa singlecopyoftheformtemplate(XSN)andmultiplecopiesoftheassociateddatafiles(XML)foreach timesomeoneusesit.
539
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Afteryouselectadocumentlibrarywhereyouwanttostorethesource,Figure10-46showsthatyou mustenteranamefortheformtemplate.Youcannamethetemplateanythingyouwant.
Figure10-46.Publishthecontenttypetoaformlibrarysootherscanworkwithit. OnthenextpageofthePublishingWizard,youhavetheopportunitytodefinewhichfieldsfrom theformyouwanttouseascolumnsormetadatainthelibrarieswhereyouwillusethiscontenttype. Youdonothavetoselectallthefields.However,rememberfromearlierchaptersthatyoucanexport metadatafromaSharePointlibrarytoanExcelspreadsheet.Thiscapabilitycanbeveryusefulto performanalysisofthecollecteddatawithouthavingtoresorttoaprogramminglanguagetoextractthe datafromtheXMLfiles. UsingthebuttonsshowninFigure10-47,youcanincludeadditionalformfieldsascolumns, removesomeofthecolumns,andmodifythecolumnnames,perhapsprovidingamoredescriptive nameiftheform’sfieldnamesarenotparticularlyuser-friendly.
540
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-47.Selecttheformfieldsyouwanttopublishascolumnsinalibrary. Whenyouarefinisheddefiningwhichfieldsyouwanttodisplayascolumns,clicktheNextbutton toproceedtothelastpageofthePublishingWizardbeforeInfoPathactuallypublishesthecontent type.Figure10-48showsasummaryofthecollectedparameters.Ifeverythinglookscorrect,complete thepublishingofthecontenttypebyclickingthePublishbutton.
Figure10-48.Verifyyoursettingsbeforepublishingthecontenttype.
541
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Theactualpublishingprocessmaytakeafewseconds.However,whenitcompletes,twolinks appearonthispagethatletyoueithermanagethecontenttypeoropenthecontenttypeasaformin yourbrowsertoreviewhowitlooks.
InstallingandUsingSiteCollectionContentTypes Afteryoupublishaformasacontenttype,youhavetospecifytheformlibrarywhereyouwanttouse thatcontenttype.However,publishedcontenttypesbecomeavailabletoalllibrariesinnotonlythe currentsitewherethatlibraryresidesbutalsoallchildsitelibraries.Sohowcanyoutellanexisting librarytouseyournewcontenttype?
AddingaContentTypetoaLibrary Openthespecificlibrarywhereyouwanttousethecontenttype.SelecttheoptionLibrarySettings fromtheSettingsgroupoftheLibraryribbon.IfyouhavenotpreviouslygoneintotheAdvanced Settingstoallowthelibrarytomanagecontenttypes,youneedtodothatfirst.Whilethere,decide whetheryouwantSharePointtoopenyourformcontenttypesusingthecontenttype’sclient application(InfoPathinthiscase)ortoopentheforminyourwebbrowser. WhenyouclosetheAdvancedSettingspage,youshouldseeasectionwithintheSettingspagewith thetitleContentTypes.Initially,aformlibrarysupportsablankformcontenttype,meaningablank InfoPathform.However,byclickingthelinkAddfromexistingsitecontenttypes,youcanaddother availablecontenttypestothelibrary,asshowninFigure10-49.Whileyoucanviewcontenttypesfrom allgroups,youcanfindformscreatedinInfoPathandloadedasasitecontenttypeintheMicrosoft OfficeInfoPathgroup.Afterfindingthecontenttypeyouwanttouse,youcaneitherdouble-clickits nametoadditorsingle-clickitandclicktheAddbutton.Youcanaddmultiplecontenttypestothe currentlibrarywhileonthispagebeforeclickingOKtoexit.
Figure10-49.Addanavailablecontenttypetoanotherlibrary/list.
542
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
ReturningtotheSettingspage,youshouldseeyournewcontenttypeslistedintheContentTypes area.Noticethatbydefault,allcontenttypesactivatedhaveacheckinthecolumnVisibleonNew Button.Thismeansthatwhenyouopenthelibrary’sNewDocumentcommandfromtheDocuments ribbon,youcanchoosefromthesecontenttypestocreateanewdocument.However,iftheusersimply clickstheNewDocumentbuttonitself,hewillgetaninstanceofthedefaultdocumentorform identifiedbytheDefaultContentTypecolumn.
ChangingtheDefaultContentType Tochangethedefaultcontenttype,clickthehyperlinkbeneaththecontenttypetableChangenew buttonorderanddefaultcontenttype.Figure10-50showstheContentTypessectionoftheSettings pagewiththesecondhyperlinkatthebottomoftheimageusedtochangethecontenttypeorderand defaultcontenttype.
Figure10-50.Librariescanhavemultiplecontenttypesbutonlyonedefaulttype. Whenyougotothepagethatdisplaystheactivecontenttypesforthecurrentlibrary,youcan identifytheorderofthecontenttypesbythenumbersinthedrop-downboxesontherightsideofthe screen.ThesenumbersdefinetheorderofthecontenttypeswhenyouopentheNewDocumentdropdownlist.Thecontenttype,identifiedasnumber1,becomesthedefaultcontenttypeusedbythe library.Figure10-51showstheprocessofmakingtheRequestforAbsenceformthedefaultcontent typebymovingittothefirstpositioninthelist.
Figure10-51.Selectthedefaultcontenttypebymovingittothetopofthelist. WhenyoureturntothelibrarylistandclicktheNewDocumentcommand,youseealltheavailable contenttypesforthelibrary.Figure10-52showsthatthislibraryhastwopossiblecontenttypesto
543
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
choosefrom,butthatthecontenttypeatthetopofthelist,RequestforAbsence,actsasthedefault contenttype.
Figure10-52.ChooseacontenttypefromtheNewdrop-downmenu.
WorkingwithaLibraryThatHasMultipleContentTypes Ifyouhavedefinedmultiplecontenttypesforalibrary,youprobablyalsohaveuniquecolumnsthat refertoeachofthosecontenttypes.Thisprobablyalsomeansthatforanygivenrowinthelibrary,onlya fewofthecolumnsactuallyhavevalues.Whileafewofthosecolumnsmaybecommonacrossmore thanonecontenttype,mostareuniquetoasinglecontenttype.Ratherthancreateaconfusingdisplay inwhichtheuserhastohorizontallyscrollthroughblankcolumnstofindthedatasheneedsfora specificiteminthelibrary,youmightconsidercreatingindividualviewsforeachcontenttype. Whenyoucreateindividualviewsforeachcontenttypethelibraryuses,youcancustomizethe columnsused,thesortcriteria,filters,andotherviewproperties.Todisplayonlytheitemsforone specificcontenttypeineachview,lookforafieldineachcontenttypethatalwayshasavalueforthat contenttypebutnoothercontenttypes.Youcancomparethatfieldtoablankorzerodependingonthe fieldtype,thusdeterminingwhethertoincludethatitemintheview.Ifyoudonothaveaunique columnyoucanreferencetoidentifythecontenttype,youmayneedtoconsideraddingeitheracustom columnthatyoucanmanuallyupdateor,betteryet,afieldintheformofeachcontenttypethat includesadefaultvaluetoidentifytheform.However,itwillprobablyberarethatacontenttypedoes notcontainatleastonerequiredfieldthatcanserveasthefilterfieldfortheview.
BuildingCustomWorkflowsforInfoPathFormsUsing SharePointDesigner SharePointDesigner2010isnotapartoftheSharePointServer2010orSharePointFoundation2010 installation.WhileitlookslikeSharePointDesignerwillnotbepartofanyoftheMicrosoftOffice2010 packages,itisavailableasafreedownloadfromMicrosoft(downloadcanbefoundat: sharepoint2010.microsoft.com/product/related-technologies/Pages/SharePoint-Designer-2010.aspx ),sothereisnoexcusenottodownloaditandtryit.SharePointDesigner2010isagreattoolforworking withSharePointthatmostadministratorsanddesignerstypicallyrequire.WhileSharePointDesigner 2010cantraceitsrootsbacktothedaysofMicrosoftFrontPage,itprovidesmuchmorefunctionality thanFrontPage.Oneofthoseareasofrelativelynewfunctionalitypertainstothecreationofworkflows forInfoPathformspublishedtoawebpage.
544
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
WhatIsaWorkflow? Let’sbeginbyfirstbrieflydefiningthetermworkflow.Aworkflowisarepeatableprocessthatuses specificresourcestoperformdefinedactionswhencertainconditionsexist.Youcanseeanexampleofa processthatrequiresaworkflowwhenanemployeeatacompanyrequestsvacationtime.Theemployee beginstheprocessbyfillinginaformrequestingspecifictimeoff,detailingthenumberofhoursand whichdayshewantsoff.Uponcompletion,theemployeetypicallyneedstoe-mailorcarrytheformto hisimmediatesupervisorforapproval.Ofcourse,thesupervisorhasseveraloptionsonhowtoacton therequest: •
Thesupervisorcanapprovetherequestandforwarditontotheclericalstaffto entertheinformationintothecompany’spayrollsystem.
•
Thesupervisorcanrejecttherequestandsendanotificationoftherejectionback totheemployeewithorwithoutexplanationastowhysherejectedit.
•
Iftherequestfortimeoffisoveraspecificnumberofhoursorexceedsthenumber ofhoursthattheemployeecurrentlyhasavailable,therequestmayneedtobe forwardedtothenextlevelofmanagement,wheretheprocessofapprovalor rejectionbeginsagain.
Thesestepsdefineoneofseveraldifferentvariationsoftheprocess,orworkflow,thatavacation requestmightgothrough.WithinSharePoint,youwanttomodelthisworkflowsothedocumentpasses fromtheemployeetohisimmediatesupervisorormanagerandeventuallytothepayrolldepartment.In termsofpublishingwebpages,asimilarworkflowmightroutepagesfromthecreator,toeditors,to reviewers,andfinallytoapprovers. Theexampleofthevacationrequestworkflowillustratesarelativelysimplesequentialworkflow. However,youcanmodelcomplexworkflowswithintricatebranchingconditionsandactionsperformed byindividualsandbythecomputersystem.Thekeyadvantageofsoftware-drivenworkflowsisthatthe userscanfocusonthetasksandnotgetdistractedbythinkingabouttheprocesssteps. Perhapsyouhavenotthoughtofattachingworkflowstoyourlibrariesandlistsbefore,butwhen youbegintopublishformsonyoursite,theneedforworkflowsbecomesapparent.Inmanybusiness situations,youmustrouteacompletedformtooneormoreadditionalpartiesforreview,additional data,orapproval.Sure,youcouldsimplysavetheformorotherdocumentinaSharePointlibraryand thenseparatelynotifythenextpersonthatsheneedstoaccessthedocumenttodoherpartofthe process.However,thereareproblemswiththismanualtechniqueofpassingdocumentsalonga process,someofwhichincludethefollowing: •
Themoresteps/peoplethatbecomeinvolvedintheprocess,theharderit becomestotrackthestatusofthedocument.
•
Directlynotifyingthenextpersontoprocessthedocumentmeansthatyou manuallyhavetocreateane-mailtohim,but,beforethat,youmustknowto whomtosendit.
•
Ifyoumustperformanaction,youmustknowexactlywhatactiontoperformand howtorespondtoanyresult.
Automatedworkflowsimproveefficiencybytakingtheguessworkoutofwhattodonext. Furthermore,SharePointDesigner’sabilitytocreateworkflowswithnocodingmakesiteasyforanyone familiarwithcreatingrulesinproductslikeOutlooktohandlee-mailtoapplysimilarskillstobuildinga workflow.
545
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
BeginningaSimpleApprovalWorkflow Toillustratetheconceptofbuildingaworkflowforaform,let’sbuildasimplifiedapprovalworkflowfor ourRequestforAbsenceform.Iwillkeepthisprocesssimplewhileshowinghoweasyitisforyouto buildworkflowsforyourlibraries. Tobeginanewworkflow,openSharePointDesignerfromyourStartmenu.Beforeyoucanstarta newworkflow,youhavetoselectthesitewhereyouwanttowork.LikealltheotherOffice2010 products,youcanopentheFiledrop-downmenutoaccesstheBackStageoptions.Inthelistontheleft side,selectSites,asshowninFigure10-53.NoticethatyoucanuseSharePointDesignertocreateanew Blanksite,addasubsitetoyourcurrentMySite,customizeanexistingsite,andmore.Inthiscase,you wanttoopenanexistingsitetocreateaworkflowfortheRequestforAbsenceformcreatedearlier. Actually,youwillcreateanXMLworkflowontheXMLdatasavedbytheRequestforAbsenceform.If youdidnotselectthecheckboxbackonFigure10-30toallowtheusertoeditthedataaddedtothe SharePointlibraryasacolumn,youwillbeabletochangethedataintheXMLfileoutsideoftheform. However,itwillallowustobuildaworkflowthatcanapproveorrejecttheindividualrequests.
Figure10-53.OpenasitewithSharePointDesigner2010. OntheSitespage,clicktheOpenSitebutton.ThisopenstheOpenSitedialog,whichisverysimilar tothestandardOpendialogyouusetoopenanyfile.However,inthiscase,ratherthanenterafile name,youwanttoenterthesitenameinthetextboxatthebottomofthedialog.Formysystem,Iwould enterhttp://vanguardandthenclicktheOpenbutton. SharePointDesignerthenopensapage,asshowninFigure10-54,whereyoucanviewandmanage mostoftheimportantsitesettings.Themajorcategoriesinclude:
546
•
SiteInformation
•
Permissions
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
•
Customization
•
Settings
•
Subsites
Figure10-54.SharePointDesigner’ssiteinformationpage SharePointDesignermaydisplayamessageinformingyouthatitisdownloadingdatafromthe server.Thisprocesstakesavaryingamountoftimedependingonthespeedofyournetworkandthesite size.Whenitfinishes,youwillseeonthescreenallthesiteobjectsinthenavigationmenualongtheleft sideofthescreen.OneoftheseoptionsisWorkflows.Ifyouclickonthisoption,youwillseeinthemain portionofthescreenalistofallthecurrentlydefinedworkflowsforthesite.Youcouldgointothese workflowsandeditthem,butIwillshowyouhowtocreateanewworkflowforthesite,specificallyfor theRequestforAbsencelibrary.Todothis,youneedtoclickontheListWorkflowbuttonintheNew groupoftheWorkflowsribbon,asshowninFigure10-55,becauseyouwanttocreateaworkflowfora specificlist.Otherbuttonsinthisgroupletyoucreateworkflowsusedformultiplelistsorsiteworkflows thatyoudonotevenneedtoassociatewithalistatall.
547
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-55.Selectthelistorlibraryforwhichyouwanttobuildaworkflow. ClickingtheListWorkflowbuttondisplaysallthelistsinthecurrentsite.Noticethatlistsinclude librariessuchaspages,forms,anddocuments.Ifyouremember,Iwarnedyouearlierthateverythingisa list.Fromthislist,selectthelistforwhichyouwanttocreatetheworkflow,Absence_Requestsinthis case.Afterselectingalist,SharePointDesigneropensthedialogboxshowninFigure10-56.Inthis dialog,youmustprovideanamefortheworkflow.Youcanalsoprovideanoptionaldescriptiontogo alongwiththesitetodefinewhatitdoes.Whenyoudisplaytheavailableworkflowsforanobject,this descriptionappears.
Figure10-56.CreateanewworkflowusingSharePointDesigner.
548
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
WhenyouclickOK,youcanbeginthefirststepoftheworkflow,asshowninFigure10-57. SharePointDesignerprovidesadefaultnameforeachstepbeginningwith“Step”followedbya sequentialnumber.However,youcanchangethestepnametosomethingmoremeaningfulsuchas SendE-mailtoHR.Tochangethestepname,clickonitandenterthenewname.
Figure10-57.Renametheworkflowsteps.
DefiningWorkflowDetails Eachstepconsistsofoneormoresetsofdetails.Eachdetailconsistsofaconditionandanactionthat youwanttheworkflowtoperformwhentheconditionevaluatestoTrue.Conditionstatementsare optional.Ifyouwanttoexecuteaspecificactioneverytimetheworkflowruns,youcanskipthe conditionandgodirectlytotheActionsbutton.Infact,forourAbsenceRequestworkflow,wewantto executeanactionimmediatelyafterstartingtheworkflowtonotifythedepartmentmanagerofthe absencerequest.Therefore,let’sfirstlookattheavailableActions. WhenyouclicktheActionsbuttonfromtheInsertgroupoftheWorkflowribbon,adrop-downlist ofpossibleactionsappears,asshowninFigure10-58.Asyoucanseefromthelist,youhavequiteasetof actionsavailable.Infact,therearesomanyactionsthatthedrop-downincludesascrollbartoshowall ofthem.
549
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-58.SelectSendanEmailfromtheavailableactionsdrop-downlist. Inthiscase,youwanttosendtheuser’simmediatesupervisoranotificationoftheabsencerequest. Therefore,thefirstactionyouwanttheworkflowtoperformwhenausersavesanewitemtothelististo sendane-mailtotheperson’simmediatesupervisor.Therefore,selectSendanEmailasyourfirst option.
ConfiguringanE-mailMessage Thisoptionfirstdisplaysthecommandforsendingthee-mail,asshowninFigure10-59.Thecommand consistsoftheword(command)Emailfollowedbytheunderlinedtextthese users.Thistextrepresents aclickableareainthecommandthatyoucanthinkofasplaceholdertextthatyoureplacewithdata. Thistextisahyperlinkthat,whenclicked,allowsyoutodefinenotonlywhoshouldreceivetheemail butthesubjectoftheemailandthebodycontentsoftheemail.
550
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-59.Createanactionthatsendsane-mailmessage. Clickingthelinkforthisplaceholderopensadialogboxtodefinethee-mailmessageshownin Figure10-60.Hereyoucanenterthee-mailaddressofapersondirectly,oryoucanclickthebuttonto therightofthetextboxontheTo:linetoselectfromtheusersorusergroupsknowntotheSharePoint site.Let’sassumeforthisexamplethattheAbsenceRequestformisusedinadepartmentsite.Infact, thedepartmentmanageristhesiteowner.Youcouldenterthedepartmentmanager’se-mailaddress directly,butifthedepartmentmanagerchanges,youwouldhavetogobackintotheworkflowtochange thee-mailaddresstothenewdepartmentmanager’saddress.Ontheotherhand,ifthesiteOwners groupcontainsthedepartmentmanagerasagroupuser,youcouldsimplyreferencetheOwnersgroup. Infact,thisdefinesabettersolutionbecausewhenthedepartmentmanagerchanges,youneedonly changetheOwnersgroupmembershipto“correct”theworkflow.Thissameargumentappliesto selectingusersfortheCC:lineofthee-mail.
■TipBydefault,theFROM:addressforthee-mailcanbesetintheCentralAdministration➤SystemSettings➤ E-MailandTextMessages(SMS)➤Configureoutgoinge-mailsettings.ThenupdatetheFromAddressfield.
Figure10-60.Definethepropertiesandcontentofthee-mailmessage.
551
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
■TipYoucanclickthelookupbuttontotherightoftheTo:andCC:fieldsintheE-mailMessagedialogtoopena pickerlistofoptionsthatincludeSharePointusersandgroupsandtheuserwhocreatedthecurrentitem.Youcan evenselecttheoptionWorkflowLookupforaUserfromtheleftsideofthepickerlisttopickfromvariousdata sourcesincludingothercolumnsinthecurrentitem.
Next,youcanenteratextstringtoappearintheSubjectfield.Youcanenterasimpletextstring,as showninFigure10-60,oryoucanclicktheellipsesbutton(theonewiththethreedots)foundtothe rightoftheSubjectfield.Thisopensadialogboxthatletsyoucombinetextwithvaluesthatyoulookup fromavarietyofdatasourcesrangingfromfieldsinthecurrentitemtofieldsinotherlists.Ifyouchoose touseavaluefromanotherlist,youmustidentifytheitemandthefieldfromthelistthatyouwantto use. Infact,thebodyofthemessageinFigure10-60showsseveralreferencefields.Inthefirstparagraph ofthebody,thestring[%CurrentItem:EmployeeName%]retrievesthevaluefromtheEmployee Namecolumnofthecurrentitemandinsertsitintothestring.Similarly,italsoretrievesvaluesfromthe columnFromDateandthecolumnToDate.Inthisway,youcancreateacustommessagethattellsthe e-mailrecipientmorethanjustthatshehassomethingtoapproveontheportal.Youcanprovide specificinformationtotellherexactlywhatsheneedstoapprove.Youcanevenprovidealinktothelist sothattheuserdoesnothavetotrytoremembertheURLandthennavigatetotherequiredlist,allof whichtakesextratimefortheapprover. WhenyouclickOK,SharePointDesignerreturnsyoutotheSteppage,showninFigure10-61,where youcanaddmoreactions.
Figure10-61.Actionswithoutaconditionalwaysexecute.
AddingMultipleActions Ifyoudidnothingelseinthisstep,theworkflowwouldsendthee-mailandimmediatelyproceedto executethenextstepintheworkflowwithoutgivingthedepartmentmanagertimetolookatthe request.Fortunately,youcanhavemultiplesteps,eachwithindividualactions,oryoucanhaveasingle stepwithmultipleactions.Inthiscase,let’saddasecondactiontocreateataskforthedepartment manager.Todothis,clicktheActionsbuttonasecondtime,andclicktheoptionAssignaTo-doItem, asshowninFigure10-62.
552
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-62.Addasecondactiontoastep. Whenyouclickthelinkato-doitem,theCustomTaskWizardappearsthattellsyouthatitwilladd anitemtotheTaskslistforeachuseryouincludeinthecommand.Italsotellsyouthatuntilallofthetodoitemsarecompleted,theworkflowremainspaused.Aworkflowexecutesstep-by-stepfromthe beginningthroughcompletionunlessyoutellittostoporpause.Ato-doitemisoneofthewaysyoucan causeaworkflowtopause.Anothercommonwaytopausetheworkflowistomonitorafieldforchanges invalue. Onthesecondandfinalpageofthewizard,youcanenteranameforthetaskandashort descriptionofwhatitmustdo.Next,clickthelinktheseuserstodisplaytheSelectUsersdialog.This dialogshowsalistofalltheusersdefinedinthesite’susergroupsaswellassomeotherbasicuser groupssuchas: Userwhocreatedcurrentitem NTAUTHORITY\authenticatedusers NTAUTHORITY\LOCALSERVICE SHAREPOINT\system Youcanselectasmanyusersorgroupsasyoumaywant.However,whenyouhavemultipleusers assignedtoatask,theymustallcompletethetaskbeforetheworkflowcancontinue.WhenyouclickOK, yourstepcommandshouldlooksimilartoFigure10-63.
Figure10-63.To-dotaskscausetheworkflowtopauseuntilalluserscompletethetask. Next,wearegoingtocheckthenumberofhoursrequested.Ifthepersonrequestslessthan40 hours,thecorporatepolicyistoapprovetherequest.Ifthepersonrequestsmorethan40hours,you needtohavethevicepresidentapproveorrejecttherequest.Asanaction,youneedtosendane-mailto thevicepresidentfortheserequests.Ifyoudonotputapauseorwaitactionattheendofthisstep,the workflowwouldcontinueexecutingwithoutgivingthevicepresidenttimetoevenlookattheabsence request.Therefore,youneedtoaddanactiontellingtheworkflowtowaitatthispoint.Todothis,you canaddasecondactiontothisstepcalledWaitforFieldChangeinCurrentItem.Inthiscase,wewant towaituntilthevicepresidentchangestheApprovalStatusfortherequestfromitsinitialvalueof PendingtoeitherApprovedorRejected.Theycandothisfromthedrop-downmenufortheiteminthe requestlibrary.Also,iftherequestislessthan40hours,youwanttosendane-mailbacktotheperson whocreatedtherequest.
553
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-64showsonepossiblewaytocompletethisstep.Itsendsthevicepresidentane-mailand thenpausestheworkflowuntilthestatusoftheRequestforAbsencechangestoanythingotherthan Pending.Ifthepersonrequestslessthan40hours,theElseportionofthisstepimmediatelysendsanemailapprovingtherequest.
Figure10-64.Onewaytodefinethesteptosendane-mailtoanapprover.
AddingAdditionalSteps Forthelaststepofthisworkflow,let’ssendane-mailmessagebacktothepersonwhocreatedthe RequestforAbsencetotellthemwhethertherequestwasapprovedorrejected. Forthisstepintheworkflow,youneedtodefineaconditionthatcheckswhethertheApproval StatusfieldofthecurrentitemequalsApproved.Whenitdoes,youcansendane-mailbacktothe personwhocreatedtheitem,informinghimthattherequesthasbeenapproved. BeginbyclickingtheConditionsbuttonandselecttheoptionIfcurrentitemfieldequalsvalue,as youdidfortheconditioninthesecondstepofthisworkflow.ThenselectthefieldApprovalStatusand compareittothevalueApproved. Next,createanactionthatsendsane-mail.Inthee-maildialogbox,clicktheSelectUsersbutton onthefar-rightsideoftheTo:fieldandselectUserwhocreatedcurrentitemfromthelistofavailable usersandgroupslist,asshowninFigure10-65.
554
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-65.Usedynamicpropertiestodefineane-mail’sTo:field. Inthisstep,youneedtohaveasecondcondition,becausetheapprovercaneitheracceptorreject theitem.Thefirstcondition/actionsetdefineswhattodowhenthevicepresidentapprovestherequest. Nextyoumustdefinewhatyouwanttheworkflowtodowhenthevicepresidentrejectstherequest. Todothis,clickthehyperlinkElseIfBranchfoundintheInsertgroup.ThenclicktheConditions buttonanddefinetheBooleanexpressionthatcomparestheApprovalStatustothevalueofRejected. Next,clicktheActionsbuttontosendtheuserwhocreatedthecurrentitemane-mailinforminghim thattheapproverhasrejectedtheitem.
■TipAninterestingprocessyoucancreateplacesallpendingitemsofaspecifictypeinaninitialpendinglist. Whenausercreatesaniteminthislist,itstartsamodifiedapprovalworkflow.Inthisworkflow,addanactionto theApprovedsteptocopythelistitemtoadifferentlist,anapproveditemlist,followedbyanotheractiontodelete thecurrentitemfromthecurrentlist.Iftheapproverrejectstheitem,youcanleavetheiteminthependinglist.
Figure10-66showsonepossiblewaytobuildthefinalstepinthisapprovalworkflow.
555
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-66.Definetheapprover’spossibleactions. Whenyoufinishdefiningyourworkflow,youmustsaveandpublishitbyclickingthePublish buttonintheSavegrouportheWorkflowribbon.Atthispoint,youcancloseSharePointDesignerand returntoyourbrowsertotesttheworkflowonsomeoftheAbsenceRequestsyoumayalreadyhavein theAbsenceRequestlibrary(list).
■TipIfyouevercreateyourworkflowstepsoutoforder,youcaneasilyrearrangetheirorderbyfirstselectingthe stepbyclickingonitsheader.ThenclicktheMoveUporMovedownoptionintheModifygroupoftheribbon.If youmissastep,justaddthesteptotheendofthesteps.Thenusingtheprevioustip,moveitupinthelistof stepstothespotwhereitbelongs.Ifyoudecideyounolongerneedaworkflowstep,openthedrop-downlistof stepoptionsasdescribedintheprevioustipsandselecttheDeleteStepoption.
HowtoRuntheWorkflow ThedefaultworkflowcreatedwithSharePointDesignercreatesaworkflowforalistthatyoumuststart manually.Tostarttheworkflow,youneedtoopenthelistorlibrary.Thenfromtheitem’sdrop-down list,selecttheoptionWorkflows.Thisdisplaystheavailableworkflowsforthatiteminanareaatthetop ofthescreen,asshowninFigure10-67.Noticethatthreeofthesefourworkflowsarethedefault workflowsprovidedbySharePoint.However,thefourthworkflow,SubmissionforanAbsence Request,istheworkflowyoujustcreatedandsavedinthelastsection.
556
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-67.Startaworkflowmanualforalistitem. ClickSubmissionforanAbsenceRequesttostarttheworkflow.Adialogpopsupfortheworkflow taskwithtwobuttons.Thefirstbuttonstartstheworkflow,andthesecondbuttoncancelstheworkflow. Inthiscase,youwanttoclicktheStartbutton.Returningtothelibrary,youcanseethatthestatusofthe itemhaschangedtostarted. Ifyouremember,thefirststepoftheworkflowcreatesataskforthedepartmentmanagerwhoisthe siteowner.Therefore,ifyouopenthetaskslist,youshouldseeanewtaskhasbeencreatedforthesite owner,asshowninFigure10-68.
Figure10-68.Displayoftaskaddedbytheworkflow Thepurposeofthetaskistoalertthedepartmentmanagerthatsomeonewantstorequestan absence.Perhapstheyreceivedane-mailaboutthetaskbecausetheypreviouslycreatedanalertfor taskscreatedinthislistandassignedtothem.MaybetheysubscribedtotheRSSfeedforthislist.Onthe otherhand,perhapsyouconfiguredthetasklisttosendanautomatice-mailtothepersonassigneda newtask.Inanycase,thedepartmentmanagercanclickonthetasktoseethescreenshowninFigure 10-69.Noticethatthetaskdisplaysalinktotheabsencerequestthatshecanclickontoreviewthe detailsoftherequest.Afterreviewingtherequest,shecanthencompletethetaskbyclickingthe completebutton.IfsheclickstheCancelbutton,SharePointclosesthetask,butleavestheworkflowina suspendedstate.ShecanalsoclicktheoptionDeleteItem.ThisactionputsthetaskintheRecycleBin butleavestheworkflowinasuspendedstateaswell.
557
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Figure10-69.Completeatask. IfthedepartmentmanagerclickstheCompleteTaskbutton,theworkflowproceedswiththenext step,whichinthisexamplechecksthenumberofrequestedhourstodeterminewhetherthevice presidentneedstoapprovetherequest.
RestructuringYourConditions Ifyouaddaconditionalbranchthatyoulaterdecideyounolongerneed,youcanclickthedownpointingarrowtotheupper-rightofanyoftheexistingconditionalbranchesasyouclickonthe conditiontodisplayadrop-downmenu.Fromthismenu,youcanmoveconditionalbranchesupor downinthesequenceofbranches.Rememberthatworkflowsevaluatebranchessequentiallyfromtop tobottombydefault.ThefirstbranchthatreturnsaTrueresultforitsconditiongetstoexecuteits actions.Youalsohaveoptionsinthismenutoaddnewbranches,deletethecurrentbranch,orchange thewaytheworkflowexecutesconditionalbranchestoexecutethemallinparallelratherthan sequentially. Ifyouhaveaconditionoractionwithmultiplestatements,youcanalsochangetheorderofthe actionsbyclickinganywhereonthelineofthestatementotherthanonahyperlinktoselectthe conditionoraction.Totherightappearsadrop-downbuttonthat,whenclicked,displaysamenuletting youmovethecurrentactionorconditionupordownorevendeleteit.Therefore,evenifyoumissa conditionoraction,youcansimplyaddittothebottomofthelistofactionsorconditionsinthe appropriateconditionalbranch,andthenmoveittothepositionwhereitneedstoappear.
■TipOneoftheconditionsyoucanusecomparesthefilesizetoaspecificrangeinkilobytes.Youcanusethis conditiontoautomaticallysettheapprovalstatustoApprovedorRejectedalongwithsendingappropriatee-mail messagestousersattemptingtoaddlargefilestolists.Anotherconditionyoucanusecomparesthefiletypetoa specifictype.ByincludingaseriesofconditionsjoinedwithanORconnector,youcanlimittheabilityofusers fromuploadingspecificfiletypestolistsandlibraries.
Whenyoufinishdefiningthestepsinyourworkflow,savetheworkflowbyclickingthePublish buttonintheSavegroupoftheWorkflowribbon.ThisactionsavestheworkflowtoSharePoint,and,in
558
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
thiscase,itspecificallyattachesittothelistspecifiedwhenyoustartedtheworkflowdefinition.Thenext timeauseraddsanitemtothelist,shecanmanuallystarttheworkflow.However,anytimeaprocessis manual,theusermayforgettoinitiatetheworkflow.Canwetelltheworkflowtostartautomatically?
ConfiguringtheWorkflowSettings Tomodifythesettingsofanexistingworkflow,clicktheWorkflowSettingsbuttonintheManagegroup oftheWorkflowribbon.ThisactionshowsthepageinFigure10-70.Designerseparatestheworkflow’s settingsintofivegroups.Hereyoucanchangethenameoftheworkflow,changeitsdescription, associatetheworkflowwithadifferenttaskorhistorylist,andchangeitsstartoption.ThisStartOptions sectionhastheoptionswewanttochangetostarttheworkflowautomatically.
Figure10-70.TheWorkflowSettingspage Notethatbydefault,SharePointDesignersetstheworkflowtostartmanuallybycheckingthefirst checkbox.Usethisoptiononlyifyoudonotneedtostarttheworkflowwhenanitemisaddedor changed,andonlyiftheaverageuserknowswhentoandwhennottostartaworkflow.Forexample,you maywanttheusertobeabletocreateitemsinalistorlibrarywhilesheworksonthemoverseveral sessionswithoutstartingaworkflowuntilshefinishesworkingontheitem.Onlyatthattimewillshe
559
CHAPTER10■PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
wanttostarttheworkflowonthecompleteditem.Youcanalsolimittheuserswhocanstartaworkflow toonlythosewhohaveManageListpermissions.
■NoteThisissimilartoanApprovalworkflowforwebpagesinwhichtheusertypicallyneedscontroloverwhen tostarttheworkflow,astheymayworkonchangestothepageoveraseriesofdaysandonlywhenallchanges havebeenmadewilltheywanttheworkflowtobegin.
ThethirdcheckboxtellsSharePointtostarttheworkflowautomaticallywheneversomeonecreates anewitemintheselectlist.Thismeansthateveniftheuserhasnotfinishedenteringtheitembutwants tosavewhathedidsohecanfinishitlater,themerefactthathesaveshistemporaryworkfiresoffthe workflow.Ifuserstypicallycompletetheentryofalldatafortheforminasinglesession,maybeyoudo wanttoselectthisoptiontostarttheworkflowwhentheycreatetheitem.Startingworkflowsupon creatinganewitemisrecommendedforlibrariessuchasimagelibrariesthattypicallyarebuiltusinga singleupload. Thefourthcheckboxstartstheworkflowwheneveranitemchanges.Thisfeaturehelpsensurethat usersdonotmakechangestoitemswithoutstartinganapprovalprocess.Otherwise,usersmightsubmit aninitialitem,getitapproved,andthenreturntoedittheitemwithoutneedingapprovaloftheir changes. Eitheroftheselasttwooptionsstarttheworkflowautomatically.Infact,youcanselectanyorallof theseoptionsincludingcombiningautomaticworkflowswithmanualstarts. WhilethissectionintroducesyoutotheabilityofSharePointDesignertocreateworkflows,youcan createworkflowsquiteabitmorecomplexthantheoneshownhere.Ifyoufindthatyouneedto performactionsthatSharePointDesignerdoesnotsupport,youcanalsocreateworkflowsusingVisual Studio.Inaddition,youcancreateworkflowsthatyoucaninstallatthesite’scollectionlevelandthen applyacrossmultiplelistsandlibraries.Ifyouhaveprogrammingskillsandwouldliketolearnmore aboutcreatingworkflowsusingVisualStudio,youmaywanttocheckoutthisbook:Office2010 Workflow,byMarkCollins(Apress).
Summary Inthischapter,youlookedatdifferentwaystopublishaformcreatedwithInfoPath.Youstartedby lookingatpublishingtheformtoanetworkshare.Thissolutionmayworkforthoseorganizationsin whichonlyafewpeopleneedtousetheformandhaveInfoPathinstalledontheirdesktopcomputers. Themajorlimitationofthismethodisthattheformanditsdataarestaticfiles.Furthermore,forms publishedthiswaycannotparticipateinlargeautomatedworkflowswithoutsubstantialcustom development,andwhohastimeforthat? Next,youlookedatpublishingaformdirectlyfromInfoPathtoaSharePointlibrary.Youcaneven createanewlibraryfortheformatthesametimethatyoupublishit.Youcanalsousethismethodto updatetheformtemplateofexistinglibraries.Whenpublishingaformtoalibrary,youcaninclude fieldsfromtheformascolumndatainthelibrary,makingiteasytoseetheform’sinformation.By exportingthelibrarymetadatatoanExcelspreadsheetusingtechniquesdiscussedinChapter7,youcan furtheranalyzethedatacollectedfromtheformsusingatoolyouarefamiliarwith.
560
CHAPTER10■ PUBLISHINGINFOPATHFORMSINSHAREPOINTLIBRARIES
Ifyouneedtouseaformwithmorethanonelibraryormorethanonesite,youcanpublishtheform asacontenttypetoasite.Contenttypespublishedtoasitebecomeavailabletolibrariesnotonlyinthat sitebutalsoinanychildsites.Bypublishingtothetop-levelsiteofthesitecollection,youcanmakethe contenttypeavailabletoallsitesinthecollection. Finally,IintroducedyoutotheuseofSharePointDesignertocreateworkflows.WhileSharePoint DesignerreplacesMicrosoftFrontPageasMicrosoft’swebpagedesigner,SharePointDesigneroffers morethanjustwebpagecreation.Itsupportstheabilitytocreateworkflowsvisuallythatyoucan associatewithspecificlists/librariesinyourSharePointsite.Itusesanon-programmingapproachwith point-and-clickoptionstobuildtheworkflow.SharePointDesignerthenattachestheworkflowtothe selectedlistsoyoudonothavetodoanyconfigurationtomaketheworkflowoperatewithyourformin yourSharePointlibrary. TherearemanyotherfeaturesandcapabilitiestobuildingworkflowsinSharePointDesignersuch aspromptingforparameterswhenyourworkflowbeginsandtheuseofvariableswithintheworkflow.In addition,asmentionedatthebeginningoftheworkflowsection,SharePointDesignerletsyoucreate workflowsthatyoucanapplytomorethanjustasinglelist.Youcanevenbuildworkflowsnotassociated withalistthatyoucanmanuallyexecuteatanytime.However,itismyhopethatyouseethepotentialof buildingworkflowsusingSharePointDesignernotjustforyourformlibrariesassociatedwithInfoPath butforanyofyourlistsandlibraries.
561
CHAPTER 11
■■■
Peer-to-Peer Collaboration with SharePoint Workspace IfyouarewonderingwhatSharePointWorkspaceis,youarenotalone.SharePointWorkspaceisthe successortoMicrosoftOfficeGroove2007.Yousaythatdoesnothelpmucheither?Well,Groove2007 probablyshouldhavegottentheawardasthenewestandleast-knownadditiontotheMicrosoftOffice 2007Suite.SharePointWorkspaceprovidesyouwithapersonalcollaborationareawhereyoucanbring togethersmallteamsfromwithinorevenoutsideyourcompany.YoudonotevenneedSharePointto useit,butyoumusthaveaversionofOfficethatincludesSharePointWorkspace.Youcaneveninvite friendsandneighborsintoyoursharedfolder,yoursharedworkspace,orevenasharedSharePointsite. Dependingonthetypeofworkspaceyoucreate,youcan: •
Sharedocuments
•
Createcalendars
•
Participateindiscussions
•
Createformstomanagelists
•
Trackissues
•
Planmeetings
•
Sharepictures
•
Andmore
ThefactthatyoucandoallofthesethingswithoutinvolvingyourITdepartmentorhiringoutside consultantsputsyouincontrolofsharinginformationwithpeopleoutsideofyournormalnetwork, extendingyourabilitytocollaboratewithanyonehavingInternetaccess.Youdonothavetoworryabout firewalls,servers,orsecurity.Inaddition,sinceyoucaninviteanyonetojoinyourworkspace-based collaborationsiteandshareyourfiles,youcancommunicatewithanyoneinsideoroutsideofyour company.YoucanevenuseyourWorkspaceaccountbetweenmultiplecomputersasawaytosharefiles andsitesbetweenyourmachinesatworkandathome.
563
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Withallthatsaid,perhapsthegreatestadvantageofSharePointWorkspaceisthatitallowsyouto collaboratewithtemporaryemployeesorconsultantswhoneedtosharefilesandbeinvolvedin meetings.Becauseoftheirshort-timestatus,yourITdepartmentmaychoosenottoaddthemtothe authenticatedusersofyourcorporatenetwork,butSharePointWorkspacecanhelpyoucollaboratewith themanyway.
DiggingintoSharePointWorkspace First,youshouldknowthatyoumightalreadyhaveSharePointWorkspaceloadedonyourcomputer. TogetherwithOneNote,SharePointWorkspaceisnowpartofMicrosoftOfficeProfessionalPlus2010.If youhavenotinstalledityet,gobacktoyourinstallationdisksandmodifyyouroptionstoinstallit.Ifyou haveoneoftheotherversionsofMicrosoftOffice2010thatdoesnotincludeSharePointWorkspace,you canstillobtainitasastand-aloneapplication. Onceinstalled,youcanchoosefromtwowaystobeginusingWorkspace: •
Createyourownworkspaceandinviteotherstoit.
•
Beinvitedtoparticipateinsomeoneelse’sworkspace.
Actually,youmustdooneotherthingfirst.YoumustcreateaSharePointWorkspaceaccountwith atleastoneidentitysootherscanfindyouorsoyoucancreateaworkspaceforyourself.Your Workspaceaccountresidesonyourcomputerandholdsyouridentityalongwithreferencesto workspacestowhichyoubelong,contactinformationforothermembersinyourworkspace,“keys,”and informationaboutthedevicesyouuse.
Creating Your Workspace Account WhenyoufirststartusingSharePointWorkspace,theAccountConfigurationWizardopens,asshownin Figure11-1,givingyoutheoptionofcreatinganewWorkspaceaccountorusinganexistingaccount, perhapsfromanothercomputer.Let’sassumefornowthatyouwanttocreateanewaccount.
564
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-1.CreateaSharePointWorkspaceonyourcomputer.
Thesecondoptionallowsyoutorestoreanexistingaccount.Onceyouhavecreatedanaccountonone machine,youcansavetheaccountdefinitionfileandrestoreittoanothermachineeffectivelyaddingyour existingaccounttothatmachine. Whenyoucreateanewaccount,thenextscreen,showninFigure11-2,asksyouforyournameandemailaddresstocreateanewaccount.YoucanalsocreateanaccountusinganAccountConfiguration Code.Thislatteroption,shownasthesecondoptionbuttoninFigure11-2,relatestocorporationswho maybehostingaGrooveserverinternallyandwhohaveanadministratorwhosuppliesnewaccounts. Let’sassumethisisnotthecaseandjustenteryournameande-mailaddress.Theaccountwizarduses thisinformationtocreateanaccounttoidentifyyouandtoallowyoutoaccesstheworkspaceswhereyou becomeamember.
565
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-2.Enteryournameande-mailaddresstouniquelyidentifyyouraccount.
Afterafewmoments,youraccountcreationiscompleteandtheWorkspaceLaunchbarappears. Afteryoucreateyouraccount,youcanopentheWorkspaceLaunchbareitherfromtheStartmenu orfromtheiconthatSharePointWorkspaceaddedtotheQuickLaunchbarinthebottomrightofyour desktop.Usingeithermethod,theWorkspaceLaunchbarlookslikeFigure11-3.Aswithallother MicrosoftOfficeproducts,theWorkspaceLaunchbarhasaribbon.
■TipIfyoualreadyhaveWorkspaceinstalledonyourcomputer,youcancreateanewaccountanytimeby clickingtheWorkspaceiconintheQuickLaunchbarofyourcomputerandselectingtheNewAccountoption. Thiscommandopensthewizarddescribedinthe“CreatingYourWorkspaceAccount”sidebar.
566
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-3.TheSharePointWorkspaceLaunchbardialog TheFileribbonletsyouopenthebackstagearea.TheHomeribbonshowsyourcurrentworkspaces dividedintofourcategories.Thefirstcategory,New,showsallrecentlycreatedworkspaces.TheActive categoryshowsworkspaceswhereatleastonememberiscurrentlyloggedin.TheUnreadcategorylists workspacesthathaveunreaditems,andtheReadcategoryshowsworkspaceswithnounreaditems.The Homeribbonalsoincludesoptionstosearchyourworkspaceandtoaddnewcontacts.TheViewribbon defineshowtheWorkspacedisplaysinformation. Youcannowcreateyourownworkspaceandinviteotherstojoinit.BeginbyreturningtotheHome ribbonandclickingontheNewbuttonintheWorkspacescategory.Thisactiondisplaysthedrop-down menushowninFigure11-4.Noticethatyoucanchoosefromthreetypesofworkspaces.Let’sbeginwith thesimplestworkspace,theSharedFolder.
567
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-4.CreateaSharedFolderworkspace. TheSharedFolderworkspaceletsyoushareoneofthefoldersonyoursystemwithotherpeople andcomputers.Atfirst,youmightthinkthatthisfeatureisnodifferentfromusinganetworkfileshare, andperhapsifyouonlywanttoshareyourfolderwithotherpeopleinyourcompanyanetworkfile sharewouldsuityourneeds.However,ifyouwanttosharefileswithpeopleoutsideofyourcompanyor betweenaworkcomputerandahomecomputer,theSharedFolderletsyoubridgeyoursharedfolder withtheoutsideworld. AfterclickingtheSharedFolderoptionfromtheNewWorkspacedrop-downmenu,thefirstdialog thatappearsasksyoutoprovideanamefortheSharedFolder,asshowninFigure11-5.Notethatthe namesuppliedheredoesnothavetobesamenameasthefolderitself;youcanprovideanynamethat uniquelyidentifiesthefolder.
Figure11-5.ProvideanamefortheSharedFolderworkspace.
■TipChooseyourSharedFoldernamecarefullybecausethisnamebecomesthedefaultnameforthefolderon thecomputerofalltheothercontactsforthissharedworkspace.
568
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Next,youcanassignthisfoldernameasanaliastoanexistingfolderonyourcomputeroryoucan createanewfolderwiththisnameonyourcomputer’sdesktoporanyotherlocation,asshowninFigure 11-6.Again,youshouldconsideryouroptionscarefullybecause,afteryoucreatetheworkspacelinks andinviteotherstojoinyourworkspace,youcannotmovethefoldertoanotherlocationwithouthaving toreinvitealloftheuserstothenewlocation.Forthisexample,Iwillchooseanexistingfolder.
Figure11-6.SelectanexistingornewfolderfortheSharedFolderworkspace. WhenyouclickOK,Workspacedisplaysadialogthatletsyoubrowseforthefolderyouwantto share,asshowninFigure11-7.Forthisexample,IselectedafoldernamedChapter 11inmy Documentsfolder.
Figure11-7.Dialogtoselectthespecificfoldertousewhenusinganexistingfolder WhenyouclickOK,WorkspaceopensamodifiedWindowsExplorer-likeviewoftheselectedfolder withtheadditionofapanelofoptionsontheleftside.Thispanel,showninFigure11-8,beginswiththe nameassignedtothefolder.Itthenlistsallofthecurrentpeoplewhohavetheworkspaceopen.Of course,sinceIjustcreatedthisworkspace,Iamtheonlyonecurrentlyinit.Lookingattheotheroptions, youcanseethatyoucaninviteotherpeopleandcomputerstojoinyourworkspace.Youcanalsoshow thepropertiesofthesharedfolder,determinewhethertosynchronizethefilesinthefolderwithothers, andsetthewayWorkspacedownloadschangesmadetoanyofthefilesinthefolder.
569
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Inthesecondarea,youcanopenachatwindowwithotherscurrentlyactiveintheworkspace. Again,sinceIjustcreatedthisworkspace,therearenootherstochatwithyet.Finally,thethirdarealets yousetvariouspropertiesofthesharedfolder.Youcanmarktheentirefolderreadorunreadandyou cansetalertsforthisfolder.Ifyouclickonanyofthefilesintherightwindow,thispanelchangesto showthename,type,andsizeoftheselectfile.Youcanalsomarktheindividualfileasreadorunread.If youselectmultiplefiles,thepaneltellsyouhowmanyfilesyouselectedandthetotalsizeoftheselected files.
Figure11-8.YourselectedfolderasseenthroughyourSharedFolderworkspace Ofcourse,thewholepurposeofasharedfolderistoallowsomeoneelsetosharethefolderwith you.Therefore,clicktheInvitesomeoneoptionintheSynchronizationTasksportionofthepanel.You couldalsogobacktotheLaunchbarandselectAddContactfromtheActionsgroupoftheHome ribbon.EithermethodopensthedialogshowninFigure11-9.IntheTofield,enterthee-mailaddressof thepersonyouwanttoinvitetoyourworkspace.Ifyouhavemorethanonepersontoinvite,clickthe AddMoreoptiontotherightoftheTofield.Thisactionopensadialogboxthatletsyouaddasmany additionalrecipientsasyouwant.Foreachone,youmustidentifyane-mailaddress,eitherbusinessor personal.Youcanalsosupplyacityandstatevalueforeachrecipient.TheSearchforUserbutton allowsyoutosearchyourOutlookContactslistforauserbasedonapartialentryoftheuser’sname.
570
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Next,youmustassigntheuserarole.Youhavethreerolestochoosefrom:Manager,Participant, andGuest.Bydefault,peopleyouinvitetoyourworkspacereceivetheroleParticipant,whichpermits themtodoanythingonthesiteexceptchangetherolesofothermembers.Inotherwords,theycanadd andremovetoolsandinvitenewmemberstoyourworkspace.PeoplewiththeGuestroledonothave anyofthesepermissions,andcanonlyreadinformationfromtheworkspace.Finally,anyoneallotted theManagerrolecandoeverythingaParticipantcanaswellasmodifythepermissionsassignedtoeach oftheroles.Keepinmindthatyouwillassigneveryoneinthecurrentinvitationtheselectedrole.Ifyou wanttogivesomepeopleadifferentrole,youmustsendthemaseparateinvitationsothatyoucan selectthedesiredroleforthem.
Figure11-9.Formusedtosendaninvitationtosomeonetobecomeamemberofyourworkspace Nextyoucanenteramessagetothepeopleyouareinvitingtoyourworkspaceperhapstellingthem whyyouareinvitingthem.Afteryouenteryourmessage,clickthesmallbuttonintheupper-leftcorner abovethemessageareatospellcheckit.Youshouldalwaysspellcheckmessagesbeforeyousendthem sosimplespellingerrorsdonotembarrassyou. Thelastoptioninthepanelisacheckboxthataskswhetheryourequireacceptanceconfirmation beforetheinvitedpersoncanjointheworkspace.Youcanchoosetoselectthischeckboxorleaveit blank.Ifyouleaveitblank,WorkspacedisplaysthedialoginFigure11-10anyway.
Figure11-10.TheInvitationAcceptanceConfirmationmessage
571
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Ifyoudonotwanttokeepseeingthisremindereverytimeyouinviteanotherpersontooneofyour workspaces,clicktheboxatthebottomofthisdialogtonotshowthismessageagain.Atthispoint, Workspacegeneratesane-mailsimilartotheoneshowninFigure11-11toeachinvitee.Aseachperson acceptstheinvitation,youwillreceiveane-mailreconfirmingtheinvitation.
Figure11-11.ThemessageSharePointWorkspacegeneratestosendasaninvitationtoyourworkspace AsshowninFigure11-11,theinviteecanaccepttheinvitationintwodifferentways.Ifhehasnever usedSharePointWorkspaceanddoesnothaveacopyofit,hecanchoosethefirstoption,whichallows himtodownloadafreetrialversionofSharePointWorkspace.IftheinviteealreadyhasSharePoint Workspace,hecanaccepttheinvitationtotheworkspaceusingthesecondlink.Thisactionshowsthe dialoginFigure11-12.
572
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-12.Thedialogthattheinviteeseesallowinghimtoacceptordeclinethemembershipinvitation Notethattheinviteecanacceptordeclinetheinvitationtojointheworkspaceusingthebuttonsat thebottomofthedialog.Hecanalsoincludeamessagebacktoyou. Nomatterwhetherheacceptsordeclines,Workspacesendsamessagebacktoyoutoconfirmthe acceptance.SharePointWorkspacetriestosendthismessagebackviatheGrooveinfrastructure. Therefore,youshouldmonitoryourSharePointWorkspaceaccountforincomingmessages.Inthe meantime,theinvitedpersondoesnotseethesharedworkspace.Infact,hereceivesthemessageshown inFigure11-13whenhesendstheacceptanceback.
Figure11-13.Confirmationtotheinviteethathisacceptancehasbeensenttotheworkspaceowner Incomingmessagesandotheractionsthatyoumustrespondtoappearinaboxdisplayedinthe lower-rightcornerofthescreenwhenyouhoveryourmouseovertheSharePointWorkspaceiconin thenotificationareaofthetaskbar.Whenamessagefirstappears,itslidesupabovetheQuickLaunch bar.Ifyoumissthearrivalofthemessage,youcangobackandclickontheSharePointWorkspaceicon toshowallmessagesthatrequirearesponse,asshowninFigure11-14.
Figure11-14.Messageintheworkspaceowner’staskbar
573
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Whenyouseetheincomingmessagewiththeinvitee’sacceptance,clickittoopenandconfirmthe invitation.Withintheconfirmdialogbox,asshowninFigure11-15,clicktheConfirmbuttonto completetheprocess.Aseachinviteeacceptsyourinvitationtoyourworkspace,hisnameappearsin theWorkspaceMemberslistontheleft-sidepanelbeneaththenameofthesharedfolder.
Figure11-15.Aftertheownerconfirmstheinvitee’sacceptance,theinviteedetermineswheretocreatethe sharedfolder. Inaddition,Workspacebeginstotransferacopyofthefieldstotheinvitee’scomputer.Theinvitee hastheoptionofcreatingafilewiththesharedfolder’snameontheirdesktoporatsomeotherlocation. Hecanalsochoosetomergethesharedfolderwiththecontentsofanotherfolderonhismachine. However,ifhedoesthis,Workspacesharesthecontentsofthisfolderwithalloftheotherworkspace members.Thismaybeexactlywhatyouneedtodotoperformaninitialsynchronizationoffileswithall membersoftheworkspace.Theothersetofoptionsinthisdialogletstheinviteedeterminewhetherhe wantstodownloadeverythingautomaticallyorwhetherhejustwantstoseelinkstofilesandthen downloadonlythosethathewantstoopen.Userswithslowconnectionsmaypreferthissecondoption. AfterWorkspacefinishestransferringthefolder,theinvitedmembercanviewthecontentsofthe folderjustasifitwereanyotherfolderonhiscomputer,asshowninFigure11-16.Becauseitlookslike anyfolder,theusercandragfilesfromotherfoldersdirectlyintothissharedfolder.Hecanalsocreate newfilesinthisfolderusinganyapplicationincludingtheentireMicrosoftOfficesuite.Forexample,in Figure11-16,theinviteecanclickanddragtheWorddocumentnamedDoc1.docxovertoMike’s Folder. Whenhedropsthefilehere,I,asmanagerofthesharedfolder,canopenthefolderandseethefile Doc1.docx.Iftheworkspacehadothermembers,theywouldbeabletoseethenewWorddocumentas well.
574
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-16.UseWindowsExplorertodragfilesfromotherdirectoriestothenewsharedfolder. WhenI(andothers)openSharePointWorkspace,notonlydoIseethenewWorddocument,but Workspacemarksthefilewithanoverlayiconofafolderwithagreencircletoindicatethatthefileis newandhasnotyetbeenread,asshowninFigure11-17.AfterIreadthefile(orevenifIdonotreadit),I canclicktheoptionintheFilesandFolderssectionofthepanelonthelefttomarkthefileasread.If youneedtogobacktoreviewanyfileinasharedfolder,youcanselectthefileandthenmarkitas unreadsoitplacesthefoldericonwiththegreencirclebackoverthelower-leftportionofthefileicon.
575
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-17.ChangedornewadditionstothesharedfoldershowtheUnreadiconovertheirdefaulticon.
AddingYourAccounttoOtherComputers Intheprevioussection,yousawhoweasyitistoinviteotherstojoinyourSharedFolderworkspace.If youhavemultiplecomputers,youcanalsoaddyouraccounttoeachcomputersothatyoucansharethe samefoldernomatterwhichcomputeryouareusing,forexample,youcouldincludeyouraccounton bothyourhomeandworkcomputersothatyoucanseethesharedworkspaceswhereveryouare. SharePointWorkspacemakesiteasytoaddyouraccountinformationtoothercomputersbyclickingthe optionInvitemyothercomputersfromtheSynchronizationTaskssectionofthepanelontheleftside ofthepage,asshowninFigure11-17.ClickingthisoptiondisplaysthedialogshowninFigure11-18.
576
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
. Figure11-18.InstructionsonhowtotransferyourSharePointWorkspaceaccounttoanothermachine Thisdialoggivesyouinstructionsonhowtocopytheaccountfilefromyourcurrentcomputeronto anothercomputer,which,ofcourse,musthaveSharePointWorkspaceinstalledonit.Youcanquickly setupmultiplecomputerstouseyouraccounttoviewandworkwithanyoftheworkspacescreatedby SharePointWorkspace.ClickingOKdisplaystheSaveAccountAsdialogaskingyouforthefilenameto usefortheaccount,asshowninFigure11-19.
Figure11-19.SaveyourSharePointWorkspaceaccounttoafilethatyoucantransfertoanothermachine. Itsuggestsafilenamethatincludesyourusername,butyoucanchangethenameandevenchange thelocationwhereWorkspacecreatesthefile.WhenyouclickSave,Workspacepromptsyouforone morepieceofinformation,asshowninFigure11-20.Itneedsapasswordtoprotecttheaccount informationsothat,shouldanyoneelsegetacopyofyouraccountfile,theywillnotbeabletoinstallit ontheircomputer.
577
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-20.Provideapasswordtoprotectyouraccountfile. Copythefilecreatedheretotheothercomputer.Thentoaddtheaccountfiletoanewcomputer, startSharePointWorkspaceandselecttheoptionRestoreanExistingAccountintheAccount ConfigurationWizardasshowninthe“CreatingYourWorkspaceAccount”sidebar.Whenprompted, refertotheaccountfieldcopiedtothenewcomputersupplyingthepassword.Youcannowreference yoursharedfolderfrommultiplecomputersusingyourcommonaccountinformation.
CreatingaGrooveWorkspace NowthatyouknowhowtocreateaSharedFolderworkspace,let’slookatthenextlevel,aGroove workspace.AGrooveworkspacediffersfromaSharedFolderworkspaceinthatitaddsseveralmore toolsthatyoucansharewithothermembersoftheworkspace.GoingbacktotheLaunchpad,openthe Newdrop-downmenuandselectGrooveWorkspace,asshowninFigure11-21.
Figure11-21.CreateaGrooveworkspace.
578
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Inthenextdialogthatappears,youhavetheopportunitytonameyourworkspace.Perhapsmore importantly,youcancreateyourworkspaceinthe2010styleorreverttoacompatible2007styletoallow potentialmemberswhomaynothavemigratedto2010yettojoinandcontribute. Then,SharePointWorkspacecreatesyourworkspace.Fortheexamplehere,Iwillusethe2010style. Ifyouneedtousethe2007style,pleaserefertomypreviousbookOfficeandSharePoint2007User’s Guide(Apress,2008).Figure11-22showstheopenworkspace.
Figure11-22.ANewDocumentsfolderbeginswithaRootFolderintheGrooveworkspace. Noticethepanelontheleftsideofthescreen.Thefirstsection,namedContent,liststheavailable toolsthatyoucanuseinthisworkspace.Bydefault,GrooveWorkspaceincludesthreetools:Documents, Discussion,andCalendar.However,aGrooveworkspaceprovidesadditionaltoolsthatyoucanaddto yourworkspacefromtheWorkspaceribbon.Iwilldiscussthosetoolsinmoredetailalittlelater. Thesecondpanelsection,namedMembers,displaysalistofthememberscurrentlyactiveinthe workspaceintheInWorkspacegroup.Ifamemberiscurrentlyonhercomputerandconnectedtothe Internet,butdoesnothavetheworkspaceopen,hernameappearsintheOnlinegroupinstead.Finally, iftheuserisnotconnectedtotheInternet,hernameappearsintheOfflinegroup. Ofcourse,youwillnotseeanymembersotherthanyourselfuntilyoustarttoinviteotherpeopleto becomemembersofyourworkspace.EveniftheyarealreadymembersofyourSharedFolder workspace,youmustreinvitethemtoyourGrooveworkspace.Infact,eachinvitationappliesonlyto onespecificworkspace,so,ifyouhavemorethanoneGrooveworkspace,youmustinvitemembersto eachone.Toinviteapersontoyourworkspace,right-clickontheMembersgroupheaderintheleft panelandselectInvitetoWorkspacefromtheavailablecommands,asshowninFigure11-23.Youcan alsoclickonInviteMembersfromtheWorkspaceribbon.
579
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-23.Inviteothermemberstoyourworkspace. BecauseyouhaveseenhowtoinviteotherstoyourworkspacesiteintheSharedFoldersectionof thischapter,Iwillskipoverthedetailsherebecausetheprocessisthesame.Let’sinsteadcontinueonto theinitialcontenttoolsprovidedintheGrooveworkspace.
DocumentsTool TheDocumentscontenttool,liketheSharedFolderworkspace,allowsyoutodragfilesandevenfolders fromyourlocaldesktopormappeddrivesanddropthemintotheworkspace’sRoot Folder.Thistool makesiteasytosharenon-SharePointdocumentswithothermembersofyourworkspace.Inadditionto thetypicalpropertiesyouexpectfromadirectoryoffiles,ithasaModifiedBycolumntotellyouthe nameofthelastpersonwhomodifiedthefile.UnlikeGroove2007,thenewversionofGroove WorkspaceimmediatelyupdatestheModifiedBycolumnwiththenameofthememberassoonasshe opensafiletoeditit.Italsodisplaysasmallgreeniconinthefirstcolumnofthedetailrowtoindicate thatthenewversionofthefileisunread.Then,whentheothermembersavesherchanges,Workspace showsasmallpage-likeiconwithadownpointingarrowtoindicatethatanewversionisavailable.To getthelatestversion,opentheErrorToolsResolveribbonandclicktheGetAvailableUpdates command,asshowninFigure11-24.GrooveWorkspacegenerallydoesnotsynchronizefilechanges backtotheoriginalfolderfromwhichyoucopiedthefile.Ifyouwantalocalcopyofthefile,youmust copythefilebackfromtheworkspacetothelocaldriveyourself.
580
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-24.UpdateyourDocumentsfolderwithchangesmadebyotherworkspacemembers.
DiscussionTool TheDiscussiontoolletsyouholdmultiplediscussionswithmembersofyourworkspace.Each discussionbeginswithasingletopic.Generally,thepurposeofatopicistointroducethesubjectofthe discussion,suchasaquestion,anobservation,anopinion,orjustaboutanything.Oncepostedtothe discussionarea,othermembersoftheworkspacecanaddtheirowncommentscalledRepliestothe Topic.Thentheoriginalpersonwhopostedthetopicmightreplytothereplyandsomeoneelsemight replytothemjustasadiscussionamongstpeersmightoccurinameetingroom,butwithouthavingto bephysicallyinthesamelocation.Evenmoreinterestingisthatthediscussiondoesnotlimit participationtopeoplewhoareactiveatthetimeofthepostingoftheoriginaltopic.Peoplemightlog intoyourworkspaceandreplytoatopichoursorevendaysafteryouposttheoriginaltopic.Figure1125showsatypicalsetofdiscussiontopicswiththreadedreplies.
581
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-25.Discussionthreadswithindentedreplies Discussionscanbranchintomanydifferentthreadsasmembersoftheworkspacereplytodifferent replieswithinthediscussiontopic.Asyoucansee,thistoolworksinasimilarwaytotheDiscussion BoardlistdiscussedinChapter2.YoumighteventhinkoftheDiscussiontoolasastructuredchat featurethatdoesnotrequirememberstobeonline,muchlesstobeintheworkspacetoparticipate.Of course,resyncingoftheseresponsesonlyoccurswhenthememberreturnstoanonlinestate. Insomeotherways,theDiscussiontoolcreatesanenvironmentthatresemblesablog,inthateach membercanpostnewtopicsinaparticulardiscussionatanytime.Memberscanalsoreturntoexisting topicstoaddresponsestothetopicoreventoaddresponsestoresponses.Workspacetracksresponses inatree-likestructure,indentingeachresponselevelasmallamounttoshowtherelationship.Asmall boxwithaplusorminussignappearstotheleftofeachtopicorresponsethathasachildresponse.You canclickthisboxtoalternatelyshowandhidetherestofthetreebeneaththatpoint.Ifyouhaveno interestinatopic,youcanminimizethespaceitusesbyclickingtheboxtocloseallresponsesinthat branch.Finally,discussionentriessupportrichtextformattingaswellastheabilitytoaddhyperlinksto thetextandspellchecking,asshowninFigure11-26.
582
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-26.CreateaDiscussionreplywithcustomformattingoftext. BeforeleavingtheDiscussiontool,hereareafewothersuggestionsonthingsyoucandowithit: •
Onlymanagerscandeletediscussiontopicsandreplies.So,unlessyouarea managerintheworkgroup,becarefulwhatyoupost.
•
YoucandisplaytheReadingPaneforthetopicsonthebottomorontherightside ofthewindow,oryoucanturnitoffcompletely.Tochangethepositionofthe readingpane,opentheViewribbonandlookfortheReadingPanecommandin theLayoutgroup.
•
Whenyouhaveahighlybrancheddiscussiontopic,youcanquicklyopenorclose allofthebranchesbyusingtheExpandAllorCollapseAlloptionsintheLists groupoftheHomeribbon.
•
ThereareseveralotherviewsavailablefortheDiscussiontool.However,onlythe ‘byTopic’viewdisplaysthetopicsandrepliesasthreaded.
•
Onceyoupostatopicorreply,youcannoteditthecontentsofthemessage.
•
Ifthetextforareplyortopicislong,thelistmaytruncatethetextafterapoint withellipses(…).Toseethefulltext,clickonthetopicorreplyandviewthefull textintheReadingPane.
•
Youcanalsosearchforrepliesortopicswithspecificwordphrases.
•
Youcanmarkindividualtopicsandrepliesasreadorunread.
583
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
CalendarTool TheCalendartoolsupportsasubsetofthefeaturesfoundinOutlook.Youcandisplayitscalendarin month,asshowninFigure11-27,week,ordaymode.
Figure11-27.TheGrooveWorkspaceCalendartool Youcanaddmeetingstothecalendardefiningasubject,astartdateandtime,anenddateand time,anddetailsabouttheappointment.MeetingsinGrooveWorkspaceroughlycorrespondtowhat youcallappointmentsinOutlook’scalendar.WiththisversionofGrooveWorkspace,youcaneven createrecurringeventsjustasyoucurrentlydoinOutlook.Thatisagreatfeatureforteamswhohave regularmeetingseveryday,everyweek,oreveneveryotherweek.Infact,youshouldbeabletoschedule mostregularlydefinedperiods.Youcanevenselectattendeesfromthecurrentmembersofyour workspace.Figure11-28showsacompletedmeetingentry.
584
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-28.DefiningameetinginGrooveWorkspacelooksalotlikedefiningameetinginOutlook. Ifyougobackandeditanyindividualmeetingoccurrence(notameetingseries),youcanalsoshow separatepageswithinthemeetingwhereyoucandefinetheagenda,addnotesduringthemeeting,and evencreateasummaryofwhathappenedafterthemeeting.Theseadditionaloptionsappearinthe ShowgroupoftheMeetingribbon.GrooveWorkspacedoesnotenabletheseoptionsifyouedita meetingseries. Perhapsyoumaybesomewhatdisappointedtolearnthatyoucannottransferappointments betweenOutlookandyourGrooveworkspaceandkeepthemsynchronized.However,ifyouneedto trackappointmentsrelatedtothemembersinyourworkspace,especiallyifthosememberswork outsideofyourorganization,thistoolmightmeetyourneeds.
ChatTool WhileChatisnotspecificallyaGrooveWorkspacetoollikethefirstthreedescribedabove,itisavery usefulfeaturethatyoumightwanttoexploreinmoredetail,evenbeforetryingoutsomeothertools. Youcanchatwithanymembercurrentlyinyourworkspace.Ifheisonline,butnotintheworkspace, youcansendthatuseramessagebyright-clickinghisnameintheMembersportionofthepaneland thenclickingSendMemberMessage.Youcanalsosendmessagestoofflinemembers.However,they willnotreceivethemessageuntilafterthenexttimetheygoonline.TheChatheaderintheleftpanel willflashwhenitreceivesnewchatmessages. TheChatareaonlyusesafewofthefeaturesintheribbonsatthetopoftheworkspace,suchas PropertiesandAlertsintheWorkspaceribbon.However,youdohaveabuttonbeneaththetextbox whereyouenteryourchatmessagethatallowsyoutospellcheckitbeforeyousendit. WhatmaynotbeobviousisthatthereisanotherbuttononthebottomrightoftheChatarea,which displaysasadown-pointingarrowsimilartotheoneusedonadrop-downlist.However,clickingonthis buttonopensamenuofformattingoptions,asshowninFigure11-29.
585
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-29.DefiningafontstylefortextinaChatmessage Youcancutandpastetext,changethefontstyleofselectedtextandparagraphs,addhyperlinks, checkspelling,andevenmanagethechattranscripttoprint,delete,orsearchit.Theonefeaturethat youmaywishyouhadistheabilitytocopythetranscriptofthechattoafile.However,youcan overcomeeventhisminorproblembyselectingallofthetextinthetopcontroloftheChatareawith yourmouse,copyingittotheclipboard,andthenpastingitinNotepadoryourchoiceoftexteditor. Overall,theChatareaisafunctionaltool.Itallowsyoutocommunicatewithothermembersofyour workspaceinrealtime.Inmanyways,itisverysimilartousinganinstant-messagingprogram. Nowthatwehaveseentheclassicdefaulttoolsforyourworkspace,let’sopentheWorkspace ribbonandclickontheAddcommandtoseewhatothertoolsyouhaveavailable.
NotepadTool TheNotepadtoolallowsyoutorecordtextnotes.Toopenthistool,justright-clickanywhereinthe blanksectionoftheContentpanel.Apopupmenuletsyouaddanewtooltothecontentareaand changethevieworderofthetools.AsyoupositionyourmouseovertheAddNewToolmenuitem,a flyoutmenuappearswithalistoftheavailabletools.OnceyouhaveaddedtheNotepadtoyourcontent area,youcanbeginaddingnotes.YoucanalsoachievethesameresultbygoingtotheWorkspace ribbonandselectingAddfromtheToolsgroupandthenselectingthespecifictoolyouwanttoadd. Eachnotemusthaveanamewhichyoumightthinkofasatitle.Withinthebodyofthenote,you canaddonlytext.However,unlikeusingtheNotepadtoolintheoperatingsystem,thisNotepadletsyou styleindividualwords(orcharacters)inthetextaswellasaddhyperlinkswithinthetext.Italsoallows youtospecifydifferentlinejustificationsbyparagraphandtocreateindentedandbulletedsections.In additiontousingtheribbonoption,youcanaccessanyofthestylingfeaturesincludinghyperlinkingto othersites,spellcheckingofyourtextbyright-clickinganywhereinthetextareawhileeditingyournote, andselectingtheappropriateoptionfromthepop-upmenu. Figure11-30showsatypicalexampleofanotewithintheNotepad.Noticethethreebuttonsinthe upperleft.Thefirstbuttonopensandclosesthepagelist.Eachnoteusesaseparatepagewithin Notepad.Usingthepagelist,youcanquicklylocateandopennotesbasedontheirname.Youcanalso navigatethroughyournotesbyusingthesecondandthirdbuttoninthisarea.
586
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-30.AddnotestotheNotepadtool.
PicturesTool ThePicturestoolletsyouincludeimagessavedinJPGandBMPformatstoyourworkspaceandshare themwithothermembers.OnceitisloadedintoyourGrooveworkspace,youcanrenametheimage, exportanothermember’simagetoyourlocalharddrive,deletetheimagefromyourworkspace,and navigatebetweenimages.YoucannoteditimagesdirectlywithinGrooveWorkspace.Figure11-31shows atypicalPicturestoolwithseveralpicturesinit.
587
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-31.SaveimagesinthePicturestool.
SketchpadTool TheSketchpadtoolallowsyoutocreatesimplesketchesusingdrawingtoolssuchasPencil,Line, Rectangle,Ellipse,Polygon,andTextbox.Oneinterestingfeatureofthistoolisthatitletsyoubeginwith abackgroundimage(JPGorBMP)andthendrawoverthetopofit.Youmayfindthiscapabilityusefulto annotateimagesthatyousharewithothermembers.However,thetooldoesnotprovideawaytoexport thefinalsketch.Eventhecopy-and-pastefeatureonlyworkswithinSketchpad,althoughyoucancopy andpasteyoursketchadditionsfromonesketchpagetoanother.Inaddition,thereisnoundofeature andthereisnoeasywaytofillafree-formareawithacolor.However,otherthanthoseconcerns, Sketchpadcouldproveusefulforcreatingsomesimpleillustrationstoexplainapoint.Figure11-32 showsanexampleofasketchpadimagethatmaysuggesttootherteammembersthedesignfora neededreport.
588
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-32.UsetheSketchpadtooltocreateaquickdrawingortoillustrateapoint.
■TipIfyouhaveathird-partyscreencaptureapplicationorifyouuseVista,youcanusetheSnippingtoolto capturethescreenandcroptheimagebeforesavingtheimagetoafileorpastingitintoanotherapplication.
ChessTool Honestly,thisisnotsomuchatoolasawayformemberstospendsomequalitydowntimeplayinga simplegameofchesswitheachotherafteraharddayworkingontheirprojecttasks.Figure11-33shows anexampleofagameinprogressbetweentwoworkspacemembers.ItisWhite’sturnandBlackisabout tolose.
589
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-33.TheChessGametool—Blackisabouttolose. Bytheway,thistoolisaverysimpleimplementationofchessthatdoesnotvalidateyourmove,does notknowwhenyouplacetheopponent’skingincheck,anditdoesnotknowwhenthecheckmate occurs.
ListsTool ListsarethelasttoolthatyoucanuseinaGrooveworkspacethatIwillcover.Itisperhapsthemost complextoolwithintheworkspacebecauseitletsyoucreatecustomdocumentformsusingInfoPath thatmembersofyourworkspacecanfillintocreatethelist.Youcancompletemostformdesigns withoutresortingtocodingordevelopmentskills.Listssupportseveraldifferenttypesoffields,styles, andviews.GrooveWorkspaceimportsdatafromalistdataarchive(.gax)whichisthesameformatthat theworkspaceusestoexportlistdata.Therefore,youdohaveawaytotransferdatafromonelistto another.Thelisttoolcannotreaddatafromotherformats,butyoucancreatemultipleviewstosortand displaythedata.
590
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
ThefirstthingthatappearswhenyoucreateanewlistisawindowinformingyouthatSharePoint WorkspaceListsuseMicrosoftOfficeInfoPathtocreatedatainputform,asshowninFigure11-34.When designingaform,youcanincludemultipleview,transforms,sorts,andfilter.
Figure11-34.TheListstoolinitialscreentellsyouthatitusesInfoPathtocreatethedatacollectionform. WhenyouclicktheStartHerebuttontobeginanewlist,youseethedialogthatappearsinFigure 11-35.Youcandefinevarioussettingsforthelistsuchasthedefaultview,whatfieldtouseforsearch results,whethertheusercancreatenewitemsorchangelistviews,andmore.Obviously,youmightnot knowhowyouwanttosetthesefieldswhenyoufirstbegindefiningaformforalist.Fortunately,you canreturntothisdialogatanytimebyclickingontheEnterDesignerbuttonintheDesignergroupof theViewribbon.Inaddition,youcanselecttheformandanyoftheviewstoopenadditionaldialogs thatletyouchangetheirindividualproperties.IfyouarefamiliarwithXSLTransforms,youcandefine transformsfortheformconditions: •
OnNewRecord
•
OnEditRecord
•
OnSaveRecord
591
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Forviews,youcannotonlydefinebasicviewproperties,butalsoyoucandefinefilters,sortorders, andgroupdefinitions.Youcanalsocreateuser-friendlycolumnheadersratherthanusingthefield namesfromtheform.
Figure11-35.TheDesignertoolforLists Ifyouarestartinganewform,youcanclicktheNewFormbuttonintheCreatesectionofthe Homeribbon,asshowninFigure11-35.YoucanalsoimportanexistingformbyusingtheImportForm buttoninthesamegroup.YoushouldnotethatyoucanonlyimportformscreatedwithInfoPathand storedasanInfoPathFormTemplate(*.xsn).Figure11-36showsasimpleformdesignedinInfoPath specificallyforusewithalistinyourworkspace.BecausewecoveredcreatingInfoPathformsinChapter 9,Iwillnotcoverthestepsusedtocreatethisform.
592
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-36.ThecompletedInfoPathformdesignfortheApplicationInventorylist RatherthanpublishingtheformtoSharePointoraNetworkshareasyousawinChapter9,youwill publishthisformdirectlytoyourworkspacebyopeningthePublishpageintheBackstageareaand clickingontheSharePointWorkspacebutton,asshowninFigure11-37.Takenoteoftheinstructions underthetitleSaveforSharePointWorkspace.Thisinformationappliestoachoiceyoumustmake whenyougetbackintoyourSharePointworkspace.
593
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-37.Publishyourformbacktoyourworkspace. EventhoughyouwanttopublishtheformbacktoSharePointWorkspace,youmuststillprovidea namefortheform.Therefore,InfoPathdisplaystheSaveAsdialog,asshowninFigure11-38.Youdonot needtonavigatetothefolderordrivewhereyouwanttosavetheform.Infact,youwanttoleavethe defaultprovidedbyInfoPathandjustchangetheFileNamefortheform.ThenclickSave.
594
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-38.SaveyourformtotheWorkspacefolder. AfterclickingSave,youshouldgetamessageinformingyouthattheInfoPathhassuccessfullysaved theform.YoushouldnowbebackinyourSharePointworkspace.However,beforeyoucanbeginusing yourform,youmuststillimportyournewformtoassociateitwiththelist.FromtheHomeribbon, selecttheImportFormbuttonfromtheCreategroup.ThiscommandopenstheOpenFiledialog,as showninFigure11-39.Again,youdonotneedtochangeanyofthelocationreferencesfromthedefault Workspacefoldershown.SimplyselecttheformthatyoujustcreatedinInfoPath.
595
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-39.Fromyourworkspace,opentheInfoPathformtousewiththelist. Afteropeningtheform,youwillseetheDesigneragain.YoufirstsawthisdialoginFigure11-35,but thistimeitopenstothePreviewtabtoshowyoutheform.Ofcourse,youcangotoanyoftheothertabs tosetpropertiesortransforms.Youcanalsogototheviewsassociatedwiththeformtosettheview propertiesassuggestedpreviously.WhenyoufinishsettingthepropertiesoftheformintheDesigner dialog,clickSave&PublishintheDesignergroupoftheHomeribbontocompletetheprocess,as showninFigure11-40.
Figure11-40.Previewofformusedwithlist
596
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Thenexttimeyouopenthelistfromtheleftpanel,SharePointWorkspacedisplaysthelistcolumns, asshowninFigure11-41.Ofcourse,thelistbeginsasanemptylist.Toaddyourfirstitemtothelist, clicktheNewbuttonintheItemsgroupoftheHomeribbon.
Figure11-41.Addanewlistitem. Thiscommandshowsyoutheformyoudesignedforthislist.Simplyfillintheformandclickthe Save&ClosebuttonintheListItemgroupoftheHomeribbon,asshowninFigure11-42.
Figure11-42.Saveyourlistitem.
597
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Afteraddingasecondlistitem,yourlistshouldlooksimilartoFigure11-43withthetopportionof thepagedisplayingthelistitemsandthebottomportionofthepagedisplayingtheeditformwiththe columnvaluesofthecurrentlyselectedlistitem.
Figure11-43.Thelistshowsboththelistofitemsandtheeditformforthecurrentlyselecteditem. ThatishowyoucannotonlycreatealistwithinGrooveWorkspace,butalsocreateaformwithone ormoreviewsthatyoucanusetoenterandseethedatainthelist.However,thatisnotallthatthe SharePointWorkspaceapplicationcandoforyou.Thereisonemoretypeofworkspacethatyoucan createanduse.Justtomakeitconfusing,Microsoftdecidedtocallthisspecificworkspacethe SharePointWorkspace.
598
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
■CautionWhileGrooveWorkspacescanexceed2GB,performancemaysufferandyouwillnolongerbeableto invitenewmemberstoyourworkspace.
WorkingwithYourSharePointFilesWithinSharePoint Workspace WithSharePointWorkspace,youcannowcreateanofflineversionofaSharePointsitethatyoucanwork onwhennotconnectedtothenetworkandthensynchronizeyourchangesbackwiththenetwork versionofthesitethenexttimeyouconnect.IfyouuseSharePointforyourpublic-facingInternetsites, youalreadyhavetheabilitytonavigatetothosesitesfromanycomputerintheworldthathasInternet access,logintothoseInternetsitesinSharePoint,andmanagethecontentremotely.However,what aboutthoseinternalsitesthatyoumightuseforcollaborationwithinyourcorporatefirewall?
■NoteYoucanonlysynchronizewithsitescreatedinSharePointServer2010andSharePointFoundation2010, notMOSS2007.
UnlessyourorganizationsupportsVPNorsomeotherconnectivitytooltoletyoudrillthroughthe corporatefirewall,youcanonlymaintainthosesitesfromcomputerswithinyourcorporatefirewall.If youhavemoreworktodoonasitethanyoucanfinishbeforetheendofyournormalworkday,you wouldhavenochoicebuttostaylatetofinishthetask.However,withaSharePointWorkspace,youcan makeacopyofthecollaborationsitetoyourlaptop,disconnectfromthenetwork,andgohome.Once there,youcanfinishtheworkyouneedtoaccomplishonyourdisconnectedcopyofthesiteonyour laptop.Then,inthemorningwhenyougetintotheofficeagain,youcansynchronizeyourchangeswith theversionofthesiteinSharePoint.Solet’sseehowyoucandothis. First,opentheSharePointWorkspaceLaunchpad.FromtheNewcommandintheHomeribbon, selecttheoptiontocreateaSharePointWorkspace.
■CautionYes,IknowitgetsconfusingwhenthenameoftheproductisSharePointWorkspaceandthetoolyou needtousetoworkwithyourSharePointsitesofflineisalsocalledSharePointWorkspace.Inthissection,Ihope, throughconnotation,youwillunderstandtowhichoneIamreferring.
ThefirstdialogyouseebeginstheprocessofcreatinganewSharePointWorkspaceonyour computer,asshowninFigure11-44.Todothat,youmustenterthenameoftheworkspace.
599
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
■TipIfyouknowthenetworkwillbedownformaintenance,createaSharePointWorkspaceofthesiteyouare currentlyworkinginsothatyoucancontinueworkingrightthroughthenetworkdowntimeratherthansitting aroundandtalkingwithyourfriends.Right!
Figure11-44.SelecttheSharePointsiteyouwanttosynchronize. IfyouclicktheConfigurebutton,theConfigureSettingsdialogshowsyouthenameofthelibraries andlistsintheselectedsite,asshowninFigure11-45.Atthispoint,youcanselecteachlibraryandlist andselectintheDownloaddrop-downlisthowyouwanttoconfigurethatlibraryorlist.Bydefault, SharePointdownloadsthecontentforallthelistsandlibraries.However,foralargesite,thismaytakea verylongtimeandmayrequirealargeamountofspaceonyourlocalmachine.Therefore,youcanalso choosetodownloadonlytheheaderswithinthatlibraryorlistoryoucanskipthecontentofthatlibrary orlistentirelyifitisnotanobjectyouneedtoworkwithwhiledisconnectedfromthenetwork.
Figure11-45.ConfigurethedownloadsettingsforeachobjectintheSharePointsite.
600
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
■TipYoucanpreventitemsfromaSharePointlibraryfrombeingsharedwithofflineclientssuchasthisby openingtheSharePointlibrarywithyourbrowserandgoingtoLibrarySettings.FromtheAdvancedSettings section,youcanlocatetheOfflineClientAvailabilitysettingandsetitto‘No’topreventitemsfromthislibrary beingdownloadedintoSharePointWorkspace.
WhenyouclicktheOKbutton,SharePointWorkspacebeginstheinitialsynchronizationbetween yourSharePointsiteandyourlocalworkspace.Ifyouchoosetodownloadallthecontentforallthe librariesandlists,thiscouldtakeseveralminutes.WhileSharePointbuildsyourworkspaceonyourlocal machine,calledinitialization,andthendownloadsthecontentintothisstructure,youcanmonitorthe progress,asshowninFigure11-46.
■TipYoucanalsocreateaSharePointWorkspacedirectlyfromyoursitebyclickingonSynctoSharePoint WorkspacefromtheSiteActionsmenu.
Figure11-46.SynchronizationinprogressforanewSharePointWorkspace Afterthesynchronizationprocesscompletes,youcanclickontheOpenWorkspacebuttonatthe bottomofthedialog.PerhapsyounoticethattheSharePointWorkspaceskipssomeofthelistsinthesite suchascalendars,surveys,sitepagelibrariesorwikislistsandlibrariescontainingInfoPathforms.These
601
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
objectsappearatthebottomoftheContentpanelontheleftsideofthewindowundertheheading AvailableonServer.Aslongasyoustillhaveaconnectiontoyournetwork,youcanstillaccessthese listsandlibrariesbyclickingonthelistorlibraryname.Intherightsideofthewindow,themessage: This list type is not supported by SharePoint Workspaceappears.Beneaththismessageappearsa link,Open the list in a browser,whichletsyouopenabrowserwindowtoaccessthecontentofthe selectedlistorlibrary. IfyouopentheSyncribbon,youseethreecommands.SyncStatusdisplaysadialogthatinforms youwhetherthelastsynchronizationwitheachobjectsucceededorfailed.Itindicatessuccesswiththe wordSynchronized.Whensynchronizationfails,theStatuscolumngenerallydisplaysamessageabout thefailuresuchas: An unknown error occurred while attempting to synchronize this tool. Asindicatedbythiserrormessage,everyobjectyousynchronizebetweenSharePointand SharePointWorkspaceiscalledatool.TheGrooveWorkspaceusedthesameterminologyforobjectsyou createdthere. TheChangeSyncSettingsoptionopensadialogthatletsyouchangethesettingsofthecurrent tool,asshowninFigure11-47.Alltoolssupporttheoptiontodisconnectorreconnectwiththeserver evenwhileyourmachineremainsconnectedtoyournetwork.However,libraries,referredtoasfolders here,alsoallowyoutochangethesettingsofthefolderintermsofwheretomaintainthecontentsof thatfolder.Itsimplytogglesbetweenthecurrentsetting,whichmaybetodownloadthecontenttoyour localmachine,andanewsettingofkeepingthecontentforthefolderontheserverandremovingthe folderfromtheworkspace.
Figure11-47.ToggletheFolderDownloadSettingsinSharePointWorkspace. ThemostimportantSynccommand,though,isthefirstbutton,whichhastwooptions.Thefirst optionletsyousynchronizethecontentsofthecurrentlyselectedtool.Rememberthatmeansthe currentlyselectedlibraryorlist.Thesecondoptionletsyousynchronizethecontentsoftheentire workspaceatonce.Youcansynchronizeyourindividuallibrariesandlistsatanytime.Ifsomeonehas madechangestothecontentsofthoseobjects,SharePointWorkspacedownloadsthelatestversion. However,let’sseewhathappenswhenyoueditsomeofthecontentinadownloadedlibrary.
602
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
EditingContentinSharePointWorkspace JustlikeworkinginSharePointitself,whenyouworkinSharePointWorkspace,youshouldcheckouta documentbeforeyoubegintoedititwhenstillconnectedtoyournetwork.Ifyouarenotconnectedto yournetwork,youdonotneedtocheckoutadocumentand,infact,youcannotcheckoutthe documentbecauseyoucannotsharetheSharePointWorkspacewithothermembers.Onlyyoucanbea memberofyourcopyofyourSharePointsite.Perhapsyoualreadysuspectedthisbecauseyoucouldnot findanoptiontoinviteothermemberstothisworkspaceinanyoftheribbons. However,let’sassumeforthemomentthatyouarestillconnectedtothenetworkandyouwantto checkoutaWorddocumentbeforeyoubegintoeditit.Todothis,clicktheCheckOutoptioninthe SharePointgroupoftheHomeribbon.Youcannowdouble-clickthenameofyourchecked-out documenttoopenandedititinMicrosoftWord. Whenyoufinishyourediting,youwillwanttosaveyourchanges.IfyoudonotfirstselectSavefrom Word’sFilemenubutinsteadjusttrytocloseWord,Worddisplaysadialogaskingwhetheryouwantto saveyourchanges. NextthedialogshowninFigure11-48informsyouotherscannotseeyourchangesuntilyoucheck thedocumentbackin.Ifyouclick‘No’,thedocumentremainscheckedouttoyouandstoredinyour SharePointDraftsfolder.
Figure11-48.Word’sremindertocheckinyourchanges Ifyouclick‘Yes’,theCheckIndialogappearslettingyouprovideversioncommentsforthisnewest version,assumingyourlibrarytracksversions.Afterprovidingcomments,clickOKtosaveyourchanges. ThissavesyourchangestobothyourlocalcopyandtotheSharePointsite. Alternatively,youcouldalsochoosetheoptiontoSavetoSharePointfromtheSharepageofthe Backstage,asshowninFigure11-49.SelectingthisoptionsavesyourchangesdirectlytoSharePoint (rememberyouarestillconnectedtothenetwork),bypassingyourlocalSharePointWorkspacecopy.
603
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-49.PublishyourchangesdirectlybacktoSharePoint,bypassingSharePointWorkspace. IfyouopenyourSharePointWorkspace,yourmostrecentchangeswouldnotappear.Infact,in ordertogetacopyoftheupdatedocumentbackintoyourlocalcopy,youmustusetheSyncoptionin theSyncribbontosynchronizetheworkspaceoratleastthetoolcontainingthedocument,asshownin Figure11-50.
Figure11-50.ThesynchronizationcommandsfromtheSyncribbon
604
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
OtherOptionsintheSharePointWorkspace Whileselectinganyofthelibrariesinyoursite,youcanclickontheAddDocumentsoptioninthe Homeribbontoaddnewdocumentstoyourfolder.ThisopenstheAddFilesdialogshowninFigure 11-51.
Figure11-51.AddfilesfromyourcomputertoasynchronizedSharePointlibrary. YoucanalsoaddnewdocumentsbydragginganddroppingthemintotheSharePointWorkspace folderfromanotheropenWindowsExplorerwindow. YoucancreateadditionalsubfoldersbyusingtheNewFoldercommandintheHomeribbon.This commandcreatesthenewfolderwithinwhateverfolderyoucurrentlyhaveselectedintheFolders panel.SharePointWorkspacealsosynchronizesthesenewfoldersbacktothesite. IfyoudeleteadocumentfromtheSharePointWorkspacefolder,SharePointalsodeletesitfromthe synchronizedsite.However,SharePointplacesthedeleteddocumentintheRecycleBinallowingyouto recoverthefileifyoumadeamistake.Afterrecoveringthefile,though,itdoesnotimmediatelyappear withintheSharePointWorkspacesiteunlessyouselecttheSynctooloptiondiscussedearlier.
WorkingwithListsintheSharePointWorkspace WorkingwithlistsintheSharePointWorkspacefunctionsalittledifferentlyfromworkingwithlibraries. Forexample,youcannotadditemstothelistfromafolderonyourdesktop.Thatwouldnotmakesense anyway.However,youcanaddnewitemstothelistbyusingtheNewcommandintheItemsgroupof theHomeribbon.YoucanalsodeleteitemsfromalistusingtheDeletecommandinthesamegroup.
605
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Likethelibraryitems,theSharePointsitemovesthedeletedlistitemfromthelisttotheRecycleBin whereyoucanrecoveritifyoudeletedtheitembymistake.Alsolikethelibrary,youmustSyncthetool, inthiscasethelist,tocopytherecoveredlistitemfromSharePointbacktoyourSharePointWorkspace. Figure11-52alsoshowsthatlistsinaSharePointWorkspaceincludeallthedefinedviewscreatedin theoriginalSharePointsite.Infact,youcanchangeyourviewofthelistbyselectingtheviewyouwant fromthedrop-downlistbeneaththewordsListViewintheListsgroupoftheHomeribbon.Also,notice inthisfigurethatyourSharePointWorkspaceshowsthetraditionallistviewatthetopofthepageandan editformforthelistinthelowerportionofthepage.Youcanmakechangestothelistitemsinthisedit formandhavethosechangessynchronizedimmediatelybacktoSharePointifyouremainconnectedto thenetwork,oryoucansynchronizethemthenexttimeyoureconnecttothenetwork.
Figure11-52.ASharePointlistsynchronizedinaSharePointWorkspace
WorkingwithDiscussionGroupsinSharePointWorkspace WorkingwithdiscussiongroupsintheSharePointWorkspacefunctionsverymuchlikethelistdescribed intheprevioussection.Forexample,youcanadddiscussions(topics)andmessages(replies)tothe discussionlist.Ofcourse,unlikeadiscussionlistinaregularSharePointsite,thereisnointeractionina discussionlistinSharePointWorkspacesinceyoucannotshareyourSharePointWorkspacewithother users.However,youcanstilladdnewitemstothelistbyusingtheNewcommandintheItemsgroupof
606
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
theHomeribbon.YoucanalsodeleteitemsfromalistusingtheDeletecommandinthesamegroup. Likethelibraryitems,theSharePointsitemovesthedeleteditemfromthelisttotheRecycleBinwhere youcanrecoveritifyoudeletedtheitembymistake.Ofcourse,sinceSharePointWorkspace synchronizesanynewtopicorreplyyoucreatebacktoyourSharePointsiteimmediatelyifyouare connectedwiththenetwork,otherscouldimmediatereplytoyourtopicorreply.Ifyouthenperiodically synchronizeyourdiscussiongroup,youstillcanhaveadiscussionwithothermembersofyour SharePointsite. Figure11-53showsadiscussiongroupinaSharePointWorkspace.TheSharePointWorkspace showsthetraditionalthreadeddiscussionviewatthetopofthepageandaneditformforthelistinthe lowerportionofthepagethatdisplaysthefieldsforthecurrentlyselectedtopicorreply.However,in thiscase,youcannotmakechangestotheitemsusingthiseditform.
Figure11-53.ASharePointDiscussionGroupsynchronizedinaSharePointWorkspace
607
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
PropertiesforSharePointWorkspace BeforeleavingyourSharePointWorkspace,let’slookatsomeofthepropertiesthatyoucansetforthis application.AsfortheotherMicrosoftOffice2010applications,youaccessthepropertiesforthis applicationbyopeningtheFiletabandselectingtheOptionspage.TheSharePointWorkspace Optionsdialogthenappears,asshowninFigure11-54.Thepanelalongtheleftsidedividestheoptions intomajorgroups.TheonlygroupIwanttolookathereistheGeneralgroup. TheGeneralgroupbeginswiththecommonoptionsthatallowyoutochangetheapplication’s colorscheme.YoucanalsosettheScreenTipstyle.However,whatIaminterestedinaretheoptions uniquetoaSharePointWorkspace.YoucanfindthesebyclickingonthePreferencesbuttonlocatedin theSharePointWorkspaceOptionssection.
Figure11-54.TheSharePointWorkspaceoptionspage ThePreferencesdialogconsistsofasix-tabpage,asshowninFigure11-55.Thefirsttab,Identities, displaysinformationaboutthepersonwhocreatedthecurrentSharePointWorkspacewhichshouldbe you.YoucanclicktheEditbuttontoadd/editadditionalinformationaboutyourselfincludingwhere youwork,youraddress,andyourothercontactinformationforbothyourbusinessandpersonalviews. YoucanchoosetolistyourcontactinformationinthePublicWorkspaceContactDirectoryorjustthe localnetworkdirectorysothatotherscanfindyouandinviteyoutojointheirworkspaces.Ofcourse, youmaywanttomaintainyourprivacyandnotpublishmorethanyourname.Inanycase,otherscan alwaysinviteyoutotheirworkspaceiftheyknowyoure-mailaddress,asyousawearlierinthischapter.
608
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-55.TheIdentitiespageofSharePointWorkspacePreferences Figure11-56showsthesecondtabofthePreferencesdialogthatletsyousaveyouraccount informationtoafilesoyoucantransfertheaccounttoanothermachine.Whetheryouareplanningto movetoanothermachineornot,itisgoodpracticetokeepacopyofyouraccountinformationinan offlinefilejustincaseyourcomputercrashesandyouneedtoinstallyouraccountonareformatted machine. Ifyouaremovingyouraccountoffthecurrentmachine,youmaywanttodeletetheaccount informationfromthecurrentmachinesothatotherscannotaccessyourworkspacethroughyour account.RememberthatyoudonotneedtologintoSharePointWorkspacewhenyoustartyour computerbecausetheaccountinformationfiletakescareofthatforyouautomatically.Therefore,you donotwanttoleavethisinformationonamachinethatyouarenolongergoingtouse.
609
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-56.TheAccountpageofSharePointWorkspacePreferences Figure11-57showsthethirdtabofthePreferencesdialogthatletsyouviewandchangesomeofthe securitysettingsrelatedtothecurrentinstallationofSharePointWorkspace.First,itshowsyouthe digitalfingerprintthatuniquelyidentifiesyouacrosstheentireworld.Youcanalsosetcommunication policies.Ifyouintendtoincludeonlyemployeesatyourcompanyascontactsandmembersofyour workspace,youmaychooseamorerelaxedsecurity.However,ifyouplantouseSharePointWorkspace outsideofalocalfirewall,youmaywanttoselectamorerestrictivepolicy.
610
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-57.TheSecuritypageofSharePointWorkspacePreferences TheFileRestrictionssectionletsSharePointWorkspaceblockfileswithspecificextensionsfrom yourworkspace.YoucanseethelistshowninFigure11-58byclickingthehyperlinkViewRestricted Types.Youcannoteditthislist. Thefinaloption,whenselected,limitsyoursystemfromjoininganyearlierversionofGroove WorkspacethanMicrosoftOfficeGroove2007.
611
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-58.Restrictedfiletypes ThefourthtabshowninFigure11-59definesthedefaultalertlevelthatSharePointWorkspaceuses whenaddingunreadinformationtoanyofyourworkspaces,eventhoseyoumaynotcurrentlyhave open.Table11-1showsthelevelsdefinedbySharePointWorkspace. Table11-1.AlertLevels
Alert Level
Alert Description
Off
Workspacedisplaysnoalertsfornewormodifiedcontent
Medium
Workspacehighlightsnewormodifiedcontentwithanicon
High
Workspacehighlightsnewormodifiedcontentwithaniconanddisplaysanalert
Auto
SimilartoHighbutallowsautomaticremovalofignoredunreadalerts
OnthebottomhalfoftheAlertspage,youcandefinehowlongindaysunreadalertsremainactive beforeSharePointWorkspaceautomaticallyremovesthem.Ifyouchangeeitherthealertlevelorthe numberofdaystodisplayunreadalerts,youmustclicktheApplybutton.Ifyoudecideyounolonger wantyourcustomchangestothesetwoproperties,youcanclicktheRestoreDefaulttoreturntothe out-of-the-boxdefaultsoftheAutolevelandretentionofunreadalertsforfourdays.
612
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-59.TheAlertspageofSharePointWorkspacePreferences Figure11-60showstheOptionstab.ItprovidesyouwithsettingstodeterminewhetherSharePoint Workspacelaunchesonstartupofyoursystem.Youcanignoreincomingmessagesfrompeopleyoudo notknowandyoucansetyourinlinepresenceindicatortodisplaytoeveryoneorjustmembersofyour workspace.However,perhapsthemostimportantsettingiswhethertoscanincomingandoutgoingfiles forviruses.Afterall,whensharingdatawithothers,theinadvertentpassingofvirusesfromonesystem toanothercancauseseriousdamagetoyoursystem.
613
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-60.TheOptionspageofSharePointWorkspacePreferences ThelasttabinthePreferencedialogiscalledSynchronization.Figure11-61showsthatitallows youtosharesomeinformationbetweencomputerssuchasInternetExplorerFavorites.Italsoallows youtocreateshortcutsinDocumentstoyourFileSharingworkspaces.
614
CHAPTER11■ PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
Figure11-61.TheSynchronizationpageofSharePointWorkspacePreferences
Summary Inthischapter,youlookedatoneofthenewestadditionstotheMicrosoftOfficefamilyoftools, SharePointWorkspace,previouslyknownasGroove.SharePointWorkspaceallowsyoutobuildyour ownpersonalcollaborationnetworkwithoutneedingaserveroranyspecialadministrationtools.Asa peer-to-peercollaborationapplicationthatonlyrequiresInternetaccesstowork,SharePointWorkspace allowsyoutocreatecollaborationworkspacesthatincludenotonlypeoplethatyouworkwith,butalso anyonewithInternetaccess. SharePointWorkspacesupportsthreetypesofworkspaces.Thefirstworkspacetypeisasimple sharedfolderworkspace.Thisworkspaceallowsyoutosharefilesofanyalmostanytype(seethe restrictedfiletypesinFigure11-58).YoucantheninviteotherpeoplewithInternetaccesstobecome membersofyourworkspace.TheseotherpeoplemusthavetheirowncopyofSharePointWorkspace. WhileMicrosoftwillprovideatemporarytrialcopyofSharePointWorkspaceforthemtouse,ifyouplan onusingtheworkspaceforanextendedperiodoftime,theseinvitedmembersmayneedtopurchasea copyofSharePointWorkspacetocontinueparticipatinginyourworkspace.
615
CHAPTER11■PEER-TO-PEERCOLLABORATIONWITHSHAREPOINTWORKSPACE
ThesecondtypeofworkspacecorrespondstothelegacyworkspacecreatedinGroove2007andis thereforecalledaGrooveworkspace.Thisworkspacehasmanyofthetoolsthatsoundalotlikesimilar toolsinSharePointorevenOfficeitself.However,GrooveWorkspacedoesnotprovideintegrationwith SharePoint.NordoesitintegrateitstoolssuchasitscalendarwiththecorrespondingMicrosoftOffice productssuchasOutlookasSharePointdoes. ThethirdandfinalworkspacetypeiscalledaSharePointworkspaceandthisworkspacedoes synchronizewithanySharePoint2010site.Aftercreatingyourlocalworkspaceversionofthesite,you candisconnectfromthenetworkandworkonthelibrariesandlistofthesite.Thenexttimeyouconnect toyournetwork,SharePointWorkspacesynchronizesyourchangestothesite.However,workingoffline increasesthepotentialdangerofhavingtwoormorepeopleeditthesamedocumentatthesametime. TheabilitytocheckoutaSharePointdocumentbeforeyoudisconnectfromthelibrarymaylimitother SharePointusersfromaccessingandchangingdocumentsinlibrarieswhileyouhaveitopeninyour SharePointworkspace,butitdoesnothelpprotectlistssinceyoucannotlockalist.Whileyour SharePointWorkspacerecognizespotentialconflictswhenyouattempttosaveyourchanges,youmust thendeterminehowtoreconcileyourchangeswiththosemadebysomeoneelse. MicrosofthasgreatlyimprovedSharePointWorkspacesinceGroove2007.SharePointWorkspace canprovideaninvaluableaidinsharingdocumentsaswellascalendars,issuelists,discussions,and otherfeatureswithpeopleyouworkwith.Especiallyinterestingisitsabilitytoworkoutsideofyour corporatefirewalls,allowingyoutoprovidecollaborationcapabilitywithexternalworkersand consultants.SharePointWorkspacethenallowsyoutobringacopyofasitehomewithyoutoworkon documentsinyourlibraryorlistitemsratherthanbeingchainedtoyourdeskattheoffice,thusmaking SharePointWorkspaceanauxiliarytooltoaugmentyourSharePointimplementationandmanagement.
616
CHAPTER 12
■■■
Additional Supporting Libraries ThislastchapterexaminesthreefinallibrarytypesthatIhavenottouchedonpreviously.Youtypically donotusethesethreelibrariesbythemselves,butratheryouusetheminasupportcapacitywithother SharePointandMicrosoftOfficefunctionality.YouwillfindtwooftheselibrariesonlyinSharePoint Enterpriseedition.Therefore,ifyouworkwithaSharePointFoundationsite,youwillnotbeabletouse theselibraries,butyoumaywanttoreadthesectionscoveringtheselibrariesanywaytoseewhatyou aremissing.Ihopethattheincludedfigureswillhelpyougainagoodunderstandingofhowthese librariescouldbenefityourorganization. Thefirstlibrarytypeisaspecialimplementationofadocumentlibraryusedforrecords managementthatonlySharePointEnterpriseeditionsupports.However,youmightbeinterestedin recordsmanagementifyouneedtoarchivetimesheets,absencerequests,purchaserequests, performanceevaluations,andotherdocumentsthatyourdepartmentorcompanymustretain. Typically,recordsmanagementprovideslong-termstoragefordocumentscreatedoriginallyinother libraries. Thesecondlibrarytypeisthepicturelibrary,whichyoufirstsawinChapter3.Iwillgiveyoua deeperlookatithere.Whilethemostcommonuseofapicturelibrarymaybetosupportcontentpages, youcanmaintainpicturelibrariesthatarenothingmorethanlibrariesofpicturesthatanyonecanview. Forthatreason,Iwillshowyouthedifferentwaysyoucanuploadandviewyourpicturesinthislibrary. Thefinallibrarytypeyouwillexamineistheslidelibrary.Youwillonlyfindthislibraryin SharePointEnterpriseedition.ItworksspecificallywithPowerPointslidepresentations.Ifyouhave groupsofpeoplewhomustworktogetheronpresentations,aSharePointslidelibrarymaybethebest wayforthemtoshareslidesandeasilybuildnewpresentationsbasedonpullingtogetherslidesfrom otherpresentationsalongwiththeirownslides. Solet’sgetstartedbylookingatcreatingarecordsmanagementsystem.
CreatingaRecordsManagementSystemtoArchiveYour Documents Increasingly,today’sorganizationsspendmoretimemanagingrecordsthantheydidjustafewyears ago.Regardlessofwhetherthereasonforretainingmorerecordscomesfromthefearoflitigationorthe needtomeetnewgovernmentrequirements,organizationsretainmorerecordstodaythaneverbefore andtheymustmanagetheserecordssothattheycanbeeasilyretrievedwhenneeded.Tomeetthis need,SharePointEnterpriseaddsaRecordsCentertemplatetothelistofEnterprisesites.Youmight arguethateventhebasicSharePointfeaturesalreadyserveasacentralrepositoryforrecordsby providingdepartmentsandmanagementwithasingleplacetocreate,process,andstoredata.
617
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
SharePoint’scollaborationfeaturesfacilitatetheeasycreationofmultiplesitesfordepartmentsand projectgroups,witheachonepotentiallysupportingmultipledocumentlibraries.However,flexibility canalsobringchaos.Infact,itmightnottakelongbeforeyoufindyourorganization’srecordsscattered acrossmultiplesites. ARecordsCenterprovidesacentralrepositoryforlong-termstorageofrecordsafterthedepartment orprojectnolongeractivelyneedsthem.Inadditiontodeterminingwhattodowithdocumentsfroma departmentorprojectafterprojectscomplete,youmayalsorequirerecordsretentionaspartofyour organization’sauditingand/orcompliancerequirements.Youmightalsoneedtoarchiverecordsfor historicalreportingoreventaxpurposes.Regardlessofwhyyouthinkyouneedacentralizedstorefor yourlong-termretentionofrecords,SharePoint’sRecordsCentersitecanhelp. Tokeeptheillustrationsrelativelysimple,let’sfocusononetypeofdocumentinasingledocument library.SupposeyourorganizationhasdecidedthatitneedstoarchiveeachRequestforBid(RFB) documentonyournewSharePointsite.Let’sseehowaRecordsCentersitecansatisfythisneed.
CreatingSiteColumns AssumingthattheneedtostoreRFBdocumentsisanewrequirement,youhavetheopportunitytothink throughhowyouwanttohandlethem.Forexample,ratherthanlettingeachmanagercreatehisown RFBformateachtimeheneedstosendoutanewRFB,youcouldprovideacommontemplatethat everyonecoulduse.Youcouldthencreatealibrarythatusesthattemplateasitsdefaultdocumenttype. Furthermore,byusingacommonRFB,youcouldcreatemetadataspecifictotheRFBsothat,whenyou displaythatmetadatainalibrary,youcouldquicklyviewkeyinformationabouteachRFBrecord. Finally,afteraprojectendsortheitemorderedarrivesandyouacceptit,youcanarchivetheoriginal RFBintoaRecordsCenter. Let’sstarttheprocessbycreatingasetofsitecolumnsthatyoucanreusewhendefiningcontent types.Rememberthatyoucanaddsitecolumnstolibrariesasmetadatasothatwhenyoudisplayalist oftheitemsinthelibrary,youcanquicklyseeimportantinformationabouteachitem.Supposeyou wanttocreatethefollowingsitecolumnstoassociatewitheachRequestforBid: •
RFB_Number
•
RFB_Due_Date
•
RFB_Responder_Name
•
RFB_Response_Amount
Tocreatethesenewsitecolumns,followthesesteps: 1.
OpentheSiteActionsmenu.
2.
SelectSiteSettings.
3.
ClickSiteColumnsintheGalleriescolumnoftheSiteSettingspage.
4.
IntheSiteColumnGallery,clickCreate.
5.
Enterthecolumnnameandselectacolumntype.
6.
Enterotherinformationasneededtodefinethecolumnsuchasdefaults,valid valueranges,etc.
Forexample,youmightdefinetheRFB_Numbercolumnasanumericfield,theRFB_Due_Date fieldasadateandtimefield,theRFB_Responder_Nameasasinglelineoftext,andthe
618
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
RFB_Response_Amountascurrency.Asyouenteryourfirstcolumndefinition,youmustchooseto placeyournewcolumnsinanexistingcolumngrouporcreateanewgroup.Usinganewgroupmight makeiteasiertolocatecolumnsrelatedtoacommoncontenttype.Figure12-1showsthecreationofthe RFB_GroupforRFB-relatedcolumnsatthesametimethatyoudefinethepropertiesforthe RFB_Numbercolumn.
Figure12-1.Createanewsitecolumngroupwhileaddingasitecolumn.
619
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Similarly,definetherestofthesitecolumns,reusingtheRFB_Grouptoorganizethem.Afteryou finishaddingallthefields,youshouldseeallthenewcolumnsyouaddedtotheRFB_Groupbyselecting justthatgroupintheSiteColumnGallery.Figure12-2showsthenewsitecolumnsintheRFB_Group.
Figure12-2.NewsitecolumnsintheRFB_Group
CreatingaContentTypeforRFBDocuments UsingacommonformforRFBdocumentsnotonlysavestimewhencreatinganewRFBbyprovidinga predefinedformat,butalsohelpsemployeesfillinandevaluateformsduetotheconsistencywithwhich thedataappears.Therefore,yournextstepistocreateabasicRFBtemplateusingWordthatyoucan thenaddtotheSharePointlibrary,sothateachtimeausercreatesanewdocumentshebeginswitha commoncompany-wideformforenteringtheRFBdetails.Figure12-3showsanexampleofasimple wordtemplateforthecompanyHowlattheRisingSunSoftware,Inc.
620
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-3.WordtemplatefortheRFBdocument. TousethisWordtemplateasthedefaulttemplateinSharePoint,followthesesteps: 1.
OpentheSiteActionsmenu.
2.
SelectSiteSettings.
3.
FromtheSiteSettingspage,selectSitecontenttypesfromtheGalleries section,asshowninFigure12-4.
621
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-4.Createanewsitecontenttype. 4.
FromtheSiteContentTypeGallery,selecttheCreatelinkintheheaderarea ofthegallery,asshowninFigure12-5.
Figure12-5.CreateanewcontenttypefromtheSiteContentTypeGallery.
622
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
5.
WithintheNewSiteContentTypedialogbox,enteranameforyournew contenttype.Forexample,youmaywanttoabbreviatethenameforthe contenttypeasRFB.
6.
Next,supplyadescriptionforthecontenttypesoeveryoneknowsthepurpose ofthenewcontenttype.
Noticethat,inthissection,youcanalsodeterminefromwhichcontentgroupandspecificcontent typeyouwanttoinheritthenewcontenttype.InthecaseoftheRFB,themostlogicalcontenttypeto inheritfromistheDocumenttypeintheDocumentContentTypesgroup. Youcanalsodetermineinwhichgrouptoplacethenewcontenttype,includingcreatinganew contenttypegroupifyoufeelthatthedifferencesinthenewcontenttypewarrantitsowngroup. 7.
Tofinishthedefinitionofthecontenttype,clicktheOKbutton.Figure12-6showsthe definitionoftheRFBcontenttype.
Figure12-6.DefinethesitecontenttypeRFB. YoushouldnowseeacontenttypedefinitionpagesimilartoFigure12-7.Onthispage,youcan defineadditionalsettingsforthiscontenttype.
623
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-7.Initialsitecontenttypedefinition ThemostimportantadditionalsettingatthispointistheonethatassociatestheWordtemplate withthecontenttype.Therefore,beforesettinganyotherproperties,clicktheAdvancedSettingslink foundintheSettingssection.Thisoptionopensapagethatallowsyoutoassociateaneworexisting documenttemplatewiththecurrentcontenttype.Figure12-8showstheRFBcontenttypebeing associatedwithadocumenttemplatepreviouslycreatedandsavedasC:\SharePoint2010Book\Chapter 12\RFB_Template.dotx.(Youfindthisfileinthebookdownload.)
624
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-8.Associateadocumenttemplatewiththecontenttype. Youcanalsodetermineatthistimewhetheranyonecanmodifythecontenttypeandwhetheryou wantsitesandliststhatusethiscontenttypeupdated.Whenyoucreateanewcontenttype,thesetting ofthislatteroptiondoesnotmatter.However,ifyoumodifyanexistingcontenttypeonwhichother contenttypeshavebeenbased,youcanusethisoptiontodeterminewhethertocascadechangesmade heretocontenttypesinchildsitesandlists.
■TipWhenyouupdatetheRFBform,andIknowyouwillsomedaybecauseallformsareupdatedeventually,you wouldwanttocascadetheupdatetochildsitesandlists.
Whenyouaredone,clickOKtoreturntotheSiteContentType:RFBpage.Alternatively,simply clickthebreadcrumbSiteContentTypeGalleryfoundatthetopoftheimagetoreturntothegallery. Youshouldnowseethenewcontenttypelistedinyourselectedtypegroup.
CreatingaSiteLibrarytoCollectRFBDocuments Nowthatyouhavesitecolumnsdefinedalongwithacontenttypeforthedocumentsyouplantocreate, youcanassociatethemwithanexistingdocumentlibraryorcreateanewone.Let’sassumeyouwantto createaseparatedocumentlibrarytoholdRFBdocumentscreatedbyyourdepartment.Gotothe departmentorprojectsitewhereyouwanttocreatethelibrary,whichmustbeinthesamesite collectionasthecontenttype,sinceSharePointscopescontenttypestositecollections.Thereyoucan opentheSiteActionsmenuandselectViewAllSiteContents.FromtheAllSiteContentpage,click
625
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Create.OntheCreatepage,clickontheDocumentLibrarytypeandthenselectanewdocument library.Ineithercase,youshouldseetheNewLibrarypage,asshowninFigure12-9.Thispageallows youtoassignanameanddescriptiontothenewlibraryaswellasnavigationandversionhistory settings.IntheDocumentTemplatesection,selectanexistingtemplatefromthedrop-downlistsuch asaWorddocument.
Figure12-9.Createtheworkinglibrary. SharePointcreatesthelibraryanddisplaystheemptylibrarylist,butyoustillhaveconfiguration settingstoapplytothelibrary.Therefore,withthenewlibraryopen,selecttheoptionLibrarySettings fromtheSettingsgroupoftheLibraryribbon.SelectAdvancedSettingsfromtheGeneralSettings optiongroup.Intheresultingsettingspage,locatethesectiontitledContentTypesandselectthe optiontoallowmanagementofcontenttypes,asshowninFigure12-10.
626
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-10.Turnonmanagementofcontenttypesfortheworkinglibrary. ClickOKtoacceptyourchangesintheAdvancedSettingspage.ReturningtotheSettingspagefor thelibrary,lookagainatthesectioncalledContentTypes.Thissectionliststhecontenttypesthis librarycanuse.Bydefault,documentlibrariessupporttheDocumentcontenttype.Ifnotemplatehas beenassociatedwiththiscontenttype,itopenstheWordfiletemplate.doc,whichdisplaysadefault blankWorddocumentwhentheuserclickstheNewbutton.Figure12-11showsthecustomizationpage fortheRequestforBidslibrary.
Figure12-11.Addanewcontenttype.
627
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Toaddanewcontenttype,clicktheoptionAddfromexistingsitecontenttypesatthebottomof thissection.Thesubsequentpageshowstheavailablecontenttypes.Scrollthroughthislist,selectthe RFBcontenttypecreatedearlier,andclickAdd.Figure12-12showsthatyouwanttoaddthecontent typeRFBtothecurrentlibrary.WhenyouclickOK,SharePointaddsthiscontenttypetothelibrary.
Figure12-12.Selectthecontenttypetoadd. Afteraddingthisnewcontenttype,theblankWorddocumentcontenttype,Document,still appearsasthedefaulttype.Whilethedrop-downmenufortheNewbuttoninthelibrarynowshows bothcontenttypes,RFBandDocument,clickingtheNewbuttonassumesthatyouwanttocreatean instanceofthedefaultcontenttype.RatherthandefaulttoablankWorddocument,youwanttodefault toablankRFBformthatalreadyhasyourorganization’sheaderonitaswellasformattedsectionsfor theRFBcontents. SharePointprovidestwowaystopromoteyourRFBformtobecomethedefaulttypereplacingthe blankWorddocument.Youcouldsimplydeletethedefaultcontenttype.Ifyouneverwantusersto createagenericWorddocumentinthislibrary,thismaybeyourbestchoice.However,ifyouwantto leaveyouroptionsopen,youcouldchangewhichcontenttypeactsasthedefault.Youcandothisby clickingthelinkChangenewbuttonorderanddefaultcontenttype,asshowninFigure12-13.
Figure12-13.Viewthecontenttypesforthelibrary.
628
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Thepagetochangethecontenttypeorderworksmuchlikethepageusedtochangetheorderof columnsinaview.Youseeaseparaterowforeachcontenttype.Totheleftofthecontenttypename thereisacheckboxthatletsyoudeterminewhetherusersofthelibrarycanseethatcontenttype.Tothe rightofthecontenttypename,youseetherelativeorderofthecontenttypes.Thefirstcontenttype becomesthedefaultcontenttype.Therefore,thesecondwaytomaketheRFBcontenttypethedefault typeforthislibraryrequiresthatyousimplychangeitsnumericpositionto1,asshowninFigure12-14.
Figure12-14.Changethedefaultcontenttypeforthelibrary.
■TipYoucanalsoremovetheoriginalblankWordDocumentcontenttypebyuncheckingthecheckboxinthe VisiblecolumnfortheDocumentContentType.
Whenyoureturntoyourlibrary’sStandardViewandopentheNewdrop-downmenu,youwillsee thatitsupportstwodifferentcontenttypes,RFBandDocument.Figure12-15showsthisdrop-down menu.NoticethattheorderofthecontenttypesmatchestheorderselectionmadeinFigure12-14. Fromthisdrop-down,youcanselecteithercontenttypeorevencreateanewfolder.However,ifyou simplyclicktheNewbuttonratherthanopenthedrop-downlist,SharePointusesthedefaultcontent typeandopenstheRFBtemplate,allowingyoutocreateanewbid.
Figure12-15.Selectfromcontenttypeswhenaddinganewdocument. Beforeyouleavethisdocumentlibrary,youhaveonemorethingtodo.Ifyoualreadywentbackto theStandardViewtoseetheNewmenu,returntotheSettingspageforthelibrary.Scrolldowntothe Columnssection.Imentionedthatyoucouldcreatesitecolumnsthatyoucouldapplytolibraries. Beneaththelistofcurrentcolumnsusedbythelibrary,clickthelinkAddfromexistingsitecolumns.
629
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
ThislinkdisplaysthewindowshowninFigure12-16.ToseeonlythecolumnsassociatedwithRequest forBids,selecttheRFB_Group.
Figure12-16.AddcolumnstolibrarymetadatafromthesitecolumnsgroupRFB_Group. Youcannowaddeachofthecolumnsoneatatimefromthelistonthelefttothelistontherightby clickingitoncetoselectitandclickingtheAddbutton.Youcanalsodouble-clickacolumnnameto moveitfromoneboxtoanother.Ifyouhaveseveralcolumnstoselect,youmightfinditfastertobegin byclickingthefirstcolumnname.Then,whileholdingdowntheShiftkey,clickthelastcolumnname, followedbyclickingtheAddbutton. Afteryouhaveaddedallfourcolumnstothesecondlistbox,considerthetwooptionsatthebottom ofthedialogbox.Thefirstoption,Addtoallcontenttypes,addstheselectedsitecolumnstoeachof thecontenttypesinthelibrary.Ifyoudonotwanttodothis,removethecheckfromthecheckbox.In thisexample,youprobablywouldnotwanttoaddthesecolumnstotheDocumentcontenttype.The secondoptionaddsthesitecolumnstothedefaultview. Ifyoudonotwanttoaddthesitecolumnstoallcontenttypes,youcanstilladdthesitecolumnsto specificcontenttypesbyperformingthefollowingsteps:
630
1.
Fromthelibrary’sSettingspage,clickthecontenttypeyouwanttomodify.
2.
FromtheListContentTypepage,clickthelinkAddfromexistingsiteorlist columnsbeneaththeColumnslist.
3.
TheSelectColumnsgroupdefaultstoListColumnstodisplayanycolumns includedinthelist,butnotinthecurrentcontenttype.Ifthislistshowsthe RFBcolumns,movethemtothelistboxontherightthesamewayas previouslydescribed.
4.
ClicktheOKbuttontocompletetheadditionofthecolumnstothecontent type.
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
■TipIfyoualreadyaddedthesitecolumnstotheDocumentcontenttype,youcanopenthatDocumentcontent typeand,fromitslistofcolumns,selecteachcolumnoneatatimeand,fromitspropertiespage,clickthe Removebutton.
YoushouldnowseetheRFBcolumnsincludedintheColumnssection,asshowninFigure12-17.
Figure12-17.SitecolumnsaddedtotheRFBcontenttype IfyoureturntotheSettingspageforthelibraryusingthebreadcrumbsatthetopofthepage,you willalsoseethenewcolumnsintheColumnssection,asshowninFigure12-18.TheUsedIncolumn showswhichcontenttypesuseeachoftheuser-definedcolumns.
631
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-18.LibrarymetadataafteraddingsitecolumnstoonlytheRFBcontenttype Nowthatyouhaveadocumentlibraryforcreatingdocumentsbasedonyourcustomcontenttype forbidrequests,let’slookatthenextstep:creatingtheRecordsCentersite.
■NoteYoumayneedthehelpofyourSharePointadministratortocompletethisportionofthesetup,asyoumay nothaveadministrativerightstotheCentralAdministrationsite.
CreatingtheRecordsCenterSite Ifyouhavethenecessarypermissionstocreatenewsites,opentheSiteActionsmenuandselectNew Site.FromthisCreatepage,filterthelistbyContent&Data,orfromtheAllCategoriesgroupselectthe RecordsCentersitetype,asshowninFigure12-19.Youcanimmediatelyenteratitleforthissiteonthe rightsideoftheCreatepageoryoucanclicktheMoreOptionsbuttonwhereyoucanenterallthesite propertiesinoneplace.WhentheNewSharePointSitepageappears,enteratitleanddescriptionfor thenewsite.Thetitleappearsintheheaderofthesite.Thedescriptionalsoappearsintheheaderwhen supplied. Next,supplyaURLnameforthesite.Developersoftenuseanabbreviatedversionofthesitetitlefor theURL,leavingoutspacesorreplacingthemwithunderscores.UsingshorterURLnamesmakesit easiertoenterthemlaterwhencreatinglinkstothesiteorreferencingthesitetouploadobjects.
632
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-19.CreatetheRecordsCentersite. Forthissubsite,youcanchoosetousethesameuserpermissionsastheparentsite,oryoucan defineuniquepermissions.WhileyoumaychoosetocreateyourRecordsCenterasthetoplevelofa separatesitecollection,ifyouhaveasmallinstallation,youmaychoosetocreatetheRecordsCenteras asubsite,asshownhere.Ineithercase,mostsiteadministratorswillprobablydecidetocreateunique permissionsfortheRecordsCenterprimarilybecausefewerpeopleneedaccesstotheRecordsCenter, andeventhosewhodotypicallyrequiremorerightsthantheyusuallyhaveonothersites. Finally,aswithanysubsite,youcandefinethenavigationoptions,includingwhethertoincludethe siteinthetoplinkbaroftheparentsite.IfyouselectNoforthisoption,youcanstilllocateandenterthe RecordsCentersitebydisplayingSiteSettingsforthecurrentsiteandlookingunderSitesand Workspaces.Figure12-20showstheinitialappearanceoftheRecordsCenter.
633
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-20.TheinitialRecordsCentersitehomepage
CreatingtheExternalServiceConnection ThenextstepinconfiguringtheRecordsCentersitethatyoujustcreatedinvolvescreatinganExternal ServiceConnection.YoumustperformthisstepfromtheCentralAdministrationsitefortheRecords Centersite.OpenasecondbrowserwindowandlogintotheCentralAdministrationsite.Switchtothe GeneralApplicationSettingspageusingGeneralApplicationSettingsmenuoptionfromtheleft navigationmenu.Onthispage,selectConfiguresendtoconnectionsundertheExternalService Connectionssection,asshowninFigure12-21.
■NoteYoumayneedyourSharePointAdministrator’shelpwiththisstep.
Figure12-21.DefineanExternalServiceConnectionfortheRecordsCenter.
634
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
OntheConfigureSendToConnectionspage,enteraDisplayNamesuchasRecordsCenter. YourenduserswillusethisnametosenddocumentstotheRecordsCenter.ThenentertheURLforthe RecordsCentersite.ThegenericversionofthisURLis http://server/portal/_vti_bin/officialfile.asmx.Theserverportion,ofcourse,referstoyour SharePointserver’sname,andportalreferstothesitecollection.ThelastportionofthisURLreferstoa programfilethatdirectsitemssenttotheRecordsCentertoawebservicethatbuildstheRecordsCenter folderforthearchivedfile.YoucannotjustcopyfilesfromothersitelibrariesintotheRecordsCenter. Instead,eachfilesenttotheRecordsCentergeneratesitsownfolderidentifiedbythedateandtimethat youcreatedit.Thisfoldercontainsthearchiveddocument,alongwithafolderforpropertiesandaudit history. Besuretoclickthecheckboxthatallowsmanualsubmissionofadocumentfromtheitem’sSend Todrop-downmenu.Youcanalsochoosewhetheryouwanttosimplycopythedocumentormovethe documenttotheRecordsCenter.Ifyouneedtokeepacopyofthedocumentinthecurrentlibraryeven aftermovingacopytotheRecordsCenter,youcanselectCopy.Youcanalsomovethedocumentbut leavealinkintheoriginallibrarysopeoplecanstillopenthedocumentfromtheRecordsCenter.Inthe Explanationbox,youcanincludeamessagethatappearswiththelinkleftinthelibrarysouserswill knowthattheoriginaldocumentisintheRecordsCenter. Finally,clicktheAddConnectionbuttontocreatethenewconnection.Notethatyoucanreturnto anexistingconnectiondefinitionatanytimeandmakechangestothesesettings.Figure12-22showsthe ConnectionSettingsdefinitionformyRecordsCenternamedCompanyRecords.
635
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-22.DefinetheconnectionURLanddisplayname. Noticethatthisexternalconnectiononlyallowsyoutorouterecordsfromothersitestoyour RecordsCenter.ItdoesnottelltheRecordsCenterwhattodowiththoserecordsthatitreceives.We mustdothatwithintheRecordsCenteritself.
AddingtheSiteContentTypeforRFBsintotheRecordsCenter BeforeyoucanusetheRecordsCenter,youmustaddtheRFBcontenttypetoitsothatitrecognizesthe documenttypewhenyousendaninstancetoit.OpentheRecordsCentersiteandcreateanew documentlibrarycalledBids.SelectLibrarySettingsfromtheSettingsgroupoftheLibraryribbon.In theContentTypesarea,clickthelinkAddfromexistingsitecontenttypes.AddtheRFBcontenttype
636
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
herejustasyouaddedthecontenttypetoyourworkingsite.Whenyouaredone,youshouldseeyour RFBcontenttypeasoneofthecontenttypesintheBidslibrary,asshowninFigure12-23.
Figure12-23.AddtheRFBcontenttypetotheBidslibrary.
CreatingaPolicyfortheArchivalLibrary WhilestillintheBidslibrary,clickonthelinkInformationmanagementpolicysettingsinthe PermissionsandManagementcolumnatthetopoftheSettingspage.Ifyouhavenotpreviously createdapolicyforacontenttype,avalueof‘No’appearsintheRetentionPolicyDefinedcolumnfor thatcontenttype.Tocreateapolicy,clickontheContentTypeNameintheContentTypecolumn.The EditPolicyscreenfortheselectedcontenttypeappearsasshowninFigure12-24.
637
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-24.Beginanewpolicydefinition. Beginthepolicydefinitionbyprovidinganameanddescriptionforthepolicy.Thepolicystatement describesintextthehandlingofthefileorotherinformationthatusersmightbeinterestedin.
■NoteThepolicystatementdoesnotactuallycreateanactionagainstthefile.
TheRetentionsection,showninFigure12-25,definesaretentionperiodfortheitemsinthelibrary. Ifyourcompanyrequiresyoutokeepbidrequestsforsevenyearsafteryouarchivethefile,selectthe EnableExpirationcheckbox.Thisactionopensadialogthatletsyoudefinetheretentionperiod.For example,youcoulddefinetheretentionperiodasatimeperiodbasedonthefile’slastmodifieddate plussevenyears.
Figure12-25.Enableexpirationactionsinapolicy.
638
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Youcanalsospecifywhathappenswhentheitemdoesexpire.Thefirstoptionletsyouperforman actionsuchasdelete.ThismovesthefiletotheRecordCenter’sRecycleBin,wheretheadministrator forthesitecanpermanentlydeleteitorrestoreitifnecessary.Youcanalsostartaworkflowforthe documentbasedontheworkflowsdefinedforthesite. Otheroptionsincludetheabilitytoassignbarcodestoeachdocumentoritem,whichyoucould thenusetotrackprintedcopiesofthedocument.Youcanalsoprovidelabelsandbarcodeswiththe documentthatitincludeswhenyouprintit. YoumightalsowanttochecktheEnableAuditingoption,asshowninFigure12-26,whichtells SharePointtoauditspecificevents,suchaseachtimesomeoneviewstheitemsinthelist,editsthem, checksthemout,ormoves,copies,ordeletesthem.
Figure12-26.Enableauditinginapolicy.
CreatingaRecordRoutingRule YoustillhavenottoldtheRecordsCenterwhattodowithincomingdocuments.Therefore,thelaststep insettingupyourRecordsCenterinvolvescreatingrecordroutinginstructions.Withoutrecordsrouting, SharePointwouldnotknowwhattodowithrecordssenttotheRecordsCenter.Actually,itwouldjust leavethemintheDropOfflibrarythatSharePointcreatedaspartoftheRecordsCentersitetemplate. However,thensomeonewouldhavetomanuallyroutethoserecordstothedesiredarchivallibrary.You cantakecareofthattaskautomaticallybyusingroutingrules.Youcanhaveasmanyrecordrouting rulesasyouhavecontenttypesdefined.Eachrulecanthentreateachcontenttypeindividually,sending ittoaseparatearchivallibrarywithitsownpolicy.Inthissimpleexample,youonlyhaveasingle archivallibrary,Bids,butyoucanhaveanynumber. TherecordroutingruleassociatesacontenttypewithaspecificlibraryintheRecordsCenter.By default,SharePointleavesanycontenttypewithoutaspecificroutingruleintheDropOfflibrary,but youcancreatenewroutingrulesbyselectingManageRecordsCenterfromtheSiteActionsmenu whileintheRecordsCentersite.
639
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-27showstheRecordsCenterManagementpage.Initially,theRecordsCentersite includessomedefaultwebpartsonthispagethatprovideyouwithstep-by-stepinstructionsonhowto planandusetheRecordsCenter.Youcanremovetheseafteryouarefamiliarwiththeiroperation. However,theimportantwebparthasthetitleContentOrganizerRulesfoundatthebottomofthefirst column,asshowninFigure12-27.
Figure12-27.Viewtherecordroutingruleslist. Tocreateanewrule,clickthelinkAddnewitematthebottomofthiswebpart.Whenthenext screen,asshowninFigure12-28,opens,itallowsyoutodefineanewrecordroutingrule.Thefirst propertyyoumustsupplyistheTitle.Whileyoucanprovideanynameyouwouldlikefortherule,I recommendusingthenameofthecontenttypeorsomethingthatclearlyidentifiesthecontenttypeyou wanttoprocess.
640
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-28.Defineanewrecordroutingrule.
641
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Thesecondthingyoumustspecifyistherulestatus,whichcanbeactiveorinactive.Ifaruleis active,youcanspecifyapriorityfortherule.TheRecordsCenteronlyusesthePrioritysettingwhen morethanonerulematchesthecontenttype.Itallowsyoutodeterminewhichrulestorunfirst. Next,youdefinethecontenttypeuponwhichthisruleacts.Inthisexample,youcanseethatI specifiedthecontenttypeasRFBthatIcreatedintheDocumentContentTypesgroup.Ifyouhave alternativecontenttypenames,youcanalsospecifythem.Youcanalsocreateageneralrulebyusingan alternatetypeof“*”.Thisfeaturecanbeusefulifyouwanttouseasingleruletohandlemultiplecontent types.
■TipThereasonyoucanprovideatitleotherthanthenameofthecontenttypeisthatyoucanspecifythe contenttypeyouwanttoprocessintheSubmission’sContentTypearea.
IntheConditionsgroup,youcanfurtherdefinewheretorouteadocumentbasedonvaluesinthe availablefieldsinthecontenttype.Forexample,wecanusetheRFB_Due_DatetoroutetheRFBto differentarchivalfoldersbasedontheyearoftheRFB.Withothercolumns,wecouldroutetheRFB documentbasedonthetypeofbid,thedollaramountofthebid,thedivisionrequestingthebidorother criteria.Inthiscase,Iwillnotaddanadditionalcondition,asIwantallRFBdocumentsfornowtogo intoasinglearchivalfolder. Thelastgroupintherulesdefinitionletsyouspecifythedestinationlocation.Youmustcreatethis locationfirst,whichiswhyyouneededtocreatetheBidslibraryearlier.Youcanalsocreatefolders automaticallybasedonthevalueofoneofthedocument’sproperties.Youcanevenuseapropertyto createthefoldername. Afterdefiningtherule,clicktheOKbuttontosave|it.
ArchivingYourDocuments NowthatyouhavecompletedthesetupfortheRecordsCenter,let’sreturntotheworkinglibrarywhere youcancreateanoriginalRFBdocument.SupposeyouhaveaRFBcalledNewLaptopComputers.You cannowtestthearchivalprocessfromyourworkinglibrarytotheRecordsCenter. Ifyouconfiguredeverythingcorrectly,youcanopentheworkinglibraryandpositionyourmouse overthefileyouwanttoarchivetoopenthedrop-downmenuforthedocument.Positionyourmouse overtheSendTooptiontoopenthesubmenu,asshowninFigure12-29.Thissubmenunowcontains theentryRecordsCenter.Ifyoudonotseethisentryorifyouseeanentrywithadifferentname,then youdidsomethingdifferentwhendefiningtheExternalServiceConnectiondiscussedearlier.Since youmustconfigurethisinformationintheCentralAdministrationsite,youmayneedtocontactyour SharePointadministratorforassistanceatthispoint,ifthereisaproblem.
642
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-29.SendadocumenttotheRecordsCenter. SelecttheRecordsCenteroptiontobeginthearchivalprocess.Youmayfirstseeapop-upmessage askingifyouwanttomovethedocumenttotheRecordsCenter.Remember,youdefinedtheruleto move,notcopy,thedocument.Afterafewseconds,thepop-updialogboxshowninFigure12-30tells youthatyousuccessfullysentthecopyofthefiletotheRecordsCenter.
Figure12-30.MessageuponsuccessfuladditionofdocumenttotheRecordsCenter
643
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
■NoteAcopyofthefileremainsintheworkinglibraryonlyifyouselectedCopywhendefiningtheexternal connectioninCentralAdministrator.IfyouspecifiedtomovethedocumenttotheRecordsCenter,SharePoint automaticallyremovesthedocumentfromyourworkinglibrary.Youcanalsomovethedocumentandleavealink inthelibrarytothenewlocation.
IfyounowgototheRecordsCenter,youshouldseethefileintheRFBarchivallibrary,asshownin Figure12-31.
Figure12-31.Archiveddocumentfolder ThisbriefintroductiontousingtheRecordsCenteronlycoversthebasicsofhowtobuildandusea RecordsCentertoarchiveyourdocumentstoacentrallocation.Youmayneedtoconsidermany additionalfactorsbeforecreatingaRecordsCenterforyourorganization.
CreatingaPictureLibraryinSharePoint YoucanusepicturelibrariesinSharePointtosharepictureswithotherusersofyoursite.Theyalsolet youview,organize,share,andeditcommongraphics.Theabilitytocreateaslideshowfromapicture librarymayletyoushareyourpictureswithcoworkers.However,averyimportantpurposeofapicture libraryistosupplyfilestodisplayonyoursitepagesthatcontainimages,icons,orpicturesofanysort. Todothis,youmustfirststorethepicturefilesinyourpicturelibrary,whereSharePointwebpagescan findthem. TocreateapicturelibrarywithinyourSharePointsite,ifyoudonotalreadyhaveone,gototheSite ActionsmenuandselectViewAllSiteContent.FromtheAllSiteContentpage,clicktheCreateoption atthetopofthepage.Fromthenavigationpanelontheleftsideofthepage,clickonLibraryintheAll Typessection.ThePictureLibraryappearsasoneoftheoptionsontherightsideofthepage,asshown inFigure12-32.SelectitandthenclicktheMoreOptionsbuttontoprovidethepropertiesofyournew library.
644
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-32.SelectPictureLibraryfromtheLibrariesgroup. Whencreatinganewpicturelibrary,aswithanyotherlibrary,list,orwebpage,youmustnameit. Namesconsistofalphanumericstringsthatcanincludespaces,althoughsomepeoplewouldagreewith meinnotrecommendingspaces.Isuggestreplacingspaceswithunderscoresforreadability.Inany case,thenamemustbeuniquewithinthecurrentsite.Youcanalsoprovideanoptionaldescription, and,ifyoudo,itappearswhenyouopenthelibraryabovethelibrary’smenu. Next,choosewhetheryouwantthepicturelibrarytoappearintheQuickLauncharea.Typically,if youhaveapicturelibraryprimarilytosharepictureswithothermembersofyourteam,youwouldaddit totheQuickLaunchareasothatotherscanaccessiteasily.However,ifyourpicturelibraryonlyexists toservepicturestoyoursitepagesortoprovideiconsforpages,othermembersofyoursiteprobably havenoneedtoregularlyaccessthelibrary,andthusyoushouldnotincludeitintheQuickLaunch area.Ifyouuseapicturelibraryforbothpurposes,Iwouldsuggestthatyourethinkyourdesignandsplit yourpicturesintotwoormorelibrariessothatonlypicturesyoureallywantothermemberstoshare existinlibrariesthatappearintheQuickLauncharea.
■TipYoucanalsocontrolaccessthroughpermissionstopicturelibrariesusedwithinthepagesofyoursiteso thatotherscannotmodifyordeletethoseimages.
645
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Finally,youcandeterminewhetherSharePointtracksversionsofyourpictureseachtimeyousavea newpicturewiththesamename.Iftheimageconsistsoftime-sensitiveinformationthatsomeone mightneedtogobacktoearlierversionstoview,thenincludeversioning.However,formostuses, trackingpictureversionsdoesnotmakesense,especiallyconsideringthesizerequirementsofmost pictures.Rememberthateachversionisstoredasacopyoftheentirepicture.Figure12-33showsthe propertiesscreenofanewpicturelibrary.
Figure12-33.Setthepropertiesofthepicturelibrary.
Keeping the Size of Your Images Under Control Thefirstandmostobviousgoalistokeepyourimagesassmallaspossible.Differentformatsofthesame imagecanresultingreatlydifferentfilesizes.Usually,JPGorGIFfilesresultinthesmallestfiles.Ifyou needanimagethatisonly100pixelssquare,don’tsaveanimagecreatedfromyourdigitalcamerathatis 3500by2900pixels,andthenjustletthepageformatting“shrink”theimagedown.Thisprocessmay displayasmallerimage,butthephysicalimagesizeinbytesremainsthesame.Inaddition,itisnotjust thephysicalstorageonyourserverthatneedconcernyou.Thelargeryourimagefilesbecome,thelonger ittakestodownloadthoseimagestoabrowser,makingyourwebsiteappearslowerthanitshould, especiallyforthosepeoplewithslowerwebconnections. Anothertechniquetoreducethesizeofyourimagefilesistoreducetheircolordepth.Oftenthecolor depthofdigitalcameraimagesfarexceedswhatisnecessarywhendisplayingtheimageonawebpage.
646
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Usually,youcanreducethecolordepthfrom32bitto16bitorevenlesswithnoperceptibledifferencein theimage.IfyouworkwithGIFfilesrepresentingdrawingsratherthanphotographs,youcanreducethe colordepthdownto256colorsorless. OnetooltohelpyoumodifythesizesofyourimagesistheMicrosoftOfficePictureManager.Itcanhandle mostofyourresizingandimagemodificationneeds. Onceyouhavecreatedyourpicturelibrary,youcanopeniteitherbyclickingitsnameintheQuick LaunchmenuifyouplaceditthereorbyclickingViewAllSiteContentintheQuickLaunchmenuand locatingyourlibrarywithinthePictureLibrarygroup. Withinyourpicturelibrary,youmaywanttoorganizeyourpicturesintodifferentfoldersand perhapsevendifferentsubfolders.Tocreateafolder,clicktheNewbuttoninthemenubar,asshownin Figure12-34.Noticethatthenewdrop-downmenuonlyhasthisoneoption.Youcannotcreateanew picturefromwithinaSharePointlibrarybecauseSharePointdoesnothostitsowngraphicsdesigntool.
Figure12-34.Addstructuretoyourlibrarybyaddingfolders. Whenyoucreateanewfolder,youmustnameit.Foldernamescanhaveupto128alphanumeric charactersandcancontainblankspaces.Whileyoucanplaceperiodswithinafoldernametorepresent ahierarchy,youcannotputthatperiodatthestartortheendofthename.Norcanyouputtwoperiod charactersconsecutivelyinthename.SharePointalsodoesnotallowmostspecialcharacters.However, becauseyouhavetoreplaceblankspaceswiththestring“%20”inURLreferencestothelibrary,youmay wanttoavoidblankspacesorreplacethemwithunderscorecharacters,asshowninFigure12-35.After enteringaname,clickOKtocreatethefolder.
Figure12-35.Createnamesforfolders.
647
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Youdonothavetodefineyourfolderstructurefullybeforestartingtouseyourpicturelibrary.While youmaynotanticipateeveryneedforthepicturelibraryandthusnotbeabletofullybuildoutthefile structureforthelibraryaheadoftime,leavingthefilestructureuptotheuserscouldalsoresultinavery disorganizedstructure,maybeevenoneinwhichallpicturesappearinjustonefolder. Decidingwhentoaddapicturetoanexistingfolderandwhentocreateanewfolderforthepicture isalotlikesavingafileinyourlocalornetworkdrive.Getagroupofpeopletogether,andyoutypically endupwithseveraldifferentsuggestionsforthestructure.SomemembersofyourSharePointsitemight feelitbesttoseparateimagesbytopic.Othersmightwanttosaveimagesbyhowtheyusethemwithin thesite,suchasbypage.Stillothersmightwanttosaveimagesbasedonwhouploadedthem. Ofcourse,evenwithinasinglefolderinyourpicturelibrary,youcouldaddacustomcolumnto categorizeyourpictures.Thendefineseparateviewstofilteryourpicturesbasedonthevalueinthat customcolumn.Thismethodallowsyoutodefinemultiplesetsofwaysthatyoucancategorizeyour picturesbysimplychangingthesupportingmetadataforthepicturelibraryanddefiningappropriate views. ThebestrecommendationIcangiveyouisthatanyorganizationisbetterthannoorganization,as longasyoufollowitconsistently.Chooseamethodtostructureyourpictureswithinalibrary,publish themethodsoanyoneusingthelibraryknowshowtostoreandsearchforimages,andthenstickwith thatmethod.Youmightevenincludeyourfilestructurelogicinthedescriptionofthelibrarywhere everysitemembercanreadit.
UploadingPicturestoSharePoint Nowthatyouhaveapicturelibrary,youprobablywanttosavepicturestoit.AccessingtheUpload menuoftheopenpicturelibraryshowsthatyouhavetwooptionsforuploadingpictures:onefor uploadingindividualimagesandoneforuploadingmultipleimages.Whileyoucannavigatetothe folderwhereyouwanttouploadyourimagesbeforebeginningtoupload,youcanselectthepicture folderfromwithintheSelectPicturedialog.Inreality,youcanselecteitheroptionbecauseeventhe UploadPictureoptionallowsyoutouploadmultipleimages,andtheUploadMultiplePicturesoption doesnotfailifyouonlyselectasingleimagetoupload.Figure12-36showstheUploadmenu.
Figure12-36.Uploadpicturesindividuallyoringroups.
■CautionThisfeaturemaynotbeavailabletouserswhoareattemptingtoaccesstheirsitedirectlyfromthe serveronwhichtheyhaveinstalledSharePoint.Theeasysolutionistoaccessyoursite/serverfromanother networkedmachine.
648
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
UploadingSingleImages FromtheuploadpageshowninFigure12-37,youcanuploadasingleimagebymanuallyenteringits fullyqualifiedname.Amorereliablewaytoreferenceapictureyouwanttouploadtoensurethatyou notonlyspellitcorrectly,butalsogetthesyntaxfortheURLcorrectbeginswiththeBrowsebutton. ClickingtheBrowsebuttondisplaysastandardChooseFiledialogboxcommontomanyWindows applications.Fromhere,youcannavigatethroughthedirectoriesofnotonlyyourlocalmachine,but alsothedirectoriesofanynetworkdrivethatyouhaverightstoview.
Figure12-37.EntertheURLforthepictureorlocateitwithBrowse. Whenyoufindthefileyouwant,clickthefilenameandthenclicktheOpenbuttonorjustdoubleclickthefilename.TheChooseFiletoUploaddialogboxpassestheURLfortheimagebacktothe SelectPicturedialogbox. BeforeclickingOK,youcanchoosetochecktheboxnexttoOverwriteexistingfilesifyouwantto overrideanypicturesinthelibraryautomaticallywiththesamename.Ifyoudonotcheckthisbox,and SharePointdiscoversthatthefileyouareuploadingeitherhasalreadybeenuploadedoratleasthasthe samenameasafilealreadyinthelibrary,theuploadfailswithanerror.Theerrormessageidentifiesthe filebyname.Youcansimplyrenameoneoftheimagesandtrytouploadthepictureagain.
■CautionWhenyouselecttheoptiontooverwriteexistingfiles,SharePointdoesnotchecktoseewhichversion ofthefilehasthelatestdate.Therefore,usingthisoptioncouldinadvertentlyallowyoutoreplaceamorerecent versionofafilewithanearlierone.
Noticealsothatyoucanchoosethedestinationfolderfortheimage.UsingtheChooseFolder button,youcandisplaythehierarchyofthePicturelibraryandselectthefolderwhereyouwanttoplace theuploadedimage.Bydefault,SharePointassumesitisthefolderyouwereinwhenyouclickthe Uploadcommand.
649
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Selectingasinglefiletouploadopensapagethatletsyouimmediatelyupdatethedefaultmetadata associatedwiththepictureinthecurrentpicturelibrary.Figure12-38showsthispage.Youcanchange thenameofthefileusedbythelibrary,andnothavetokeepthesamenameastheoriginalfile.Youcan alsospecifyatitleforthepicture.Next,youcanspecifythedateandtimeyoutookthepicture.Notall picturesneedthistypeofinformation,but,torelatepicturestospecifictimes,youcandocumentthat informationhere.SharePointusesthedescriptionfieldasalternativetextwhenyouplacethepictureon awebpageandtheviewerofthewebpagehasturnedgraphicsoff.Applicationsfortheseeingimpaired cansometimesreadthealternativetextassociatedwithpictures.Ineithercase,agooddescriptionofthe imagecouldhelppeoplewhodonotseethepicture.Finally,youcanspecifykeywordsforthepicture thatthesearchenginecanusetolocatespecificimages.
Figure12-38.Defineapicture’smetadataassoonasyouuploadit.
650
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
■TipYoucanalsocreatecontenttypesforpicturelibrariesjustaswithotherlibraries.Thosecontenttypescan haveuniquecolumndefinitionsthatcaninclude,remove,ormodifythedefaultcolumnsusedbythedefault picturelibrary.
UploadingMultipleImages Ifyouwanttouploadmultiplefiles,ratherthanenterafilenameinthefirsttextboxorclicktheBrowse button,clicktheoptionUploadMultipleFiles.ThisoptionopensthedialogshowninFigure12-39.
Figure12-39.Dragfilesandfoldersfrommultipledirectoriesonyourlocalmachinewhenuploading multiplefiles. Thisdialogbeginsinasimilarwaytotheoneusedtouploadasinglefile.However,ratherthan providingatextboxandBrowsebuttontoidentifythatsinglefile,theUploadMultipleFilesdialog providesanareawhereyoucandragotherfilesandevenfoldersfromanotheropeninstanceof WindowsExplorer.Infact,youcanselectfilesfrommultipleindividualfoldersanddragthemintothis textbox.IfyoudonothaveWindowsExploreropen,justclicktheBrowseforfilesinsteadlinktoopen aninstanceofWindowsExplorersoyoucanlocateandselectthefilesyouwanttoupload. Noticethatthetextbelowtheareawhereyoudragyourfilescontinuouslyupdatestoletyouknow howmanyfilesyouhaveuploadedandthetotaluploadsize.Thisuploadsizecouldbeimportantifyour
651
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
SharePointadministratorhasplaceduploadlimitsonyoursystem.Ifyouneedtouploadmorefilesthan allowedbyyouruploadsizelimit,youcansplittheuploadintogroupsoffileswhereeachgroupisless thantheuploadsizelimit. Afteryouhaveidentifiedallthefilesyouwanttoupload,youcanclicktheOKbuttontostartthe upload.YoucanalsogettothissamepointbyselectingtheUploadMultiplePicturesoptionfromthe Uploaddrop-downmenu.
UploadingMultipleImageswithMicrosoftPictureManager Dependingonyourinstallation,youmayinsteadhaveaccesstoMicrosoftPictureManager.(Picture Managerisusedbydefaultforuploadingmultipleimageswhenyouhaveitinstalled.)Thisisatoolin theMicrosoftOfficeinstallation.IfthepeoplewhoconfiguredyourinstallationofMicrosoftOffice includedit,youcanuploadmultiplefilesusingit,ratherthanhavingtoenterafilenameinthesinglefile uploadtextbox.Youwillseethisoptioninsteadofthescreenintheprevioussectionwhenyouclickthe optionUploadMultipleFiles.Ratherthanshowingadirectorytreeofthefilesonyourlocaldrive,it opensMicrosoftOfficePictureManager,whichIwilldiscussfurtherinthenextsection.Youcanalsoget tothissamepointbyselectingtheUploadMultiplePicturesoptionfromtheUploaddrop-down menu. Ineithercase,ifyouattempttouploadafilewithanamethatalreadyexistsinthelibrary,Microsoft OfficePictureManagerpopsupanerrormessagethatdisplaysfouroptions: •
ReplaceFile:Thisoptionreplacesonlythefilethatraisesthecurrenterror message.Ifotherfilesmarkedforuploadalsohaveduplicatenames,youwillhave toaddresseachoneseparately.
•
ReplaceAll:Thisoptionreplacesnotonlythefilethatraisesthecurrenterror message,butalsoanyotherfilesthathaveaduplicatenameinthecurrentupload batchwithoutfurtherprompting.
•
SkipFile:Thisoptionskipsthecurrentduplicatefilefromtheuploadbatchand continueswiththenextfile.Itcontinuesthroughtherestofthepicturesmarked foruploadingunlessitfindsanotherduplicate.Ifso,itdisplaystheerrordialog boxagaintoletyoudecideonanactionforthatfile.
•
CancelUpload:Thisoptioncancelstheuploadatthispoint.Filesalready uploadedremainuploaded,butMicrosoftOfficePictureManagerwillnotattempt touploadanyoftheadditionalfilesinthesetofselectedfiles.
ThisabilitytohandlefilenameconflictsduringuploadmightbeagoodreasontousetheMicrosoft OfficePictureManager,evenwhenyouonlywanttouploadasinglefile.However,thereareseveral otheradvantagestousingthistooltouploadyourpictures.
UsingtheMicrosoftOfficePictureManager Theabilitytopreviewathumbnailoftheavailableimagesinanydirectoryofyourlocaldriveisanother advantageoftheMicrosoftOfficePictureManager,asshowninFigure12-40.Thepanelontheleftlets younavigatetoanyfolderonyourlocaldriveandviewthumbnailsofthepicturesfoundthere.
652
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-40.UsingMicrosoftOfficePictureManagertopreviewanduploadpictures Thecenterpaneldisplaysthumbnailsofeachimagefoundintheselecteddirectory.Youcanchange thesizeofthethumbnailsbyusingtheslidecontrolatthebottomrightofthispanel.Alongthetopofthe centerpanel,youshouldseethreeiconsthatallowyoutoselectbetweenthreedifferentviewmodes. Thefirsticondisplayseachimageasathumbnailwiththenameoftheimageimmediatelybeneathit. Thesecondviewoption,calledtheFilmstripView,usesthetophalfofthecenterpaneltodisplaythe currentlyselectedimage.Therestoftheimagesappearacrossthebottomhalfofthepanelinasingle row.Youcanmovefromoneimagetothenextbyclickingoneofthevisibleimagesinthefilmstriparea atthebottom,oryoucanclicktheleftandrightpointingarrowsfoundinthecontrolareainthemiddle ofthecentralpanel.AnexampleofFilmstripViewappearsinFigure12-41.
653
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-41.DisplaypicturesinafolderusingtheFilmstripView. Thethirdandfinaloption,calledtheSinglePictureView,showsonlyasinglepictureatatimefrom theselectedlibrary(seeFigure12-42).Beneaththepicture,youwillfindacontrolbar.Startingfromthe leftsideofthecontrolbar,youwillseethenameofthepicturefile,navigationbuttonsthatallowyouto movetothepreviousornextimageinthedirectory,andazoomslidebarthatletsyouchangethesizeof thedisplayedimage.
654
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-42.DisplaypicturesinafolderusingtheSinglePictureView. YouwillmostlikelyselectpicturestouploadfromtheThumbnailView.Whenyouclickanimage, theUploadpanelontherightsideofthescreentracksthenumberoffilesyouhaveselected,thename ofthelibrarythatitwilluploadtheimageto,whetheritwillsendtheoriginalpicture,andwhetheritwill optimizethepictureforviewingontheWeb.Asyoumightexpect,thissettinghelpsreducethefilesize forimageswithmillionsofcolorssuchasphotographs,butitcanalsosubstantiallyreducethesizeof evencapturedscreenimages.Youcaneasilyseethedifferenceinsizebyalternatelyclickingthetwo optionbuttonsintheUploadSettingssectionandcheckingthevaluedisplayedbeneaththemafterthe labelTotalTransfer.TheTotalTransfervaluecanalsogiveyouanideaofhow“expensive”intermsof filesizeitwouldbetodisplayacollectionofimagesonyourwebpages.
■TipIfyoudonotseetheUploadpanel,clickthetextChangeUploadSettingsfoundatthebottomofthe MicrosoftOfficePictureManagerwindowtotheleftoftheUploadandCancelbuttons.Youcanalsoselecta differentpanelfromthedrop-downmenufoundontherightsideofthepanelheadertotheimmediateleftofthe closebutton.
655
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
YoucanselectmultipleimagestouploadintheThumbnailViewbyclickingthefirstpictureyou want,andthen,whileholdingdowntheShiftkey,clickingthelastpicture.Thisincludesallofthe intermediatepictures,startingatthetopmostpictureselected,andthenproceedingfromlefttoright, toptobottom,tothebottommostpicture. Ifyouonlywanttotransferselectedpicturesfromafolder,clickthefirstpictureyouwant,andthen, whileholdingdowntheCtrlkey,clickeachoftheadditionalpicturesyouwant. Finally,youcanalsousethemousetoclickanddragthroughtheimages.Theonlylimitation,which youmayfindinconvenientattimes,isthatyoucanonlyselectimagesfromasingledirectoryaspartofa singleupload.Ifyouwanttouploadimagesfrommultipledirectories,youmustselectanduploadfiles fromeachdirectoryseparately. Whenyouhaveselectedyourimages,clicktheUploadandClosebuttontobeginthetransferofthe filestoyourSharePointpicturelibrary.Dependingonthenumberofpicturesyouhaveselectedand theirindividualsizes,thiscouldtakeafewsecondstocomplete.
UsingWindowsExplorertoUploadPictures Anotherwaytouploadpicturestoyourpicturelibrarybeginsbyswitchingtheviewofyourpicture librarytoopenitwithWindowsExplorer.YoucanfindthisoptionintheActionsdrop-downmenu,as showninFigure12-43.
Figure12-43.SwitchtotheWindowsExplorerviewmode.
656
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
■CautionThisfeaturemaynotbeavailabletouserswhoareattemptingtoaccessthesitedirectlyfromthe serveronwhichtheyhaveinstalledSharePoint.Theeasysolutionistoaccessyoursite/serverfromanother networkedmachine.
ThenopenaninstanceofWindowsExplorerfromyouroperatingsystem’sStartmenu.Youmay wanttoresizetheSharePointlibrarywindowandtheWindowsExplorerwindowsothatyoucanview bothwindowssidebyside.Next,navigatetothedirectoryinWindowsExplorerthatcontainsthe picturesyouwanttoupload,andselectthemindividuallyorasagroup.Withyourpicturesselected, clickanddragtheselectionovertotheSharePointlibraryareaandreleasethemousebutton,asshown inFigure12-44.
Figure12-44.Usedraganddroptotransferpictures.
DownloadingImagesfromYourPictureLibrary Earlier,Icoveredhowtodisplaypicturesfromapicturelibraryonawebpage.However,ifendusersof yourSharePointsitecanviewyourpicturelibrary,theycandownloadtheimagestotheirlocalhard drives.Notonlydopicturelibrariesprovideanalternativetosendingpicturesase-mailattachmentsto people,buttheyalsohavesomeabilitytocontrolthesizeofthedownloadedimage.Figure12-45shows thePageImages:DownloadPicturespagedisplayedbyselectingtheDownloadoptionintheAction menu.Noticethatyoucandownloadoneofthreedifferentsizesfortheselectedpictures:fullsize,
657
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
previewsize,andthumbnail.Thisfigureshowsthumbnailsofapictureselectedbeforechoosingthe Downloadoption.
■CautionThisfeaturemaynotbeavailabletouserswhoareattemptingtoaccesstheirsitedirectlyfromthe serveronwhichtheyhaveinstalledSharePoint.Theeasysolutionistoaccessyoursite/serverfromanother networkedmachine.
■NoteYoumustselectthepicturesfirstbeforeyouselecttheDownloadoption.
Figure12-45.Selectthesizeofthepicturestodownload.
658
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Bydefault,SharePointdownloadstheimagesassaved(FullSize).However,ifyouclicktheSet AdvancedDownloadOptionslink,youcanchooseadifferentformatforthepictures.SharePoint supportsconvertingpicturestothefollowingformattypes: •
JPEGInterchangeFormat(*.jpg)
•
TaggedImageFileFormat(*.tif)
•
WindowsBitmap(*.bmp)
•
GraphicsInterchangeFormat(*.gif)
•
PortableNetworkGraphic(*.png)
Youcanchoosethefinalsizeoftheimagefromalargerselectionofpredefinedsizes.Youcanalso createyourowncustom-sizedimagebyeitherspecifyingthewidthandheightoftheimageinpixels, whichgivesyouindependentscalingofthehorizontalandverticalimagesize,orbyspecifyinga percentagetostretchboththehorizontalandverticalsize.ThepageinFigure12-46specifiesretaining theoriginalformatandsizeofthedownloadedimages.
Figure12-46.Chooseafileformatfordownloadedimages. WhenyouclicktheDownloadbutton,youmuststillidentifythedirectorywhereyouwanttoplace thepictures.Youcandothiseitherbyenteringthedirectorynameinthecheckboxorbylocatingthe directorybyclickingtheBrowsebuttontolookforit.Ifyouspecifyadirectorythatdoesnotexist, SharePointdisplaysamessageboxthatallowsyoutocreateit. Bydefault,SharePointassignsthedownloadedpicturesthesamenametheyhaveinthepicture library.However,youcanrenamethepicturesasyoudownloadthembysupplyingabasenameto whichSharePointaddsanumericvaluetonameeachimageuniquely.Figure12-47showsthatitwill downloadtheimagestoadirectorynamedMyPictures\MySitePictures.Italsowillrenameeach pictureincludedinthedownloadbeginningwiththetextItaly_Tripandthenappendinganumber startingwith01.
659
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-47.Definewheretosaveimagesandhowtonamethem.
SendingImagestoaMicrosoftOfficeApplication Ratherthandownloadtheimage,youcouldsendtheimagetooneoffourMicrosoftOfficeapplications. Figure12-48showsthedialogboxthatappearsafteryouselectoneormoreofthepicturesfromthe libraryandthenselectSendTofromtheActionsmenu.YoucanonlyselectoneMicrosoftOffice applicationatatime.However,youcouldreturntothisoptionseveraltimestoresendtheimageto differentapplications.
Figure12-48.SendapicturetoanOutlookmessage.
660
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
IfyoucurrentlyhaveaMicrosoftOfficefileopensuchasaWorddocument,thenameofthe documentappearsinthedrop-downboxfoundbeneaththelabelInsertintoanopenfile.Infact,ifyou havemorethanoneWordorPowerPointfileopen,youcaninsertthegraphicsintoanyofthemby selectingtheoneyouwantfromthedrop-downlist.IfyoudonothaveanyopenOfficefiles,thisoption appearsdisabled. Evenifyouhavearecognizedfileopen,youcanstillsendtheselectedimagestoanewOutlook message,Worddocument,PowerPointpresentation,orExcelspreadsheet.Eachpossibleoutput destinationhasitsownsetofoptions,whichyoucandisplaybyclickingtheOptionslink. WhensendingimagesinanOutlookmessage,youmustfirstdecidewhethertosendtheimagesas attachedfilesortoembedthemintothemessage.Ifyouembedanimageintothemessage,yougetto choosethepreviewsize.Possibleoutputsizesforembeddedpicturesinclude •
Thumbnail(160x160px)
•
Postcard(448x336px)
•
LargePostcard(640x480px)
Youcanthendeterminethelayoutoftheimagesinthemessage.Youcaneitheruseatablelayout, whichallowsmultipleimagesinarow,orsaveasingleimagetoasinglerow.Figure12-49showsan exampleoftheOptionsforSendingPicturesdialogboxusedtosavetheselectedpicturesaspreviews withinthemessageusingthepostcardimagesizeandatablelayout.
Figure12-49.SelectoptionsfordisplayinganimageinanOutlookmessage.
■NoteThetableshowsnobordersbydefault.Ifyouwanttodisplaybordersbetweenandaroundpictures,rightclickbetweenanyofthepicturesandselectTablePropertiesfromthepop-upmenu.IntheTableProperties dialogbox,selectBordersandShading.IntheBordersandShadingdialogbox,clicktheBorderstabif necessaryandthenselectthebordersorindividuallinesyouwant.
661
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
WhenyousendthepicturestoaWorddocument,aPowerPointpresentation,oranExcelworkbook, youcansetonlytheimagesize.Youcanchoosefromthefollowingsizes: •
Originalsize
•
Document—Large(1024x768px)
•
Document—Small(800x600px)
•
Web—Large(640x480px)
•
Web—Small(448x336px)
•
E-mail—Large(314x235px)
•
E-mail—Small(160x160px)
Donotthinkthatyoucanonlyusethefirstthreesizeoptionsjustbecauseyouwanttosendthe picturestoaWorddocument.YoucanuseanyofthesesevensizeswhensendingapicturetoaWord document,PowerPointpresentation,orExcelworkbook.SharePointrecommendsvarioussizesfor differentpurposes.
■NoteWhileselectingasizesmallerthantheoriginalpicturecommandsSharePointtoshrinkalargerpictureto thesizeindicated,itwouldnotstretchasmallerpicturetoalargersize.
ViewingthePicturesinaPictureLibrary Youhaveseveralwaystoviewthepicturesinyourlibrary.Thefirstway,showninFigure12-50,shows theDetailsViewofthepicturesthatyoucandisplaybyselectingtheAllPicturesview.Aswithother menus,thissymbolindicatesthatthisitemhasasecondflyoutmenu.Asyoupositionyourmouseover thistext,youshouldseeaflyoutmenuwiththeoptionsDetails,Thumbnails,andFilmstrip.This Detailsviewonlyshowstheitemtype(apictureinthiscase),thepicturename,thepicturesizeinpixels, andthefilesize.Theseimagepropertiestellyoualotaboutthepicture,buttheydonotshowyouwhat thepicturelookslike.However,youcaneasilyremedythatbyclickingtheviewdrop-downmenuinthe upper-rightcornerandselectingtheModifyThisViewoption.Amongtheavailabledatacolumns,you willfindthesethreecolumns:Preview,Thumbnail,andWebPreview.Eachofthesecolumnscan displaythepicture.IsuggestusingtheThumbnailcolumnformostlistviewsbecauseitrequiresthe leastamountofspace,especiallyforlibrarieswithlargerimages.Therearealsocolumnstotrackthe dateofthepicture,keywordsusedbythesearchengine,versions,check-instatus,andmore.
662
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-50.ViewpicturelibrarycontentsusingDetailView.
■NoteIfyouattempttoeditanimage,SharePointtriestoopenapictureeditorsuchasMicrosoftOfficePicture Manager.
Tochangethepictureview,returntotheViewdrop-down.ThistimeselectThumbnailstoseean imageliketheoneshowninFigure12-51.
663
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-51.ViewpicturelibrarycontentsusingtheThumbnailsViewoption. Noticethecheckboxestotheleftofeachitem’snamethatappearsbelowthethumbnailimage.You mustselectoneormoreofthepicturesbyclickingtheseboxestoperformanactiononthepicturessuch asDelete,Download,orSendTo. Thisfigureshowsthumbnailsofeachimageinthelibraryinatable-likestructurespanningfromleft toright,toptobottom.Ifyouresizeyourwindows,thenumberofpicturesineachrowautomatically adjustsbasedontheavailablespace. ThethirdviewoptionunderAllPictures,Filmstrip,displaysthepicturesinafilmstripmode.This modedisplaysuptofivethumbnail-sizedimagesacrossthetopofthescreen.Eachofthesethumbnails hasacheckboxbeforethenamejustliketheThumbnailsView,allowingyoutoselectimagesfromthis viewbeforeopeningtheActionsmenutoperformanactiononthem.Itthendisplaysoneoftheimages inalargerformatinthebottomhalfofthescreenasshowninFigure12-52.Belowthislargerimage,you willseetheimagenameandadescriptionifyouprovidedonewhenyouuploadedtheimage.
■NoteNomatterhowwideyoucanmakethewindowonyourmonitor,thefilmstripatthetopcanonlydisplaya maximumoffiveimages.Thenaverticalbarappearswithagreenarrowbuttonontheleft,theright,orboth sides,indicatingthepresenceofadditionalimages.Tobringthoseimagesintoview,clickthegreenarrowtoscroll throughthefilmstrip.
TheSelectedPicturesoptionintheViewmenusupportsthesamethreesubviewsastheAll Picturesoption,exceptthatitonlydisplaystheimagesyouhaveselectedbyclickingthecheckbox beforetheimagenames.
664
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-52.ViewpicturelibrarycontentsusingFilmstripView. TheExplorerViewoption,asshowninFigure12-53,roundsoutthelistviewoptions.Remember thatyoucangettotheExplorerViewbyselectingOpenwithWindowsExplorerfromtheActions menu.Thisoptionshowsthepicturesusingiconsrepresentingthefiletype.Thisviewallowsyoutocopy andpasteimagesbetweenthisviewandWindowsExplorer.
■CautionIfyoucopyandpastepicturesfromWindowsExplorertoyourpicturelibraryusingthismethod, rememberthatyoumayneedtogobackintoeachimagetoaddtheadditionalmetadatathatWindowslibrariesdo notstoreorprovide.
665
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-53.UseExplorerViewtodraganddropimagesbetweenfolders. Whenyouclickanimageinthepicturelibrary,SharePointdisplaysitinapreviewformthatdisplays notonlythepicture,butalsothesupportingmetadatafortheimage,asshowninFigure12-54.Fromthis view,clickEditItemtoopentheeditformforthepicture.Thereyoucanchangethepicture’sname, title,datetaken,description,andkeywords.
666
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-54.Editpreviewwindowforanimage
■TipKeywordscanhelpyoursearchenginefindpictures,sincebasicsearchesonlyworkontextandwould otherwisehavenowaytoidentifypictures.
Youcanalsodeletethepicture,modifythepermissionsforthepicture,managecopiesofthe picture,checkoutthepicturetoexclusivelyeditit,andsetalertsthatcantellyouwhensomeoneelse editsordeletesthisspecificpicture. OnelastpictureviewingoptionappearsintheActionsmenuofthelibrary.Figure12-55showsan exampleofthepicturelibraryafterselectingViewSlideShowfromtheActionsmenu.
667
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-55.Displaypicturesinaslideshow. Whilepicturelibrariesworkgreatwithstaticpictures,theydonotworkwellwithPowerPointslides. Therefore,MicrosoftaddsaspeciallibraryinSharePointEnterprisespecificallytohandlePowerPoint slides.Thenextsectionexploresthatlibrary.
CreatingaSlideLibraryinSharePoint Thischapterclosesbylookingattheslidelibrary.Thislibraryresemblesthepicturelibraryinthatit storesimages.However,SharePointhasspecificallycustomizedittostoretheindividualslidesfroma PowerPointslidepresentation.Youcanusetheslidelibrarytostoreyourslidepresentations.However,a morepowerfuluseofthislibraryistostorecommonslidesthatyouremployeescansubsequentlyusein theirpresentations.Perhapstheslidesdepictthehistoryofyourorganizationoritsproducts.Maybeyou haveasetofslideswithbriefbiosofyourprincipalcorporateofficers.Someslidesmightrepresent technicaldataaboutyourproductsorservices.Whatevertheslidesmaycontain,youmightwanttostore
668
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
theslidesinacommonshareablelocationsothatotherscaneasilyincludethoseslideswhileputting togetheracustompresentationorwhilemakingapresentationtoapotentialcustomerorclient. SharePointaddsslidelibrariestotheavailablelibrarytypesinSharePoint.Tocreateaslidelibrary, beginbyclickingtheViewAllSiteContentoptionintheSiteActionsdrop-downmenu.Next,clickthe Createbuttonnearthetopleftofthepage.Then,asshowninFigure12-56,selectSlideLibraryfromthe LibrariesgroupoftheCreatepageandthenclicktheCreatebutton.
Figure12-56.CreateaslidelibraryforPowerPointslides. Thesettingspageforthenewlibrarythenappears.Youmustspecifyanameforthelibrary.Ifyou alsoincludeadescription,thatdescriptionappearsbeneaththelibrarynamewhenyouopenthelibrary. Aswithotherlibraries,youcandecidetoincludethelibraryintheQuickLaunchmenu.Ifyouwant mostuserstoaccessthislibrary,youprobablywanttoaddittotheQuickLaunchmenu.However,even ifyoudonotincludeitthere,youcanalsogettothelibrarybyclickingtheViewAllSiteContentoption intheQuickLaunchmenuandthenlookingforthelibraryunderthesectionDocumentLibraries.
669
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
■NoteIknowyouareprobablysayingtoyourselfthatthereshouldbeasectiontitledSlideLibraries.Atthevery least,youmighthaveexpectedtofindtheslidelibraryunderthepicturelibraries,whichitcloselyresembles.For thatreason,takespecialnotethatslidelibrariesfallintotheDocumentLibrariesgroupingwhenviewingAllSite Content.
Finally,youcanchoosetotrackversionstoimagesaddedtothislibrary.Unlikepicturelibraries, whichoftendonotneedversions,manypeoplefindtrackingversionsofslidesimportant.Ifyouneedto trackslideversions,selectYesundertheSlideVersionHistorysection. Figure12-57showsalibrarycreatedtostoreslidesfromarecentSQLSaturdaypresentation.This librarydoesappearintheQuickLaunchmenubutdoesnottrackversionsoftheslides.
Figure12-57.Definemetadataforaslidelibrary. AfterclickingtheCreatebutton,youwillseeyournewemptyslidelibrary.Beforeyoustart uploadingslidesintoyourlibrary,youmightwanttothinkaboutthestructurethatyouwanttocreate foryourslides.Doyoureallywanttostoreallyourslidesunderasinglefolderorlist?Woulditmake moresensetogroupsomeslidestogether,separatingthemfromotherslides?Ofcourse,youcould createseparateslidelibrariestostoreslidesfordifferentpurposes.However,youcanachievethesame resultswhilemakingiteasiertotransferslidesbetweenareasbyusingafolderstructureforyourslides, muchasyoucreateafolderstructuretostorefilesonyourharddrive. WhenyouclicktheNewoptioninthelibrarymenubar,asshowninFigure12-58,theonlyoption thatyouwillsee,NewFolder,allowsyoutocreateanewfolderfromyourcurrentlocationinthelibrary. Startingfromthelibraryroot,youcancreateasetoffoldersfordifferenttypesofslides.
670
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-58.Organizeyourslideswithfolders. Whenyouselectthisoption,SharePointpresentsyouwithaverysimpleformtoenterthenameof thefolder.Foldershavenoadditionalpropertiesotherthantheirnames.InFigure12-59,IshowtheNew FolderdialogforafoldernamedXML_For_DBAs_Beginner.
Figure12-59.Foldersmusthavenames. Youcanaddotherfoldersunderthelibraryrootinasimilarfashion.Bydouble-clickingafolder,you canopenitandaddasubfolderwithinit.
UploadingPicturestoYourSlideLibraryfromPowerPoint Whileyoudonothavetocompleteyourentirefolderstructurebeforebeginningtoaddpicturestothe folders,youshouldhaveatleastagoodideaoftheinitialfoldersyouneed.Onceyouhaveyourfolders, youhavetwowaystopublishyourslidesfromPowerPoint.Youcanstartfromyourslidelibraryand uploadthem,oryoucanstartfromPowerPointandpublishthem.
■CautionThissectionrequiresthatyouhaveMicrosoftPowerPointinstalledonyourcomputeralongwith associatedActiveXcontrolsupportforyourbrowser.
671
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
UploadingYourSlides ThefirstwaytoloadslidesintoyournewslidelibrarybeginsbyselectingtheoptionPublishSlidesfrom theUploadmenu.ThisoptionbeginstheprocessofcopyingslidesfromanexistingPowerPoint presentationtothelibrary,asshowninFigure12-60.
Figure12-60.UploadyourPowerPointslidestoyourlibrary. WhenyoustartfromSharePoint,itopensaninstanceofPowerPointontheclientmachineandpops uptheBrowsedialogboxtohelpyoulocatethePowerPointpresentationfileandopenit.Afteryou selectapresentation,thePublishSlidesdialogboxappearsthatdisplaysalltheslidesinthe presentationasalistconsistingofasmallthumbnailofeachslide,thenameofthefilethatcontainsthe slide,andashortdescriptionoftheslide.
■NoteSharePointtakestheslidedescriptionfromtheslidetitlearea,whichisanothergoodreasonfor descriptivetitles.
Totheleftofeachthumbnail,asmallcheckboxallowsyoutoselectwhichslidesyouwantto upload.Ifyouwanttouploadalltheslides,clicktheSelectAllbuttonatthebottomofthewindow.If youdecidetochangeyourselection,youcaneitherunselecttheslidesbyclickingtheircheckboxes againorsimplyclicktheClearAllbuttontorestart.Onceyouhaveselectedtheimagesthatyouwantto publish,youcanverifythenameoftheslidelibraryyouwilladdthemtobycheckingthecontentsofthe PublishToboxatthebottomofthedialogbox.Ifyouneedtochangethislibrary,youcanmanually updatethistextorusetheBrowsebuttontonavigatetoadifferentlocation. Finally,clickthePublishbuttontotransferthePowerPointslidestoSharePoint.Figure12-61shows severalslidesbeingpublishedtotheSQL_Saturdaylibrary.
672
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-61.Selectwhichslidesyouwanttopublish.
PublishingYourSlidesfromPowerPoint ThesecondwaytotransferslidesintoyourlibrarybeginsfromPowerPointandpublishestheslidesto SharePoint.Todothis,openyourPowerPointpresentationandthen,fromtheSharepageofthe Backstagearea,clickPublishSlides.ThePublishSlidespaneltellsyouthatyouareabouttopublish slidestoaslidelibrarytoprovide: •
Alocationwhereyoucanshareyourslideswithotherpeopletouse
•
Trackandreviewchangestoslides
•
Locatethelatestversionofaslide
•
Receiveane-mailnotificationviaanalertwhenaslidechanges
Figure12-62showsthispanel.
673
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
. Figure12-62.PublishslidesdirectlyfromPublisher2007. PowerPointthenopensthesamedialogboxshownearlierinFigure12-59thatdisplaysalltheslides inthecurrentslideshow.Toselectaslide,youmustclickthecheckboxtotheleftofeachslideto indicatewhichonesyouwanttopublish.Youdonothavetopublishallslidesinthepresentationdeck, butyoumustselectatleastonebeforethePublishbuttonatthebottomofthedialogboxactivates. Beforeyoucanpublishtheslides,youmustspecifywhereyouwanttopublishthem.Whenyoustart fromtheslidelibrary,SharePointprovidesthisinformationtoyou.However,startingfromPowerPoint meansthatyoumustentertheURLofanexistingSharePointlibraryinthePublishTotextbox.Ifyoudo notknowtheexactnameofthelibrary,youcanenterjusttherootURLtotheSharePointsiteandthen usetheBrowsebuttontodrilldownfurtherintothesitetolocatethefolder.However,thefoldermust alreadyexist.ThePublishSlidesdialogboxcannotcreateanewslidefolderforyouautomatically. WhenyouclickPublish,PowerPointtransferstheslidesfromyourlocalpresentationdecktothe specifiedSharePointlibrary.
■CautionYoumustfirstcreatethefolderintheSharePointlibrarywhereyouwanttopublishyourslides. EnteringaURLtoafolderthatdoesnotexistwillnotcreatethatfolder.
674
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
ViewingandPerformingActionsonYourSlides Onceyouhavepublishedtheslidesinthelibrary,theyappearinthelibrarylist,asshowninFigure1263.Likemostlists,youcancustomizethislistbyopeningtheviewdrop-downmenuandselectingthe ModifyThisViewoption.However,thedefaultviewprovidesseveralusefulpiecesofmetadataabout theslides.
Figure12-63.Viewyourpublishedslidelibrary. Thelistbeginswithasmallthumbnailimageoftheslide.Followingthiscolumn,youcanfindthe slidename,takenfromthetitleareaoftheslide.Immediatelyafterthiscolumn,youcanfindthename ofthepresentationthatcontainstheoriginalslidealongwithanumberthatuniquelyidentifiestheslide. Thenumberisnottheorderoftheslideinthepresentation.Ratheritistheorderoftheslide’screation. Alsoonthisdefaultview,youcanseewholastmodifiedtheslide,whenshemodifiedit,andthenameof thepersonwhohastheslidecheckedoutifapplicable.
675
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
■TipSlidelibrariesalsousecontenttypes.Therefore,youcancreateyourowncontenttypedefinitionforslide libraries.
Aswithpicturelibraries,acheckboxprecedeseachslide,allowingyoutoselectonwhichslidesyou wanttoperformspecificactions.WhenyouopentheActionsmenu,asshowninFigure12-64,youwill notfindasmanyoptionsasforthepicturelibrary.
Figure12-64.Viewavailableactionsforslidelibraries. Forexample,youcandeleteslidesfromyourlibrarybyselectingwhichslidesyouwanttoremove andthenselectingtheDeleteSlidesoptionfromtheActionsmenu.NoticethattheActionsmenudoes notprovideoptionstoeditslides,changetheirpermissions,orworkwiththeminanyotherway.Iwill comebacktothatinamoment. TheActionsmenudoescontainanoptiontochangetheviewtoaDatasheetViewtoallowyouto makemasschangesquicklytomultiplepropertiesinoneormoreofthepictureswithouthavingtoedit thepropertiesofeachimageindividually.ItalsoincludestheWindowsExplorerview.Thisviewallows youtomoveslideseasilybetweenfoldersinyourslidelibrary.However,ifyouattempttomovethemto adirectoryonyourlocaldiskdrive,SharePointwillcreateaseparatePowerPointpresentationfilefor eachslidecopied.
■TipTomoveanimagefromonelibraryfoldertoanother,clicktheimageintheWindowsExplorerviewand pressCtrl+C.ThennavigatetothedestinationfolderandpasteittherebypressingCtrl+V.Youcanalsousethe WindowsExplorerviewtodeletefoldersthatyounolongerwant.Somepeoplealsofinditeasiertomanagetheir folder/directorystructureusingtheWindowsExplorerview.
676
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
SoiftheActionsmenudoesnotprovideoptionstoworkwithindividualimagesinthelibrary,how canyouworkwiththeseimages?Simplypositionyourmouseoverthenameoftheimageyouwantto workwith.Anarrowforadrop-downmenuappearstotherightofthename.Clickthisarrowtodisplay theitemmenu,asshowninFigure12-65.
Figure12-65.Editanindividualslidefromthelibrary. Fromthismenu,youcanviewandedittheitem’sproperties,manageitspermissions,edititusing MicrosoftOfficePowerPoint(thisoptionrequiresyoutohavePowerPointinstalledonyourlocal machine),deletetheitem,downloadtheslide,andsendtheslidetoane-mailaddressorotherlocation. YoucanalsocheckouttheimagejustasyouwouldcheckoutaWorddocumentbeforeeditingit,sothat otherscannotedittheslidewhileyouhaveitcheckedout.Finally,thereisanoptionthatallowsyouto createanalerttoreceiveane-mailwhensomeonechangesordeletesthisslide. Asusefulasallthesefeaturesmaysound,therealpowerfeatureisstillinthelibrarymenubar.The CopySlidetoPresentationfeatureallowsyoutocopyslidesfromyourlibrarytoaneworexisting PowerPointpresentation.
CopyingSlidesfromYourSlideLibrarytoPowerPoint Presentations Asmentionedatthebeginningofthisdiscussiononslidelibraries,youmaywanttouseslidelibrariesto storecommonlyreusedslidessothatanyoneinyourorganizationcreatinganewPowerPoint presentationcanimporttheexistingslideratherthancreatetheslidefromscratch.Todothis,referback tothelibrarymenubarandtheoptionCopySlidetoPresentation,asshowninFigure12-66.
677
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Figure12-66.SelectaslidetocopytoaPowerPointslidepresentation. Beforeselectingthisoption,selecttheslidesyouwanttoinsertintotheneworexistingpresentation bycheckingtheboxtotheleftofeachdesiredslide.YoucouldalsofirstopenthePowerPoint presentationintowhichyouwanttoaddtheslide(s)fromthelibrary.WhenyouclickCopySlideto Presentation,SharePointopensthedialogboxshowninFigure12-67.Inthisdialogbox,youcanspecify whetheryouwanttoaddtheselectedslide(s)toanewpresentationoranopenpresentation.Ifyouwant tocopytheslidestoanexistingpresentation,thedrop-downboxdisplaysthenamesofallpresentations youcurrentlyhaveopen.Whiletypicallyyouwillonlyhaveonepresentationopen,theoneyouwantto addtheslideinto,youcouldhaveseveralpresentationsopenandthenaddtheslidestoeachofthe presentationsbyrepeatingtheprocessdescribedhere,selectingadifferentpresentationfromthedropdownlisteachtime.Thistechniqueisalwaysagoodwaytostartanewpresentationthatusesseveral existingslidesfromoneormoreotherpresentationsstoredintheslidelibrary.
Figure12-67.Definehowtocopyslides. Youcanalsodecidetokeepthesourcepresentationformat(hiddenbythedrop-downlistinFigure 12-67).Thisoptionretainstheformattingoftheslideasseenintheslidelibrary.However,becausethis formattingmaydifferfromtheformattingusedinthepresentation,youmaywanttodeselectthisoption sothatPowerPointreformatstheslideusingthecurrentmasterformatschemeusedbythepresentation intowhichyouarecopyingtheslide. ThelastoptioninthisdialogboxallowsPowerPointtoretainalinktotheslidelibrarysothatitcan notifyyouwhenchangesoccurtotheslideintheSharePointslidelibrary. WhenyouclickOK,SharePointcopiestheselectedslidesfromthelibrarytotheendofthe referencedpresentation.Atthispoint,youcanuseallthefeaturesofPowerPointtomanipulatetheslide furtherandtorepositionthecopiedslideswithinthepresentation.
678
CHAPTER12■ ADDITIONALSUPPORTINGLIBRARIES
Figure12-68showsasingleslidecopiedfromthesampleslidelibrarySQL_CASE_Statementstothe endofanexistingpresentation.Afteraddingslidestoapresentation,youcanclicktheslideanddragit toanewpositionwithinthepresentation.
Figure12-68.PowerPointappendsslidestotheendoftheshow.
Summary Inthischapter,youexaminedthreesupportingSharePointlibraries.Thefirstlibrary,theRecords Center,isthemostcomplexlibraryimplementationpresentedinthisbook,althoughitstartsfromthe basicdocumentlibrary.Itrequirescoordinationbetweenatleasttwodifferentsites,aworking documentsiteandanarchivalsite,withlibrariesineachusingcontenttypes,sitecolumns,and configurationsettingsmadethroughSharePoint’sCentralAdministrationsite.However,itprovides organizationswithapowerfultooltoarchivedocumentstoprotecttheirmostimportantinformation.
679
CHAPTER12■ADDITIONALSUPPORTINGLIBRARIES
Inlearninghowtobuildarecordsmanagementsystem,yousawhowtocreatereusablesite columns.YoualsocreatedaWord-basedsitecontenttypeandthenmadeitthedefaultcontenttypefor thelibrary.TocreatetheRecordsCentersite,youneededtodefineanExternalServiceConnection throughtheCentralAdministrationsite.Yousetupapolicyonwhattodowithrecordsafteradding themtotheRecordsCenter,andyoualsosawhowtocreatearecordroutingrule. Youthentookasecondlookatthepicturelibrary,whichyouemployedinearlierchaptersasthe sourceforimagesusedonwebpages.Thechapterdiveddeeperintoitsabilitytoserveasacentral warehouseforyourorganization’simages,whichyoucanshareandviewonlinethroughthebuilt-in FilmstripViewmodes.YoualsolookedattheuseoftheMicrosoftOfficePictureManagertoolandhow youcanuseittoaddandeditpicturesinthepicturelibrary.Finally,yousawhowtoexportpicturesto severalMicrosoftOfficeproducts,changingthepicturetypeaswellassomeofitsothercharacteristics. However,thepicturelibrarydoesnotsolveallofyourorganization’simageneeds,especiallyifyour organizationusesMicrosoftPowerPointtocreatebothinternalandexternalpresentations.Theslide libraryaddsfeaturestothebasicpicturelibraryspecificallytosupportPowerPointslides.Youcanuseit tostoreanddisplayslidepresentations.However,itsrealpowercomesintoplaywhenyouuseitto sharecommonslideswithotherpeoplewhocandownloadthemwhenbuildingtheirownPowerPoint presentations. Finally,thatwrapsupthisbookintroducingyoutohowyoucanbegintointegrateyouruseof MicrosoftOfficeproductswithSharePoint.Iknowthattherearemanyothertopicswecouldhave coveredthattimeandspacedidnotpermit.PerhapsovertimeIwillincludetheminmyblogat http://www.micmin.org/blog.aspx.IhopeyougainedanappreciationforhowtointegratetheMicrosoft OfficetoolsthatyoualreadyknowwithSharePoint.SharePointcollaborationwillchangethewayyou andtherestofyourorganizationwork.Theabilitytoshareandworkwithdocumentlibrariesandlists fromanylocationwhereyouhaveInternetaccessletsyouworkanywhere,anytime.Thisuniversal accesstoyourinformationgivesyourorganizationtheabilitytodecentralizethewayyourstaffworks, increasingtheirproductivitywhilemaintainingtheintegrityoftheinformationtheyuse.Intheoffice,at home,oronabusinesstrip,youarenolongerfarfromyourcorporatedatawhenyouintegrateyour dailyactivitiesthroughSharePoint.
680
Index ■A
editinglinkeddata,320–322
AbouttheWebPartarea,156,398
overview,319
Aboutthisblogwebpart,243
usingtomakemassupdates,322– 324
AbsenceTypecell,481 AbsenceTypecolumn,482
openinglistswithmultivaluedcolumns in,330–332
Absence_Typebutton,469
replacingexistingtable,303
AbsenceDescriptiontextbox,481–482
synchronizingdataintables,303–304
AbsenceTypecontrol,481
tables,movingtoSharePoint,343–345
AbsenceTypetextbox,481–482
transferissues,validationrules,313
AbsentFromfield,480
usingtomakemassupdates,322–324
AbsentTofield,480 Acceptbutton,231 Access.SeealsoAccessforms changingtableusedbyform,304 copyinglistdatato,304–306 dataformats,306 databases,movingtoSharePoint,345– 348 exportingdatafrom,toSharePoint,309 exportingSharePointliststo,302–319. Seealsotransferissues importingSharePointlistsdirectly from,317–319 linkinglistdatato,304 linkingSharePointliststo
Accessapplications,deployingto SharePoint movingAccessdatabasesto SharePoint,345–348 movingtablestoSharePoint,343–345 overview,342 Accessforms,creatingfromSharePointlist creatingcustomformsusingsubforms, 337–340 creatingsimpleforms,333–335 creatingsimplereports,340–341 creatingSplitForms,336–337 AccessOptionsdialogbox,352 AccountConfigurationWizard,SharePoint Workspace,564
681
■ INDEX
Accounttab,SharePointWorkspace Preferencesdialogbox,609–610
Addfromexistingsitecontenttypes option,234,628
Actiondialogbox,481
Addfromexistingsiteorlistcolumnslink, ListContentTypepage,630
Actionmenu,657 actionparameters,verifyingbefore publishingform,529
Addnewdocumentlink,153
Actiontyperule,481
Addnewitemlink,640
Actionsbutton,549,552
AddorRemoveCustomControlsdialog box,499–500
Actionsdrop-downmenu,425,656 Actionsgroup,Editribbon,73 actions,inworkflows,549,551 Actionsmenu,371,430,660,664–665,667, 676–677 Actionssection,36,47,439 ActiveDirectorygroups,30 activefilters,45 ActiveXcontrols,45 Addanetworkplaceoption,Network Tasksgroup,202
AddPicturedialogbox,161 AddRelationshipbutton,489 AddRulebutton,Homeribbon,441 AddRulecommand,443 AddRuleoption,ControlToolsProperties ribbon,460 AddTablebutton,488 link,401 Addtoallcontenttypesoption,630 AddtoCustomColorsbutton,477
AddaPermissionLeveloption,26,249
AddTrustedFileLocationoption,384
AddaWebPartoption,401,427
AdditionalColumnSettingssection,120
AddActionbutton,481
Addressfield,166,367,377,384
AddConnectionbutton,635
Addressespage,OrderShipping Informationform,500–501
AddFieldoption,439–440 AddFieldorGroupdialogbox,440 AddFilesdialog,605 Addfromexistingsitecolumnslink,629 Addfromexistingsitecolumnsoption, 120,217 Addfromexistingsitecontenttypeslink, 542,636
682
Addnewannouncementlist,105
AdministrationPurchaseOrdersview,225 AdvanceSettingssection,237 Advancedbutton,SubmitOptionsdialog, 516 AdvancedFormTemplatessection, Backstagearea,472,475 AdvancedPropertiesoption,213,221 AdvancedSettingoptions,36,90,95,219, 250,386,397,624
■ INDEX
AdvancedSettingspage,234,530,532,627
AllPicturesoption,664
Agendalisttype,98
AllPicturesview,662,664
Alertflag,95
AllSheetsoption,392
AlertMebutton,281
AllSiteContentpage,31,71,75,98,121, 417,424
AlertMedrop-downmenu Listribbon,125 Share&Trackribbon,193 AlertMeoption,121–122
AllSiteContentview,670 AllTypessection,navigationpanel,644 AllowExternalDatasetting,384 Allow'Fill-in'choicessetting,120
alerts configuring,283–284 overview,192–194 ofSharePointchanges
Allowindividualitemcheckboxesoption, 105,169,193 AllowInlineEditingcheckbox,view properties,137
configuringalerts,281–283
Allowmultiplevaluescheckbox,326
correcting/modifyingalerts,284– 285
Allowoverwriteiffileexistsoption,Data ConnectionWizard,514
turningon,281 usingforchangenotifications,121–125, 285
Allowuserstosubmitthisformcheckbox, SubmitOptionsdialog,512 AllowedContentTypesoption,233
Alertstab,SharePointWorkspace Preferencesdialogbox,612–613
Alwaysattempttousethisfiletorefresh dataoption,409
AllCategoriesgroup,632
Amountfield,472
AllChangesoption,ChangeTypesection, 124
Announcementsform,441,445
AllDocumentspage,33 AllDocumentsview,39 AllEventsview,Calendarlist,93 AllGroupsoption SelectSiteColumnsfromdrop-down menu,217 ShowGroupdrop-down,119 AllItemsview,105
Announcementslist,71–74,106–107,298, 439 AnnualReviewDocumentsdocumentset, 237 Appearancegroup,160,401 Appearancesection,168,401 ApplicationManagementoption,43,122, 191,384 Applybutton,Parameterspanel,395
683
■ INDEX
ApprovalStatuscolumn,63,188 ApprovalStatusvalue,186 Approvepermissionlevel,22 Approvedstatus,38,66,189,558
BackgroundtoinstallSharePointlink,294
Approve/Rejectoption,63,188
BackStagearea,449–450,465–466,472, 475,497,673
archivingdocuments,records managementsystem,642–644
BackstageInfopage,InfoPathforms,511
AssetLibrarytype,18 AssetsWebDatabasetemplate,16 AssignaTo-doItemoption,552 AssignedTofield,95 atomicity,325 AttachFileoption,73 Attachmentscolumn,135 au_idfield,491,493 Audiencetargetingcolumntype,110
BasicSearchCentertemplate,12 BCS(BusinessConnectivityServices),18, 81 BDC(BusinessDataCatalog),81 Bidsdocumentlibrary,636 Blank&Customcategory,108,121 Blanklisttype,70 blanksites,8 Blanktemplate
AuthenticationProvidersoption,20
creatingformfrominInfoPath,449, 471
AuthorIDfield,495–496
PopularFormTemplates,466
AuthorRoyaltyview,403,408
blankworkspaces,10
Authorsproperty,37
Blogpostoption,244
Authorstable,403–404,486,488,490,493
BlogPostribbon,244,246
autoincrementfields,issueswith,311–312
Blogsection,BlogPostribbon,244
AutocompleteMenu,177
blogsites,usingWordtocontributeto
AutogenerateWebPartTitleoption,401
commentingonblogentries,247–248
automatedworkflows,545
creatingblogsites,241–243
AvailableSiteColumnslist,217
creatingnewblogpostings,244–247
Availablesitecolumnssection,120
definingcategoriesforblogs,243
AvailableSiteContentTypeslistbox,234
overview,240
AvailableTemplatessection,244
684
■B
Backgroundsection,ViewProperties dialogbox,479
■ INDEX
settingitemlevelblogpermissions, 250–251 settinglistlevelblogpermissions,248– 249 BlogToolssection,250 BlogURLtextbox,NewBlogAccount dialogbox,246
■C
CalculateWorkbooksetting,396 Calculatedcolumntype,110 calendarlist,92–94 Calendarribbon,97,265 Calendartool,GrooveWorkspace,584–585
bloggers,8
CalendarView,132
BlogPostribbon,244
calendars
blogs,8–9 Blogslist,298 Bodycolumn,73–74,126 BordersandShadingdialogbox,661 BordersandShadingmenuoption,477 BordersandShadingoption,455–456,661 Borderstab,456,661 Browsebutton,40 Browsedialogbox,672
copyingandmovingitemsbetween, 271–272 creatingnewinOutlook,267 deletingitemsfrom,272–273 makingchangestoitems,270–271 overlaying,268–270 restoringdeleteditems,272–273 synchronizingbetweenSharePointand Outlook
Browseforalocationbutton,210
addingSharePointcalendarsto Outlook,264–268
Browseforfilesinsteadoption,41,651
copyingandmovingitems,271–272
BrowseforMorebutton,406
deletingitems,272–273
Browsemode,34,74
makingchangestoitems,270–271
Browseoption,7
overlayingcalendars,268–270
Browsetab,34,153
overview,263
BrowseUserInformationpermission,21 BusinessConnectivityServices(BCS),18, 81 BusinessDataCatalog(BDC),81 BusinessIntelligenceCentertemplate,11 BusinessPhone/Extensionpage,78
updatingconflicts,271 Calendarslist,298 Cancelbutton,655 CancelUploadoption,652 CascadeDeleterelationship,148 Categoriesarea,156,398 categories,definingforblogs,243
685
■ INDEX
Categoriesoption,QuickLaunchmenu, 243 CentralAdministrationsite,232,384,465, 632,634 ChangeColumnpage,78–79 ChangeControlmenuoption,481 ChangeIconoption,429 Changenewbuttonorderanddefault contenttypelink,628 Changenewbuttonorderoption,235 ChangeSettingslink,466 ChangeSyncSettingsoption,SharePoint Workspace,602 ChangeTypesection,124 ChangeUploadSettingslink,655 changingdefaulttemplate,36 ChannelInformationsection,126 CharitableContributionstemplate,16 Chattool,GrooveWorkspace,585–586 CheckIncommand,44 CheckIndialogbox,56–57 CheckOutandCheckIn checkingdocumentsbackinto libraries,55–57 editingpageswith,182–185 howtoCheckOutdocuments,52–55 overriding,57–58 CheckOutbutton,183 CheckOutDocumentoption,50 CheckOutoption,52,182–183 checkbox(Yes/No)questiontype,87 CheckedOutTocolumn,39,53
686
checked-outdocument,overriding,57 Checkmarks,429 Check-Outfeature,209,322 Chesstool,GrooveWorkspace,589–590 Choicecolumntype,110,119,325,329– 331 Choicequestiontype,85 Chooseanothernetworklocationoption, 202 Choosecommandsfromcolumn,215 Choosecommandsfromlist,213 ChooseFiledialogbox,649 ChooseFiletoUploaddialogbox,649 ChooseFolderbutton,649 ChromeType,160,162,171 ClearAllbutton,PublishSlidesdialogbox, 672 ClearFilteroption,45 Clickheretoopenthetoolpanelink,399 Clicktoaddheadingrow,467 Clicktoaddtitlelink,452 Clicktoaddtitlerow,467 Clipboardgroup,73 ClipboardViewer,editinglinkeddata,321 Closebutton,PublishingWizard,530 Closeoption,webpart,401 ClosedWebPartslink,401 CodeDocumentColumnsoption,217 collaborationlists,90–92 CollaborationSiteforHRtaskslist,275– 276
■ INDEX
collaborationsites addingwebpagesto addingcontenttoWebPartzones, 156–160 addinghyperlinkstocontent,166– 169 addingimagestoImagelibraries, 160–163 copyingtextfromWorddocuments, 164 overview,151–155 usingWordtoaddtablestocontent, 165–166 addingwikipagesto,170–178
contenttypesand,255–256,544 displayingformfieldsas,526 displayingformfieldstoappearas,527 filteringmultivalued,329 lookuptype,325,331 multivalued creatinginSharePoint,325–330 openinglistswith,330–332 reasonsnottouse,332–333 SharePoint,adding,257–258 Columnsgroup,39 Columnssection
CollaborationTrainingSurveysite,86
Customizepage,137
collaborationwithSharePointWorkspace. SeeWorkspace
Libraryribbon,534
Colleaguespage,198
SiteSettings,217
ListSettingspage,78,120
Colorbaroption,PageLayoutTemplates dialogbox,451
Columnstoaddlistbox,217
Colorgroup,TableToolsLayoutribbon, 467
Commentslink,247–248
commentingonblogentries,247–248
ColorPickerdialogbox,477
Commentssection,418
ColumnNameproperty,108
Commitgroup,Editribbon,74,102
columnproperties,98
Communicationsarea,78,125
columntypes,modifying,113–121
Companycolumncheckbox,81
columnvalidation,missingotherentry, 140
Comparebutton,230
columns
CompleteTaskbutton,Workflowtask,558
adding,tosynchronizewithOutlook, 257 addingtoviews,38–39 choicetype,325,329–331
Comparefeature,MicrosoftWord,51 Computeroption,Startmenu,203 concat()function,514 concurrencyproblems,52 Conditiondialogbox,468
687
■ INDEX
conditionstatements,549 conditions restructuring,558 inworkflows,549 ConfigureConnectiontab,180 Configuresendtoconnectionsoption,634
connectingSharePointtoOutlook, 253–256 deletingcontacts,260–261 managingupdateconflicts,258–259
ConfigureSendToConnectionspage,635
movingcontactsbetweenlists,262– 263
ConfigureSettingsdialogbox,SharePoint Workspace,600
recoveringdeletedcontacts,261– 262
conflictproblems,withlinkeddata,321– 322 Connecttoaspecifictablecheckbox,486 ConnecttoNewDataSource.odcoption, 406 ConnecttoOutlookoption,Library ribbon,356 Connectusingadifferentusernamelink, 203 ConnectionPropertiesdialogbox,358 ConnectionSettingsdefinition,635 Connectionsbutton,Dataribbon,404 Connectionsgroup,Dataribbon,362,404 Connectionsoption,179 contacts deleting,260–261 movingbetweenlists,262–263 recoveringdeleted,261–262
ContactsWebDatabasetemplate,16 Containersgroup,Homeribbon,457 Content&Datalists addingitemstonew,74–75 announcements,71–74 Contacts,75–81 External,81 importingspreadsheet,82 links,82 overview,70 status,83 Survey,83–88 ContentApprovalsetting,186 Contentcategory,241 contentcreators,4 ContentEditorWebpart,158–160,162– 164,166
Contactsicon,75
Contentlisttype,70
Contactslist
contentpages
overview,75–81 synchronizingbetweenSharePointand Outlook
688
addingSharePointcolumnsthatwill synchronizewithOutlook,257–258
addingwebpagestocollaborationsites addingcontenttoWebPartzones, 156–160
■ INDEX
addinghyperlinkstocontent,166– 169
librarieswithmultiplecontent types,544
addingimagestoImagelibraries, 160–163
publishingformsto,536–542
copyingtextfromWorddocuments, 164 overview,151–155 usingWordtoaddtablestocontent, 165–166 addingwikipagestocollaboration sites,170–178 creatingmaster-detailrelationships betweenlists,178–181 displayingdata,151 editingpageswithCheckOutand CheckIn,182–185 publishingpagestosites,186–189 recoveringaccidentaldeletionswith recyclebin,190–191 shareandtrackfeatures alerts,192–194 E-mailaLinkoption,192 NoteBoard,196–197 overview,191 RSSfeeds,195 tags,197 trackingpageversions,185–186
forRFBdocuments,forrecords managementsystem,620–625 sitecollection,installingandusing,543 supportformultiple,531 ContentTypesoption,531 ContentTypessection,234–235,543,626– 627,636 content,usingOutlooktoworkoffline with,278–281 Contributepermissionlevel,21–22 controldialogbox,458 Controldrop-downmenu,Homeribbon, 469 ControlToolsPropertiesribbon,460,468 controls,ActiveX,45 Controlsdialogbox,458 Controlsgroup,Homeribbon,457,467– 468,499,501 Controlslistbox,Homeribbon,501 Controlspanel,Homeribbon,467–468, 481,499–500 Controlstaskgroup,inInfoPath,457–464 ConvertExistingFormoption,Backstage area,472,475
ContentTypecolumn,637
ConvertExistingFormtemplate,471
contenttypes
copydataoption,305
andInfoPathforms
CopySlidetoPresentationoption,677–678
addingtolibrary,542–543
CreateaPostoption,242
changingdefault,543–544
CreateAlertspermission,21 Createbutton,28
689
■ INDEX
CreateColumnoption,Listribbon,109 Createdialogbox,32,76–77,121,152 CreateGroupoption,25,28 Createlink,SiteContentTypeGallery,622 CreateListoption,Excel2003,373 Createoption,25,31 Createpage,15,32,417,632,669 Createpermission,107 CreateTablecommand,366
Customizetheribbonoption,213
■D
DashboardLayoutsection,426 Dashboardpage,424 dashboards,andExcelServices addingKPIsto,427
CreateViewcommand,225
buildingfromdashboardtemplate, 424–426
CreateViewoption,131
organizingwebpartsin,426–427
CreateViewpage,225
data
CreatedBycolumn,46
displaying,151
Currencycolumntype,110,115
linked,editing,320–322
CurrentEventsview,Calendarlist,93
lists,editing,100–104
CustomCommandstab,153
synchronizing,inAccesstables,303– 304
CustomControlslistpage,499 customforms,creatingusingsubforms, 337–340 customlists,building,107–113 Customsection,Controlspanel,500 CustomSendToDestinationsetting,531 customtabledialogbox,454 Customtableoption,Insertribbon,480 CustomTaskWizard,553 CustomViewsgroup,Listribbon,91,131 Customer_Namecolumn,143 Customizepage,137 CustomizeRibbonoption,213
690
CustomizetheRibbondrop-downmenu, 214
DataConnectionFiletemplate,470 DataConnectionLibrarytype,18 DataConnectionWizard,406–409,483, 486,488,492,495,513 dataconnections,creatingforInfoPath, 482–492 DataConnectionsdialogbox,405 Datadrop-downmenu,Excel2003,373 Datalisttype,70 Datapage DatePickerPropertiesdialogbox,468 OptionButtonPropertiesdialogbox, 469–470
■ INDEX
Propertiesdialogbox,459
Datequestiontype,87
TextBoxPropertiesdialogbox,459, 467–468
DateSequenceValidationrule,468
Dataribbon,362,404,409,480 DataServicesDeptTaskstaskslist,274 DataSourcepanel,464,481 DataSourceslist,487 DataSourcestaskgroup,inInfoPath,464– 465 Datatab PivotTableOptionsdialogbox,412 Propertiesdialogbox,460 DataTypeproperty,459 datavalidation,ofInfoPathforms,523 Databasetemplate,470,483 databases Access,movingtoSharePoint,345–348 naming,302 Datasheetmode,104,251 DatasheetTaskPane,103 DatasheetView displayingdocumentsin,45–46 editingdocumentfrom,49–50 DatasheetViewoption,676
decisionworkspaces,10 Decisionslisttype,98 declarativefunctionality,524 defaultpage,4 defaulttemplates,changing,36 Defaultvalueoption,87 defaultzone,20 default.aspxpage,155 DefineE-mailMessagedialog,551 DefineNamebutton,389 DefinedNamesgroup,389 Definitiontab,359 Deleteaction,664 DeleteSelectedAlertsoption,124 DeleteSlidesoption,Actionsmenu,676 deletingalerts,285–286 deletions,recoveringwithRecycleBin,67, 190–191 Departmentcolumn,136,223,225 Descriptionfield,Createdialogbox,76 Descriptionproperty,418–419
Dateandtimecolumntype,110
DesignaFormTemplateoption,Getting Startedmenu,483
DateandTimeFormatoption,87
DesignCheckerbutton,446,465
DateCreatedcolumn,223,225,360
DesignCheckerpanel,446,465,523
Datedatatype,440
DesignCheckertaskgroup,inInfoPath, 465–466
DatePickercontrol,468 DatePickerPropertiesdialogbox,468
Designcommand,openingformdefinition file,510
DatePickerPropertiesmenuoption,468
691
■ INDEX
Designpermissionlevel,22
DocumentCentertemplate,11
Designribbon,164
DocumentContentType,623,627–629, 631
Designtab,ExcelRibbon,366 DesignthisFormbutton,449,472,475, 483,497 DesignviewforInfoPathFilleronlyoption, 479
documentlibraries,18–19,626 addingExcelworkbookto,385–386
Designertool,592,596–597
alertsforchangesin,281,283,285–286
Detailband,336
changingdefaultcontenttype,543
Detailslink,417
checkingoutdocuments,using Outlook,278–279
Detailsoption,662 DetailsView,662–663 Disablebutton,MicrosoftExcelSecurity Noticedialogbox,357
metadatafor,InfoPathforms,526–529 publishingcontenttypeto,539 publishingformsto,521,524,527–528
DiscardChangesandRefreshbutton,379
updating,525
DiscardCheckOutoption,54
usingwithMicrosoftOffice.See MicrosoftOffice
Discussionboardslist,90–92,298 discussiongroups,inSharePoint Workspace,606–607
DocumentLibrariessection,31,669 DocumentLibraryicon,33,152
Discussiontool,GrooveWorkspace,581– 583
DocumentLibrarySettingspage,234–235, 361
Discussionsoption,425
DocumentManagementgroup,215,224, 361
Displayalertsfordrop-downlist,124 DisplayasaWebpageoption,531 Displaychoicesusingsetting,120 DisplayNamefield,440 DisplayNameproperty,441 Displaytab,481 DisplaythislistontheQuickLaunch? option,418 DoNotShowSubtotalsoption,413 .docfilter,44
692
DocumentInformationPanel,216,222– 226,470
Documentoption,49 DocumentPanelcommand,215,224 DocumentPropertiesdialogbox,213 DocumentPropertiesdrop-downmenu, 213 DocumentPropertiesoption,221 DocumentPropertiespanel,216,218,220– 221 DocumentProperties_Serverpanel,221 DocumentSetcontenttype,232
■ INDEX
DocumentSetContentTypesoption,232
overridingchecked-out,57
DocumentSetoption,232
searchingfor,237–240
DocumentSetSettingsoption,233
SharePoint,opening,201–208
documentsets,creatingandusing,232– 237
storedinlibraries,editing
DocumentTemplatesection,36,626 DocumentVersionHistorygroup,184 documentworkspaces,8 documents addingmetadatato,fromSharePoint, 219–222 addingtonewlibraries,35–68 CheckOutandCheckIn,52–58 concurrencyproblems,52 promotingpriorversionstocurrent versions,60–61 publishingdocumentstoDocument libraries,61–64 recoveringaccidentaldeletionswith recyclebin,67 requiringdocumentsapprovalto hidedrafts,65–67 trackingdocumentsversion,58–59
fromDatasheetView,49–50 simplelockingof,50–51 Word,fromStandardView,48–49 switchingtoeditmode,48 templates,34–35 uploadingtolibraries displayinginDatasheetView,45–46 displayinginWindowsExplorer,47– 48 overview,40–44 Word addingmetadatato,213–219 copyingtextfrom,164 workingwithoffline,usingOutlook, 278,280 Documentsoption,425 Documentsribbon,34–35,44,153,183, 196,236,386,424,543
dragginganddropping,47
Documentstab,183
editingandsavingtolibraries
Documentstool,GrooveWorkspace,580
overview,208–209
domainsecurity,507
savingdocumenttoexisting libraries,211–212
DonationReceiptform,474,476
savingnewdocuments,210 filteringshared,44 managingmultipleeditorsto,226–232 moving,48
DonationReceipttemplate,474 Downloadaction,664 Downloadbutton,659 Downloadoption,Actionmenu,657–658
693
■ INDEX
downloadingimagesfrompicturelibrary, 657–659 DraftItemSecurityoption,55,57,61,65, 184,186 Draftstatus,38,66 draftversions,oftasks,278 Draftsfolder,workingwithdocumentsin, 280 drafts,requiringdocumentsapprovalto hide,65–67 DragFilesandFoldersHeresection,41 duallistboxes,326–327 duplicatelists,315
EditPropertiesoption,535 Editribbon,73–74,102,155,161,164,170, 532 Edittab,170 Edituserpermissionsoption,25 EditViewpage,131,135 EditWebPartoption,159–160,399,427– 428 EditingToolsribbongroup,164,166,174 EditingToolssection,398 EditingToolstabgroup,157 editors,managingtodocuments,226–232 ElseIfBranchhyperlink,Insertgroup,555
■E
Edit&CheckOutgroup,170
enabling,297
Editbutton,179,427
sendingfromtasks,278
EditDocumentbutton,48
sendingtolists,296–299
Editdrop-downmenu,160,399
E-mailaLinkoption,192
editform,UpcomingEventslist,101
E-MailNotificationoption,95
Editicon,7
E-mailtemplate,470
EditinBrowseroption,535
Employee_IDfield,467,480
EditinMicrosoftOfficeWordoption,49
Employee_Namefield,467,480
EditIndicatoroption,420
EmptyRecycleBinoption,191
EditItemicon,Viewribbon,72
EnableAuditingoption,639
EditItemoption,243,666
Enablebrowser-compatiblefeaturesonly checkbox,450
Editmode,49–51,103,105,155,171,173, 427,430 Editoption,170 EditPageoption,102,113,427 EditPolicyscreen,637 EditPropertiesbutton,220
694
e-mail
Enablebutton,MicrosoftExcelSecurity Noticedialogbox,357 EnableExpirationcheckbox,638 Enforceuniquevaluesoption,87,120 EnterDesignerbutton,GrooveWorkspace, 591
■ INDEX
Enterpriseedition,SharePoint2010,521
overview,355–356
EnterpriseSearchCentertemplate,12
usinghyperlinksinlist,360–362
EnterpriseSiteTypes BasicSearchCenter,12 BusinessIntelligenceCenter,11 DocumentCenter,11 EnterpriseSearchCenter,12 FASTSearchCenter,12 MySiteHost,12 overview,10 RecordsCenter,11 enterprisetemplates,10–11
publishingformtoExcelServices addingworkbooktodocument library,385–386 definingparametersforform,388– 390 publishingworkbook,390–396 viewinguploadedExceldocuments, 396–397 viewingworksheetinSharePoint, 387 synchronizationofSharePointlistsin
EnterpriseWikitemplate,13
linkinglistinExceltoSharePoint, 376–381
EntireWorkbookoption,392
overview,375
entries,blog,247–248 Errordialogbox,148,652 Excel creatingstatuslistfromworkbook,423 exportingdatafromintoSharePoint lists definingtablewithinExcel,365–366
version2003andSharePointlists exportingExcelworksheetsto SharePoint,373–375 exportingSharePoint2007listto, 371–372 ExcelRibbon,366 ExcelServices
exportingExceltable,366–368
configuring,384
overview,363–364
anddashboards
viewingexporteddatain SharePoint,369–371 exportingSharePointliststo
addingKPIsto,427 buildingfromdashboardtemplate, 424–426 organizingwebpartsin,426–427
currentviewaffectsdataexportedto list,360
overview,383
displayingimportedlist,358–359
publishingExcelformto
externaltabletoolsinExcel,362–363 IQYfiletype,357–363
addingworkbooktodocument library,385–386
695
■ INDEX
definingparametersforform,388– 390 publishingworkbook,390–396 viewinguploadedExceldocuments, 396–397 viewingworksheetinSharePoint, 387 andstatusindicators
Expiresdatefield,73 Expiresfield,135,441 Expiresrow,440–441 Explanationbox,635 ExplorerViewoption,665–666 Exportbutton,362,366
creatingstatuslist,417–423
ExportConnectionFilebutton,359
statustypesdefined,416
exportsteps
usingExcelwebpart,397–401
Outlooktasksfor,315–316
viewingdatafromexternalsources usingdataconnection
saved,reusing,316–317
creatingconnection,404–409 formattingpivottabletolooklike worksheet,412–413 importingSharePointlistto workbook,409–412
saving,309–311 ExportTabledialogbox,369 ExportTabletoSharePointListdialogbox, 368 ExporttoExcelbutton,Libraryribbon,356
overview,403
ExporttoExceloption,356,359
publishingformattedworkbook, 413–415
ExporttoSpreadsheetoption,Actions menu,371
ExcelServicesoption,Applicationspage, 384 ExcelServicesOptiondialogbox,391–392 ExcelServicesTrustedFileLocationpage, 384 Excelspreadsheet,exportingmetadatato, 540 Excelwebpart,using,397–401 ExchangeServer,copyingcontact information,263
exporting metadatafromdocumentlibraries,526 SharePointliststoAccess,302–319.See alsotransferissues Extended_Pricecolumn,146 ExtensibleMarkupLanguage(XML),433 ExtensibleStylesheetLanguage(XSL),433 ExternalDatacolumntype,110 ExternalDataRibbon,Access,306–307
ExistingConnectionsdialogbox,406,409
Externallist,81
ExistingListoption,166
ExternalServiceConnection,forrecords managementsystem,634–636
Expirescolumn,72,135
696
Expiresdatecolumn,442
■ INDEX
externalsourcedata,viewinginExcel usingdataconnection
fields,multivalve
creatingconnection,404–409
creatingmultivaluedcolumnsin SharePoint,325–330
formattingpivottabletolooklike worksheet,412–413
openinglistswithmultivaluedcolumns inAccess,330–332
importingSharePointlisttoworkbook, 409–412
overview,324
overview,403 publishingformattedworkbook,413– 415 ExternalTableDatagroup,358,362,370 ExternalTableDatasection ExcelRibbon,366 TableToolsDesignRibbon,379
reasonsnottousemultivalued columns,332–333 Fieldspanel,439–441,493 Filebutton,212,472,475 FileDownloaddialogbox,356–357 Filedrop-downmenu,206 FileinUsedialogbox,53,209 FileinUsenotificationdialogbox,361 FileinUsewarning,50,55
■F
FASTSearchCentertemplate,12 FavoritesCenteroption,130 FeedandWebSlicesettingsdialogbox, 289–290
Filemenu,210,228–231,244,450,465 FileNamebox,393 filename,buildingdynamically,514 Filenamefield,207,212 FileNowAvailablemessage,51
feeds creating,125–130
Fileoftypefield,208
SharePointRSS,usingRSSReaderto subscribeto
Filetab,206,210–211,230,413,449
addingRSSfeedstoInternet Explorer7.0,286–291 addingRSSfeedstoOutlook,291– 293 deletingitemsfromRSSfeeds,293– 294 overview,286 viewingotherlistitemsnotinRSS feeds,295 Feedstab,130
Filesmenu,390 Filestool,inGroove,580 Filmstripoption,662,664 FilmstripViewoption,653–654,665 FilterByoption,15 filtering lists,135–137 multivaluedfields,332 shareddocuments,44
697
■ INDEX
creatingSplitForms,336–337
Filterssection,72 FindaFormbutton,504
DesignView,336–337
FixedValuebasedStatusIndicatoroption, 418
InfoPath buildingcustomworkflowsfor,558
Flaticons,429
publishingtonetworkfileshare,503
Foldersgroup,136,258
publishingtoSharePointlibrary,503
formdata,forInfoPathforms savingdatafrom,534–535 savingtoSharePoint,510–520
usingpublished,532 InfoPoint,publishingtoSharePoint server,526
FormDatagroup,480
naming,335
formfields
saving,335
addingascolumnstodocument library,527 displayingascolumns,526 Formgroup,Homeribbon,444,482 FormHeaderband,336 Formlibraries,299,525,539 FormLibrarytype,19 formtemplates addingmultiple,tosinglelibrary,524 administratorapprovalfor,524
securitylevelsforInfoPath,507 SplitForm,336–337 subforms,338–340 validating,beforepublishing,523 Formsfolder,35–36 FormsServices,savingdata,534 Formulasribbon,389 From_Datefield,468 FrontPage,544 FullControlpermissionlevel,22,25
forInfoPath,470–471 FormWizard,333–334
Galleriescolumn,SiteSettingspage,618
FormatTextribbon,7,74,157–158,174
Galleriesoptiongroup,119,232
forms
Galleriessection,SiteSettingspage,621
Access,creatingfromSharePointlist creatingcustomformsusing subforms,337–340
698
■G
FormatTextgroup,Homeribbon,467,469
Ganttcharts,96–97 GanttView,132
creatingsimpleforms,333–335
GeneralApplicationSettingsmenuoption, 634
creatingsimplereports,340–341
GeneralApplicationSettingspage,634
■ INDEX
Generalgroup,SharePointWorkspace Optionsdialogbox,608 GeneralSettingscolumn,36 GeneralSettingscommand,Web Applicationsribbon,122 GeneralSettingsdialog,67 GeneralSettingsgroup,65,139,183 GeneralSettingsmenu,67 GeneralSettingsoption,67,191 GeneralSettingssection,60,78 Generaltab,ViewPropertiesdialogbox, 479
Picturestool,587 sizeof,599 Sketchpadtool,588 Groupbutton,443 GroupByoption,137 GroupBysection,136 groupworksites,9 groups Members,21 Owners,22–30 Visitors,21
GetExternalDatagroup,Dataribbon,409
ActiveDirectory,30
GetFilteredValuesFromOption,179
overview,20
GettingStartedmenu,483
Guestrole,SharePointWorkspace,571
GlobalLinksBar,242 Goalcolumn,418
■H
GrandTotalssection,PivotTableTools Designribbon,413
Header,Bodytemplate,153–154
GrantPermissionsection,22
HelpDeskCallstaskslist,275
Grantsection,25,28
Hidethiscontrolcheckbox,481
GrooveWorkspace accountcreation,566
Homeribbon,214–215,441,444,457,467– 469,482,499
Calendartool,584–585
Hours_Requestedcontrol,461
Chattool,585–586
Hours_Requestedfield,461,468
Chesstool,589–590
HoursRequestedfield,480
Discussiontool,581–583
HR(HumanResources),97
Documentstool,580
HumanResources(HR),97
Liststool,590–598
hyperlinkcolumntype,81,110
Notepadtool,586
hyperlinks
overview,578–579
HeaderRowcheckbox,164
addingtocontent,166–169 usinginSharePointlist,360–362
699
■ INDEX
■I
IDfield,311–312
DataSourcestaskgroup,464–465
Identitiestab,SharePointWorkspace Preferencesdialogbox,608–609
DesignCheckertaskgroup,465–466
IFexpression,442–443 imagedialogbox,166 Imagelibraries,addingimagesto,160–163 ImageViewerwebpart,160,162–163 images,addingtoImagelibraries,160–163 implicitlocks,52 ImportDatadialogbox,358,409 ImportOptionsdialogbox,472
RequestforAbsenceform,466–470 DataSourcestaskgroup,464–465 DesignCheckertaskgroup,465–466 formtemplates,470–471 interfaceof,435–436 migratingexistingdocumentsinto Excelworkbooks,474–477 Wordforms,471–473
ImportSpreadsheetlist,100,121
modifyingformusedwithSharePoint list,437–449
ImportWizard,472,475
overview,433–434
importingspreadsheet,82
templateparts,reusingformsections with,497–502
Indexedcolumnshyperlink,Customize page,137
viewsin
Indicatorcolumn,418
generatingsecondview,480–482
IndicatorGoalvalue,423
overview,478–479
IndicatorValuesection,421
properties,478–480
IndicatorValue,423
whyuse,434–435
IndicatorWarningvalue,423
InfoPathFiller,435
Infooption,Filemenu,228,230
InfoPathformsinSharePointlibraries
Infopage,229–230,445,447
buildingcustomworkflowsfor,558
Infosection,Filemenu,229
customworkflowsfor
InfoPath.SeealsoInfoPathforms connectingformstodata,492–496 Controlstaskgroup,457–464 creatingdataconnectionsfor,482–492 creatingformfromblanktemplate, 449–471
700
Controlstaskgroup,457–464
configuringe-mailmessage,550– 552 detailsfor,549–550 multipleactions,552–554 overview,545 restructuringconditions,558–559
■ INDEX
runningworkflow,556–558 settingsfor,559–561 simpleapprovalworkflow,546–549 forcustomerswithoutInfoPath librarysettings,530–531 metadatafordocumentlibrary,526– 529 publishingtoSharePointserver, 521–526 savingdatafromform,534–535 submitoptionsforform,533 usingpublishedform,532–533 publishingformtocontenttype,536– 542 publishingtonetworkfileshare,503– 520 publishingtoSharePointlibrary,503 securitylevelsfor,507 sitecollectioncontenttypes addingtolibrary,542–543 changingdefault,543–544 librarieswithmultiplecontent types,544 usingpublished,532 validatingbeforepublishing,523
informationpage,SharePointDesigner site,547 InheritPermissionsoption,Permission Toolsribbon,249 Inheritancegroup,PermissionTools ribbon,25,248–249 Inheritancesection,25 inlineediting,137 Inputgroup,Homeribbon,457 InsertAbovebutton,440 InsertCategoryoption,BlogPostribbon, 244 InsertFieldbutton,443 InsertFormuladialogbox,443,514 InsertHyperlinktool,166 Insertribbon,74,157,164,166,376,398, 453,467,469,480 InsertTabledialogbox,455 InternetExplorer7.0,addingRSSfeedsto, 286–291 InternetExplorerSecurityoptions,54 Internetornetworkaddressfield,202 InvitationAcceptanceConfirmation message,571 Invitemyothercomputersoption,576
InfoPathFormsServices,503
Invitesomeoneoption,SharedFolder workspace,570
InfoPathimporterforExceldocuments option,475
InvitetoWorkspaceoption,Groove Workspace,579
InfoPathimporterforWorddocuments option,472
IQYfiletype,357–363
Informationmanagementpolicysettings link,637
IsAfteroption,442 issuetrackinglist,97–98,274 IssuesWebDatabasetemplate,16
701
■ INDEX
itemlevelblogpermissions,setting,250– 251 ItemLimitsetting,136 items addingtonewlist,74–75 calendar,makingchangesto,270–271 copyingandmovingbetween calendars,271–272 deletingfromcalendars,272–273 deletingfromRSSfeeds,293–294 validation,138 ItemsintheWorkbookoption,392 Itemsribbon,74,105
■K
KPIs.Seestatusindicators
libraries addingdocuments CheckOutandCheckIn,52–58 concurrencyproblems,52 editingdocumentsstoredin libraries,48–51 overview,35–39 promotingpriorversionstocurrent versions,60–61 publishingdocumentstoDocument libraries,61–64 recoveringaccidentaldeletionswith recyclebin,67 requiringdocumentsapprovalto hidedrafts,65–67 trackingdocumentsversion,58–59 uploadingdocuments,40–48 attachingworkflows,545
■L
LanguagesandTranslatorslist,19,100 LastNamecolumn,81
document,adding,30–34
LaunchBlogProgramtoPostoption,243
editingandsavingdocumentsto,208– 212
Launchpad,SharePointWorkspace,599
filteringshareddocumentsin,44
LayoutandFormattab,PivotTable Optionsdialogbox,412
form,525
Layoutgroup,174,412,FormatText ribbon
multiple,31
Layoutribbon,440,450,457
Image,addingimagesto,160–163 sendingmessagesto,296–299
Layoutsettingssection,160,479
Librariescategory,161
LayoutTableoption,455
Librariesgroup,645,669
Libraryfilter,424
Libraryoption,152,644
702
changingdefaultcontenttype,543
■ INDEX
Libraryribbon,34,36,39,45,53,153,183, 225,355,626 LibrarySettings,397,636
overview,319 usingAccesstomakemassupdates, 322–324
InfoPathforms,530–531
Linksgroup,166
Libraryribbon,183
Linkslist,82–83,169,241
LibrarySettingsbutton,153
links,sendingviaSendTo,299–300
LibrarySettingscommand,219
Linkswebpart,243
LibrarySettingsoption,39,60,65,626
ListContentTypepage,630
LibraryToolsDocumentsribbon,530,532
listdata
LibraryToolsheading,153
copyingtoAccess,304–306
LibraryToolstab,34
linkingtoAccesstable,304
librarytypes AssetLibrary,18 DataConnectionLibrary,18 DocumentLibrary,18–19 FormLibrary,19 PictureLibrary,19 RecordLibrary,19 ReportLibrary,19 SlideLibrary,19 TranslationManagementLibrary,19 types,17–20 WikiPageLibrary,20 Likertscale,84 LimitedAccesspermissionlevel,25 Linkoption,Linksgroup,166 LinktodataontheSharePointsiteoption, 331 linkeddata,editing,320–322 linkingSharePointliststoAccess editinglinkeddata,320–322
Listdrop-downmenu,Excel2003,374 ListInformationsection,ListSettings page,78 listitems,othernotinRSSfeeds,295 listlevelblogpermissions,setting,248–249 Listoption,177,373 ListPermissionsgroup,26 Listribbon,77,79,91,108–109,112,120, 131,138,248 ListSettingsoption,Listribbon,77,95, 108,113,120,125,131,138,250 ListSettingspage,60,78–79,111,120–121, 131–132,139,141 Listtab,121 Listtoolbar,Excel2003,372,374 ListToolsribbongroup,74,77,104–105 Listtype,107,121 ListWorkflowbutton,548 lists AssetLibrary,18 attachingworkflows,545
703
■ INDEX
buildingcustom,107–113
exportingtoAccess,302–319
creatingAccessformsandreportsfrom
exportingtoExcel
creatingcustomformsusing subforms,337–340
currentviewaffectsdataexportedto list,360
creatingsimpleforms,333–335
displayingimportedlist,358–359
creatingsimplereports,340–341
externaltabletoolsinExcel,362–363
creatingSplitForms,336–337
IQYfiletype,357–363
creatingmaster-detailrelationships between,178–181 creatingRSSfeeds,125–130 creatingstatuslistfrom,421–423
usinghyperlinksinlist,360–362 FormLibrary,19
DataConnectionLibrary,18
importingdirectlyfromAccess,317– 319
definingviews,130–135
inlineediting,137
deployingAccessapplicationsto SharePoint
andlibrarytypes,17–20
movingAccessdatabasesto SharePoint,345–348 movingallAccesstablesto SharePoint,343–345 overview,342 DocumentLibrary,18–19 editingdatainto,100–104 andExcel2003 exportingExcelworksheetsto SharePoint,373–375 exportingSharePoint2007listto, 371–372 exportingdatafromExcelinto definingtablewithinExcel,365–366 exportingExceltable,366–368 overview,363–364 viewingexporteddatain SharePoint,369–371
704
overview,355–356
linkingtoAccess editinglinkeddata,320–322 overview,319 usingAccesstomakemassupdates, 322–324 modifyingcolumntypesin,113–121 modifyingformusedwithinInfoPath, 437–449 movingcontactsbetween,262–263 overview,301 PictureLibrary,19 RecordLibrary,19 recyclebinrecoveringdeletedlist records,341–342 referentialintegrityinlookups,142 ReportLibrary,19 sendinge-mailsto,296–299 sendingmessagesto,296–299
■ INDEX
inSharePointWorkspace,605–606
LookupField,145
SlideLibrary,19
lookuptables,331
sortingandfiltering,135–137
lookups,referentialintegrityin,142
synchronizationofinExcel,375–381 TranslationManagementLibrary,19 typesof calendar,92–94
■M
MainContentarea,8 MainTabsoption,214
collaboration,90–92
MakeHomepageoption,Editribbon,170
discussionboard,90–92
ManageAccountsoption,BlogPost ribbon,246
other,98–100 overview,69–70
ManageCommentsoption,242
searchingcategory,92–94
ManageContentandStructureoption,Site Actionsmenu,189
tracking,95–98
Managegroup
usingalertstonotifyofchanges,121– 125 usingmultivalvefieldsin creatingmultivaluedcolumnsin SharePoint,325–330 openinglistswithmultivalued columnsinAccess,330–332 overview,324 reasonsnottousemultivalued columns,332–333 validationsettings,138–141 views,104–106 WikiPageLibrary,20 Listsoption,108,425 Liststool,GrooveWorkspace,590–598
PermissionToolsribbon,249 Viewribbon,72 WebApplicationsribbon,122 ManageHierarchypermissionlevel,22 ManageMyAlertsoption,125,284 ManagePermissionsLevelsonParentWeb Sitelink,25 ManagePermissionsoption,397 ManagePostsoption,242,250 ManageRecordsCenteroption,Site Actionsmenu,639 ManageRulesbutton,443 ManageRulesdrop-downmenu,Table ToolsLayoutribbon,481
Locationsection,Documentsribbon,424
ManageRulesoption,ControlTools Propertiesribbon,468
locks,52
Manageserviceapplications,384
Lookupcolumntype,110,118,325,331
ManageViewsgroup,79,104,225
705
■ INDEX
Managewebapplicationsoption,43,67, 122 ManagedMetadatacolumntype,110 ManagementAbsenceSummaryview,480, 482 Managerrole,SharePointWorkspace,571 MapNetworkDriveoption,Toolsdropdownmenu,203 mappednetworkdrive,savingInfoPath formto,504 master-detailrelationships,creating betweenlists,178–181 MaximumUploadSizeoptions,43 MediaandContentcategory,156,160,162 meetingtemplates,9–10 Membershipspage,198 Mergecellsbeforesplitcheckbox,456 MergeCellsoption,TableToolsLayout, 456 Mergegroup
usingwithdocumentinformation panel,222–226 MicrosoftAccess.SeeAccess MicrosoftExcel.SeeExcel MicrosoftExcelSecurityNoticedialogbox, 357 MicrosoftFeedsfolder,130 MicrosoftFrontPage,544 MicrosoftInfoPathdocument,525 MicrosoftOffice creatingandusingdocumentsets,232– 237 editingandsavingdocumentsto documentlibraries overview,208–209 savingdocumenttoexisting libraries,211–212 savingnewdocuments,210
Layoutribbon,450
managingmultipleeditorsto documents,226–232
TableToolsLayout,456
metadata
messages,sendingtolibrariesandlists, 296–299
addingtodocumentsfrom SharePoint,219–222
metadata
addingtoWorddocuments,213–219
addingtodocumentsfromSharePoint, 219–222 addingtoWorddocuments,213–219
overview,212 usingwithdocumentinformation panel,222–226
fordocumentlibrary,InfoPathforms, 526–529
openingSharePointdocumentsfrom within,201–208
editing,322
searchingfordocuments,237–240
exportingtoExcel,540
sendingimagesto,660–662
massupdatesto,323–324
706
overview,212
■ INDEX
usingWordtocontributetoblogsites
MovetoSharePointSiteIssuestable,311
commentingonentries,247–248
moverboxes,326–327
creating,241–243
movingdocuments,48
creatingnewpostings,244–247
multipageworkspaces,10
definingcategoriesfor,243
multiplelibraries,31
overview,240
Multiplelinesoftextcolumntype,110
settingitemlevelblogpermissions, 250–251
multivaluedcolumns
settinglistlevelblogpermissions, 248–249 MicrosoftOfficePictureManager.See PictureManager
creatinginSharePoint,325–330 openinglistswith,330–332 reasonsnottouse,332–333 multivalvefields
MicrosoftOutlook.SeeOutlook
schemafor,332
MicrosoftPowerPoint.SeePowerPoint
useinlists
MicrosoftSharePointFoundationlocation type,384
creatingmultivaluedcolumnsin SharePoint,325–330
MicrosoftWord.SeeWord
openinglistswithmultivalued columnsinAccess,330–332
ModifiedBycolumn,39,126,580 Modifieddatefield,91 ModifiedDate/Timeoption,60 Modifygroup,25 Modifysection,25 ModifySharedWebPartoption,94,105, 427–428 ModifyThisViewoption,131,662,675 ModifyViewcommand,Listribbon,79 ModifyViewoption,Listsribbon,104 Morebutton,Controlslistbox,501 MoreColorsoption,477 Morecreateoptions,SiteActionsmenu,95 MoreOptionsbutton,75–76,108,152,241, 632,644
overview,324 reasonsnottousemultivalued columns,332–333 MyAlertsoption,124 Myfirstdocument.docxfile,67 MyLinkssitemenu,82 MyNetworkPlacesfolder,201–202 MyNetworkPlacesoption,Startmenu, 202 MyProfiledrop-downmenu,6,198 MySettingsoption,124 MySitearea,241 MySitecontainer,12 MySitehomepage,12
707
■ INDEX
MySiteHostsitecollectiontemplate,17
NewFolderdialogbox,671
MySiteHosttemplate,12
Newgroup
MySitelibrary,12
Documentsribbon,153,386,424
MySitelink,6
Itemsribbon,105
MySecondPagepage,171
Listribbon,112 NewGroupbutton,215
■N
NewLibrarypage,626
Namecolumn,44,46,360,370
Newmenu,NewFoldercommand,531
Namefield,49,360,362,377
Newoption,Documentsribbon,424
NameManager,389–390
Newpage,BackStagearea,449,466
Nameproperty,172–173,419
NewSharePointSitepage,632
Nametextbox,UploadDocumentdialog box,386
NewSiteContentTypedialogbox,623
NamedItemfield,400
NewSiteoption,SiteActionsmenu,241
NavigateUpicon,7–8
NewSQLServerConnection.odcoption, 406
Navigationpanel,Outlook,266–267,276
NewTabbutton,214
networkfileshare,publishingInfoPath formsto,503–520
NewToolbaroption,204
networklocation,publishingformsto,507 NetworkTasksgroup,202 NewAlertpage,281–282 NewBlogAccountdialogbox,245–246 Newbutton,33 NewDocumentbutton,35,236
708
NewGrouppage,28
NameBox,388
NewWebPartPage,153 NextQuestionbutton,87 NoToolbartype,105 NoteBoard,196–197 Notepadtool GrooveWorkspace,586 opening.xmlfiles,509
NewDocumentcommand,Documents ribbon,543
Notifybutton,209
NewDocumentdrop-downmenu,236
Numbercolumntype,110,115
NewDocumentoption,34,153,424,532
NumberofHoursfield,462
Newdrop-downmenu,544
NumberofHoursGreaterthan40rule,469
NewFoldercommand,Newmenu,531
NumberofHoursLessthan0rule,468
■ INDEX
NumberofHoursLessthanorequalto8 rule,468 NumberofHoursLessthanorequalto40 rule,468 NumberofItemstoretainperfield property,412 NumberRangeoption,88
OpeninBrowserbutton,363 OpeninExceloption,387 Openinthebrowseroption,386 OpenItemspermission,21 Openpermission,21 OpenSitedialog,546 OpenwithWindowsExploreroption
■O
Objectiveslisttype,99 Objectsgroup,Homeribbon,457 OffforRowsandColumnsoption, PivotTableToolsDesignribbon, 413 Office.SeeMicrosoftOffice OfficeButtonmenu,48 OfficeButton,MicrosoftWord,37,207,213 OfficeClientApplicationsoption, Categoriesarea,398 OfflineClientAvailabilitysetting, SharePointWorkspace,601 OfflineEditingOptions,205 Offlineeditingoptionsfordocument managementserverfilessection, WordOptionsdialogbox,206 OffsetBodyoption,PageLayout Templatesdialogbox,451 OnforColumnsOnlyoption,PivotTable ToolsDesignribbon,413 Open&CheckOutgroup,Documents ribbon,183 Opendialogbox,207,209,472,475,504 OpenDocumentdialogbox,347 OpenFiledialogbox,386
Actionsdrop-downmenu,425 Actionsmenu,665 OpeningDocumentsintheBrowser section,386 OpeningDocumentsintheBrowser setting,397 OperatingSystem(OS),113 OperatingSystemcolumn,119–120 OptionButtoncontrol,469 OptionButtonPropertiesmenuoption, 469–470 Optionsbutton,ImportWizard,472,475 Optionsdialogbox,207,472,475 options,E-mailaLink,192 OptionsforSendingPicturesdialogbox, 661 Optionslink,661 Optionsribbon,157,412 Optionstab,SharePointWorkspace Preferencesdialogbox,613–614 OrderDetailstable,143–144,146–147 OrderIDcolumn,143 OrderIDfield,144 Orderrecord,144 OrderShippingInformationform,500–501
709
■ INDEX
Order_Datecolumn,143 Order_Detailslist,148 Order_Extended_Pricecolumn,145 Order_Quantitycolumn,146 Order_Unit_Pricefield,146 OrderIDfield,143 OrderID:references,146 OrderID:Customer_Namecolumn,146 OrderID:Order_Datecolumn,146 Orderslist,148
connectingcontactsliststoOutlook, 253–256 deletingcontacts,260–261 managingupdateconflicts,258–259 movingcontactsbetweenlists,262– 263 recoveringdeletedcontacts,261– 262 synchronizingtaskswithSharePoint
Orderstable,143–144,146
addingtasksliststoOutlook,274– 276
OS(OperatingSystem),113
editingtasksfromOutlook,277–278
Other/Advancedoption,406
overview,273
Outlook
sendinge-mailsfromtasks,278
alertsofSharePointchanges configuring,281–283 correcting/modifying,284–285 sendinge-mailtolists,296–299 sendinglinksviaSendTo,299–300 synchronizingcalendarswith SharePoint
tasks,forexportsteps,315–316 usingRSSReadertosubscribeto SharePointRSSfeeds addingRSSfeedstoInternet Explorer7.0,286–291 addingRSSfeedstoOutlook,291– 293
addingcalendartoOutlook,264–268
deletingitemsfromRSSfeeds,293– 294
copyingandmovingitemsbetween calendars,271–272
viewingotherlistitemsnotinRSS feeds,295
deletingitemsfromcalendars,272– 273 makingchangestocalendaritems, 270–271 overlayingcalendars,268–270 overview,263 synchronizingcontactslistswith SharePoint
710
addingcolumnsthatwill synchronizewithOutlook,257–258
usingtoworkofflinewithcontent,278– 281 overridingCheckOut,57–58 Overwriteexistingfilescheckbox,42,649 Overwriteexistingfilesoption,41 Owls.aspxfile,177 Ownersgroup,22
■ INDEX
■P
addingimagestoImagelibraries, 160–163
PageCountproperty,220
copyingtextfromWorddocuments, 164
PageDesignribbonoption,451,467,478, 480
overview,151–155
PageCountcolumn,220
PageEditribbon,155 PageImages:DownloadPicturespage,657
usingWordtoaddtablestocontent, 165–166 wiki,addingtocollaborationsites,170– 178
PageLayoutTemplates,BackStagearea, 467
Pageslibrary,152
PageLayoutTemplatesbutton,451
panels,documentinformation,222–226
PageLayoutTemplatesdialogbox,451– 452
Parameterspanel,395
PageLayoutsgroup,PageDesignribbon, 451,467 PageLibrary,183–184,186,188–190
Parameterstab,PublishOptionsdialog box,414 ParentContentTypessection,232
Pageoption,7
Participantrole,SharePointWorkspace, 571
Pageribbon,7,196
Pendingstatus,38,63–64,66,189
PageSetuppage,ViewPropertiesdialog box,480
PeopleandGroupspage,30
Pagetab,164 PageTools,166 PageViewsgroup,Homeribbon,482 pages.Seealsocontentpages editingwithCheckOutandCheck,182– 185
PermissionLevelsoption,25,249 PermissionLevelspage,25,27,249 PermissionToolsribbon,25,248–249 permissions Members,21 Owners,22–30
publishingtosites,186–189
Visitors,21
trackingversions,185–186
itemlevelblog,250–251
web,addingtocollaborationsites
listlevelblog,248–249
addingcontenttoWebPartzones, 156–160 addinghyperlinkstocontent,166– 169
overview,20 PermissionsandManagementcolumn, 248,637
711
■ INDEX
PermissionsandManagementsection LibrarySettings,397 ListSettingspage,78 Permissionsforthisdocumentlibrary option,397
PivotChartandPivotTableReportoption, 409 PivotChartoption,371 PivotTableFieldListpanel,410
Permissionspage,249
PivotTableOptionsdialogbox,412
Permissionssection,249
PivotTableReportoption,409–410
Personorgroupcolumntype,110
PivotTablesection,PivotTableTools Optionsribbon,412
PersonalPermissionsgroup,26 PersonalizationSitetemplate,17 PettyCashReceipttemplate,471–473 picturelibraries,19 downloadingimagesfrom,657–659 overview,644–647 sendingimagestoMicrosoftOffice application,660–662 uploadingusingPictureManager,652– 656 multipleimages,651–652 overview,648 singleimages,649–650 uploadingusingWindowsExplorer, 656–657 viewingpicturesin,662–668 PictureLibrarygroup,647 PictureLibraryoption,Librariescategory, 161 PictureManager,uploadingtopicture libraryusing,652–656 multipleimages,651–652 overview,648 singleimages,649–650
712
Picturestool,GrooveWorkspace,587
PivotTableStyleOptionsgroup,PivotTable ToolsDesignribbon,413 PivotTableToolsDesignribbon,412 PivotTableToolsOptionsribbon,412 PopularFormTemplates,BackStagearea, 466 PopularFormTemplatesgroup,437,449 Portal_Preparationdocument,44 Portal_Preparationfile,44 Postbutton,196 postings,blog,244–247 Postslist,248,250 PowerPoint,andslidelibrary copyingslidesfrom,677–680 uploadingpicturesfrom,671–677 Preferencesdialogbox,Sharepoint Workspace,608–615 Prepareoption,OfficeButton,213 Presetssection,456 Previewbutton,495 Previewcolumn,662 Previewcommand,445 Previewoption,Homeribbon,444,482
■ INDEX
primarykeys,312 PrintSettingspage,ViewPropertiesdialog box,480 ProblemCallslist,430 ProjectStafflist,180 ProjectStaffoption,179 projecttaskslist,96–97 Project_Namecolumn,180 ProjectsWebDatabasetemplate,16 Propertiesbutton,358,363 Propertiesdialogbox,458–460 Propertiesgroup,162 Propertiesoption,213,458,478 propertydialogbox,259 PublishaMajorVersionoption,62,187 PublishandallowSyncbutton,377 Publishbutton BlogPostribbon,244 PublishSlidesdialogbox,672,674 Workflowribbon,556,558 PublishDatecolumn,439,441–442 PublishDatefield,443–445 PublishListoption,Excel2003,374
PublishSlidesoption Backstagearea,673 Uploadmenu,672 PublishSlidespanel,Backstagearea,673 Publishsucceededdialogbox,350 PublishtoAccessServicesbutton,348–350 PublishTotextbox,672,674 Publishyourformsection,447 publishing pagestosites,186–189 sites,12–13 templates,14–15 Publishingcolumntype,110 PublishingPortaltemplate,13 PublishingSitetemplate,17 PublishingWizard,505–506,522,534 PUBSdatabase,486 PurchaseAmountcolumn,223,225,355, 360 PurchaseOrderNumbercolumn,222–223, 225,360 PurchaseOrderslibrary,222–223,225,355, 359 PurchaseTotalcolumn,225
Publishoption,445 PublishOptionsbutton,391,414
■Q
PublishOptionsdialogbox,391,414
queries,creating,323
Publishpage,InfoPathforms,505
querysection,493
PublishSlidesdialogbox,672,674
QuickAccessmenu,71,75
QuickLauncharea,8,31,76,86,645
QuickLaunchmenu,33,35,190,241,243, 417,425–426,669–670
713
■ INDEX
QuickLinksmenu,67
recordroutingrule,639–642
QuickPublishoption,445,447
RecordsCentersite,632–633 sitecolumns,618–620
■R
RangeTextoption,88 RatingScalequestiontype,87 Readpermissionlevel,21–22 Read-Onlymode,49–50,209,361 Read-onlyoption,481 Read-Writebutton,51
records,recyclebinrecoveringdeleted, 341–342 recovering deletedcontacts,261–262 deletedlistrecords,341–342 deletionswithrecyclebin,67,190–191
ReallySimpleSyndicationfeeds.SeeRSS feeds
Recurrenceoption,Outlook,316
Recentarea,Backstagearea,450
RecycleBin
RecentPlacesoption,211
contentsof,261
RecordLibrarytype,19
lengthoftimeitemsstayin,261
RecordRoutingruleslist,640–641
RecordCenter,639
RecordsCenterManagementpage,640
recoveringaccidentaldeletionswith, 67,190–191
RecordsCenteroption,643 RecordsCentersite,11,632–634,639
recoveringdeleteditemsfrom,272–273, 294
RecordsCentertemplate,11,617
recoveringdeletedlistrecords,341–342
RecordsCenterWebServiceSubmitters permissionlevel,22
restoringcontactsfrom,261–262
recordsmanagementsystem addingsitecontenttypeforRFBinto RecordsCenter,636–637
WebApplicationsribbon,191 RecycleBingroup,67 RecycleBinoption,67,190
archivingdocuments,642–644
referentialintegrityinlookups,142
contenttypeforRFBdocuments,620– 625
referentialtables,transferring,313 RefreshAlloption
ExternalServiceConnection,634–636
Dataribbon,362
overview,617
Excel,370
policyforarchivallibrary,637–639
714
sitelibrarytocollectRFBdocuments, 625–632
■ INDEX
Refreshbutton ConnectionPropertiesdialogbox,358 Excel,370 TableToolsDesignRibbon,379 Refreshcontrolarea,358 Refreshoption,Excel,370 Refreshthedatawhenopeningthefile option,358,363 refreshingcontactinformation,258,262
creatingSplitForms,336–337 simple,creating,340–341 RequestforAbsenceform,andInfoPath, 466–470 RequestforBid(RFB)documents.SeeRFB (RequestforBid)documents RequestThrottleOverrideproperty,112 Requirearesponsetothisquestionoption, 87
RegisteraBlogAccountdialogbox,244
Requireacceptanceconfirmationcheck box,571
RegisteranAccountbutton,245
RequireCheckOutoption,65,184,361
RegisterLateroption,244
Requirecontentapprovalforsubmitted itemssetting,38
Rejectbutton,Reviewribbon,231 Rejectedstatus,64,66,189,558
Requirethatthiscolumncontains informationoption,120
relationaldatabases,primarykeys,312
RequiredCheckOut,53
relationships,creatingbetweenlists,178– 181
Requiredvalidation,140
Removebutton,631 RemoveRelationshipbutton,489 Renamebutton,215 ReplaceAlloption,652 ReplaceFileoption,652 Replybutton,91
ResearchProjectscolumn,180 ResearchProjectslist,179–181 ResourceThrottlingoption,43 RespondtothisSurveymenuoption,85 RestoreanExistingAccountoption,578 Restoreoption,60
ReportLayoutsection,413
RestoreSelectionbutton,RecycleBin,67, 190–191,342
ReportLibraryoption,424
RestoreSelectionoption,RecycleBin,272
ReportLibrarytype,19
RestrictDeleterelationship,148
reports
RestrictedReadpermissionlevel,22
creatingfromSharePointlist creatingcustomformsusing subforms,337–340 creatingsimpleforms,333–335
RestrictedSecuritylevel,forInfoPath forms,507 RetentionPolicyDefinedcolumn,637 Retentionsection,638
715
■ INDEX
ReviewDatecolumn,220–221
Homeribbon,441
Reviewribbon,231
TableToolsLayoutribbon,481
RFB(RequestforBid)documents addingsitecontenttypeforinto RecordsCenter,636–637 contenttypefor,620–625 sitelibrarytocollect,625–632 RFBcontenttype,628–629
RunQuerybutton,495–496
■S
Salestable,PUBSdatabase,403–404 Save&Sendoption
RFB_Due_Datefield,618,642
Filetab,413
RFB_Groupcolumngroup,619–620,630
Filesmenu,390
RFB_Numbercolumn,618–619
Save&Sendpage,393
RFB_Responder_Namefield,618
SaveAccountAsdialogbox,577
RFB_Response_Amountfield,619
SaveAsbutton,Editribbon,532
RowLabelsarea,412
SaveAsdialogbox,37,210,212,224,231, 356,393,534,594
RowLabelsbin,411–412 RowLabelsbox,411 Rows&Columnsgroup,440 RSSfeeds,125–130 addingtoInternetExplorer7.0,286– 291
SaveAsoption,Filetab,211 SaveAswindow,391 Savebutton,Editribbon,532 SaveConflicterrormessage,182,258 Savedialog,InfoPathforms,507
addingtoOutlook,291–293
Savelink,7
deleting,295
Savepage,WordOptionsdialogbox,205
deletingitemsfrom,293–294
SavetoSharePointoption,210,413
overview,195–196
SavetoSharePointSitebutton,320
turningonandoff,287
savedexportsteps,reusing,316–317
viewingotherlistitemsnotin,295
SavedExportsoption,316
RuleDetailsdialogbox,443
Searchfeature,238
Rulesdialogbox,482
SearchforUserbutton,SharedFolder workspace,570
Rulesgroup ControlToolsPropertiesribbon,460, 468
716
Rulespanel,444,468,481
Searchlisttype,70 Searchproperty,LibrarySettings,237
■ INDEX
Searchsection,AdvancedSettings,219 searchingcategory,92–94 searchingfordocuments,237–240 securitylevels,forInfoPathforms,507 Securityoptions,InternetExplorer,54 Securitysettings,20 Securitytab,SharePointWorkspace Preferencesdialogbox,610–611 securitywarnings InternetExplorer,254,265 Outlook,254–255,265 SelectaFieldorGroupdialogbox,527 SelectaLinkdialogbox,400 SelectAllbutton,PublishSlidesdialogbox, 672 SelectAlloption,27 SelectColumnsgroup,630 SelectDataSourcedialogbox,406,483 SelectDatabasebutton,483 SelectFolderoption,204 SelectPicturedialogbox,648–649 SELECTquery,323 SelectSiteColumnsfromdrop-down menu,217 SelectUsersdialog,553 SelectedPicturesoption,Viewmenu,664 SelectedViewproperty,94 selectingmultipleitems,257 SendaMessagebutton,228 SendAlertsforTheseChangessection,124
Sendformdatatoasingledestination radiobutton,SubmitOptions dialog,512 SendRowofDataTooption,179 SendToaction,664 SendTodrop-downmenu,635 SendTooption,299–300,642,660 SentAlertsforTheseChangessection,194 ServerDraftslocationtextbox,206 ServerList,112–113 ServerOScolumn,115,117 Setafield'svalueaction,Actiondialogbox, 481 SetAdvancedDownloadOptionslink,659 Setalertonthislibraryaction,281 sets,creatingandusingdocument,232– 237 Settingsgroup Libraryribbon,397,534,626,636 Listribbon,95,108–109,125,131,250 Settingspage,543,627,629–631,637 Settingssection,36,624 Shadedstyle,136 Shadingoption,TableToolsLayout ribbon,467 Shadingtab,455,477 Share&Trackgroup,121,125,192,196 Share&Trackribbon,193 sharefeature alerts,192–194 E-mailaLinkoption,192 NoteBoard,196–197
717
■ INDEX
overview,191
blogs,8–9
RSSfeeds,195
documentworkspaces,8
tags,197
EnterpriseSiteTypes,10–12
Sharepage,Backstagearea,673
groupworksites,9
SharedDocumentsfolder,62,67
meetingtemplates,9–10
SharedDocumentslibrary,30–31,35,43, 47,59,177,207,211,279
overview,5
SharedDocumentspage,45,63,67 SharedDocumentsreference,211 SharedDocumentsview,53 SharedFolderworkspace,568–569 sharednetworkdrive,savingdatafilefrom formto,508 SharePoint addingdocumentlibraries,30–34 addingmetadatatodocumentsfrom, 219–222 creatingmultivaluedcolumnsin,325– 330 deployingAccessapplicationsto movingAccessdatabasesto SharePoint,345–348
teamsites,6 VisioProcessRepository,9 sitecollections,sites,andsub-sites,2–5 sitetemplates applicationssitetypes,16 listsandlibrarytypes,17–20 overview,14–15 permissionsandgroups,20–30 PersonalizationSite,17 PublishingSite,17 PublishingSitewithWorkflow,17 synchronizingcalendarswithOutlook addingcalendartoOutlook,264–268
movingallAccesstablesto SharePoint,343–345
copyingandmovingitemsbetween calendars,271–272
overview,342
deletingitemsfromcalendars,272– 273
documenttemplates,34–35 documents,opening,201–208
makingchangestocalendaritems, 270–271
movingAccessdatabasesto,345–348
overlayingcalendars,268–270
movingAccesstablesto,343–345
overview,263
overview,1 sitecollectiontemplates blanksites,8
718
publishingsites,12–13
synchronizingcontactslistswith Outlook addingcolumnsthatwill synchronizewithOutlook,257–258
■ INDEX
connectingcontactsliststoOutlook, 253–256 deletingcontacts,260–261 managingupdateconflicts,258–259 movingcontactsbetweenlists,262– 263 overview,253 recoveringdeletedcontacts,261– 262 synchronizingtaskswithOutlook addingtasksliststoOutlook,274– 276
Showadvancedviewlink,439 ShowAlloption,46 Showbasicviewlink,440 ShowDetailscheckbox,345 ShowFieldsoption,Dataribbon,480 ShowGroupdrop-down,119 Showgroup,Optionsribbon,412 Showhiddenfilesandfoldersoption,36 ShowinTabularFormoption,413 ShowN/Aoption,88
editingtasksfromOutlook,277–278
Showpage,ExcelServicesOptiondialog box,391
overview,273
ShowQuotedMessageslink,91
sendinge-mailsfromtasks,278
Showtab,PublishOptionsdialogbox,414
SharePointblogoption,246
Showtablecolumnscheckbox,490
SharePointBookFeedsfolder,130
Showthefolderasane-mailAddressbook checkbox,259
SharePointDesigner,buildingcustom workflowsforformswith,558
ShowToolbaroption,105
SharePointDraftsfolder,205
ShowValidationErroraction,442
SharePointfarm,2–3,7
simpleforms,creating,333–335
SharePointgroup,377
simplelockingofdocuments,50–51
SharePointlibraries,207–208,503
simplereports,creating,340–341
SharePointListOptionsdialogbox,255, 259
Singlelineoftextcolumntype,78,110,115
SharePointListtemplate,470 SharePointpage,sectionsof,6 SharePointServerPublishingfeature,152 SharePointserver,publishingInfoPath formsto,521–526 SharePointWorkspaceOptionsdialogbox, 608 Sheetsoption,392
SinglePictureViewoption,654–655 SiteActionsbutton,6,71,119,249 SiteActionsdrop-downmenu,7,427,669 SiteActionslist,31 SiteActionsmenu,23,32,107,151,241, 424,621,625,632,639 SiteAdministrationgroup,124 SiteAdministratorpermissionlevel,26–27
719
■ INDEX
SiteAdministratorsgroup,28 SiteCollectionAdministrationsection,232
Galleriesoptiongroup,119
sitecollectioncontenttypes,543
SiteSettingspage,618
SiteCollectionDocumentslibrary,4
SiteContentandStructurepage,189
Sitecollectionfeatures,232
SiteContentTypeGallery,622,625
SiteCollectionImageslibrary,4
sitecontenttype,publishingformto,539
SiteCollectionRecycleBin,191
SiteContentTypes
sitecollectiontemplates
Galleriesgroup,232
blanksites,8
PublishingWizard,536
blogs,8–9
RFBpage,625
documentworkspaces,8
SiteSettingspage,621
EnterpriseSiteTypes BasicSearchCenter,12 BusinessIntelligenceCenter,11 DocumentCenter,11 EnterpriseSearchCenter,12 FASTSearchCenter,12 MySiteHost,12 overview,10 RecordsCenter,11 groupworksites,9 meetingtemplates,9–10 overview,5 publishingsites,12–13 teamsites,6 VisioProcessRepositorytemplate,9 sitecollections,2–5 SiteColumnGallery,119,618,620 sitecolumns,forrecordsmanagement system,618–620
720
SiteColumnsoption
sitelibrary,tocollectRFBdocuments,625– 632 Membersgroup,21 Ownersgroup,22–30 Visitorsgroup,21 SitePageslibrary,170,173 SitePermissionsoption,23,26,249 SitePermissionspage,24,28 SitePermissionssection,249 SiteSettingsoption,119,217,633 SiteSettingspage,23,119,618,621 sitetemplates applicationssitetypes,16 listsandlibrarytypes AssetLibrary,18 DataConnectionLibrary,18 DocumentLibrary,18–19 FormLibrary,19 overview,17
■ INDEX
PictureLibrary,19
SitesandWorkspacessection,633
RecordLibrary,19
SitesofInterest.docfile,47
ReportLibrary,19
Sitestoolbar,204
SlideLibrary,19
Sketchpadtool,GrooveWorkspace,588
TranslationManagementLibrary,19
SkipFileoption,652
WikiPageLibrary,20
SlideLibrariessection,670
overview,14–15 permissionsandgroups Members,21 Owners,22–30 Visitors,21 overview,20 PersonalizationSite,17 PublishingSitewithWorkflow,17 sites addingwikipagestocollaboration sites,170–178 blog,creating,241–243 collaboration,addingwebpagesto addingcontenttoWebPartzones, 156–160 addinghyperlinkstocontent,166– 169 addingimagestoImagelibraries, 160–163 copyingtextfromWorddocuments, 164 overview,151–155 usingWordtoaddtablestocontent, 165–166
slidelibrary copyingslidesfromtoPowerPoint presentations,677–680 overview,668–670 uploadingpicturestofromPowerPoint overview,671–672 performingactionsonslides,675– 677 publishingslidesfromPowerPoint, 673–674 SlideLibraryoption,669 SlideLibrarytype,19 SlideVersionHistorysection,670 Snippingtool,589 socialworkspaces,10 software-drivenworkflows,545 Sortbysection,128 sortinglists,135–137 specialobjectcollections,4 SpellCheckoption,Editribbon,74 SplitCellscommand,Layoutribbon,450 SplitCellsdialogbox,456 SplitCellsoption,456
overview,2–5
SplitForms,creating,336–337
publishingpagesto,186–189
spreadsheets,importing,82
721
■ INDEX
SQL_CASE_Statementslibrary,679 SQL_Saturdaylibrary,672
StatusListtemplate,Createpage,417
StandardView,45,48–49,52–53,60,62, 132,386,629
statustypes,forstatusindicators,416
StarNamescolumn,370 StartDatecolumn,141 StartDatefield,141–142 StartHerebutton,GrooveWorkspace,591 Startmenu,202–203,657 StartOptionssection,WorkflowSettings page,559 Statefield,411,498 Statuscolumn,418 Statusfield,421,423 statusindicators(KPIs) addingtodashboard,427 creatingstatuslist fromExcelworkbook,423 withmanuallyenteredinformation, 418–420
steps export,Outlooktasksfor,315–316 savedexport,reusing,316–317 StopEditingoption,164 StopInheritingPermissionsoption,25, 248–249 stor_idfield,PUBSdatabase,403 Storestable,PUBSdatabase,403 Stylesection,136 Stylesoption,164 subforms,creatingcustomformsusing, 337–340 Subjectfield,DefineE-mailMessage dialog,552 Submitbutton Editribbon,533 Homeribbon,518
overview,417
Submitcommand,533
usingSharePointlist,421–423
SubmitOptionsdialogbox,512,533
overview,416
SubmitOptionsdrop-downmenu,511
statustypesdefined,416
Subscribetothisfeeddialogbox,290
statuslist creatingforstatusindicators fromExcelworkbook,423 withmanuallyenteredinformation, 418–420 overview,417 usingSharePointlist,421–423
722
overview,83
subscriptionpage,RSSfeeds,289 sub-sites,2–5 Subtotalssection,PivotTableToolsDesign ribbon,413 Summarysection,DataConnection Wizard,516 SummaryToolbartype,105
■ INDEX
uploadingpicturestofrom PowerPoint,671–677
supportinglibraries picturelibrary downloadingimagesfrom,657–659 overview,644–647
Surveylist,83–88 SurveyOptionssection,86
sendingimagestoMicrosoftOffice application,660–662
Synchronizationtab,SharePoint WorkspacePreferencesdialogbox, 614–615
uploadingusingMicrosoftOffice PictureManager,652–656
SynchronizewithSharePointoption,378
uploadingusingpicturemanager, 648–652 uploadingusingWindowsExplorer, 656–657 viewingpicturesin,662–668 recordsmanagementsystem addingsitecontenttypeforRFBinto RecordsCenter,636–637 archivingdocuments,642–644 contenttypeforRFBdocuments, 620–625 ExternalServiceConnection,634– 636
SystemAccountuser,227 SystemsSupportedlist,421
■T
Tabledialogbox,453–454 Tableoption,365,376,378–379,409–410 TablePropertiesdialogbox,661 TablePropertiesmenuoption,661 TableToolsDesignRibbon,358,370,377, 379 TableToolsLayoutribbon,456,467,481 TableToolsribbongroup,164,360
overview,617
TableToolstab,366,440
policyforarchivallibrary,637–639
tables
recordroutingrule,639–642
linking,withmultivaluedfields,332
RecordsCentersite,632–633
lookup,331
sitecolumns,618–620
movingtoSharePoint,343–345
sitelibrarytocollectRFB documents,625–632
parent-childrelationshipsbetween,337
slidelibrary copyingslidesfromtoPowerPoint presentations,677–680 overview,668–670
primarykeys,312 referential,transferring,313 usingWordtoaddtocontent,165–166 Tablesdrop-downmenu,Insertribbon, 480 Tablesgroup,Insertribbon,376,469
723
■ INDEX
Tablespaneldrop-downmenu,Insert ribbon,469
TemplatePartssection,Backstagearea, 497
Tablessection,InsertRibbon,365
templates
TabularViewgroup,105,169,193
document,34–35
tags,197
publishing,14–15
Tags&Notesbutton,7,196
sitecollection
TagsandNotespage,198–199
blanksites,8
Tagstab,196
blogs,8–9
Tasklist,138,141
documentworkspaces,8
tasks
EnterpriseSiteTypes,10–12
Outlook creating,311
meetingtemplates,9–10
editing,277–278
overview,5
forexportsteps,315–316
publishingsites,12–13
sendinge-mailsfrom,278
teamsites,6
synchronizingbetweenSharePointand Outlook
VisioProcessRepositorytemplate,9
addingliststoOutlook,274–276 editingfromOutlook,277–278 overview,273 sendinge-mailsfrom,278 Taskslist approvalprocessfor,277–278 inOutlook,95–96 usesof,273 TeamCollaborationsite,170 TeamSite,6,70–71 TechnicalReviewcolumn,221 TechnicalReviewercolumn,220 TemplatePartoption,499 templateparts,inInfoPath,497–502
724
groupworksites,9
sites applicationssitetypes,16 listsandlibrarytypes,17–20 overview,14–15 permissionsandgroups,20–30 PersonalizationSite,17 PublishingSite,17 PublishingSitewithWorkflow,17 TextBoxcontrol,458,467–468,481 TextBoxdialogbox,460 TextBoxlisttype,99 TextBoxPropertiesdialogbox,459,467– 468 TextBoxPropertiesmenuoption,467–468, 481
■ INDEX
text,copyingfromWorddocuments,164
ToolbarType,105
TextLayoutdrop-downmenu,174
Toolbarssection,204
TextLayoutoption,174
Toolsdrop-downmenu,203
TextSettingspage,ViewPropertiesdialog box,479
tooltipstylebox,44
TheOfficeDocumentCacheoption,206 ThingstoBringlisttype,99 Thumbnailcolumn,662 ThumbnailViewoption,655–656 Thumbnailsoption,662–663 Thumbnailsviewoption,664 Timequestiontype,87 TitleandBodyoption,451 TitleandBodypagelayout,452 TitleandHeadingoption,451 TitleandHeadingpagetemplate,453 TitleandTablelayoutcontrol,493 Titlecolumn,73–74,81,100,105,108,115, 126,222–223 Titlefield,106,135,401,411 TitleOnlyform,451 TitleOnlylayout,451 TitleOnlyoption,451 Titleproperty,37,401,640 Titletable,PUBSdatabase,404 title_idvalue,PUBSdatabase,403 TitleAuthortable,403,488 Titlestable,403,488 To_Datefield,468 [Today]filter,72
TopLinkbar,8 Totalssection,136,225 trackfeature alerts,192–194 E-mailaLinkoption,192 NoteBoard,196–197 overview,191 RSSfeeds,195 tags,197 trackingdocumentsversions,58–59 Trackinggroup,95 Trackinglisttype,70 trackinglists issuetrackinglist,97–98 projecttaskslist,96–97 Taskslist,95–96 TrafficLights,429 transferissues autoincrementfields,311–312 dealingwithduplicatelists,315 importingSharePointlistsdirectlyfrom Access,317–319 Outlooktasksforexportsteps,315–316 reusingsavedexportsteps,316–317 transferringreferentialtables,313 validationrules,313
ToolbarandTitleBarsection,401
725
■ INDEX
TranslationManagementLibrarytype,19, 100 TranslationManagementworkflows,100 TrustChildrenoption,384 Trusteddataconnectionlibrariesonlyand embeddedoption,384 TrustedFileLocationsoption,384 Twocolumnswithheaderoption,174 Two-columntablewithSubHeading option,469
UploadDocumentsmenu,40 Uploadmenu,648,652,672 UploadMultipleDocumentsoption,40 UploadMultipleFilesdialogbox,651 UploadMultipleFileslink,386 UploadMultipleFilesoption,40,651–652 UploadMultiplePicturesoption,648,652 Uploadpanel,655
Typecolumn,37
UploadPictureoption,648
Typefield,411
UploadSettingssection,655
TypeofToolbarfield,396
uploadingdocuments
■U
Unlinkbutton,363 UpcomingEventslist,101,125,131,136 Updateanexistingsitecontenttype option,536 Updatebutton,124 UPDATEexpression,303 UPDATEquery,323–324 updates conflictswith,258–259,271
displayingdocumentsinDatasheet View,45–46 displayingdocumentsinWindows Explorer,47–48 overview,40–44 URLcolumn,168 UseClientIntegrationFeatures permission,21 UseRemoteInterfacespermission,21 UseSelf-ServiceSiteCreationpermission, 21
documentlibraries,525
Usetheserverdefault(Openinthe browser)option,386
makingusingAccess,322–324
UsedIncolumn,631
UploadandClosebutton,656 Uploadbutton,161,655 Uploadcommand,649 UploadDocumentdialogbox,153,386 UploadDocumentoption,34,40,386 UploadDocumentscreen,40
726
UploadDocumentwindow,41
UserAlertsoption,SiteAdministration group,124 UserProfileServiceApplication,12 UsersandPermissionsgroup,23 UsersandPermissionssection,249
■ INDEX
■V
validation
Viewmenu,664 ViewOnlypermissionlevel,22
rules,313
View:option,177
settings,138–141
ViewPagespermission,21
ValidationSettings,GeneralSettings group,139 Valuecolumn,418 Valuetextbox,Actiondialogbox,481 Valuewhenselectedproperty,469–470 Valuesbin,411–412 Valuesbox,411 VerifyFormulabutton,InsertFormula dialog,514
ViewPropertiesdialogbox,479 Viewribbon,72,100 Viewsettingssection,ViewProperties dialogbox,479 ViewSlideShowoption,Actionsmenu, 667 Viewtab,36 ViewVersionspermission,21 views
VersionHistoryoption,58,60
addingcolumnsto,38–39
Versioningsettings,38,53,55,59–61,65, 183
lists,104–106,130–135
versions promotingpriorversionstocurrent, 60–61 tracking,58–59 VersionsandCheckOutsection,230 ViewAllSiteContentlink,QuickLaunch menu,417
Viewscommand,533 Viewsgroup,PageDesignribbon,478,480 Viewssection,39,78–79 Viewstaskpanel,480 Visiblecolumncheckbox,235,629 VisioProcessRepositorytemplate,9 VisualStudio,creatingworkflows,560
ViewAllSiteContentoption QuickLauncharea,108,647,669 SiteActionsmenu,417,424,644,669
■W
warningdialogbox,361
ViewAllSiteContentpage,105,137,625
WebApplicationlevel,122
Viewdrop-downmenu,189,663
WebApplicationsgroup,67,122
viewdrop-downmenu,675
WebApplicationsribbon,43,67,122,191
ViewFormatgroup,Listribbon,102,104
WebBrowsercategory,533
ViewinWebBrowseroption,386,394
WebDatabaselisttype,70
ViewItemspermission,21
webfarm,3
727
■ INDEX
webpages,addingtocollaborationsites
uploadingtopicturelibraryusing,656– 657
addingcontenttoWebPartzones,156– 160
WindowsExplorerviewmode,656,676
addinghyperlinkstocontent,166–169
WindowsStarticon,203
addingimagestoImagelibraries,160– 163
Word
copyingtextfromWorddocuments, 164 overview,151–155 usingWordtoaddtablestocontent, 165–166 WebPartoption,Insertribbon,398
documents addingmetadatato,213–219 copyingtextfrom,164 editingfromStandardView,48–49 usingtoaddtablestocontent,165–166 usingtocontributetoblogsites
WebPartPagewithStatusListoption,424
blogsites,240–251
WebPartToolstabgroup,157
commentingonblogentries,247– 248
WebPartzones,addingcontentto,156– 160
creatingblogsites,241–243
WebPartsarea,398
creatingnewblogpostings,244–247
WebPartscolumn,156
definingcategoriesforblogs,243
WebPreviewcolumn,662
settingitemlevelblogpermissions, 250–251
WebServicetemplate,470 WebPagesLibrary,177,190 WelcometotheAddNetworkPlace Wizard,202 WelcometotheDataConnectionWizard dialogbox,484 Widthproperty,168 WikiPageLibrarytype,20 wikipages,addingtocollaborationsites, 170–178 WindowsExplorer displayingdocumentsin,47–48 draggingfilestosharedfolders,575
settinglistlevelblogpermissions, 248–249 WordOptionsdialogbox,205 WorkbookConnectionsdialogbox,405, 409 Workbooktextfield,SelectaLinkdialog box,400 WorkflowLookupforaUseroption,552 WorkflowSettingspage,559 workflows building(example),547 custom,forInfoPathforms,558 defined,545
728
■ INDEX
forInfoPathforms
fileswithin discussiongroupsin,606–607
configuringe-mailmessage,550– 552
editingcontentin,603–604
detailsfor,549–550
listsin,605–606
multipleactions,552–554
overview,599–602
overview,544–545 restructuringconditions,558–559 running,556–558 settingsfor,559–561
propertiesforWorkspace,608–616 overview,563 WorkspaceLaunchbar,566 workspaces,8–10
simpleapprovalworkflow,546–549 restructuringconditionsin,558 Workspace
■X
.xlsbformat,385
accountcreation,564–565
.xlsxformat,385
creatingaccount,564–578
XML(ExtensibleMarkupLanguage),433
creatingGrooveWorkspace
.xmlextension,508–509
Calendartool,584–585
XMLorSchematemplate,470
Chattool,585–586
XMLSchemaDefinition(XSD),433
Chesstool,589–590
XML_For_DBAs_Beginnerfolder,671
Discussiontool,581–583
XSD(XMLSchemaDefinition),433
Documentstool,580
XSL(ExtensibleStylesheetLanguage),433
Liststool,590–598
XSLT(XSLTransformation),433
Notepadtool,586
.xsnfile,508
overview,578–579
XSNformtemplate,539
Picturestool,587 Sketchpadtool,588
■Y
Yes/No(checkbox)questiontype,87
Yes/Nocolumntype,110,115
729