Using MetaCOBOL, a change to a field name in a table, then a recompile, ends up with the error code during transaction execution I have looked at the compile listing and see nothing wrong. It appears that a paragraph reading the same table executed correctly, and it executed just before the one causing the abend.
I have attached a doc with the relevant sections of the COBOL compile and the abend 'flowerbox'.
Any ideas that anyone could offer would be appreciated.
The fact that this dataview was accessed successfully once before the abend, gives us a clue.As you can see from the compile listing, the ELEMENT LIST is generated immediately after the WORKAREA for data returned from the table.
So the most likely cause is that the data returned from the table was longer than the definition of the workarea, and so it overlaid the element list.The second request then failed with RC 22 because the element list contains garbage.You say that a field name was changed in the table. Was the element updated to include the changed field name? Does it contain all the contiguous columns between the first and last fields in the element (required for MetaCOBOL and Ideal)? Are all the column lengths in the generated dataview, matching the current column lengths for the table? I suspect if you examine each of the element definitions in the dataview, you will find one that has non-contiguous fields or some similar error.
Steve, I see that you have opened a support case on this with Datacom Level 1.