Month: February 2023

  • ระบบสารสนเทศ (2/5) : ระบบสารสนเทศนักศึกษา (SIS)

    ระบบทะเบียนนักศึกษา และระบบสารสนเทศนักศึกษา (SIS)

    ระบบสารสนเทศนักศึกษา มีตัวย่อคือ SIS มีนักศึกษาหลายคนจะเรียกว่า S I S (อ่านว่า เอส ไอ เอส) แต่บางคนจะเรียกกว่าระบบ SIS (อ่านว่า ซิส) ซึ่ง SIS ในที่นี้ไม่ได้มาจากคำว่า sister ที่แปลว่าน้องสาวหรือพี่สาวนะคะ แต่ย่อมาจากคำว่า Student Information System ระบบจะเกิดขึ้นมาใช้งานจนถึงปัจจุบันก็มีชื่อเรียกที่แตกต่างกันไป

    ความเป็นมาของระบบลงทะเบียนเรียน

    การลงทะเบียนในปัจจุบันก็สามารดำเนินการผ่านระบบสารสนเทศนักศึกษา ไม่ว่าจะอยู่ที่ไหนที่มีเครือข่ายอินเทอร์เน็ตก็สามารถลงทะเบียนเรียนได้ แม้ว่าช่วงลงทะเบียนจะมีบางหน้าจอที่แสดงผลเนื่องจากมีการเข้าใช้งานที่เกินกว่าที่เครื่องแม่ข่าย (Server) จะรับได้ แต่ทางทีมพัฒนาระบบฯ ได้ตรวจสอบและวางแผนรับมือทุกครั้งในช่วงการลงทะเบียนเรียน

    คุณทั้งหลายอาจจะมีเสียงบ่นว่าระบบช้า ระบบไม่เสถียร หรือระบบไม่ทันสมัย แต่กระบวนการทำงานที่ได้มีการพัฒนาเพิ่มเติม ทดสอบจนแทบจะไม่เกิดข้อผิดพลาดมาตั้งแต่ปี 2015 จนถึงปัจจุบันก็ 7 ปีมาแล้วค่ะ เมื่อย้อนกลับไปสมัยก่อนที่พวกรุ่นพี่ของเราต้องมาเขียนใบคำร้องลงวิชาเรียน แล้วไปรวมตัวที่งานทะเบียนของมหาวิทยาลัย เข้าแถว ถือใบลงทะเบียนเรียน พร้อมกันลุ้นว่าเจ้าหน้าที่จะคีย์ข้อมูลรายวิชาแล้วระบบแจ้งมาว่า ลงทะเบียนสำเร็จ หรือว่าจำนวนนักศึกษาเต็มแล้วในรายวิชานั้น ๆ และต้องมาลุ้นว่าแถวเพื่อนที่ยืนอยู่ข้าง ๆ เจ้าหน้าที่ทำเร็วกว่าแถวของเราหรือเปล่าอีกด้วย….นี่แหละค่ะ เกิดมาในยุคหลังก็สบายกว่าพวกรุ่นก่อนอยู่มากโข…

    แต่เมื่อย้อนกลับไปตั้งแต่วิธีการลงทะเบียนในสมัยก่อน เราก็ปรับปรุงระบบให้มีความทันสมัยยิ่งขึ้น แม้ว่าการพัฒนาปรับปรุงได้ไม่ทันตามความต้องการที่มีความเปลี่ยนแปลงไปอย่างรวดเร็ว แต่ทางทีมพัฒนาระบบ ฯ ทุกคนร่วมพัฒนาระบบให้มีความเสถียร ครอบคลุมทุกเงื่อนไขของการลงทะเบียนที่มีความหลายหลาย เพราะมหาวิทยาลัยสงขลานครินทร์พัฒนาระบบลงทะเบียนขึ้นใช้เอง เพื่อรองรับนักศึกษามหาวิทยาลัยทุกคน นักศึกษาทุกคนสามารถภูมิใจได้เลยว่า ระบบสารสนเทศนักศึกษาที่ใช้ลงทะเบียนเรียนตั้งแต่ปี 1 ถึง ปีที่สำเร็จการศึกษา พวกคุณทั้งหลายได้ลงทะเบียนที่เป็นระบบที่ทางสำนักนวัตกรรมดิจิทัลและระบบอัจฉริยะภูมิใจ และตั้งใจพัฒนาขึ้นมาเพื่อนักศึกษาทุกคน

    ระบบสารสนเทศนักศึกษา

    ระบบสารสนเทศนักศึกษานี้เป็นระบบที่เกี่ยวข้องกับนักศึกษาเป็นส่วนใหญ่ และจะมีส่วนของอาจารย์ที่ปรึกษา และเจ้าหน้าที่เข้ามาตรวจสอบข้อมูลนักศึกษาบ้าง แต่การทำงานหลักๆ ของระบบ คือ “นักศึกษา”

    หากคุณทั้งหลายเป็นนักศึกษาของมหาวิทยาลัยสงขลานครินทร์ ไม่ว่าคุณจะสังกัดคณะไหน หรือวิทยาเขตไหนก็ตามทุกคนจะต้องใช้งานระบบสารสนเทศนักศึกษาที่มีหน้าตา ฟังก์ชั่นการทำงานที่เหมือนกัน แต่….นักศึกษาทราบหรือไม่ว่าเราทำอะไร ๆ ได้บ้างภายในระบบนี้ ตามมาดูกันเลย

    นี่เป็นรูปหน้าหลักของระบบฯ โดยแต่ละวิทยาเขตจะมี URL ที่แตกต่างกัน เนื่องจากทีมพัฒนาได้แยกฐานข้อมูล ดังนั้นปัจจุบันระบบ SIS ยังต้องเข้าใช้งานแยกวิทยาเขต โดยมี URL ดังนี้

    • วิทยาเขตหาดใหญ่ : https://sis.psu.ac.th
    • วิทยาเขตปัตตานี : https://sis.pn.psu.ac.th
    • วิทยาเขตภูเก็ต : https://sis.phuket.psu.ac.th
    • วิทยาเขตสุราษฎร์ธานี : https://sis.surat.psu.ac.th
    • วิทยาเขตตรัง : https://sis.trang.psu.ac.th

    เมนูในระบบสารสนเทศนักศึกษา

    เป็นเมนูการทำงานที่พัฒนาให้แก่นักศึกษา ดังนี้

    • การค้นหาข้อมูลรายวิชา
    • ลงทะเบียนเรียน
    • ผลการลงทะเบียนเรียน
    • ผลการเรียน
    • วิทยานิพนธ์/สารนิพนธ์
    • ตารางเรียน
    • ตารางสอบ
    • การค้นหาตารางสอนอาจารย์
    • ระบบจำลองผลการเรียน

    เมนูบริการเสริม

    เป็นเมนูการทำงานที่เชื่อมโยงมาจากบริการอื่นๆ ที่เพิ่มความสะดวกแก่นักศึกษา ดังนี้

    • บริการด้านการเงิน
    • ตรวจสอบข้อมูลค้างชำระทรัพยากรห้องสมุด

    การปรับปรุงระบบสารสนเทศนักศึกษา

    ขณะนี้ทีมพัฒนาระบบสารสนเทศกำลังพัฒนาระบบสารสนเทศนักศึกษาใหม่ โดยจะเปิดใช้งานระบบในปีการศึกษา 1/2566 ดังนั้นนักศึกษา ม.อ. ทุกคนจะได้ใช้ระบบสารสนเทศนักศึกษาใหม่ รอดูนะคะว่าระบบใหม่จะมีหน้าตาของระบบเป็นแบบใด

    นี่เป็นแค่ระบบหนึ่งของระบบสารสนเทศทั้งหมด ที่ทางฝ่ายพัฒนาระบบสารสนเทศ สำนักนวัตกรรมดิจิทัลและระบบอัจฉริยะ ได้พัฒนาขึ้น ซึ่งจะมีระบบสารสนเทศอื่น ๆ ที่จะมาแนะนำในครั้งต่อไปค่ะ

  • ระบบสารสนเทศ (1/5) : ขั้นตอนการพัฒนาระบบสารสนเทศ

    ขั้นตอนการพัฒนาระบบสารสนเทศ

    ชาว ม.อ. ทราบหรือไม่ว่ามหาวิทยาลัยมีการพัฒนาระบบสารสนเทศใช้งานภายในมหาวิทยาลัยที่มีหลากหลายระบบ พัฒนาขึ้นโดยฝ่ายพัฒนาระบบสารสนเทศ สำนักนวัตกรรมดิจิทัลและระบบอัจฉริยะ เช่น ระบบทะเบียนนักศึกษา ระบบรับสมัครนักศึกษาออนไลน์ ระบบสารสนเทศบุคลากร ระบบเอกสารอิเล็กทรอนิกส์ เป็นต้น

    พวกท่านทราบหรือไม่ว่าแต่ละระบบสารสนเทศกว่าจะออกมาให้ใช้งานกัน ทีมพัฒนาฯ ต้องทำอะไรกันบ้าง วันนี้จะขอมาเล่าส่วนของการพัฒนาตั้งแต่เริ่มต้น จนเปิดใช้งานระบบ แบบคร่าวๆ เข้าใจง่ายกันค่ะ

    ก่อนการพัฒนาระบบสักระบบ ต้องวิเคราะห์ความเร่งด่วน หรือแผนการใช้งานระบบ มีการเข้าคิวการพัฒนา เมื่อสรุปจะพัฒนาระบบใดระบบหนึ่ง มีขั้นตอนอย่างไรมาดูกันค่ะ

    ช่วงที่ 1 : Requirement

    เจ้าภาพ จะทำหน้าที่ประสานงานกับหน่วยงานที่เกี่ยวข้อง อาจจะเป็นวิทยาเขต คณะ เพื่อรวบรวมความต้องการให้ชัดเจนว่าจะจัดเก็บข้อมูลอะไรบ้าง กระบวนการ หรือรายงานเป็นอย่างไร

    ทีมพัฒนาระบบฯ : (1) จัดทำเอกสารเปิดโครงการ พร้อมทั้งกำหนดระยะเวลาในการพัฒนาระบบ (2) เอกสารรายงานการประชุมกับลูกค้า (3) เอกสารประเมินความเสี่ยง

    ช่วงที่ 2 : Analysis and Design

    ทีมพัฒนาฯ จะรวบรวมความต้องการจากลูกค้า เพื่อมาวิเคราะห์กระบวนการทำงาน พร้อมทั้งออกแบบหน้าจอและฐานข้อมูลให้มีความสมบูรณ์ครบถ้วน โดยทีมพัฒนาจะออกแบบหน้าจอที่ต้องการพัฒนาเพื่อมานำเสนอให้ลูกค้าตรวจสอบว่าระบบมีความครบถ้วน ถูกต้อง สีของหน้าจอ ปุ่มต่าง ๆ มีความสะดวกสบายกับการใช้งานหรือไม่ ซึ่งส่วนนี้ยังสามารถปรับปรุงความต้องการให้สอดคล้องกับการใช้งานจริงได้มากที่สุด และสรุปเป็นเอกสาร Requirement Checklist เพื่อยืนยันความต้องการกับเจ้าภาพอีกครั้ง

    ทีมพัฒนาระบบฯ : (4) จัดทำเอกสาร Requirement Checklist (5) เอกสาร Requirement Specification (6) เอกสาร Software Design (7) เอกสารประชุมติดตามความก้าวหน้าภายในทีม

    ช่วงที่ 3 : Development

    ช่วงนี้ทีมพัฒนาฯ จะเร่งมือในการพัฒนาระบบตาม Requirement Checklist เมื่อระบบสารสนเทศมีการพัฒนาไประยะหนึ่งก็จะมีการนัดประชุมกับลูกค้า เพื่อให้ดูความก้าวหน้าของระบบว่ามีการพัฒนาไปถึงส่วนใด ตรงตามที่ได้ออกแบบไว้หรือไม่ เมื่อมีการพัฒนาเสร็จแต่ละฟังก์ชั่น ก็จะส่งต่อให้กับทีมทดสอบระบบ

    หากมีความต้องการเพิ่มเติมระหว่างการพัฒนาจะมีการปรับปรุงระบบส่วนนี้จะเรียกกว่า Change Request ซึ่งจะไปนับรวมกับ Requirement Checklist

    ทีมพัฒนาระบบฯ : (8) ติดตามการพัฒนาระบบโดยใช้โปรแกรม Azure DevOps

    ช่วงที่ 4 : Testing

    ช่วงนี้จะเป็นงานของทีมทดสอบระบบ จะต้องตรวจสอบว่าทีมพัฒนาฯ ได้พัฒนาเสร็จสิ้นตาม Requirement Checklist โดยทีมทดสอบจะทำการเขียน Test case ที่ครอบคลุมว่ากระบวนการทุกกระบวนการก่อนที่จะส่งต่อให้กับผู้ใช้งาน (User) ต้องครบถ้วน สมบูรณ์ หากผิดพลาดไม่ตรงตามความต้องการจะส่งกลับไปยังทีมพัฒนาฯ ให้ปรับปรุงแก้ไขระบบให้ถูกต้อง ครบถ้วนที่สุด

    เมื่อทดสอบครบทุกฟังก์ชั่น จะมีการนัดประชุมลูกค้าเพื่อส่งมอบระบบ โดยจะมีเอกสาร Acceptance Checklist ให้ลูกค้าตรวจสอบหัวข้อในการพัฒนาระบบทั้งหมดในระบบ

    ทีมพัฒนาระบบฯ : (9) ทดสอบระบบโดยใช้โปรแกรม Azure DevOps โดยทดสอบตาม Test case ทุกเงื่อนไข (10) เอกสาร Acceptance Checklist

    ช่วงที่ 5 : Training

    เมื่อพัฒนาระบบครบถ้วนตาม Requirement Checklist ช่วงนี้จะเป็นการอบรมผู้ใช้งาน (User) หากเป็นระบบใหม่ทางทีมพัฒนาฯ จะอบรมใหม่ทั้งระบบ อาจจะแบ่งเป็นส่วนของเจ้าหน้าที่ อาจารย์ หรือเป็นผู้ใช้ที่มีสิทธิ์เป็นระดับต่างๆ แต่หากเป็นระบบที่มีการพัฒนาเพิ่มเติม ก็ขึ้นอยู่กับว่าการพัฒนามีความแตกต่างจากระบบเดิมมากน้อยแค่ไหน จำเป็นต้องจัดอบรมหรือไม่ ขึ้นอยู่กับความต้องการของเจ้าภาพ และในยุคปัจจุบันมีการอบรมผ่านช่องทางออกไลน์ ทำให้สะดวกกับผู้เข้าอบรมมากยิ่งขึ้น

    ทีมพัฒนาระบบฯ : (11) เอกสารการอบรมระบบ (12) คู่มือการใช้งานระบบในรูปแบบเอกสาร หรือ VDO

    ช่วงที่ 6 : Deployment

    เมื่อปรับปรุงระบบจนพร้อมใช้งานแล้ว ก็แจ้งเปิดระบบอย่างเป็นทางการตามที่เจ้าภาพต้องการ เช่น เริ่มใช้งานในปีการศึกษา 1/2565 เป็นต้น ซึ่งทีมพัฒนาระบบฯ จะมีการเฝ้าระวังระบบในช่วงการใช้งานในช่วงแรกว่าสามารถใช้งานได้สมบูรณ์หรือไม่ ขึ้นอยู่กับกระบวนการใช้งานของแต่ละระบบ เช่น หากเป็นระบบรับสมัครนักศึกษาออนไลน์ จะต้องตรวจสอบตั้งแต่ช่วงที่เจ้าหน้าที่คณะจัดทำโครงการ ตลอดจนผู้สมัครสามารถสมัครสมาชิก จนสามารถสมัครโครงการ ชำระเงินได้ครบถ้วนสมบูรณ์

    ทีมพัฒนาระบบฯ : (13) เอกสาร Operation Guideline (14) เอกสาร Maintenance

    ช่วงที่ 7 : Maintenance

    เป็นช่วงการบำรุงรักษาระบบสารสนเทศที่นอกเหนือจากช่วงการพัฒนาโครงการ ดังนั้นหากเป็นความผิดพลาดของโปรแกรมที่ไม่สามารถทำงานได้จำเป็นต้องแก้ไขทันที ทางทีมพัฒนาระบบฯ จะได้รับมอบหมายให้วางมือจากโครงการที่กำลังจัดทำ เพื่อมาแก้ไขปัญหาข้อผิดพลาดให้สามารถใช้งานได้

    ทีมพัฒนาระบบฯ : บันทึกการบำรุงรักษาระบบ มีการบันทึกผ่าน Azure DevOps พร้อมทั้งจัดทำ Dashboard โดยแบ่งเป็น (15) ส่วนที่เจ้าหน้าที่บริการลูกค้าสามารถแก้ไขเองได้ (QA-Support) (16) ส่วนส่งต่อทีมพัฒนา (F-SD01)

    ดังนั้นทุกโครงการที่มีการพัฒนาระบบสารสนเทศ จำเป็นต้องประเมินความเสี่ยง เนื่องจากแต่ละโครงการความเสี่ยงที่เกิดขึ้นแตกต่างกัน เช่น การประสานงานกับลูกค้าที่อยู่นอก ม.อ. ความต้องการที่ไม่ชัดเจน การเปลี่ยนแปลงความต้องการ กำลังคนน้อยลง เป็นต้น

    ระบบสารสนเทศทั้งหมดที่ทีมพัฒนาระบบสารสนเทศนักศึกษาได้พัฒนาและอยู่ในความดูแลทั้งหมด ดังนี้

    จากที่เล่ามาทั้งหมดขอกล่าวแค่ส่วนของระบบในความผิดชอบของงานสารสนเทศนักศึกษาว่าในช่วงนี้มีระบบอะไรบ้างที่พัฒนา ติดตามนะคะ แบ่งเป็น 5 ส่วน ดังนี้

    1. ขั้นตอนการพัฒนาระบบสารสนเทศ
    2. ระบบทะเบียนนักศึกษา และระบบสารสนเทศนักศึกษา (SIS)
    3. ระบบรับสมัครนักศึกษาออนไลน์ (E-Admission)
    4. ระบบรายละเอียดรายวิชาและรายงานผลดำเนินการ (Course Spec.)
    5. ระบบประกันสุขภาพนักศึกษาต่างชาติ (HIF)
  • ฟังก์ชัน array_agg และ array_to_string ใน PostgreSQL 

    ผู้เขียนได้มีโอกาสพัฒนาโปรเจ็คใหม่ที่จะต้องไปใช้งานฐานข้อมูล PostgreSQL ซึ่งไม่เคยใช้งานมาก่อน โดยคำสั่งพื้นฐานทั่วไปก็จะเหมือนๆ กัน ตามมาตรฐานคำสั่ง SQL แต่ก็มีบางฟังก์ชันที่มีเฉพาะเจาะจงแตกต่างกันไปในแต่ละฐานข้อมูล อย่างเช่นที่จะกล่าวถึงในบล็อกนี้

    โดยโจทย์ก็คือ ต้องการรวมข้อมูลในฟิลด์เดียวกันที่อยู่กันคนละเรคคอร์ด ให้มาเชื่อมต่อกัน เช่น

    มีตารางข้อมูลจังหวัด และอำเภอ ความต้องการก็คือ นำชื่ออำเภอทั้งหมดภายในจังหวัดเดียวกันมาแสดงเรียงต่อ ดังตัวอย่าง

    “ปัตตานี” “หนองจิก, โคกโพธิ์”
    “ยะลา”“เบตง, ธารโต, รามัน”
    “สงขลา”“กระแสสินธุ์, หาดใหญ่, คลองหอยโข่ง”

    ซึ่งภายใน PostgreSQL เราจะใช้งานฟังก์ชัน array_agg และ array_to_string

    array_agg(expression [order by [sort_expression {asc | desc}], [...])

    โดย

    expression จะเป็นฟิลด์ หรือกลุ่มฟิลด์ที่จะดึงมารวมเข้าไว้ด้วยกัน

    sort_expression ฟิลด์ที่จะใช้ในการเรียง

    array_to_string(anyarray, delimeter [, null_string])

    โดย

    anyarray ข้อมูลในรูปแบบ array

    delimeter ตัวอักษรหรือสัญลักษณ์ที่ใช้คั่นระหว่างข้อมูลที่มาเชื่อมต่อกัน

    null_string ตัวอักษรหรือสัญลักณ์ที่จะใช้แสดงเมื่อ element ใน array มีค่าเป็น null

    ตัวอย่างคำสั่ง

    select province, array_agg (amphoe) amphoe
    from test
    group by province

    ซึ่งจะได้ผลลัพธ์ดังรูป

    เนื่องจากจะเป็นการรวมข้อมูลในแต่ละจังหวัด เราก็เลยจะต้องใช้ฟังก์ชัน group by ร่วมด้วย

    จากผลลัพธ์จะเห็นว่าเราจะได้ข้อมูลที่ใกล้เคียงกับที่เราต้องการแล้ว เพียงแต่ข้อมูลอำเภอจะยังอยู่ในรูปแบบ array เพราะฉะนั้น เราจะต้องใช้ฟังก์ชัน array_to_string มาช่วยแปลงข้อมูล array มาอยู่ในรูปแบบ string ตามที่เราต้องการ ดังตัวอย่าง

    select province, array_to_string(array_agg(amphoe), ', ') amphoe
    from test
    group by province

    จะได้ผลลัพธ์ดังภาพ

    ซึ่งบทความนี้เป็นเพียงหนึ่งตัวอย่างของฟังก์ชันของ PostgreSQL ที่แตกต่างจากฐานข้อมูลอื่นๆ ซึ่งเราก็จะต้องศึกษาเรียนรู้กันต่อไป ถ้าผู้เขียนมีโอกาสได้ใช้งานฟังก์ชันหรือฟีเจอร์อะไรแปลกใหม่ ก็จะพยามนำมาบันทึกไว้ ในโอกาสต่อๆ ไป

    ขอบคุณครับ


    ข้อมูลอ้างอิง

  • ปรับขนาดและสีของ Mouse Cursor / Mouse Pointer บน Windows 10 /Windows 11 ให้ชัดๆ ปังๆ ตามสไตล์สายมูเตลู

    ด้วยอายุอานามของผู้เขียนที่ปาเข้าไปหลายหลักสิบ เวลามองอะไรที่เล็กๆ ก็ออกจะขัดใจและไม่สบายตาไปซะแล้ว อย่าง Mouse Cursor ก็เช่นกัน

    ผู้เขียนเลยถือโอกาสนี้มาแชร์วิธีการปรับขนาด ของ Mouse Cursor บน Windows 10 และ 11 ให้ดูง่ายขึ้น ซึ่งนอกจากจะช่วยให้สบายตาแล้ว สายมูเตลูอย่างผู้เขียนก็ไม่พลาดเพราะสีสันมีอิทธิพลต่อชีวิตของเรา จึงขอแชร์วิธีการปรับสีของ Mouse Cursor ด้วยซะเลย ไม่เชื่อก็ต้องเชื่อ Mouse Cursor ที่ชี้ไปชี้มา ก็พาปังและราบรื่นได้นะ อิอิ

    สำหรับสายมูเตลูอยากปรับสี Mouse Cursor ให้ปังและราบรื่น ขอเชิญเลื่อนหน้าจอไปด้านล่างสุดกันก่อนนะคะ จะได้ทราบว่าเราจะใช้สีอะไร ส่วนใครไม่ใช่สายมู ก็ดูวิธีการต่อจากนี้ได้เลยค่า ซึ่งเราจะต้องรู้ก่อนว่า Microsoft Windows ที่เราใช้งานกันอยู่นั้น เป็นเวอร์ชัน 10 หรือ 11 จะได้เข้าไปตั้งค่ากันถูกค่ะ

    การจะรู้ได้อย่างไรว่า Microsoft Windows ที่เราใช้งานกันอยู่นั้น เป็นเวอร์ชัน อะไร ?

    ให้เลือก เริ่มต้น > การตั้งค่า  > ระบบ > เกี่ยวกับ

    เท่านี้เราก็จะทราบแล้วค่ะ ว่าใช้งาน Microsoft Windows เวอร์ชัน 10 หรือ 11


    เอาละ ถ้าทราบกันแล้วว่าเราใช้งาน Microsoft Windows เวอร์ชัน 10 หรือ 11 ก็มาดูวิธีการปรับขนาดและสีของ Mouse Cursor ตามแต่ละ Windows กันเลยค่า

    การตั้งค่าขนาดและสีของ Mouse Cursor / Mouse Pointer บน Window 10 /Windows 11 มีวิธีการดังนี้

    ขั้นที่ 1 : คลิกไอคอน Search ของ Window พิมพ์คำว่า Mouse แล้วเลือก Mouse Settings

    Microsoft Window 11

    Microsoft Window 10

    ขั้นที่ 2 : คลิกเลือก Adjust mouse & cursor size สำหรับ Window 10 หรือเลือก Mouse Pointer สำหรับ Window 11 เพื่อเข้าไปปรับขนาดและสีของ Mouse Cursor/Mouse Pointer กันค่า

    Microsoft Window 11

    Microsoft Window 10

    ขั้นที่ 3 : ตั้งค่า Mouse Cursor /Mouse Pointer โดยปรับขนาดและสีของ Mouse Cursor/Mouse Pointer ตามที่ต้องการ อธิบาย ดังนี้

    Change pointer size /size – ปรับขนาดของ Mouse Cursor ให้ใหญ่-เล็ก โดยให้คลิกลากแถบขนาดเพื่อปรับขนาดของ Mouse Cursor

    ส่วนสายมูเตลูอยากปรับสีด้วย ในส่วนของ Change pointer colors /Mouse poitter Style ซึ่งเป็นการปรับสีของ Mouse Cursor ก็คลิกคลิกเลือก icon ชาร์ทสี/Mouse สีเขียว และคลิกเลือกสีตามปีเกิดที่ต้องการได้เลยค่ะ

    แต่หากต้องการเลือกสีอื่นหรือสีปังๆ ตามปีเกิดซึ่งไม่มีในสีที่แนะนำ ให้คลิกเลือก Pick a custom pointer color /Choose another color แล้วทำการเลือกสีที่ต้องการ เมื่อเลือกสีที่ต้องการเรียบร้อยแล้ว กดปุ่ม Done คร่าาาา

    Microsoft Window 11

    Microsoft Window 10

    > เท่านี้ก็เป็นอันเสร็จเรียบร้อยแล้วค่ะ ได้ Mouse Cursor ชิคๆ  ชัดๆ สีสวยๆ ตามที่ต้องแล้วละค่า แถมความปังก็เกิดขึ้นในทันที



    ดูสีมงคลประจำปี 2566 ตามปีเกิดที่ทำให้ชีวิตของเราปังและราบรื่นกันก่อน จะได้เอาไปใช้ปรับสีของ Mouse Cursor กันค่า (Ref : เช็กสีมงคล 2566 เสริมดวง 12 นักษัตร ให้ชีวิตราบรื่นตลอดทั้งปี)

    ได้สีเรียบร้อยแล้ว อย่าลืมไปเปลี่ยนสี Mouse Cursor กันนะค่า ได้เรื่องอย่างไรมาเล่าสู่กันฟังบ้างนะคะ ^^

    ปีกุนสีมงคล : สีน้ำเงิน สีแดง
    ด้วยชาวกุนเป็นคนชอบเก็บเงินเก็บทอง หมายปองเรื่องเงินเป็นสำคัญ ควรมีสีน้ำเงินในชีวิตให้มากเพื่อรับทรัพย์ และสีแห่งความมั่งคั่งอย่างสีแดง ซึ่งนอกจากจะแสดงถึงความรักแล้ว ยังเป็นสีแห่งความเฮงที่เหมาะสมกับชาวกุนเช่นกัน
    ปีชวดสีมงคล : สีม่วง สีส้ม
    เพราะชาวชวดมีอุปนิสัยเขินอาย ขี้กลัว และกังวลเป็นอย่างมาก ควรมีสีส้มแห่งความโชคดี เสริมให้คุณเจอแต่เรื่องที่ดี ให้คุณพร้อมมั่นใจไม่วิตกกังวล และสีม่วงจะคอยเสริมเรื่องทรัพย์ให้คุณมีกินมีใช้ยิ่ง ๆ ขึ้นไป
    ปีฉลูสีมงคล : สีเขียว สีแดง
    โดยภาพรวมชาวฉลูเป็นคนที่อดทน อดกลั้นได้ดี ไม่ค่อยมีใครรู้ว่าจริง ๆ แล้ว คุณนั้นรู็สึกอย่างไร ดังนั้นควรเสริมด้วยสีแดง สีแห่งความรัก ความเมตตาให้คนได้มองเห็นใจของชาวฉลูบ้าง และสีเขียวแห่งความอุดมสมบูรณ์ อบอุ่น ผ่อนคลาย จะช่วยขจัดความกดดันที่มีให้สบายใจขึ้น
    ปีขาลสีมงคล : สีน้ำเงิน สีส้ม
    เพราะชาวขาลมีความเป็นผู้นำ มีความเอาแต่ใจสูง ต้องได้ในสิ่งที่ปรารถนา ดังนั้นสีส้มจะนำพาความสุขสมหวังดั่งใจมา มอบให้คุณ และสีน้ำเงิน เป็นเจ้าแห่งทรัพย์ เป็นสิ่งที่ชาวขาลปรารถนาควรค่าแก่การได้ครอบครอง
    ปีเถาะสีมงคล : สีเขียว สีส้ม
    เพราะชาวปีเถาะเป็นคนขี้เหงา ต้องการเป็นผู้ที่ได้รับความสนใจ สีเขียวจะช่วยเติมเต็มความสุขสมบูรณ์ของชีวิต สีส้มจะนำพาความโชคดีให้ชีวิตไม่ขาดมีแต่คนรักคนเมตตา
    ปีมะโรงสีมงคล : สีแดง สีน้ำเงิน
    เพราะมะโรงเป็นคนใจกว้าง ชอบช่วยเหลืองานบุญ งานกุศลควรได้รับสีแดง สีแห่งพลังความรักจากผู้อื่นและความมั่งคั่งจากสีน้ำเงินเสริมบุญบารมีแก่ตัวเองอย่างสมควร
    ปีมะเส็งสีมงคล : สีเขียว สีน้ำเงิน
    ชาวมะเส็งเป็นคนขี้เบื่อ ไม่ชอบอะไรที่จำเจ บางครั้งก็เลิกทำเอาดื้อ ๆ ดังนั้นควรเติมด้วยสีเขียวที่มีความหมายถึงการให้ความอบอุ่นสมบูรณ์แก่คนรอบข้างเพื่อโน้มน้าวใจให้ชาวมะเส็งอยากทำสิ่งต่าง ๆ และเสริมด้วยสีแห่งทรัพย์ คือ สีน้ำเงิน ให้ชาวมะเส็งมีแรงบันดาลใจในการขับเคลื่อนทำสิ่งต่าง ๆ ซึ่งจะเกิดผลลัพธ์ที่ดี
    ปีมะเมียสีมงคล : สีแดง สีม่วง
    ชาวมะเมียเป็นคนขี้สงสาร มีความเมตตาและเอ็นดูผู้อื่นอยู่เสมอมักจะมอบสิ่งที่คนอื่นร้องขอ โดยเฉพาะเรื่องเงินทอง ดังนั้นสีแดง จะเสริมให้ชาวมะเมียได้รับความรัก ความเมตตา  และความเห็นใจจากผู้อื่นเป็นการตอบแทนมากขึ้น ส่วนสีม่วงจะช่วยดึงดูดทรัพย์ ส่งเสริมให้ชาวมะเมียมั่งมี เงินทองเพิ่มพูน
    ปีมะแมสีมงคล : สีม่วง สีเขียว
    โดยรวมแล้วชาวมะแมเป็นนักวางแผนที่ดี มีความคิดแน่วแน่ มีอุดมการณ์อันยิ่งใหญ่ต้องเสริมด้วยสีเขียว เพื่อเพิ่มความสมบูรณ์แบบให้กับชาวมะแมที่ชอบใฝ่หาความสำเร็จ และสีม่วงจะเสริมเรื่องโชคลาภให้มั่งคั่งมากยิ่งขึ้น
    ปีวอกสีมงคล : สีส้ม สีน้ำเงิน
    เพราะชาววอกเป็นคนอยู่ไม่สุข ชอบทำนู่นทำนี่แล้วไม่ค่อยระวังนัก ต้องเสริมด้วยสีแห่งความโชคดีอย่างสีส้ม เพื่อช่วยลดความรุนแรงที่จะเกิดขึ้น ส่วนสีน้ำเงินจะช่วยเติมเต็มความสุขสมบูรณ์ทางการเงินให้ชีวิตและต่อยอดสิ่งดี ๆ ให้เข้ามาหาตัวเอง
    ปีระกา
    สีมงคล : สีแดง สีส้ม
    เพราะชาวระกาเป็นคนช่างพูด มีวาทศิลป์ที่ดี จึงควรได้รับพลังแห่งความรักจากสีแดงจะช่วยเสริมความเมตตาจากคนรอบกาย  และเสริมด้วยสีส้มให้พบเจอแต่สิ่งดี ๆ ในชีวิต ทำให้หมดทุกข์ หมดโศก หมดเรื่องร้าย ๆ
    ปีจอ
    สีมงคล : สีเขียว สีม่วง
    ชาวจอเป็นคนขี้บ่น ขี้หงุดหงิดรำคาญใจ หากเสริมด้วยสีเขียว จะทำให้มีพลังงานที่ช่วยลดความใจร้อน คอยเติมความสมบูรณ์และความสงบทางใจมากขึ้น ส่วนสีม่วง เสริมเรื่องการดึงดูดสิ่งดี ๆ ให้เข้ามาในชีวิต จะทำให้คุณใจเย็นกับทุก ๆ เรื่อง
  • Event และ Vote ใน Line ใช้งานยังไงนะ

    สวัสดีค่ะทุกท่าน มาแล้ววววค่าาาาา ^_* มาเขียนเรื่องง่าย ๆ เข้าถึงได้กันทุกคน และสืบเนื่องมาจาก Blog ที่แล้ว เราได้ทราบฟังก์ชันเคล็ดไม่ลับแบบฉบับการใช้ Line กันมาแล้ว หลายคนมาบอกว่า สะดวกดี ไม่เคยรู้มาก่อนเลย รู้อย่างนี้ทำไปนานแล้ว ^ ^  ทำผู้เขียน Blog มีกำลังใจขึ้นมาเลยค่ะ  สำหรับ blog นี้เรามาดูในเรื่องของการนัดหมาย และ การโหวตกันดีกว่านะคะ ใน Line ใช้งานกันยังไง

    1. Event

    เวลาที่เราคุยแชทกับเพื่อนหรือแชทกันในไลน์กลุ่ม แล้วมีการนัดหมายกันทำกิจกรรมต่าง ๆ ไม่ว่าจะเรื่องงานหรือไม่ใช่เรื่องงานก็ตาม ^ ^  เมื่อคุยกันเพลิน ๆ  ข้อความที่นัดกันไว้ก็ถูกเลื่อนไปด้านบน จนทำให้อาจลืมนัดกันหรือ หรือ จะดูว่าที่นัดกันไว้มันวันที่เท่าไหร่ ก็ต้องเสียเวลามาเลื่อนแชทหาข้อความที่เคยคุยเรื่องนัดกัน  ถ้าเป็นกรณีแบบนี้เรามาสร้างตารางนัดหมายโดยการใช้ Event กันดีกว่าค่ะ

    1.1 เข้ามาที่หน้าจอแชทของไลน์กลุ่มหรือไลน์ส่วนตัวของคนที่เราคุยด้วย เลือกที่เครื่องหมายขีด 3 ขีด

    1.2 เลือก Events

    1.3 เลือกวันที่ที่ต้องการนัดหมาย จากนั้นกดเครื่องหมาย +

    1.4 ระบุหัวข้อในการนัดหมาย สามารถเลือกได้ว่าเป็นการนัดหมายทั้งวันหรือระบุเป็นช่วงเวลา หากเป็นการนัดหมายกันทั้งวันก็เลือกทำเครื่องหมายถูกที่ All Day  ในส่วนของข้อมูลตรง Start : ก็จะไม่แสดงเวลา

    1.5 แต่หากต้องการระบุเป็นช่วงเวลา ให้เอาเครื่องหมายถูกที่ All Day ออก  ในส่วนของข้อมูลตรง Start :  ก็จะแสดงข้อเวลา โดยสามารถเลือกแตะตรงข้อมูลของวันและเวลาเพื่อแก้ไขได้

    1.6 สามารถระบุเวลานัดหมาย  หรือแก้ไขวันที่นัดหมายใหม่ได้  โดยเมื่อแก้ไขเรียบร้อยแล้วเลือก Done

    1.7 หากเป็นการทำกิจกรรมต่อเนื่องกันหลายวัน  สามารถมาเพิ่มเวลานัดหมายให้ขยายเป็นช่วงวันได้ตรง End   อยากกจะระบุ Location ก็สามารถทำได้  ต้องการให้มีการตอบรับการนัดหมายก็เลือกทำเครื่องหมายถูกไว้ที่ Request RSVP

    1.8 หากต้องการให้มีการแจ้งเตือนล่วงหน้าก่อนเวลานัดหมายก็สามารถทำได้โดยการเลือกทำเครื่องหมายถูกไว้ที่ All reminder เมื่อแตะเลือก จะแสดงเวลาให้เลือกว่าต้องการให้แจ้งเตือนก่อนในระยะเวลาเท่าไหร่ที่เราต้องการ ให้เลือกเวลาตามที่เราต้องการให้แจ้งเตือน

    1.9 ตรวจสอบข้อมูลการนัดหมายเรียบร้อยแล้วเลือก Done ได้เลย

    1.10 และเพื่อให้ไม่พลาดนัดสำคัญของเรา เราก็ตั้งค่าไว้ให้แสดงไว้ที่ประกาศด้านบนสุดของแชทได้เลยโดยการเลือกตั้งค่าให้ Set as announcement

    1.11 ระบบก็จะแจ้งเตือนว่าได้ตั้งค่าไว้เป็นประกาศเรียบร้อยแล้วเลือก OK

    1.13 เลือกตรงสัญญลักษณ์ < เพื่อกลับไปยังหน้าแชทของเพื่อนหรือไลน์กลุ่ม

    1.14 ในหน้าแชทแสดงการนัดหมายที่สร้างไว้ และ ถูกตั้งค่าไว้เป็นประกาศด้านบนสุดในหน้าแชทเรียบร้อยแล้ว

    1.15 และเมื่อเลือกเข้ามาดูข้อมูลในตารางนัด ก็สามารถเลือกตอบรับหรือปฏิเสธการนัดหมาย เพื่อให้ผู้นัดทราบได้เลย โดยด้านล่างแสดง Account ของผู้ที่ตอบรับหรือปฏิเสธก็จะปรากฏให้ทราบได้ทันที

    2. Vote

    เย็นนี้กินอะไรดี  งานปีใหม่จะเลี้ยงที่ไหน แล้ววันหยุดยาวนี้ล่ะจะไปจังหวัดไหนกันดี  คิดว่าทุกคนคงเคยมีหัวข้อสนทนาที่เป็นปัญหาโลกแตกแบบนี้  คุยกันไปกันมาไม่ได้ข้อสรุปกันเสียที ถ้าแบบนี้ก็เปิดโหวตแบบแฟร์ ๆ กันไปเลย มาสร้างการโหวตใน Line กันดีกว่าค่ะ

    2.1 เข้าไปที่หน้าแชทส่วนตัวของเพื่อนหรือแชทกลุ่ม กดที่สัญลักษณ์ +

    2.2 เลือก Poll

    2.3 เลือก Create Poll

    2.4 ตั้งชื่อหัวข้อของการโหวต ตัวเลือกในการโหวต โดยในแต่ละตัวเลือกสามารถใส่รูปได้

    2.5 เลื่อนลงมาด้านล่างจะมีตัวเลือกให้เลือกดังนี้

    • Set ending date : กำหนดวันปิดโหวต
    • Multivote : โหวตแบบตอบได้หลายข้อ
    • Anonymous votes : โหวตแบบไม่แสดงชื่อ
    • Allow new options : เพิ่มตัวเลือกอื่น ๆ ในการโหวต

      ยกตัวอย่างในกรณีนี้เลือกการโหวตแบบไม่แสดงชื่อ  และ เลือกกำหนดวันปิดโหวต เมื่อกำหนดข้อมูลในการโหวตเรียบร้อยแล้วเลือก Done

    2.6 แสดงข้อมูลของการโหวต และ เราสามารถตั้งค่าให้เป็นประกาศอยู่ด้านบนสุดของแชทได้เช่นเดียวกันกับ Event  โดยการเลือกที่ Announce

    2.7 แจ้งว่าตั้งค่าให้เป็นประกาศแล้ว ให้กด OK

    2.8 กดที่สัญลักษณ์ X เพื่อปิดหน้าจอ

    2.9 ในหน้าแชทก็จะแสดงการโหวตและตั้งค่าเป็นประกาศเรียบร้อยแล้ว

    2.10 เมื่อกดเข้าไปในโหวต ก็จะแสดงกับรายการที่เราตั้งค่าให้โหวต เพื่อนก็สามารถเลือกโหวตได้ตามต้องการ จากนั้นก็เลือก Vote

    2.11 แสดงจำนวนของผู้โหวตให้ทราบ และ เนื่องจากเรามีการตั้งค่ากำหนดวันปิดโหวต ด้านบนก็จะแสดงจำนวนวันนับถอยหลังว่าอีกกี่วันถึงจะปิดโหวต

    เป็นไงคะสำหรับ 2 ฟังก์ชันนี้ คิดว่าน่าจะนำไปประยุกต์ใช้ให้เกิดประโยชน์กันได้มากขึ้นนะคะ Blog หน้าจะเป็นเรื่องเกี่ยวกับอะไร อย่าลืมติดตามให้ให้กำลังใจกันด้วยนะคะ ^ ^

  • สร้าง chart ง่ายสุด ๆ ด้วย Power Point

    ตามหัวข้อเลยค่ะ อาจจะเป็นเรื่องที่ง่าย ๆ ที่บางคนรู้แล้ว แต่บางคนก็ยังไม่รู้ (รึปล่าว😁) เข้าเรื่องกันดีกว่าค่ะ👌 ปกติเราอาจจะใช้ word หรือลาก box ข้อความมา แต่วันนี้เราจะมาใช้ power point ทำแผนผังองค์กร หรือ chart อะไรก็ได้ ใช้เวลานิดเดียวและง่ายสุด ๆ เลยค่ะ สมมุติเรามีรายชื่อคนในองค์กร ตามตัวอย่าง

    จากนั้นจัดลำดับการเป็นหัวหน้าและลูกน้อง โดยใช้ปุ่ม Increase List Level

    หมายถึงรายชื่อที่เลือกเป็นลูกน้องของ ใบเฟิร์น สามารถเลือกรายชื่อที่ต้องการและคลิกปุ่ม Decrease List Level หรือ crease List Level เพื่อปรับลำดับตามต้องการ ดังรูป

    จากนั้นไปที่ Home –> Convert to SmartArt –> More SmartArt Graphics –> Hierarchy อยากได้ตัวไหนก็เลือกได้เลยค่ะ

    ก็จะได้ผังองค์กรทันทีเลย

    จากนั้นก็สามารถแก้ไข ปรับแต่งได้ คลิกเลือกที่รูปแล้วเลือกไฟล์รูปเพื่อปรับแต่ง คลิกที่ชื่อเพื่อปรับสี ขนาดตัวอักษรได้ ที่ “SmartArt Design” เราสามารถเลือกเปลี่ยน theme สีได้ที่ “Change Colors” แต่หากต้องการปรับแต่งเองให้คลิกที่ “Convert to Shapes” แต่ข้อควรระวังถ้าเลือก “Convert to Shapes” แล้วจะแก้กลับไม่ได้แล้วนะ แค่นี้เองค่ะ ง่ายมากเลยใช่มั๊ยหล่ะ😉 อ่านมาถึงแล้วก็ขอขอบคุณทุกกำลังใจ😍นะคะ

  • วิธีใส่ Subtitle อย่างง่าย บนมือถือ ด้วย CapCut

    ใครที่เป็น youtuber หรือ เริ่มต้น ทำช่องบนสื่อ Social Media ต่าง ๆ และอยากใส่ Subtitle ใต้คลิป แต่ไม่รู้จะเริ่มต้นยังไง ลองมาดูวิธีใส่ Subtitle ง่าย ๆ ผ่าน Application CapCut บนมือถือกันค่ะ
    ซึ่งสามารถ Download ได้ทุกช่องทาง ทั้ง Play Store และ App Store

    • ขั้นตอนแรก คือให้กดคลิกเพิ่ม โปรเจกต์ใหม่ (New project)และกดอนุญาตการเข้าถึงต่าง ๆ
    • จากนั้นระบบจะเข้าไปยังคลังคลิปวิดีโอในเครื่องของเรา และให้ทำการเลือกคลิปที่ต้องการใส่ Subtitle แล้วทำการกดปุ่มเพิ่ม (Add)
    • เมื่อคลิปที่เลือกเข้ามาในหน้าจัดการแล้วให้เลือกเครื่องมือข้อความ (Text)
    • ให้ตั้งค่าเป็นเสียงต้นฉบับ ในส่วนเลือกภาษา หากใครต้องการให้ Sub Title ที่ใส่เป็นภาษาไทยสามารถเลือกภาษาตามที่ต้องการได้เลย ในกรณีนี้จะเลือกเป็นภาษาไทย เมื่อเสร็จแล้วให้มาคลิกที่ปุ่ม เริ่มต้น (Start)
    • เมื่อเสร็จแล้วให้มาคลิกที่ปุ่ม เริ่มต้น (Start) Application จะสร้าง Subtitle ให้อัตโนมัติ
    • เมื่อเสร็จแล้ว จะสามารถเห็น ข้อความ Subtitle ในช่องตัดต่อ
    • เราสามารถปรับตำแหน่ง ขนาด ของ Subtitle ได้
    • โดยให้คลิกไปที่แถบข้อความ Subtitle ที่ต้องการแก้ไข เราสามารถปรับตำแหน่งข้อความ ปรับขนาดหรือเปลี่ยน Font ตลอดจน แก้ไขข้อความที่คำนวณออกมาไม่ถูกต้องได้ จากนั้นให้กดเครื่องหมายถูก
    • หลังจากที่แก้ไขเรียบร้อยแล้ว ให้เรา save คลิปนี้ไว้ในเครื่องโดย กดสัญลักษณ์ลูกศร มุมขวาบน
    • เพียงเท่านี้คลิปของเราก็จะถูกบันทึกลงมาในเครื่อง จากนั้นให้กดปุ่ม เสร็จสิ้นมุมขวาบนได้เลยเราก็จะได้คลิปวิดีโอที่มี Subtitle มาแบบง่าย ๆ แล้ว!!!!

    สามารถดูตัวอย่างคลิปที่ใส่ Subtitle ได้ตาม Link ข้างล่างนี้ค่ะ

  • วิธีการสร้าง/แชร์ Template จาก Notion

    • URL : https://www.notion.so/

    การใช้งานโปรแกรม Notion มีเครื่องมือการใช้งานที่หลากหลาย มาประยุกต์กับงานต่างๆ ได้ ซึ่งงานที่เอามาใช้มากที่สุดตอนนี้เป็นการบันทึกรายงานการ

    สร้างเป็น Table

    1. สร้างเพจใหม่โดยการคลิก New page
    2. ตั้งชื่อของเพจ
    3. เลือก Table

    เมื่อตั้งชื่อเพจ และสร้าง Table เรียบร้อยแล้ว เราต้องการสร้าง template สำหรับเป็นรูปแบบที่เมื่อมีการบันทึกการประชุมทุกครั้งจะต้องมีหัวข้อนี้เสมอ ลองมาทำกันต่อค่ะ

    1. คลิกปุ่ม “New”
    2. คลิกปุ่ม “New template”

    เริ่มสร้าง template เริ่มจากการตั้งชื่อ template ตัวอย่างใช้ชื่อว่า “Meeting Template”

    1. พื้นที่ส่วนที่ 1 เป็นการจัดเก็บข้อมูลในรูปของตาราง ข้อมูลสามารถมาแสดงเป็นตารางที่สร้างขึ้นได้ ค้นหาได้ เรียงได้ หรือค้นหาได้
    2. พื้นที่ส่วนที่ 2 เป้นการบันทึกรายละเอียด ซึ่งสามารถสร้างรูปแบบที่บันทึกข้อมูลการประชุมที่เราจะสร้าง Template

    สร้างส่วนที่ 1 เป็นการสร้างข้อมุลการประชุม ได้แก่

    1. ชื่อ property
    2. ประเภทของ property ซึ่งมีให้เลือกหลายอย่าง ส่วนนี้อาจจะต้องศึกษาเพิ่มเติม

    เพิ่มข้อมูลวันที่ เลือกประเภทเป็น “Date”

    ส่วนของวันที่จะสามารถตั้งค่าได้ว่า Format ว่าต้องการให้แสดง Month/Day/Year ซึ่งตัวอย่างเราจะเคยชินจึงเลือกใช้เป็น Day/Month/Year

    เพิ่มข้อมูลประเภทการประชุม

    1. ตั้งชื่อประเภทการประชุม
    2. เลือกประเภทเป็น “Select”
    3. ซึ่งสามารถเพิ่มข้อมูลได้ เช่น ประชุมภายใน ประชุมภายนอก เป็นต้น

    เมื่อเราเพิ่มประเภทการประชุมเรียบร้อยแล้ว

    1. สามารถปรับปรุงตามสีสรรที่ต้องการได้

    บันทึกข้อความที่ต้องการสร้าง Template ตามหัวข้อที่เราต้องการ

    1. จัดทำหัวข้อรายงานการประชุม ได้แก่
      • วาระทบทวนการประชุม
      • วาระการประชุม
      • วาระอื่น ๆ (ถ้ามี)
      • เรื่องที่จะติดตามครั้งต่อไป

    มีการจัดทำวาระย่อยๆ ตามวาระการประชุม

    1. สร้างวาระย่อย โดยระบุชื่อวาระ พร้อมมติที่ประชุม

    เมื่อสร้าง Template เรียบร้อยแล้ว

    1. ดำเนินการ Set As default เพื่อให้สร้างเอกสารจะเรียกใช้ Template ให้ทันที

    ดำเนินการยืนยันการตั้งค่า default

    1. เลือก For all views in “บันทึกรายงานการประชุม”

    ตรวจสอบอีกครั้งว่า Template ที่สร้างเป็นค่า default หรือยัง

    1. Template “Meeting Template” มีค่า DEFAULT

    เมื่อต้องการบันทึกรายงานการประชุม

    1. คลิกปุ่ม “New”

    สร้างเอกสารการประชุมใหม่

    1. ตั้งชื่อตาม Template
    2. รายละเอียดการประชุม
    3. Template บันทึกรายงานการประชุม

    หากต้องการแชร์ไฟล์บันทึกการประชุมให้แก่เพื่อน หรือใช้ภายในหน่วยงาน สามารถแชร์ได้

    1. คลิกปุ่ม “Share”
    2. คลิกปุ่ม “Allow duplicate as template”

    วิธีการ Duplicate เพื่อนำ Template จากเพื่อนมาใช้งาน โดยนำลิงก์ที่ได้มาเปิด

    1. คลิกปุ่ม Duplicate
    2. ข้อมูบันทึกรายงานการประชุมก็สามารถใช้ได้ทันที

    หวังว่าวิธีการนี้จะสามารถทำให้การทำงานได้อย่างสะดวกและรวดเร็วขึ้นนะคะ ^^

  • เทคนิคการขยับแถวขึ้นลงใน Table ด้วยวิธี Drag & Drop ใน Blazor

    สำหรับ blog นี้ของผู้เขียน ถือว่าเป็นซีรี่ส์ที่ต่อเนื่องมาจาก https://sysadmin.psu.ac.th/2021/05/25/ขยับแถว-row-ขึ้น-ลง-ใน-asp-net-gridview-ด้วย-j/ และ https://sysadmin.psu.ac.th/2021/05/27/ขยับแถว-row-ขึ้น-ลง-ใน-asp-net-gridview-ด้วย-c/ ก็คือผู้เขียนจะนำเสนอวิธีการขยับแถวอีกวิธีหนึ่ง ที่น่าจะเฟรนด์ลี่ต่อผู้ใช้มากกว่า นั่นก็การ Drag & Drop ก็คือผู้ใช้งานสามารถเลือกคลิก ลาก และวาง เพื่อจัดลำดับได้ตามความต้องการ ซึ่งเมื่อผู้เขียนมาทำงานบน Blazor พบว่าการ implement เรื่องนี้สามารถทำได้ง่ายมาก โดยไม่ต้องพี่งพา javascript แต่อย่างใด เรามาดูกันเลยครับ

    1. เพิ่มโค้ด HTML ในส่วนของการแสดงผลข้อมูลในรูปแบบ Table

    @if (provinces != null)
    {
        <table class="table table-striped" >
            <thead>
                <tr >
                    <th>ลำดับ</th>
                    <th>จังหวัด</th>
                </tr>
            </thead>
            <tbody>
                @foreach (var pr in provinces)
                {
                    <tr role="button" class="cursor-pointer"  >
                        <td>@pr.ID</td>
                        <td>@pr.Name</td>
                    </tr>
                }
            </tbody>
        </table>
    }

    2. เพิ่มโค้ด C# ในส่วนที่ควบคุมการทำงานและจำลองข้อมูล

    private List<Province> provinces = new List<Province>();
    
    protected override void OnInitialized()
    {
    
    	provinces.AddRange(new List<Province> {
    		new Province(1,"สงขลา"),
    		new Province(2,"ปัตตานี"),
    		new Province(3,"ยะลา"),
    		new Province(4,"นราธิวาส"),
    		new Province(5,"สตูล")
    	});
    
    }
    
    public class Province
    {
    	public Int32 ID;
    	public string Name;
    	public Province(int id, string name)
    	{
    		ID = id;
    		Name = name;
    	}
    }

    ซึ่งจะได้ผลลัพธ์หน้าจอดังรูป และเป้าหมายของเราก็คือสามารถคลิกเลือกจังหวัด จากนั้นลากและวางไปยังตำแหน่งที่ต้องการได้

    3. จากนั้นเพิ่มโค้ดส่วนที่ควบคุมการ Drag และ Drop ทั้งใน HTML และ C#

    @if (provinces != null)
    {
        <table class="table table-striped" ondragover="event.preventDefault();">
            <thead>
                <tr >
                    <th>ลำดับ</th>
                    <th>จังหวัด</th>
                </tr>
            </thead>
            <tbody>
                @foreach (var pr in provinces)
                {
                    <tr role="button" class="cursor-pointer" draggable="true"
                @ondrop="@(()=> Drop(pr))" @ondrag="@(e => StartDrag(pr))" >
                        <td>@pr.ID</td>
                        <td>@pr.Name</td>
                    </tr>
                }
            </tbody>
        </table>
    }
    • ondragover=”event.preventDefault();” เป็นการขัดขวางการทำงานปกติของการ drag บน object เพื่อให้สามารถ drop ได้
    • @ondrop=”@(()=> Drop(pr))” เรียกฟังก์ชัน Drop พร้อมกับส่ง pr (จังหวัด) เมื่อมีเหตุการณ์ drop เกิดขึ้น
    • @ondrag=”@(e => StartDrag(pr))” เรียกฟังก์ชัน StartDrage พร้อมกับส่ง pr เมื่อมีเหตุการณ์ drag เกิดขึ้น
    /// <summary>
    /// เก็บตำแหน่งของจังหวัดที่คลิกเลือก เมื่อเริ่ม drag
    /// </summary>
    /// <param name="province"></param>
    private void StartDrag(Province province)
    {
    	currentIndex = GetIndex(province);
    }
    
    /// <summary>
    /// หาตำแหน่งของจังหวัดที่อยู่จาก list
    /// </summary>
    /// <param name="province"></param>
    /// <returns></returns>
    int GetIndex(Province province)
    {
    	return provinces.FindIndex(p => p.ID == province.ID);
    }
    
    /// <summary>
    /// เมื่อ Drop จังหวัดที่ drag มาลงในตำแหน่งที่ต้องการ
    /// </summary>
    /// <param name="province"></param>
    void Drop(Province province)
    {
    	if (province != null)
    	{
    		// หาตำแหน่งของจังหวัดที่ถูก drop
    		var index = GetIndex(province);
    
    		// หาจังหวัดที่ถูก drag มา จาก index ที่เก็บไว้ตั้งแต่เริ่ม drag
    		var current = provinces[currentIndex];
    
    		// ลบจังหวัดที่ถูก drag มา ออกจาก list
    		provinces.RemoveAt(currentIndex);
    
    		// แทรกจังหวัดที่ถูก drag มา ลงในตำแหน่งที่ drop
    		provinces.Insert(index, current);
    
    		StateHasChanged();
    	}
    }

    4. เมื่อทดสอบการทำงาน รายชื่อจังหวัดในตารางจะสามารถคลิก ลาก และวางไปยังตำแหน่งที่ต้องการได้

    5. และเมื่อ drop ลงไปยังตำแหน่งที่ต้องการ จังหวัดที่ลากมาก็จะแทรกเข้าไปยังตำแหน่งที่ drop

    ขั้นตอนถัดไป ท่านผู้อ่านก็แค่ทำการบันทึกตำแหน่งใหม่ของจังหวัดลงในฐานข้อมูลหรือทำอย่างอื่นได้ต่อไป ซึ่งวิธีการนี้เราสามารถนำไปประยุกต์ใช้กับคอมโพเน้นอื่นๆ ได้ เช่น li, div หรืออย่างอื่นที่ผู้ใช้ในการนำเสนอข้อมูลในรูปแบบรายการ

    ผู้เขียนหวังเป็นอย่างยิ่งว่าบทความนี้น่าจะมีประโยชน์ต่อผู้อ่านไม่มากก็น้อย แล้วเจอกันใหม่โอกาสหน้า สวัสดีครับ


    แหล่งข้อมูลอ้างอิง