123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306 |
- /************************************************************************************************
- DATE : 2007-07-06
- WRITER : Comsquare
- DEFINITION : TrustForm4.0 TChart 관련 공통 JavaScript ( CMC )
- *************************************************************************************************/
- /************************************************************************************************
- 함수명 : createTChart ()
- 인자 :
- String objID - 생성될 TChart Object ID
- Integer leftPx - Left
- Integer topPx - Top
- Integer widthPx - Width
- Integer heightPx - Height
- [Object parentObj] - 생성될 타겟(부모 객체)
- 결과값 : Object TChart
- 함수설명 : TChart Control 생성
- ************************************************************************************************
- 작 성 자 : 김 기용
- 작 성 일 : 2007. 07. 06
- ************************************************************************************************/
- function createTChart(tChartID, leftPx, topPx, widthPx, heightPx, parentObj) {
- if( parentObj == null )
- parentObj = body;
- var tChartObj = parentObj.createChild("xforms:object", "id:" + tChartID + "; clsid:{fab9b41c-87d6-474d-ab7e-f07d78f2422e}; left:" + leftPx + "px; top:" + topPx + "px; width:" + widthPx + "px; height:" + heightPx + "px; ")
- return tChartObj;
- }
- function createTChart8(tChartID, leftPx, topPx, widthPx, heightPx, parentObj) {
- if( parentObj == null )
- parentObj = body;
- var tChartObj = parentObj.createChild("xforms:object", "id:" + tChartID + "; clsid:{BDEB0088-66F9-4A55-ABD2-0BF8DEEC1196}; left:" + leftPx + "px; top:" + topPx + "px; width:" + widthPx + "px; height:" + heightPx + "px; ")
- return tChartObj;
- }
- /************************************************************************************************
- 함수명 : clearTChart ()
- 인자 :
- String tChartobj - Target Chart Object
- 결과값 :
- 함수설명 : TChart Clear
- ************************************************************************************************
- 작 성 자 : 김 기용
- 작 성 일 : 2007. 08. 14
- ************************************************************************************************/
- function clearTChart(tChartObj) {
- tChartObj.RemoveAllSeries();
- tChartObj.Tools.clear()
- }
- /************************************************************************************************
- 함수명 : drawBar ()
- 인자 :
- Object tChartObj - Target TChart Object
- Object gridObj - Source DataGrid
- String yColRef - Y축 데이터의 Column Ref 노드명
- String title - TChart Title
- [Boolean pivot] - true | false
- 결과값 :
- 함수설명 : Datagrid의 해당 로우 data를 반영하여 TChart에(Point Type) 그려 줌.
- ************************************************************************************************
- 작 성 자 : 김 기용
- 작 성 일 : 2007. 08. 14
- ************************************************************************************************/
- function drawBar(tChartObj, gridObj ,yColRef , title, pivot) {
- // TChart 초기화
- clearTChart(tChartObj);
- tChartObj.Header.Text(0) = title; // Title 설정
- tChartObj.Aspect.View3D = 0; // 3D 설정 :: 0 = 2D | 1 = 3D
- if( pivot )
- pivot = 2;
- else
- pivot = 1;
- tChartObj.AddSeries(pivot); // TChart Type 설정 :: 0 = Line | 1 = Bar ..
- tChartObj.Legend.visible = false;
- tChartObj.Series(0).marks.visible = false;
- var Rnd1, Rnd2, Rnd3;
- var cColor;
- var i;
- var x, y;
- var yCol = gridObj.colRef(yColRef);
- // alert(xCol + " : " + yCol);
- for (i = gridObj.fixedRows; i < gridObj.rows; i++ ) {
- Rnd1 = Math.random();
- Rnd2 = Math.random();
- Rnd3 = Math.random();
- cColor = window.rgb( (255 - 1) * Rnd1 + 1, (255 - 1) * Rnd2 + 1 , (255 - 1) * Rnd3 + 1);
- x = gridObj.valueMatrix(i, 0);
- y = gridObj.valueMatrix(i, yCol);
- tChartObj.Series(0).Add (y, x, cColor);
- }
- }
- /************************************************************************************************
- 함수명 : drawSelectBar ()
- 인자 :
- Object chart - TeeChartObject
- Object grid - teechart 생성시 참고할 데이터를 가진 대상 grid Object
- String title - TeeChart 에 보여질 제목
- String rows - Grid 의 행번호배열( 예: grid의 1,2,4번째 행을 대상으로 하고 싶으면 grid[0]=1, grid[1]=2, grid[2]=4 인 길이 3짜리 배열 object)
- String cols - Grid 의 컬럼번호배열( 예: grid의 2,4번째 컬럼을 대상으로 하고 싶으면 grid[0]=2, grid[1]=4 인 길이 2짜리 배열 object)
- boolean legend - legend 의 visible 여부(true/false) 기본값은 true;
- boolean pivot - pivot 여부 (true/false) 기본값은 false;
- String type - X 축으로 지정할 기준 데이터(row/col)
- 1. row : Grid 의 row(행)이 X축, column(컬럼)이 그래프 데이터가 된다.
- 2. col : Grid 의 column(컬럼)이 X축, row(행)이 그래프 데이터가 된다.
- 결과값 :
- 함수설명 : Datagrid의 원하는 행, 컬럼을 선택해서 BAR 타입의 차트를 보여줌
- type == "row" 면 rows 가 X 축, cols 가 그래프 데이터가 된다.
- type == "col" 면 cols 가 X 축, rows 가 그래프 데이터가 된다.
- ************************************************************************************************
- 작 성 자 : 김 기호
- 작 성 일 : 2008.07.01
- ************************************************************************************************/
- function drawSelectBar(chart, grid, title, rows, cols, legend, pivot, type) {
- // TChart 초기화
- clearTChart(chart);
- chart.Header.Text(0) = title; // Title 설정
- chart.Aspect.View3D = 0; // 3D 설정 :: 0 = 2D | 1 = 3D
- if( pivot ) {
- pivot = 2;
- } else {
- pivot = 1;
- }
- if (legend) {
- chart.Legend.visible = true;
- } else {
- chart.Legend.visible = false;
- }
- if (type == "row") {
- var r, g, b, color;
- var x, y;
- for (var i = 0; i < cols.length; i++ ) {
- chart.AddSeries(pivot); // TChart Type 설정 :: 0 = Line | 1 = Bar ..
- var idx = chart.SeriesCount -1;
- chart.Series(idx).title = grid.valueMatrix(0, cols[i]);
- chart.Series(i).marks.visible = false;
- r = Math.random();
- g = Math.random();
- b = Math.random();
- color = window.rgb( (255 - 1) * r + 1, (255 - 1) * g + 1 , (255 - 1) * b + 1);
- for (var j = 0; j < rows.length; j++) {
- x = grid.valueMatrix(rows[j], 0);
- y = grid.valueMatrix(rows[j], cols[i]);
- //alert("x : " + x + "\ny : " + y + "\ncolor : " + color + "\ni : " + i + "\nj : " + j);
- chart.Series(i).Add (y, x, chart.Series(idx).Color);
- chart.Series(i).LegendItemColor(color)
- }
- }
- } else if (type == "col") {
- var r, g, b, color;
- var x, y;
- for (var i = 0; i < rows.length; i++ ) {
- chart.AddSeries(pivot); // TChart Type 설정 :: 0 = Line | 1 = Bar ..
- var idx = chart.SeriesCount -1;
- chart.Series(idx).title = grid.valueMatrix(rows[i], 0);
- chart.Series(i).marks.visible = false;
- r = Math.random();
- g = Math.random();
- b = Math.random();
- color = window.rgb( (255 - 1) * r + 1, (255 - 1) * g + 1 , (255 - 1) * b + 1);
- for (var j = 0; j < cols.length; j++) {
- x = grid.valueMatrix(0, cols[j]);
- y = grid.valueMatrix(rows[i], cols[j]);
- //alert("x : " + x + "\ny : " + y + "\ncolor : " + color + "\ni : " + i + "\nj : " + j);
- chart.Series(i).Add (y, x, chart.Series(idx).Color);
- chart.Series(i).LegendItemColor(color)
- }
- }
- }
- }
- /************************************************************************************************
- 함수명 : drawLine ()
- 인자 :
- Object tChartObj - Target TChart Object
- Object gridObj - Source DataGrid
- Integer row - Datagrid Source row
- [String title] - TChart Title
- [Boolean refresh] - 초기화 여부
- 결과값 :
- 함수설명 : Datagrid의 해당 로우 data를 반영하여 TChart에(Point Type) 그려 줌.
- ************************************************************************************************
- 작 성 자 : 김 기용
- 작 성 일 : 2007. 07. 06
- ************************************************************************************************/
- function drawLine(tChartObj, gridObj, row, title, refresh) {
- // TChart 초기화
- if( refresh ) {
- clearTChart(tChartObj);
- }
- if( title != null || title == "" ) {
- tChartObj.Header.Text(0) = title; // Title 설정
- }
- tChartObj.Aspect.View3D = 0; // 모양 설정 :: 0 = 2D | 1 = 3D
- tChartObj.Legend.CheckBoxes = true;
- tChartObj.Legend.Alignment = 0; // Legend 위치 설정 :: 0 = left | 1 = right | 2 = top| 3 = bottom
- var Rnd1, Rnd2, Rnd3;
- var cColor;
- var i;
- var x, y;
- tChartObj.AddSeries(0); // TChart Type 설정 :: 0 = Line | 1 = Bar ..
- var seriesIndex = tChartObj.SeriesCount - 1;
- var trgRow = row;
- tChartObj.Series(seriesIndex).asLine.Pointer.Visible = true;
- tChartObj.Series(seriesIndex).asLine.Pointer.Style = 1; //PointStyle 설정 :: 0 - 8
- tChartObj.Series(seriesIndex).Title = gridObj.valueMatrix(trgRow, 0);
- //tChartObj.Series(cline - 2).Marks.Style = 0;
- Rnd1 = Math.random();
- Rnd2 = Math.random();
- Rnd3 = Math.random();
- cColor = window.rgb( (255 - 1) * Rnd1 + 1, (255 - 1) * Rnd2 + 1 , (255 - 1) * Rnd3 + 1);
- for( i = gridObj.fixedCols; i < gridObj.cols; i++ ){
- x = gridObj.valueMatrix(0, i);
- y = gridObj.valueMatrix(trgRow, i);
- tChartObj.Series(seriesIndex).Add (y, x, tChartObj.Series(seriesIndex).Color);
- tChartObj.Series(seriesIndex).LegendItemColor(cColor);
- }
- }
- // 함수명 변경으로 기존 함수 유지 20070813
- function drawOneTChart(tChartObj, gridObj, row, title, refresh) {
- drawLine(tChartObj, gridObj, row, title, refresh);
- }
- /************************************************************************************************
- 함수명 : drawLineAll ()
- 인자 :
- Object tChartObj - Target TChart Object
- Object gridObj - Source DataGrid
- String title - TChart Title
- 결과값 :
- 함수설명 : Datagrid data를 반영하여 TChart에(Point Type) 그려 줌.
- ************************************************************************************************
- 작 성 자 : 김 기용
- 작 성 일 : 2007. 07. 06
- ************************************************************************************************/
- function drawLineAll(tChartObj, gridObj, title) {
- for( var i = gridObj.fixedRows; i < gridObj.rows; i ++)
- drawOneTChart(tChartObj, gridObj, i, title, false);
- }
- // 함수명 변경으로 기존 함수 유지 20070813
- function drawAllTChart(tChartObj, gridObj, title) {
- drawLineAll(tChartObj, gridObj, title);
- }
- //chart 배경이미지 클라이언트 경로만 가능함
- //작성자: 김선희(Create 2008.01.30)
- function setBackImageLoad(tChartObj, imgCd){
- tChartObj.Panel.BackImageLoad(getTChartBackgroundImage(imgCd));
- }
- function getTChartBackgroundImage(imgcd){
- return "C:\\Program Files\\himed\\components\\ClipSoft\\teechart7\\images\\"+imgcd+".gif";
- }
|