IBM Support

Why am I getting an FTOPEN Dynamic Allocation Error?

Question & Answer


Question

I am running a REXX EXEC in batch. It allocates both ISPSLIB and ISPFILE in the JCL. I issue a ISPEXEC "FTOPEN" without the TEMP operand and get the following error:

 ISPF system data set allocation error - press Enter to continue.          
 Temporary control card data set cannot be allocated.                      
 DAIR RC = 12 dec, DARC = 0484 hex.                                        
   ISPF102 No work file            -/-Work file not open.                                                                     

Also in the job log there is the message:

 IEF244I xxxxxxxx yyyyyyyy - UNABLE TO ALLOCATE 1 UNIT(S)                   
         AT LEAST 1 OFFLINE UNIT(S) NEEDED.                                
 IEF877E xxxxxxxx NEEDS 1 UNIT(S)  200  FOR yyyyyyyy ISPzzzzz  FOR VOLUME vvvvvv-   1 OFFLINE                                                     

This happens right after the FTOPEN. If I don't specify TEMP and both data sets are in the JCL, then what is it trying to allocate dynamically?

Answer

If you are doing an FTOPEN without the TEMP keyword then File Tailoring uses the ISPWRKn DD for its' work file. If TEMP is used then ISPCTLn is used. If you are getting an allocation error then you probably have not preallocated these files. ISPF will use the TSO DAIR routines to allocate temporary files. The unit value is blank by default and will use the default for TSO. You can specify a default in the ISPF configuration utility, ISPCCONF.

Run TSO ISPCCONF and Select option 1 to:
"Create/Modify Settings and Regenerate Keyword File"
Then select Option 3, "PDF Exits and Other PDF Settings"
Scroll and verify that a valid value is set for the following:

Default PDF Unit . . . . . . . . . . . . SYSALLDA

This is the default used for PDF allocation.
Now to get Dialog Manager to use it for File Tailoring use

Option 4 - "ISPF Site-wide Defaults"

Scroll to the end of the Log/List settings and select

/ Use Default PDF Unit for ISPF Data Sets

This will cause the ISPF temporary files to use the Default PDF Unit.
Now end back to the main ISPCCONF screen and use option 4:

"Build Configuration Table Load Module"

This will build ISPCFIGU which then needs to be allocated to ISPLLIB on ISPF invocation or moved to your LPA or Linklist so as to be picked up when you invoke ISPF.


Also if you prefer you can preallocate the ISPF temporary files as described in the Planning and Customizing Manual under the section, "Preallocate ISPF temporary data sets to VIO".


//ISPWRK1 DD DISP=NEW,UNIT=VIO,SPACE=(CYL,(1,1)),
// DCB=(LRECL=256,BLKSIZE=2560,RECFM=FB)
//ISPWRK2 DD DISP=NEW,UNIT=VIO,SPACE=(CYL,(1,1)),
// DCB=(LRECL=256,BLKSIZE=2560,RECFM=FB)
...
//ISPWRKW DD DISP=NEW,UNIT=VIO,SPACE=(CYL,(1,1)),
// DCB=(LRECL=256,BLKSIZE=2560,RECFM=FB)
// In this section of JCL, there is one DD for each screen
//
defined, based on the value of keyword MAXIMUM_NUMBER_OF_
// SPLIT_SCREENS in the configuration table.
//
The DD name is in the form ISPWRKx, where x can be
// 1-9, A-W. For example, if the value of the keyword = 8,
//
only ISPWRK1 to ISPWRK8 need to be coded.


[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSBLLD","label":"ISPF for z\/OS"},"Platform":[{"code":"PF035","label":"z\/OS"}],"Component":"","Version":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
10 November 2016

UID

dwa1319684