[BPMN] ลองเอา Process ที่ทำมา Deploy ขึ้นกัน

จาก Blog ก่อนหน้านี้ที่ได้ลองสร้าง Process ไปแล้ว คราวนี้ลองเอา Process ที่ทำ มาผูกให้เป็น Application โดยใช้ Activiti-App ตัว Kick Start ครับ เนื่องจาก Form ที่ทำโดยใช้ Activiti Designer ยังไม่สมบูรณ์ครับ เลยต้องเอามาปรับปรุงใน Kick Start  โดยการเพิ่ม Form ลงไป เพราะใน Process ที่ทำไว้ก่อนหน้านั้น เราได้กำหนดแค่ภาพรวม Workflow ไว้แล้ว

จริงๆมาสร้าง Workflow ในตัว Kickstart ได้เลยนะ ไม่ต้องผ่านตัว Eclipse Designer ก็ได้ครับ

เพิ่ม User และ Group ที่เกี่ยวข้อง

  • ถ้าดูจาก Process ได้สร้างขึ้นมา มีกลุ่มคนที่เกี่ยวข้องอยู่ 3 กลุ่ม ได้แก่ Accountant, Employee และ Manager ตามรูปเลย
  • สิ่งที่ต้องทำ คือ ทำให้ User และ Group เหล่านี้ มีตัวตนจริงๆ บน BPMN Engine โดยการเพิ่มเข้าไปในส่วนของ Identity management จากตัว Activiti-App เข้าทาง localhost:8080/activiti-app (ถ้ามีการเปลี่ยน Port หรือ URL ปรับแก้ให้ตรงกับที่ติดตั้งด้วย)
    • เพิ่ม User อันนี้ยัดได้ตามใจเลย
    • เพิ่ม Group ได้แก่ Accountant, Employee และ Manager
  • ถ้าทำตามนี้มี User ในแต่ละ Group ประมาณนี้

มาปรับ Process ให้ตามขั้นตอน ดังนี้

- GUI Form

Activity "Employee Request Budget" สำหรับ Employee ในกรอกจำนวนเงินที่ต้องการขอเบิก

  • เลือก Activity ก่อน มาดูในส่วนของ Panel ข้างล่าง เลือก Reference Form
  • เลือก New Form
  • จากนั้นลาก Number Control
  • และกำหนด Property ตามรูป
  • ข้อควรระวัง: ให้กำหนด Id ของ Control ให้ตรงกับ Condition ที่เขียนไว้ ซึ่งที่ส่วนที่นำไปใช้ต่อ คือ Sequence Flow ที่มี Conditional Expression ดังนี้
#01. Conditional Expression: ${budgetAmount <= 1000.00}
#02. Conditional Expression: ${budgetAmount > 1000.00}
  • จากนั้นกด Save

Activity "Manager Review / Approve" สำหรับให้ Manager ตรวจทาน และอนุม้ติ ผลการร้องขอเบิกเงิน

  • เลือก Activity ก่อน มาดูในส่วนของ Panel ข้างล่าง เลือก Reference Form
  • เลือก New Form
  • จากนั้นลาก Drop Down Control
  • และกำหนด Property ตามรูป
  • อย่าลืมใส่ Option Value เพื่อเอาไปใช้งานกับ Sequence Flow ต่อไป
  • จากนั้นกด Save

ปรับเรื่อง Owner ในแต่ละ Activity ให้ลงตาม Group - ในที่นี้ยกตัวอย่างของ Activity Accountant Acknowledge โดยต้องให้ User ที่อยู่ในกลุ่ม Accountant เข้ามาจัดการครับ ส่วนที่ Group เหลือ Employee และ Manager ลองปรับตามได้

  • เลือก Activity Accountant Acknowledge  ก่อน มาดูในส่วนของ Panel ข้างล่าง เลือก Assignments
  • โดยเจ้า Assignments เลือกได้ 2 แบบ
    • Fixed Values - กำหนดค่าลงไปเลย
    • Identity Store - ใช้ User & Group ที่ได้สร้างในตัว Identity management โดยในที่นี้ใช้วิธีการนี้
  • กำหนด Candidate Group
  • เลือก Group ที่ต้องการในที่นี้ กลุ่ม Accountant

แปลง Process เป็น App เพื่อ Deploy

  • ใน Activiti-App ในส่วน KickStart ให้เลือก App จากนั้นเลือก Create App
  • กำหนดข้อมูลทั่วไปของ App จากนั้นกด Create ดังรูป
  • กำหนดสี และรูป
  • รวมถึง Process Definition ที่ต้องการใช้
  • กด Save มีให้แก้ข้อมูลของ App รวมถึงการกด Publish เพื่อประกาศใช้งาน

หลังจาก Deploy (Publish Process ขึ้นไปแล้ว) ต่อไปจะเป็น Blog ที่ลอง Execute Process ที่ได้สร้างขึ้นมาครับ