BaseForm

모든 메뉴 폼의 상속으로 GSTBrowser의 Resource를 사용하는 기능이 정의된 클래스

Enum

ProcessButtonState

  • Browser 상단 버튼 상태 Flag 열거형

[Flags]
public enum ProcessButtonState
{
    None = 0, // 모두 비활성화
    Retrieve = 1, // 조회
    New = 2, // 신규
    Copy = 4, // 복사
    Save = 8, // 저장
    Delete = 16, // 삭제
    Preview = 32, // 미리보기
    Print = 64, // 인쇄
    All = ~0 // 모두 활성화
}

FormOpenPath

  • Form이 실행된 경로의 타입

public enum FormOpenPath
{
    Popup,  // OpenFormByPopup
    Tab,    // OpenFormByTab
    Menu,   // 메뉴 더블 클릭
    Direct  // 브라우저의 폼오픈 
}

WordCaptionType

  • 다국어 캡션 타입

public enum WordCaptionType
{
    Grid = 0,
    Label = 1
}

Property

EnabledRetrieveButton

  • Browser의 [조회] 버튼 활성화 여부

public bool EnabledRetrieveButton { get; set; }

EnabledNewButton

  • Browser의 '신규' 버튼 활성화 여부

public bool EnabledNewButton { get; set; }

EnabledCopyButton

  • Browser의 '복사' 버튼 활성화 여부

public bool EnabledCopyButton { get; set; }

EnabledSaveButton

  • Browser의 '저장' 버튼 활성화 여부

public bool EnabledSaveButton { get; set; }

EnabledDeleteButton

  • Browser의 '삭제' 버튼 활성화 여부

public bool EnabledDeleteButton { get; set; }

EnabledPreviewButton

  • Browser의 '미리보기' 버튼 활성화 여부

public bool EnabledPreviewButton { get; set; }

EnabledPrintButton

  • Browser의 '인쇄' 버튼 활성화 여부

public bool EnabledPrintButton { get; set; }

DefaultDBAlias

  • Browser에 설정된 기본 DB 별칭 ("Business")

public string DefaultDBAlias { get; }

BizAppBasePath

  • 메뉴 어셈블리가 다운로드 되는 위치

  • ex) C:\GSTBrowser\BusinessApp\(서비스명)

public string BizAppBasePath { get; }

CurrentProcessButtonState

public ProcessButtonState CurrentProcessButtonState { get; }

ProcessPermissionInfo

  • [사용자 권한] 메뉴에서 설정한 메뉴별 처리 권한의 정보

protected ProcessPermission ProcessPermissionInfo { get; }

AllowCustomColumnView

  • [GPM Tools → 컬럼 설정]에서 설정한 사용자 지정 컬럼의 적용 여부

public bool AllowCustomColumnView { get; set; }

AttachmentHelper, FtpAttachmentHelper

protected AttachmentHelper AttachmentHelper { get; }
protected FtpAttachmentHelper FtpAttachmentHelper { get; }

GroupCodeInfo

  • 현재 폼에서 사용중인 LookUp 타입의 BizComponentID 에 설정된 공통 코드 (comCodeMaster 테이블의 group_code 필드) 의 정보

  • ex) BA002, PR001, PR002 ..

public string[] GroupCodeInfo { get; }

SessionInfo

  • 접속한 Browser의 세션 정보(접속 도메인, 서비스 정보, 사용자 정보 등)와 BaseMenu 어셈블리에 정의한 Session 클래스의 멤버를 참조하기 위한 객체

  • 참고) SessionBase

// GST.Platform.Client.BaseMenu
protected Session SessionInfo { get; }

WordList

  • 폼ID로 등록된 다국어 코드와 캡션 정보

  • [GPM Tools → 용어 정보] 메뉴에서 "용어 적용/저장"을 통해 저장된 데이터

protected DataTable WordList { get; set; }

AllMenu

  • 접속한 서비스에 배포된 모든 메뉴 정보

protected BrowserMenu AllMenu { get; }

UsableMenu

  • 로그인한 사용자가 사용 가능한 (권한을 부여 받은) 메뉴 정보

protected BrowserMenu UsableMenu { get; }

  • [GPM → 메뉴 편집] 메뉴에서 입력한 '파라미터 정보' 필드의 문자열 값

public string MenuParameterInfo { get; set; }

ParentParameter

public object ParentParameter { get; set; }

FormResult

  • OpenFormByPopup 메서드에 의해 실행된 팝업폼에서 부모폼으로 결과를 반환해줄때 사용

public object FormResult { get; set; }

  • 메뉴ID (고유값)

  • [GPM → 메뉴 편집] 에서 메뉴 등록이 선행되어야 한다

  • 등록되지 않은 경우 빈 값(string.empty)이 세팅

public string MenuId { get; set; }

FormId

  • 폼ID

  • [GPM → 메뉴 편집] 에서 메뉴 등록이 선행되어야 한다.

  • 등록되지 않은 경우 Form.Name 이 기본으로 세팅

public string FormId { get; set; }

FormOpenPath

public FormOpenPath FormOpenPath { get; set; }

ApplyMultiLanguage

  • 다국어 적용 여부

  • 적용되는 언어는 GSTBrowser를 로그인할 때 선택한 언어로 적용

  • 값이 true 이면 컨트롤 마다 지정된 WordID 속성의 값이 WordList 에 존재할 경우 해당 값으로 적용되며 false 일 경우 WordText 속성의 값이 적용

public bool ApplyMultiLanguage { get; set; }

EnabledReadBarcode

  • 바코드 스캐너를 통한 ReadBarcode 이벤트 호출의 활성화 여부

public bool EnabledReadBarcode { get; set; }

BarcodeScanners

  • 등록된 바코드 스캐너 장치 ID 목록

  • [GPM → 코드 정보] 메뉴에서 "그룹코드(BarcodeScanner)"로 등록/관리

public string[] BarcodeScanners { get; }

Event

ReadBarcode

  • ReadBarcodeEventHandler

public delegate void ReadBarcodeEventHandler(object sender, ReadBarcodeEventArgs e);
  • ReadBarcodeEventArgs

public class ReadBarcodeEventArgs : EventArgs
{
    public ReadBarcodeEventArgs(string inputDeviceId, bool isRegisteredId, string barcodeString);

    public string BarcodeString { get; }
    public string InputDeviceId { get; }
    public bool IsRegisteredId { get; }
}

BatchApply

  • BaseForm.OnLoad 메서드에서 폼의 모든 자식 컨트롤에 대하여 특정 타입에 대한 일괄 처리 (재귀형)

  • 폼의 생성자에서 이벤트 핸들러를 추가

public event EventHandler BatchApplyToBaseEdit;
public event EventHandler BatchApplyToButtonEditEx;
public event EventHandler BatchApplyToCheckEditEx;
public event EventHandler BatchApplyToDateEditEx;
public event EventHandler BatchApplyToGridControlEx;
public event EventHandler BatchApplyToGridViewEx;
public event EventHandler BatchApplyToGroupControlEx;
public event EventHandler BatchApplyToImageEditEx;
public event EventHandler BatchApplyToLabelEx;
public event EventHandler BatchApplyToLookUpEditEx;
public event EventHandler BatchApplyToMemoEditEx;
public event EventHandler BatchApplyToPanelEx;
public event EventHandler BatchApplyToPictureEditEx;
public event EventHandler BatchApplyToRadioGroupEx;
public event EventHandler BatchApplyToSimpleButtonEx;
public event EventHandler BatchApplyToSpinEditEx;
public event EventHandler BatchApplyToTabEx;
public event EventHandler BatchApplyToTabPageEx;
public event EventHandler BatchApplyToTextEditEx;
public event EventHandler BatchApplyToTreeListEx;

Method

ClickRetrieveButton

  • Browser의 '조회' 버튼 클릭시 호출되는 메서드로써, 재정의하여 사용

public override void ClickRetrieveButton()
{
    // 조회 버튼 기능
}

ClickNewButton

  • Browser '신규' 버튼 클릭시 호출되는 메서드로써, 재정의하여 사용

public override void ClickNewButton()
{
    // 신규 버튼 기능
}

ClickCopyButton

  • Browser의 '복사' 버튼 클릭시 호출되는 메서드로써, 재정의하여 사용

public override void ClickCopyButton()
{
    // 복사 버튼 기능
}

ClickSaveButton

  • Browser의 '저장' 버튼 클릭시 호출되는 메서드로써, 재정의하여 사용

public override void ClickSaveButton()
{
    // 저장 버튼 기능
}

ClickDeleteButton

  • Browser의 '삭제' 버튼 클릭시 호출되는 메서드로써, 재정의하여 사용

public override void ClickDeleteButton()
{
    // 삭제 버튼 기능
}

ClickPreviewButton

  • Browser의 '미리보기' 버튼 클릭시 호출되는 메서드로써, 재정의하여 사용

public override void ClickPreviewButton()
{
    // 미리보기 버튼 기능
}

ClickPrintButton

  • Browser의 '인쇄' 버튼 클릭시 호출되는 메서드로써, 재정의하여 사용

public override void ClickPreviewButton()
{
    // 인 버튼 기능
}

EnableButtonsAll

  • Browser의 버튼 상태를 일괄로 활성화 또는 비활성화 처리

  • Parameters

    • bool value : 버튼의 활성화 여부

public void EnableButtonsAll(bool value);

UpdateProcessButtonState

매개변수 bool value를 전달받는 메서드는 버튼의 상태를 하나씩 제어함

매개변수를 하나만 받는 메서드는 전달 받은 값으로 모든 버튼의 상태를 변경 (Example 2 참고)

public void UpdateProcessButtonState(ProcessButtonState processButtonState);

public void UpdateProcessButtonState(ProcessButtonState processButtonState, bool value);

UpdateProcessButtonStateToHard

  • 처리 권한을 무시하고 Browser 버튼들의 활성화 상태를 업데이트

  • Parameters

    • ProcessButtonState processButtonState : 적용할 버튼의 상태 ([Flags] 특성의 열거형)

    • bool value : 버튼 활성화 상태 값

public void UpdateProcessButtonStateToHard(ProcessButtonState processButtonState);

public void UpdateProcessButtonStateToHard(ProcessButtonState processButtonState, bool value);

BindingData

  • DataSource에 바인딩된 DataTable에서 변경된 DataRow들을 DataTable로 반환

  • 반환된 DataTable에는 "row_status"라는 DataColumn이 추가되고, DataRow의 변경 상태를 신규("N"), 수정("U"), 삭제("D") 값을 가지고 있음

  • Parameters

    • object control : GridControl, TreeListEx, DataTable 타입의 객체

    • bool showMessage : 변경된 DataRow가 없을때 "저장할 내용이 존재하지 않습니다." 메시지를 띄울지 여부 (Default = true)

    • out int alertIndex : GridColumnEx 또는 TreeListColumnEx 의 AllowBlank 속성의 값이 false인 행에 값이 없을 경우 RowHandle 또는 NodeId 의 값을 할당

  • Returns

    • DataTable : 변경된 DataRow들의 DataTable

public DataTable BindingData(object control, bool showMessage = true);

public DataTable BindingData(object control, out int alertIndex, bool showMessage = true);

SetData

  • DataTable 또는 HashTable 의 값을 object control 객체에 데이터 바인딩

  • Parameters

    • object control : PanelControl, GroupControl, XtraTabControl, XtraTabPage, GridControl, TreeList, PivotGridControl 타입의 객체

    • DataTable dataTable : 바인딩할 DataTable 타입의 값

    • Hashtable hashtable : 바인딩할 Hashtable (Key : 필드명, Value : 값) 타입의 값. TreeList, PivotGridControl 타입은 제외

    • bool initSaveButton : 바인딩 처리 후 Browser의 저장 버튼 상태를 비활성화로 변경

public void SetData(object control, DataTable dataTable, bool initSaveButton = true);

public void SetData(object control, Hashtable hashtable, bool initSaveButton = true);

SetDataFromReferenceControl

  • object referenceObject 에 바인딩 된 데이터를 참조하여 object targetControl 에 바인딩

  • Parameters

    • object targetControl : 바인딩 할 대상 객체 (PanelControl, GroupControl, XtraTabControl, XtraTabPage 타입)

    • object referenceObject : 바인딩시 참조할 객체 (GridControl, TreeList, DataTable 타입)

public void SetDataFromReferenceControl(object targetControl, object referenceObject);

ExecuteSql

  • 쿼리 내용을 직접 입력하여 실행하고 그 결과를 반환

  • Parameters

    • string DBAlias : 쿼리를 실행할 데이터베이스의 별칭

    • string query : 실행할 쿼리

    • bool showMessageBoxWhenException : 쿼리 실행시 발생한 에러 또는 사용자 정의 메시지 코드를 반환 받은 경우 자동으로 메시지를 띄울지 여부 (Default = false)

    • int timeToDisplayProgressBox : "처리중.." 팝업이 나타나기까지 걸리는 시간(millisecond) (Default = 2500)

  • Returns

    • ResultSet, ResultSet[] : 쿼리 실행 결과

public ResultSet ExecuteSql(string DBAlias, string query, bool showMessageBoxWhenException = false, int timeToDisplayProgressBox = 2500);

public ResultSet ExecuteSql(string query, bool showMessageBoxWhenException = false, int timeToDisplayProgressBox = 2500);

public ResultSet[] ExecuteSql(string[] DBAliases, string[] queries, bool showMessageBoxWhenException = false, int timeToDisplayProgressBox = 2500);

ExecuteSqlDirectly

  • 쿼리 내용을 직접 입력하여 실행하고 그 결과를 반환

  • ExecuteSql 과 다른 점은 데이터베이스의 'sys_execute_sql' 프로시저를 통해 쿼리를 처리하는 것이 아니기 때문에 실행 결과에 대한 정보(ResultSet.ResultRows, ResultSet.ReturnString )를 받아오지 못함

  • Parameters

    • string DBAlias : 쿼리를 실행할 데이터베이스의 별칭

    • string query : 실행할 쿼리

  • Returns

    • ResultSet, ResultSet[] : 쿼리 실행 결과

public ResultSet ExecuteSqlDirectly(string DBAlias, string query);

public ResultSet ExecuteSqlDirectly(string query);

public ResultSet[] ExecuteSqlDirectly(string[] DBAliases, string[] queries);

ExecuteScalar

  • 쿼리 내용을 직접 입력하여 실행하며 하나의 값의 반환

  • Parameters

    • string DBAlias : 쿼리를 실행할 데이터베이스의 별칭

    • string query : 실행할 쿼리

  • Returns

    • object : 쿼리 결과에서 첫번째 행의 첫번째 컬럼의 값

public object ExecuteScalar(string DBAlias, string query);

public object ExecuteScalar(string query);

public object[] ExecuteScalar(string[] DBAliases, string[] queries);

ExecuteProcedure

  • ProcedureInfo 클래스를 상속 받은 프로시저 클래스의 객체를 참조하여 처리 후 결과를을 반환

  • Parameters

    • string DBAlias : 쿼리를 실행할 데이터베이스의 별칭

    • ProcedureInfo procedureInfo : 프로시저 클래스 객체

    • bool showMessageBoxWhenException : 쿼리 실행시 발생한 에러 또는 사용자 정의 메시지 코드를 반환 받은 경우 자동으로 메시지를 띄울지 여부 (Default = false)

    • int timeToDisplayProgressBox : "처리중.." 팝업이 나타나기까지 걸리는 시간(millisecond) (Default = 2500)

    • bool initSaveButton : 처리 후 Browser의 저장 버튼 상태를 비활성화로 변경 (Default = true)

  • Returns

    • ResultSet, ResultSet[] : 쿼리 실행 결과

public ResultSet ExecuteProcedure(string DBAlias, ProcedureInfo procedureInfo, bool showMessageBoxWhenException = true, int timeToDisplayProgressBox = 2500, bool initSaveButton = true);

public ResultSet ExecuteProcedure(ProcedureInfo procedureInfo, bool showMessageBoxWhenException = true, int timeToDisplayProgressBox = 2500, bool initSaveButton = true);

public ResultSet[] ExecuteProcedure(string[] DBAliases, ProcedureInfo[] procedureInfos, bool showMessageBoxWhenException = true, int timeToDisplayProgressBox = 2500, bool initSaveButton = true);

ExecuteProcedureAndAcceptData

  • ProcedureInfo 클래스를 상속 받은 프로시저 클래스의 객체를 참조하여 처리 후 대상 컨트롤들(params Control[] targetControls)의 상태를 초기화

  • Parameters

    • string DBAlias : 쿼리를 실행할 데이터베이스의 별칭

    • ProcedureInfo procedureInfo : 프로시저 클래스 객체

    • bool showMessageBoxWhenException : 쿼리 실행시 발생한 에러 또는 사용자 정의 메시지 코드를 반환 받은 경우 자동으로 메시지를 띄울지 여부 (Default = false)

    • int timeToDisplayProgressBox : "처리중.." 팝업이 나타나기까지 걸리는 시간(millisecond) (Default = 2500)

    • params Control[] targetControls : 프로시저 실행 후 대상 컨트롤들의 DataStatus 속성 값은 "Q"로 DataSource 속성의 DataTableAcceptChanges 메서드를 호출

  • Returns

    • bool : 정상 처리시 true, 아니면 false 반환

protected bool ExecuteProcedureAndAcceptData(string DBAlias, ProcedureInfo procedureInfo, params Control[] targetControls);

protected bool ExecuteProcedureAndAcceptData(string DBAlias, ProcedureInfo procedureInfo, bool showMessageBoxWhenException, params Control[] targetControls);

protected bool ExecuteProcedureAndAcceptData(string DBAlias, ProcedureInfo procedureInfo, bool showMessageBoxWhenException, int timeToDisplayProgressBox, params Control[] targetControls);

protected bool ExecuteProcedureAndAcceptData(ProcedureInfo procedureInfo, params Control[] targetControls);

protected bool ExecuteProcedureAndAcceptData(ProcedureInfo procedureInfo, bool showMessageBoxWhenException, params Control[] targetControls);

protected bool ExecuteProcedureAndAcceptData(ProcedureInfo procedureInfo, bool showMessageBoxWhenException, int timeToDisplayProgressBox, params Control[] targetControls);

ExecuteProcedureAndBindingData

  • ProcedureInfo 클래스를 상속 받은 프로시저 클래스의 객체를 참조하여 처리 후 대상 컨트롤들(params Control[] targetControls)에 결과 DataTable을 순차적으로 바인딩

  • Parameter

    • string DBAlias : 쿼리를 실행할 데이터베이스의 별칭

    • ProcedureInfo procedureInfo : 프로시저 클래스 객체

    • bool showMessageBoxWhenException : 쿼리 실행시 발생한 에러 또는 사용자 정의 메시지 코드를 반환 받은 경우 자동으로 메시지를 띄울지 여부 (Default = false)

    • int timeToDisplayProgressBox : "처리중.." 팝업이 나타나기까지 걸리는 시간(millisecond) (Default = 2500)

    • bool initSaveButton : 처리 후 Browser의 저장 버튼 상태를 비활성화로 변경 (Default = true)

    • params Control[] targetControls : 프로시저 결과 DataTable을 대상 컨트롤에 순차적으로 바인

protected bool ExecuteProcedureAndBindingData(string DBAlias, ProcedureInfo procedureInfo, bool showMessageBoxWhenException, int timeToDisplayProgressBox, bool initSaveButton, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(string DBAlias, ProcedureInfo procedureInfo, bool showMessageBoxWhenException, int timeToDisplayProgressBox, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(string DBAlias, ProcedureInfo procedureInfo, bool showMessageBoxWhenException, bool initSaveButton, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(string DBAlias, ProcedureInfo procedureInfo, bool showMessageBoxWhenException, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(string DBAlias, ProcedureInfo procedureInfo, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(ProcedureInfo procedureInfo, bool showMessageBoxWhenException, int timeToDisplayProgressBox, bool initSaveButton, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(ProcedureInfo procedureInfo, bool showMessageBoxWhenException, int timeToDisplayProgressBox, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(ProcedureInfo procedureInfo, bool showMessageBoxWhenException, bool initSaveButton, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(ProcedureInfo procedureInfo, bool showMessageBoxWhenException, params Control[] targetControls);

protected bool ExecuteProcedureAndBindingData(ProcedureInfo procedureInfo, params Control[] targetControls);

FileExists

  • 서버의 파일 첨부 루트 디렉터리로부터 경로(string filename)에 파일 존재 여부 반환

  • Parameters

    • string filename : 파일 경로

  • Returns

    • bool : 존재하면 true, 아니면 false

public bool FileExists(string filename);

FileDownload

  • 서버의 파일 첨부 루트 디렉터리로부터 경로(string filename)의 파일을 다운로드

  • Parameters

    • string filename : 파일 경로

  • Returns

    • byte[] : 다운로드 받은 파일의 이진 데이터, 파일이 존재하지 않으면 null

public byte[] FileDownload(string filename);

FileDelete

  • 서버의 파일 첨부 루트 디렉터리로부터 경로(string filename)의 파일을 제

  • Parameters

    • string filename : 파일 경로

  • Returns

    • string[]

      • [0] : 삭제 성공 여부("OK" or "NO" or Exception.Message)

      • [1] : 삭제된 파일명

public string[] FileDelete(string filename);

FileUpload

  • 서버의 파일 첨부 루트 디렉터리로부터 경로(string filename)에 파일을 업로드

  • Parameters

    • string filename : 파일 경로

    • byte[] fileBytes : 업로드할 파일의 이진 ㅔ이터

    • bool isOverWrite : 덮어쓰기 여부 (덮어쓰기를 하지 않을때 중복된 이름의 파일이 존재하면 이름을 다르게 생성)

  • Returns

    • string[]

      • [0] : 업로드 성공 여부 ("OK" or Exception.Message)

      • [1] : 업로드 파일명 (업로드 실패시 Exception.ToString() 값)

public string[] FileUpload(string filename, byte[] fileBytes, bool isOverWrite);

SetBrowserVariable

  • Browser에 변수를 할당하여 Browser가 종료되기 전까지 유지

  • Parameters

    • string variableCategory : 변수 카테고리

    • string variableCode : 변수 코드

    • object variableValue : 변수 값

    • bool isOverWrite : 덮어쓰기 여부 (Default = true)

protected void SetBrowserVariable(string variableCategory, string variableCode, object variableValue, bool isOverWrite = true);

GetBrowserVariable

  • Browser에 할당된 변수를 반환

  • Parameters

    • string variableCategory : 변수 카테고리

    • string variableCode : 변수 코드

  • Returns

    • object : 파라미터로 설정된 변수의 값

protected object GetBrowserVariable(string variableCategory, string variableCode);

SetTaskbarMessage

  • Browser 하단 작업표시줄 영역에 메시지 설정

  • Parameters

    • string message : 메시지 내용

    • string messageCode : 메시지 코드

protected void SetTaskbarMessage(string message);

protected void SetTaskbarMessage(string message, string messageCode);

GetClientPCName

  • Browser 사용중인 컴퓨터의 이름을 반환

  • Returns

    • string : 컴퓨터 이름

public string GetClientPCName();

GetIPAddress

  • Browser 사용중인 컴퓨터의 IP 주소를 반환

  • Returns

    • string : IP 주소

public string GetIPAddress();

GetPublicIPAddress

  • Browser 사용중인 컴퓨터의 외부 IP 주소를 반환

  • 웹사이트(http://ipfind.kr/)로 부터 외부 IP 주소를 받아오는 방식

  • Returns

    • string : 외부 IP 주소

public string GetPublicIPAddress();

GetMacAddress

  • Browser 사용중인 컴퓨터의 MAC 주소를 반환

  • Returns

    • string : MAC 주소

public string GetMacAddress();

GetCustomInfoValue

  • 'sys_session_info' 프로시저 결과에서 파라미터(string className, string key)에 대한 값을 반환

  • Browser가 처음 실행될때 한번만 호출하기 때문에 프로시저가 변경되면 Browser를 새로 실행해야 적용됨

  • Parameters

    • string className : Session Class

    • string key : Session Key

  • Returns

    • object : Session Value

public object GetCustomInfoValue(string className, string key);

GetServerDateTime

  • WAS(Web Application Server)의 일시(DateTime)를 반환

  • Returns

    • DateTime : 현재 일시

public DateTime GetServerDateTime();

GridAddNewRow

  • GridControl에 새로운 행 추가

  • Parameters

    • object gridControl : GridControl 타입의 객체

    • int pos : 행 추가 위치 (Default = FocusedRowHandle)

    • Hashtable refValue : 추가되는 행의 FieldName이 Hashtable.Key와 일치하면 그 값을 세팅

  • Returns

    • DataRow : 새로 생성된 행

public DataRow GridAddNewRow(object gridControl);

public DataRow GridAddNewRow(object gridControl, int pos);

protected DataRow GridAddNewRow(object gridControl, Hashtable refValue);

protected DataRow GridAddNewRow(object gridControl, int pos, Hashtable refValue);

GridDeleteRow

  • GridControl의 행(Row) 제거

  • Parameters

    • object gridControl : GridControl 또는 GridView 타입의 객체

    • DataRow[] dataRows : 위 GridControl에 바인딩된 DataTable의 DataRow

    • bool showAlertMessage : 대상 행을 지우기 전에 알림 메시지 팝업 여부 (Default = false)

  • Returns

    • bool : 성공 여부

public bool GridDeleteRow(object gridControl, bool showAlertMessage = false);

public bool GridDeleteRow(object gridControl, DataRow[] dataRows, bool showAlertMessage = false);

GridDeleteAllRow

  • GridControl의 모든 행 제거

  • Parameters

    • object gridControl : GridControl 또는 GridView 타입의 객체

    • bool showAlertMessage : 대상 행을 지우기 전에 알림 메시지 팝업 여부 (Default = false)

  • Returns

    • bool : 성공 여부

public bool GridDeleteAllRow(object gridControl, bool showAlertMessage = false);

GetGridRowIndex

  • GridControl에서 특정 필드의 값을 찾아 위치를 반환

  • Parameters

    • object control : GridControl 또는 GridView 타입의 객체

    • string keyField : 값을 찾을 필드명

    • string keyValue : 찾을 값

    • bool alert : 값을 찾기 못했을 경우 "해당하는 그리드 행이 존재하지 않습니다." 메시지 출력 여부 (Default = false)

  • Returns

    • int : GridView 의 RowHandle 값

protected int GetGridRowIndex(object control, string keyField, string keyValue, bool alert = false);

GetBindingDataFromControl

  • 파라미터(Control control)의 자식 컨트롤들의 BindingField 속성의 값(Hashtable.Key)과 EditValue 속성의 값(Hashtable.Value)을 반환

  • Parameters

    • Control control : PanelControl, GroupControl, XtraTabControl, XtraTabPage 타입의 객체

  • Returns

    • Hashtable : 바인딩 된 데이

protected Hashtable GetBindingDataFromControl(Control control);

GetGridRowDataToHashtable

  • GridControl의 특정 행의 FieldName과 값을 반환

  • Parameters

    • object gridControl : GridControl 타입의 객체

    • int rowHandle : 대상 행 위치 (Default = FocusedRowHandle)

  • Returns

    • Hashtable : 바인딩 된 데이터

protected Hashtable GetGridRowDataToHashtable(object gridControl);

protected Hashtable GetGridRowDataToHashtable(object gridControl, int rowHandle);

InitChildControlsRecursive

  • 대상 컨트롤 control 로부터 모든 자식 컨트롤에 대한 초기화 처리 (재귀형)

  • BaseForm.OnLoad 메서드에서 호출

  • Parameters

    • Control control : Form, PanelControl, GroupControl 등의 객

protected void InitChildControlsRecursive(Control control);

FindControl

  • 폼의 모든 자식 컨트롤을 대상으로 파라미터(string controlName)와 이름이 같은 컨트롤을 반환

  • Parameters

    • string controlName : 컨트롤 이름

  • Returns

    • object : 찾은 컨트롤, 없으면 null

protected object FindControl(string controlName);

GetControlValue

  • 폼의 모든 자식 컨트롤을 대상으로 BaseEdit, LabelControl 타입에 한하여 파라미터(string controlName)와 이름이 같은 컨트롤을 찾아 값을 반환

  • Parameters

    • string controlName : 컨트롤 이름

  • Returns

    • object : BaseEdit 타입일 경우 EditValue 속성의 값, LabelControl 타입일 경우 Text 속성의 값

public object GetControlValue(string controlName);

SetControlValue

  • 폼의 모든 자식 컨트롤을 대상으로 BaseEdit, LabelControl 타입에 한하여 파라미터(string controlName)와 이름이 같은 컨트롤을 찾아 BaseEdit 타입일 경우 EditValue 속성에, LabelControl 타입일 경우 Text 속성에 값을 할당

  • Parameters

    • string controlName : 컨트롤 이름

    • object value : 값

public void SetControlValue(string controlName, object value);

SetDecimalPoint

  • SpinEditEx 또는 GridView 특정 컬럼의 RepositoryItemSpinEditEx.DecimalPoint 속성 값을 세팅

  • Parameters

    • SpinEditEx spinEdit : SpinEditEx 타입 객체

    • GridView gridView : GridView 타입 객체

    • string fieldName : GridColumn의 FieldName

    • int decimalPoint :

public void SetDecimalPoint(SpinEditEx spinEdit, int decimalPoint);

public void SetDecimalPoint(GridView gridView, string fieldName, int decimalPoint);

SetLookUp

  • [GPM → 비즈니스 컴포넌트]에 등록된 LookUp 유형의 정보를 조회하여 설정

  • Parameters

    • object control : 대상 컨트롤 (LookUpEditEx, GridControl, TreeList)

    • string fieldName : 필드명 (LookUpEditEx 타입은 해당 없음)

    • bool initColumnDesign : LookUpColumnInfoCollection의 초기화 여부

    • string bizComponentID : RepositoryItemLookUpEditEx.BizComponentID 속성 값

    • string addedWhereQuery : RepositoryItemLookUpEditEx.WhereQuery 속성 값

    • bool addEmptyRow : RepositoryItemLookUpEditEx.AddEmptyRow 속성 값

public void SetLookUp(object control, bool initColumnDesign = false);

public void SetLookUp(object control, string fieldName, bool initColumnDesign = false);

public void SetLookUp(object control, string bizComponentID, string addedWhereQuery, bool addEmptyRow = true, bool initColumnDesign = true)

public void SetLookUp(object control, string bizComponentID, string fieldName, string addedWhereQuery, bool addEmptyRow = true, bool initColumnDesign = true)

GetDefault

  • [GPM Tools → 기본값 설정]에서 설정한 사용자 지정 기본값 정보를 반환

  • Parameters

    • string processType : 프로세스 타입

    • string keyName : 찾을 키 이름 (문자열)

    • object nullValue : 조건에 해당하는 등록된 값이 없을 경우 반환할 값 (Default = null)

    • object control : GridControl 또는 TreeList 타입의 객체

    • string fieldName : GridControl 또는 TreeList 타입의 객체에 설정된 Column의 FieldName

  • Returns

    • object : 파라미터 조건에 해당하는 기본값 정보가 있으면 해당 값을 반환하고, 없으면 object nullValue 로 지정한 값을 반환

public object GetDefault(string processType, string keyName, object nullValue = null);

public object GetDefault(string processType, object control, string fieldName, object nullValue = null);

InitControls

  • 파라미터(Control control)가 GridControl, TreeList 타입일 경우 DataSource에 빈 DataRow를 가지는 DataTable을 새로 할당

  • 그 외 타입은 자신의 자식 컨트롤 중 타입이 BaseEdit 객체의 EditValue 속성 값을 초기화

  • Control control 이 DataStatus 속성을 지닌 컨트롤이면 값을 "N"으로 설정

  • Parameters

    • Control control : PanelControl, GroupControl, XtraTabControl, XtraTabPage, GridControl, TreeList 타입의 객체

public void InitControls(Control control);

ReadOnlyControl

  • Control control 의 ReadOnly 속성 값을 bool value 값으로 설정하고 색상을 변경

  • Control control 이 PanelControl, GroupControl, XtraTabControl, XtraTabPage 타입일 경우 자식 컨트롤에 모두 적용

  • Parameters

    • Control control : BaseEdit, PanelControl, GroupControl, XtraTabControl, XtraTabPage 타입의 객체

    • bool value : ReadOnly 상태 값

    • bool buttonsDisabled : BaseEdit 타입에 버튼이 존재할 경우 버튼에도 적용할지 여부 (Default = true)

public void ReadOnlyControl(Control control, bool value, bool buttonsDisabled = true);

ValidateControls

  • 파라미터(object control)의 자식 컨트롤들 중 AllowBlank 속성 값이 false인 객체에 입력된 데이터가 없는 경우 "[XXX] 은(는) 필수입력항목입니다." 메시지 출력를 출력하고 false를 반환

  • Parameters

    • object control : PanelControl, GroupControl, XtraTabControl, XtraTabPage 타입의 객체

  • Returns

    • bool : 검사 결과

public bool ValidateControls(object control);

ValidateGridDataRow

  • GridControl gridControlint rowHandle 행에 대한 컬럼들에 AllowBlank 속성의 유효성을 확인. 값이 존재하지 않을 경우 "[XXX] 은(는) 필수입력항목입니다." 메시지 출력를 출력하고 false를 반환

  • Parameters

    • GridControl gridControl : GridControl 타입의 객체

    • int rowHandle : 대상 행 위치

  • Returns

    • bool : 검사 결과

protected bool ValidateGridDataRow(GridControl gridControl, int rowHandle);

ValidateDateTime

  • 파라미터(object objDateTime)가 날짜 타입인지 여부를 반환

  • Parameters

    • object objDateTime : 날짜 형식의 객체 (DateTime 또는 string 타입)

  • Returns

    • bool : 검사 결과

public bool ValidateDateTime(object objDateTime);

CallPopup

  • 파라미터(Control control)의 Popup 속성에 지정된 공통 팝업을 실행

  • Parameters

    • Control control : TextEditEx, ButtonEditEx, GridControl, TreeList 의 객체

    • int index : RowHandle 또는 NodeId 의 값 (BaseEdit 타입은 해당 없음)

    • string fieldName : 필드명

  • Returns

    • bool : 팝업이 정상적으로 열리고 선택한 값이 정상적으로 세팅이 되면 true, 그 외엔 false

protected bool CallPopup(Control control);

protected bool CallPopup(Control control, int index, string fieldName);

OpenFormByTab

  • 파라미터(string formId)의 어셈블리를 Browser의 탭으로 실행

  • Browser를 로그인한 사용자(SessionInfo.UserId)가 해당 폼에 권한을 가지고 있어야 함

  • Parameters

    • string formId : 폼ID

    • object param : 실행할 폼에 전달할 파라미터 값. 실행된 폼에서는 ParentParameter 속성을 참조하여 처리

    • bool isNewTab : 새로운 탭으로 실행할 것인지 여부. 이미 폼이 해당 폼ID가 열려있으면 해당 폼을 활성화 (Default = false)

public void OpenFormByTab(string formId, object param, bool isNewTab = false);

OpenFormByPopup

  • 파라미터(string formId )의 어셈블리를 팝업으로 실행

  • Browser를 로그인한 사용자(SessionInfo.UserId)가 해당 폼에 권한이 없더라도 실행

  • Parameters

    • string formId : 폼ID

    • object param : 실행할 폼에 전달할 파라미터 값. 실행된 폼에서는 ParentParameter 속성을 참조하여 처리

  • Returns

public object OpenFormByPopup(string formId, object param);

OpenMessenger

  • 메신저 팝업창 실행

public void OpenMessenger();

SendMessage

  • 사용자들(string[] users)에게 쪽지 전송

  • Parameters

    • string[] users : 쪽지를 받을 대상 (user_id)

    • string message : 쪽지 내용

public void SendMessage(string[] users, string message);

ShowMessageBox

  • 메시지 박스(팝업) 열기

  • Parameters

    • string msg : 메시지

    • string title : 제목

    • MessageFormButtons buttons : 팝업에서 사용할 버튼 (Default = MessageFormButtons.OK)

    • MessageFormIcon icon : 팝업창의 아이콘 이미지 (Default = MessageFormIcon.Information)

  • Returns

    • DialogResult : 팝업창의 반환 값

protected DialogResult ShowMessageBox(string msg, string title = "", MessageFormButtons buttons = MessageFormButtons.OK, MessageFormIcon icon = MessageFormIcon.Information);

ShowErrorMessageBox

  • 에러 아이콘, OK 버튼만 가지는 디자인의 메시지 박스(팝업) 열기

  • Parameters

    • string message : 메시지

    • Exception ex : 발생된 예외 객체

public void ShowErrorMessageBox(string message);

public void ShowErrorMessageBox(Exception ex);

ShowMessageBoxOnProcessing

  • 메시지 박스(팝업)를 띄우고 파라미터(Func<object> func)를 비동기로 처리

  • Parameters

    • Func<object> func : 처리할 메서드

    • out object result : func 의 처리 반환 값

    • string message : 메시지

    • bool visibleCancelButton : 취소 버튼 표시 여부 (Default = false)

  • Returns

    • bool : 처리 성공 여부

public bool ShowMessageBoxOnProcessing(Func<object> func, out object result, string message, bool visibleCancelButton = false);

UploadDataFromDataTable

  • 접속한 브라우저의 메인 Business DB의 특정 테이블에 DataTable 타입 자료를 참조

  • Parameters

    • DataTable data : 업로드 대상 데이터

    • string tableName : 테이블명

    • params string[] columnNames : 컬럼명

  • Returns

    • bool : 처리 성공 여부

  • 컬럼명 파라미터(string[] columnNames)가 입력되지 않은 경우 테이블(string tableName)의 모든 컬럼이 처리 대상으로 적용

  • 업로드 대상 데이터(DataTable data)의 DataColumn에 ColumnName은 실제 테이블의 필드명과 같아야 함

  • 컬럼명(string[] columnNames)에 명시된 컬럼은 반드시 업로드 대상 데이터(DataTable data)에 같은 이름을 가진 DataColumn이 존재해야 함

public bool UploadDataFromDataTable(DataTable data, string tableName);

public bool UploadDataFromDataTable(DataTable data, string tableName, params string[] columnNames);

GetFormMessage

  • Browser 접속시 선택한 언어코드 (SessionInfo.LanguageCode)에 대한 메시지 코드의 메시지 내용을 반환

  • Parameters

    • string messageId : 메시지 코드

    • string alternativeMessage : 코드가 존재하지 않을 경우 반환할 메시지 내용

    • bool showMessageID : 반환할 메시지 내용에 코드를 포함할 것인지 여부 (Default = false)

  • Returns

    • string : 메시지 내

protected string GetFormMessage(string messageId, string alternativeMessage, bool showMessageID = false);

GetFormWordInfo

  • 파라미터(string formId)로 등록된 다국어 코드와 캡션 정보

  • Parameters

    • string formId : 다국어 목록을 가져올 폼ID

    • string languageCode : 언어 코드

  • Returns

    • DataTable : 폼ID로 등록된 다국어 코드와 캡션 정보

protected DataTable GetFormWordInfo(string formId, string languageCode);

GetWord

  • WordList 에서 파라미터(string wordId)에 대한 다국어 캡션을 반환

  • Parameters

    • string wordId : 다국어 ID

    • string wordText : 다국어 ID가 존재하지 않으면 반환할 캡션 값

    • WordCaptionType wordCaptionType : 다국어 캡션 타입

  • Returns

    • string : 다국어 캡션

protected string GetWord(string wordId, string wordText, WordCaptionType wordCaptionType);

OpenFile

  • string fileName 파일을 실행

  • Parameters

    • string fileName : 파일의 경로

public void OpenFile(string fileName);

GetTempDirectory

  • GSTBrowser 폴더 내 임시 폴더를 생성하고 그 경로를 반환

  • 폴더가 이미 존재할 경우엔 생성하지 않음

  • Returns

    • string : 임시 폴더 경로

public string GetTempDirectory();

ClearTempDirectory

  • 임시 폴더 내 모든 파일을 삭제

public void ClearTempDirectory();

CreateSubForm

SubForm

Nested Types (중첩 형식)

protected class ProcessPermission

protected class ProcessPermission
{
    public bool AllowView { get; }
    public bool AllowSave { get; }
    public bool AllowDelete { get; }
    public bool AllowPrint { get; }
}

Last updated

Was this helpful?