EGL Development User Group

EGL Development User Group

EGL Development User Group

The EGL Development User Group is dedicated to sharing news, knowledge, and insights regarding the EGL language and Business Developer product. Consisting of IBMers, HCL, and users, this community collaborates to advance the EGL ecosystem.

 View Only
  • 1.  How does egl know use alias ?

    Posted 03/24/16 10:46 PM

    Hi,

     

    I have two FormText defined with alias property:

    formGroup DEO02G

    use DEO01MTEXT1, DEO01MTEXT2;

    end

    form DEO01MTEXT1 type textForm  {ScreenSizes = [[24,80]], FormSize = [24, 80], Position = [1, 1], alias="@0001TXT"}

    form DEO01MTEXT2 type textForm  {ScreenSizes = [[24,80]], FormSize = [24, 80], Position = [1, 1], alias="@0002TXT"}

    and the program declare

    use DEO02G.DEO01MTEXT1;

    use DEO02G.DEO01MTEXT2;

    converse:

    converse DEO01MTEXT1 ;

    converse DEO01MTEXT2 ;

    I know that the COBOL generated outputs are truncated to conform to the maximum permitted lengths, Form part names have an 8-character maximum.

    as below:

    * EGL *61* Converse DEO02G.DEO01MTEXT1;

    MOVE "CONVERSE" TO EZERTS-PRC-OPT

    MOVE "DEO01MTE" TO EZERTS-PRC-OBJ

    SET EZERTS-NO-ERROR-ROUTINE TO TRUE

    SET EZERTS-CONVERSE TO TRUE

    MOVE EZERTS-FORMAT-OUTPUT TO EZEMSR-FUNCTION-ID

    .....

    * EGL *62* Converse DEO02G.DEO01MTEXT2;

    MOVE "CONVERSE" TO EZERTS-PRC-OPT

    MOVE "DEO01MTE" TO EZERTS-PRC-OBJ

    SET EZERTS-NO-ERROR-ROUTINE TO TRUE

    SET EZERTS-CONVERSE TO TRUE

    MOVE EZERTS-FORMAT-OUTPUT TO EZEMSR-FUNCTION-ID

    Question:

    How does egl know use alias  ?  @0001TXT or @0002TXT

    Why I need use it ?

    After truncate I have duplicate FormName DEO01MTE

    A big migration Project where the cliente have many FormText name with more 8 character.

    And I do not want to change your source name and i want use alias as internal named.

     

    I debbuged a sample program and it woked fine.  I generated to COBOL and it worked fine too.

    But when I went implemented this solution in customer program then i get na error:

     

    ELA00051P Form @3512TXT was not found in form group TT024D

    ELA00191I Program FT0200, generation date 20160324, time 11045834

    EGL Source:

     

    use TT024D.TSHOW01 // form

    Form TSHOW01 type textForm { screenSizes = [[24,80]], formSize = [24,80], position = [1,1], Alias = "@3512TXT"}

     

    What's happen ?

    Why one works and another not works ?

     

    Hsieh


  • 2.  Re: How does egl know use alias ?

    Posted 03/25/16 09:00 AM

    Hsieh,

     

    I will look at the rest of your questions, but if this is a migration project why are the form names too long? If you were migrating from VAGen or CSP, then the 8 character name was a restriction at that time.

     

    On your error, we would have to see the whole generated program or source.  

     

    take care.

    Mark

    markevans


  • 3.  Re: How does egl know use alias ?

    Posted 03/25/16 09:40 AM

    Hi Mark,

    New migration project.  It is not VAGEN or CSP Migration.  It is migration Mantis to EGL and where we did in past with our migration tools.

    In this morning I did some test and the EGL support character "@" in FormName but it not works with COBOL genned.  After change character "@" to "A" it works well.

    Hsieh


  • 4.  Re: How does egl know use alias ?

    Posted 03/25/16 09:48 AM

    Ok..thanks for the explanation.

     

    And since you have it working, I will not pursue any more.

    markevans


  • 5.  Re: How does egl know use alias ?

    Posted 03/25/16 11:44 AM

    That's OK !! after removing the @ character.  Not a big problem.

    But before I had read in IBM knowledge center about naming convention,

     

    http://www.ibm.com/support/knowledgecenter/SSMQ79_9.1.1/com.ibm.egl.gg.doc/topics/gegl_cobol_cobolrestrictions.html?lang=em

    http://www.ibm.com/support/knowledgecenter/SSMQ79_9.1.1/com.ibm.egl.lr.doc/topics/regl_core_names.html?lang=en

    the character "@" would be supported, "apparently".  But not Support after my discovery.

    I could open a PMR, but i think not necessary.

     

    Thanks !  Mark.

    Hsieh


  • 6.  Re: How does egl know use alias ?

    Posted 03/25/16 12:21 PM

    Just for my information... were you using VAGen compatibility mode or not?

     

    And did that differ between your machine and the customers since you said it was inconsistent.

     

    The naming convention said "@" was only valid for VAGen Compatibility.

     

    Mark

    markevans


  • 7.  Re: How does egl know use alias ?

    Posted 03/25/16 12:36 PM

    Yes. We using VAGen Compatibility in WS preferences and Build.

    Are same, no differ machine configuration.

    Hsieh


  • 8.  Re: How does egl know use alias ?

    Posted 03/25/16 01:15 PM

    I did some teste.

     

    VAGen Compatibility = NO in WS preference:

    Name cannot have "@" character

     

    VAGen Compatibility = YES in WS preference:

    Name can have "@" character

    Cannot start with "@"

     

    But in my case is Alias Name.  Alias Name is not validated in Workspace.

     

     

    Hsieh