سؤال

أنا أستخدم تقارير نشطة ضمن برنامج VB الخاص بي لإنشاء تقرير بناءً على بياناتي. في الوقت الحالي ، لديّ التقرير يفتح بشكل جيد ويسمح للمستخدم بالطباعة والنسخ والبحث ، وما إلى ذلك. لست متأكدًا من كيفية إضافة الوظائف للسماح للمستخدم باختيار تصدير المخطط بمجرد تشغيل البرنامج.

لقد كنت أبحث في العديد من البرامج التعليمية ولكن هناك دائمًا شيء يجعل من غير قادر على العمل في برنامجي. علي سبيل المثال هذه يعطي المنتدى الكود الدقيق لما أريده أثناء إضافة زر تصدير إلى شريط الأدوات ثم يضيف الوظيفة إلى الزر. لسوء الحظ ، لا أستطيع الوصول إلى شريط الأدوات. يصلون إليها مع Me.Toolbar وأنا غير قادر على الوصول إليها بهذه الطريقة.

منتدى آخر هنا لا يضيف التصدير إلى شريط الأدوات وبدلاً من ذلك يدرجه مباشرة في الكود ، لكنني لست متأكدًا مما يجب استيراده للسماح لي بالقيام بذلك بهذه الطريقة لأن مشروعي لا يتعرف ActiveReportsPDFExport.ARExportPDF.

تحديث:

وجدت طريقة للتصدير إلى PDF من خلال إضافة إلى Activereport في تنسيق التصميم أ DataDynamics.ActiveReports.Export.Pdf.PdfExport ثم الاتصال من الكود الخاص بي PdfExport1.Export(Me.Document, "D:\Kyra\HELP.pdf")

مشكلة:

  1. وهذا ما يسمى في نهاية وظيفتي التي تفتح التقرير النشط. أريد أن يكون المستخدم قادرًا على اختيار تصدير التقرير ثم يتم إعطاؤه خيار اختيار التنسيق والموقع حيث يريدون حفظ التقرير إليه.
هل كانت مفيدة؟

المحلول

فيما يلي الرمز لإضافة زر تصدير PDF إلى شريط أدوات ActivEreports باستخدام vb.net و activereports 6:

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

يعمل هذا الرمز داخل نموذج مع عارض Activereports على نموذج HTE المسمى "Viewer1".

أتمنى أن يساعدك هذا،

Scott Willeke
GrapeCity

نصائح أخرى

ما عليك سوى اتباع التعليمات هنا. على وجه التحديد ، إنه الزر الذي يضيفونه "cmdexport" الذي يتيح للمستخدم بدء التصدير.

هذا الرمز يعمل بالنسبة لي ، فقط تمرير كائن 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;
    }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top