Easytrieve and Panaudit both contain the PAPLDATE module.
Can the PAPLDATE module be shared between these products?
PAPLDATE is distributed with Easytrieve Plus so that any Easytrieve Plus user can invoke the DATECONV macro (which calls PAPLDATE). Panaudit Plus also distributes DATECONV and PAPLDATE, (along with many other macros and subroutines that are not included in Easytrieve Plus). The DATECONV routine converts a date in one format to another date format.
For example, you can convert month-day-year to year-month-day, Julian to Gregorian, and perform similar date conversions.
Easytrieve and Panaudit both distribute different PAPLDATE modules because Easytrieve Plus 6.4 introduced 31-bit mode support while Panaudit Plus does not provide support for 31-bit mode at this time. As such, the PAPLDATE from Easytrieve Plus is distributed with AMODE=31, RMODE=ANY and the PAPLDATE from Panaudit Plus is distributed with AMODE=24, RMODE=24.
Many of the Easytrieve Plus 6.4 routines (including PAPLDATE) use AMODE=31. Easytrieve Plus customers who do not use Panaudit Plus and do not call 24-bit subroutines can specify the Easytrieve Plus option ALL31=YES, so that at runtime, dynamic storage is allocated above 16 MB. Panaudit Plus is driven by Easytrieve Plus. Since Panaudit Plus does not use AMODE=31, and it does call 24-bit subroutines, Panaudit Plus users should specify Easytrieve Plus option ALL31=NO, so that at runtime, dynamic storage is allocated below 16 MB.
The PAPLDATE modules should not be shared. The two different products installation processes link their PAPLDATE modules into unique CAILIBs. If the PAPLDATE module included with Easytrieve Plus is found first, and ALL31=YES, dynamic storage is allocated above 16 MB. If the PAPLDATE module included with Panaudit Plus is found first, and ALL31=NO, dynamic storage is allocated below 16 MB. If the PAPLDATE module included with Panaudit Plus is found first, and ALL31=YES, dynamic storage is allocated above 16 MB, and a S0C4 abend will occur.