[K2 SmartForms] – Confirmation Popup Trick

สวัสดีครับอาจจะมีหลายๆท่านงงหรือสงสัยกับการเรียกใช้ rule Get confirmation เพื่อแสดงข้อความ Pop up แจ้งเตือน User หากท่านใดไม่งงแล้วก็เลื่อนไปดู trick ด้านล่างๆได้เลยนะครับข้ามการใช้ไปได้เลยโดยการแสดง popup ของ K2 SMF เนี่ยเราสามารถเรียกใช้ได้ผ่าน rule Get confirmation ดังภาพด้านล่างครับ
get-confirm-1
get-confirm-2

หลายๆท่านอาจจะเจอปัญหาว่าหากมีการ config rule อื่นๆที่มีการ validate เพิ่มเติมต่อจาก rule Get confirmation เมื่อใช้งานจริงเวลา กด cancel ใน pop up comfirm แล้ว Rule ที่เหลืออยู่ยัง execute ทำงานต่อไปซึ่งไม่ถูกต้องจริงๆแล้วหลักการทำงานที่จะทำงานถูกต้องต้อง Config แบบนี้ครับคือ เพิ่ม advanced condition ที่โดยใส่เงื่อนไข 1=1 เข้าไป   get-confirm-2-1  จากนั้น config rule ตาม รูปภาพ ด้านล่างครับ เราสามารถเรียก rule อื่นๆหลังจาก User กด cancel ได้หรือไม่อยากให้ทำอะไรก็เพิ่ม rule transfer data ไปเฉยๆได้ครับ
get-confirm-3

ตอนทำงานจริงนั้นเรามันจะมีการ validate ค่าเป็นจำนวนมากหากทำตามวิธีด้านบนจะค่อนข้างยุ่งยากครับ technic ที่เราสามารถทำได้คือให้ rule ที่มีการ validate มากมายหลายแหล่เป็น Fucntion หรือ rule ลอยๆแทนซะยกตัวอย่างเช่น ผมทำการ validate มากมายจากนั้น Hilight สีนำเงินผมตั้งชื่อ Rule ชุดนี้ว่า FnSaveMainForm ดังภาพด้านล่างจากนั้นกด Save
get-confirm-4

จากนั้นที่ปุ่มเราต้องการแสดง Pop up Confirm ให้ใช้วิธีเรียก Execute another rule แทนดังภาพ ด้วยวิธีนี้การทำงานของ Pop up จะถูกต้องครับ
get-confirm-5

ทีนี้มีคำถามว่า Comfirm pop up สามารถ เพิ่ม size popup ,ใส่ header ,ใส่ template ,ใส่ค่าตัวแปร บลาๆๆ ไปได้ไหม???
คำตอบคือ ไม่ได้ครับ!!! 5555+

แต่เรามีทางออกให้ดังนี้คือแต้นแต๊นนนนน ใช้ rule Show a message แทนซิคร้าบพี่น้องง
get-confirm-6

แต่มีข้อแม้คือต้องเลือก Message Type เป็น Confirmation นะครับ ทีนี้เราสามารถลาก Control ต่างๆมายำใส่ในนี้ได้เลยแม้กระทั้งใส่ Tag Html เพื่อการแสดงผลที่ต้องการก็ยังได้เรื่อง size ก็สามารถปรับได้อีกทั้งการทำงานยังเหมือนกับใช้ rule Get confirmation ทุกประการครับ
get-confirm-7

เอาละลองกดดูจากที่ Config ได้ผลลัพตามภาพเลยครับผม
get-confirm-8

วันหลังจะมาแชร์ทริคอื่นๆอีกนะครับ บ้ายบาย

Test on K2 version
4.7
4.6.11

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s