David Abdala Nómade Soft SRL OERA in practice: NSRA Workshop
OERA in practice: NSRA Background Theory Common Infrastructure Layer Exercises Writing applications Do it!
OERA in practice: NSRA Goals of the framework Storage independent Oriented to services Applications common requirements already solved Report generation / retrieval / printing Background execution Security Global data filters Familiar to ABL programmers Low migration impact
OERA in practice: NSRA Background Theory Common Infrastructure Layer Exercises Writing applications Do it!
OERA in practice: NSRA Theory Layers Design time VS runtime Data entity VS business entity PDS role and TMTT issue
OERA in practice: NSRA Layers Design time VS runtime
OERA in practice: NSRA Data entity VS business entity
OERA in practice: NSRA PDS role and TMTT issue ProDataSet role Is the “glue” of the Data Entity, inside the Business Entity. Used by proDataSource for filling and saving.
Never destroyed. Has as many business objects instances as required simultaneously Searches for an unused instance. If none available a new one is instantiated. Once finished, the requested objects are “returned” to the broker. OERA in practice: NSRA PDS role and TMTT issue Too Many TempTables issue Requests a business object to the object broker. Searches for the factory of the requested object. If not available instantiates it. Has as many factories as different business objects had been instantiated Usually never destroyed, reused in every service request.
OERA in practice: NSRA Background Theory Common Infastructure Layer Exercises Writing applications Do it!
OERA in practice: NSRA Common Infrastructure Layer Background Manager Context Manager Expression Parser Report Manager Security Manager Service Manager Session Manager Template Parser
OERA in practice: NSRA Background Theory Common Infrastructure Layer Exercises Writing applications Do it!
OERA in practice: NSRA For people with no OO knowledge the Basic row is best (BI,BE,BPO). For people with little OO knowledge the reverse diagonal is best (BPO,ME,CI). People with good OO knowledge should be ok with the main diagonal (BI, ME, CPO). People that likes to suffer will be happy with Complex row (CI,CE,CPO).
OERA in practice: NSRA Background Theory Common Infrastructure Layer Exercises Writing applications Do it!
OERA in practice: NSRA Writing Applications Defining TEMP-TABLEs Writing business entities Writing services Writing DSOs Writing the client
OERA in practice: NSRA TEMP-TABLEs Where to define them What kind of fields, with what names How to use them
OERA in practice: NSRA Business Layer Define the data entity Define the business entity main class Define the business entity satellite classes
OERA in practice: NSRA Service Layer Required services Service packages (.p) and service logic Service configuration and security
OERA in practice: NSRA Data Source Layer Referential integrity rules Filling logic Saving logic Compatibility & migration
OERA in practice: NSRA XUL client Writing it Transformation to other clients
Now, Do It! Nómade Soft SRL OERA in practice: NSRA Workshop