1. A method of producing a business report from data contained in a computer based business intelligence system, the method comprising: defining one or more macro functions to prompt for user inputs and accept the user inputs during execution of the one or more macro functions; producing a report layout containing one or more macrotized database language expressions, the one or more macrotized database language expressions having at least one of the macro functions and one or more partial expressions; producing, by a computer, one or more valid database language expressions for a database query by at least modifying the one or more macrotized database language expressions of the report layout, wherein the one or more macrotized database language expressions are modified upon a return value of the at least one of the macro functions, and wherein the return value of the at least one of the macros functions includes at least one of the user inputs accepted during execution of the one or more macro functions; and applying the one or more valid database language expressions to one or more databases to produce the business report, wherein the business report is based on the report layout.
5. The method of claim 1 , further comprising: generating a string based on the at least one of the user inputs accepted during execution of the one or more macro functions, wherein the one or more macrotized database language expressions are modified based upon the return value of the at least one of the macro functions by at least substituting a partial expression included within the one or more macrotized database language expressions with the generated string to produce the one or more valid database language expressions for the database query.