[progress Communities] [progress Openedge Abl] Forum Post:...

  • Thread starter Thread starter Thomas Wurl
  • Start date Start date
Status
Not open for further replies.
T

Thomas Wurl

Guest
I looked into OpenEdge.BusinessLogic.BusinessEntity.cls and there is something that I don't understand. A business entity like "CustomerEntity" has a contructor like: {"customerentity.i"} CONSTRUCTOR PUBLIC CustomerEntity(): SUPER (DATASET dsCustomer:HANDLE). Super (ds) sets the ProDataSet property to the static dataset of the CustomerEntity. CONSTRUCTOR PROTECTED BusinessEntity(INPUT hDS AS HANDLE): ProDataSet = hDS. END CONSTRUCTOR. Methods like CreateCustomerEntity, get a (change) dataset from outside as input-output. So the actual content of the static dataset is the changed content and this data is also what ProDatasetHandle sees. METHOD PUBLIC VOID CreateCustomerEntity(INPUT-OUTPUT DATASET dsCustomer): SUPER:CreateData(DATASET dsCustomer BY-REFERENCE). END METHOD. The Super:CreateData() method passes the static dataset again to the super class, but it's never used. The super logic always seems to use ProDatasetHandle. METHOD PROTECTED VOID CreateData(INPUT-OUTPUT DATASET-HANDLE hDataSet): THIS-OBJECT:AttachDataSources(). THIS-OBJECT:CommitData(ROW-CREATED). FINALLY: THIS-OBJECT:DetachDataSources(). END FINALLY. END METHOD. Am I missing something here?

Continue reading...
 
Status
Not open for further replies.
Back
Top