CommentHelper

정의

  • 네임스페이스: GST.PlusWin6.Core.Library

  • 어셈블리: GST.PlusWin6.Core.dll

설명

  • [이미지 1]과 같이 폼에 Grid 형식의 코멘트 관리 기능을 구현할 경우 반복되는 코드를 일반화하여 간편하게 구현할 수 있도록 지원하는 클래스

  • GridView에 GridColumn은 직접 디자인 필요

  • FieldName: 작성일(recdt), 작성자(insert_userid), 코멘트(comment)

[이미지 1]

데이터베이스 변경 사항

구분
이전
변경

테이블

sysHomeComment

sysFormComments

저장 프로시저

P_sysHomeComment_Q

sys_sel_comments

저장 프로시저

P_sysHomeComment_S

sys_sav_comments

Method

AddViewItem

  • 코멘트용 GridView 개체와 sysFormComments 테이블의 관리 항목 필드인 폼ID ('form_id'), 테이블ID ('table_id') 기준 정보를 매핑

  • Parameters

    • GridView view : CommentHelper 기능을 사용할 GridView 타입 개체

    • string formId : 해당 GridView로 처리되는 코멘트 데이터의 'form_id' 필드 값

    • string tableId : 해당 GridView로 처리되는 코멘트 데이터의 'table_id' 필드 값

Retrieve

  • 데이터 조회

  • 파라미터 'view'의 GridControl.DataSource에 결과를 바로 바인딩

SaveData

  • 데이터 저장

AddRow

  • GridView에 새로운 행을 추가

  • 작성일 필드('recdt')에 사용자 PC의 현재 일자 세팅

  • 작성자 필드('insert_userid')에 현재 로그인한 사용자 ID 세팅

DeleteRow

  • GridView에 선택한 행을 제거

  • 작성자 필드에 저장된 ID와 현재 로그인한 사용자 ID를 비교하여 다를 경우 경고 메시지 팝업

  • Messages.DeleteOnlyCreator ("작성자만 삭제할 수 있습니다.")

GridView_ValidatingEditor

  • 작성자 필드에 저장된 ID와 현재 로그인한 사용자 ID가 다를 경우 데이터 수정 시 경고 처리용 이벤트 핸들러

  • Messages.ModifyOnlyCreator ("작성자만 수정할 수 있습니다.")

CommentHelper를 사용하여 코멘트 기능 구현 절차

circle-info

예제 코드들은 BaseForm (namespace GST.PlusWin6.Core.Forms)을 상속받은 코드를 기준으로 작성됨

1. GridView 설정

  • CommentHelper.AddViewItem 메서드로 GridView를 등록

  • GridView.ValidatingEditor 이벤트에 CommentHelper.GridView_ValidatingEditor 이벤트 핸들러 연결

2. 코멘트 데이터 조회 기능 구현

  • CommentHelper.Retrieve 메서드로 데이터 조회 및 바인딩

3. GroupControl 버튼 클릭 이벤트 구현

  • 행 추가 (CommentHelper.AddRow)

  • 행 삭제 (CommentHelper.DeleteRow)

  • 저장 (CommentHelper.SaveData)

Last updated