Artikel ini membahas masalah pemformatan data JSON mentah menjadi format laporan yang rapi dan mudah dipahami dalam aplikasi .NET. Kami akan mengonversi data JSON menjadi laporan PDF dan DOCX dalam C# menggunakan templat sederhana.

Hasilkan PDF atau Word Report dari JSON di CSharp

.NET API untuk Pembuatan Laporan

GroupDocs.Assembly for .NET adalah pembuatan laporan dan API otomatisasi dokumen untuk aplikasi .NET. Hal ini memungkinkan Anda untuk menghasilkan laporan dari data yang tersedia dalam berbagai format seperti JSON, XML, atau CSV dan template dalam berbagai format seperti dokumen Word, spreadsheet, presentasi, atau format teks. Ini juga mendukung banyak fitur pemformatan laporan seperti peluru, daftar bernomor, bagan, tabel, gambar, kode batang, dll.

Anda dapat mengunduh penginstal DLL atau MSI dari bagian unduhan atau menginstal API di aplikasi .NET Anda melalui NuGet.

PM> Install-Package GroupDocs.Assembly

Hasilkan Laporan PDF dari Data JSON di C#

Mari kita mulai dengan langkah-langkah yang akan mengarahkan Anda untuk mengonversi data JSON menjadi laporan PDF berformat di C#.

  • Dapatkan sumber data JSON
  • Tentukan template menurut data JSON
  • Berikan sumber dan template data JSON ke kode C# sederhana untuk pembuatan laporan.

data JSON

Pertama, contoh data JSON berikut digunakan untuk pembuatan laporan PDF yang menunjukkan manajer dan klien masing-masing serta detailnya.

\[
	{
		"Name":"John Smith","Contract":\[
		{"Client":{"Name":"A Company"},"Price":1200000},
		{"Client":{"Name":"B Ltd."},"Price":750000},
		{"Client":{"Name":"C & D"},"Price":350000}\]
	},
	{
		"Name":"Tony Anderson","Contract":\[
		{"Client":{"Name":"E Corp."},"Price":650000},
		{"Client":{"Name":"F & Partners"},"Price":550000}\]
	},
	{
		"Name":"July James","Contract":\[
		{"Client":{"Name":"G & Co."},"Price":350000},
		{"Client":{"Name":"H Group"},"Price":250000},
		{"Client":{"Name":"I & Sons"},"Price":100000},
		{"Client":{"Name":"J Ent."},"Price":100000}\]
	}
\]

Templat

Kedua, tentukan template berikut dalam TXT, DOCX, atau dalam format yang diperlukan. Hal ini memungkinkan iterasi data Manajer dan Kliennya masing-masing serta perinciannya. Setelah itu, Anda dapat beralih ke kode untuk pembuatan laporan.

<<foreach [in managers]>>Manager: <<[Name]>>
Contracts:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>

C# Langkah-langkah untuk Mengonversi Laporan JSON ke PDF

Langkah-langkah kode C# berikut mengotomatiskan konversi data JSON ke laporan PDF sesuai dengan template yang ditentukan.

  • Tentukan data JSON, file template, dan jalur file laporan keluaran PDF.
  • Buat instance JsonDataSoure dengan file data JSON.
  • Buat DataSourceInfo dengan JsonDataSource yang ditentukan.
  • Panggil metode AssembleDocument dari kelas DocumentAssembler untuk menghasilkan laporan PDF dari data JSON yang disediakan dan template yang ditentukan.
// Hasilkan Laporan PDF dari data JSON menggunakan template TXT di C# dengan GroupDocs.Assembly API
// Menentukan sumber data, template, dan file laporan keluaran.
const string strDataSource = "dataPath/ManagerData.json";
const string strDocumentTemplate = "templatePath/template.txt";
const string strDocumentReport = "reportsPath/reportFromJSON.pdf";
// Instansiasi sumber data JSON
JsonDataSource dataSource = new JsonDataSource(CommonUtilities.GetDataSourceDocument(strDataSource));
// Hasilkan Laporan
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate),
    CommonUtilities.SetDestinationDocument(strDocumentReport),
    new DataSourceInfo(dataSource, "managers"));

Kode akan menghasilkan laporan PDF seperti yang ditunjukkan pada gambar di atas. Anda juga dapat menguji dan di atas dan contoh serupa dari repositori GitHub.

Hasilkan MS Word Report dari data JSON di C#

Demikian pula, seperti membuat laporan PDF di atas, Anda dapat membuat laporan DOCX dengan mengikuti langkah-langkah berikut:

  • Mendefinisikan template yang sama dalam format DOCX.
  • Tetapkan format dokumen laporan keluaran sebagai DOCX.
  • Kode lainnya akan tetap sama untuk menghasilkan laporan MS Word DOCX dari data JSON.
// Hasilkan Word Report dari data JSON menggunakan template DOCX di C# dengan GroupDocs.Assembly API
// Menentukan sumber data, template, dan file laporan keluaran.
const string strDataSource = "dataPath/ManagerData.json";
const string strDocumentTemplate = "templatePath/template.docx";
const string strDocumentReport = "reportsPath/reportFromJSON.docx";
// Instansiasi sumber data JSON
JsonDataSource dataSource = new JsonDataSource(CommonUtilities.GetDataSourceDocument(strDataSource));
// Hasilkan Laporan
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate),
    CommonUtilities.SetDestinationDocument(strDocumentReport),
    new DataSourceInfo(dataSource, "managers"));

Untuk detail, opsi, dan contoh selengkapnya, kunjungi dokumentasi dan repositori GitHub. Untuk pertanyaan lebih lanjut, hubungi dukungan gratis di forum.

Kesimpulan

Pada artikel ini, Anda belajar mengonversi data JSON menjadi laporan PDF dalam aplikasi .NET menggunakan C#. Selanjutnya, Anda dapat membuat laporan dalam format lain seperti DOCX menggunakan sumber data lain seperti CSV dan XML. Saya harap Anda akan merasa nyaman mulai membangun aplikasi pembuat laporan .NET Anda.

Lihat juga