فعال رپورٹس کی رپورٹ کو پی ڈی ایف فائل کے طور پر آؤٹ پٹ کریں

جب صفحے کی تازہ کاری :
صفحہ تخلیق تاریخ :

آپریٹنگ ماحول

Windows
  • ونڈوز 10 پرو 22 ایچ 2
Visual Studio
  • Visual Studio 2022 کمیونٹی Edition
.NET کے لئے ActiveReports
  • .NET 16.0J کے لئے ActiveReports

ضروری شرائط

Windows
  • Windows 8.1
  • ونڈوز 10
  • ونڈوز 11
  • ونڈوز سرور 2012
  • Windows Server 2012 R2
  • ونڈوز سرور 2016
  • ونڈوز سرور 2019
  • ونڈوز سرور 2022
Visual Studio
  • Visual Studio 2017
  • Visual Studio 2019
  • Visual Studio 2022
.NET Framework
  • NET Framework 4.6.2
  • NET Framework 4.7
  • NET Framework 4.8
.جال
  • .NET Core 3.1
  • .NET 5
  • .NET 6
.NET کے لئے ActiveReports
  • .NET 16.0J کے لئے ActiveReports

پی ڈی ایف فائل میں آؤٹ پٹ کیسے کریں

اگر کوئی صارف پی ڈی ایف فائل کے طور پر رپورٹ چاہتا ہے تو ، اسے فراہم کرنے کا تیز ترین طریقہ یہ ہے کہ رپورٹ کو ناظرین میں دیکھا جائے۔ رپورٹس دکھانے کے علاوہ ، ناظرین کے پاس پی ڈی ایف جیسی فائلوں کو پرنٹ اور آؤٹ پٹ کرنے کا فنکشن ہوتا ہے ، لہذا اگر آپ ناظرین کو دکھاتے ہیں تو ، آپ صارف کو پی ڈی ایف فائل آؤٹ پٹ کرنے کے لئے کہہ سکتے ہیں۔

تاہم ، کچھ معاملات میں ، آپ صارف کو پریشان نہیں کرنا چاہتے ہیں ، یا آپ پی ڈی ایف فائل کو منظم طریقے سے ہدایت کرنا چاہتے ہیں۔ یہ سیکشن بیان کرتا ہے کہ کسی رپورٹ سے براہ راست پی ڈی ایف فائل کو پروگرامی طور پر کیسے آؤٹ پٹ کیا جائے۔

پی ڈی ایف فائل آؤٹ پٹ کے طریقے اور حدود

پی ڈی ایف فائلوں کو پروگرامی طور پر آؤٹ پٹ کرنے کے کئی طریقے ہیں ، لیکن ان میں سے تمام قابل قبول نہیں ہیں۔ یہ ایکٹو رپورٹس کے ورژن ، پلیٹ فارم ، فریم ورک ، اور رپورٹ کی قسم پر منحصر ہے۔ مثال کے طور پر ، ایکٹو رپورٹس 16 میں ، سیکشن اور پیج رپورٹس کو پروگرامی طور پر مختلف طریقے سے آؤٹ پٹ کیا جاتا ہے۔ اس کی ایک مثال سرکاری صفحے پر بھی دیکھی جا سکتی ہے۔

اس وجہ سے ، یہاں پروگرامی پی ڈی ایف آؤٹ پٹ کی کچھ مثالیں ہیں جو آپ اپنے منصوبے کے مطابق تلاش کرنے کے لئے حوالہ کے طور پر استعمال کرسکتے ہیں۔

نمونے کی رپورٹ کے بارے میں

نئے منصوبے کے لئے ٹیمپلیٹ میں شامل رپورٹ فائل خالی ہے ، لہذا ہم سرکاری نمونہ رپورٹ استعمال کریں گے۔ یہاں کچھ تجاویز ہیں، لہذا براہ کرم انہیں مندرجہ ذیل سائٹوں میں سے کسی ایک سے ڈاؤن لوڈ کریں.

اس صورت میں، ہم مندرجہ ذیل نمونہ رپورٹ استعمال کریں گے.

  • صفحہ رپورٹ : Estimate_page_ipa.rdlx
  • سیکشن رپورٹ: انوائس ڈاٹ آر پی ایکس (ویب سیمپل 16 نمونہ پروجیکٹ میں شامل)

پی ڈی ایف کو رینڈر اور تیار کریں (پیج رپورٹس / آر ڈی ایل رپورٹس)

پی ڈی ایف کو آؤٹ پٹ کرنے کے لئے ایک "ایکسپورٹ فلٹر" ہے ، لیکن ورژن 16 میں یہ صرف سیکشن رپورٹس کے لئے استعمال کیا جاسکتا ہے۔

لہذا ، صفحے کی رپورٹس / آر ڈی ایل رپورٹس کو مندرجہ بالا صفحے پر بیان کردہ "ڈرائنگ ایکسٹینشن" کے ساتھ تیار کرنے کی ضرورت ہے۔

سب سے پہلے، میں ایک پروجیکٹ بناؤں گا، لیکن اس بار میں اسے ایک سادہ کنسول ایپلی کیشن کے ساتھ بناؤں گا. ڈیسک ٹاپ اور ویب ورژن پر لاگو کرنا اتنا ہی آسان ہے جتنا ویب ورژن پر ہے۔

جب آپ کوئی پروجیکٹ بناتے ہیں تو ، کنسول ایپ منتخب کریں۔

پروجیکٹ بنانے کے بعد ، مطلوبہ پیکیجز شامل کریں۔

یہاں آپ کیا شامل کریں گے: براہ کرم تازہ ترین ورژن حاصل نہ کریں ، لیکن ذیل میں بیان کردہ ورژن استعمال کریں۔ ایسا لگتا ہے کہ کچھ پیکیج کے امتزاج تازہ ترین ورژن کے ساتھ مناسب طریقے سے کام نہیں کرتے ہیں۔ ایک انتباہ کا نشان دکھایا جاتا ہے ، لیکن اسے نظر انداز کریں کیونکہ انحصار میل نہیں کھاتا ہے۔ تاہم ، اس بات کا امکان ہے کہ یہ مستقبل میں ورژن اپ گریڈ کے ساتھ تبدیل ہوجائے گا ، لہذا براہ کرم اسے ہر بار ایڈجسٹ کریں۔ GrapeCity.Documents.Imaging GrapeCity.Documents.Pdf اور پی ڈی ایف میں پیش کرنے کی ضرورت ہے.

  • گریپ سٹی.ایکٹو رپورٹس.ایکسپورٹ.پی ڈی ایف (16.4.0)
  • گریپ سٹی.دستاویزات.امیجنگ (6.0.3)
  • گریپ سٹی ڈاٹ دستاویزات.پی ڈی ایف (6.0.3)

اپنے پروجیکٹ میں رپورٹ فائل شامل کریں۔ مقام کہیں بھی ہوسکتا ہے ، لیکن اس بار میں ایک فولڈر بنا رہا ہوں اور اسے وہاں ڈال رہا ہوں Reports ۔ یہ جگہ اس راستے کو متاثر کرتی ہے جس کی آپ بعد میں وضاحت کرتے ہیں۔

اگلا ، آپ نے جو رپورٹ شامل کی ہے اس کی خصوصیات کھولیں۔

ایمبیڈڈ ریسورس پر بلڈ ایکشن سیٹ کریں۔ اس کا مطلب ہے کہ ای ایکس ای (ڈی ایل ایل) کے اندر وسائل کو شامل کرنا۔ رپورٹ ڈیسک ٹاپ پر منفرد طور پر لوڈ کی گئی ہے کیونکہ یہ ویب پر ہے۔

اگلا ، رپورٹ لوڈ کرنے کے لئے کوڈ لکھیں اور اسے پی ڈی ایف میں پرنٹ کریں۔ چونکہ یہ ایک کنسول ایپلی کیشن ہے ، لہذا اسے پروگرام میں بیان کیا جانا چاہئے .cs جیسا کہ یہ ہے ، لیکن اگر یہ ڈیسک ٹاپ ہے تو ، اسے بٹن ایونٹ وغیرہ میں بیان کیا جانا چاہئے ، اور اگر یہ ASP.NET ہے تو ، اسے اس جگہ پر بیان کیا جانا چاہئے جہاں پوسٹ ہونے پر اس پر عمل کیا جاتا ہے۔

// レポートファイルがあるパス
var reportPath = "ConsoleApp1.Reports.Estimate_page_ipa.rdlx";

// 埋め込みリソースを Stream をして取り出す
var stream = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(reportPath);
if (stream == null) return;

// ページレポートに変換します
using var sr = new StreamReader(stream);
var pageReport = new GrapeCity.ActiveReports.PageReport(sr);

// PDF 描画拡張を定義します
var pdfRenderingExtension = new GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension();

// メモリストリームとして出力する定義です
var outputProvider = new GrapeCity.ActiveReports.Rendering.IO.MemoryStreamProvider();

// レポートを PDF にレンダリングします
pageReport.Document.Render(pdfRenderingExtension, outputProvider);

// Stream に変換します
var ps = outputProvider.GetPrimaryStream();
var outputStream = ps.OpenStream();

میں تفصیل سے وضاحت نہیں کروں گا کہ یہ کس طرح کی پروسیسنگ ہے کیونکہ یہ کوڈ کے تبصروں میں لکھا گیا ہے. کلید یہ ہے کہ پہلی لائن میں رپورٹ فائل کے مقام کی وضاحت کریں۔ فارمیٹ مندرجہ ذیل <アセンブリ名>.<レポートファイルのパス> ہے ، اور تمام راستے جدا کرنے والے ادوار ہیں۔

آخری اسٹریم ہے ، لہذا براہ کرم اسے پروسیسنگ مواد کے مطابق پی ڈی ایف میں تبدیل کریں۔

مثال کے طور پر ، اگر آپ اسے مقامی فائل کے طور پر محفوظ کرنا چاہتے ہیں تو ، درج ذیل شامل کریں۔

// ファイルにストリームを書き出します
using var fs = new FileStream("Output.pdf", FileMode.Create);
outputStream.CopyTo(fs);

اگر آپ اسے ASP.NET کے ساتھ ڈاؤن لوڈ کرنا چاہتے ہیں تو ، درج ذیل شامل کریں۔

return File(outputStream, "application/pdf", "Output.pdf");

یہ دیکھنے کے لئے آؤٹ پٹ پی ڈی ایف فائل کھولنے کی کوشش کریں کہ آیا یہ ٹھیک ہے۔

برآمدی فلٹرز کا استعمال کرتے ہوئے پی ڈی ایف آؤٹ پٹ کریں (سیکشن رپورٹس)

سیکشن رپورٹس کے لئے دستیاب پی ڈی ایف ایکسپورٹ فلٹر استعمال کریں۔

یہ کنسول پروجیکٹ میں اسی طرح بنایا گیا ہے جیسے پیج رپورٹس کے لئے۔ یہاں آپ جو کوڈ اور ترتیبات بناتے ہیں وہ دوسرے منصوبوں پر لاگو کیا جاسکتا ہے۔

پروجیکٹ بنانے کے بعد ، مطلوبہ پیکیجز شامل کریں۔ اس بار ، ہم ایک برآمدی فلٹر کے ساتھ آؤٹ پٹ کریں گے ، لہذا ہم صرف ایک شامل کریں گے۔

  • گریپ سٹی.ایکٹو رپورٹس.ایکسپورٹ.پی ڈی ایف (16.4.0)

اپنے پروجیکٹ میں رپورٹ فائل شامل کریں۔ مقام کہیں بھی ہوسکتا ہے ، لیکن اس بار میں ایک فولڈر بنا رہا ہوں اور اسے وہاں ڈال رہا ہوں Reports ۔ یہ جگہ اس راستے کو متاثر کرتی ہے جس کی آپ بعد میں وضاحت کرتے ہیں۔

اگلا ، آپ نے جو رپورٹ شامل کی ہے اس کی خصوصیات کھولیں۔

ایمبیڈڈ ریسورس پر بلڈ ایکشن سیٹ کریں۔ اس کا مطلب ہے کہ ای ایکس ای (ڈی ایل ایل) کے اندر وسائل کو شامل کرنا۔ رپورٹ ڈیسک ٹاپ پر منفرد طور پر لوڈ کی گئی ہے کیونکہ یہ ویب پر ہے۔

اگلا ، رپورٹ لوڈ کرنے کے لئے کوڈ لکھیں اور اسے پی ڈی ایف میں پرنٹ کریں۔ چونکہ یہ ایک کنسول ایپلی کیشن ہے ، لہذا اسے پروگرام میں بیان کیا جانا چاہئے .cs جیسا کہ یہ ہے ، لیکن اگر یہ ڈیسک ٹاپ ہے تو ، اسے بٹن ایونٹ وغیرہ میں بیان کیا جانا چاہئے ، اور اگر یہ ASP.NET ہے تو ، اسے اس جگہ پر بیان کیا جانا چاہئے جہاں پوسٹ ہونے پر اس پر عمل کیا جاتا ہے۔

// レポートファイルがあるパス
var reportPath = "ConsoleApp1.Reports.Invoice.rpx";

// 埋め込みリソースを Stream をして取り出す
var stream = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(reportPath);
if (stream == null) return;

// Stream を XML として読み込めるようにします
var xr = System.Xml.XmlReader.Create(stream);

// セクションレポートとして読み込みます
var sectionReport = new GrapeCity.ActiveReports.SectionReport();
sectionReport.LoadLayout(xr);
sectionReport.Run();

// PDF のエクスポートフィルターを作成します
var pdfExport = new GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport();

// メモリストリームに PDF の情報を書き出します
var outputStream = new System.IO.MemoryStream();
pdfExport.Export(sectionReport.Document, outputStream);
outputStream.Seek(0, SeekOrigin.Begin);

میں تفصیل سے وضاحت نہیں کروں گا کہ یہ کس طرح کی پروسیسنگ ہے کیونکہ یہ کوڈ کے تبصروں میں لکھا گیا ہے. کلید یہ ہے کہ پہلی لائن میں رپورٹ فائل کے مقام کی وضاحت کریں۔ فارمیٹ مندرجہ ذیل <アセンブリ名>.<レポートファイルのパス> ہے ، اور تمام راستے جدا کرنے والے ادوار ہیں۔

آخری اسٹریم ہے ، لہذا براہ کرم اسے پروسیسنگ مواد کے مطابق پی ڈی ایف میں تبدیل کریں۔

مثال کے طور پر ، اگر آپ اسے مقامی فائل کے طور پر محفوظ کرنا چاہتے ہیں تو ، درج ذیل شامل کریں۔

// ファイルにストリームを書き出します
using var fs = new FileStream("Output.pdf", FileMode.Create);
outputStream.CopyTo(fs);

اگر آپ اسے ASP.NET کے ساتھ ڈاؤن لوڈ کرنا چاہتے ہیں تو ، درج ذیل شامل کریں۔

return File(outputStream, "application/pdf", "Output.pdf");

یہ دیکھنے کے لئے آؤٹ پٹ پی ڈی ایف فائل کھولنے کی کوشش کریں کہ آیا یہ ٹھیک ہے۔