How to use existing ABL business logic for Mobile App?

Posted by Valeriy Bashkatov on 23-Jan-2014 00:42

Hello, 

How to use existing ABL business logic (in my case it is WebSpeed App) for the Mobile App created with OE Mobile?

I would be grateful for a detailed example!

Regards,
Valeriy

Posted by Sanjeva Manchala on 23-Jan-2014 02:38

Hi Valeriy,

Progress Developer Studio for OpenEdge (PDS OE) provides a facility to convert existing ABL files (.p/.cls/.w) into mobile related ones by adding specific annotations to those files. User can add annotations to specific ABL files using Define Service Interface wizard.

Below are the detailed steps to convert existing ABL logic to Mobile usable:

1. Open existing ABL files in PDS OE and launch Define Service Interface wizard using editor context menu option (Source > Define Service Interface...)

2. Select Definition mode as Mobile in Service Interface wizard.

3. Select the ABL files and ABL routines for which you want to add mobile annotations and then click on Next button.

4. Select which type of annotations you want to add for selected ABL routines and then click on Finish button.

5. Now your existing ABL code is annotated with Mobile annotations and is ready to use with Mobile Service.

Hope this helps,

Sanjeev.

Posted by Shelley Chase on 23-Jan-2014 16:12

Hi Valeriy,

A few additional details. The existing code needs to follow a prescriptive API to be used in a mobile service. All operations for a "resource" must compile into a single procedure where the internal procedures/UDFs are the operations exposed. The signatures for the CRUD operations are again prescriptive. However you can mark any internal procedure/UDF as an Invoke operation which allows any signature. The invoke model is not true REST but enables OE customers to call their existing code.

The definition (schema) for the resource can be defined as a static dataset or temp-table since the schema needs to be available to the client.

The documentation is pretty detailed in this area and should be helpful to get you started.

Let us know if you get stuck.

-Shelley

All Replies

Posted by Sanjeva Manchala on 23-Jan-2014 02:38

Hi Valeriy,

Progress Developer Studio for OpenEdge (PDS OE) provides a facility to convert existing ABL files (.p/.cls/.w) into mobile related ones by adding specific annotations to those files. User can add annotations to specific ABL files using Define Service Interface wizard.

Below are the detailed steps to convert existing ABL logic to Mobile usable:

1. Open existing ABL files in PDS OE and launch Define Service Interface wizard using editor context menu option (Source > Define Service Interface...)

2. Select Definition mode as Mobile in Service Interface wizard.

3. Select the ABL files and ABL routines for which you want to add mobile annotations and then click on Next button.

4. Select which type of annotations you want to add for selected ABL routines and then click on Finish button.

5. Now your existing ABL code is annotated with Mobile annotations and is ready to use with Mobile Service.

Hope this helps,

Sanjeev.

Posted by Valeriy Bashkatov on 23-Jan-2014 07:07

Thank you, Sanjeev!

I will try to look into this.

Posted by Shelley Chase on 23-Jan-2014 16:12

Hi Valeriy,

A few additional details. The existing code needs to follow a prescriptive API to be used in a mobile service. All operations for a "resource" must compile into a single procedure where the internal procedures/UDFs are the operations exposed. The signatures for the CRUD operations are again prescriptive. However you can mark any internal procedure/UDF as an Invoke operation which allows any signature. The invoke model is not true REST but enables OE customers to call their existing code.

The definition (schema) for the resource can be defined as a static dataset or temp-table since the schema needs to be available to the client.

The documentation is pretty detailed in this area and should be helpful to get you started.

Let us know if you get stuck.

-Shelley

Posted by Phillip Molly Malone on 23-Jan-2014 18:44

I'm a Progress Employee for 17+ years, so this might sound like cheerleading but you have to say, way back when the AppServer came around, the marketing/talk was "Future Proof". Get your App AppServer enabled (if you can, it obviously isn't a piece of cake and takes some work) and the world will be your oyster! I love that we (and I am not in the groups that do the work to make it happen, so its the royal we, aka Progress (but more to the point the incredible Devs/Engineers)) have lived up to that promise! Even the most recent improvement, REST/Mobile, still leverages the AppServer and if you were able to AppServerise your Application way back when, the Mobile world is your oyster! Sure you might have to tweak it abit but as I tell anyone I talk to about mobile and they are already AppServer users, you are right there ready to go!

Sorry, slightly off topic but just felt like saying it!

NOTE: These comments are my own and are not prompted by my employer!

This thread is closed