For WEB application development using the. NET platform, Crystal decisions provides three more advanced report object models for developers:
1. Crystal Report Visual Studio. NET version (. NET) object model: bundled in Microsoft Visual Studio. NET and Crystal Report 9 developer and Advanced editions.
2. New Report Application Server (RAS) object model: Bundled in Crystal Report 9 developer and Advanced editions.
3. Crystal Enterprise (Crystal Enterprise) (CE) object model: Provided separately in Crystal Enterprise 9, and can also be used by the new. NET SDK.
This document is intended to compare the. NET, RAS, and CE object models, and to provide guidance on the timing of the use of each of the object models.
Directory
What is a. NET object model?
What is the report Application server object model?
What is the Crystal Enterprise object model?
Application development
Handling performance
User requests
Component Vs. Standalone server
Report components Vs. Report Server Communications
Report Creation API
Extensibility
Migrating. NET applications to RAS
What is a. NET object model?
The. NET object model is contained in the Crystal Report Visual Studio. NET Edition and Crystal Report 9 developer and Advanced editions.
The. NET object model was originally designed and developed as an integration component directly bundled into Microsoft Visual Studio. NET products. The bundling technique is based on a subset of the Crystal Report 9 features, including an integrated Report designer and a report and viewer object Model ...
Crystal Report 9, is a rich feature of the Crystal Report of Visual Studio. NET Edition upgrades, including the above. NET components and many additional new features. In addition, the. NET object model is also updated to provide many enhancements. While the focus of this article is on comparing the. NET object model with the RAS object model, we still include in Appendix A A comparison of the features of the Crystal Report Visual Studio. NET version and Crystal Report 9.
What is the report Application server object model?
Report Application Server (RAS) is a new and powerful object model. RAS is a client/server system that enables report creation, processing, and operation in a multi-tiered environment. It consists of two basic components: the RAS server and the Software Development Kit (SDK) that provides the server interface. Because RAS is designed to be two separate components, report processing can be uninstalled from the WEB server.
Figure 1: Schema Overview of the report Application server
The RAS and viewer SDK contains a number of libraries that allow you to construct a WEB report solution. These libraries can be used in your server-side code (ASP, ASPX, JSP, or Java servlets) to provide a report application server interface. In this sense, the SDK forms the client of this client/server system.
RAS provides services for designing, viewing, processing, and customizing reports. Client-created programs can use this SDK to communicate with the server. RAS is included in the Crystal Report 9 developer and advanced editions, as well as Crystal Enterprise 9.
What is the Crystal Enterprise object model?
Crystal Enterprise The 9 object model is the most advanced enterprise reporting, analysis and Web delivery object model that can be used by organizations using the. NET platform ... The Crystal Enterprise provides a robust server-side reporting platform and contains a RAS object model. Crystal Enterprises allow the organization to purchase the "split-and-use" (Out-of-the-box) platform, which is equivalent to providing the organization to the development of resources to focus on a highly customized front-end, front-end and Crystal Enterprise back-end communication. This is accomplished by regulating the Crystal Enterprise. NET SDK. Consider the following comparison: meet requirements by adding new features or enhancing existing features. All attributes must be constructed. For example, the Crystal Enterprise provides report dispatch, "Split and Use" (Out-of-the-box), so core reports can be run at any time, in any format (such as Excel, PDF, XML, Word, and so on), and delivered to any location (such as: Email account, FTP station Dots, printers, etc.).
Application development
Both the. NET object model and the RAS object model can display output in the form of a formatted report page. They can open reports, save reports, change groupings, and pass parameters, although using different syntax. However, RAS adds the ability to create and modify reports at run time, allowing users to help themselves-customizing the view of their enterprise data. It also provides the ability to extract row data from a report. This will allow you to reuse the information contained in the report. For example, you can create a worldwide sales report, plan to extract data from it, and transform the data into XML to share with partners. You can also use this principle to allow end users to search for specific data in a report and to export the results to other formats and share them with others.
The. NET object model and the RAS object model define report formatting and data connectivity, while the CE object model focuses on centralized, enterprise-wide report management. The CE object model defines how to schedule reports, how to store Report "snapshots", authorize and validate system management, and so on.
Perhaps the best way to clarify the difference between the Net,ras and the CE object model is to give a simplified chart that compares the additional features of the three object models with enhanced enterprise-level reliability.
The usual guidelines are:
The .net object model is recommended for small workgroup projects, that is, only relatively straightforward reporting requirements-for example, smaller reports, fewer user request reports, and so on. The technology is a component of an application and can be scaled with additional hardware-up through additional processors, and expanded externally via additional servers.
The RAS object model recommends the use of midsize departmental applications, that is, the need to remove report processing and/or the view that the end-user will personalize the data, which is created and modified by the runtime to implement the report.
The CE object model is recommended for mission-critical, medium to enterprise-scale applications. This type of application handles a large number of data from different data sources and presents information to the user to provide decision support. In general, a large number of reports require precise scheduling and load balancing to ensure that the enterprise's information infrastructure is not overloaded. These applications also need to deliver information to a variety of end-user devices in multiple digital formats. Security, fault tolerance, system management and auditing are critical requirements.
Handling performance
User requests
In Crystal Report 9,. NET and RAS are technically limited to accepting only three concurrent requests-for example, first page view, export, Drill-down, print, and so on. However, they are significantly different in the processing of requests. These differences can affect overall system performance and scale. In the case of the Crystal Report Visual Studio. NET Edition, requests for more than three request thresholds will be retried until either of the three pending requests completes or the browser times out. RAS, on the contrary, will queue 4th, 5th, 6th, and so on request. There is no preset time-out limit, and subsequent requests do not fail. RAS also contains, that is, out of the box, report caching to minimize redundant database polling (round-trips). This will improve server performance, as opposed to the Crystal Report Visual Studio. NET Edition components.
Note: To support unlimited user requests, you may need to purchase additional processor licenses.
Component Vs. Standalone server
. NET is a reporting component that is installed as part of a WEB program and is on top of Microsoft Internet Information Services (IIS). Since the purpose of creating a. NET report component is for a small workgroup application, customers with strong report processing requirements may experience unacceptable system throughput. The lack of queues and caching capabilities also makes the. NET reporting component unsuitable for enterprise-scale information distribution. Another variable is the CPU load of the WEB program. Because a. NET report component is part of a WEB program, it consumes the same resources as your program.
In contrast, RAS is designed for WEB design. Report processing is unloaded to a separate application layer, resulting in better overall performance. By running RAS on a stand-alone server, performance will improve because report processing is no longer subject to the application server process.
Note: Although not required, you are still recommended to run RAS on a separate server to provide better scalability and functionality between the application tiers.
On the server, RAS can also be assigned to a specific number of processors to run. This allows developers to create solutions that meet performance requirements and are the most cost-efficient solution. Because the. NET object model must be installed on a WEB server, it cannot be targeted at a specific processor. If a processor license is required, each processor that installs the application needs to be purchased.
For RAS, you can only install a copy of the developer or advanced version you have purchased. If you buy two advanced Crystal Reports, you can install two separate RAS, but you can't improve the performance of your application by linking them to the site group (Web farm)-unless you purchased a license from Crystal decisions.
For the developer or advanced version purchased, the. NET report components can be installed on multiple servers, so that you do not scale your application by linking them to the site group (Web farm) or the Web garden (web), to break the limit of 3 requests-except from Crystal DEC Isions purchased a site group (Web farm) or site garden (Web garden) license.
Report components Vs. Report Server Communications
. NET reporting components are "cumbersome." Every transaction-for example, setting parameters or fonts-will incur additional round-trip trips to the component. If the reports are complex, this can lead to inefficiencies (such as accessing large amounts of data, linking to multiple databases, executing advanced commands, and so on). Instead, the RAS buffers the request, and the batch transaction. Multiple operations are combined into a single server operation, thereby reducing efficiency losses.
Extensibility
Although it can be used as a stand-alone product, the RAS object model is still part of the Crystal Enterprise object model. This allows the developers of RAS applications to seamlessly migrate their programs in the future to take advantage of other services in the Crystal Enterprise, including:
Scheduling
User, report, and data security
Report and instance Management
Automatic clustering, load balancing, and fault tolerance
web-based System Management and configuration
Analysis and special reports (ad hoc reporting)
Automatic distribution to multiple formats and destinations
You can change the RAS program to take advantage of these additional services with minimal programming.
Instead, the. NET Report object model does not share the same object model as the Crystal Enterprise family. This means that applications designed with the. NET report component need to be fully rewritten to support the Crystal service. This is proven to be expensive and resource intensive, so organizations should consider future requirements in their current development plans.
Migrating. NET applications to RAS
Although converting an application from the. NET object model to RAS is involved in the initial work, it also gets the notable benefits outlined in this article. There are many instance applications in Www.crystaldecisions.com/devzone that can guide you through the migration process.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.