ProMapper 시작하기
본 장에서는 리소스 타입별로 ProMapper 모듈을 생성하는 과정에 대해 알아보고 각 과정마다 필요한 세부 절차 및 기능에 대하여 설명한다.
1. 개요
본 장에서는 다음과 같은 주제와 순서로 ProMapper 모듈을 생성한다.
-
리소스 타입별 기본 정보 등록
ProMapper를 생성하기 위한 첫 절차로 리소스 타입별로 각 메뉴를 선택한 후 ProMapper 대화상자에서 생성과 관련된 기본 정보를 등록하는 방법에 대하여 설명한다. 상세한 내용은 리소스 타입별 기본 정보 등록을 참고한다.
-
리소스 타입별 편집기 사용
구조체, 전문, 매핑 편집기의 화면 구성과 사용 방법에 대하여 설명한다. 상세한 내용은 리소스 타입별 편집기 사용을 참고한다.
-
소스 생성, 컴파일, Dlupdate
리소스 타입별로 생성된 ProMapper를 소스 생성, 컴파일, Dlupdate하는 과정과 방법에 대하여 설명한다. 상세한 내용은 소스 생성, 컴파일, Dlupdate를 참고한다.
2. 리소스 타입별 기본 정보 등록
본 절에서는 리소스 타입별로 ProMapper 모듈을 생성하기 위해 기본 정보를 등록하는 절차에 대해 설명한다.
2.1. 구조체
다음은 구조체를 등록하는 과정에 대한 설명이다.
-
작업영역 네비게이터에서 오른쪽 마우스 버튼을 클릭한 후 [New] > [Structure] 메뉴를 선택한다.
-
다음과 같이 ProMapper 대화상자가 나타난다.
ProMapper 대화상자는 구조체를 생성하기 위한 기본 정보를 등록하는 역할을 수행한다.
ProMapper 대화상자 – 구조체항목 설명 리소스 그룹
WebAdmin에 등록된 리소스 그룹만 표시되며 필수 항목이다. 만약 원하는 리소스 그룹이 없는 경우 WebAdmin에서 추가할 수 있다.
리소스 그룹을 추가하기 위해서는 WebAdmin에 접속한 후, [메타관리] > [메타시스템] > [리소스 그룹 관리] 메뉴를 선택한다. 리소스 그룹관리 화면에서 현재 설정된 리소스 그룹을 확인하고 추가할 리소스 그룹을 등록한다.
논리명
등록할 구조체의 논리명을 입력한다.
물리명
등록할 구조체의 물리명을 입력한다.
리소스 설명
등록할 구조체에 대한 부가 설명을 입력한다.
Excel 파일 Import
Excel 파일 Import는 구조체 생성을 위한 Excel 고유 템플릿을 다운로드하여 구조체 항목이 작성된 Excel 파일을 구조체 편집기로 가져오는 기능이다.
만약 구조체의 기본 정보를 등록할 때 이 기능을 사용하는 경우 리소스 그룹, 논리명, 물리명, 리소스 설명 항목 전체가 비활성화된다.
다음은 Excel 파일을 Import하는 예이다.
-
Excel 파일 작성
Excel 파일에 생성할 구조체의 정보를 입력한다. Excel 파일은 다음과 같은 형식으로 만들어야 하며, 각 성정 값의 위치(열/행)에 맞게 입력해야 한다.
Excel 파일 Import – Excel 템플릿 형식 -
구조체 생성
작업영역 네비게이터에서 오른쪽 마우스 버튼을 클릭한 후 [New] > [Structure] 메뉴를 선택한다.
-
Excel Import 설정
구조체를 생성하는 ProMapper 대화상자에서 'Excel 파일 Import' 체크박스를 선택한다.
Excel 파일 Import – Excel파일 import 선택다음은 'Excel 파일 Import'를 선택했을 때 활성화되는 항목이다.
Excel 파일 세팅 설명 Property 확인 후 등록
메타 정보가 서버에 있는지 확인한 후 해당 메타 정보가 없으면 Excel 파일에 입력된 필드 정보를 메타에 등록한 후 구조체 정보를 가져온다.
서버와 동일한 물리명의 구조체 업데이트
Excel 파일에서 가져온 구조체 정보와 동일한 구조체가 서버에 존재하는 경우 서버에 있는 구조체의 내용을 Excel 파일에서 읽어 온 정보로 변경한다.
[찾아보기..] 버튼을 클릭하여 작성한 Excel 파일을 검색한다.
Excel 파일 Import – 작성한 Excel 파일 검색 -
구조체 필드 정보 비교
구조체 필드정보 비교 대화상자에서 Excel 파일로부터 읽은 컬럼 정보가 메타에 등록된 필드와 일치하는지 여부를 확인한다.
Excel 파일 Import – 구조체 필드정보 비교(일치)대화상자에서 메타에 등록된 필드와 일치하지 않는 필드가 있는 경우 다음 그림과 같이 표시된다.
Excel 파일 Import – 구조체 필드정보 비교(불일치) -
구조체 편집
구조체 편집기에 Excel 파일에서 정의한 리소스 그룹, 논리명, 물리명 등의 구조체 정보가 생성된다. 구조체 편집기에서 Excel 파일에 입력한 컬럼 값들이 추가된 것을 다음 그림에서 확인할 수 있다.
Excel 파일 Import – 구조체 편집
-
-
ProMapper 대화상자에서 구조체 생성을 위한 기본 정보를 모두 설정한 후 [완료(F)] 버튼을 클릭하면 등록된 정보에 따라 구조체를 편집할 수 있는 화면으로 이동한다. 구조체 편집기 화면에 대한 내용은 구조체 편집기를 참고한다.
2.2. 전문
다음은 전문을 등록하는 과정에 대한 설명이다.
-
작업영역 네비게이터에서 오른쪽 마우스 버튼을 클릭한 후 [New] > [Message] 메뉴를 선택하면 다음과 같이 ProMapper 대화상자가 나타난다. ProMapper 대화상자는 전문을 생성하기 위한 기본 정보를 등록하는 역할을 수행한다.
ProMapper 대화상자 – 전문항목 설명 리소스 그룹
WebAdmin에 등록된 리소스 그룹만 표시되며 필수 항목이다. 만약 원하는 리소스 그룹이 없는 경우 WebAdmin에서 추가할 수 있다.
리소스 그룹을 추가하기 위해서는 WebAdmin에 접속한 후 [메타관리] > [메타시스템] > [리소스 그룹 관리] 메뉴를 선택한다. 리소스 그룹관리 화면에서 현재 설정된 리소스 그룹을 확인하고 추가하려는 리소스 그룹을 등록한다.
메시지 타입
전문 타입에는 다음과 같은 두 가지 형태를 지원한다.
-
FixedLength: 고정된 컬럼 길이 값을 기준으로 각 컬럼을 구분하는 전문 타입이다.
-
Delimiter: 특정 구분 기호를 기준으로 각 컬럼을 구분하는 전문 타입이다.
논리명
등록할 전문의 논리명을 입력한다.
-
메시지Fld: 개발자가 입력한 논리명 뒤에 자동으로 '메시지Fld' 단어가 추가되어 등록된다. 논리명 뒤에 추가되는 '메시지Fld'는 WebAdmin의 환경설정 중 MESSAGE_LOGICAL_SUFFIX와 MESSAGE_LOGICAL_SUFFIX_FLD에서 변경할 수 있다.
-
메시지Del: Delimiter 방식을 사용할 경우 논리명에 '메시지Del' 단어가 추가되고 WebAdmin의 환경설정 중 MESSAGE_LOGICAL_SUFFIX와 MESSAGE_LOGICAL_SUFFIX_DEL에서 변경할 수 있다.
물리명
등록할 전문의 물리명을 입력한다.
-
MsgFld: 개발자가 입력한 물리명 뒤에 자동으로 'MsgFld' 단어가 추가되어 등록된다. 물리명 뒤에 추가되는 'MsgFld'는 WebAdmin의 환경설정 중 MESSAGE_PHYSICAL_SUFFIX와 MESSAGE_PHYSICAL_SUFFIX_FLD에서 변경할 수 있다.
-
MsgDel: Delimiter 방식을 사용할 경우 물리명에 'MsgDel' 단어가 추가되고 WebAdmin의 환경설정 중 MESSAGE_PHYSICAL_SUFFIX와 MESSAGE_PHYSICAL_SUFFIX_DEL에서 변경할 수 있다.
-
-
위와 같이 ProMapper 대화상자 – 전문에서 전문 생성을 위한 기본 정보를 모두 설정한 후 [완료(F)] 버튼을 클릭하면 등록된 정보에 따라 전문을 편집할 수 있는 화면으로 이동한다. 전문 편집기 화면에 대한 내용은 전문 편집기를 참고한다.
2.3. 매핑
다음은 맵을 등록하는 과정에 대한 설명이다.
-
작업영역 네비게이터에서 오른쪽 마우스 버튼을 클릭한 후 [New] > [Mapping] 메뉴를 선택하면 다음과 같이 ProMapper 대화상자가 나타난다. ProMapper 대화상자는 맵을 생성하기 위한 기본 정보를 등록하는 역할을 수행한다.
ProMapper 대화상자 – 매핑항목 설명 리소스 그룹
WebAdmin에 등록된 리소스 그룹만 표시되며 필수 항목이다. 만약 원하는 리소스 그룹이 없는 경우 WebAdmin에서 추가할 수 있다.
리소스 그룹을 추가하기 위해서는 WebAdmin에 접속한 후 [메타관리] > [메타시스템] > [리소스 그룹 관리] 메뉴를 선택한다. 리소스 그룹관리 화면에서 현재 설정된 리소스 그룹을 확인하고 추가할 리소스 그룹을 등록한다.
논리명
등록할 맵의 논리명을 입력한다.
물리명
등록할 맵의 물리명을 입력한다.
-
위와 같이 ProMapper 대화상자 – 매핑에서 맵 생성을 위한 기본 정보를 모두 설정한 후 [완료(F)] 버튼을 클릭하면 등록된 정보에 따라 맵을 편집할 수 있는 화면으로 이동한다. 맵 편집기 화면에 대한 내용은 매핑 편집기를 참고한다.
3. 리소스 타입별 편집기 사용
본 절에서는 리소스 타입별 즉 구조체, 전문, 맵 편집기를 사용하는 방법에 대해 설명한다.
3.1. 구조체 편집기
구조체 편집기는 아래 그림과 같이 3개의 영역으로 구성된다.
다음은 구조체 편집기 화면의 각 영역에 대한 설명이다.
① 편집 영역
② 전문 생성 영역
③ 구조체 검색 영역
① 편집 영역
구조체 필드를 추가하거나 편집하는 영역으로 다른 구조체들의 집합으로도 구성할 수 있다.
| 항목 | 설명 |
|---|---|
논리명 |
구조체 필드의 논리명을 설정한다. |
물리명 |
구조체 필드의 물리명을 설정한다. |
타입 |
구조체 필드의 타입을 설정한다. |
Include |
구조체 필드타입이 include인 경우 포함할 다른 구조체를 설정한다. |
길이 |
구조체 필드의 길이를 설정한다. |
배열크기 |
필드를 배열로 사용할 때 반복 횟수를 설정한다. |
Decimal |
소수점 이하의 표시 자리수를 지정한다. |
설명 |
구조체 필드에 대한 설명을 입력한다. |
▲ |
구조체 필드 위로 이동한다. |
▼ |
구조체 필드 아래로 이동한다. |
|
서버에 있는 메타 정보와 구조체 필드 정보를 동기화할 수 있는 버튼이다. 이 버튼을 클릭하면 필드 동기화 대화상자가 나타난다. |
|
등록된 구조체의 기본 정보를 확인할 수 있는 대화상자가 나타난다. |
다음은
버튼에 대한 설명이다. 이 버튼을 클릭하면 다음과 같은 필드 동기화 대화상자가 나타난다.
대화상자는 Structure(구조체), 프로퍼티 리스트(메타)로 구분하여 표시된다. 구조체 영역에서는 현 구조체의 필드정보가 화면 왼쪽에 표시되며 Property 목록 영역에서는 서버에 등록된 메타 정보가 화면 오른쪽에 표시된다. 만약 현재 구조체와 일치하는 않는 메타 정보가 없는 경우에는 “메타가 존재하지 않습니다”라는 메시지가 메타 영역에 표시된다.
[Property와 동기화] 버튼을 클릭하면 서버에 등록된 메타 정보를 기준으로 구조체 필드정보가 서버에 등록된 메타 정보로 변경된다. 이와 같이 동기화 작업이 완료되면 [저장] 버튼이 활성화된다. [저장] 버튼을 클릭하면 변경된 구조체 필드정보가 일괄 변경되어 저장된다.
|
등록되지 않은 메타인 경우 WebAdmin에 접속하여 [메타관리] > [메타시스템] > [Meta관리] > [Property 관리] 메뉴를 클릭하여 등록할 메타를 Proerty 관리 화면에서 추가한다. |
② 전문 생성 영역
구조체 편집기 화면에서 구조체와 1:1로 대응하는 전문을 생성할 수 있는 영역이다.
다음은 전문 생성 영역의 각 항목에 대한 설명이다.
| 항목 | 설명 |
|---|---|
편집 |
생성한 전문을 선택하면 전문 편집 대화상자가 나타난다. |
FixedLength |
생성할 전문 타입이 FixedLength인 경우 [생성] 버튼을 선택한다. 삭제하는 경우에는 [삭제] 버튼을 선택한다. |
Delimiter |
생성할 전문 타입이 Delimiter인 경우 [생성] 버튼을 선택한다. 삭제하는 경우에는 [삭제] 버튼을 선택한다. |
FDL |
지원되지 않는 전문 타입이다. |
생성할 FixedLength 또는 Delimiter 전문 타입의 생성 버튼를 선택하면 구조체와 1:1 관계로 전문이 자동 생성된다. 즉, 해당 메시지의 [생성], [삭제] 버튼을 선택하는 것만으로도 전문 타입이 생성 및 삭제된다.
전문 생성이 완료되면 아래 그림과 같이 편집 콤보박스에 선택된 전문 타입이 추가된다. 이때 구조체와 전문은 1:1 관계가 성립되므로 별도의 맵을 작성할 필요가 없다.
위와 같이 자동으로 생성된 전문을 편집하려면 편집할 전문 타입을 '편집' 콤보박스에서 선택한다. 그러면 다음과 같이 전문 편집 대화상자가 나타난다.
|
전문 편집 대화상자를 편집하는 방법은 구조체와 동일하다. |
다음은 전문 타입별로 생성된 전문을 편집하는 방법에 대한 설명이다.
-
FixedLength
[편집]과 [정보] 탭으로 구성되어 있다. [편집] 탭에서는 선택된 전문 타입에 따라 전문을 편집할 수 있는 화면이고, [정보] 탭에서는 구조체 기본 정보를 표시한다.
본 절에서는 전문 편집 대화상자의 [정보] 탭은 ProMapper 모듈의 기본 정보를 보는 영역으로 별도로 화면 설명은 하지 않는다.
구조체 편집기 화면 – 전문 편집 대화상자 – FixedLength다음은 FixedLength 전문 타입의 필드 길이 설정에 대한 설명이다. 단, 이 설정은 숫자 타입에만 적용된다.
항목 설명 부호포함(자리수+1)
필드들의 길이를 모두 지정한 후 정의한 모든 필드 길이에 부호 길이를 +1 해주는 기능이다.
소수점 포함(자리수+1)
필드들의 길이를 모두 지정한 후 정의한 모든 필드 길이에 소수점 길이를 +1 해주는 기능이다.
전문 Trim 세팅
다음은 FixedLength 전문 타입의 trim 설정에 대한 설명이다.
-
rtrim: 오른쪽 space를 잘라낸다. (기본값)
-
ltrim: 왼쪽 space를 잘라낸다.
-
lrtrim: 왼쪽 또는 오른쪽 space를 잘라낸다.
-
None: trim을 하지 않는다.
다음은 전문 편집 대화상자의 컬럼 그리드에 대한 설명이다.
항목 설명 논리명
구조체 필드의 논리명이다.
물리명
구조체 필드의 물리명이다.
타입
구조체 필드의 타입이다. (예: long, number, string)
Include
이미 등록된 전문을 구조체 필드로 사용하는 경우 Include 항목에 전문 물리명이 나타난다.
길이
구조체 필드의 길이이다.
배열크기
구조체 필드의 반복횟수이다.
설명
구조체 필드에 대한 부가 설명이다.
정렬
구조체 필드의 정렬을 지정한다.
Fill
FxedLength의 타입인 경우 지정된 길이보다 데이터 길이가 작은 경우 Fill 항목에 정의된 문자로 자리 수를 채운다.
Decimal
소수점 이하 자리수의 표현이다.
포인트
소수점 표현 여부이다.
부호
부호 표현 여부이다.
구분자
전문타입이 Delimiter인 경우 구분자를 정의하는 항목이다.
인코딩 옵션
전문의 인코딩 옵션을 지정할 수 있다.
-
-
Delimiter
구조체 편집기 화면 – 전문 편집 대화상자 – Delimiter다음은 Delimiter 전문 타입의 구분자 설정에 대한 설명이다.
구분자 설명 ;
기본 값
그 외
원하는 문자를 구분자로 사용할 수 있다.
③ 구조체 검색 영역
기존에 생성된 구조체를 검색하여 구조체 편집기에서 구조체 필드를 추가할 수 있는 영역이다.
다음은 구조체 검색 영역의 각 항목에 대한 설명이다.
-
버튼
버튼 설명 [검색]
입력된 구조체명과 검색 조건을 설정하여 운영 영역(RI)의 구조체를 검색한다.
[추가]
검색된 결과 중에 선택된 구조체를 구조체 편집기에 추가한다.
-
검색 조건
검색 조건 설명 범위선택
전체, 사용자
검색명칭 선택
논리명, 물리명
검색어위치 선택
시작어부터, 입력어 포함
-
검색 결과
다음은 구조체 검색 영역의 컬럼 그리드에 대한 설명이다.
항목 설명 논리명
구조체의 논리명을 표시한다.
물리명
구조체의 물리명을 표시한다.
3.1.1. 구조체 추가
다음은 구조체 검색 영역에서 검색된 구조체를 구조체 편집기에 추가하는 방법을 설명한다. 아래와 같은 방법으로 구조체 편집기에 구조체를 추가할 수 있다.
-
[추가] 버튼 실행
추가할 구조체를 선택한 후 [추가] 버튼을 클릭하면 구조체 편집기에 구조체가 추가된다.
구조체 편집기 화면 – 구조체 검색 영역 – [추가] 버튼 -
마우스 더블클릭
추가할 구조체를 선택한 후 더블클릭하면 구조체 편집기에 구조체가 추가된다.
구조체 편집기 화면 – 구조체 검색 영역 – 마우스 더블클릭 -
드래그 앤드 드롭
추가할 구조체를 구조체 편집기로 드래그 앤드 드롭하면 구조체 편집기에 구조체가 추가된다.
구조체 편집기 화면 – 구조체 검색 영역 – 드래그 앤드 드롭
위와 같은 방법으로 구조체를 추가하면 결과 화면은 다음과 같다.
이와 같은 구조체 추가 과정을 수행하면 이미 만들어진 구조체의 논리명과 물리명을 변경하는 것만으로 재사용이 가능하다.
논리명 컬럼에 각 구조체의 정보를 나타내는 아이콘이 표시된다. 다음은 각 아이콘에 대한 설명이다.
| 항목 | 설명 |
|---|---|
|
등록되지 않은 메타이거나 구조체 필드의 필수입력 값의 누락으로 인해 나타나는 아이콘이다. 표시에 마우스 커서를 이동하면 오류의 원인을 해결할 수 있는 툴팁이 나타난다. |
|
서버에 등록된 메타의 정보와 일치하지 않을 때 나타나는 아이콘이다. 메타 정보와 일치하지 않는 이유는 대부분 데이터 타입, 길이, 논리명 등이 구조체 필드 정보와 메타 정보가 일치하지 않아 발생한다. 일치된 메타 정보를 사용하려면 일치해야 할 정보를 확인하고 필드 정보 또는 메타 정보를 수정한다. |
3.1.2. 구조체 편집
구조체 편집기 화면을 기준으로 구조체 편집에 유용한 기능과 구조체 편집기에 필드를 추가하는 방법에 대해 설명한다.
구조체를 편집하는 방법은 2가지로 나뉜다. 즉, 편집 기능 메뉴를 사용하거나 Excel 파일에 있는 내용을 구조체 편집기로 복사 또는 붙여넣기하는 것으로 구조체 편집을 쉽게 할 수 있다.
다음은 구조체를 편집하는 방법에 대한 설명이다.
-
편집 기능
구조체 편집기 화면의 편집 영역에서만 동작하는 편집 기능을 사용한다.
구조체 편집기위 그림의 편집 영역에 오른쪽 마우스 버튼을 클릭하면 다음과 같은 편집 기능 메뉴가 나타난다. 이 메뉴는 구조체를 생성하는데 유용한 기능이다.
구조체 편집기 – 편집 기능 메뉴다음은 편집 기능 메뉴에 대한 설명이다.
메뉴 설명 삽입(Ctrl+I)
선택된 구조체 필드 앞에 새로운 필드를 추가한다.
추가(Ctrl+A)
현재 구조체 편집기의 편집 영역에 보이는 구조체 필드 다음에 새로운 필드를 추가한다.
복수 필드추가(Ctrl+Y)
한꺼번에 여러 개의 구조체 필드를 추가하고자 할 때 추가할 필드 개수를 입력 받고 그 개수만큼 새 필드를 추가한다.
삭제(Delete)
선택된 필드를 삭제한다.
복사(Ctrl+C)
선택된 필드가 복사된다.
붙여넣기(Ctrl+V)
“복사”한 필드들을 붙여 넣는다.
찾기(Ctrl+F)
물리명 또는 논리명으로 컬럼의 위치를 찾는다.
Excel 파일로 내보내기
구조체 필드 정보를 Excel 파일로 내보내는 기능을 수행한다.
속성(Ctrl+T)
구조체 필드의 속성 정보를 표시한다.
Open Editor
선택한 필드가 구조체인 경우 해당 구조체 편집기가 열린다.
다음은 [Excel 파일로 내보내기] 메뉴에 대한 설명이다.
생성한 구조체를 Excel 파일로 작성하는 경우 [Excel 파일로 내보내기] 버튼을 클릭한다. 이 버튼을 클릭하면 Excel 파일을 사용자의 로컬 컴퓨터에 저장할 수 있는 Excel 파일로 내보내기 대화상자가 나타난다. 이 대화상자에서 Excel 파일이 저장될 경로를 지정한 후 [저장] 버튼을 클릭한다.
편집 기능– Excel 파일로 내보내기 대화상자
편집 기능– Excel 파일로 내보내기 결과 파일다음은 위 결과 파일의 각 항목에 대한 설명이다.
항목 설명 프로젝트명
프로젝트명
작성일
Excel로 구조체 내보내기 작성한 날짜
다음은 Excel로 내보내기 결과 항목 중 구조체 정보에 대한 설명이다.
항목 설명 리소스 타입
구조체
논리명
구조체의 논리명
물리명
구조체의 물리명
리소스 그룹
구조체의 리소스 그룹
생성자
구조체의 생성자
소유자
구조체의 소유자
최초 생성 시간
구조체의 생성시간
최초 업데이트 시간
구조체의 최초 업데이트 시간
최종 빌드완료 시간
구조체의 빌드 완료시간
상태
구조체 상태(예: 개발, 에러, 컴파일완료 등)
Revision
구조체 리비전(update할 때마다 1씩 증가)
Version
형상관리 버전
설명
구조체에 대한 부가 설명
구조체의 각 필드는 삽입과 추가 기능을 이용해서 새로운 필드를 추가할 수 있다. 위와 같은 방법으로 필드를 추가하면 구조체 필드를 편집할 수 있는 상태가 된다.
구조체 필드를 편집하려면 우선 필드를 선택한 후 더블클릭하면 구조체 필드의 속성에 맞게 편집할 수 있는 화면이 나타난다. 예를 들면 텍스트인 경우 텍스트 편집기가 나타나고 속성이 많은 타입인 경우 콤보박스 편집기가 나타난다. 또한 각 편집기를 이용하여 구조체 필드의 값을 입력할 수 있다.
구조체를 편집할 때 선택한 n개의 필드를 복사 및 붙여넣기 기능을 이용하여 보다 쉽게 편집할 수 있다. 또한 Excel 파일에 저장된 특정 필드를 복사 또는 붙여넣기하여 편집할 수 있다. 만약 구조체 필드 개수가 증가하여 필드를 찾기 어려운 경우 검색 기능을 이용하여 쉽게 찾을 수 있다.
-
Excel 파일
구조체 생성에 필요한 구조체 정보를 Excel 파일로 작성한다. 이와 같이 작성된 Excel 파일의 내용을 복사하여 구조체 편집기에 붙여 넣는다.
Excel 파일 – 복사 & 붙여넣기 실행Excel에서 복사 또는 붙여넣기한 항목은 Excel 파일 Import 기능과는 다르게 메타 정보가 자동으로 생성되지 않는다. 그래서 Excel 파일의 내용을 구조체 편집기로 붙여 넣을 때 등록되지 않는 메타인 경우
아이콘이 표시된다. 이 문제를 해결하기 위해서는
버튼을 클릭하여 서버의 메타 정보와 일치하도록 동기화를 실행한다.등록되지 않은 메타인 경우 WebAdmin에 접속하여 [메타관리] > [메타시스템] > [Meta관리] > [Property 관리] 메뉴를 클릭하여 등록할 메타를 Proerty 관리 화면에서 추가한다.
3.1.3. 구조체 편집기에 필드 추가
다음은 구조체 편집기에 필드를 추가하는 방법에 대한 설명이다. 구조체 편집기에 일반 필드, 구조체 필드로 구분하여 추가할 수 있다.
-
일반 필드
주로 Property Pool View를 사용하여 구조체 편집기에 일반 필드를 추가한다. 만약 구조체 편집기에서 Property Pool View가 보이지 않는 경우 스튜디오 메뉴 바에서 [창] > [보기 표시]> [기타] > [ProFrame Studio] > [Property Pool] 메뉴를 선택한다.
구조체의 일반 필드는 WebAdmin에서 등록한 메타 정보를 Property Pool View에서 검색하여 추가한다. WebAdmin의 메타 등록 관리는 ProFrame 관리자 안내서를 참고한다.
Property Pool View는 구조체 편집기 화면 아래에 다음과 같이 나타난다.
Property PoolProperty Pool View를 사용하는 방법은 검색할 메타 이름을 입력하거나 검색조건(검색명칭 선택, 검색어위치 선택)을 설정한 후 [검색] 버튼을 클릭한다.
Property Pool 검색 결과위와 같이 검색 조건에 맞는 메타가 있는 경우 메타 목록에 나타난다. 만약 검색 결과가 없는 경우 “검색 결과가 없습니다.”라는 메시지가 메타 목록에 나타난다. 검색된 메타를 구조체 편집기에 일반 필드로 추가하려면 메타를 선택한 후 더블클릭하거나 구조체 편집기로 드래그 앤드 드롭하여 추가한다.
Property Pool 검색 결과 – 구조체 편집기 추가위와 같이 선택된 메타가 위 그림과 같이 구조체 편집기에 추가된 것을 확인할 수 있다.
-
구조체 필드
구조체 필드는 구조체 편집기의 구조체 검색 영역을 이용하여 추가한다. 여기서 추가된 구조체 필드를 편집하는 방법은 다음과 같다.
구조체 편집기 화면 – 구조체 필드 편집우선 구조체 필드를 편집하기 전에 위 그림의 편집기 영역에 추가된 구조체 필드를 확인한다. 확인하는 방법은 추가된 구조체의 논리명 컬럼 앞에 있는 [+] 버튼을 클릭한다. 이 버튼을 클릭하면 아래 그림과 같이 구조체 필드 정보가 나타난다.
구조체 편집기 화면 – 구조체 필드 정보구조체 필드 정보를 확인한 후 추가된 구조체의 논리명과 물리명을 입력한다. 본 예제에서는 논리명을 ‘str1_in_logical’로 입력하고, 물리명을 ‘str1_in_physical’이라고 입력한다.
구조체 편집기 화면 –논리명과 물리명 입력이와 같이 추가된 구조체 필드를 구조체 편집 기능 메뉴 중 [Open Editor]를 클릭한다.
구조체 편집기 화면 – Open Editor[Open Editor] 메뉴를 클릭하면 추가된 구조체 필드를 편집할 수 있는 화면으로 이동된다. 단, RI/WS 기능을 사용한다면 해당 메뉴를 실행하여 열린 구조체 편집기는 구조체 필드 정보를 조회는 할 수 있으나, 편집은 불가능하다.
구조체 편집기 화면 – 구조체 필드 편집 화면위 그림에서 개발자가 직접 변경할 수 있는 항목에 대한 설명이다.
항목 설명 논리명
구조체 필드의 논리명
물리명
구조체 필드의 물리명
타입
구조체 필드 타입
Include
구조체 필드인 경우 구조체의 물리명으로 값이 채워진다.
길이
구조체 필드의 길이
배열크기
구조체 필드의 반복횟수
Decimal
구조체 필드의 소수점 이하 자리수
설명
구조체 필드의 부가 설명
3.2. 전문 편집기
전문 편집기는 아래 그림과 같이 2개의 영역으로 구성된다.
다음은 전문 편집기 화면의 각 영역에 대한 설명이다.
① 전문정보 편집 영역
② 단축키 표시 영역
① 전문정보 편집 영역
전문을 추가하거나 편집하는 영역이다. 단, 구조체 전문은 구조체 에디터에서 편집 콤보박스를 통해서만 수정 가능하다.
| 항목 | 설명 |
|---|---|
논리명 |
구조체 필드의 논리명을 설정한다. |
물리명 |
구조체 필드의 물리명을 설정한다. |
타입 |
구조체 필드의 타입을 설정한다. |
Include |
구조체 필드타입이 include인 경우 포함할 다른 구조체를 설정한다. |
길이 |
구조체 필드의 길이를 설정한다. |
배열크기 |
구조체 필드를 배열로 사용할 때 반복 횟수를 설정한다. |
필드 제어 |
해당 필드가 어떠한 컴포넌트인지를 설정한다. (예: INPUT,OUTPUT,GRID,COMBO,CHECKBOX,LISTVIEW,LABEL,BUTTON, GROUPBOX,OCCURS,RADIOBUTTON,PWDINPUT,CHART,IMAGE) |
Decimal |
소수점 이하의 자리 수를 지정한다. |
정렬 |
구조체 필드의 정렬방식을 지정한다. |
Fill |
특정 값을 채울 문자를 지정한다. |
포인트 |
소수점에 대한 표현 여부를 지정한다. |
부호 |
부호에 대한 표현 여부를 지정한다. |
Trim |
space 처리를 설정한다. |
구분자 |
전문 타입이 Delimiter인 경우 구분자를 정의한다. |
인코딩 옵션 |
인코딩 옵션을 지정한다. |
필드키 |
전문 타입이 FDL인 경우 지정한다. |
설명 |
필드에 대한 부가 설명을 설정한다. |
필수 여부 |
필수입력 필드인지 지정한다. |
② 단축키 표시 영역
전문을 편집하는 데 유용한 기능별 아이콘을 표시하는 영역이다.
| 아이콘 | 설명 |
|---|---|
|
운영영역(RI) 전문을 검색하기 위한 Resource Pool View가 전문 편집기 아래에 나타난다. |
|
구조체의 일반 필드를 검색하기 위한 Property Pool View가 전문 편집기 아래에 나타난다. |
|
전문 편집기에서 선택한 필드의 위치가 위로 이동한다. 단, 신규 생성 마법사를 통해 생성된 메시지에 한해 활성화된다. |
|
전문 편집기에서 선택한 필드의 위치가 아래로 이동한다. 단, 신규 생성 마법사를 통해 생성된 메시지에 한해 활성화된다. |
다음은
아이콘에 대한 설명이다. 이 아이콘은 전문을 검색하기 위해 Resource Pool View를 전문 편집기 아래에 나타나게 하는 역할을 수행한다.
Resource Pool View는 ProFrame의 모든 리소스를 다양한 검색 조건을 통해 검색을 지원하는 뷰이다.
|
Resource Pool View에 대한 사용 방법은 ProFrame 스튜디오 안내서를 참고한다. |
3.3. 매핑 편집기
매핑 편집기는 아래 그림과 같이 3개의 영역으로 구성된다. 이 편집기는 미리 작성된 구조체와 전문을 매핑하는 규칙을 설정하는 역할을 수행한다.
다음은 매핑 편집기 화면의 각 영역에 대한 설명이다.
① Source, Target 지정 영역
② 매핑 편집 영역
③ 단축키 표시 영역
① Source, Target 지정 영역
Source와 Target를 지정하는 영역이다. 즉, 리소스풀 뷰 또는 프로프레임 내비게이터에서 매핑에 필요한 운영 영역(RI) 구조체나 전문을 검색하여 검색된 구조체와 전문을 Source와 Target 영역으로 드래그 앤드 드롭하여 추가한다. 여기서 매핑은 Source를 Target으로 변경하는 하는 규칙을 의미한다.
| 구분 | 설명 |
|---|---|
Source |
Source는 맵의 변환 룰을 적용할 대상이다. Source에 지정한 리소스(구조체 또는 전문)를 더블클릭하면 선택한 리소스 타입에 맞는 편집기가 나타난다. |
Target |
Target은 맵을 이용하여 변환한 결과이다. Target에 지정한 리소스(구조체 또는 전문)를 더블클릭하면 선택한 리소스 타입에 맞는 편집기가 나타난다. |
② 매핑 편집 영역
맵은 Source의 각 필드가 Target의 각 필드로 변경되는 규칙을 설정하는 것을 의미한다.
이 영역에서는 Source가 가지고 있는 구조체 필드를 마우스로 드래그 앤드 드롭하면 From 컬럼으로 이동되고 Target에 속해있는 구조체 필드를 마우스로 드래그 앤드 드롭하면 To 컬럼으로 이동된다. 이와 같이 각 구조체 필드 간의 매핑을 원하는 구조체 필드를 동일한 행에 마우스로 드래그 앤드 드롭함으로써 매핑을 설정할 수 있다.
다음은 매핑 편집 영역의 각 항목에 대한 설명이다.
| 항목 | 설명 |
|---|---|
From |
Source에 속해있는 필드들이 올 수 있다. |
To |
Target에 속해 있는 필드들이 올 수 있다. |
옵션 |
사이트 요건에 대응하기 위한 여분의 항목이다. |
설명 |
맵 필드(필드 간 매핑규칙)에 대한 부가 설명이다. |
③ 단축키 표시 영역
맵을 편집하는 데 유용한 기능별 아이콘을 표시하는 영역이다.
| 아이콘 | 설명 |
|---|---|
|
Source와 Target 영역에 리소스를 추가하는 리소스풀 뷰를 나타나게 하는 기능이다. 단, 운영 영역(RI) 리소스만 Source와 Target으로 사용이 가능하다. |
|
매핑 편집기 중 매핑 편집 영역에서 선택한 구조체 필드가 위로 이동된다. |
|
매핑 편집기 중 매핑 편집 영역에서 선택한 구조체 필드가 아래로 이동된다. |
3.3.1. 매핑 편집기 사용 방법
위에서 설명한 화면 구성을 기준으로 매핑 편집기에만 나타나는 편집 기능 메뉴와 매핑을 쉽게 하는 방법에 대해 설명한다.
-
편집 기능
매핑 편집기 중 매핑 편집 영역에서 오른쪽 마우스 버튼을 클릭하면 다음과 같은 편집 기능 메뉴가 나타난다.
매핑 편집기 – 편집 기능 메뉴메뉴 설명 [삽입 (Ctrl+Shift+I)]
새로운 맵의 구조체 필드를 생성한다 선택된 구조체 필드 앞에 빈 필드가 생성된다.
[필드 추가 (Ctrl+Shift+A)]
새로운 맵의 구조체 필드가 필드 마지막에 생성된다.
[삭제]
선택된 맵의 구조체 필드를 삭제한다.
[Smart Mapping]
Source와 Target 영역에서 각 구조체 필드를 비교하여 필드 간의 물리명과 타입이 같은 경우 맵의 구조체 필드를 자동 생성한다. 맵을 쉽게 생성해 주는 맵 자동 완성 기능이다.
[Excel 파일로 내보내기]
맵 리소스 정보를 Excel로 내보내는 기능이다.
-
매핑 기능
매핑 편집기에서 매핑을 쉽게 할 수 있는 방법은 2가지가 있다.
방법 설명 화면 분할
매핑 편집기 화면을 상하로 분할하여 구조체 또는 전문을 이동하고자 하는 위치에 드래그 앤드 드롭한다.
Smart Mapping
Source와 Target 영역에서 각 구조체 필드를 비교하여 필드 간의 물리명과 타입이 같은 경우 맵의 구조체 필드를 자동 생성한다.
다음은 매핑 편집기 화면을 분할하는 방법에 대한 설명이다. 화면 분할은 상하분할 또는 좌우분할이 가능하다. 아래 그림은 매핑할 때 필요한 화면 분할을 동작하는 모습을 보여주는 예이다.
매핑 편집기 화면 – 화면 분할상하분할을 하는 경우 매핑 편집기 화면에 떠 있는 여러 개의 스크립트 편집기 화면들을 몇 개의 화면으로 분할할 경우 분할할 스크립트의 탭 부분을 마우스로 클릭한 후 가져다 놓고 싶은 위치에 마우스로 드래그 앤드 드롭한다. 이때 화면이 분할되는 분할선을 확인한다. 좌우분할을 하는 경우 상하 화면 분할과 동일하게 스크립트의 탭을 마우스로 클릭한 후 원하는 위치에 좌우 마우스로 드래그 앤드 드롭한다.
위와 같이 원하는 필드를 선택하여 마우스로 드래그 앤드 드롭하면 개발자가 지정한 Source와 Target 변수의 Alias에 맞게 매핑이 설정된다.
매핑 편집기 – 필드 매핑다음은 Smart Mapping에 대한 설명이다. 위와 같이 매핑 편집기 화면을 분할하여 매핑하는 작업이 번거롭다면 매핑 편집기 화면에서 오른쪽 마우스 버튼을 클릭하면 편집 기능 메뉴가 나타나고 그 중 [Smart Mapping]를 선택한다.
[Smart Mapping] 메뉴를 선택하면 필드 간의 물리명과 타입이 같은 매핑 항목을 자동 생성해준다. 만약 매핑할 필드가 없는 경우 아무런 반응도 일어나지 않는다.
매핑 편집기 – Smart Mapping 결과
4. 소스 생성, 컴파일, Dlupdate
ProMapper의 컴파일은 크게 3단계로 진행된다. 본 절에서는 스튜디오를 이용하여 리소스 타입별로 생성된 ProMapper를 컴파일하는 과정을 기능적인 측면에서 수행한다.
-
소스 생성
스튜디오에서 생성된 리소스는 ProMapper의 Source Generator를 통해 자동으로 소스가 생성된다. 생성된 소스는 통합 서버의 리소스 저장소에 저장된다.
-
컴파일
생성된 소스의 컴파일이 완료되면 ProMapper와 관련된 라이브러리가 생성된다.
-
Dlupdate
생성된 라이브러리가 실시간으로 업데이트 및 사용될 수 있는 상태가 된다.
|
PFM_SVC_EXT 테이블은 사이트에서 커스터마이즈하는 영역이므로 별도로 설명하지 않는다. |
소스 생성
다음은 소스 생성 단계에서 리소스 타입별로 생성되는 파일이다. RI/WS 반영된 ProFrame에서는 작업 영역(WS)에서 작업할 때 '${PFMAPINCDIR_WS}'와 같이 "_WS"가 붙어 있는 디렉터리에 파일 생성된다. 또한 작업 영역에서 작업한 파일은 파일, 함수, Define 등에 "_WS"가 붙어 생성된다.
-
구조체
소스 생성 파일 위치 pfmMapper${구조체 물리명}.h
${PMAPINCDIR}
pfmMapper${구조체 물리명}.c
${PMAPSRCDIR}
-
전문
소스 생성 파일 위치 pfmMapper${전문 물리명}.h
${PMAPINCCDIR}
pfmMapper${전문 물리명}.c
${PMAPSRCDIR}
-
맵
소스 생성 파일
위치
pfmMapper${맵 물리명}.c
${PMAPSRCDIR}
컴파일과 Dlupdate
ProMapper의 컴파일 단계는 스튜디오의 [Compile Resource] 메뉴를 실행함으로써 1, 2 단계를 수행하고 Dlupdate 단계는 스튜디오의 [Dlupdate] 메뉴를 실행함으로써 3 단계를 마지막으로 수행한다.
다음은 생성된 ProMapper 리소스를 컴파일, Dlupdate하는 과정에 대한 설명이다.
-
네비게이터 영역에서 컴파일할 ProMapper 리소스를 선택한 후 오른쪽 마우스 버튼을 클릭해서 [Compile Resoure] 메뉴를 선택한다.
Compile Resource 메뉴해당 ProMapper 리소스를 선택한 후 <Alt> + C 단축키를 누르거나 컴파일 아이콘을 클릭해도 동일하게 동작한다.
-
다음과 같이 Compile Resource 대화상자가 나타난다. 이 대화상자는 컴파일 진행 상태를 표시하는 역할을 수행한다.

-
정상적으로 컴파일이 완료되면 컴파일 로그가 콘솔에 나타난다.
Compile Resource – 콘솔 -
컴파일 과정이 정상적으로 완료되면 ProMapper 리소스를 선택한 후 오른쪽 마우스 버튼을 클릭한다. Dlupdate 작업을 수행하기 위해 [Dlupdate] 메뉴를 선택한다.
Dlupdate 메뉴해당 ProMapper 리소스를 선택한 후 <Alt> + D 단축키를 누르거나 Dlupdate 아이콘을 클릭해도 동일하게 동작한다.