(For Users) การ Hide บาง Column ไม่ให้ Edit/Add ใน SharePoint List (Online)
Content difficulty — ทั่วไป
SharePoint List มีความคล้าย Excel โดยที่มีระบบ Columnar เหมือนตาราง แต่ก็มีความหลายหลายในเรื่องการเก็บค่าเป็น Column type ต่างๆเช่น เป็น Choice, Yes/No, เป็นค่าเงิน, เป็นไฟล์แนบ หรือ รูปภาพ ซึ่งเราจะนำมันไป ทำการ เก็บข้อมูลต่างๆ ในงาน Operational ภายในได้เช่น Product Catalog, ข้อมูลบุคคลต่างๆ หรือ แม้กระทั้งเป็นถึงระดับเก็บ Business Process จนไปถึง เอกสารสัญญา หรือ MOU ได้เลย และ Column ก็จะสามารถ Sort หรือ Group by รวมถึง Index เพื่อที่จะ search ได้ด้วย ทำให้มีการ พัฒนามาใช้งานมนรูปแบบต่างๆ เช่น รวมกับ App อย่าง PowerApps หรือ ให้ Developer เขียนโปรแกรมมาครอบเพื่อให้มี feature มากกว่าเดิมในหน้า SharePoint site นั้นๆ เป็นต้น
การเก็บเอกสาร file ต่างๆกรณีส่วนใหญ่ จะเก็บใน SharePoint ส่วนของ Document Library จะเหมาะสมกว่า ซึ่งจริงๆแล้วมีโครงสร้างแบบ คล้ายแบบ SharePoint List แต่ใน SharePoint List ก็จะมี column ที่ชื่อ Attachment ให้เก็บ
ซึ่งแน่นอนว่า user ทำ manual เข้าไปจัดการเอง หรือจะพัฒนาให้ automate จากระบบอื่น เพื่อจัดการ SharePoint List หลักๆ Common Activity คือ Create, Read, Update และ Delete ตัว List บน SharePoint ใน แต่ละ Row (ซึ่งใน SharePoint จะเรียกว่า Item)
ปัญหา
แต่มีความต้องการบางอย่าง เช่น เราอยากจะ add item แต่จะซ่อนบาง column ไม่ให้ edit ให้มีเห็นแค่ตอน view ใน SharePoint List อย่างเดียว
อาจจะงงๆ ให้ดูตัวอย่าง List ของ SharePoint List อันนี้ สมมุติว่าเป็น list ให้ user มาขอ request คนที่เป็น technical specialist ไปทำงาน ตามสายต่างๆ (Product Group) และให้ใส่ตัวเลขเงินเป็น cost (Amount) และก็มี Status ว่า Manager ได้ Approve หรือ Reject ซึ่ง user ก็จะดูผลได้จาก view นี้
ปัญหาคือ เวลาเรา +New เพื่อ Add Item (ซึ่งในสถานการณ์นี้คือการขอ Request) ตัว column ชื่อ Approval มันก็ขึ้นมาให้ปรับพร้อมกับ parameter อื่นด้วย ซึ่งคนขอ request ไม่ควรมา Approve ตัวเองได้
จากระบบนี้เราต้องการให้คนขอสามารถดู column ของ Approval ได้แต่ไม่ได้ต้องการให้ Add เอง หรือ มา Edit ซึ่งระบบนี้ข้างหลังจะผูกกับ Power Automate (Flow) เพื่อทำ Automation ส่ง mail ไปให้ Manager ทำการ Approve และ ให้ไปกรอก status เองแบบอัตโนมัติ
วิธีแก้ปัญหา
ให้ SharePoint Owner ไปที่หน้า SharePoint List นั้น คลิก Gear Icon แล้ว ไปที่หน้า List Settings จากนั้น คลิก Advanced Settings ที่หน้านั้นให้เลือก Yes ที่ Allow management of content types? แล้วเลื่อนไปด่านล่าง คลิก ok เพื่อ save
จากนั้นย้อนกลับไปที่ List settings ใต้ content types จะมี ตัวเลือกโผล่มาให้เห็นอันใหม่ ให้คลิกที่ Item แล้วเข้าไปคลิกที่ column ชื่อ Approval
สุดท้ายให้เลือกเปลี่ยนจาก Required เป็น Hidden แล้วลองกลับออกมาทดสอบดูกับการ Add/Edit ตัว Item ใน SharePoint List