Patent ID: 7634724

Claim:
A computer readable storage medium bearing instructions for generating a report, comprising: instructions for generating at least one report according to a custom layout, said instructions comprising: instructions for reading a report definition file, wherein the report definition file defines a graphical representation of a report; instructions for providing a plurality of software objects, each of the plurality of software objects for generating a plurality of graphical features for reports, each of the plurality of software objects being a discrete unit of software implemented using object oriented techniques; instructions for providing an interface that allows an external third party software process to access the plurality of objects; instruction for receiving via the interface a request from the external third party software process to operate a first of the plurality of objects on the report definition file to revise the graphical representation of a report and in response to the request from the external third party software process creating an instance of the first of the plurality of objects to handle the request; instructions for receiving via the interface a request from the external third party software process to operate a second of the plurality of objects on the report definition file to revise the graphical representation of a report and in response to the request from the external third party software process creating an instance of the second of the plurality of objects to handle the request; and instructions for performing initial processing on said report definition file, wherein initial processing occurs prior to processing by said external third party process, and wherein said initial processing enforces a set of criteria for the report definition file.