inputForm을 통한 show 문 사용

show문을 사용하여 사용자에게 텍스트 양식을 전송하고 사용자가 해당 양식에 입력을 수행하면 새 트랜잭션을 시작하도록 할 수 있습니다.

show문에 다음 트랜잭션의 이름과 텍스트 양식을 지정할 수 있습니다. 레코드 이름은 선택사항입니다. 생성된 프로그램은 양식을 표시하며 CICS® 또는 IMS™ 환경에 다음 트랜잭션을 식별합니다. 프로그램 사용자로부터 입력이 수신되면 새 트랜잭션이 스케줄됩니다.

show 문을 사용할 때는 전송 대상 프로그램의 inputForm 특성과 같은 양식을 지정해야 합니다. inputForm 특성에는 처리가 시작되기 전에 프로그램에 입력을 제공하는 양식의 이름이 포함되어 있습니다. 전송 대상 프로그램은 초기 프로그램의 show문을 사용하여 표시된 것과 같은 양식을 읽어 시작됩니다. inputForm 특성 및 show문을 사용하여 IMS 연기 프로그램 스위치 또는 CICS의 RETURN TRANSID를 작성할 수 있습니다.

참고: IMS/VS의 경우에는 show 문 및 inputForm 특성을 사용할 때 두 프로그램이 같은 FormGroup을 공유해야 합니다. 다른 환경의 경우 양식은 다른 FormGroup에 있을 수 있으나 양식은 같아야 합니다.
프로그램에 대해 inputForm 특성을 지정한 경우, 프로그램이 시작될 때 발생하는 처리는 다음과 같이 달라집니다.
  • 양식이 수신되지 않은 경우 생성된 프로그램은 자동으로 inputForm 특성에 지정된 양식을 표시합니다.
  • 양식이 수신된 경우 생성된 프로그램은 자동으로 일반 처리 로직을 시작하는 데 필요한 유효성 검증 편집을 수행합니다.
show 문을 사용하여 프로그램 제어를 전송할 때는 사용자 대기 시간 중에 저장되는 데이터의 양과 저장되는 위치를 제어합니다.
  • 양식 외에 추가로 show 문을 정의할 때는 레코드를 지정할 수 있습니다.

    CICS 환경의 경우 Rational® COBOL Runtime은 레코드를 자동으로 COMMAREA에 저장합니다.

    Rational COBOL Runtime은 레코드를 자동으로 다음 위치 중 하나에 저장합니다.
    • spaSize 빌드 디스크립터 옵션이 0보다 크게 설정되었으며 spaADF 빌드 디스크립터 옵션이 "NO"로 설정된 대화식 처리의 경우에는 스크래치패드 영역(SPA)에 저장됩니다.
    • spaSize 빌드 디스크립터 옵션이 0으로 설정된 비대화식 처리의 경우, 또는 spaADF 빌드 디스크립터 옵션이 "YES"로 설정된 대화식 처리의 경우에는 작업 데이터베이스에 저장됩니다.
  • intensity 양식 필드 특성을 invisible로 설정하여 양식에 추가 데이터를 저장할 수 있습니다. 이렇게 하면 전송 대상 프로그램에서 inputForm을 읽을 때 이 데이터를 사용할 수 있으나 양식이 표시될 때는 사용자가 이 데이터를 보지 못하도록 할 수 있습니다. 이 양식의 사본은 사용자가 도움말 양식을 요청하는 경우 다시 표시될 수 있도록 작업 데이터베이스에 저장됩니다.
IMS/VS 환경의 경우 작업 데이터베이스에 사본을 저장하지 않으려면 다음 작업을 수행해야 합니다.
  • 양식에 있는 모든 변수 필드의 modified 특성을 YES로 설정하십시오. 이는 양식에 있는 필드의 기본 속성을 정의할 때 수행하거나 set 문을 사용하여 수행할 수 있습니다.
  • 다른 모든 특성은 show문 전에 정의된 값으로 설정된다는 점을 참고하십시오.
  • EGL add 또는 replace 문을 사용하여 데이터를 데이터베이스에 저장한 후 이 데이터를 전송 대상 프로그램에서 복원할 수 있습니다.
  • show 문을 사용하여 같은 프로그램으로 전송할 수도 있습니다(프로그램 A는 show 문을 사용하여 프로그램 A로 전송할 수 있음).