Monday, October 20, 2014

What is SharePoint?


What is SharePoint? This is a question which if you’re an IT Professional, developer, business user or a sale guy selling the product will surely be asked. I’m afraid I’m always lost for words when the question comes up.

What is SharePoint? Some of the responses I have heard in an effort to describe and explain SharePoint are: “SharePoint is an IIS, ASP-NET and SQL based application”, “SharePoint is a software application” or “SharePoint is a platform”. All these descriptions are right though fairly general and abstract.

What is SharePoint? A technical paper from Microsoft seeks to respond to this question by outlining the many things that SharePoint is. These are things that in the past would have been distinct applications or platforms.

The following is a selection of some of the most important things that SharePoint is:
  • A portal server with delegated administration. SharePoint enables information workers (IW) who have no knowledge of website design or website administration to create, almost instantly, attractive and functioning websites. This relieves information technology (IT) departments from the burden of creating and administering the sites, and it empowers the IWs to create their own sites for teams, blogs, wikis, and other purposes.
  • A groupware application kit. SharePoint provides a platform on which IWs can create collaboration solutions that include document libraries and workspaces, workflows, wikis, blogs, and team-oriented lists, such as Events, Announcements, and Tasks. Microsoft SharePoint Workspace (formerly Microsoft Office Groove 2007) provides an offline experience for these collaboration solutions.
  • A workflow host. Business processes can be systematized and modeled with workflows that are triggered by associated events; for example, the addition of a document to a document library.
  • A content management application. SharePoint Server Enterprise Content Management (ECM) features include document management, records management, and web content management.
  • A Business Intelligence (BI) application kit. The Microsoft Business Connectivity Services (BCS) features of SharePoint enable data from non-SharePoint sources, such as a SAP installation or Oracle database, to be accessed (read/write) just as if it were an ordinary SharePoint list.
  • The operating system of an intranet. SharePoint can provide for an intranet many of the functions that an operating system provides for a computer, including storing and copying files, hosting services, starting applications, and securing data. (This is not to imply that SharePoint can only be used on an intranet. SharePoint can also host extranet and Internet-facing solutions.)
  • A host for services. SharePoint deployments make data available through a client object model, the REST-based Windows Communication Foundation (WCF) Data Services (formerly ADO.NET Data Services), and many out-of-the-box ASMX web services. In addition, the SharePoint Service Application Framework provides a platform that enables developers to build scalable middle-tier services that can provide data or processing resources to other SharePoint features.
  • A data store. SharePoint stores data as multicolumn lists in a Microsoft SQL Server database. You can query the data by using LINQ and also using Collaborative Application Markup Language (CAML). The data can be mirrored, backed up, restored, and, depending on the edition of SQL Server being used, you may be able to take snapshots of the data store.
  • A data and processing layer for multiple user interfaces (UIs). Besides its native UI of webpages (including special versions for mobile devices), which can contain ECMAScript (JavaScript, JScript), SharePoint also supports access from Microsoft Silverlight applications and the Microsoft SharePoint Workspace client application. With the SharePoint client object model, you can access SharePoint using Windows Presentation Foundation (WPF), Windows Forms, or any other managed code application.
References: 


Thursday, August 14, 2014

Backup/Copy Files that are “Open” or “Locked” Using a Simple Batch Script

Backing up files is a very critical function which guarantees business continuity and recovery after an unforeseen disaster such as theft, machine malfunction, sabotage, human error or a virus infection.

There are various approaches and tools that organizations are using towards securing their data particularly what sits on individual employees’ computer hard drives.

One of the more common ones is the technique of mapping My Documents folder to a home drive that sits on a central server and then enabling Offline Synchronization.

Though this approach is highly recommended it leaves out email data i.e. PST files (Microsoft Outlook Email Format). PST files cannot be copied or synched when Microsoft Outlook is open. Usually, you’ll get an error saying the file is locked or in use.

So how does one copy or backup locked or open files? The answer is using a nifty tool called HoboCopy.    

HoboCopy support a feature called Volume Shadow Service (VSS) which enables one to copy/backup open files such as PSTs.

Following this discovery I’ve developed a simple batch file to do the job. Combine this file with Windows’ Scheduled Task feature, and you have an easy method for backing up files automatically.
  • Download HoboCopy (32 or 64bit Version) - https://github.com/candera/hobocopy/downloads
  • Copy it on the root folder e.g. C:\hobocopy
  • Copy the batch script to the root folder too e.g. C:\backupscript.bat . A sample of the script is as follows:

Other References:
http://www.howtogeek.com/howto/windows-vista/backupcopy-files-that-are-in-use-or-locked-in-windows/