2

VB プログラム内でアクティブ レポートを使用して、データに基づいてレポートを生成しています。現在、レポートを正常に開いており、ユーザーが印刷、コピー、検索などを行えるようになっています。プログラムの実行中にグラフをエクスポートすることをユーザーが選択できるようにする機能を追加する方法がわかりません。

私は多くのチュートリアルを見てきましたが、私のプログラムでは動作しない原因が常にあります。たとえば、このフォーラムは、ツールバーにエクスポート ボタンを追加し、ボタンに機能を追加するときに、私が必要とする正確なコードを提供します。残念ながら、ツールバーにアクセスできません。彼らはそれにアクセスしMe.Toolbar、私はこの方法でアクセスできません。

ここの別のフォーラムでは、エクスポートをツールバーに追加せず、代わりにコードに直接挿入していますが、プロジェクトが認識しないため、この方法で実行できるようにするために何をインポートすればよいかわかりませんActiveReportsPDFExport.ARExportPDF

アップデート:

デザイン形式 a で ActiveReport に追加しDataDynamics.ActiveReports.Export.Pdf.PdfExport、コードから呼び出すことで、PDF にエクスポートする方法を見つけましたPdfExport1.Export(Me.Document, "D:\Kyra\HELP.pdf")

問題:

  1. これは、アクティブなレポートを開く関数の最後に呼び出されます。ユーザーがレポートをエクスポートすることを選択できるようにしてから、レポートを保存する形式と場所を選択するオプションが与えられるようにしたいと考えています。
4

3 に答える 3

4

以下は、VB.NET と ActiveReports 6 を使用して ActiveReports ツールバーに PDF エクスポート ボタンを追加するコードです。

Const pdfExportToolID As Long = 42

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim myExportTool As DataDynamics.ActiveReports.Toolbar.Button
    myExportTool = New DataDynamics.ActiveReports.Toolbar.Button()
    myExportTool.ButtonStyle = DataDynamics.ActiveReports.Toolbar.ButtonStyle.Text
    myExportTool.Caption = "Export to PDF"
    myExportTool.Id = pdfExportToolID
    Me.Viewer1.Toolbar.Tools.Add(myExportTool)

    ' load report:
    Dim rpt As New NewActiveReport1()
    Me.Viewer1.Document = rpt.Document
    rpt.Run(False)
End Sub

Private Sub Viewer1_ToolClick(ByVal sender As System.Object, ByVal e As DataDynamics.ActiveReports.Toolbar.ToolClickEventArgs) Handles Viewer1.ToolClick
    If (e.Tool.Id = pdfExportToolID) Then
        Dim pdf As New DataDynamics.ActiveReports.Export.Pdf.PdfExport()
        pdf.Export(Me.Viewer1.Document, "C:\users\scott\junk\myActiveReport.pdf")

    End If
End Sub

このコードは、「Viewer1」という名前のフォーム上の ActiveReports Viewer を使用して、フォーム内で機能します。

お役に立てれば、

Scott Willeke
GrapeCity
于 2010-07-27T17:47:38.953 に答える
2

こちらの指示に従ってください。具体的には、ユーザーがエクスポートを開始できるようにする「cmdExport」を追加するボタンです。

于 2010-06-11T07:20:14.843 に答える
0

このコードは私のために働いています.Webviewerオブジェクトを渡すだけです.

ABC.Run();
ARWebViewer.Report = ABC; 

ExportToExcel(ARWebViewer); // call ExportToExcel method, 

public void ExportToExcel(DataDynamics.ActiveReports.Web.WebViewer objWebviewer)

    {
        DataDynamics.ActiveReports.Export.Xls.XlsExport XLSexport = new DataDynamics.ActiveReports.Export.Xls.XlsExport();

        System.IO.MemoryStream memStream = new System.IO.MemoryStream();
        if (XLSexport == null)
            XLSexport = new DataDynamics.ActiveReports.Export.Xls.XlsExport();

        XLSexport.AutoRowHeight = true;
        XLSexport.MinColumnWidth = (float)0.2;
        XLSexport.RemoveVerticalSpace = true;
        XLSexport.UseCellMerging = true;

        XLSexport.Export(objWebviewer.Report.Document, memStream);
        memStream.Position = 0;
        Response.ContentType = "application/Xls";
        Response.AddHeader("content-disposition", "attachment; filename=" + ajDoc + ".Xls");

        Response.BinaryWrite(memStream.ToArray());
        Response.End();
        XLSexport = null;
    }
于 2015-05-08T10:45:14.623 に答える