We are trying to use DC-SORT in a COBOL program and are getting an error on the expand of the SETSORT statement because it adds TRANSFER as a COBOL command which the COBOL compiler rejects. Why is this happening?
* SETSORT PROGRAM * FOR SORT-MAP-LINE LENGTH 80 * FIELDS SORT-GRP-NUM-LOC-INVEN 7 AS * SORT-NUMA-ITEM 26 AS. MOVE 'SETSORT ' TO TPSPROC. MOVE '0' TO TPSSESN. MOVE 'S' TO TPSRQST. MOVE 'P' TO TPSELEM. MOVE 0080 TO TPSRLEN. MOVE 0007 TO TPSKLEN (01). MOVE 'A' TO TPSKORD (01). MOVE 0026 TO TPSKLEN (02). MOVE 'A' TO TPSKORD (02). MOVE 0002 TO TPSKNUM. TRANSFER 'TPSET' RETURN USING TPSCOMM
==007248==> IGYPS2072-S "TRANSFER" was invalid. Skipped to the next verb, period or procedure-name definition. ==007248==> IGYPS0038-S Expected a "SORT" file-name, but found "USING". The statement was discarded.
Environment
Release: Component: IDMS
Resolution
Use TPSBCOBC as the pre-processor for CICS IDMS programs, and TPSBCOBI for IDMS DC programs. Use TPSBCOBC for CICS COBOL programs, TPSBCOBI for IDMS DC. This will eliminate the TRANSFER statement from being included in TPSORT CICS pre-processor output.