IMS 스니펫 카테고리는 다음과 같습니다.
첫 번째 네 가지 스니펫 카테고리를 사용하여 COBOL 프로그램에 IMS DL/I 호출을 추가할 수 있습니다. 이 카테고리에 있는 각 스니펫은 개별 DL/I 함수에 해당합니다. 이러한 스니펫 중에서 하나를 호출하면 특정 DL/I 함수 호출과 관련된 세부사항이 표시된 대화 상자가 나타납니다. 대화 상자 맨 위에 있는 선택한 DL/I 함수 호출과 호환 가능한 인터페이스 목록에서 DL/I 호출에서 사용할 인터페이스 유형을 지정합니다. 남아 있는 필드는 해당 DL/I 호출의 매개변수에 해당하며 다음과 같은 예외가 있습니다.
이러한 스니펫을 System z LPEX 편집기나 COBOL 편집기와 결합하여 사용하는 경우에는 스니펫 코드에 있는 AIB나 PCB 제어 블록의 중첩 필드에 대한 참조가 자동으로, 참조된 AIB나 제어 블록에 있는 실제 필드로 변경됩니다. 예를 들어, 코드 행 MOVE LENGTH OF AIB TO AIBRLEN OF AIB를 생성하는 경우, 스니펫 생성기는 대화 상자에서 선택한 AIB 제어 블록의 오프셋 8로 정의된 필드를 검색하여 AIBRLEN 필드의 이름으로 사용합니다. 코드에서 AIB 블록을 구문 분석할 수 없는 경우에는 해당 필드에 기본값이 사용됩니다.
DL/I 호출을 생성할 때, 스니펫 코드 생성기는 VALUE 절이 DL/I 함수와 동등한 레벨 77 필드를 검색하여 호출 과정에서 이 필드를 사용합니다. 예를 들어, GHN 스니펫 코드를 작성하는 경우, 스니펫 코드 생성기는 이 코드를 구문 분석하여 다음과 같은 선언을 찾습니다.
77 GET-HOLD-NEXT PICTURE X(4) VALUE 'GHN '.
여기서 GET-HOLD-NEXT는 함수 호출로 대체됩니다. 일치하는 것이 없는 경우에는 해당 스니펫 이름(이 경우에는 GHN)이 함수 호출에 사용됩니다.
이 스니펫은 일반적으로 사용하는 COBOL 데이터 구조를 프로그램에 추가합니다.
이 스니펫은 DL/I 함수 이름을 레벨 77 데이터 구조로 추가합니다.