Plex 2E

 View Only
  • 1.  CA Plex and IBM i Source Maintained 3GL Objects

    Posted Oct 30, 2017 02:47 PM
      |   view attached

    G'day All,

     

    CA 2E enables users to maintain 3GL objects in the data model - whereas CA Plex does not do this out of the box.

     

    I'm working on a project to migrate a few CA 2E data models across to CA Plex that will generate backend RPG/DB2 objects from the data model. The CA 2E data model contains a number of EXCUSRPGM objects that are either CLP or custom RPG programs maintained using source and not the model.

     

    I have managed to enable the migration of the Source Maintained 3GL objects across into CA Plex using a FNC and a scoped SRC object for the 3GL source code and another scoped SRC object for the Compiler Overrides.

     

    The FNC is specified as Language RPG and Type External and I have added the API Call to the scoped SRC.

     

    The SRC for the 3GL source code during migration is prefixed with ">>   Y* S: " - which is picked up by my custom pre-compiler for CA Plex (YKYCRTOBJC program in library PLEX720) - and used to compile the object.

     

    The SRC for the Compiler Override uses a prefix of ">>   Y* Z: " - which is also picked up by my custom pre-compiler for CA Plex - and is used to compile the object. The original compile request is then ignored.

     

    By doing this I have found I am able to store all the objects for the solution in CA Plex - instead of having to manage Source Managed 3GL objects on the AS400 - which is always fraught with issues as objects and source are not easily maintained.

     

    My next tasks is to use Model API's to enable editing of the 3GL Source Code in something like Eclipse - that will strip out the prefix for the CA Plex custom pre-compiler.

     

    Would be good if CA Plex would enable 3GL source based objects in the Plex model.

     

    I'm also able to use this technique to manage other objects such as Dataareas - using a Compiler Override that issues the CRTDTAARA command instead of a CRTRPGPGM command.

     

    I've even extended this enable the development of ILE objects - such as Modules, Programs and Service Programs. I'm even able to generate the Export source required to compile a Service Program in CA Plex - and have implemented similar support for ILE objects in CA Plex that has been available in CA 2E for many years.

     

    I'm also having to enable all the CA 2E pre-compiler options as per Compile Preprocessor - CA 2E - 8.7 - CA Technologies Documentation - as one of the CA 2E data models uses this extensively with the HawkBridge CA 2E Pre-Compile Processor (http://www.hawkbridge.com.au/html/products/freedompcp.aspx).  

     

    I've attached the source code changes I have currently made to YKTCRTOBJC - for anyone that might be interested.

     

    I've always thought an IDE should be fully integrated!

     

    Regards,

     

    Darryl

    Attachment(s)

    zip
    YKTCRTOBJC.clp.txt.zip   2 KB 1 version


  • 2.  Re: CA Plex and IBM i Source Maintained 3GL Objects

    Posted Oct 30, 2017 02:54 PM

    Forgot to add the SQL statements that are run using RUNSQLSTM command (I'm using a V5R4 box - otherwise I would have just used RUNSQL command!):

     

    UPDATE QTEMP/HTMPSRC
    SET SRCDTA = SUBSTR(SRCDTA, 11, LENGTH(SRCDTA) - 10);



  • 3.  Re: CA Plex and IBM i Source Maintained 3GL Objects

    Posted Oct 31, 2017 02:30 PM

    There are a few bugs in the CL program - which I am ironing out. Will update with newer version when I get it all fixed.