How Do I Limit the End User’s Access to and Manipulation of the Data? (Magic xpa 2.x)
When you automatically generate a program using the Program Generator, by default it allows the user to access any field and to change any record. However, you can control exactly how much access a user has to table data in Magic xpa by changing various settings in the task. Here is a list of some of the items you can change to control access.
-
Task Properties->General->Initial Mode: This sets the initial mode of the program. If it is set to Query, then the user will not be able to enter data into any field.
-
Task Properties->Options: Here you have a series of fields that you can set to Yes, No, or an Expression to be evaluated at runtime. If Modify is set to No, for instance, the user will not be able to put the task into Modify mode. If Delete is set to No, the user will not be able to delete a record.
-
Main Data source properties or Link properties->Access = Read: This property allows you to set the access mode to the table. If Access is Read, then the table will be opened in read mode, and data will not be saved regardless of how the rest of the task in configured. If the record is inadvertently updated because other settings allow modification, an error message will be generated but the record will not be updated.
-
Define only the fields that the task needs inside your task, that way they will not be available at all.
-
Set Settings->Environment->System->Allow Update in Query to No. When a task is in Query mode, the user cannot type in data. However, if Allow Update in Query is Yes, then the data can still be updated from within the program, if a field is updated as a passed argument or by an Update operation, for instance.