MicrosoftSQLReport Service Research
About the last releaseAnalysis of the domestic report designerMany readers have said that Microsoft's report service is missing. After some time of supplementary learning, I will give a brief introduction to my research. I am a beginner and may have incorrect ideas, I hope you will not be enlightened.
Microsoft report service is a new product backed by powerful Microsoft andSqlserverIn the report market, servers are surging. First, I entered Microsoft'sMsdnNetwork Library Msdn library> servers and enterprise development> SQL Server> Reporting ServicesUnder the directory, this is the report service user manual, I am not good at English, barely read several of its introductionsArticleAnd cannot be viewed in the future. I also downloaded the report service evaluation version and downloaded and installed the client. Because of its server needsSqlserver2000spa, My machine only hasMsde2000Unable to install the server. Besides, I am currently interested in the report designer and report principles, so I have not installed the server.Program.
The entire report service concept is huge, covering the entire report lifecycle, including report design, security, management, and operation. Here, we will focus on the running principle of the Report and the report designer.
In actual production, the report service system needs to configure a reportWebServer, set the report definition file and database connection, and then you canIEEnter the report page in the address barURLTherefore, the report service is purelyWebThe report solution is very suitableB/SSystem. But I do not know howC/SUse the report service in the system.
The report definition file is a file with the extensionRDLOfXMLDocumentation. It stores the style definition of the report and the definition of the data source, which is defined by Microsoft itself to describe the report definition.XMLThe structure of the document is public. Therefore, a third-party vendor can compile a report designer compatible with the report service. Microsoft uses its ownVs. netIntegrated development environment to design reports, I believe most people still useVs. netTo design reports.
the report designer provided by Microsoft is based on .. Net . Therefore, to design a report, you must install expensive .. Net integrated development environment, which limits the wide application of the report designer. In fact, using piracy in private is no risk. If the company uses piracy in large quantities, Microsoft will come to the door sooner or later. Microsoft's software has always been easy to use, and its report designer is also quite professional. It adopts the drag-and-drop control design mode, however, the table is edited in a way similar to Excel . The report designer currently supports text boxes, lines, tables, matrices, rectangles, lists, images, subreports, and charts. It seems that bar code is not supported. The text box does not support line spacing or Character spacing. However, all attributes of a report Element support expressions. A matrix is actually a cross Report, which is the basis for processing complex Chinese-style reports, but it is unclear how to use it.
the program file of the report designer is installed in C: \ Program Files \ Microsoft SQL Server \ 80 \ tools \ report designer , where Microsoft. reportingservices. designer. DLL is the main program of the report designer. Use reflector to view its decompilation Code , in fact, all the report elements are one by one Windows controls, this is the same as elastic express xtrareports . Using the Windows Control in the report designer to implement page elements may have performance problems. As we all know, the Windows Control consumes a lot of system resources, because it involves a heavyweight handle such as a form handle. When the report is complex and contains hundreds of page elements, the report designer needs to dynamically load hundreds of controls, so the start and operation are slow, it also occupies a large amount of memory (I have done this before and have some experience ). Similar report tools such as fastreport in Russia draw report elements by themselves, loading and editing complex reports is not slow.
In terms of data source definitionRDLOfXMLStyle definition. A report has severalDataset,DatasetThe node providesQuery, Which definesSQLStatement,DatasetSeveral fields are also provided.QueryOfSQLThe fields in the query result correspond one to one. In my opinionDatasetActually, only a two-dimensional table from the database is defined. Multiple tables can be defined in one report.DatasetI can't guess how to deal with these two-dimensional tables when they are associated. I think the report service is similar to other reporting tools and is based onSQLThe data source structure is two layers. This is reflected in the data source design operations of the report designer. Its data source design interface is actuallySQLThe query designer returnsSQLQuery statement, including commonSQLQuery statements, table queries, and stored procedures.SQLThe query statement execution result must be a two-dimensional table.
The report designer uses drag-and-drop operations to simplify data source binding. Generally, a field form is next to it, listing allDataset. Drag a field to a report page element. If the page element is a text box, set its text value to bind it to the specified field, otherwise, a text box is added at the drag position and bound to the specified field.
Well, this beginner knows so much about it and will have to learn more in the future.