Patent ID: 7657552

Claim:
A method of report processing implemented at least in part by a computing device, the method comprising: (a) receiving a report definition having ordered sets of parameters, data sets and at least one data source, and receiving metadata related to each of the parameters, the metadata describing the relationship among the ordered sets of parameters, wherein the ordered sets of parameters comprise report parameters and query parameters; (b) receiving a plurality of values for a set of parameters in one of the ordered sets; (c) determining a set of dependencies of a subsequent narrowing set of report parameters and selecting report parameters having no unresolved dependencies on other parameters such that each selected report parameter in the subsequent set has at least one allowable value or is dependent on another report parameter having at least one allowable value; (d) generating, by the report server, a set of selectable values for the subsequent narrowing set of report parameters from which a user makes a selection, the generating responsive to submission of the report parameters selected as having no unresolved dependencies as query parameters in the report definition; (e) receiving a user selection identifying a value from among the selectable values of the set of report parameters which was generated; (f) repeating (a) through (e) until all parameter values have been specified for each set of report parameters of the set of dependencies; and (g) executing a report by a report server and accessing the at least one datasource by one or more queries based on the report definition, the plurality of values received, data sets, and the value or values identified by the user selection or selections, after all the parameter values have been specified for each set of report parameters, where report parameters provide values to respective query parameters, and ordering the report based on the plurality of values received.