สมัครสมาชิก
 

จะออกแบบระบบงานแบบนี้ได้ยังไงครับ



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

12 ก.พ. 62 , 21:16:19
อ่าน 663 ครั้ง

bgfc

สมมุติว่า ผมมีความรู้เรื่อง ๆ หนึ่ง เช่น ความรู้เรื่อง "Computer"  ผมก็เริ่มบรรยายว่า
คอมพิวเตอร์ประกอบไปด้วย

Computer
 -Hardware
 -Software

โดยคำว่า "Computer" เป็นระดับบนสุด
และมี "Hardware" , "Software" เป็นระดับถัดลงมา

ต่อมาเมื่อผมเห็นว่า Hardware มีรายละเอียดมากขึ้น ผมก็มาเพิ่ม รายละเอียดเข้าไป ภายใต้ Hardware
Computer
 -Hardware
    - CPU
    - RAM
    - Hard Disk
 -Software
ทุก ๆ ครั้งที่ผมมีรายละเอียดสิ่งใดเพิ่มขึ้น  ผมสามารถเข้ามาเลือกหัวข้อก่อน แล้วคีย์ข้อมูลรายละเอียดเพิ่มเข้าไป เป็นชั้นลึกลงไป ได้เรื่อย ๆ ไม่มีข้อจำกัด  ผมจะออกแบบฐานข้อมูลอย่างไร เช่น ต่อมามีรายละเอียด CPU เพิ่มก็เข้าไป
    - CPU
       - AMD
       - Intel
 
คืองานจริง ๆ ไม่ใช่เรื่องคอมพิวเตอร์ อย่างที่ยกตัวอย่างมา  (เพียงแสดงให้เข้าใจ)

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

หรือคล้าย ๆ กับ การดูข้อมูล Registry ของ Windows นั่นแหล่ะครับ


ผมจะออกแบบ ระบบฐานข้อมูลลักษณะงานแบบนี้อย่างไรครับ   เอาแค่ Concept คร่าว ๆ ก็ได้  เป็น Access ก็ได้ครับ  เดี๋ยวผมคิดต่อเอง ไม่อยากรบกวนมาก  ขอบคุณมาก ๆ ครับ
« แก้ไขครั้งสุดท้าย: 13 ก.พ. 62 , 15:59:48 โดย bgfc »

 

13 ก.พ. 62 , 14:13:43
ตอบกลับ #1

UnKnown

  • ครูผู้ช่วยไท.Access
  • *
  • กระทู้: 53
  • พลังขอบคุณ: 50

  • คิดง่ายๆแนวคนไม่เก่งแอคเซส

    • ดูรายละเอียด

: จะออกแบบระบบงานแบบนี้ได้ยังไงครับ
« ตอบกลับ #1 เมื่อ: 13 ก.พ. 62 , 14:13:43 »
สวัสดีครับ
เริ่มแรกในรูปแบบผมมองออกไปเป็นแนวการเหมือนทำแบบฟอร์มกรอกที่อยู่แล้วใส่รหัสไปรษณีย์ให้อัติโนมัติ ซึ่งก็จะมีการทำเทเบิ้ลเพื่อแยกแต่ล่ะส่วน(tb_geography,tb_province,tb_amphur,tb_district)ใว้ก่อน
ดังนั้นการที่จะมีชั้นลึกเข้าไปอย่างไม่จำกัดคงจะเป็นไปไม่ได้ ยกเว้นว่าจะออกแบบให้มีเทเบิ้ลเปล่ารอใว้ก่อนตามจำนวนที่คิดว่าจะลึกเข้าไปไม่เกินนี้(และโปรแกรมรองรับด้วยอ่านะ)
โดยในแต่ล่ะเทเบิ้ลนั้นก็ต้องมีการอ้างถึงเทเบิ้ลชั้นก่อนหน้าด้วยเช่น ตำบลนี้ อยู่ในอำเภอนี้ จังหวัดนี้ และภูมิภาคนี้ เป็นต้น เท่ากับว่าถ้าข้อมูลลึกลงไป100ชั้น ในเทเบิ้ลชั้นที่100ก็จะมีการผูกว่าเกี่ยวข้องกับใครบ้างในเทเบิ้ลตั้งแต่ 1-99เลย


ที่นี้เมื่อจะมีการเพิ่มข้อมูลลงไป เช่นว่ามีภูมิภาคใหม่ก็ทำฟอร์มลิ้ง tb_geography เพื่อเพิ่มข้อมูลลงไปตรงๆได้เลย
ถ้าจะเพิ่มตำบลล่ะโอเครว่าลิ้ง tb_district แต่ก็ต้องมีการให้ไล่ใส่ข้อมูลมาตั้งแต่ต้นด้วยว่าอยู่ในภูมิภาค->จังหวัด->อำเภออะไร เป็นต้น :shout:
แต่นี้คือมีการระบุ/คิดใว้ล่วงหน้าก่อนแล้วว่าข้อมูลที่จะเพิ่มเข้าไปนั้นอยู่ในชั้นไหนต้องเปิดฟอร์มใดเพื่อมาเพิ่มข้อมูลนั้นๆ หรือจะให้เป็นว่าเมื่อเปิดดูรายการใดๆแล้วให้แสดงรายการย่อยด้านล่างในฟอร์มย่อยแล้วให้สามารถเพิ่มรายการใหม่สดๆลงไปได้เลยลองหาวิธี,หาแนวทางทำดูครับ

ขอจบแนวทางเบื้องต้น(ประสาคนผ่านมาเห็น)ใว้เพียงเท่านี้ครับ :meaw:

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

13 ก.พ. 62 , 16:13:16
ตอบกลับ #2

bgfc

: จะออกแบบระบบงานแบบนี้ได้ยังไงครับ
« ตอบกลับ #2 เมื่อ: 13 ก.พ. 62 , 16:13:16 »
เหตุที่จำกัด ความลึกไม่ได้ ก็เพราะ เจ้าหน้าที่ หรือ พนักงาน  เขาอาจมีความรู้ใหม่ ๆ เกิดขึ้นได้ตลอด   วันนี้เรื่องนี้เขาอาจทราบเพียงเท่านี้  แต่พอวันต่อไป เขาไปพบเรื่องราวใหม่ ที่ดีน่าเก็บไว้ในฐานข้อมูล เพื่อนำใช้เป็นประโยชน์ในวันหลัง  เขาจะเพิ่มเรื่องราวเหล่านั้นเขาไป  อะไรทำนองนี้   

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

 

13 ก.พ. 62 , 17:00:24
ตอบกลับ #3

sjs

: จะออกแบบระบบงานแบบนี้ได้ยังไงครับ
« ตอบกลับ #3 เมื่อ: 13 ก.พ. 62 , 17:00:24 »
ตอนนี้ผมเขียนใช้แบบนี้เรื่องปัญหาการผลิต
ทำข้อมูลหลักแล้วก็ลงย่อยไปจนถึงปัญหา


บันทึกข้อมูลปัญหาและการแก้ไขใส่ตามที่แก้ไปเรื่อย ๆ


รายงานก็ออกแบบไปเรื่อยตามหน้างานต้องการ






 


บอร์ดเรียนรู้ Access สำหรับคนไทย