APAR status
Closed as canceled.
Error description
568606800 18M R18M *** THIS INFO APAR HAS BEEN SUPERSEDED BY II11292 *** Update page 187. See APAR PN47911 In Part 2. "Coding Your Program", Chapter 12 "File Sorting and Merging", under heading "Coding Run-Time JCL for SORT", the paragraph describing the sort work files should read: Sort Work Files DLBL, EXTENT, and ASSIGN statements for SYSWK1, SYSWK2, SYSWK3, ..., SORTWKn (where n = 9 or less). You control the number of sort work files that SORT/MERGE II or DFSORT will use during the sort or merge operation by the number of sort work files you specify in your run-time JCL. You must specify the required DLBL information, either in your JCL or in standard labels, for each sort work file in the sequence SORTWK1 to SORTWKn, where 'n' is the number of sort work files to be used. Sort/Merge II and DFSORT require sort work files to be numbered consecutively. For example, if you provide DLBLs for SORTWK1, SORTWK2, and SORTWK4, only the SORTWK1 and SORTWK2 will be used. If, at run time, you use the WORKNM sort option to change the first 4 characters of the sort work file names, you must still specify run-time JCL for the required sort work files in sequence. PART 2. "Coding Your Program" Chapter 3. Program Structure. Page 21 Input-Output Section. Add the following to Figure 10. Examples of FILE-CONTROL entries FILE-CONTROL Entry for a tape file: SELECT TAPE-FILE ASSIGN TO SYS006-TAPE1 For a tape file, SYSnnn- is required. Page 22. Figure 11. The example of the SELECT clause is inaccurate. It should read: SELECT CARPOOL ASSIGN TO OUTFILE ORGANIZATION IS SEQUENTIAL ACCESS IS SEQUENTIAL. (The period should be at the end of the ACCESS clause, not the ORGANIZATION clause.) Page 23, under Describe SAM Files, add the following: Example of JCL, FILE-CONTROL entry and FD-entry for a tape file ----------------------------------------------------------- | JCL statements: | | | | // TLBL OUTFIL,'OUTPUT.TAPE' <-- (1) | | // ASSGN SYS006,580 <-- (2) | | . | | /& | | | | COBOL/VSE Program Code: | | | | SELECT TEST-FILE <-- (3) | | ASSIGN TO SYS006-OUTFIL <-- (1), (2) | | ORGANIZATION IS SEQUENTIAL <-- (4) | | ACCESS IS SEQUENTIAL. <-- (5) | | . | | . | | FD TEST-FILE <-- (3) | | . | | . | ----------------------------------------------------------- (1) The filename, OUTFIL, in the TLBL statement corresponds to the system-name in the ASSIGN clause. (2) The programmer logical unit, SYS006, in the ASSGN JCL statement corresponds to the system-name in the ASSIGN clause. (3) The file-name, TEST-FILE, in the SELECT clause corresponds to the file-name in the File Section of the Data Division. (4), (5) ORGANIZATION and ACCESS are sequential for a tape file. These are the default values for the ORGANIZATION and ACCESS MODE clauses. Page 166 - Replace the text under heading - 'Opening an Empty File' with the following To open a file that has never contained records (an empty file): * Use OPEN OUTPUT for ESDS files. * Use OPEN OUTPUT or OPEN EXTEND for KSDS and RRDS files. (Either coding has the same effect.) If you have coded the file for random dynamic access, you can also use OPEN I-O if the file is optional. Optional files are files that are not necessarily present each time the program is run. You can define files opened in INPUT, I-O, or OUTPUT mode as optional by defining them with the SELECT OPTIONAL phrase in the File-Control section of your program.
Local fix
PTF UQ04360 introduces a new compiler option, INTDATE. If you apply this PTF, make the following changes to the COBOL/VSE Programming Guide. Part 3, Compiling Your Program, Chapter 15, Compiler Options., On page 255, after the description of FLAGSTD, add: INTDATE >>--INTDATE(-.-ANSI---.-)------------------------------>< '-LILIAN-' Default is: INTDATE(ANSI) INTDATE(ANSI) instructs the compiler to use the ANSI COBOL Standard starting date for Integer date format dates used with date intrinsic functions. Day 1 is Jan 1, 1601. With INTDATE(ANSI), the date intrinsic functions will return the same results as in COBOL/VSE without PTF UQ04360. INTDATE(LILIAN) instructs the compiler to use the LE/VSE Lilian starting date for integer date format dates used with date intrinsic functions. Day 1 = Oct 15, 1582. With INTDATE(LILIAN), the date intrinsic functions will return results compatible with the LE/VSE date callable services. These results will be different than in COBOL/VSE without PTF UQ04360. NOTES: 1. When INTDATE(LILIAN) is in effect, CEECBLDY will not be useable since you will have no way to turn an ANSI integer into a meaningful date using either intrinsic functions or callable services. If you code a CALL literal statement with CEECBLDY as the target of the call with INTDATE(LILIAN) in effect, the compiler will diagnose this and convert the call target to CEEDAYS. (CEECBLDY is only available with LE/VSE Release 4). 2. If you set your installation option to INTDATE(LILIAN), you should recompile all of your COBOL/VSE programs that use Intrinsic Functions to ensure that all of your code will be using the LILIAN integer date standard. This method is the safest because you can then store integer dates, pass them between programs, and even pass them from PL/I to COBOL or C programs without compatibility problems. . Chapter 14 Methods of Compilation. Page 224 Precedence of Compiler Options Add the following further explanation at the end of this section: In this context, in Level 1, options 'fixed by your installation' refers to options customized using the options module IGYCOPT and specified there as non-overridable. Level 5 refers to options customized using IGYCOPT but NOT specified there as non-overridable. Under Level 4: Those on JCL OPTIONS statement, refers to options specified on either // OPTION statement, or STDOPT statement; for example, XREF/SXREF The precedence list could be expanded here to include: Level 4a: Those on JCL OPTIONS statement Level 4b: Those on STDOPT JCL statement Values for options specified on a // OPTION statement temporarily override system defaults, and remain in effect for the duration of the current job, or until another // OPTION statement is read. Options set by STDOPT apply across all partitions and remain in effect until changed by another invocation of STDOPT; however they can be temporarily overridden by // OPTION. (For more information about // OPTION and STDOPT, refer to VSE/ESA System Control Statements.) PQ04468 / UQ05847 In Part 2, Chapter 12. Page 186. In the section: "Premature Termination of a SORT or Merge Operation" In the second paragraph, the manual in which the DFSORT messages are contained has changed. ------------------------- start ---------------------------- (DFSORT/VSE messages are listed in DFSORT/VSE Messages, Codes and Diagnosis Guide.) ------------------------- end ------------------------------ In Part 2, Chapter 12. Page 190. In the section: "Passing Control Statements to DFSORT/VSE" The wording must be changed to encompass the SORT or MERGE control statements as follows: ------------------------- start ---------------------------- The control statements you can include at run time (in the order listed) are: 1. SORT or MERGE (used to replace the SORT or MERGE statement generated by the compiler) 2. SMS=nnnnn were nnnnn is the length, in bytes, of the most frequent record size. (Ignored if the SD is NOT variable). 3. OPTION (except FILNM=) 4. Other DFSORT/VSE control statements (ALTSEQ, ANALYZE, INCLUDE, INREC OMIT, OUTREC, or SUM) ------------------------- end ------------------------------ In the paragraph "Format of the Control Statements" add: ------------------------- start ---------------------------- No other syntax checking of the statement is performed. ------------------------- end ------------------------------ Add a new paragraph after the paragraph "Specifying Control Statements Source" as follows: ------------------------- start ---------------------------- Specifying SORT or MERGE control statements If a SORT statement is generated by the compiler and an attempt is made to override this with a MERGE statement from the SORT-CONTROL member, the overriding MERGE statement is ignored and no message is issued. If a MERGE statement is generated by the compiler and an attempt is made to override this with a SORT statement from the SORT-CONTROL member, the overriding SORT statement is ignored and no message is issued. The LE/VSE run time library appends parameters to the SORT statement depending on the COBOL/VSE SORT options requested. These appends are: FILES= (determined by the number of sort work DLBLs found) EQUALS (if DUPLICATES is coded in the COBOL/VSE SORT statement) SIZE= (when SORT-FILE-SIZE is set (compatibility only)) These appends will be made to the SORT statement supplied via the SORT-CONTROL member. However if any of these parameters are coded on the supplied statement they take precedence. If you have multiple sorts in a single COBOL program the generated SORT statements can be overriden by using multiple SORT-CONTROL members and changing the value of SORT-CONTROL before each sort. An alternative to multiple SORT-CONTROL members would be to set SORT-CONTROL to SYSIPT and use the following JCL setup: // EXEC SORTPGM SORT FIELDS= ... sort one override statements /* SORT FIELDS= ... sort two override statements /* ------------------------- end ------------------------------- In Part 2, Chapter 12. Page 192. In the section: "SORT Special Registers" In the Figure "Sorting in COBOL/VSE" add a new entry as the third item (ie before the SORT-MODE-SIZE) as follows: ------------------------- start ----------------------------- LH column --------- Year 2000 date formats on the SORT or MERGE statements. RH column --------- A SORT or MERGE statement can be specified to override the SORT or MERGE statement generated by the compiler. These override statements can contain the DFSORT/VSE Year 2000 date format field descriptors. ------------------------- end ------------------------------- Page 149, Section Writing Your file to a Printer or .......... After last sentence --------------start ------------------------------ Segmenting Your Printer Files: If you use the VSE/POWER SEGMENT macro to segment your printer file, you should close the file before issuing the SEGMENT macro, and then reopen the file. This will ensure that all records written to the file are received by VSE/POWER before the file is segmented. If you do not close the file, not all records written may appear in the correct segment of the VSE/POWER output. -------------------------------------------------------- for further information on the COBOL for VSE Programming Guide refer to the continuation APAR II11128 -------------------------------------------------------- ------------------------end---------------------------
Problem summary
Problem conclusion
Temporary fix
Comments
APAR Information
APAR number
II09070
Reported component name
PA LIB INFO ITE
Reported component ID
INFOPALIB
Reported release
001
Status
CLOSED CAN
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
1995-11-21
Closed date
1996-01-04
Last modified date
1998-08-07
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Applicable component levels
[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19N","label":"APARs - OS\/390 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG32M","label":"APARs - VSE\/ESA environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSSN3L","label":"z\/OS Communications Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG27M","label":"APARs - z\/VM environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"LOB16","label":"Mainframe HW"}}]
Document Information
Modified date:
07 August 1998