Saturday, October 18, 2008

Do you think that you know how to deliver reports over the web? Think again!

It"s amazing on the other hand although reports are the essential part of any business application, nowadays there is no simple, convenient, safe and universal road of distributing reports over the web. I know that many developers don"t accord with this statement. Ok, let"s analyze the difference between client and web reporting solutions. Today"s desktop applications provide representation of reports (as well as of any other print documents) on display that exactly corresponds to print output according to WYSIWYG concept. At the same day applications provide high reports interactivity starting from simple functions such as zoom, search, hyperlinks, bookmarks, and switch of preview mode to sophisticated scenarios specific for a particular application. The only method to provide all these features in a web browser is to implement such software components as ActiveX or Java Applet into the page. The operate of such solutions is inappropriate in most cases despite they a
re extremely functional, as they don"t location cross-platform requirements and don"t provide the necessary level of security, i.e. they are not true web applications. All other approaches embrace conversion of the initial print report to some other format; it leads to the corruption of initial document. Two solutions are wide spread and very often are used in tandem. They are representation of reports as HTML documents and conversion to one of the popular formats used to view print documents. Let"s analyze advantages and disadvantages of both solutions. When you view complex reports via HTML, significant corruption of the previewed document is inevitable. Moreover, the format itself is not designed to represent print documents: one and the same document is displayed differently in different browsers. If the font used in the report is not installed on the user personal computer or when the installed font differs from the one on the server, then you should just forget a
bout visual equivalence of the documents. Unavailability of support for vector graphic makes it necessary to convert any design element to bitmap image (except for the vertical and horizontal lines emulated by the rectangle borders). It results in large volumes of facts passed through the net and low print quality. Though report viewers provide virtually all morals features, they are far from being perfect. For example, when you zoom inout document, additional request to the server is executed and the document is rendered from scratch for a virgin size. It causes significant delay, overloads server and very often the zoomed document looks different. And what if the application should perform some specific actions when the report is viewed? No difficulty - just application JavaScript. In this example the developer is required: "Just" to know one more programming language; "Just" to learn object model of the client viewer, that is conceptually different form the server
model; "Just" to inscribe code in two languages (one to record server application and JavaScript) with absolutely different syntax and development principles; "Just" to debug the code written in dynamically typed language; and it takes much more hour then to debug the statically typed language; "Just" to trial the application under all existing browsers and find outside why one and the same code snippet works differently in different systems. Summarizing all aforesaid, conversion of reports to one of print document formats is a more preferable solution. One of the most popular print formats is PDF that is an acknowledged standard. Some other formats are also used: they are a promising XPS format, RTF and Microsoft Word. Evident advantage of PDF is that it is likely to get almost complete visual equivalence with the original document. "Almost", as there slight differences in algorithms of positioning and displaying characters. PDF viewers are available virtually for al
l platforms and provide all necessary functions. Significant disadvantage is that PDF documents are opened in a separate viewer and are elsewhere of the application. So, application developer is not able to control document preview and doesn"t have the ability to perform additional actions. The reviewed solutions are satisfactory, nevertheless they don"t lodging today"s requirements to Rich Internet Applications (RIA). Fortunately, duration changes and evolves and software vendors offer recent technologies to design web applications. The most promising platform for RIAs is Silverlight 2.0 by Microsoft. For more counsel on Silverlight, please, visit official Silverlight website (http://www.silverlight.net) and view article: http://www.perpetuumsoft.com/Product.aspx? lang=en&pid=41&tid=whysilverlight Full text: http://computerandtechnologies.com/computers-and-technology/news_2008-10-18-20-00-04-221.html

No comments: