Allowed Changes to Data Set Group Items details the changes that can be made to data set group items. Numbers in parentheses refer to explanatory notes following the table.
Table 31. Allowed Changes to Data Set Group Items
Option |
Model |
Update |
File Format Conversion (No Item Changes) |
|
---|---|---|---|---|
Add new group item. |
No |
Yes (1) |
Yes (1) |
Yes |
Delete existing group item. |
No |
No |
No |
Yes (4) |
Add or delete items in an existing group item. |
No |
No |
No |
Yes (2) |
Change order in which items are declared in an existing group item. |
No |
No |
No |
|
Change OCCURS option. |
No |
No |
No |
|
Change number of occurrences. |
No |
No |
No |
|
Change REQUIRED option. |
No |
Yes |
Yes (3) |
|
Change STORED option. |
No |
No |
No |
|
Change object of DEPENDING ON, OPTIONALLY WITH, and so on. |
No |
No |
No |
Yes |
Explanatory Notes
-
If the record contains a filler item, the filler item can be reduced in size or eliminated altogether, and new data items and group items can be added in the space made available.
The size of the record must not change. Thus, the filler item must be reduced in size or eliminated to produce the proper size area. Filler items are similar to alpha items. Their size is specified in 8‑bit bytes, they are aligned on byte boundaries, and they are initialized to all bits on. Regardless of the position of the filler item declaration, the filler in the record is located after all data items and group items, and before all control items.
Items added to a fixed-format record must be added at the end of the record. Items added to the fixed part of a variable-format record must be added at the end of the fixed part. Items added to the variable part must be added at the end of the variable part.
New items can be required and must not specify a null initial value. If new items are required, a reorganization also is required. If the new items are required and an initial value is not specified or the initial value is null, a data error occurs during the reorganization. All items added to existing records have the initial value of all bits on. This includes Boolean items and field items. All items in newly created records have normal initial values.
Since the filler item starts on an 8‑bit byte boundary, the first newly added item must start on a byte boundary also. If an unused 4‑bit digit precedes the filler, the first new item is not properly byte aligned. In this case, the error message “ITEM ADDED” or “ITEM MISMATCH” results. To avoid this problem, ensure that the first added item is byte aligned. For example, if one of the new items is an alpha item or group item, put it first. Otherwise, the first new item must be inserted in a dummy group item.
-
Entirely new items can be added to the group item or existing items can be deleted from the group; but existing items cannot be moved in the group from outside it, and existing items cannot be moved out of the group. Group items which are keys or key data must not be changed.
-
When an item is made required, the user must ensure that the item has a valid value in every data set record. The Reorganization program terminates with an error if it encounters a required item containing a null value.
-
If an item is deleted from a data set or from global data, the item must also be deleted from all remaps which include it.
-
Occurrences of an item or a group can be increased or decreased. An OCCURS clause can be added or deleted. Data is lost when occurrences are decreased. When occurrences are increased, items or groups in the new data set record with no source in the old data set record are filled with the appropriate initial value.
Note: If the size of an item or an occurring item within the group item is changed, then it is possible that the generated reorganization text that is required to move the data from the old field to the new field might exceed the maximum allowable size, for example, 65K words. If this happens, the DASDL compiler issues the following error message:THIS REORGANIZATION CANNOT BE DONE LENGTH OF TEXT REQUIRED FOR REORG EXCEEDS THE MAXIMUMIn certain cases where multiple changes are causing this error, it might be possible to split the changes and perform multiple reorganizations to accomplish the desired changes. This possibility depends on the specific DASDL description and the necessary changes.Other methods, such as using the LOADDUMP utility, can be used to accomplish this reorganization.