Binding JSON from Parameters to DataSource
Note
รองรับ Report Designer 2024 Q2 เป็นต้นไป โดยให้ติดตั้ง Telerik Reporting 18.1.24.709 เป็นต้นไป จึงจะสามารถใช้ความสามารถนี้ได้
คอนฟิก JSON Data Source
- สร้าง Report Template เป็นไฟล์
*.trdx เช่น Report1.trdx เป็นต้น
- คลิกที่แท็บ
Data แล้วเลือก JSON Data Source โปรแกรมจะเปิดหน้าคอนฟิก
- ในหน้าคอนฟิก ให้เลือกแท็บ
Use Inline JSON ทดลองใส่ JSON ด้านล่างนี้ แล้วคลิก Next
[{"ID":1,"NAME":"Test 1"}]
- กดปุ่ม
Preview เพิ่อดูข้อมูล จากนั้นกดปุ่ม Finish
ใช้งาน JSON Data Source กับ Table
- คลิกที่แท็บ
Insert แล้วคลิกปุ่ม Table แล้วเลือก Table
- ไปที่
Report Explorer เลือกรายการ table1 (ชื่อตาราง ถูกต้องชื่ออัตโนมัติตอนเพิ่มตาราง)
- ไปที่
Properties แล้วกำหนด Data Source (jsonDataSource1) ที่สร้างขึ้นมาตอนต้นให้กับตาราง table1
- กำหนด
Expression ให้กับเนื้อหาของตาราง เช่น Column1 = [Fields.ID] และ Column2 = [Fields.NAME] เป็นต้น
| ID | NAME |
|---|
| [=Fields.ID] | [=Fields.NAME] |
- ทดสอบ
Preview Report โดยไปที่แท็บ Home แล้วเลือก Preview
Binding JSON จาก Parameter เข้าตาราง
- ไปที่
Report Explorer เลือกรายการ table1
- ในหน้า
Edit Bindings เลือกปุ่ม New
- ใส่ข้อมูลดังนี้
- Property path:
DataSource.Source
- Expression: เลือก
<New Report Parameter>
- ตั้งชื่อ Parameter และจำลองค่าที่ส่งมาจาก Client โดยกำหนดใน
Value ตามค่าด้านล่างแล้วกดปุ่ม OK
[
{"ID":1,"NAME":"Test 1"},
{"ID":2,"NAME":"Test 2"},
{"ID":3,"NAME":"Test 3"}
]
- หน้า
Edit Bindings จะได้ข้อมูลดังตาราง ให้คลิกปุ่ม OK
| Property path | Expression |
|---|
DataSource.Source | = Parameters.Parameter1.Value |
- ทดสอบ
Preview Report โดยไปที่แท็บ Home แล้วเลือก Preview
- Client App สามารถส่งข้อมูล JSON มาที่ Parameter ที่ตั้งชื่อ(
Parameter1)ตามข้อ 4 ได้เลย