2012-04-24 2 views
1

50 개의 행을 포함하는 db2 테이블이 있습니다. 이 데이터를 내가 만든 cics 맵에 어떻게 표시 할 수 있습니까? 가능한가? 그렇다면 최대 24 행을 갖는 화면에서 50 행의 데이터를 수용하는 방법. 고마워요cics 맵에서 테이블 데이터를 표시하는 방법

+0

죄송합니다. COBOL에 대한 정보가 충분하지 않습니다. 그러나 24 행만 표시 할 수있는 화면에 50 행의 정보를 표시하는 것은 논리적으로 불가능하므로 결과에 대해 _paging_을 살펴 보시기 바랍니다. –

+3

작업중인 상점에서 이미 기본 페이징 CICS 디스플레이를 수행하기위한 템플리트 프로그램을 가지고있을 가능성이 매우 높습니다. 이러한 거래는 초보자가 이해하고 이해하기에 상당히 복잡 할 수 있습니다. 또한, 이런 종류의 작업을 수행하는 데 약 백만 가지의 프로그래밍 패턴이 있습니다. 따라서 모든 상점에는 따라야 할 표준 및 지침 세트가 있습니다. 동료 프로그래머에게 여기에 몇 가지 지침을 물어보십시오. 그래서 좀 더 솔직한/일반적인 질문에 도움이 될 수 있습니다. – NealB

답변

1

화면은 24 행 × 80 열입니다. 행에 40 열 미만의 데이터가 포함되어 있으면 두 개의 열 표시를 만들 수 있습니다. CICS 페이지에 머리말과 꼬리말이 있다고 가정하고 있으므로 어쨌든 24 행을 모두 가지지 않습니다. 50 개의 DB2 행을 표시하려면 둘 이상의 CICS 페이지를 작성해야합니다. 하나 개 CICS 필드에 DB2 정보를 넣을 수 있습니다 경우

,이 작업을 수행 할 수 있습니다

LINE DFHMDF POS=(03,01), 
      LENGTH=79, 
      ATTRB=(ASKIP,NORM,PROT), 
      OCCURS=20 

을 하나 개 이상의 CICS 필드가 필요하면, 당신은 개별적으로 각 라인을 표시해야합니다. CICS에는 그룹 OCCURS가 없습니다.

IBM CICS Manual

+2

SDF 2를 사용하면 SDF에서 발생을 정의 할 수 있으며 relavent 필드가 생성됩니다. 필드가있는 지점을 여전히 가지고 있습니다. 대부분의 코볼 (Cobol) 매장에는 이러한 종류의 프로그램에 대한 많은 예가 있으며, 그 중 하나를 복사하고 수정하십시오. –

0

그냥 터미널에 필드를 덤프하려면, 당신이 할 수있는 "EXEC CICS는 텍스트를 보내기"하고 그러나 당신이 제공 페이징 텍스트 문자열에서 원하는 데이터를 포맷합니다.

그러나 이미지도가 24 개의 80 바이트 라인 만있는 Mod-2 터미널에 구속되어 있다고합니다. 이 경우지도가 이미 존재합니다.지도를 표시하는 방법을 어떻게 요청할 수 있습니까? 이미 50 개의 필드가있는지도가 있습니다. 해당 필드를 채우고 "EXEC CICS 송신 맵"을 사용하십시오. 당신은 당신이 가지고있는지도, 또는 표시 할 데이터 항목의 크기를 게시하는 경우

아마, 당신은 ... 당신은 당신의 자신의 스크롤 로직을 작성해야합니다

1

을 더 나은 답변을 얻을 수 있습니다. 이 바퀴는 몇 번이나 여러 번 발명되었으며 아마 이미 자신의 가게에서 완성되었습니다. 다른 유사한 거래 및지도를 검색하고 복사하십시오. 단 하나의 원본 COBOL 프로그램 만 있고 다른 모든 프로그램은 COBOL 프로그램에서 복사된다는 오래된 농담이 있습니다. 동일한 일을 수행하는 이미 작성된 것으로 시작하면 작업이 훨씬 쉬워집니다.

앞뒤 스크롤 (전통적으로 PF7 및 PF8 키)과 테이블의 시작과 끝을 처리해야한다는 것을 기억하십시오.

관련 문제