1. A computer-implemented method for designing a new report template and running a new report comprising: (i) displaying, via a client computer device and a data generator component of a graphical user interface, a plurality of data category fields each associated with a data category to be used in designing a new report template; (ii) receiving, via the client computer device and a data generator component of a graphical user interface, a selection of one or more data categories to be used in designing the new report template, wherein each data category field corresponding to the selected one or more data categories enables the selection of one or more data retrieval parameters, wherein each data category is associated with a data accessor for retrieving data from one or more enterprise databases, and wherein each data accessor targets for retrieval data associated with its corresponding data category, whereby a user designing the new report template need not know the underlying data structure of the one or more enterprise databases; (iii) receiving, by one or more computer devices comprising at least one processor and an operatively associated computer readable medium, in response to a data retrieval request initiated via the graphical user interface, selected data retrieval parameter values; (iv) invoking the data accessors associated with the data categories, retrieving data from the one or more enterprise databases based on the selected data retrieval parameter values and storing the retrieved data in a staging database, wherein the data structure of the staging database comprises a plurality of staging tables corresponding to the data categories and a controller table, wherein the retrieved data for a given data retrieval request is stored as a plurality of records in the staging tables that are linked by a unique key assigned by the one or more computer devices; (v) designing the new report template, where designing the new report template comprises, via the client computer device, a report designer component of the graphical user interface, and a report designer application: (a) receiving a selection of report fields for the new report template, (b) receiving a selection of report parameters for refining data selection for the new report template, and (c) accessing and displaying the retrieved data from the staging tables, whereby the user is enabled to design the new report template; (vi) storing the new report template in a report repository, wherein the stored new report template does not include the data retrieved by the accessors and used to design the new report template; (vii) linking, via the client computer device and a report deployment component of the graphical user interface, a selected report template with data accessors previously used to retrieve data during the new template design process, and triggering the storing of metadata for the selected report template in a reports metadata database; (viii) generating a new report based on data retrieved from the reports metadata database, wherein generating further comprises the steps of, via said client computer device and a run report component of the graphical user interface: specifying the report template for the new report to be run, specifying parameter values for the new report, and retrieving data for the new report based on the data accessors linked to the specified report template.