Transcript
Page 1: Timesheet Approval Process
Page 2: Timesheet Approval Process

About Me• I have been working with sharepoint since

2008• My blog:

http://www.greenroomsolutions.ca/blog/• Email: [email protected]• My spare time:

Page 3: Timesheet Approval Process
Page 4: Timesheet Approval Process

Timesheet System Integration

Page 5: Timesheet Approval Process

Background

• City of Langford has a homegrown ASP.NET timesheet system

• Allows staff to enter there time on a daily basis. Time entry is recorded on a project by project basis

• The times system exports a file which is imported into our Payroll ERP System (Great Plains)

Page 6: Timesheet Approval Process

Background Cont.

• System has its own SQL server database

Page 7: Timesheet Approval Process

Background Cont.

• Projects assigned to each employee are configurable.

• Each user is assigned a supervisor in the system.

Page 8: Timesheet Approval Process

Timesheet System Snip

Page 9: Timesheet Approval Process

Approval Process

• In the “old days”– People would print out there timesheet get their

supervisor to sign it and submit it to the payroll department

– Purely a paper process

Page 10: Timesheet Approval Process

Integration Functionality

• Approval done in SharePoint document library • Submit timesheet to SharePoint using SharePoint API• Document tagged with metadata (submitter, date),

dropped in Supervisor Folder (with security)• Ability to comment Timesheet

Page 11: Timesheet Approval Process

Server API vs CSOM (SP2010)

• Pros/ConsServer API CSOMEasier to code Limited OM exposed

Entire OM exposed More difficult to code

Requires sharepoint server on machine running code

Can run on any client

Wrapper over web services

Page 12: Timesheet Approval Process
Page 13: Timesheet Approval Process

Development History

• Originally in SP2007 this system used the Server API (no CSOM available). Required timesheet website to run on sharepoint server.

• In migration to SP2010 CSOM became available. Switched to this API so timesheet not coupled to sharepoint server

Page 14: Timesheet Approval Process

Pseudocode

• Generate report (already existing), byte array• Connect to sharepoint site, list• Query for supervisor folder IF it doesn’t exist

then create it first• Upload to supervisor folder• Tag with metadata

Page 15: Timesheet Approval Process

Generate Report

• Using .rdlc (visual studio report designer) to generate report Set it up

Render

Page 16: Timesheet Approval Process

Connect to the sharepoint site, list

Server API (old)

Page 17: Timesheet Approval Process

Connect to the sharepoint site, list

CSOM (new)

Page 18: Timesheet Approval Process

Query for Supervisor Folder (CSOM)

Page 19: Timesheet Approval Process

Query for supervisor folder cont

Page 20: Timesheet Approval Process

Create Supervisor Folder (CSOM)

Page 21: Timesheet Approval Process

Versus Server API

Page 22: Timesheet Approval Process

Upload Code

CSOM (new)

Server API

Page 23: Timesheet Approval Process

Tag with metadata (CSOM)

Page 24: Timesheet Approval Process

Tag with metadata (server API)

Page 25: Timesheet Approval Process

Timesheet Library

• Approve View (data grid format)

Page 26: Timesheet Approval Process

Supervisor Folders (in approval view)

Page 27: Timesheet Approval Process

Approval View (Datagrid)

Page 28: Timesheet Approval Process

Approval View Settings

Page 29: Timesheet Approval Process

Bonus Content

• Ever tried to change someones name in sharepoint?

• Ever had someone accidentally delete the root site in a site collection?

Page 30: Timesheet Approval Process

Bonus Content – Changing User Names

Page 31: Timesheet Approval Process

Bonus – Recover Deleted Site Collection


Top Related