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

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: สร้าง Report แบบง่ายด้วย Python + RML

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

โดย mindphp » 18/05/2019 7:35 pm

ต้องมีการติดตั้งโมดูลเสริม ของ python ด้วยนะครับ
โมดูล z3c.rml

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

โดย mindphp » 18/05/2019 7:12 pm

RML หรือเปล่าครับ

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

โดย teenproza7 » 18/05/2019 7:03 pm

เราจะมาทดลองสร้าง Report แบบ PDF จาก RML กันนะครับ

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

โค้ด: เลือกทั้งหมด

<!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>

2.จากนั้น save ไฟล์ XML แล้วเก็บไว้ที่ path ของโปรเจคดังภาพ
Selection_759.png
Selection_759.png (56.98 KiB) Viewed 1069 times
3.สร้างไฟล์ Python แล้ว save เก็บไว้ใน path เดียวกันกับ XML เพื่อเรียกใช้งาน XML โดยใช้โค้ด **อย่าลืม import from z3c.rml import rml2pdf ด้วยละ

โค้ด: เลือกทั้งหมด

# -*- 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())
4.จากนั้นกดรัน จะเห็นได้ว่า Python ทำการสร้างไฟล์ Report ขึ้นมา 1 ไฟล์ชื่อว่า test.pdf ดังภาพ
Selection_760.png
Selection_760.png (48.94 KiB) Viewed 1069 times
5.เมื่อกดเปิดดูไฟล์ test.pdf ที่สร้างมาจะเห็นข้อความที่เราสร้างไว้ใน XML ดังภาพ
Selection_761.png
Selection_761.png (2.95 KiB) Viewed 1069 times
เป็นไงกันบ้างครับสำหรับการสร้างไฟล์ Report จาก python และ xml สำหรับวิธีนี้สามารถนำไปประยุกต์ในช้การเขียนโปรแกรมเพื่อรายงานต่างๆได้

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

บทเรียน Python

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

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

Python Knowledge

Programming - C/C++ & java & Python[/size]

ข้างบน