APAR Identifier ...... II10133 Last Changed ........ 98/11/17 INFO APAR FOR AFPTOOLBOX FOR MVS. PRODUCT NUMBER 5655A2501 FMIDS H23A100 AND J23A101. UPGRADE: AFPTOOLBOX Symptom ...... IN INCORROUT Status ........... INTRAN Severity ................... 4 Date Closed ......... Component .......... INFOPALIB Duplicate of ........ Reported Release ......... 001 Fixed Release ............ Component Name PA LIB INFO ITE Special Notice Current Target Date .. Flags SCP ................... Platform ............ Status Detail: Not Available PE PTF List: PTF List: Parent APAR: Child APAR list: ERROR DESCRIPTION: INFO APAR FOR AFPTOOLBOX FOR MVS 5655A2501 5655A25 FMIDS H23A101 FOR CODE AND J23A101 FOR SOFTCOPY PUBS. UPGRADE: AFPTOOLBOX Section - A Additional details on running FLIP Section - B Cobol IVP PRELINK step error Section - C ITALIC fonts with COBOL Section - D IVP fails with AFPDEFINEFONT call Section - E Do not included 3800 fonts in the flip index Section - F GOCA support and invalid x'84' triplet. Section - G WSLLOGO page seq invalid format VB. Section - H Incorrect AOCL DD statement Section - I Dynamic COBOL call to the AFP TOOLBOX in OS/390 ************************************************************* SECTION A The MVS program directory describes how to run FLIP (ATXFLMVS) on p 29. The first ordered list item talks about the FONTLIBO DD statement being required for concatenated font librarie. This bullet should be a paragraph instead, outside of the list, because FONTLIBO is ALWAYS required when FLIP is run, even if it is the same data set as the font library itself. On p 30, the instructions need to be modified (step 3) to state that FONTLIBO is always required. The data set attributes for the file containing the ATXINDEX (the FONTLIBO DD statement) need to match the attributes of the font library. Finally in the ATXFLIP JCL member, return code 36 rc36 should be updated to state that this RC may also be received if the FONTLIBO DD statement is missing or the data set cannot be written to. ************************************************************** Section B Msgedc4001 edc4001 ERROR READING SYSIN RC12 may occur on the AFPTOOLBOX for MVS COBOL IVP ATXCBSAM on the PRELINK step. The problem is with the dataset: SYSIN DD DSN=CBC.V3R2M0.SCLB3SID(IOSTREAM),DISP=SHR This data set is not required and can be commented out. The wrong dataset level was being used which caused the error. Comment out the dataset. ************************************************************** SECTION C If using ITALIC fonts with COBOL the defintion is incorrect. Need to change the ATXCBVAR definition from: 01 ITALIC PIC 9(8) COMP-4 VALUE IS 128. To 01 ITALIC PIC 9(8) COMP-4 VALUE IS 32768. ************************************************************* Section D The cobol IVP may fail with AFPDEFINEFONT call return code -14. Or CBLWriteString return code 15 RC15. The toolbox was rejecting T1V10500 that had been marked public by APSRMARK. Install apar PQ07142 / uq08195. ************************************************************* Section E The AFPTOOLBOX for MVS program directory on page 29 Section 7.1.1 Font Library Index Consideration has an error concerning what font libraries can be used as input for the FLIP index. The second bullet: The concatenation used in the PSF/MVS start up procedure when the output is printed must be the same as the font library concatenation used as input to the FLIP program. This needs to be changed. Libraries that contain 3800 font like the SYS1.FONTLIB are not to be used as input into the FLIP program. Using the 3800 font may result in message: Assertion failed: index ... edc6006e the raise() function was issued for signal SIGABRT. MSGEDC6006E ************************************************************* Section - F GOCA support will be provided by apar pq11950/uq14455. This apar will also fix an error at print time about an invalid x'84' triplet. ************************************************************* Section - G Sample page segment WSLLOGO installed into data set SATXAFP and used by the IVP for C and C++ was shipped with record format VB. To print with MVSPSF psegs must be installed in a VBM data set. To print the sample copy the WSLLOGO member to a VBM data set. *********************************************************** Section - H Incorrect AOCL DD statement in Figure 12 APPENDIX C of the TOOLBOX USER GUIDE section titled COBOL SAMPLE. The line //AOCL DD DSN=ATX.SATXLOAD,DISP=SHR ** Should not be there ** See the JCL on page 33 of the program directory. The INCLUDE AOCL(ATXCOBOL) 9 lines down is also incorrect. It should read INCLUDE SDECK(ATXCOBOL). See the JCL on page 33 of the program directory. *********************************************************** Section - I PQ19382/UQ22925 Making Dynamic COBOL calls to the AFP Toolbox in OS/390 Some changes were made in the OS/390 Language Environment support that affect the way AFP Toolbox calls can be made dynamically. Typically, in MVS, to make a dynamic call the following code is used: COBOL program "A" calls program "B" dynamically: 77 PROGRAMB PIC X(8) VALUE "B". CALL PROGRAMB. If COBOL program "B" calls AFP TOOLBOX (PERFORM AFPBDOC) then this type of dynamic call will not work. The way you must call in an OS/390 environment is different because you now need to call "B" as a DLL program rather than with the conventional dynamic link syntax. If you are experiencing problems ( ABEND0C1 ) trying to make dynamic calls, make the following changes to your Toolbox environment: 1. Assure that PTF UQ22925 is applied. 2. Modify program "A" to make what appears to be a static call to "B". Based on the above example, change the call from CALL PROGRAMB to CALL "B". 3. Compile "B" as a DLL by adding the "DLL" and "EXPORTALL" compile options. This will create a sidedeck that will be linked into program "A". The sidedeck is created during the PRELINK step and is written to the DD SYSDEFSD. Refer to the Language Environment Programmer's Guide for more information on the DLL compile option. 4. Modify the JCL for A to include the sidedeck for B in the prelink step: //SYSIN2 DD * INCLUDE SDECK(B) NAME A(R) 5. Modify the JCL for B to NOT include the ATXCOBOL object in the prelink: //SYSIN2 DD * INCLUDE SDECK(ATXTBOX) NAME B(R) ************************************************************ LOCAL FIX: