Search Results for

    Show / Hide Table of Contents

    Step by step tutorial on FlexCel reports (VB.Net / netframework)

    Note

    This demo is available in your FlexCel installation at <FlexCel Install Folder>\samples\vb\VS2022\netframework\20.Reports\A0.Reporting Tutorial and also at https:​//​github.​com/​tmssoftware/​TMS-​FlexCel.​NET-​demos/​tree/​master/​vb/​VS2022/​netframework/​Modules/​20.​Reports/​A0.​Reporting Tutorial

    Overview

    This demo is the completed project from the FlexCel reporting tutorial video at

    https://www.tmssoftware.com/flexcel/tutorial.htm

    Note: This demo does not run from MainDemo and it needs .NET 2.0 or newer.

    It also needs the Adventure Works demo database from

    http://www.codeplex.com/MSFTDBProdSamples/Release/ProjectReleases.aspx?ReleaseId=4004 (SQLServer 2005)

    or

    http://www.codeplex.com/MSFTDBProdSamples/Release/ProjectReleases.aspx?ReleaseId=8392 (SQLServer 2008)

    In order to run this demo, open the website from Visual Studio 2005 or newer, by doing: Menu->File->Open->Website

    and pointing to the "Modules\20.Reports\A0.Reporting Tutorial" folder.

    Concepts

    • Concepts are explained in the video. This is just the finished code and template so you can take a look at it.

    • In order to actually run this demo, you might need to edit web.config and change the connection settings for your SQL Server.

    Files

    Default.aspx.vb

    Imports System
    Imports System.Collections
    Imports System.Configuration
    Imports System.Data
    Imports System.Web
    Imports System.Web.Security
    Imports System.Web.UI
    Imports System.Web.UI.HtmlControls
    Imports System.Web.UI.WebControls
    Imports System.Web.UI.WebControls.WebParts
    Imports FlexCel.Core
    Imports FlexCel.XlsAdapter
    Imports FlexCel.Render
    Imports FlexCel.Report
    Imports System.IO
    
    Partial Public Class _Default
        Inherits System.Web.UI.Page
    
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
    
        End Sub
    
        Private Function CreateReport() As ExcelFile
            Dim Result As New XlsFile(True)
            Result.Open(MapPath("~/App_Data/template.xls"))
            Using fr As New FlexCelReport()
                LoadData(fr)
    
                fr.SetValue("ReportCaption", "Hello from FlexCel!")
                fr.Run(Result)
                Return Result
            End Using
        End Function
    
        Private Sub LoadData(ByVal fr As FlexCelReport)
            Dim Data As New DataSet1()
            Dim ProductAdapter As New DataSet1TableAdapters.ProductTableAdapter()
            ProductAdapter.Fill(Data.Product)
    
            Dim ProductPhotoAdapter As New DataSet1TableAdapters.ProductPhotoTableAdapter()
            ProductPhotoAdapter.Fill(Data.ProductPhoto)
    
            Dim ProductProductPhotoAdapter As New DataSet1TableAdapters.ProductProductPhotoTableAdapter()
            ProductProductPhotoAdapter.Fill(Data.ProductProductPhoto)
    
            fr.AddTable(Data)
        End Sub
    
        Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
            Dim xls As ExcelFile = CreateReport()
            FlexCelAspViewer1.HtmlExport.Workbook = xls
        End Sub
        Protected Sub Button2_Click(ByVal sender As Object, ByVal e As EventArgs)
            Dim xls As ExcelFile = CreateReport()
    
            Using ms As New MemoryStream()
                xls.Save(ms)
                ms.Position = 0
                Response.Clear()
                Response.AddHeader("Content-Disposition", "attachment; filename=Test.xls")
                Response.AddHeader("Content-Length", ms.Length.ToString())
                Response.ContentType = "application/excel" 'octet-stream";
                Response.BinaryWrite(ms.ToArray())
                Response.End()
            End Using
    
    
        End Sub
        Protected Sub Button3_Click(ByVal sender As Object, ByVal e As EventArgs)
            Dim xls As ExcelFile = CreateReport()
    
            Using ms As New MemoryStream()
                Using pdf As New FlexCelPdfExport()
                    pdf.Workbook = xls
                    pdf.BeginExport(ms)
                    pdf.ExportAllVisibleSheets(False, "FlexCel")
                    pdf.EndExport()
                    ms.Position = 0
                    Response.Clear()
                    Response.AddHeader("Content-Disposition", "attachment; filename=Test.pdf")
                    Response.AddHeader("Content-Length", ms.Length.ToString())
                    Response.ContentType = "application/pdf" 'octet-stream";
                    Response.BinaryWrite(ms.ToArray())
                    Response.End()
                End Using
            End Using
    
        End Sub
    End Class
    
    In This Article
    Back to top FlexCel Studio for the .NET Framework v7.24.0.0
    © 2002 - 2025 tmssoftware.com