Monday, August 24, 2009
SharePoint Business Data List Connector by Layer2
Sunday, August 16, 2009
Wednesday, August 12, 2009
Site Definitions vs. Site Templates
Custom Templates
A custom template is a customization applied to a site definition. When a user customizes a site or list in the user interface, the custom template consists of the difference between the original state of the site or list as determined by its definition and the state of the site when the custom template is generated. Custom templates remain tied to a particular site definition (for example, the one for a SharePoint site or a Meeting Workspace site), so that if the site definition is not present or is changed, the custom template will not work.
A custom template is persisted as a file with an .stp extension, which is actually a .cab file that can be renamed with the .cab file extension and opened in Windows Explorer. This file includes one Manifest.xml file in Collaborative Application Markup Language (CAML) that the server generates as a subset of the Microsoft SharePoint Migration Tool (Smigrate.exe) manifest file format.
Custom templates include both list templates and site templates.
List templates contain the files, views, fields, Web Parts, and, optionally, the content that is associated with a list.
Site templates contain the same type of data as list templates, but site templates include data for the entire site. Like list templates, site templates may also include the content of the site.
Site Definitions
A site definition defines a unique type of SharePoint site. Natively installed definitions in Windows SharePoint Services include the STS type, which defines the Team Site, Blank Site, and Document Workspace configurations, and the MPS type, which defines the Basic Meeting Workspace, Blank Meeting Workspace,Decision Meeting Workspace, Social Meeting Workspace, and Multipage Meeting Workspace configurations. Each site definition emerges through a combination of multiple files that are placed in the Local_Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\ subdirectories on one or more front-end Web servers during installation of Windows SharePoint Services. Site definition files include core schema XML files, .aspx pages, document template files (.dot, .htm, and so on), and content files (.gif, .doc, and so on).
Ghosting
Site definition files are cached in memory on the server at process startup of Microsoft Internet Information Services (IIS), which improves scalability and performance by reducing unnecessary data storage or retrieval, and by allowing uncustomized pages to be reused across sites. The information contained in these files is pulled from the cache at run time. Pages and list schemas are read from the site definition files but appear to be actual files within a site, which is why these files are referred to as "ghosted." Ghosted pages are therefore pages whose actual content does not reside in the database but on disk,
When site pages are customized, excluding browser-based customizations such as modifications to Web Parts, the pages become "unghosted" and their contents are stored in the database. Windows SharePoint Services does not natively provide a means for "re-ghosting" pages.
Core Schema Files
WEBTEMP.XML specifies which configurations are available for creating sites, but this file can also be modified to hide an existing configuration from the Template Selection page. If you are creating a site definition, instead of editing the original WEBTEMP.XML file, it is required that you create a custom WEBTEMP*.XML file as described in Creating a Site Definition from an Existing Site Definition. Windows SharePoint Services merges the contents of all files that match WEBTEMP*.XML when showing available configurations on the Template Selection page. This makes it easier to install and uninstall site definitions, because their contents do not have to be merged into one WEBTEMP.XML file.
ONET.XML defines the top navigation and Quick Launch areas, specifies which list types are available on the Create Page, specifies document templates and their file types, and defines the base types for lists, which include Generic List, Document Library, Discussion Forum, Vote or Survey, and Issues List. In addition, ONET.XML defines the configurations and modules in the site definition. A configuration specifies the set of lists and modules that are included when a site is created, and a module specifies the file or files to include during site creation and the location where they are stored. For more information about configurations, see Using Configurations and Configuration. For more information about modules, see Using Modules to Add Files to a Site Definition and Module. In ONET.XML, you can reference a list that is defined in a different site definition by adding a List Template element to the List Templates section and setting its Path attribute to the name of the directory for the site definition (for example, STS).
SCHEMA.XML defines the views, forms, toolbar, and any special fields for a list type. For examples of creating or customizing list definitions, see Adding a Field to a List Definition and Creating a List Definition for a Custom List.
Pros and Cons
Customization of site definitions holds the following advantages over custom templates:
- Data is stored directly on the Web servers, so performance is typically better.
- A higher level of list customization is possible through direct editing of a SCHEMA.XML file.
- Certain kinds of customization to sites or lists require use of site definitions, such as introducing new file types, defining view styles, or modifying the drop-down Edit menu.
Site definition disadvantages include the following:
- Customization of site definition requires more effort than creating custom templates.
- It is difficult to edit a site definition after it has been deployed.
- Doing anything other than adding code can break existing sites.
- Users cannot apply a SharePoint theme through a site definition.
- Users cannot create two lists of the same type with different default content.
- Customizing site definitions requires access to the file system of the front-end Web server.
Custom templates hold the following advantages over customization of site definitions:
- Custom templates are easy to create.
- Almost anything that can be done in the user interface can be preserved in the template.
- Custom templates can be modified without affecting existing sites that have been created from the templates.
- Custom templates are easy to deploy.
Custom template disadvantages include the following:
- Custom templates are not created in a development environment.
- They are less efficient in large-scale environments.
- If the site definition on which the custom template is based does not exist on the front-end server or servers, the custom template will not work.
Tuesday, August 11, 2009
Options for moving a list or library in SharePoint 2007
Options for moving a list or library in SharePoint 2007
One problem we seem to face in SharePoint is the ability to move a list or library. There are a few ways to accomplish this.
Option 1 – Save as a template.
Pros: Available with MOSS 2007 and WSS 3.0
Cons: Time consuming, a lot of cleanup, metadata does not copy over.
Pros: Existing links to the documents will automatically be updated to new location. Metadata is retained. A nice option…when it works.
Cons: Not available with WSS 3, you must have MOSS 2007. Must have publishing features enabled. Cannot move folders within a library. Only works within the same site collection. A lot of gotchas which will not let the copy/move happen.
Option 3 – SharePoint Content Deployment Wizard (Free third party application)
Pros: Easy to use. Most robust option. Quickest option. Can be used on MOSS 2007 and WSS 3.0
Cons: Must be used on the SharePoint web server.
Option 1: Save as a template
For this example I will be using a document library, but the same will work for a list.
- When in your library, click on the Settings drop down button and select Document Library Settings.
- Click on Save document library as a template.
- Enter a descriptive file name, template name, and optional description.
- Include Content checkbox – For this example we will leave it off. The problem with this feature is that a template cannot be larger than 10 MB. If you are trying to move a list with very few entries, you might be able to check this box and move everything. You will know if it is too large because SharePoint will give you an error screen.
- Click on the OK button.
Your new template will be located in the List Template Gallery on the top level site of the site collection. This template is now avail to all sites in the site collection. You cannot restrict the template to a single site.
If you need to use this template on a different site collection, you have to move it there first.
- Go to the site settings on the top level site.
- Click on List templates in the Galleries section.
- Click on your new template title and a popup window will appear where you can save the template to your local computer.
- Once saved, go to the List templates gallery of the site collection that you want to move this template to.
- Click the Upload button
- Select the template that was saved on your local machine and click the OK button.
The template is now available to any site within the new site collection. To use this template, all you have to do is create a new library and select that template.
- Under Site Actions, select Create
- Click on the template name for the library you uploaded.
- Give the library a name and set any other options.
Your library is now identical to the original, except for the content since we were not able to move it due to the size limitation.
For a document library, open the original and new libraries in Explorer view, then drag and drop the files. For a list, open the original and new lists in Datasheet view, select all of the original data, copy it, and then paste it into the new list.
Clean-up (if you want to) – delete the template files from the gallery, delete the template file from your local machine, delete the original library.
Option 2: Move using Site Administration
For this example I will be using a document library, but the same will work for a list.
- On the destination site, create a new library with no customizations, just a basic library.
- On the source site, go to the site settings.
- Click on Content and structure in the Site Administration section.
- Browse to the original library and select all of the documents to move. Yes, I know that you can select the entire library, but for some unknown reason Microsoft does not let us move it like they should. We are stuck with item level moves until they decide to fix it.
- Once your files are selected, click on the Actions drop down button and select either Move or Copy.
- Browse to the destination library.
- Click OK.
Option 3 - SharePoint Content Deployment Wizard
- Download the latest version of the software from http://www.codeplex.com/SPDeploymentWizard
- Install the application on the SharePoint web server.
- Use it.
For instructions on how to use it, read the site you downloaded it from. I will not post it here because it could change with another version.
reference : http://www.landofsharepoint.com/2008/10/options-for-moving-list-or-library-in.html
Tuesday, August 4, 2009
Open Source Bug Tracking Software - BugTracker.Net
BugTracker.Net is an Open Source Bug Tracking Software written using ASP.NET, C#, and Microsoft SQL Server. BugTracker.Net is also known as Customer Support Issue Tracker Software.
This free bug tracker software also has Free Screen Capture Utility, The BugTracker.NET Screen Capture Utility lets you capture a screen shot, annotate it, and post it to BugTracker.NET in just a few clicks.
BugTracker.Net can also be used as an issue tracking system, ashelpdesk software for customer support tickets. Email functionality is included so email thread about a bug is tracked with the bug.
Reporting is an essential feature for any good software so Reports inBugTracker.Net can be viewed as pie, line, and bar charts.