نحوه ایجاد یک گزارش SSRS به عنوان PDF محافظت شده با رمز عبور با استفاده از گزارش نویس Bold Reports
SSRS (سرویسهای گزارش سرور SQL) ابزار قدرتمندی است که کاربران را قادر میسازد تا گزارشها را در یک سازمان ایجاد، استقرار و مدیریت کنند. با این حال، ممکن است مواقعی لازم باشد اطلاعات حساس موجود در گزارش SSRS خود را با ایجاد یک PDF محافظت شده با رمز عبور ایمن کنید. در این پست وبلاگ، نحوه تبدیل گزارش SSRS به PDF محافظت شده با رمز عبور را با استفاده از گزارش نویس Bold Reports به شما نشان خواهیم داد.
Bold Reports Report Writer کتابخانه ای است که توسعه دهندگان را قادر می سازد تا به صورت برنامه نویسی گزارش ها را در قالب های مختلف از جمله PDF، Excel و DOCX ایجاد و صادر کنند. با توانایی آن برای تولید PDF های محافظت شده با رمز عبور، می توانید اطمینان حاصل کنید که اطلاعات حساس شما ایمن هستند و در عین حال گزارش هایی با کیفیت بالا به کاربران خود ارائه می دهند.
برای شروع، فرض کنید یک گزارش SSRS موجود دارید که میخواهید به عنوان PDF محافظت شده با رمز عبور صادر کنید. در اینجا نحوه انجام این کار با استفاده از گزارشنویس Bold Reports برای برنامههای NET آورده شده است.
پیش نیازها
اطمینان حاصل کنید که محیط توسعه شما شامل موارد زیر است:
. ویژوال استودیو 2022
. .NET 6.0+
مرحله 1: یک برنامه کنسول دات نت ایجاد کنید.
- Visual Studio 2022 را باز کنید و روی ** ایجاد یک پروژه جدید کلیک کنید.**
یک پروژه جدید ایجاد کنید
- دات نت را انتخاب کنید برنامه کنسول **با C# و روی **بعدی کلیک کنید.
یک برنامه کنسول دات نت ایجاد کنید
- نام پروژه را وارد کنید، روی Next کلیک کنید، نسخه NET را انتخاب کنید و روی Create کلیک کنید. برنامه پیش فرض کنسول دات نت ایجاد می شود.
برنامه کنسول دات نت
مرحله 2: بسته NuGet کتابخانه Bold Reports Report Writer را نصب کنید.
برای استفاده از کتابخانه Bold Reports Report Writer در پروژه خود، باید بسته BoldReports.Net.Core NuGet را نصب کنید. می توانید این کار را با باز کردن Package Manager Console در ویژوال استودیو و اجرای دستور زیر انجام دهید.
Install-Package BoldReports.Net.Core
مرحله 3: فضاهای نام مربوط به گزارش نویس Bold Reports را اضافه کنید.
در فایل Program.cs، فضای نام زیر را در بالای فایل اضافه کنید.
using BoldReports.Writer;
using BoldReports.Web;
مرحله 4: یک نمونه ReportWriter ایجاد کنید.
یک نمونه ReportWriter ایجاد کنید و خواص آن را مطابق شکل زیر تنظیم کنید.
ReportWriter writer = new ReportWriter();
writer.ReportProcessingMode = ProcessingMode.Remote;
writer.ReportServerUrl = "http://192.1.168.2/ReportServer";
writer.ReportPath = "/Report_Path";
writer.ReportServerCredential = new System.Net.NetworkCredential("username", "password");
نشانی وب سرور گزارش SSRS خود را جایگزین ویژگی **ReportServerUrl ** کنید. همچنین، Report_Path، نام کاربری و رمز عبور را با مقادیر خود جایگزین کنید.
مرحله 5: اعتبار منبع داده را روی نویسنده تنظیم کنید.
اگر گزارش SSRS شما از منابع دادهای استفاده میکند که به اعتبار نیاز دارند، باید اعتبار منبع داده را روی نویسنده تنظیم کنید. در کد زیر، Datasource_name، نام کاربری و رمز عبور را با مقادیر خود جایگزین کنید.
List<DataSourceCredentials> dataSourceCredentialsList = new List<DataSourceCredentials>();
dataSourceCredentialsList
.Add(new DataSourceCredentials("Datasource_name", "username", "password"));
writer.SetDataSourceCredentials(dataSourceCredentialsList);
مرحله 6: یک PDF محافظت شده با رمز عبور ایجاد کنید.
برای ایجاد یک PDF محافظت شده با رمز عبور، باید از ویژگی Report Writer’s PDFOptions استفاده کنید. مراحل زیر به این امر دست می یابد.
در فایل Program.cs، فضای نام Syncfusion.Pdf.Security را قرار دهید.
خطوط زیر را در فایل Program.cs اضافه کنید.
writer.PDFOptions = new PDFOptions();
writer.PDFOptions.Security = new PdfSecurity();
writer.PDFOptions.Security.UserPassword = "password";
این کد را تنظیم می کند رمز عبور کاربر دارایی از PdfSecurity کلاس به رمز عبور مورد نظر. شما همچنین می توانید تنظیم کنید OwnerPassword ویژگی تعیین رمز عبور جداگانه برای صاحب فایل PDF.
- در مرحله بعد، می توانید PDF محافظت شده با رمز عبور را با فراخوانی روش Report Writer’s Save با ارسال PDF به عنوان فرمت صادراتی، تولید کنید.
MemoryStream pdfReport = new MemoryStream();
writer.Save(pdfReport, WriterFormat.PDF);
- پس از ایجاد PDF محافظت شده با رمز عبور، جریان PDF را به عنوان یک فایل ذخیره کنید.
using (FileStream file = new FileStream("C:\\Reports\\Report1.pdf",
FileMode.Create, System.IO.FileAccess.Write))
{
pdfReport.WriteTo(file);
}
“C:\Reports\Report1.pdf” را با مسیر فایل و نام فایل مورد نظر جایگزین کنید.
- با فشار دادن F5 برنامه را اجرا کنید. می توانید فایل PDF محافظت شده با رمز عبور ایجاد شده را در محل مسیر ارائه شده مشاهده کنید. پس از وارد کردن رمز عبور می توانید فایل PDF را باز کنید.
فایل PDF محافظت شده با رمز عبور
خودشه! شما اکنون یک گزارش SSRS را به عنوان یک PDF محافظت شده با رمز عبور با استفاده از گزارش نویس Bold Reports ایجاد کرده اید. در زیر کد کامل برای مرجع ارائه شده است.
using BoldReports.Writer;
using BoldReports.Web;
using Syncfusion.Pdf.Security;
using System.Net;
Console.WriteLine("Hello, World!");
ReportWriter writer = new ReportWriter();
writer.ReportProcessingMode = ProcessingMode.Remote;
writer.ReportServerUrl = "http://192.1.168.2/ReportServer";
writer.ReportPath = "/Report_Path";
writer.ReportServerCredential = new System.Net.NetworkCredential("username", "password");
writer.PDFOptions = new PDFOptions();
writer.PDFOptions.Security = new PdfSecurity();
writer.PDFOptions.Security.UserPassword = "password";
//Set the data source credentials.
List<DataSourceCredentials> dataSourceCredentialsList = new List<DataSourceCredentials>();
dataSourceCredentialsList
.Add(new DataSourceCredentials("Datasource_name", "username", "password"));
writer.SetDataSourceCredentials(dataSourceCredentialsList);
// Generate a password-protected PDF.
MemoryStream pdfReport = new MemoryStream();
writer.Save(pdfReport, WriterFormat.PDF);
// Save the PDF stream as a file.
using (FileStream file = new FileStream("C:\\Reports\\Report1.pdf",
FileMode.Create, System.IO.FileAccess.Write))
{
pdfReport.WriteTo(file);
}
نتیجه
امیدوارم این وبلاگ راهنمایی کافی برای ایجاد یک گزارش SSRS به عنوان یک سند PDF محافظت شده با رمز عبور در یک برنامه دات نت ارائه کرده باشد. برای کسب اطلاعات بیشتر در مورد Report Writer برای دات نت و موارد گزارش آن، به مستندات ما نگاه کنید. برای تجربه زنده ویژگیها، نمونههای نمایشی ما را بررسی کنید.
اگر سوالی دارید، لطفاً آنها را در بخش نظرات زیر مطرح کنید. همچنین می توانید از طریق صفحه تماس با ما با ما تماس بگیرید یا اگر از قبل حساب کاربری دارید، می توانید برای پرسیدن سوال خود وارد شوید.
Bold Reports یک آزمایش رایگان 15 روزه را بدون نیاز به اطلاعات کارت اعتباری ارائه می دهد. ما از شما استقبال می کنیم که یک آزمایش رایگان را شروع کنید و گزارش های پررنگ را برای خودتان تجربه کنید. آن را امتحان کنید و به ما بگویید که چه فکر می کنید!
ما را در توییتر، فیس بوک، و لینکدین برای اطلاعات در مورد نسخه های آینده دنبال کنید.