If-Else Node (1)

If-Else Node ใช้สำหรับตรวจสอบข้อมูลตามเงื่อนไขที่กำหนด และ
แยกการทำงานตามผลลัพธ์ โดยหากผลลัพธ์เป็นจริง (True) ข้อมูลจะถูกส่งไปยัง
ขั้นตอนการทำงานหนึ่ง แต่หากผลลัพธ์เป็นเท็จ (False) ข้อมูลจะถูกส่งไปยังอีก
ขั้นตอนการทำงานหนึ่ง

ตัวอย่างการใช้งาน

  • แยกธุรกรรมเป็น “ผ่าน” หรือ “ไม่ผ่าน”
  • กำหนดผลการพิจารณาเป็น “อนุมัติ” หรือ “ปฏิเสธ”
  • คัดกรองข้อมูล “ตรงเงื่อนไข” หรือ “ไม่ตรงเงื่อนไข”

(ตัวอย่าง วิดีโอ + เสียงพูด)

(ตัวอย่าง วีดีโอ ไม่มีเสียง)

(ตัวอย่าง .gif file)

ขั้นตอนการใช้งาน

  1. เพิ่ม If-Else Node ลงในพื้นที่สร้างกฎ (Rule Graph)
  2. เชื่อมต่อ Input จาก Node ต้นทางมายัง If-Else Node
  3. กำหนดเงื่อนไขสำหรับตรวจสอบข้อมูลภายใน If-Else Node
  4. เชื่อมต่อ Output ฝั่ง True ไปยัง Node ที่ต้องการให้ทำงานเมื่อเงื่อนไขเป็นจริง
  5. เชื่อมต่อ Output ฝั่ง False ไปยัง Node ที่ต้องการให้ทำงานเมื่อเงื่อนไขเป็นเท็จ

ขั้นตอนการกำหนดเงื่อนไข

Step 1: ดับเบิลคลิกที่ If-Else Node เพื่อเข้าสู่หน้ากำหนดเงื่อนไข โดยระบบจะแสดง Dialog สำหรับตั้งค่าเงื่อนไขการตรวจสอบข้อมูล

Step 2: เลือกประเภทของข้อมูลที่ต้องการกำหนดเงื่อนไข

ข้อมูล Primitive และ Collective จะมีวิธีการกำหนดเงื่อนไขและผลลลัพธ์ที่แตกต่างกันดังนี้

  • Add Primitive – ใช้สำหรับกำหนดเงื่อนไขกับข้อมูลอินพุตแบบค่าเดี่ยวหรือ Primitive (เช่น number, string, boolean) โดยสามารถเปรียบเทียบค่าได้โดยตรง เช่น =, >, <, IN เป็นต้น โดยผลลัพธ์ในการตรวจสอบเงื่อนไขจะเป็น True/False
  • Add Collective – ใใช้สำหรับกำหนดเงื่อนไขกับข้อมูลย่อยภายในข้อมูลแบบกลุ่ม (Collective) โดยเริ่มจากเลือกฟิลด์ที่เป็น Collective ก่อน แล้วจึงเลือกฟิลด์ข้อมูลย่อยเพื่อตรวจสอบเงื่อนไข หากมีอย่างน้อย 1 รายการที่ตรงเงื่อนไข ผลลัพธ์จะเป็น True และหากไม่มีเลยจะเป็น False

Step 3: เลือกฟิลด์ข้อมูลที่ต้องการนำมาใช้ในการกำหนดเงื่อนไข โดยระบบจะแสดงรายการฟิลด์ข้อมูลที่สามารถเลือกใช้งานได้

ระบบจะแสดงฟิลด์ข้อมูลให้เลือกตามประเภทข้อมูลที่ผู้ใช้งานกำหนด

Step 4: เลือก Operator (ตัวดำเนินการเปรียบเทียบข้อมูล) สำหรับใช้ในการเปรียบเทียบข้อมูล โดยระบบจะแสดง Operator ที่สอดคล้องกับประเภทของฟิลด์ข้อมูลที่เลือกไว้

Step 5: เลือก Operand (ค่าที่ใช้ในการเปรียบเทียบข้อมูล) โดยผู้ใช้งานสามารถเลือกได้ 2 รูปแบบ ดังนี้

  • Field – ใช้เลือกค่าจากฟิลด์ข้อมูลอินพุตเพื่อนำมาเปรียบเทียบ
  • Constant – ใช้กำหนดค่าคงที่เพื่อนำมาเปรียบเทียบ โดยสามารถเลือกประเภทข้อมูลและระบุค่าให้สอดคล้องกับฟิลด์ที่นำมาเปรียบเทียบ

รูปแบบการกำหนดเงื่อนไข

If-Else node สามารถกำหนดเงื่อนไขได้ 3 รูปแบบได้แก่

  • การกำหนดเงื่อนไขอย่างง่าย (Simple Condition) – คือการกำหนดเงื่อนไขโดยใช้ฟิลด์เดียว เช่น net_amount > 3000 สามารถกำหนดเงื่อนไขได้ดังภาพ
  • การกำหนดเงื่อนไขผสม (Compound condition) – คือการนำหลายเงื่อนไขมาเชื่อมกันด้วยตัวดำเนินการ เช่น AND หรือ OR เพื่อใช้ตรวจสอบข้อมูลที่มีหลายเงื่อนไขร่วมกัน เช่น payment_method == “Credit Card” AND net_amount > 3000 สามารถกำหนดเงื่อนไขได้ดังภาพ
  • การกำหนดเงื่อนไขแบบหลายชั้น (Nested Condition) – คือการนำ If-Else มาซ้อนกันหลายระดับ เพื่อใช้ตรวจสอบเงื่อนไขที่มีความซับซ้อน เช่น order_status == “delivered” AND (payment_method == “Cash” AND net_amount > 3000) สามารถกำหนดเงื่อนไขได้ดังภาพ

การจัดกลุ่มเงื่อนไข (Grouping)

ผู้ใช้งานสามารถจัดกลุ่มเงื่อนไขเป็นหลายกลุ่ม เพื่อให้กำหนดและจัดการเงื่อนไขได้ง่ายและชัดเจนมากยิ่งขึ้น โดยการกดปุ่ม New Group

ตัวอย่างกลุ่มเงื่อนไขเช่น
กลุ่ม 1: (payment_method == “Cash” AND net_amount < 3000) 
กลุ่ม 2: (payment_method == “E-Wallet” AND net_amount < 10000)

สามารถกำหนดเงื่อนไขและเชื่อมเงื่อนไขทั้งสองกลุ่มด้วย AND หรือ OR ได้ดังภาพ

ตัวอย่างการประยุกต์ใช้งาน If-Else node