CICS 또는 IMS에서 세그먼트화된 프로그램의 동작
EGL 세그먼트화된 프로그램은 CICS® 또는 IMS™ 환경에서 특수한 고려사항을 필요로 합니다.
이러한 환경에서 EGL 세그먼트화된 프로그램을 처음으로 호출하면 프로그램이 다음과 같이 작동합니다.
- 사용자가 새로 프로그램을 시작했는지를 발견하는 작업을 포함하여 초기화 태스크를 수행합니다.
- 프로그램 논리의 시작 부분에 제어를 부여합니다.
- 각 EGL converse 문을 구현합니다.
- 사용자 프로그램 대화의 현재 상태를 반영하는 사용자 특정 값 세트인 프로그램 상태를 저장하기 위해 작업 데이터베이스를 사용합니다. 이 상태에는 모든 레코드에 대한 데이터와 양식이 포함되고 적절한 행에서 프로그램을 실행하는 데 필요한 정보가 포함됩니다.
- 데이터베이스 및 복구 가능 자원을 커미트합니다.
- 모든 잠금을 해제합니다.
- 데이터베이스 open 문에 forUpdate 옵션이 있는 경우에도 데이터베이스 위치가 유지되지 않습니다.
- 양식을 대화(converse)합니다.
- 종료합니다.
사용자가 조치(예: 비즈니스 데이터 갱신)를 수행할 때,
런타임 시스템이 프로그램을 메모리로 복원합니다. 프로그램이
처음부터 다시 시작됩니다. 세그먼트화된 프로그램은 다음과 같이 자동으로 작동합니다.
- 프로그램이 다시 시작되었는지를 발견하는 작업을 포함하여 초기화 태스크를 수행합니다.
- 모든 양식과 레코드에 대한 데이터와 프로그램에서 실행되는 converse 문에 대한 정보를 포함하여 프로그램 상태를 복원합니다.
- 사용자 입력을 읽고 편집을 수행합니다.
- 다음 converse 문을 구현할 때 주기를 계속합니다.
- 프로그램 상태를 저장합니다.
- 데이터베이스 및 복구 가능 자원을 커미트합니다.
- 모든 잠금을 해제합니다.
- 데이터베이스 open 문에 forUpdate 옵션이 있는 경우에도 데이터베이스 위치가 유지되지 않습니다.
- 양식 또는 VGUI 레코드를 대화(converse)합니다.
- 종료합니다.