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

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

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

ภาพประจำตัวสมาชิก
teenproza7
PHP Super Member
PHP Super Member
โพสต์: 204
ลงทะเบียนเมื่อ: 13/05/2019 10:03 am

สร้าง 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) เปิดดู 147 ครั้ง


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) เปิดดู 147 ครั้ง


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

Selection_761.png
Selection_761.png (2.95 KiB) เปิดดู 147 ครั้ง


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

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

บทเรียน Python

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

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

Python Knowledge

Programming - C/C++ & java & Python
แก้ไขล่าสุดโดย teenproza7 เมื่อ 18/05/2019 7:17 pm, แก้ไขไปแล้ว 2 ครั้ง.
รูปภาพ

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 20500
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

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

โพสต์โดย 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

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 20500
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

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

โพสต์โดย 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


ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 22 และ บุคคลทั่วไป 0 ท่าน