Has EMC Documentum Lost Its Way?

March 10th, 2010 by Ed Alexander No comments »

A direct comparison between EMC Documentum and Microsoft SharePoint reveal a vast divide in both resolve and vision.

EMC will tell you that Documentum is the obvious choice for enterprise implementations managing very large data and content inventories. EMC begins in the basement (with disk and server) and provides infrastructure that content-able implementations can exploit for the end-users benefit. Documentum is first and foremost a server backend, independent of any given UI framework and can be viewed as a content aware RDBMS layer above the traditional data layer.

Microsoft developed SharePoint from the user back to the server. SharePoint is indeed an interface first and provides platform architecture designed to support the experience. Not surprisingly, the nuts and bolts of SharePoint rely on other Microsoft technology to perform. SQL server with the addition of file streams is somewhat equivalent to the EMC Documentum Content Server role. SharePoint however achieves the functionality in a single scalable layer as opposed to two in the Documentum world.

Business Logic

A few years ago EMC Documentum held the crown for providing best in class business logic integration via the Business Object Framework that allows integrators (consultants) to write and register specific Java classes to execute business specific (non-Documentum) logic triggered by library services events (save, write, lock, view, etc…). The BOF capability allowed implementations to directly extend the Documentum DFC API and is quite efficient.

SharePoint business logic is largely workflow driven and much more asynchronous in nature than the EMC BOF layer. Lately improvements in .Net and Microsoft SharePoint’s best friend K2 has begun to fully exploit the SharePoint vision and much more synchronous “composition” based business logic can be applied to event triggers specific to content type items, lists and webs in a fashion that does NOT require a heads-down programmer to create or maintain. Again, the implementation starts with the experience and the time a user spends extending SharePoint functionality is largely spent working through the consumption tool (Browser).

Documentum’s answer lies in the newish Process Engine and UI. Process Engine introduces the ability to perform no-code workflows (aka K2) that are (or at least can be) event driven and defined visually through a thick windows client. Future releases will be optimized to provide a more synchronous execution of successive automatic workflow activities and in time the functional offering will be a competitive K2 alternative. Due to the close relationship between K2 and Microsoft I don’t think we will ever see a Documentum compatible offering although this would provide great benefit to many clients.

Cloud Capability

Without doubt Microsoft SharePoint, especially 2010, is the clear leader with regard to “cloud-ability”. There is no shortage of hosting partners providing both SharePoint and Exchange in a multi-tenant environment for extremely low customer investment levels. Microsoft itself is hosting Exchange, SharePoint, Live Meeting, Communicator, and Dynamics CRM at incredible monthly per-user rates. From experience trying to offer Documentum Services in an operational model (no capital expense) to clients is an impossible challenge with regard to turning a profit. The largest stumbling block is not the sales model either (although change is needed). But rather the server architecture is not written with the cloud in mind. Microsoft on the other hand is now releasing Office/SharePoint 2010 expressly to improve (if not completely mature) the cloud model.

Virtualization is the Foggy Future

Only time will tell, but if history is a reliable forecast, EMC needs to be thinking complete rewrite. It’s time to reorganize the very good server and client functionality into a softer cloud focused architecture. As customers continue to strive to reduce operating costs the current trend to virtualize server infrastructures with VMWare and Hyper-V will move to a more cloud like implementation when we will finally let go of the server mentality. Within 3 years I would be surprised to see large companies accept new software that must be provisioned at a server layer.

Comments are Welcome…

Your LinkedIn Contacts are now in Linked In Outlook!

February 17th, 2010 by Ed Alexander No comments »

Microsoft has quietly released a new beta version of the “Outlook Social Connector”. This new outlook add-in provides connectivity with Linked-In contacts and status and is exposed through everyday tasks like email. Now making a connection on Linked-In is as easy as clicking “add to Linked-In” from an email from the contact. I can’t tell you how big a help this is for general business relationship building. EAC recommends installing the Beta in Outlook 2003, 2007 or 2010 Beta now (tested in 2010 with no issues to date).

Outlook Social Connector (LinkedIn)

Outlook Social Connector (LinkedIn)

Even if you are not interested in installing the update, you need to think about what email address you use for Linked-In. Remember that your email address will be used by your contacts to gather additional information about your business relationship such as your company profile and more. This means that if you don’t use your official business email address within Linked-In, Office Outlook will have no way to make the connection.

Download the Outlook add-in here. Expect connectors for SharePoint, Facebook and Office Live to be available soon.

Silverlight UI: Programming Exercise

February 6th, 2010 by Ed Alexander No comments »

There is a lot of talk on the web regarding Silverlight as a replacement for InfoPath in SharePoint implementations. In order to investigate the relative ease of implementation this simple Sudoku application was created in Silverlight 3 using Expression Blend and Visual Studio 2010. Four days were required with the bulk of that time consumed in a learning curve for XAML and the new development suite. Judging from the time required to generate the application EAC is now firmly in the camp that Silverlight will (should be) the most common implementation for SharePoint web parts in the future. No forms server required and Cloud (BPOS) friendly.

Note that the application can be installed locally through the context menu. EAC will be exploiting this feature in a new Expense Report application for SharePoint Online.

Play Stay Sharp Suduko

SharePoint Migrator v1.0 Released

January 13th, 2010 by Ed Alexander 1 comment »

SharePoint Migrator v1.0 allows users to create Excel based lists of metadata and file references for loading directly into existing SharePoint lists.  Migrator is designed to utilize existing SharePoint web services (_vti_bin/lists.asmx) to transport data and files allowing Migrator to function as a load tool for any SharePoint instance including SharePoint online and other cloud based SharePoint services.

The new tool can be used with either SharePoint 2007 or 2010 Beta.

For more information:

Your Name (required)

Your Email (required)

Subject

Your Message

SharePoint Access Services will Re-Shape Application Development in 2010

December 17th, 2009 by Ed Alexander No comments »

With the upcoming release of SharePoint 2010 and Access 2010 the barrier to complex application development in the SharePoint platform will be simplified to point and click. Do you remember the days when an access DB could satisfy departmental solution needs? Those days are returning in 2010 and carry significant advantages to those who opt for SharePoint Online.

Simply building out application and complex reporting in Microsoft Access 2010 will yield the ability to “release” the data model, forms, etc… into SharePoint at the click of a mouse. Stay tuned for your IT costs to be reduced!

Below is an excerpt for the Access 2010 online help entry regarding “Web Databases” (aka SharePoint Applications):


Build a database to share on the Web

 You can use Access Services, a new component of SharePoint, to build web database applications. This helps you:

  • Secure and manage access to your data
  • Share data throughout an organization, or over the Internet
  • Create database applications that don’t require Access to use

This article provides an overview of how Access Services works, and introduces you to web database design. For an introduction to desktop databse design, see the article Database design basics.

Overview

Access Services provides a platform for you to create databases that you can use on the Web. You design and publish a web database by using Access 2010 and SharePoint, and people use the web database in a Web browser.

How it works

When you publish a web database, Access Services creates a SharePoint site that contains the database. All of the database objects and data move to SharePoint lists in that site.

 Note   To build a web database, you need Designer permissions on the SharePoint site where you want to publish it. For more information about SharePoint permissions, see the See Also section.

Forms and reports run in the browser

Forms, reports, and UI macros run inside the browser. This lets Access refresh data on the screen without having to redo the whole page.

You can create a form to help people navigate your application. A new control, the Navigation control, makes it easy to add standard Web-style navigation buttons to a form for this purpose.

 Note   The Navigation Pane (the feature that you use in Access to browse the objects in a database) is not available in a Web browser.

Data is stored in SharePoint lists

All of your tables become SharePoint lists, and records become list items. This lets you use SharePoint permissions to control access to your web database.

Queries and data macros run on the server

All SQL processing happens on the server. This helps improve network performance by limiting traffic to result sets.

Share on the Internet

You can use SharePoint Online to publish your web database to the Internet. SharePoint Online is an Internet-facing SharePoint deployment, hosted by Microsoft. For more information, see the See Also section.

 Note   This service is not available during beta.

Create a web database

This section describes key new features and provides steps for the basic design tasks you need to complete to create a web database.

Before you begin

There are a few tasks that you should perform before you start to design your web database. Moreover, there are design differences between web databases and desktop databases that you should know about, espcially if you are an experienced Access developer.

  • Determine the purpose of your database   Have a clear plan so you can make good decisions when working out design details.
  • Find and organize the information required   If you line up your data before you start designing, you can avoid having to refit your design to accommodate unexpected data challenges.
  • Identify the SharePoint site you will use to publish   You cannot publish at all without SharePoint. If you want to test your design in a browser while you design it (not a bad idea), you have to publish it first.
  • Plan your security   You can take advantage of SharePoint security to control access to your web database. Plan security early so you can build it into your design.

Design differences between desktop and web databases

Some database features that you can use in a desktop database are not available with Access Services. However, there are new features that support many of the same scenarios as these desktop-only features. If you are used to using one of these features, you should familiarize yourself with the ways these new features work.

The following table lists the desktop-only features, and the new feature that helps support the same scenario.

Scenario Desktop-only feature New feature
Designing database objects Design view Enhanced Datasheet view; Layout view
Reviewing summarized data, such as sums, averages, and groups Group functions Data macros
Programming events VBA Data macros; New macro design experience with Intellisense
Looking up a record and display it in a report Lookups  
Navigate to a database object Navigation Pane Navigation control or other form element
     

Desktop-only features with no Access Services counterpart

  • Union queries
  • Crosstab queries
  • Overlapping controls on forms
  • Table relationships
  • Conditional formatting
  • Various macro actions and expressions

 Note   You can create many client objects in a Web database, but you cannot use them in a browser. however, they are part of the Web database and can be used in Access 2010 on the desktop. People can open the Web database in Access, and then use the client objects. This is an effective way to share a database, and also opens new opportunities for working together over the Web. SharePoint handles any concurrency issues.

Consider using a template

When you have determined what your application must do, consider whether a database template would work. Database templates are pre-built applications that you can use as-is or modify to suit your particular needs.

You can review the available templates from the New place in Backstage view. For more information about the templates that come with Access 2010, see the article Introduction to the Access 2010 templates.

Get started with a blank web database

  • Click the File tab, and then click New.

The New tab in Backstage view

The File tab opens Backstage view, a new part of the Access interface where you’ll find commands that apply to an entire database, such as Publish to SharePoint. When Backstage view is displayed, the File tab label changes to Back.

In Backstage view, the New tab has commands for creating a database.

The features of the New tab in Backstage view

Callout 1 Under Available Templates, click Blank Web Database.
Callout 2 Review the proposed file name in the File Name box, and the path for the database file, listed just below. You can change the file name by typing in the File Name box.
Callout 3 To change the path, click the folder icon next to the File Name box to browse for a location to put your database file.
Callout 4 Click Create. Your new web database opens and displays a new empty table.

Design a Web table

 Note   You use Datasheet view to design a Web table.

When you first create a blank web database, Access creates a new table and opens it in Datasheet view.

A new Web table

After you modify and use the new table, you’ll most likely want to create more tables.

Create a new Web table

With your web database open:

  • On the Create tab, in the Tables group, click Table.

When you first create a table, it has one field: an AutoNumber(AutoNumber data type: In a Microsoft Access database, a field data type that automatically stores a unique number for each record as it’s added to a table. Three kinds of numbers can be generated: sequential, random, and Replication ID.) ID field. You can add new fields to store the items of information required by the table subject. For example, you might want to add a field that stores the date you begin tracking something.

Add a field from the field gallery

You can choose from a variety of preformatted fields and add them to your table by using the field gallery.

  1. On the Modify Fields tab, click Fields & Columns.
  2. Click Add Field, and then choose the field that you want.

Add a field by typing a field name

  1. With the table open, double-click Add New Field, and then type a name for the field.
  2. Repeat for each field that you want to create.

Change field properties

When you create a new field by typing a field name, Access applies default formatting and properties to the field, such as assigning the text (text data type: In an Access project, a variable-length data type that can hold a maximum of 2^31 – 1 (2,147,483,647) characters; default length is 16.) data type. Formatting and properties determine how a field behaves, such as what kind of data it can store. You can change these settings so that the field behaves the way that you want.

  1. Select the field that has formatting and properties that you want to set.
  2. On the ribbon, click the Modify Fields tab.
  3. Use the commands in the Formatting and Properties groups to change the settings.

Add a calculated field

You can add a field that displays a value that is calculated from other data in the same table. Data from other tables cannot be used as the source for the calculated data. Some expressions are not supported by calculated fields.

  1. Select a new, empty field.
  2. On the ribbon, click the Modify Fields tab.
  3. In the Fields & Categories group, click Calculated Field.

The Expression Builder opens.

  1. Use the Expression Builder to create the calculation for the field. Remember that you can only use other fields from the same table as data sources for the calculation. For Help using the Expression Builder, see the article Use the Expression Builder.

Set up data validation rules

You can use an expression to validate input for most fields. You can also use an expression to validate input for a table, which can be handy if you want to validate input for a field that does not support validation, or if you want to validate field input based on the value of a different field.

You can also specify the message that is displayed when a validation rule prevents input, known as a validation message.

Set up a field validation rule and message

  1. Select the field to which you want to add a validation rule.
  2. On the ribbon, click the Modify Fields tab.
  3. In the Validation group, click Field Validation, and then click Validation Rule.

The Expression Builder opens.

  1. Use the Expression Builder to create your validation rule. For Help using the Expression Builder, see the article Use the Expression Builder.
  2. In the Validation group, click Field Validation, and then click Validation Message.
  3. Type the message that you want to display when input data is not valid, and then click OK.

Set up a table validation rule and message

  1. Open the table to which you want to add a validation rule.
  2. On the ribbon, click the Modify Fields tab.
  3. In the Validation group, click Table Validation, and then click Validation Rule.

The Expression Builder opens.

  1. Use the Expression Builder to create your validation rule. For Help using the Expression Builder, see the article Use the Expression Builder.
  2. In the Validation group, click Table Validation, and then click Validation Message.
  3. Type the message that you want to display when input data is not valid, and then click OK.

Create a relationship between two Web tables

To create a relationship in a web database, you use the lookup wizard to create a lookup field. The lookup field goes in the table that is on the many- side of the relationship, and points to the table that is on the one- side of the relationship.

Maintain data integrity by using data macros

You can implement cascade updates and deletes by using data macros.

Create a Web query

You can use a query as the data source for forms and reports. Queries run on the server, helping minimize network traffic.

For example, suppose you use a Web database to track charitable contributions. You want to see who donated money while an event was occuring. You could use a query to select the data and prepare it for use in forms and reports.

 Note   This procedure uses the charitable contributions template as an example. You can follow along if you create a new database by using the charitable contributions database template.

  1. On the Create tab, in the Other group, click Web Query.
  2. In the Show Table dialog box, double-click each table that you want to include, and then click Close.

In this example, double-click Constituents, Donations, Events, and EventAttendees.

  1. Create any required joins by dragging fields from one object to another in the query design window.

In this example, drag the ID field from Constitutents to the DonorConstituentID field in Donations, and then drag the DonorConstituentID field from Donations to the ConstituentID field in EventAttendees.

  1. Add the fields that you want to use. You can drag the fields to the grid, or you can double-click a field to add it.

In this example, add Event from the table Events, DonationDate from the table Donations, and Greeting, FirstName, and LastName from the table Constituents.

  1. Add any criteria that you want to apply.

In this example, you want to limit DonationDate so that it falls between the StartDate and EndDate of the event. In the query design grid, in the Criteriarow under DonationDate, type >=[StartDate] And <=[EndDate].

Create a Web form

Forms are the main way to enter and edit data in your Web database, and are also useful for reviewing data. Forms run in the browser, helping optimize performance. When you open a form, your browser gets the required data from the SharePoint server. You can filter and sort the data in the form without needing to get data from the server again.

 Tip   For best performance, limit the records retrieved by your main forms and reports.

  1. Select a table or query to use as a data source.

 Note   If you want to create an unbound form, skip ths step.

  1. On the Create tab, in the Forms group, click one of the following buttons:
    • Form   Create a simple form that shows one record at a time, using the object you selected as a data source.

 Note   If you are creating an unbound form, this button is not available.

  • Multiple items   Create a form that shows multiple records at a time, using the object you selected as a data source.

 Note   If you are creating an unbound form, this button is not available.

  • Blank form   Create a form that has nothing on it.
  • Datasheet   Create a form that looks and behaves like a datasheet, using the object you selected as a data source.

 Note   If you are creating an unbound form, this button is not available.

Create a Web report

Reports are the main way to review or print data from your Web database. Reports run in the browser, helping optimize performance. When you open a report, your browser gets the required data from the SharePoint server. You can filter and sort data in the report without needing to get data from the server again.

 Tip   For best performance, limit the records retrieved by your main forms and reports.

  1. Select a table or query to use as a data source.
  2. On the Create tab, in the Reports group, click one of the following buttons:
    • Report   Create a basic report using the object you selected as a data source.
    • Blank Report   Create a report that has nothing on it.

Create a Navigation form

People need a way to navigate your application. Remember — the Navigation Pane is not available in a Web browser. For people to use your database objects, you must provide them a means. You can create a Navigation form and specify that it be displayed whenever someone opens your application in a Web browser.

 Tip   You may want to wait until last to create your Navigation form, so you can add all your objects to the form when you create it.

  1. On the ribbon, click the Create tab.
  2. In the Forms group, click Navigation, and then select a navigation layout from the list.
  3. To add an item, drag it from the Navigation Pane to the Navigation control.

 Note   You can only add forms and reports to a Navigation control.

  1. Add any other controls that you want to the body of the Navigation form. For example, you might want to provide search functionality across all forms by adding a few controls to your Navigation form.

Publish and synchronize changes to your application

Before you publish a Web database, consider running the Compatibility Checker. The Compatibility Checker examines your database objects for issues that would prevent them from publishing correctly. If no issues emerge, the Compatibility Checker reports that your database is Web-compatible. If problems are discovered, the Compatibility Checker creates a table that lists the issues.

  1. Click the File tab.
  2. Under Information about database_name, click Run Compatibility Checker.

Run Compatibility Checker button

Publish a Web database

  1. Click the File tab, and then click Share.
  2. Under Special locations, click Publish to SharePoint.
  3. In the middle of the tab, under Publish to SharePoint, fill in the following:
    • In the Web Locationbox, type the Web address of the SharePoint server where you want to publish your database. For example, http://Contoso/.
    • In the Web Application Name box, type a name for your Web database. This name will be appended to the Web Location to produce the URL for your application.

For example, if the Web Location is http://Contoso/ and the Web Application Name is CustomerService, the URL is http://Contoso/CustomerService.

  1. Click Publish to SharePoint.

Synchronize a Web database

After you make design changes or take a database offline, you eventually want to synchronize. Synchronizing resolves differences between the database file on your computer and the Web application on the SharePoint server.

  1. Open the Web database in Access.
  2. Click the File tab, and then click Synchronize.
  

 

Microsoft Online Services General Manager Discusses BPOS

December 10th, 2009 by Ed Alexander No comments »

Bharat Shah is the General Manager of the Microsoft Online Services Engineering division and is responsible for providing Microsoft’s business productivity software in the cloud. The video bellow is from Microsoft Channel 9 and discusses the BPOS engineering work that is ongoing.


Get Microsoft Silverlight

Improve Your Business with EAC and Microsoft BPOS

November 25th, 2009 by Ed Alexander No comments »

EAC is now offering Microsoft Business Productivity Online Suite and related services. Sign up for a free trial or contact EAC for more information here.

Office 2010 Family Betas are Released

November 17th, 2009 by Ed No comments »

Microsoft released beta packages yesterday for both SharePoint and Office 2010 (Office 14) to TechNet and MSDN. This version of the SharePoint server makes significant progress towards blurring the line between on-premise and hosted cloud implementations (internal or external) as well as large additions and improvements to collaboration and integration capabilities. With that said, I fully expect SharePoint 2010 to be as game changing as the release of MOSS 2007 as the industry moves to consolidate IT technologies and cut costs out of the infrastructure and headcount.

I will be installing the new code today in a lab environment and will report back with my take. If you need assistance in evaluating the new release please use our “Contact EAC” page to request support.

SharePoint Online 2010 Standard is Evolutionary

November 14th, 2009 by Ed Alexander No comments »

Microsoft follows a now familiar pattern with evolving technologies. Initial product releases are simplistic and target core functionality only. As the business model and market needs are discovered major releases transform the product into a power player. SharePoint has followed this recipe to a tee and the 2010 release should be considered the first highly mature composition (no-code) web based framework capable of supporting most enterprises in a cloud based model. Watch Steve Ballmer discuss the future of SharePoint 2010:

(More video available here.)
As I have just moved my own company infrastructure onto Microsoft’s full Business Productivity Online Suite (BPOS), I will be posting regarding our experiences in making the transition to cloud based SharePoint, Exchange, LiveMeeting and Communicator. I can say now that the pending release of 2010 has me focusing our business plan to help clients leverage a very capable, cost effective solution that should help remove IT complexity from non-IT businesses.

Microsoft Adds Cross-Platform Support for Team Foundation Server

November 10th, 2009 by Ed No comments »

With the announcement yesterday (11/9/2009) that Teamprise tools from SourceGearLLC, were acquired and will be an integral part of Visual Studio 2010 Microsoft now officially supports non-Microsoft OS and development tool integrations with Team Foundation Server. Could this pave the way for more development houses to run projects without CVS and the like? I sure hope so.

Microsoft full press release is here.

Additional Microsoft developer interoperability information can be found at http://www.microsoft.com/interop.

Get Adobe Flash playerPlugin by wpburn.com wordpress themes