파워빌더에도 Chart 가 있습니다,
하지만 모양(즉 이쁘지가 않음) 별로 입니다,
하여 많은 사람들이 사용을 꺼리는 기능 입니다.
(헌데 저는 그냥 그냥 저냥 사용했습니다.)
이번에 파워빌더 Chart 말고 다른 Chart를 사용해보기로 하고 여러가지를 테스트 진행 했습니다.
1. chart.js 를 이용하는 방법
이는 파워빌더에서 작업 하는것은 아닙니다.
HTML5와 Chart.js ( https://www.chartjs.org/ )를 이용하여 html 파일을
만들고 파빌에서는 OLE(Internet explorer)Web browser 를 사용하여 Display를 하는것 입니다.
이런 방법을 이용하여 제품을 출시한곳이 Ulitmate Suite(https://www.pbultimatesuite.com/) 있다.
헌데 문제가 파워빌더 또는 Internet explorer 제품의 문제라기 보다는 OLE Web browser로 보임
2. PowerBuilder Datawindow 를 용하여 만들기
약 10여년전에 날코딩을 콤포넌트화 하는 작업을 해서 DW에 Modify(...) 작업으로 Chart 그리기에 성공 했었다.
헌데 안타깝게도 소스가 머리속에만 있다... (폐쇄 네트워크에서 만 작업이 가능한 장소에서 일을 해서 소스를 가져올수 없었음)
다시 개발을 하려니 엄두가 나지 않는다, 그리도 도전을 해보고 싶었은데... 대표님께서 그렇게 시간(개발기간 약 1.5 개월)을
허비 할 수 없다. 하여 ... 잠시 중단중 폐업안하고 작업 하면 약 1년정도 예상 했음...
3. ChartFX for COM 6.2
Software FX( https://www.softwarefx.com/ )에서 제작한 제품을 가지고 작업 하기로 했다.
해당회사 사이트에서 Trail(30일번젼)을 받아서 개발을 시작 했다.
아주 심플하게 작업 마졌다.
ChartFX for COM 6.2 사용법 무지하게 간단하다.
1. Trail 을 받아서 인스톨 한다. - 이때 메일로 날라온 라이센스키를 입력 한다.
2. OLE Custom Controls - Chart Object를 선택 한다.
3. Chart FX Internet Designer.exe 실행 하여 적당한 Chart를 설계한다.
이때 나오는 ASP 스크립트를 파워빌더에 그대로 적용한다.
PS 1 : .Object. 삽입
PS 2 : Set Obj = chart.axis 등을 사용할때 변수는 OLEObject를 사용한다.
4. 데이타를 넣는 방법은 Samples & Resource Center 를 실행 하고
3.에서 선택한 type의 chart를 선택 하면 나오는 스크립트를 잘 가공한다.
5. 배포시 필요한 파일
ChartFX.ClientServer.Core.dll
ChartFX.ClientServer.Borders.dll
ChartFX.ClientServer.Data.dll
ChartFX.ClientServer.Annotation.dll
6. 등록하기
regsvr32 -v /s ChartFX.ClientServer.Core.dll
regsvr32 -v /s ChartFX.ClientServer.Borders.dll
regsvr32 -v /s ChartFX.ClientServer.Data.dll
regsvr32 -v /s ChartFX.ClientServer.Annotation.dll
7. 등록 하제 하기
regsvr32 /u /s ChartFX.ClientServer.Core.dll
regsvr32 /u /s ChartFX.ClientServer.Borders.dll
regsvr32 /u /s ChartFX.ClientServer.Data.dll
regsvr32 /u /s ChartFX.ClientServer.Annotation.dll
첫댓글 실제로 정식버젼으로 작업할때 조심 해야 할것이 한가지 있습니다.
개발하는 방식이나 배포하는 방식에서는 별다른 문제가 없는데......
반드시 트라이얼을 깨긋이 삭제하고 https://www.mysoftwarefx.com/ 에서 내려 받은 인스톨 파일을 모두 인스톨 해야 합니다. 개발사 측에서 파워빌더를 정식으로 된다고 공식 표시를 하지 않아서 기술지원을 받으수 없습니다.