content_image/994613.jpg content_image/994614.jpg
## 6.12 Hints and tips 

In this section, we summarize the issues that we experienced during the JES2 migration process. This experience can vary on your site and has no claim to completeness. 

## 6.12.1 JCL errors 

After replacing JES3 with JES2, we observed several JCL errors in production BATCH processing. The root cause was the different handling of the JCL DD DLM option. The customer’s production JCL included the jobs that are shown in Example 6-30. 

//SYSIN DD *,DLM=$$ first line second line //third line $$ 

## JES3 DLM handling 

Under JES3, you can use the DLM option with DD * or DD DATA. In both cases, the SYSIN records are read until the characters that are defined in the DLM option appear. 

## JES2 DLM handling 

JES2 handles DLM differently from JES3. If you code a DLM character in your JCL with DD *, the input stream is read until the DLM character or // appears. The differences between both JES versions when DD *,DLM JCL is used are listed in Table 6-20. 

<img src='content_image/994613.jpg'>

The solution for this issue is to migrate all of your JCL by using DD *,DLM= to DD DATA,DLM=. 

## 6.12.2 S722 abends in JCL 

Some customer’s jobs were abending with S722, which means that the number of lines that is produced by these jobs exceeded a certain limit. A customer’s limit was set to 16 message I/O (MIO) lines, as shown in Example 6-8 on page 127. Even so, some customer jobs were abending after only one line was produced. 

The root cause was determined to be the different handling of the JCL accounting field of the job card. The handling of the accounting field under JES2 is shown in Figure 6-16. 

<img src='content_image/994614.jpg'>

