Course A-1

[신고 사업장 정보] 개발

목표

  • GPM을 통해 테이블을 정의하고 저장 프로시저를 생성한 다음 Visual Studio에서 폼 템플릿을 이용하여 프로젝트를 생성. 개발된 폼을 실행하기까지의 기본적인 GST Platform 도구 사용 방법을 익힙니다.

  • 학습 인정 시간: 4 시간 30 분

주의 사항

  • 실습 내용의 "_xxx" 부분에는 본인 성명의 이니셜로 대체합니다.

  • ex) 성명이 '김개발'일 때 orgTaxSite_xxx → orgTaxSite_kgb

개발 화면

1. 테이블 정보

2. 모델링

2.1) 데이터 컴포넌트 등록 [GPM→모델링→데이터 컴포넌트]

  • "[Dev1] 사업장 정보_xxx" 그룹 생성합니다.

  • 위에서 생성한 그룹 아래 "테이블 정보" 를 참고하여 Data Component 정보를 생성합니다.

2.2) 비즈니스 컴포넌트 등록 [GPM→모델링→비즈니스 컴포넌트]

  • 업종 콤보에 대한 BizComponent를 등록합니다. ( 컴포넌트ID : L_COM002_xxx )

  • 우편 번호 팝업에 대한 BizComponent를 등록합니다. ( 컴포넌트ID : P_COM004_xxx )

2.3) 데이터 컴포넌트 정보에 비즈니스 컴포넌트 정보 연결 [GPM→모델링→데이터 컴포넌트]

  • "업종", "우편번호" 데이터 컴포넌트에 "업종 정보", "우편 번호 팝업" 비즈니스 컴포넌트를 BizComponent ID 항목에 각각 설정합니다.

2.4) 테이블 생성 [GPM→모델링→테이블 관리]

  • 앞에서 만든 데이터 컴포넌트로 테이블을 생성합니다.

  • 신규 버튼 클릭 - 상위 메뉴 "EDU" 선택

  • 테이블 명 : orgTaxSite_xxx

  • 테이블 설명 : 신고 사업장 정보

  • 업무용어 탭에서 사용 할 업무용어를 선택(더블클릭)하여 오른쪽 테이블 필드리스트로 추가하여 등록합니다.

  • 필드를 구성하고 ‘UP’, ‘DOWN’ 버튼으로 컬럼 순서를 변경할 수 있고 ‘행삭제’ 버튼으로 필드를 삭제할 수 있습니다.

  • PK설정, NULL옵션 및 기본값 등을 설정합니다.

  • 컬럼 구성을 완료하였으면 테이블 디자인 탭으로 이동 해서 ‘DB반영’ 버튼을 클릭하면 테이블이 생성됩니다.

3. 비즈니스 로직 생성

3.1) 신고 사업장 정보 조회 프로시저 생성 [GPM→개발→SP편집]

  • 신규 버튼 클릭 - 상위 메뉴 "EDU" 선택

  • SP 명 : P_DEV001_xxx_Q

  • SP 설명 : 신고 사업장 정보 조회

  • 테이블 탭으로 이동하여 적용할 테이블을 검색합니다.

  • [SP 생성 정보] 탭으로 이동해 앞에서 검색한 테이블을 '적용 테이블' 그룹박스 안에 드래그 드랍 합니다.

  • 적용 템플릿을 "기본프로시저_조회"로 선택 후 Select, Parameter에 사용할 필드를 드래그 드랍 합니다.

  • 완료 후 하단의 "SP 편집창에 적용" 버튼을 클릭합니다.

  • 수정할 구문이 있으면 수정을 하고 하단의 "SP 생성" 버튼을 클릭 하면 SP가 생성됩니다.

3.2) 신고 사업장 정보 저장 프로시저 생성 [GPM→개발→SP편집]

  • 신규 버튼 클릭 - 상위 메뉴 "EDU" 선택

  • SP 명 : P_DEV001_xxx_S

  • SP 설명 : 신고 사업장 정보 저장

  • 적용 템플릿을 "기본프로시저_저장"으로 선택 후 Insert, Update, Delete, Parameter에 사용할 필드를 드래그 드랍 합니다.

  • 수정할 구문이 있으면 수정을 하고 하단의 "SP 생성" 버튼을 누르면 SP가 생성됩니다.

3.3) 저장 프로시저 사용자 메시지 등록 [GPM→개발→SP 메시지]

  • 위에서 생성했던 "P_DEV001_xxx_S"를 선택하고 "행 추가" 버튼을 클릭하여 메시지를 등록합니다.

4. 화면 개발

4.1) 폼 생성 [Visual Studio→도구→GPM Tools]

  • 폼 ID, 폼 명, 프로그램 그룹, 폼 템플릿 등을 선택하고 "폼 생성하기" 버튼을 누릅니다.

  • 관련 SP 텍스트란에 생성한 SP를 검색하여 오른쪽 '조회SP'와 '저장SP' 칸에 각각 드래그 드랍 합니다.

  • 오른쪽 '데이터셋' 영역에 SP의 파라미터 항목들과 조회SP의 경우 반환하는 필드들을 확인합니다.

  • "코드 적용" 버튼을 눌러 SP 처리에 필요한 코드를 생성합니다.

4.2) 화면 디자인

  • 디자인 탭에서 화면을 디자인합니다.

  • 오른쪽 데이터셋 탭에 보여지는 DB Object를 다음 사진과 같이 컨트롤 리스트에 드래그 드랍하여 생성시킬 컨트롤을 구성합니다.

  • 데이터셋 영역의 'Parameters' 항목은 조회SP의 파라미터로서 조회조건을 의미합니다.

  • 데이터셋 영역의 'DataTable' 항목은 조회SP의 SELECT문 결과를 의미합니다.

  • 아직 컨트롤이 생성되지 않은 ("+" 표시) 행에 대하여 '행 삭제' 기능을 통해 제거할 수 있습니다.

  • 디자인 리스트 구성을 완료하고 하단의 "디자인 적용하기" 버튼을 클릭하면 디자인이 적용되어 컨트롤들이 생성 됩니다.

  • Visual Studio 디자인 화면으로 이동해서 자동 생성된 컨트롤을 "결과 화면"을 참고하여 배치를 조정하고, [보기→탭 순서] 메뉴로 컨트롤의 탭 순서를 재지정 합니다.

5. 기능 구현

circle-info

저장 프로시저를 처리하는 코드 패턴은 폼 템플릿에 미리 작성되어 있는 #region [예시 코드]를 참고합니다.

5.1) 조회 프로시저 실행 메서드 [Func_P_DEV001_xxx_Q]

  • 조회 조건 영역에 배치된 컨트롤들에 입력된 값을 받아 프로시저의 파라미터로 사용합니다.

5.2) 저장 프로시저 실행 메서드 [Func_P_DEV001_xxx_S]

  • 기본 정보 영역에 배치된 컨트롤들에 입력된 값을 받아 프로시저의 파라미터로 사용합니다.

5.3) GridColumn 요약 정보

  • GridView Footer영역에 현재 표현되는 GridView의 행(Row)의 수를 나타내기 위해 SummaryItem 속성을 설정합니다.

5.4) 공통 팝업 설정

  • 우편번호 및 주소에 대한 팝업 매핑 작업을 처리합니다.

  • 우편번호 컨트롤(ButtonEditEx)을 선택하고 속성 창의 Popup 속성을 찾아 버튼 클릭

  • 아래 사진과 같이 팝업 정보를 세팅합니다.

5.5) 필수 입력 제한 처리

  • "신고 사업장 코드"와 "신고 사업장 명"의 TextEditEx 컨트롤에 AllowBlank 속성을 false로 설정합니다.

  • AllowBlank 속성을 false로 설정하면 런타임 시점에 화면에서 분홍색으로 표현됩니다.

  • 참고) BaseEdit 파생 클래스의 AllowBlank 속성에 대하여 값 입력 확인은 ValidateControls 메서드arrow-up-right에서 수행합니다.

5.6) Grid 영역에 입력 제한 처리

  • Grid Designer 팝업을 열어 모든 GridColumn을 선택하고 'Column options' 탭에서 AllowEdit 속성을 False로 설정합니다.

  • ※ 첫 번째 GridColumn을 선택하고, Shift 키를 누른 상태에서 마지막 컬럼을 선택하면 모두 선택 가능

5.7) 테이블의 기본 키에 대한 수정 제한 처리

  • 테이블의 기본키인 '신고 사업장 코드(tax_site_code_xxx)'는 신규로 등록하는 상태에서만 입력이 가능하도록 합니다.

  • ReadOnlyControl 메서드arrow-up-right를 이용하여 신규 버튼 클릭에 해당하는 ClickNewButton 메서드와, GridView의 Row가 변경되었을때의 FocusedRowChanged 메서드를 수정합니다.

5.8) 조회 조건 영역의 초기화 버튼 기능

  • [GPM Tools→기본값 설정]에서 [폼 디자인 정보] 영역의 대상 컨트롤들을 더블 클릭하여 [처리영역]에 등록하고 "Type"과 "Caption"을 입력 후 저장 버튼을 클릭합니다.

  • 설정한 기본값 정보를 코드에서 ResetParameters 메서드에 구현합니다. (※ GetDefault 메서드arrow-up-right)

6. 실행

6.1) 빌드 및 실행

  • [Visual Studio→빌드→솔루션 빌드] 메뉴를 실행합니다.

  • GSTBrowser를 실행하여 [폼 오픈] 버튼을 클릭하고 윈도우 탐색기에서 "프로젝트 폴더→bin→Debug" 경로로 이동하여 작업했던 폼 어셈블리 파일을 선택합니다.

  • ex) C:\workspace_edu\DEV001_xxx\DEV001_xxx\bin\Debug

6.2) 디버깅 방법

  • 조회 버튼 클릭했을때 호출되는 메서드의 시작 부분에 Break Point를 설정합니다.

  • 솔루션 빌드 후 출력 결과에 "성공"을 확인하고, [Visual Studio→디버그→프로세스에 연결] 메뉴를 실행하여 "프로세스 연결" 창에서 GSTBrowser를 선택하고 "연결" 버튼을 클릭합니다.

  • Visual Studio가 디버깅 상태로 변경되면 GSTBrowser에서 다시 "폼 오픈"을 통해 어셈블리를 실행하고 조회 버튼을 클릭하여 Break Point에서 중단이 되는지 확인합니다.

7. 체크 리스트

  • 검색 / 신규→저장 / 수정→저장 / 삭제 기능이 올바르게 동작하는지 확인합니다.

  • 사업장 코드는 신규 시에만 수정이 가능한지 확인합니다.

  • 저장 시 필수 입력 항목 체크가 정확히 이루어지는지 확인합니다.

  • [기본 정보] 영역에 탭 순서가 제대로 지정되었는지 확인합니다.

  • 업종 LookUp이 제대로 바인딩 되어있는지 확인합니다.

  • 우편번호 팝업이 제대로 동작하는지 확인합니다.

  • [조회조건] 영역에 입력된 조건에 맞게 데이터가 정상 조회되는지 확인합니다.

  • [조회조건] 영역의 '초기화 버튼' 클릭 시 조회조건이 정상적으로 초기화 되는지 확인합니다.

  • 요약정보의 데이터 건 수 집계가 제대로 표현되는지 확인합니다.

  • 이미 등록된 사업장 코드와 동일한 코드를 신규로 등록했을때 설정한 SP메시지("이미 등록된 신고 사업장 코드입니다.""이미 등록된 신고 사업장 코드입니다.")가 제대로 출력되는지 확인합니다.

Last updated