Com o lançamento do FastReport .NET 2022.2 foi adicionado um plugin para conexão de ficheirosem formato .XLSX como fontede dados.
Para usá-lo, você deve primeiro montar o projeto:
С:\Program Files (x86)\FastReports\FastReport.Net\Extras\Core\FastReport.Data\FastReport.Data.Excel
Depois de criar o projeto, você precisará adicionar o plugin ao aplicativo de duas maneiras.
1. Ligação plugin através do designer:
2. Adicione o plugin como uma dependência ao iniciar o projeto e registrá-lo no código com o seguinte comando:
FastReport.Utils.RegisteredObjects.AddConnection(typeof(ExcelDataConnection));
Para criar uma conexão com o Excel, clique na guia "Dados" no designer e selecione "Adicionar fonte de dados". Na janela que aparece, clique no botão "nova conexão". A conexão requer um caminho para o arquivo .XLSX. Se não houver problemas para acessar o arquivo, uma lista de tabelas será exibida após clicar em "Avançar". A ligarque as tabelas devem ser marcadas, que está localizado à esquerda do nome da tabela. Depois disso, você poderá concluir a conexão.
Ao concluir as conexões de fonte de dados devem ser vinculadas a um band.
No relatóriofinal serão usados os dados da conexão criada para Excel.
Exemplo de conexão do Excel a partir do Código:
// Criação de um objeto ExcelDataConnection var connection = new ExcelDataConnection(); // Instalação da cadeia de conexão connection.ConnectionString = @"C:\Matrix With Rows Only.xlsx"; // Inicializando todas as tabelas connection.CreateAllTables(); // Para definir o nome da conexão connection.Name = "NewConnection"; // Criando um objeto Report var report = new Report(); // Para adicionar uma conexão ao relatório report.Dictionary.Connections.Add(connection); // Ativamos a exibição da conexão connection.Enabled = true; // Selecione todas as tabelas e conecte-as ao relatório foreach (TableDataSource table in connection.Tables) { table.Enabled = true; }
Como resultado da execução desse código, podemos ver no designer uma nova conexão com as tabelas. Isso será refletido na lista de conexões disponíveis.
Vale ressaltar que os nomes das "folhas" são usados como nome da tabela e os nomes das colunas são usados como nomes de campos.
Como você pode ver, agora é possível criar uma conexão com o Excel e usar os dados armazenados lá.