Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

เพื่อวัตถุประสงค์ในการรวมเราต้องการโหลดข้อมูลฟอร์มของเราจากตารางฐานข้อมูลอื่นแทนที่จะเป็นตารางข้อมูล Joget

2.

...

ความคิดของคุณในการแก้ปัญหาคืออะไร?

Joget Workflow ได้จัดทำปลั๊กอินที่เรียกว่า Form Load Binder Plugin. เราสามารถอ้างอิงถึงการเชื่อมต่อเพื่อสนับสนุนในการพัฒนาปลั๊กอิน JDBC และ กำหนดค่า query เพื่อโหลดข้อมูลในแบบฟอร์ม

...

เราสามารถอ้างถึงการดำเนินการของอื่น ๆ ที่มีอยู่ Form Load Binder pluginsแหล่งข้อมูลเริ่มต้นของ Joget สามารถเรียกดูได้ AppUtil.getApplicationContext().getBean("setupDataSource").

6.

...

 เตรียม environment ของคุณเพื่อการพัฒนา

 

เราจำเป็นต้องให้ซอร์สโค้ด Joget Workflow ของเราพร้อมและสร้างโดยทำตาม this guideline

บทช่วยสอนต่อไปนี้จัดทำขึ้นด้วย Macbook Pro และ Joget Source Code version 5.0.0. โปรดอ้างอิงถึง แนวทางสำหรับการพัฒนาปลั๊กอิน สำหรับคำสั่งแพลตฟอร์มอื่น ๆ

สมมติว่าไดเรกทอรีโฟลเดอร์ของเรามีดังนี้

Code Block
- Home
  - joget
    - plugins
    - jw-community
      -5.0.0

ไดเรกทอรี "ปลั๊กอิน" คือโฟลเดอร์ที่เราจะสร้างและจัดเก็บปลั๊กอินทั้งหมดของเราและไดเรกทอรี "jw-community" เป็นที่เก็บซอร์สโค้ด Joget Workflow

เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างโครงการ maven ในไดเรกทอรี "ปลั๊กอิน"

Code Block
languagebash
cd joget/plugins/
~/joget/jw-community/5.0.0/wflow-plugin-archetype/create-plugin.sh org.joget.tutorial jdbc_load_binder 5.0.0

จากนั้น the shell script จะขอให้เราป้อนปลั๊กอินสำหรับรุ่นของคุณและขอให้เรายืนยันก่อนสร้างโครงการ maven

Code Block
languagebash
Define value for property 'version':  1.0-SNAPSHOT: : 5.0.0
[INFO] Using property: package = org.joget.tutorial
Confirm properties configuration:
groupId: org.joget.tutorial
artifactId: jdbc_load_binder
version: 5.0.0
package: org.joget.tutorial
Y: : y

เราควรได้รับข้อความ "BUILD SUCCESS" ที่ปรากฏในเครื่องของเราและโฟลเดอร์ "jdbc_load_binder" ที่สร้างในโฟลเดอร์ "ปลั๊กอิน"

เปิดโครงการ maven ด้วย IDE ที่คุณโปรดปราน เราแนะนำให้ใช้ NetBeans.  

7. เริ่มโค้ด!

a.

...

 การขยาย abstract class

...

ของประเภทปลั๊กอิน

สร้างคลาส "JdbcLoadBinder" ภายใต้ "org.joget.tutorial" package. จากนั้น extend the class ด้วย org.joget.apps.form.model.FormBinder abstract class.

เพื่อให้มันทำงานเป็น Form Load Binder, เราจำเป็นจะต้องใช้อินเตอร์เฟซ org.joget.apps.form.model.FormLoadBinder. จากนั้นต้องใช้อินเตอร์เฟซ org.joget.apps.form.model.FormLoadElementBinder  เพื่อให้ปลั๊กอินนี้แสดงเป็นตัวเลือกในกล่องเลือกโหลด binder และใช้ org.joget.apps.form.model.FormLoadMultiRowElementBinder. อินเตอร์เฟสเพื่อแสดงรายการภายใต้  select box ของ grid element. 

 โปรดอ้างอิงถึง Form Load Binder Plugin.

b.

...

 การดำเนินการของ abstract methods ทั้งหมด

เช่นเคยเราต้องใช้ abstract methods ทั้งหมด. เราจะใช้ AppPluginUtil.getMessage method เพื่อสนับสนุน i18n และใช้ตัวแปรคงที่ MESSAGE_PATH เพื่อ message resource bundle directory.

...