ROW-LEVEL WORKSHEET SECURITY
Row-level worksheet security may include creating a referencing worksheet from a data source worksheet, wherein the data source worksheet comprises a function configured to select, based on one or more user-relative functions, at least a subset of a plurality of rows from a data set in a database for presentation; presenting the at least a subset of the plurality of rows by: evaluating the one or more user-relative functions; and selecting, based on the filter, the at least a subset of the plurality of rows.
1 . A method of row-level worksheet security, the method comprising:
creating a referencing worksheet from a data source worksheet, wherein the data source worksheet comprises a function configured to select, based on one or more user-relative functions, at least a subset of a plurality of rows from a data set in a database for presentation;
presenting the at least a subset of the plurality of rows by:
evaluating the one or more user-relative functions; and
selecting, based on the filter, the at least a subset of the plurality of rows.
2 . The method of claim 1 , wherein the filter comprises at least a Boolean operation based on one or more columns of the data set.
3 . The method of claim 1 , wherein the one or more user-relative functions are configured to return, on execution, one or more attributes of a user account accessing the referencing worksheet.
4 . The method of claim 1 , wherein the filter is immutable in the referencing worksheet.
5 . The method of claim 1 , wherein selecting, based on the filter, the at least a subset of the plurality of rows comprises:
issuing a database query to the database;
receiving, in response to the database query, one or more rows of the data set; and
selecting, from the one or more rows, based on the filter, the at least a subset of the plurality of rows.
6 . The method of claim 5 , wherein selecting, from the one or more rows, based on the filter, the at least a subset of the plurality of rows comprises:
evaluating, for each row of the one or more rows, based on the evaluated one or more user-relative functions, a Boolean expression of the filter; and
including, based on the evaluation of the Boolean expression, a respective row in the at least a subset of the plurality of rows.
7 . The method of claim 1 , presenting the at least a subset of the plurality of rows comprises presenting the at least a subset of the plurality of rows in a graphical user interface (GUI).
8 . An apparatus for row-level worksheet security, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:
creating a referencing worksheet from a data source worksheet, wherein the data source worksheet comprises a configured to select, based on one or more user-relative functions, at least a subset of a plurality of rows from a data set in a database for presentation;
presenting the at least a subset of the plurality of rows by:
evaluating the one or more user-relative functions; and
selecting, based on the filter, the at least a subset of the plurality of rows.
9 . The apparatus of claim 8 , wherein the filter comprises at least a Boolean operation based on one or more columns of the data set.
10 . The apparatus of claim 8 , wherein the one or more user-relative functions are configured to return, on execution, one or more attributes of a user account accessing the referencing worksheet.
11 . The apparatus of claim 8 , wherein the filter is immutable in the referencing worksheet.
12 . The apparatus of claim 8 , wherein selecting, based on the filter, the at least a subset of the plurality of rows comprises:
issuing a database query to the database;
receiving, in response to the database query, one or more rows of the data set; and
selecting, from the one or more rows, based on the filter, the at least a subset of the plurality of rows.
13 . The apparatus of claim 12 , wherein selecting, from the one or more rows, based on the filter, the at least a subset of the plurality of rows comprises:
evaluating, for each row of the one or more rows, based on the evaluated one or more user-relative functions, a Boolean expression of the filter; and
including, based on the evaluation of the Boolean expression, a respective row in the at least a subset of the plurality of rows.
14 . The apparatus of claim 8 , presenting the at least a subset of the plurality of rows comprises presenting the at least a subset of the plurality of rows in a graphical user interface (GUI).
15 . A computer program product for linking and composing worksheets, the computer program product disposed upon a computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:
creating a referencing worksheet from a data source worksheet, wherein the data source worksheet comprises a configured to select, based on one or more user-relative functions, at least a subset of a plurality of rows from a data set in a database for presentation;
presenting the at least a subset of the plurality of rows by:
evaluating the one or more user-relative functions; and
selecting, based on the filter, the at least a subset of the plurality of rows.
16 . The computer program product of claim 15 , wherein the filter comprises at least a Boolean operation based on one or more columns of the data set.
17 . The computer program product of claim 15 , wherein the one or more user-relative functions are configured to return, on execution, one or more attributes of a user account accessing the referencing worksheet.
18 . The computer program product of claim 15 , wherein the filter is immutable in the referencing worksheet.
19 . The computer program product of claim 15 , wherein selecting, based on the filter, the at least a subset of the plurality of rows comprises:
issuing a database query to the database;
receiving, in response to the database query, one or more rows of the data set; and
selecting, from the one or more rows, based on the filter, the at least a subset of the plurality of rows.
20 . The computer program product of claim 19 , wherein selecting, from the one or more rows, based on the filter, the at least a subset of the plurality of rows comprises:
evaluating, for each row of the one or more rows, based on the evaluated one or more user-relative functions, a Boolean expression of the filter; and
including, based on the evaluation of the Boolean expression, a respective row in the at least a subset of the plurality of rows.