แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - PNR

หน้า: 1 2 3 [4] 5
55
นี่มันข้อสอบไม่ใช่หรือ !
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

56
ขอเพิ่มเติมจาก อ. OddyWriter หน่อยครับ

อ้างถึง
แนวทางการออกแบบ Databased ที่ผมทำมานี้ เหมาะสมแล้วหรือไม่? ถ้าไม่ ผมควรจะออกแบบอย่างไรเพื่อให้ได้ตามโจทย์ที่ผมต้องการ?
เท่าที่เห็นตอนนี้
- ในระบบมีเทเบิลที่มี 2 ฟิลด์เยอะทีเดียว บางตัวจำเป็นหรือไม่ อย่างเช่นเทเบิล tblBlood ถ้าเป็นผม ผมจะกำหนดตัวเลือกลงในส่วนของ Lookup tab ของฟิลด์ tblContractor.BloodID ไปเลยว่ามีอะไรให้เลือกบ้าง เพราะ 1)กรุ๊ปเลือดตายตัวอยู่แล้ว มีไม่กี่กรุ๊ป (A, A+, A-, ...)  2)ระบบของเราไม่มีความจำเป็นต้องเก็บรายละเอียดอะไรของกรุ๊ปเลือดนั้นอีก เช่น กรุ๊ปนั้นมีแอนติเจ้น A,B,D หรือเปล่า การแยกเทเบิลออกไปในกรณีนี้ เป็นภาระแก่ระบบที่ต้องมาลิงค์ไปยังเทเบิล tblBlood อีกต่างหาก 3)ถ้าตั้งค่า BloodID เป็นอะไรที่ไม่สื่อความหมาย เช่น ตัวเลข ดังนั้นเวลาเปิดดูเทเบิล tblContractor ก็จะต้องมานั่งนึกอีกว่ามันคือเลือดกรุ๊ปอะไรกันแน่ ส่วนเทเบิลอื่นเช่น tblPlant คุณคิดว่าโรงงานจะสร้างเพิ่ม/เปลี่ยนแปลงบ่อยขนาดไหน ถ้าไม่ เมื่อไหร่ที่มีก็ค่อยมาเพิ่มใน Lookup tab ก็ได้
- เข้าใจว่าฟิลด์ xxxID ในทุกเทเบิลจะเป็น Primary Key แต่เราใช้ฟิลด์อื่นๆที่เหมาะสมกว่าเป็น Primary Key ก็ดีกว่าเพราะมัน unique คือมีค่าเดียวไม่ซ้ำกันอยู่แล้ว เช่น tblContractor เราเป็นบุคคลทั้งหมด เราก็ใช้เลขประจำตัวประชาชน (เข้าใจว่าคือฟิลด์ NationalID) มาใช้แทน
- ในความสัมพันธ์ระหว่างเทเบิล (Database Tools - Relationships) ดูความเหมาะสมว่าควรกำหนด Referential Integrity, Cascade Update, Cascade Delete ด้วยหรือไม่  (ส่วนมากผมกำหนด Referential Integrity)

อ้างถึง
Subform โดยให้เป็น Unbound SubForm
- ไม่รู้ว่าทำไมกำหนดเป็น Unbound  ถ้าจะเป็น Unbound ซึ่งเราต้องควบคุมการเขียนลงเทเบิลอื่นๆอีกที ก็ย้ายเท็กซ์บ็อกซ์และคอนโทรลต่างๆใน Unbound SubForm มาไว้บน MainForm แล้วตีกรอบเพื่อแสดงเป็นนัยว่าเป็นข้อมูลที่แยกต่างหากจาก Session ไปเลยน่าจะดูเรียบง่ายกว่า หรือจะนำมาใส่ใน Tab control บน MainForm อีกที ก็สื่อเป็นหมวดหมู่ดี

อ้างถึง
ซึ่งผมเขียน Expression ที่ txtWorkID โดยเมื่อ Dropdown เลือก NationalID เมื่อไหร่ ระบบจะไปดึง Last WorkID ของพนง.คนนั้น ๆ มาจากtblWork(Transaction Table) มาโชว์ / เกิด Error ใน Subform
- ต้องเอาโค้ดที่ทำการดึงและแปะลงฟิลด์ที่เกิด #Error นั้นมาดูครับ

อ้างถึง
การทำแบบฟอร์มเพื่อคีย์หลักสูตรที่แต่ละตำแหน่งต้องอบรมให้ครบตามกฎหมาย
- ก็ต้องมีเทเบิลหลักสูตร (tbSubject หรือเปล่า ?) ,เทเบิลตำแหน่ง (อันนี้ผมไม่รู้เทเบิลไหน สมมุติชื่อ tbP หรือเป็นแค่ฟิลด์ในเทเบิล tbWork ? สมมุติชื่อฟิลด์ F) และสร้างเทเบิลหลักสูตรที่ต้องอบรม (สมมุติชื่อ tbC) ที่มีทั้งฟิลด์ Primary Key ของเทเบิลหลักสูตรและ Primary Key ของเทเบิลตำแหน่ง(หรือแค่ฟิลด์ F ถ้าคุณไม่ได้มีเทเบิลตำแหน่งแยกออกมาต่างหาก) มานำมาตั้งเป็น Primary Key ของ tbC ดังนั้นคุณก็สร้างฟอร์มที่มี Mainform เป็น tbP และมี Subform เป็น tbC เพื่อป้อนหลักสูตรที่ต้องอบรมตามกฎหมายได้แล้ว

หมายเหตุ : Database ไม่ต้องใส่ d ต่อท้ายครับ
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

57
ข้อแนะนำมี 2 ข้อ เท่าที่ผมเห็นจากรูป
1. ควรทำ Normalization อย่างต่ำให้ได้ 3NF
2. ควรแยกตาราง "ข้อมูลส่วนบุคคล" ออกจาก tblWork ครับ ตารางใหญ่เกินไป จัดการยาก
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

58
แนะนำว่าก่อนอื่นคุณต้องเขียนเงื่อนไขออกมาให้หมดก่อนครับ เพราะการทำสาแหรกตระกูลน่ะ เป็นเรื่องที่ยุ่งมากเคยรับมา 2 งาน ราคาหลักหมื่นยังไม่คุ้มกับงานที่ทำเลยครับ (บ่นเฉยๆ)

เงื่อนไขที่ว่าเช่น

1. ข้อมูลย้อนหลังสายตระกูลไปถึงไหน
2. ความสัมพันธ์ (ต้องไม่มีสระอุ) เป็นแบบ 1:1 หรือ 1:M (สามีมีภรรยาได้หลายคนหรือไม่)
3. ข้อมูลจะมี 2 ส่วนที่เกี่ยวข้องกันคือ สายตระกูล และข้อมูลส่วนบุคคล ดังนั้นให้แยกเรื่องสายตระกูลเป็นหลักก่อน ส่วนที่อยู่น่ะค่อยใส่เข้าไปภายหลังได้
4. เห็นว่ามีใส่เรื่อง "เลขที่บัตร ปชช." แน่ใจหรือเปล่าครับ ว่าจะใส่ข้อมูลส่วนนี้ เพราะปัญหาตรงนี้เยอะมากนะขอบอก ดังนั้นกำหนด ID บุคคลแทนจะดีกว่า
5. เรื่องความย้อนแย้งที่คุณว่าน่ะ จะสร้างปัญหาเมื่อสายตระกูลใหญ่มากๆ ได้ เพราะอาจเกิดกรณี หลานชั้น 3 ของตระกูล มาแต่งงานกับเหลนชั้น 4 ของตระกูลแต่คนละสายได้ ดังนั้นถ้าวางระบบเป็น Layer โดยไม่ต้องสนใจเงื่อนไขพวกนี้จะดีกว่า เพราะเรื่องนี้เป็นการบันทึกความจริง ซึ่งความจริงก็จะมีเงื่อนไขแบบนี้อยู่ในตัวอยู่แล้ว
6. มองหาแกนหลักของตระกูล เช่น จากต้นตระกูล > รุ่นที่ 2 ที่เป็นลูกของต้นตระกูล พวกสามี/ภรรยา ก็ใช้เป็นข้อมูลรองของรุ่น 2 (เหมือนกับการเพิ่มข้อมูลเบอร์โทรอะไรงี้)
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

59
สรุปรายงานวันนี้ก่อนนะครับ
1. คุณ Pookpuy สั่งหนังสือ ความทรงจำสีแดง ราคา 100 บาท (+ค่าส่ง 30 บาท) ส่งหนังสือให้แล้ว
2. คุณ PNR บริจาค 1,070 โอนแล้ว
3. คุณ Apirak สั่งหนังสือ Access 2010 Missing Manual ราคา 600 (+ค่าส่งลงทะเบียน 65 บาท) รับโอนเรียบร้อย ส่งแล้ว
4. คุณ Jee007 บริจาค 500 โอนแล้ว
5. คุณ Chai บริจาค 500 โอนแล้ว
6. คุณ Prajak บริจาค 200 โอนแล้ว
7. คุณ Looktarn สั่ง Excel เร็วเว่อร์ 299 (+ค่าส่ง 30) โอนแล้ว

ยอดรวม 3,269 บาท

เดี๋ยวจะโอนให้ Web Master ต่อไป โดยจากที่คุยกับเว็บมาสเตอร์คือ เมื่อจ่ายค่า Host+Domain จะแจ้งที่หน้าเว็บครับ

ขอบคุณทุกท่านที่ให้ความช่วยเหลือเว็บนี้ครับ

ปล. แก้ไขยอดโอนคุณ PNR และคุณ Looktarn

ได้รับเงินสนับสนุนจำนวน 3,269 บาทเป็นที่เรียบร้อย ขอขอบคุณทุกท่านมากๆเลยนะครับ :love:
กระผมจะดูแลรักษาเว็บนี้ให้ดีที่สุดเลยครับ :yuush:

  ค่าเช่าโฮส   
  ค่าโดเมน 
  คงเหลือ 
ยอดเงินสนับสนุน
  3,269 
  62-63    642.-    400.-    2,227 
  63-64    535.-    300.-   1,392 
  64-65    535.-    300.-   557 
  65-66    ...    357.-    200  โฮสโดน Ransomware
  66-67    535.-    385.25    --- 
  67-68    ...    522.11    --- 
  68-69    ...    ...    --- 

#ตัดรอบโฮส ก.ย.(เดือน9)
#ตัดรอบโดเมน ก.พ.(เดือน2)

ปล.ขอปิดการโพสกระทู้ใว้เพียงเท่านี้นะครับผม :cool:


รายงานประจำปี 63-64 ได้รับคำขอบคุณจาก: chai, sjs, OddyWriter, PNR
รายงานประจำปี 64-65 ได้รับคำขอบคุณจาก: chai, OddyWriter, apirak, Max
: OddyWriter, Su, SakDa, apirak
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

60
สรุปรายงานวันนี้ก่อนนะครับ
1. คุณ Pookpuy สั่งหนังสือ ความทรงจำสีแดง ราคา 100 บาท (+ค่าส่ง 30 บาท) ส่งหนังสือให้แล้ว
2. คุณ PNR บริจาค 1,070 โอนแล้ว
3. คุณ Apirak สั่งหนังสือ Access 2010 Missing Manual ราคา 600 (+ค่าส่งลงทะเบียน 65 บาท) รับโอนเรียบร้อย ส่งแล้ว
4. คุณ Jee007 บริจาค 500 โอนแล้ว
5. คุณ Chai บริจาค 500 โอนแล้ว
6. คุณ Prajak บริจาค 200 โอนแล้ว
7. คุณ Looktarn สั่ง Excel เร็วเว่อร์ 299 (+ค่าส่ง 30) โอนแล้ว

ยอดรวม 3,269 บาท

เดี๋ยวจะโอนให้ Web Master ต่อไป โดยจากที่คุยกับเว็บมาสเตอร์คือ เมื่อจ่ายค่า Host+Domain จะแจ้งที่หน้าเว็บครับ

ขอบคุณทุกท่านที่ให้ความช่วยเหลือเว็บนี้ครับ

ปล. แก้ไขยอดโอนคุณ PNR และคุณ Looktarn
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

61
สนใจ
ใช้งาน Excel 2016 ให้เร็วเว่อร์ 299 บาท 1 เล่มคะ
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

62
ขอแทรกหน่อยครับ ดูแล้วเหมือนว่า TerminatedDate จะขึ้นกับ Contractor เพียงอย่างเดียว ไม่ได้ขึ้นกับ WorkID เลย ดังนั้น TerminatedDate ควรไปอยู่ในเทเบิลของ Contractor มากกว่าหรือไม่
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

63
ช่วยบริจาค 500 ครับ ส่งเลขบัญชีมาได้เลยครับ
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

64
ขอมีส่วนร่วมด้วยครับ...ผมขอซื้อ Access 2010 The Missing Manual 1 เล่มครับ...ขอบคุณครับ
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

65
ขอจอง 2. ความทรงจำสีแดง 100 บาท ครับผม :love:
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

66
ยังไม่หมดครับ





Super Easy Excel 220 บาท
ใช้งาน Excel 2016 ให้เร็วเว่อร์ 299 บาท
จัดการฐานข้อมูลด้วย Excel 450 บาท
Access 2010 The Missing Manual 600 บาท

โพสต์นี้ได้รับคำขอบคุณจาก: PNR

67
เปิดมุมมองออกแบบแล้วกำหนด Format ให้ฟิลด์นี้ที่ Property Sheet ทางขวา
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

68
โดยปกตินั้นเราจะใช้ Query ในการเชื่อมหรือผูกชุดข้อมูลถึงกันเช่น เราเชื่อมรหัสลูกค้าจากใบสั่งซื้อ --> รหัสลูกค้าจากบัญชีรายชื่อ ก็จะได้ข้อมูลเป็นเลขที่ใบสั่งซื้อ,ชื่อ-ที่อยู่ผู้ซื้อ,ราคา,ฯลฯ เป็นต้น(ข้อมูลต่อกันในแนวนอน)

กลับไปที่หัวข้อการใช้ UNION Query นั้นจะเป็นการนำข้อมูลมารวมต่อกันในแนวตั้งลงมาตัวอย่างเช่น เราอยากรู้ว่าทัั้งรายชื่อผู้ขาย(เซล),รายชื่อผู้ซื้อ(ลูกค้า),รายชื่อติดต่ออื่นๆนั้นมีใครบ้างนั้นเราก็ใช้ UNION Query จับมารวมกัน หรือถ้าอย่างผมมีตารางเก็บใบสั่งซื้อแยกปีแต่อยากรู้ว่าตั้งแต่ปี 59,60,61,62 ถ้ารวมกันแล้วมีค่าเท่าไหร่ หรือมากรองว่าลูกค้าคนนี้ทั้งหมดแล้วซื้ออะไรไปบ้างทั้งที่ข้อมูลอยู่คนล่ะตารางกันเป็นต้นครับ

อธิบายมาซะยาวมาถึงวิธีการนำไปใช้งานนั้นสามารถชมคลิปตัวอย่างจากทาง microsoft ได้เลยครับผม -->Watch an example of building a union query


ที่มา Use a union query to combine multiple queries into a single result
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

69
ใครเคยใช้ไหม เป็นยังไงบ้าง https://ultraviewer.net/en/
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

70
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

71
เว็บบอร์ดวันนี้มีการเพิ่มปุ่ม ตอบกระทู้ ให้กดกันง่ายขึ้นครับ(ข้างๆปุ่ม"อ้างถึง" :sweat:)
ปล.แผ่นป้ายช่วยลงไปกดกันสักหนึ่งทีพอครับ :love:
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

72
คือเป็นการคำนวณ Stock ที่มีหน่วยของสินค้าที่ต่างกันค่ะ มีการรับเข้าเป็นลัง,ชิ้น,ห่อ ซึ่งต้องการให้ในหน้า Balance ที่คำนวณออกมานั้นคำนวณข้อมูลทั้งสามอย่างพร้อมกัน
คือสามารถดูในตารางเดียวกัน เพราะปกติแยกคิวรี่แล้วสามารถคำนวณได้ปกติ แต่พอนำมารวมกันเพื่อแสดงผล 3 หน่วยในตารางเดียวกันเกิดปัญหาดังภาพที่ใส่ไว้ที่กระทู้ค่ะ

ดูจากภาพแล้วไม่เห็นปัญหาครับ ปัญหาอยู่ตรงไหน ชี้กันชัดๆ หน่อย
โพสต์นี้ได้รับคำขอบคุณจาก: PNR

หน้า: 1 2 3 [4] 5