× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



<snip>
I suggest the flow should be:

1). Code modules as normal in source files, (QRPGLESRC, QCLSRC, etc.)
2). Compile module source to create *MODULE objects using CRTxxxMOD
command(s)
3). Code Binder Language (usually in QSRVSRC)
4). Bind required *MODULE objects into Service program (*SRVPGM)
referring
to Binder Language in QSRVSRC on the CRTSRVPGM.
5). Bind required *MODULES and *SRVPGM objects into final Program (*PGM)

using CRTPGM

IF you wish to use Binding Directories (*BNDDIR) to streamline (4) and
(5), reference on CRTSRVPGM and/or CRTPGM commands. For RPG IV only,
you
can specify the *BNDDIR in the H-spec using the BNDDIR keyword. No such

facility for CL.

NOTE: I suggest CRTBNDxxx commands (PDM Option 14.) be reserved for
non-ILE compile/bind.

When adding new procedures, (to an existing or new *MODULE) for
external
use you should amend the list of Procedure Exports. Add new procedure
names (Exports) to the END of the Exports Symbols listed in the Binder
Language.
</snip>

May I suggest you take a look at my make tool Compile at
www.think400.dk/downloads.htm?

I have found that trying to do ILE development without a make tool is
extremely difficult. As you can see, you do not need binding directories
and all the instructions for how to create the object are stored in the
header.

All that is required is to do a CO or IN to create the object.

For example, to create a CL module.

/* *_> CNLLSTSPLF SRCFILE(@2/@1) SRCMBR(@3)
*/
/* *_> DLTMOD MODULE(@5/@4)
*/
/* *_> CRTCLMOD MODULE(@5/@4) SRCFILE(@2/@1) SRCMBR(@3) +
*/
/* *_> DBGVIEW(@9) OPTIMIZE(@8) OPTION(*EVENTF)
*/

To create the RPG module.

*_> CNLLSTSPLF SRCFILE(@2/@1) SRCMBR(@3)
*_> DLTMOD MODULE(@5/@4)
*_> CRTSQLRPGI OBJ(@5/@4) +
*_> SRCFILE(@2/@1) SRCMBR(@3) +
*_> OBJTYPE(*MODULE) CLOSQLCSR(*ENDMOD) +
*_> DBGVIEW(*SOURCE) OPTION(*EVENTF)

To create the program.

*_> DLTPGM PGM(@5/@4)

*_> CHKOBJECT OBJNAME(@5/EDILOD_M01) OBJTYPE(*MODULE) +

*_> SRCFILE(@2/@1) SRCMBR(EDILOD_M01)

*_> CHKOBJECT OBJNAME(@5/EDILOD_M02) OBJTYPE(*MODULE) +

*_> SRCFILE(@2/@1) SRCMBR(EDILOD_M02)

*_> CRTPGM PGM(@5/@4) MODULE(EDILOD_M01 EDILOD_M02) +

*_> TEXT('EDI Load EDIDOCS and EDILINES.') +

*_> ACTGRP(QILE) BNDSRVPGM(XVSTGF EDIFNC XVERRH XVIFSX)

To create a service program.

*_> DLTSRVPGM SRVPGM(@5/@4)
*_> CHKOBJECT OBJNAME(@5/XVIDAT_M01) OBJTYPE(*MODULE) +
*_> SRCFILE(@2/@1) SRCMBR(XVIDAT_M01)
*_> CHKOBJECT OBJNAME(@5/XVIDAT_M02) OBJTYPE(*MODULE) +
*_> SRCFILE(@2/@1) SRCMBR(XVIDAT_M02)
*_> CRTSRVPGM SRVPGM(@5/@4) +
*_> MODULE(XVIDAT_M01 XVIDAT_M02) +
*_> SRCFILE(@2/@1) SRCMBR(XVIDAT_B) +
*_> TEXT('Service program for SQL UDF IDATE') +
*_> BNDSRVPGM(XVERRH) +
*_> ACTGRP(QILE)



As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.