Page 1 of 1

สร้าง Report แบบง่ายด้วย Python + RML

Posted: 18/05/2019 7:03 pm
by teenproza7
เราจะมาทดลองสร้าง Report แบบ PDF จาก RML กันนะครับ

1.ทำการสร้างไฟล์ XML ขึ้นมาก่อนโดนใส่โค้ดง่ายๆ เช่น

[code]
<!DOCTYPE document SYSTEM "rml.dtd">
<document filename="example1.pdf">
<template>
<!--this section contains elements of the document -->
<!--which are FIXED into position. -->
<pageTemplate id="main">
<frame id="first" x1="100" y1="400" width="150" height="200"/>
</pageTemplate>
</template>
<stylesheet>
</stylesheet>
<story>

<para>
Welcome to RML!
</para>

</story>
</document>
[/code]


2.จากนั้น save ไฟล์ XML แล้วเก็บไว้ที่ path ของโปรเจคดังภาพ

[attachment=2]Selection_759.png[/attachment]

3.สร้างไฟล์ Python แล้ว save เก็บไว้ใน path เดียวกันกับ XML เพื่อเรียกใช้งาน XML โดยใช้โค้ด **อย่าลืม import from z3c.rml import rml2pdf ด้วยละ

[code]# -*- coding: utf-8 -*-
from z3c.rml import rml2pdf

with open('example.rml') as rml:
data = rml.read()

pdf = rml2pdf.parseString(data.decode('utf-8'))

with open('test.pdf', 'w') as output:
output.write(pdf.read())
[/code]

4.จากนั้นกดรัน จะเห็นได้ว่า Python ทำการสร้างไฟล์ Report ขึ้นมา 1 ไฟล์ชื่อว่า test.pdf ดังภาพ

[attachment=1]Selection_760.png[/attachment]

5.เมื่อกดเปิดดูไฟล์ test.pdf ที่สร้างมาจะเห็นข้อความที่เราสร้างไว้ใน XML ดังภาพ

[attachment=0]Selection_761.png[/attachment]

เป็นไงกันบ้างครับสำหรับการสร้างไฟล์ Report จาก python และ xml สำหรับวิธีนี้สามารถนำไปประยุกต์ในช้การเขียนโปรแกรมเพื่อรายงานต่างๆได้

ศึกษาข้อมูลเพิ่มเติมได้ที่

บทเรียน Python

เทคนิคการเขียน Python

วีดีโอสอนเขียน Python สำหรับพื้นฐาน

Python Knowledge

Programming - C/C++ & java & Python

Re: สร้าง Report แบบง่ายด้วย Python + XML

Posted: 18/05/2019 7:12 pm
by mindphp
RML หรือเปล่าครับ

Re: สร้าง Report แบบง่ายด้วย Python + XML

Posted: 18/05/2019 7:35 pm
by mindphp
ต้องมีการติดตั้งโมดูลเสริม ของ python ด้วยนะครับ
โมดูล z3c.rml