Wouldn’t it be awesome if PHP developers building reporting applications could use the wider range of ready-to-use tools and services to create, deploy, and manage their reports. Today the SQL Server Reporting Services SDK for PHP turns that scenario into a simple reality enabling PHP developers to easily create reports and integrate them in their web applications.

I’m excited to announce that the first version of the SQL Server Reporting Services SDK for PHP is available today on Codeplex, as an open source project: http://ssrsphp.codeplex.com.

This SDK enables PHP applications to simply utilize SQL Server Reporting Services, Microsoft’s Reporting and Business Intelligence solution. Best of all, these scenarios can be done using the free (as in “free beer”!) SQL Server 2008 Express with Advanced Services edition. This edition includes the SQL Server 2008 Express database engine as well as graphical administration tools and the Reporting Services server components for creating, managing, and deploying tabular, matrix, graphical, and free-form reports (SQL Server 2008 Express Advanced can be downloaded here).

SQL Server Reporting Services SDK for PHP in a nutshell

The SDK offers a simple Application Programming Interface (API) to interoperate with SQL Server Reporting Services. The API provides simple methods to perform the most common operations:

list available reports within a PHP applications,

provide custom parameters from a PHP web form,

manage the rendering of the reports within a PHP application.

The API is built on top of the SQL Server Reporting Services Web Service API using SOAP as the underlying communication mechanism. PHP applications can then manage reports, parameters, credentials, and output formats with SQL Server 2008 Reporting Services.

The design of the report is created with Business Intelligence Development Studio which comes with SQL Server 2008 Express with Advanced Services. Developers can alter the style of the output formats to fit their needs.

a linked server feature to allow your application to connect to a data source by creating views pointing to the original database.

importing of data so you can extract data from the original datasource and import it into the SQL Server Express instance.

The Hello World demo scenario

Using the SQL Server Reporting Services SDK for PHP, we’ve created a simple scenario showcasing how to manage reports within a PHP application. This sample is part of the package that you download from the project site.

The application displays first the list of reports that are available:

Once the user picks a report, he can select parameters which have been predefined for the report, for example:

For the developer, it’s fairly simple to build such form. It requires only to call the “GetReportParameters” method provided by the SDK and then parse the result and associate the appropriate HTML controls. Here’s a snippet (the full Hello World demo is part of the SDK download):

Finally, when the user validates its choices, the report is generated on the server side and returned to the PHP applications, which does the final processing to display the information in the context of the application. Here the HTML output for our sample report:

Join the conversation

Today, I’m actually presenting the SDK at the Jump In! Developer Web Camp event underway in Zurich. I’m sure I’ll get a lot comments from the PHP experts attending, But what about you: does the SQL Server Reporting Services SDK for PHP respond to your scenarios? Of course, feedback is welcome!

Hi, I’m Ashay Chaudhary, Program Manager at Microsoft. Today at DrupalCon SF 2010, we are reaching an important milestone by releasing a Community Technology Preview (CTP) of the new SQL Server Driver for PHP 2.0, which includes support for PHP Data Objects (PDO). Alongside our efforts, the Commerce Guys, a company providing ecommerce solutions with Drupal, is also presenting a beta version of Drupal 7 running on SQL Server using this new PDO Application Programming Interfaces (API) in the SQL Server Driver for PHP 2.0.

The SQL Server Driver for PHP 2.0 with PDOwill enable popular PHP applications like Drupal 7 to use the PDO “PHP style” and interoperate smoothly with Microsoft’s SQL Server database.

My team and I have been working hard over the past months to introduce PDO into the existing SQL Server Driver for PHP. The decision to add PDO was a direct result of the feedback we received from the PHP community.

The new version now supports the API defined by PDO. Of course, we continue to maintain the existing SQL Server native API. To provide better support and consistency for both API, we are creating a common layer including the core features shared across the two API, as shown on the architecture diagram below:

The SQL Server Driver for PHP 2.0 CTP is available for download at the Microsoft Download Center (installation through Web PI available as well: http://www.microsoft.com/web/drupal/). Don’t be surprised if you don’t find the source yet, we have packaged only the binaries for now. Rest assured that the SQL Server Driver for PHP 2.0 will be available as a shared source project (like current version 1.1) in our next public release. We expect the final version in the second half of this year. Stay tuned!

Putting the SQL Server Driver for PHP 2.0 to the test of real world applications is a key aspect of our development process. We started a discussion with the Commerce Guys (a company providing ecommerce solutions with Drupal) who were interested in porting the upcoming version 7 of Drupal to SQL Server, and quickly realized we had a great opportunity to partner with the Drupal community. So Microsoft provided some funding and initial support through technical specifications and early builds of the driver for Commerce Guys, in order for them to independently develop updates to the code for a contributed module for Drupal 7. After initial success with Drupal 7 working with SQL Server, Commerce Guys disclosed that the Views module, one of the most popular contributed modules for Drupal, also works well with SQL Server.

Microsoft is very excited about this new milestone and the early success we’ve seen with Drupal 7. Having reached this important milestone, we are not done yet and continue to polish it up. We plan to ship CTPs on a regular basis, so stay tuned!

Microsoft has just released the source code of the .NET Framework Client Libraries for OData. The source code is under the Apache 2.0 license and available for download on Codeplex: http://odata.codeplex.com

“This release represents the OData team’s continued commitment to the OData protocol and the ecosystem that has been built around it. We have had requests for assistance in building new client libraries for the OData protocol and we are releasing the source for the .NET Framework and Silverlight client libraries to assist in that process”

This new contribution goes along with the many other OData libraries (like Java, PHP, iPhone) that we’ve released and also strengthens our commitment to enable Data interoperability through the OData protocol.

This week I was at SugarCon 2010, the CRM conference. SugarCRM, one of my partners in the Interop Vendor Alliance (IVA), is a leading provider of open source customer relationship management (CRM) software. SugarCon, is its global customer, partner and developer conference held April 12-14, at The Palace Hotel in San Francisco, California. Microsoft along with Red Hat, Talend and Zend helped sponsor the conference. The event had a heavy cloud theme this year and the tagline “The Cloud is Open” was used.

SugarCRM has over 6,000 customers and more than half a million users rely on SugarCRM to execute marketing programs, grow sales, retain customers and create custom business applications. There was quite a different mix of people from business to technical there, about 800 attendees or so. There was a good vibe to the show and it had a focus on the attendees and partners. There was lots of interest in different topics; CRM, Social Networking, Open Source, Cloud Computing; private and public … and Microsoft’s presence at the event …. which brings me to why we were there …

The keynote “Open Source and Open Clouds” was presented by SugarCRM CEO Larry Augustin who shared new product announcements and welcomed special guests to the stage to discuss how open source software is driving the next generation of CRM and Cloud services. Rob Craft, Microsoft’s Senior Director, Cloud ISV was one of the guest joining Augustin on stage. Craft shared with attendees how Microsoft is investing strongly in cloud services. “This is a deep, substantive long term investment from Microsoft,” he said. He shared the global presence Azure, being run from six datacenters in San Antonio, Chicago, Dublin, Amsterdam, Singapore and Hong Kong, with other datacenters coming ready too. Microsoft is guaranteeing 99.9 percent uptime for Azure, with customers getting a 10 percent rebate if this falls to over 99 percent uptime or 25 percent if it falls below that figure.

Larry then went on to demonstrate a beta of SugarCRM, a PHP application, running on Windows Azure and calling data from SQL Azure. Dan Moore, Sr. Platform Strategy Advisor, and Bhushan Nene, Principal Architect, from the Cloud ISV Team gave a follow-up session, “Introducing the Windows Azure Platform”, to the keynote with an overview of the benefits of launching cloud applications on Azure. We saw excitement from the conversations we had with several SugarCRM channel partners who attended the sessions and stopped by the booth. The Windows Azure platform is receiving enormous support and excitement throughout their ecosystem!

Along with the keynote and session, we had a booth in the exhibition area which saw quite a bit of traffic as well as a Microsoft Cloud Room where we discussed various benefits to the the Windows Azure platform and interoperating with Microsoft technologies. At the room I presented a session on “Data Tools for Microsoft and SugarCRM” where I showed our new interoperability bridge, SQL Server Reporting Services SDK for PHP: adding business intelligence and reporting features to PHP applications, and showing off an early preview of an IVA lab we will be releasing soon. This lab basically is a demonstration of SugarCRM data being called by SSRS reports using the PHP SDK and displaying results in the SugarCRM reports dashboard. The power of composing rich reports from SugarCRM data plus using the freely available SQL Server Express advanced services from Business Intelligence Studio or Visual Studio is a powerful combination. The picture below gives a glimpse of the demonstration in action. Look out for an announce on this blog shortly!

Other notable highlights of the event …

“A Family Tree for Humanity” where author and population geneticist, Spencer Wells of National Geographic will take us on an epic journey that spans the globe, using DNA to trace the migration routes of our ancient ancestors and revealing the incredible tapestry of human diversity created along the way. I found the science behind it and the presentation fascinating. I would recommend taking a look at the Genographic project.

Best of all, the SugarCon party on day one was an evening at the acclaimed California Academy of Sciences in Golden Gate Park. If you are a geek and one who loves biology this is a must see destination. We got to wine, dine and party there, a huge plus!

I would like to thank my friends from SugarCRM for welcoming us, especially Jason Nassi, Sr. Director of Product Management, who is my liaison from SugarCRM to the IVA; and Igor Spivak, Director of Product Management, Cloud Services for letting me use the live SugarCRM SQL Azure in my session demo. Thank you guys! I’m looking forward to more great interoperability stories we can tell together.

The Content Management Interoperability Services (CMIS) specification defines a means of accessing enterprise content management (ECM) repositories independent of their platform or language. CMIS is on its way right now to OASIS for advancement through its rigorous standards development process. Microsoft, along with IBM, EMC and several other content management vendors developed the specification in response to customer requests for interoperability between multiple document repositories.