Salesforce

Changes to Program Behavior (Magic xpa 2.x)

« Go Back

Information

 
Created ByKnowledge Migration User
Approval Process StatusPublished
Objective
Description

Changes to Program Behavior (Magic xpa 2.x)

Use of the Magic xpa cache changes the behavior of programs. Whenever data is found in the cache, the data may not be the same as the data in the data source. However, before updating the data, Magic xpa will always read the row from the disk. As an example, consider a simple Online program created by the Automatic Program Generator (APG). Whenever the insertion point is moved from one row to another, the data view of the new row is automatically reread.

In the case of another user who has changed the data, we will not see the change when we park on the row (if the data was in the cache), but if we try to modify the data, the current values data will be read from the disk, and the message:

Record has been changed – restart.

When using the Position and Data cache strategy, in addition to the position, Magic xpa will store the actual data of the row. If you re-fetch that row you will get the old values stored in the cache. Note that any modifications done to this data from another task will not be seen in the current task. Trying to update a record which was modified in another task will return the message mentioned above.

There are cases where the project definition does not allow the cache to be used. For example, assume an order entry project where the Prices table is accessed for read with Write Share. If a price had been changed by one end-user, and the new price of an item resides in that user’s cache, no other end-user will be able to see the new price.

Reference
Attachment 
Attachment