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

แชร์ความรู้ภาษา Python ไพทอน การเขียนโปรแกรมภาษาไพทอน

Moderators: mindphp, ผู้ดูแลกระดาน

User avatar
teenproza7
PHP Super Member
PHP Super Member
Posts: 204
Joined: 13/05/2019 10:03 am

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

Postby teenproza7 » 18/05/2019 7:03 pm

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

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

Code: Select all

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


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

Code: Select all

# -*- 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 263 times


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

Selection_761.png
Selection_761.png (2.95 KiB) Viewed 263 times


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

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

บทเรียน Python

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

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

Python Knowledge

Programming - C/C++ & java & Python
Last edited by teenproza7 on 18/05/2019 7:17 pm, edited 2 times in total.
Image

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 21849
Joined: 22/09/2008 6:18 pm
Contact:

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

Postby mindphp » 18/05/2019 7:12 pm

RML หรือเปล่าครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 21849
Joined: 22/09/2008 6:18 pm
Contact:

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

Postby mindphp » 18/05/2019 7:35 pm

ต้องมีการติดตั้งโมดูลเสริม ของ python ด้วยนะครับ
โมดูล z3c.rml
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042


Return to “Python Knowledge”

Who is online

Users browsing this forum: No registered users and 19 guests