When the Save statement is used to save objects in a BCX4040 to the database.
Steps to reproduce problem:
- Create an InfinityString object (Test.Str) with a manual array size of 1 in a BCX4040.
- Create a program in the BCX that sets the value of Test.Str to 'Success'
- From command line, print the value of Test.Str while the workstation is in OnLine mode. The value should = 'Success'
- From command line, print the value of Test.Str while the workstation is in Offline mode. No value should be returned as the value has not been updated in the database.
- Create a fallthrough/autostart program in the workstation with the following code:
FIRSTLINE: Save \TestNet\TestACX\Test.Str -0 Goto StopLine STOPLINE: Stop
- From command line, print the value of Test.Str while the workstation is in Offline mode. The value should now = 'Success'.
The value returned for Test.Str when the workstation is in Offline mode (Database value) should 'equal the value returned when the workstation is in Online mode (Live Value), i.e. = Success'
The Offline value of Test.Str does not change and does not equal the value live value.
The resulting ACC_Dump_Debug that is produced is found to have no contents.
- Plain English
The following Plain English code does not accomplish a Save to Database.
FIRSTLINE: Save \TestNet\TestACX\Test.Str -0 Goto StopLine
The functionality of the Save command is not to perform a "Save to Database" operation. This is a functioning as designed.
The Save command, which is equivalent to the Dump command, dumps the contents of the passed-in arguments (i.e. objects) to a file if provided
When a manual Save to Database is done on the object, the database value is updated with the current Live value.