lacked the wide array of specialized analytic tools which made SAS the standard in fields such as pharmaceutical clinical trials. Instead, FOCUS concentrated on extreme flexibility in data import and export as well as ad hoc end-user reporting. Integration Software packages with which FOCUS has linked and integrated include: Excel AJAX Business Intelligence competitors Business intelligence software competitors include: Description Although FOCUS resembles other data access and analysis tools, such as SQL and SAS, it also includes report and chart display and presentation features. It automates the process of identifying files to the operating system, opening the input file, reading the next record, opening the output file, writing the next record, and closing the files. This basic operation allows the user/programmer to concentrate on the details of working with the data within each record, in effect working almost entirely within an implicit program loop that runs for each record, somewhat like RPG (Report Program Generator). Other procedures operate on the dataset as a whole, for instance printing or statistical analysis, and merely require the user/programmer to identify the dataset. Compared to general-purpose programming languages, this structure allows the user/programmer to be less familiar with the technical details of the data and how it is stored, and relatively more familiar with the information contained in the data. This blurs the line between user and programmer, appealing to individuals whose work roles are in business or research rather than information technology. This in turn has the double edged result of allowing rapid answers to business or research questions, even ones requiring several iterations to get from the initial results to a final answer; but also can contribute to the construction of a large body of poorly written and/or difficult to maintain source code. Master File Description (MFD) A feature that was unique at the time is that FOCUS features the ability for the user to construct a data description file (called a "master file description") referring to the actual data file, or even several different data description files addressing the same data file in different ways, rather than the usual practice of having the file structure hard-coded into the program. In this way, files of any structure from any source can be accessed or produced in many different ways, eliminating much of the data manipulation (for example concatenation, or parsing) at times required with other earlier programming languages. For instance, the same