Skip to main content

การเรียกดูค่าจาก Site Column ที่เป็นของ Parent Content Type อาจจะไม่ได้ค่าที่คาดหวัง

Submitted by ezybzy on

ผมสร้าง Content Type ซึ่งเป็นลูก Event และได้เพิ่ม Content Type นี้เข้าไปใน Calendar หลังจากนั้นจึงเพิ่มข้อมูลที่เป็น Content Type ประเภทนี้เข้าไป ในการใช้งานทั่วไปทุกอย่างก็ดูปรกติดี ข้อมูลของ Content Type นี้ถูกแสดงใน Calendar View ได้โดยสมบูรณ์ แต่เมื่อผลผูก Workflow เข้ากับ Content Type นี้ ผมจึงเริ่มพบปัญหาไม่คาดคิดขึ้น

สิ่งที่ได้ทดลองทำคือ ใช้ Log to History แล้วทำการเรียกดูค่าของ Current Item:Start Time (ซึ่งเป็น Site Column ที่มากับ Event) แต่สิ่งที่เราได้คือ 0001-01-01T00:00:00Z (ค่าวันที่น้อยที่สุด)

วิธีแก้คือ เปลี่ยน Data Source จาก Current Item เป็น ชื่อลิสต์ที่เก็บข้อมูล (กรณีนี้คือ Calendar) แล้วเลือก Field ที่เราจะใช้ (กรณีนี้คือ Start Time) แล้วใน Find the List Item (ด้านล่างของหน้าต่างนั้น) ให้เลือก Field เป็น ID และให้ Value เป็น Current Item:ID

เข้าใจว่าสาเหตุที่ไม่สามารถใช้ค่าจาก Current Item ได้เนื่องจากค่าดังกล่าวถูกเก็บอยู่ใน Site Column ของ Parent Content Type แต่เก็บอยู่บน List แทน (ลองเลือก Current List แล้วตั้งค่าตามวิธีข้างต้นก็พบอาการในลักษณะเดียวกันเช่นกัน)

ผมมองว่ามันไม่น่าจะออกแบบมาให้ยุ่งยากนะ แต่ใครจะรู้ว่านี่อาจจะเป็นบั้กก็ได้