I am getting the below shown compilation error for the class file ApplicationError.cls after upgrading to 11.6. This file used to compile without any issues in 10.2B .
There is no change as far as I could see in the FlagsEnum.cls and ApplicationError.cls. Can anybody help me out with what could be wrong here ?
We introduced Progress.Lang.FlagsEnum for supporting ABL enums. I am assuming that this is related to the order of your USING statements and that the one under Progress.Lang is being picked up first.
The order in which I have the using statement in given below :
routine-level on error undo, throw.
using OpenEdge.Core.Util.IObjectInput.
using OpenEdge.Core.Util.IObjectOutput.
using OpenEdge.Core.Util.IExternalizable.
using OpenEdge.Core.System.ApplicationError.
using OpenEdge.Core.System.ErrorSeverityEnum.
using OpenEdge.Lang.DataTypeEnum.
using OpenEdge.Lang.IOModeEnum.
using OpenEdge.Lang.FlagsEnum.
using OpenEdge.Lang.Assert.
using Progress.Lang.ParameterList.
using Progress.Lang.AppError.
using Progress.Lang.Object.
using Progress.Lang.Class.
using Progress.Lang.Error.
I tried changing the order by moving the FlagsEnum after Progress.Lang.Class but results was same . What am I missing here? Is there any other order that I have to use the Using statements?
OpenEdge.Core.FlagsEnum is the wronr type. I'm guessing (from the type names ) that you're using autoedge (or parts of it) and that has the OE.Core.FlagsEnum.
You want to use Progress.Lang.FlagsEnum instead.