안녕하세요? AR 사용자 '하늘을날자'입니다.
비주얼 베이직 6에서 비주얼 베이직 닷넷으로 넘어가실려고 하나 봅니다.
개인적으로 AR은 여타의 리포팅 툴보다 사용하기 더 쉬웠습니다.
1.비주얼 베이직 닷넷으로 코딩하실려면 몇 가지 요구사항이 있습니다.
(ActiveReports에서 요구하는 사항입니다)
1) 닷넷프레임워크 버전: AR 15에서 요구하는 최소 버전 설정, 전 4.7.2로 했습니다.
2) Spread 역시 닷넷 버전을 사용하신다고 가정합니다.
AR과 Spread를 이용하여 Spread ActiveSheet에 화면 출력한 Row 전체를 AR Report로 인쇄하는 작업을 한번 따라 가보죠. 어려운 건 없고요. 기존에 크리스탈 리포트나 다른 리포팅 툴을 사용해 보셨다면 유사한 흐름으로 생각하시면 됩니다.
큰 흐름만 보여 드리겠습니다.(사실 이게 전부입니다)
제 글을 보고 도움말 따라가면서 코딩하면 혼자서도 완성하실 수 있을겁니다.
(시간관계상 전부 다 디테일하게 설명하려면 너무 길어질 것 같습니다.)
===================================================================
2.윈도우 폼 2개와 리포트 파일 1개가 필요합니다.
1) 윈도우 폼: Spread Row 화면 출력 폼
빈 폼에 FpSpread 컨트롤을 올립니다.
Form1.vb
시트에 Row를 화면 출력합니다.(원하는 형식으로)
[데이터 필터링이 필요한 경우]
- 매개변수를 사용하여 리포트 출력
- 임시저장소에 담아 리포트 출력
인쇄 버튼을 하나 추가하여 코딩합니다.(예시)
Form1.vb
Imports System.Data.OleDb
Imports FarPoint.Win.Spread
Public Class Form1
Private Sub btnPrint_Click(sender As Object, e As EventArgs) Handles btnPrint.Click
Call RtnReportViewer()
End Sub
Private Sub RtnReportViewer()
Dim f As New frmReportViewer()
'rptName은 Module에 정의했습니다.
rptName = "\PageReport1.rdlx"
f.Show()
End Sub
End Class
2) AR Viewer 폼: Spread에 나온 Row 그대로 쿼리를 통해서 출력하는 뷰어입니다.
AR의 Viewer 컨트롤을 사용하면 됩니다.
빈 윈도우 폼에 Viewer 컨트롤을 올립니다.
★NuGet 패키지 관리자를 이용하여 Viewer 어셈블리를 추가 후 컨트롤을 사용합니다.
frmReportViewer.vb
frmReportViewer.vb
[소스 코드]
Public Class frmReportViewer
Private Sub frmReportViewer_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'미리보기(Viewer 실행)
Dim rpt As GrapeCity.ActiveReports.PageReport = New GrapeCity.ActiveReports.PageReport
rpt.Load(New System.IO.FileInfo(Application.StartupPath + "\Report\" + rptName))
Dim pageDocument As New GrapeCity.ActiveReports.Document.PageDocument(rpt)
Viewer1.LoadDocument(pageDocument) '인쇄 버튼을 눌러야 함
End Sub
End Class
[Print 메서드]
https://www.grapecity.com/activereportsnet/docs/v15/online/print-methods-in-activereports-developer.html
3) 리포트 디자인 파일: 몇 가지 종류가 있는데요. 페이지 리포트를 예로 들겠습니다.
리포트 타입에 따라 용도가 다릅니다. 이 또한 도움말을 참고하십시오.
@리포트 종류(타입)
https://www.grapecity.com/activereportsnet/docs/v15/online/reporttypes.html
페이지 리포트 템플릿을 추가하여 리포트를 디자인 하십시오.
[PageReport1.rdlx]
DB 연동을 위해서는 리포트 탐색기에서 DataSet을 추가하고 쿼리 디자이너로 쿼리를 작성합니다.
(관련 도움말을 참고하세요)
**확장 > Report > Report Properties : 리포트 속성을 변경합니다.
**보기 > 다른 창 > Report Explorer 14(15) : 리포트 탐색기를 보여줍니다.
***쿼리 디자이너 사용법
https://www.grapecity.com/activereportsnet/docs/v15/online/visual-query-designer-interface.html
이제 디자인은 전부 끝났으니 코딩만 적절히 완성해주면 작업이 끝납니다.
미리보기 없이 인쇄할려면...
https://www.grapecity.com/activereportsnet/docs/v15/online/print-methods-in-activereports-developer.html
[빌드 후 인쇄 버튼을 눌러보면] 심플하죠?
[ActiveReports.NET와 Spread.NET 구매 절차]
https://grapecity.co.kr/order