ผมว่าเทคโนโลยี Barcode ทุกวันนี้ก็ยังใช้งานได้ดีอยู่นะครับ ง่ายและประหยัดดี ถึงแม้จะมีข้อเสียอยู่บ้างในเรื่องของการอ่านข้อมูลและความปลอดภัยของข้อมูล แต่ถ้าเราจัดการดี ๆ ก็ไม่น่าจะมีปัญหาอะไรมากมาย ไม่ไช่ผมไม่ชอบเทคโนโลยีใหม่ ๆ นะครับ แต่อย่าเปลี่ยนดีกว่าจนกว่าเราจะพร้อม

     กลับมาแล้วครับหลังจากหายไปซะนาน... มัวแต่ไปบ้าปลากัดอยู่พักใหญ่(เชื่อผมเหอะทุกคนต้องมีสิ่งที่บ้าเหมือนกันหมดทุกคนเพียงแต่ว่าใครจะบ้าอะไรเท่านั้น) ในที่สุดก็ต้องกลับมาสู่วงเวียนของตัวเองในด้าน IT  เมื่อวันที่ 17 มีนาคม 51 ได้เข้าประชุมคณะกรรมการดำเนินงานสำนักหอสมุด เห็นเจ๊ขวัญ(ขวัญตระกูล) มาพูดถึงเรื่องรหัส Barcode ที่บัตรประจำตัวนักศึกษา ก็เลยนึกขึ้นได้ว่ายังไม่เคยเขียนเรื่อง Barcode ที่เราใช้กันในสำนักหอสมุดเลย

    วันนี้ก็เลยจะมาเขียนเรื่องรหัส Barcode ที่ใช้ในสำนักหอสมุด เริ่มเลยดีกว่า

     รหัสที่ระบบ Innopac ใช้จะมีทั้งหมด 14 หลัก ไม่เชื่อลองไปหยิบหนังสือหรือบัตรประจำเจ้าหน้าที่มานับดูก็ได้  ตัวอย่างเช่น 3 1001 00283617 0 ซึ่งหลักแรกจะเป็นตัวบอกว่าเป็นหนังสือหรือว่าเป็นสมาชิกห้องสมุด ถ้าขึ้นต้นด้วยเลข 3 ก็จะเป็นหนังสือ แต่ถ้าขึ้นต้นด้วยเลข 2 จะเป็นสมาชิกก็พวกนิสิต บุคลากรนั่นแหละ สี่หลักต่อมาจะเป็นตัวแบ่งหน่วยงานหรือวิทยาเขต ที่สำนักหอสมุดของเราจะใช้ 1001 ส่วนที่พะเยาจะใช้ 1002 เป็นต้น อีกแปดหลักต่อมา ถ้าเป็นหนังสือจะใช้การนับเลขเพิ่มไปเรื่อย ๆ ซึ่งกลไกอันนี้ผมก็ไม่ทราบได้เพราะไปจ้างเค้าทำมา ส่วนนิสิตก็จะใช้รหัสประจำตัวนิสิตครับ ส่วนหลักสุดท้าย จะได้มาจากการคำนวณ Modulo 10(Mod-10) ซึ่งเอาไว้เช็ค digit ในระบบ Innopac ซึ่งเดี๋ยวจะอธิบายการคำนวณอีกทีครับ

     สำหรับการคำนวนหาตัวเลข Check digit ทำได้ดังนี้ครับ

     แรกสุดเราจะต้องมีตัวเลขทั้งหมด 13 หลักก่อน คือ 1 หลัก สำหรับ patron(2) หรือ item(3) 4 หลักสำหรับ รหัสมหาวิทยาลัยหรือวิทยาเขต 8 หลักสำหรับรหัสนักศึกษา ตัวอย่างเช่น 3065000870938 เมื่อได้เลข 13 หลักแล้วเราก็จะคำนวนหาผลรวมในหลักคู่ดังรูปครับ

คือดึงเอาค่าในหลักคู่ออกมาบวกกันก็จะได้ค่าจากตัวอย่างคือ 16 แล้วก็เก็บเลขนี้ไว้ก่อนครับ

     ต่อมาก็จะมาหาผลรวมในหลักคี่ซึ่งจะแตกต่างจากหลักคู่คือ เราจะดึงเลขในหลักคี่แล้วเอามาคูณด้วย 2 แล้วเก็บค่าไว้ แต่ก็มีกรณีพิเศษคือถ้าคูณกันแล้วเกิน 10 ก็ให้แยกหลักสิบ กับ หลักหน่วย แล้วนำเอามาบวกกันอีกทีแล้วเก็บค่าไว้ เมื่อหาค่าได้หมดแล้วก็เอาค่าที่เก็บไว้แต่ละตัวนำเอามารวมกัน จากตัวอย่างจะได้ค่า 30 ดังรูปครับ

เมื่อได้ค่าผลรวมของหลักคู่กับหลักคี่แล้วก็นำค่าทั้ง 2 มารวมกันอีกทีคือ 16 + 30 = 46

เสร็จแล้วก็ให้นำค่าหลักหน่วยที่ได้จากผลรวมของทั้ง 2 มาลบ 10 ค่าที่ได้จะคือตัวเลข check digit จากตัวอย่างจะได้ดังนี้ 10 - 6  = 4  แต่มีกรณีพิเศษคือถ้าหลักหน่วยเราเป็น 0 อยู่แล้วเราก็ไม่ต้องนำไปลบ 10 ให้ใช้เลข 0 เป็นเลข check digit ไปเลย

4 คือเลข check digit ของเลข 13 หลักชุดนี้  3065000870938

เมื่อเราเอาไปใช้งานในระบบ Innopac ของห้องสมุดเราก็จะได้รหัส Barcode 14 หลักดังนี้ 30650008709384

สำหรับในการทำบัตรสมาชิกห้องสมุดผมก็ใช้วิธีนี้แหละครับในการคำนวณหาเลข check digitg เมื่อได้เลขแล้วก็นำไปใส่ใน font barcode 3of9 ซึ่งหา download ได้ทั่วไปใน google

โดยใส่รหัส barcode ดังนี้ *30650008709384* ซึ่งเครื่องหมาย * จะแทน start bit และ stop bit สำหรับเครื่องอ่าน barcode เมื่อ print ออกมาเป็นบัตรสมาชิกก็สามารถใช้การได้ดีครับ

*** สำหรับผู้ที่จะลองทำรหัส Barcode เอาไปใช้ในด้านอื่นก็ลองวิธีผมก็ได้นะครับเพี่ยงแค่ ใส่เครื่องหมาย * ปิดหน้าปิดหลังรหัส barcode ที่ต้องการก็ใช้ได้แล้วครับ

ผมว่าเทคโนโลยี Barcode ทุกวันนี้ก็ยังใช้งานได้ดีอยู่นะครับ ง่ายและประหยัดดี ถึงแม้จะมีข้อเสียอยู่บ้างในเรื่องของการอ่านข้อมูลและความปลอดภัยของข้อมูล แต่ถ้าเราจัดการดี ๆ ก็ไม่น่าจะมีปัญหาอะไรมากมาย ไม่ไช่ผมไม่ชอบเทคโนโลยีใหม่ ๆ นะครับ แต่อย่าเปลี่ยนดีกว่าจนกว่าเราจะพร้อม