Showing posts with label iReport. Show all posts
Showing posts with label iReport. Show all posts

Aug 22, 2008

Set PHP with JasperReport (WIN32)

มาล่ะครับผม บทความร้อนๆ มาส่งแล้วจ้า

หลังจากลองทำดูเกือบสองอาทิตย์ และแล้วเหมือนฟ้าจะเป็นใจ

ด้วยความที่ว่าวันนี้ต้องปิดโปรเจกนี้ล่ะ และมันก็ได้ขึ้นมาซะงั้น

ลั้นล๊าาา ฮ่ะๆ มีความสุข เหอๆ


สิ่งที่คุณควรจะมีและติดตั้งไว้แล้ว มีดังนี้

ติดตั้งเจ้าตัว PHP และ JAVA Bridge จากบทความก่อนหน้านี้ซะก่อนนะ

และอย่าลืม ดูที่ไฟล์ php.ini นะครับ ในส่วนของด้านล่างนี้

-----------------------------------------------------
java.library.path="C:\php\ext\lib"
-----------------------------------------------------

ซึ่งจะเป็นที่เก็บ lib ของ iReport นะครับ

ที่สำคัญปิด Service ของ Apache ซะก่อนนะครับ


สร้างห้อง ชื่อว่า lib ใน PHP จะเป็นแบบนี้ C:\PHP\ext\lib

โหลด iReport-3.0.0.zip มาไว้ในเครื่อง และเอา lib ในนั้นทั้งหมด

วางไว้ในห้องที่พึ่งสร้างคือ C:\PHP\ext\lib


ใช้ iReport มาแล้วก็วาดๆๆ จนได้ไฟล์ .jrxml ขึ้้นมาซักไฟล์นะ

แล้วนำไปวางที่ www นะครับ


ตรวจสอบว่ามีไฟล์ mysql-connector-java-5.1.6-bin.jar

ในห้อง C:\PHP\lib\ext หรือยัง ถ้ายังก็โหลดมาไว้ เช่น

นำ mysql-connector-java-5.1.6-bin.jar

จาก mysql-connector-java-5.1.6.tar.gz

วางไว้ใน C:\PHP\ext\lib

(กรณีนี้คือติดต่อ กับ mySQL)


สร้างไฟล์ขึ้นมาเพื่อต่อฐานข้อมูล

ลองดูโค๊ดจาก class JdbcConnector ในลิงค์ด้านล่างนะครับ

http://charly-clairmont.developpez.com/tutoriels/php-jasper-reports/

แนะนำให้ comment code ในส่วนของ method main นะครับ

และส่วนของบรรทัดแรก comment code ที่เป็นการประกาศ package

จากนั้น compile code จะได้ JdbcConnector.class มาหนึ่งไฟล์

นำไปวางไว้ที่ C:\PHP\ext\lib


สร้างไฟล์ PHP ในหัวข้่อ "PHP jasper report Library" จากลิงค์
http://zeronine.org/lab/index.php/Using_Jasper_report_with_PHP

$java_locale->setDefault($java_locale->KOREAN); เปลี่ยนเป็น
$java_locale->setDefault($java_locale->ENGLISH);

สร้างไฟล์สำหรับทดสอบ ในหัวข้อ "Test loader" จากลิงค์เดียวกัน

define('REPORT_COMPILE', false); เปลี่ยนเป็น
define('REPORT_COMPILE', true);

$jasperLib = "C:\PHP\ext\lib"; ให้ระบุไปยังที่ๆ เรานำ lib iReport มาไว้
$reportPath = "C:\Appserv\www"; ให้ระบุไปยังที่ๆ เก็บไฟล์ .jrxml

เปลี่ยนรูปแบบการรับตัวแปร จาก

$_REQUEST['report'] เป็น $report
$_REQUEST['type'] เป็น $exportType

ทั้งนี้อย่าลืมใส่ค่าตัวแปรด้วย
อันนี้คงจะพอเข้าใจและประยุกต์กันได้
จึงไม่ขออธิบายนะครับ

Aug 15, 2008

iReport opensource tools

หลายครั้งที่ผมติดปัญหาโดยที่สามารถค้นตามเว็บแล้วก็สามารถแก้ปัญหาได้

แต่ครั้งนี้มันต่างออกไป เนื่องจากความรู้และประสบการณ์พื้นฐานของผมยังน้อยนิดนัก

หลายอย่างที่เป็นปัญหาเหมือนเส้นผมบังภูเขา ก็พบเจออยู่บ่อยขึ้นเรื่อยๆ

ดังนั้น เมื่อผมอยู่ในสถานะของผู้เผยแผ่ความรู้ ผมจึงเขียนบทความเป็นเรื่องๆ

เพื่อให้ชัดเจน และง่ายต่อการติดตาม


เคยบอกกับน้องๆ หลายคนว่า

"การเขียนโปรแกรมเหมือนเกม จิ๊กซอ มันต้องค่อยๆ ประกอบกัน

จนเป็นงานที่สมบูรณ์ได้ในที่สุด ซึ่้งความรู้ก็เช่นกัน

เมื่อเรารู้ว่ามีความรู้อะไรใกล้เคียงกันบ้าง เราก็สามารถต่อกันติดได้ง่าย"



iReport เป็นส่วนหนึ่งของโครงการ opensource โดยเป็นเครื่องมือที่ช่วยจัดการรายงาน

ตัวโปรแกรม iReport นั้นพัฒนาบน Platform Java ซึ่งหากจะนำมาใช้ก็ต้องติดตั้ง Java

ความสามารถหลักๆ คือ

1. ออกแบบรูปแบบรายงานได้

2. ดึงข้อมูลจากฐานข้อมูลมาใช้ในรายงานได้

3. ทำกราฟ และคำนวณข้อมูลในรายงานได้

4. นำข้อมูลออกเป็นไฟล์ประเภทต่างๆ เช่น PDF, XLS ฯลฯ

5. ไฟล์ที่ถูกสร้างและใช้ออกแบบจะเป็นลักษณะเอกสาร XML มีนามสกุลว่า *.jrxml

6. เมื่อถูก Compile ข้อมูลที่ดึงมาและการออกแบบจะถูกเก็บลักษณะ *.jasper

7. อื่นๆ


การออกแบบและการใช้งานเบื้องต้นนั้น สามารถตามลิงค์ข้างล่างนี้เพื่อไปศึกษาได้

http://www.cise.ufl.edu/~otopsaka/CIS4301/ReportDemo/PrepareAReport.html

ทดลองออกแบบ และ Download มาใช้ ที่ลิงค์

http://www.jaspersoft.com/ir_opensource_download.html

Blog Comment

บทความที่ได้รับความนิยม