AUIGrid
이 컨트롤은 무엇인가요?
AUIGrid.js는 AUIGrid(상용) 라이브러리를 감싼 업무용 그리드 컨트롤입니다. syn.uicontrols.$auigrid 싱글턴 객체로 노출되며, 예전에는 WebGrid 폴더에 WebGrid.js(Handsontable), AUIPivot.js와 함께 들어 있었지만 지금은 AUIGrid 폴더로 분리되었습니다.
qcn.groupware 실사용 기준 300회 이상 쓰이는, 이 저장소의 실무 표준 그리드 엔진입니다. 컬럼 병합, 그룹핑, 고정 컬럼/행, 코드헬프 팝업, 스파크라인 등 업무 화면에 필요한 기능이 가장 폭넓게 내장되어 있습니다. 상용 라이선스 벤더 라이브러리(/lib/auigrid/)가 필요합니다.
언제 사용하나요?
- 신규 화면에서 CRUD 그리드가 필요할 때 우선적으로 사용합니다(실무 표준, 상용 라이선스 포함, 기능이 가장 풍부).
- 코드헬프 팝업(
codehelp컬럼)과 CodePicker를 함께 써서 코드값 검색이 필요한 셀을 구성할 때 - 상용 라이선스 없이 빠르게 프로토타입만 만들려면 형제 컨트롤 WebGrid(Handsontable) 또는 OpenGrid(자체 구현, 완전 무료)를 고려하세요.
빠른 시작
<syn_auigrid id="grdMain" syn-options="{
height: 320,
columns: [
['ProdID', '제품코드', 120, true, 'text', false, 'left'],
['ProdName', '제품명', 200, false, 'text', false, 'left'],
['UseYN', '사용여부', 80, false, 'checkbox', false, 'center']
]
}" syn-events="['afterSelectionEnd']"></syn_auigrid>
<script src="/js/syn.loader.js"></script>
syn.uicontrols.$auigrid.setValue('grdMain', [
{ ProdID: 'P001', ProdName: '모니터', UseYN: true },
{ ProdID: 'P002', ProdName: '키보드', UseYN: false }
]);
예제 실행하기
example/ 폴더의 각 HTML 파일을 handstack의 wwwroot 정적 서버(rdy 프로젝트) 경로 아래에 두고 브라우저로 열면 바로 동작을 확인할 수 있습 니다.
auigridbasic.html/.js:$auigrid기본 사용법 — text/dropdown/checkbox/date 등 다양한editType컬럼 구성auigridevents.html/.js:$auigrid의insertRow/removeRow/getFlag와 이벤트(afterSelectionEnd,afterChange,filtering) 연동 데모
각 예제는 화면 하단 로그 영역(syn.$l.eventLog 출력)에서 이벤트 발생 순서와 전달값을 확인할 수 있습니다.
더 알아보기
- API 상세는 같은 폴더의
API.md를 참고하세요. - 실제 소스:
wwwroot/uicontrols/AUIGrid/AUIGrid.js,AUIGrid.css - 기존 샘플:
wwwroot/sample/uicontrol/webgrid2.html - 로더 자동주입 정의:
wwwroot/js/syn.loader.js의'auigrid'case - AUIGrid 벤더 공식 문서: https://www.auisoft.net/documentation/auigrid/
실전 예제 페이지
/uicontrols/AUIGrid/example/ 경로의 예제를 아래 iframe에서 바로 확인할 수 있습니다.