CICS 또는 IMS에서 세그먼트화된 프로그램의 동작

EGL 세그먼트화된 프로그램은 CICS® 또는 IMS™ 환경에서 특수한 고려사항을 필요로 합니다.

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