3.98. TableRestrict

Used to provide "views" in database-based searches. Does not affect the text searches. Affects the table being searched.

Takes the form of field=session_param, where field is a column in the table being iterated over, and session_param is a $Session key (i.e., [data session username]).

   TableRestrict  products  owner=username

The above would prevent the database search from returning any records except those where the column owner contains the current value of [data session username].

Probably most usefully set by embedded Perl code in certain situations. For example:

   [calc]
       # Restrict edit to owned fields
       $Config->{TableRestrict}{products} = 'owner=username';
       return;
   [/calc]

When using SQL-based databases, in effect it turns the base search query

   select * from products

into

   select * from products where owner = '[data session username]'

Interchange databases are similarly affected, though the methodology is different. Also may be useful in "mall" situations, where user is allowed to only see products from the current store ID.