Identification Division

Identification Division은 모든 COBOL 소스 프로그램의 제일 처음에 기술되어야 한다. Identification Division에는 프로그램의 이름 및 프로그램 정보를 기술하는 PROGRAM-ID paragraphOPTIONAL paragraph으로 구성된다. 본 장에서는 Identification Division에 대해서 설명한다.

1. PROGRAM-ID paragraph

PROGRAM-ID paragraph는 프로그램의 이름과 속성을 지정한다. PROGRAM-ID paragraph은 Identification Division에서 필수적인 구문이며 제일 처음에 기술해야 한다.

figure identification division
PROGRAM-ID paragraph

다음은 각 설정 항목에 대한 설명이다.

  • program-name

    • 프로그램 이름을 지정한다. 하이픈과 0-9 그리고 알파벳 문자를 사용할 수 있으며 적어도 한 글자 이상의 알파벳 문자가 포함되어야 한다.

    • 다음의 값을 설정할 수 있다.

      항목 설명

      RECURSIVE

      COBOL 프로그램이 재귀적으로 호출될 수 있음을 알려주는 옵션이다. RECURSIVE clause는 컴파일 단위에서 가장 바깥에서 실행되는 프로그램에 대해서만 지정이 가능하다. 재귀적인 프로그램은 중첩된 서브 프로그램을 포함시킬 수 없다. RECURSIVE가 지정되어 있는 경우 호출되어 아직 실행 중이라도 해당 프로그램 이름으로 재진입이 가능하다. RECURSIVE가 지정되어 있지 않는 경우엔 실행 중인 프로그램에 다시 재진입되지 않는다.

      INITIAL

      프로그램 이름이 호출되었을 때 프로그램 이름과 그 안에 포함된 프로그램이 초기 상태가 될 것을 지정한다.

      프로그램은 다음과 같은 경우에 초기상태가 된다.

      • 프로그램이 처음 실행될 때

      • INITIAL clause를 갖는 프로그램이 호출될 때마다

      • CANCEL statement 실행 후 해당 프로그램이 처음으로 호출되었을 때

      프로그램이 초기상태에 있을 경우 다음이 실행된다.

      • 프로그램 내에 WORKING-STORAGE section의 내부 데이터들이 초기화된다. VALUE clause가 지정되어 있는 경우에는 주어진 데이터로 초기 설정된다. VALUE clause가 지정되지 않는 경우 경우 해당 데이터의 초기값은 미정의 상태이다.

2. OPTIONAL paragraph

Identification Division에서 OPTIONAL한 paragraph는 다음과 같으며, 생략가능하다.

구분 설명

AUTHOR

프로그램 작성자 이름을 기술한다.

INSTALLATION

회사나 프로그램이 사용되는 장소 이름을 기술한다.

DATE-WRITTEN

프로그램 작성 날짜 기술한다.

DATE-COMPILED

프로그램이 컴파일된 날짜를 기술한다.

SECURITY

프로그램의 보안 수준에 대한 것을 기술한다.

기술된 내용은 소스코드에 정보를 담는 용도로만 사용되며 프로그램의 실행에 영향을 주지 않는다.