문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 다음 판 | 이전 판 | ||
| white:ibsheet:speed [2020/10/30 01:36] – 만듦 taekgu | white:ibsheet:speed [2025/04/15 10:05] (현재) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 줄 2: | 줄 2: | ||
| ===== OnLoadData사용 ===== | ===== OnLoadData사용 ===== | ||
| 조회데이터가 많지 않은 생각보다 시간이 많이 걸리는 경우 확인해 보면 조회 이후 전체 데이터를 스켄하면서 SetRowBackColor()나 SetCellEditable()식의 함수를 통해 조회된 데이터를 수정하는 경우가 많은데 위와 같은 함수가 한번 호출될때 마다 화면에 즉시 렌더링이 이루어지면서 브라우져의 자원을 사용하게 됩니다. 따라서 위와 같은 업무는 데이터를 시트에 로딩하기 전에 미리 조회데이터에 삽입하여 로딩하는 것이 훨씬 성능이 좋습니다. | 조회데이터가 많지 않은 생각보다 시간이 많이 걸리는 경우 확인해 보면 조회 이후 전체 데이터를 스켄하면서 SetRowBackColor()나 SetCellEditable()식의 함수를 통해 조회된 데이터를 수정하는 경우가 많은데 위와 같은 함수가 한번 호출될때 마다 화면에 즉시 렌더링이 이루어지면서 브라우져의 자원을 사용하게 됩니다. 따라서 위와 같은 업무는 데이터를 시트에 로딩하기 전에 미리 조회데이터에 삽입하여 로딩하는 것이 훨씬 성능이 좋습니다. | ||
| + | * 성능이 느린 방법 | ||
| <code javascript> | <code javascript> | ||
| - | // 성능이 느린 방법 | ||
| function mySheet_OnSearchEnd(code, | function mySheet_OnSearchEnd(code, | ||
| var sr = mySheet.GetDataFirstRow(), | var sr = mySheet.GetDataFirstRow(), | ||
| 줄 11: | 줄 11: | ||
| mySheet.SetRowBackColor(i, | mySheet.SetRowBackColor(i, | ||
| mySheet.SetCellEditable(i, | mySheet.SetCellEditable(i, | ||
| + | } | ||
| + | } | ||
| } | } | ||
| - | } | + | </ |
| - | } | + | |
| - | + | <code javascript> | |
| - | //성능이 좋은 방법 | + | |
| function mySheet_OnLoadData(json){ | function mySheet_OnLoadData(json){ | ||
| var jsonObj = $.parseJSON(json); | var jsonObj = $.parseJSON(json); | ||
| 줄 23: | 줄 24: | ||
| data[i][" | data[i][" | ||
| data[i][" | data[i][" | ||
| - | } | + | |
| - | } | + | } |
| - | return jsonObj; | + | return jsonObj; |
| } | } | ||
| </ | </ | ||