FastReport .Net позволяет экспортировать отчеты в различные форматы, отправлять их по Email, а также через FTP. В этой статье я хочу остановить свое внимание на передаче отчетов на сервер посредством FTP. Нужно отметить, что не очень-то удобно запускать каждый отчет и вручную выполнять отправку через FTP. Что если нужно отправить большое количество отчетов на сервер?
Какие пути решения проблемы:
Очевидно, во второй вариант экономит время на экспорте отчета в нужный формат. Кроме того, можно полностью автоматизировать этот процесс. Например, выкладывать все отчеты на сервер по расписанию или одним нажатием на кнопку.
Я покажу пример, на котором вы убедитесь в простоте такой операции, как отправка отчета через FTP из кода приложения.
Создаем приложение WindowsForms. На форме размещаем одну кнопку.
В using добавляем библиотеки:
1 2 3 |
using FastReport; using FastReport.Export; using FastReport.Utils; |
Для обработчика нажатия кнопки добавим код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
private void button1_Click(object sender, EventArgs e) { Report report1 = new Report(); //Create new report FastReport.Export.Pdf.PDFExport pdf = new FastReport.Export.Pdf.PDFExport(); //Create pdf export object report1.Load(Environment.CurrentDirectory+"\\text.frx"); //Load report report1.Prepare(); //Prepare report FastReport.Cloud.StorageClient.Ftp.FtpStorageClient ftp = new FastReport.Cloud.StorageClient.Ftp.FtpStorageClient(); //Create ftp client //ftp connection settings ftp.Server = "78.47.131.251/Reports"; ftp.Username = "user"; ftp.Password = "password"; ftp.SaveReport(report1, pdf); //Send report } |
В начале мы создаем экземпляр объекта отчета. Затем, создаем объект экспорта в PDF. Теперь загружаем отчет и обязательно выполняем его построение (Prepare). Для работы с FTP создаем клиент. Нужно задать всего три свойства: сервер, пользователь и пароль. Не забываем, что нужно указать путь к нужной папке, иначе отчеты будут сыпаться прямо в корень. Наконец, отправляем отчет на сервер. В качестве параметров передаем сам отчет и экспорт в PDF. FastReport сам сделает экспорт отчета и отправит по FTP готовый файл *.pdf.
Запускаем приложение, нажимаем кнопку и проверяем наличие файла на сервере:
Используя такую несложную процедуру, можно отправлять множество отчетов в любом из доступных форматов, например, HTML. Таким образом, вы разрабатываете отчеты на локальном компьютере и выкладываете их на свой веб-сайт.