Wednesday, December 12, 2012

10:51 PM
สวัสดีครับ

คราวนี้ผมจะมาว่าด้วยรายละเอียดและข้อจำกัดของ Field Type หรือ ชนิดของข้อมูลใน FileMaker Pro นะครับ เพื่อให้เราได้รู้ข้อจำกัดของโปรแกรมก่อน จะได้รู้ว่าอันไหน ควรทำหรือไม่ควรทำ

อย่างแรกเลย Filed Type ใน Filemaker Pro นั้น มีอยู่ด้วยกัน 8 ชนิด แต่ละชนิดทำอะไรได้บ้าง เรามาดูกันเป็นตัวๆเลย

Text : ชนิดข้อมูลแบบนี้ สามารถเก็บข้อมูลได้ทุกอักขระ หมายความว่าจะเป็นตัวเลขหรือตัวหนังสือ เครื่องหมายประหลาดๆ พี่แกจะเก็บเรียบหมด และว่ากันว่า สามารถเก็บได้ถึง 2 GB ต่อ Field เลยนะครับ โดย 1 ตัวอักขระที่มันเก็บจะใช้เนื้อที่ 2 Bytes ครับ ( Bit และ Byte ลืมหรือยังเอ่ย ? 1 byte มี 8 bit นะครับ ) ดังนั้น ถ้าท่านจะพิมพ์ให้เต็ม 2 GB ก็คิดเองแล้วกันว่าต้องพิมพ์กี่อักขระหน่ะ.. แค่คิดยังเหนื่อยเลย (ประมานพันล้านอักขระหน่ะ)

Number : ชื่อก็บอกอยู่แล้ว ว่าเก็บข้อมูลตัวเลขแหงๆ แต่ค่าที่เป็นไปได้ในการเก็บหล่ะ ตั้งแต่ FileMaker version 8 เป็นต้นมา Field Number สามารถเก็บข้อมูลได้ ตั้งแต่ 10 ยกกำลัง -400 ถึง 10 ยกกำลัง 400 และ -10 ยกกำลัง -400 ถึง -10 ยกกำลัง -400 และก็เลข 0 ( เป็นไงหล่ะ ผมยังมึนเลย) ไอ้ field number นี่ ถ้าเราเผลอพิมพ์ตัวอักษรเข้าไป มันก็รับนะ แต่มันไม่สนเลยแหละ หากมีการคำนวณ มันก็ข้ามๆตัวอักษรไปเสีย แล้วเอาชุดตัวเลขที่ปรากฏมาทำการคำนวณนะ

Date : มันก็คือ วันที่ นะ แต่เป็นมาตราฐานของฝรั่งเขา นั่นก็คือคิดเป็น คริตศักราช แทน ถ้าต้องการคิดเป็น พุทธศักราช ก็ให้บวกด้วย 543 ปีนะ เพราะพุทธศาสนาเกิดก่อนคริสศาสนาอยู่ 543 ปีหน่ะ ค่าที่เป็นไปได้ใน filed date นี้ ก็มีตั้งแต่ 1/1/0001 (1 มกราคม 0001) - 12/31/4000 (31 ธันวาคม 4000 - อยู่ถึงไหมนั่น ?) ซึ่งเราสามารถเอาตัวเลขจำนวนเต็ม (เท่านั้น) เข้ากระทำกับ filed date โดยตรง เช่น 12/12/2012 + 1 ก็จะ = 12/13/2012 หรือบวกไปข้างหน้า 1 วันได้เลย หรือจะเปลี่ยน คศ เป็น พศ ก็ 1/1/2012 + 543 = 1/1/2555 ไง

Time : เรื่องของเวลา สามารถรับค่า ได้ตั้งแต่ 1 วินาที ถึง 86400 วินาทีแต่ format ที่ใช้งานจะต้องเป็น hh:mm:ss โดยจะไม่สามารถใช้จำนวนเต็มมากระทำกับ field time ได้ หมายความว่า ถ้าต้องการเอาเวลาลบหรือบวกกัน ต้องอยู่ใน format ของเวลาเท่านั้น เช่น 1:0:0 + 1:30:0 = 2:30:0 อะไรประมาณนี้ แต่การคำนวณเบื้องหลังซับซ้อนกว่านี้เยอะ เพราะเลขนาที มันมีค่าเต็มที่ 60 ส่วนเลขวินาที มันกลับเป็น 100 ใครคิดวะเนี่ย ?

Timestamp : ชนิดข้อมูลนี้ เป็นชนิดข้อมูลเดียวที่ผมใช้งานน้อยที่สุด ส่วนใหญ่ใช้งานในการเก็บ Log ว่ามีการดำเนินการอะไรวันเวลาไหนบ้าง ค่าที่เป็นไปได้ของมันคือ 1/1/0001 00:00:00 ถึง 12/31/4000 11:59:59.999999 ส่วนการบวกลบนั้น timestamp ต้องกระทำกับ timestamp เท่านั้น เอามันไปกระทำกับขนิดข้อมูลแบบอื่นไม่ได้เลย

Container : เป็นชนิด field ที่เก็บข้อมูลที่เป็น Binary เท่านั้น แล้วมันคืออะไรหล่ะ ข้อมูล Binary ส่วนใหญ่จะถูกใช้งานในการเก็บรูป หนัง เพลงและก็ file ที่ถูกสร้างจากโปรแกรมที่เรียกใช้งาน Binary ว่าแต่อย่าถามผมเลย ลึกๆแล้วผมไม่รู้หรอก ใครสงสัยก็ไปหาอ่านก็แล้วกันครับ ข้อจำกัดที่เขาระบุมาคือ 1 field container นั้น เก็บขนาด file สูงสุด 4 GB แน่ะ แต่อย่าไปใส่นะ โปรแกรมทำงานโครตช้าเลยหล่ะ  การเก็บข้อมูลนั้นทำได้ 2 แบบคือ Load  file เข้าสู่ field โดยตรงเลยหรือ แค่บอกว่า FileMaker Pro ว่า ไอ้ file ที่ต้องการเก็บมันอยู่ path นี้ ให้จำตำแหน่งที่ file มันอยู่เอาไว้ แล้วอย่าเผลอไปย้ายหรือลบ file เชีนวนะ ถ้าขนาด file ที่ต้องการเก็บไม่ใหญ่มาก ก็แนะนำให้ Load เข้า Filemaker ไปเลย

Calculation : หรือชนิดข้อมูลที่ต้องมีการคำนวณก่อน จึงจะให้ผลลัพธ์ออกมา ซึ่งสูตรการคำนวณนั้น ก็แล้วแต่ท่านจะจินตนาการนะครับ เช่น filed 1 เป็น number  แล้ว field 2 ก็เป็น number  หากเราสร้าง field 3 ให้มีสูตรว่า field 1 + field 2 แล้วถ้า มีการเติมข้อมูลลงไปใน field 1 และ filed 2  เราก็จะได้ผลลัพธ์ออกมาใน field ที่ 3 โดยอัตโนมัติเลย

Summary : ชนิดข้อมูลแบบ Summary เอาไว้หาผลรวมโดยเฉพาะ จริงๆแล้วก็เหมือนชนิดข้อมูล Calculation นั่นแหละ แต่เขามีการใส่การคำนวณที่ซับซ้อนเอาไว้ สำหรับเรื่องการหาผลรวมโดยเฉพาะ ทำให้เราไม่ต้องเขียนสูตรเอง เอามาใช้ได้เลย

หลักๆ ก็มีเท่านี้แหละครับ สำหรับ Data Type ใน Filemaker Pro ส่วนการใช้งานจริงจะเป็นแบบไหน ก็จะขอว่ากันต่อไปในอนาคตกาลนะครับ




บทความอื่นๆ