Patent ID: 7599934
Filing Date: 2009-10-06
Classification: G06F,Y10S

Abstract:
1. A computer storage medium comprising computer readable instructions that when executed on a computer, cause the computer to: determine a selection criterion based on a selection rule; assign access attributes to each field in a plurality of fields, the plurality of fields being included in a set of project data, the set of project data being associated with a project, the access attributes indicating whether a user of a client device is permitted to access the fields to which the access attributes are assigned; receive, from the client device, a filter based on the selection criterion, the filter indicating selected fields that the user of the client device wants to view, the selected fields being ones of the fields in the set of project data; generate an access attribute table that indicates the ones of the access attributes that are assigned to the selected fields; generate a query that describes the selected fields; retrieve, from a project database that stores the set of project data, selected field data, the selected field data being data associated with the selected fields; use restricted field data to calculate non-restricted field data, the restricted field data being data associated with restricted fields, the non-restricted field data being data associated with non-restricted fields, the restricted fields being ones of the selected fields to which the access attribute table indicates the user has no access, the user not being able to read or write data in a field when the user has no access to the field, the non-restricted fields being ones of the selected fields to which the access attribute table indicates the user has access; after causing the computer to use the restricted field data to calculate the non-restricted field data, substitute the restricted field data with null values; after causing the computer to substitute the restricted field data, sort the selected field data based on the selection criterion; after causing the computer to sort the selected field data, apply at least one additional filter criterion to the selected field data; and after causing the computer to apply the at least one additional filter criterion to the selected field data, provide the selected field data to the client device.