กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
309 3
URL.หัวข้อ /
URL
Link
เรียน อาจารย์
ผมมีเรื่องร้อนใจครับ คือผมพยายามสร้างโปรแกรมเล็ก ๆ ด้วย MS Access 2000 เพื่อขายสินค้าเล็ก ๆ น้อยของผม ขายแบบธุรกิจขายตรง มสมาชิกหลาย ๆ ชั้นนะครับ ก็พยายามมานานแล้วครับ พอดีเข้าเน็ตเพื่อนให้อีเมลล์อาจารย์มาครับ ก็อยากเรียนถามดังนี้ครับ
ผมพยายามสร้างให้ สมาชิกตั้งต้น (แม่) กับ สมาชิกที่มีคนอื่นแนะนำมา (ลูก) สามารถลิงคื และ แสดงผลในฟอร์มเดียวกันได้ครับ แต่พอจะเป็น ระดับต่อไป (หลาน) ผมไม่สามารถทำได้แล้วครับ
ผมควรทำอย่างไรดีครับ
ด้วยความเคารพ
พจน
ผมมีเรื่องร้อนใจครับ คือผมพยายามสร้างโปรแกรมเล็ก ๆ ด้วย MS Access 2000 เพื่อขายสินค้าเล็ก ๆ น้อยของผม ขายแบบธุรกิจขายตรง มสมาชิกหลาย ๆ ชั้นนะครับ ก็พยายามมานานแล้วครับ พอดีเข้าเน็ตเพื่อนให้อีเมลล์อาจารย์มาครับ ก็อยากเรียนถามดังนี้ครับ
ผมพยายามสร้างให้ สมาชิกตั้งต้น (แม่) กับ สมาชิกที่มีคนอื่นแนะนำมา (ลูก) สามารถลิงคื และ แสดงผลในฟอร์มเดียวกันได้ครับ แต่พอจะเป็น ระดับต่อไป (หลาน) ผมไม่สามารถทำได้แล้วครับ
ผมควรทำอย่างไรดีครับ
ด้วยความเคารพ
พจน
3 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R00330
ไม่ทราบว่าออกแบบตารางต่างๆ ไว้อย่างไรบ้างครับ ขอทราบรายละเอียดด้วย จะได้แนะนำได้ตรงกับที่ทำไว้แล้วครับ เช่น มีกี่ตาราง และมีฟีลด์ไหนเชื่อมต่อกันอย่างไรบ้าง
2 @R00340
ตารางเดียวเลยครับ ตารางชื่อ
Table:Member บรรจุข้อมูลของสมาชิกโดย มีฟิลด์หลัก ๆ ดังนี้
ID
Reference
Name
Lastname
ทีนี้ แต่ละคนก็มี ID เป็นของตัวเอง และก็มีรหัสผู้แนะนำ Reference ด้วย
ผมอยากจะแสดงข้อมูลของคน ๆ เดียวที่หน้าฟอร์ม แล้ว ปรากฏรายชื่อกลุ่มคน ที่คนนี้แนะนำมาทั้งหมด ในหน้าฟอร์มนั้น พยายามอยู่หลายรอบ ก็สามารถทำได้แค่ ระดับเดียว เท่านั้น
พอจะดูลงไปว่า ในแต่ละคนแนะนำใครมา ให้ลึกลงไปอีก ก็ทำไม่เป็นแล้วครับ
ขอบคุณมากครับที่กรุณาสละเวลาตอบ อย่างไรคุณสุภาพ ฝากอีเมลล์ไว้นะครับผมจะได้ส่งตัวอย่างไปให้ดูครับ
ขอบคุณมาก
พจน์
3 @R00341
ถ้าใช้แค่ตารางเดียวก็คงต้องทำ Sub Form โดยต้องคลิกที่ ID ของคนๆ นั้น แล้วให้แสดงรายชื่อของคนที่อยู่ในกลุ่มเดียวกับ ID นี้ใน Sub Form ถ้าต้องการที่จะดูสมาชิกในกลุ่มของ ID ใน Sub Form ก็ต้องมี Sub Form ที่ 2 อีก ดังนี้
ID ---- Ref ---- FirstName ---- LastName
001---- 0 ----- นายก ----- ยอดเยี่ยม
002 ----001 ---- นายข ----- ขยันยิ่ง
003 ---- 001 ---- นาย ค ---- คนดี
004 ---002 ---- นายง ---- งกเงิน
005 ---- 002 นายจ ---- จริงจัง
สร้าง Form ที่ 1 ขึ้นมา โดยให้สร้าง Query จากตารางข้างต้นขึ้นมา แล้วตั้ง Criteria ให้ Ref = 0 หมายถึงสมาชิกเริ่มต้น ให้ชื่อฟอร์มว่า frmMembers และ Text Box ที่ใช้อ้างอิงจะใช้ ID
ตารางนี้ก็จะมีแค่นายก คนเดียว
โดยจะต้องเขียนโค้ดในช่องของ ID ให้เป็น On Click ดังนี้
Private Sub ID_OnClick()
Me.SubForm1.Requery
End Sub
จากนั้นให้สร้างอีก query ขึ้นมา โดยเลือกทุกฟีลด์ในตารางสมาชิกเหมือน Form ที่ 1 แต่ให้ตั้งเงื่อนไข Ref <>0 และ Ref = Forms!frmMembers!ID
แล้วสร้าง Sub Form 1 จาก Query นี้
เมื่อสร้างเสร็จให้ลากฟอร์มนี้ไปเป็น Sub Form ของ Form ที่ 1 โดยตั้งชื่อให้เป็น SubForm1
ฉะนั้นเมื่อคลิกที่ ID ของนายก ใน SubForm1 จะต้องแสดงชื่อของนายข และนายค เท่านั้น
ถ้าต้องการอันดับต่อไป ก็ต้องใช้ Sub Form เข้าไปช่วยอีก หรือจะเปิดฟอร์มใหม่ขึ้นมา แล้วให้แสดงเฉพาะรายชื่อผู้ที่อยู่ในกลุ่มนั้นก็ได้ ซึ่งจะดีกว่าการใช้ Sub Form ซึ่งอาจจะไม่มีที่สิ้นสุด
ลองดูครับ
Time: 0.1300s