Nogle få gange løber man ind i udfordringer, som ikke lader sig så let løse, og hvor man godt kan leve med at problemet ikke bliver løst, fordi det kun opstår i helt specielle situationer. Hvis du er løbet ind i ISPF fejlen "ISPT036 Table in use ... ENQUEUE failed" i ISPF batch, så er jeg rimelig sikker på, at du ved, hvad jeg mener. Min gode ven og kollega Johnny Mossin satte sig for at løse problemet endegyldigt, og det lykkedes faktisk. Selv om det er en sjælden forekommende problemstilling, så skal du da ikke snydes for løsningen, så du ikke behøver kæmpe i timevis med at løse problemet.
"ISPT036 Table in use ... ENQUEUE failed" kan opstå i flere forskellige sammenhænge i ISPF batch, og den mest udbredte løsning er, at allokere et temporært ISPPROF dataset. Kun i meget få tilfælde er dette ikke helt nok, for eksempel hvis du kører flere samtidige ISPF batchjobs. Så er det, at du kan gribe til følgende løsning:
Normalt vil ISPPROF allokeringen i RUNISPF steppet være magen til ISPTABL allokeringen i ovenstående eksempel, og det plejer at være tilstrækkeligt til at slippe af med ISPT036 fejlen. Men hvis du vil være helt sikker på ikke at støde ind i fejlen på ISPPROF, så skal du preallokere ISPPROF datasettet som i ovenstående IEBCOPY step. Og derudover skal du kopiere de to angivne members fra et andet ISPPROF dataset over i det temporære ISPPROF dataset. Jeg har her benyttet SISPTENU datasettet fra ISPF installationsbiblioteket Det er ikke sikkert, at det hedder SYS1.SISPTENU på din installation, så her må du lige få fat i ISPF systemprogrammøren for at få at vide, hvad det hedder, hvis du ikke vil benytte dit eget ISPPROF dataset.