การแสดงข้อมูลใน Subform ใน MS Access



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

28 เม.ย. 63 , 15:36:57
อ่าน 206 ครั้ง

mtaccess

การแสดงข้อมูลใน Subform ใน MS Access
« เมื่อ: 28 เม.ย. 63 , 15:36:57 »
ออกแบบหน้าจอที่ MS Access เชื่อมต่อโดยลิงค์ Database SQL Server ค่ะ
ต้องการล็อกอินด้วย ชื่อผู้ใช้ รหัสผ่าน ฝ่าย และสาขาที่เลือก เช่นเลือกฝ่าย FFF เลือกสาขา Bangkok
อยากจะให้ข้อมูลที่อยู่ในฝ่ายและสาขาที่เราเลือกล็อกอินมาแสดงในหน้า Subform ค่ะ รบกวนแนะนำด้วยค่ะ ตอนนี้ติดปัญหาเวลาล็อกอินเข้ามาแล้วข้อมูลไม่แสดงใน Subform เลย เมื่อใส่เงื่อนไขเข้าไปใน Query แล้ว

หน้าล็อกอิน


หน้าแสดงผลข้อมูลหลังจากล็อกอินเข้ามาค่ะ


ฟิลด์ที่ใช้เก็บข้อมูลใน SQL Server


ฟิลด์ที่ใช้เก็บข้อมูลใน SQL Server

 

28 เม.ย. 63 , 16:01:49
ตอบกลับ #1

PNR

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #1 เมื่อ: 28 เม.ย. 63 , 16:01:49 »
อ่อ เป็น varchar หรือครับที่มันไม่ยอมแสดงเพราะ Join Table Field number กับ text มันเลยไม่แสดง
เดี่ยวพรุ่งนี้ผมแก้ตัวอย่างให้นะ
:meaw: :grin: :shout:
 
โพสต์นี้ได้รับคำขอบคุณจาก: mtaccess

28 เม.ย. 63 , 17:13:44
ตอบกลับ #2

mtaccess

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #2 เมื่อ: 28 เม.ย. 63 , 17:13:44 »
อ่อ เป็น varchar หรือครับที่มันไม่ยอมแสดงเพราะ Join Table Field number กับ text มันเลยไม่แสดง
เดี่ยวพรุ่งนี้ผมแก้ตัวอย่างให้นะ
nvarchar ค่ะ Export Database จาก MS Access ไปเป็น SQL Server ได้ type ตามนี้เลยค่ะ เลยแก้ไขอะไรไม่ได้แล้ว เพราะข้อมูลของเดิมมีเป็นหมื่น Record แล้วนะคะ รบกวนด้วยนะคะ ถ้าได้ตัวนี้ แก้ไขได้อีกหลายหน้าเลยค่ะ

 

29 เม.ย. 63 , 08:52:25
ตอบกลับ #3

PNR

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #3 เมื่อ: 29 เม.ย. 63 , 08:52:25 »
ลองดูครับแก้การ Join เป็น text แล้ว
ส่วนที่ต้องแก้คือ จำนวนคอลัมน์  ของ  comboDivision และ comboLocation จาก 2 แก้เป็น 1
ความกว้างคอลัมน์ จาก 0ซม.;5ซม. แก้เป็น 5ซม.



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

29 เม.ย. 63 , 13:24:19
ตอบกลับ #4

mtaccess

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #4 เมื่อ: 29 เม.ย. 63 , 13:24:19 »
ลองดูครับแก้การ Join เป็น text แล้ว
ส่วนที่ต้องแก้คือ จำนวนคอลัมน์  ของ  comboDivision และ comboLocation จาก 2 แก้เป็น 1
ความกว้างคอลัมน์ จาก 0ซม.;5ซม. แก้เป็น 5ซม.

ติดตรงนี้ค่ะ Database ที่ใช้งานจริงเป็น SQL Server นะคะ ไม่ได้ใช้ MS Access

 

29 เม.ย. 63 , 13:28:15
ตอบกลับ #5

PNR

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #5 เมื่อ: 29 เม.ย. 63 , 13:28:15 »
คงต้องรีโมทไปดูหน่อยแล้วครับ
Anydesk ไปเช็คได้ไหม
 :sweat: :sweat:
:meaw: :grin: :shout:
 
โพสต์นี้ได้รับคำขอบคุณจาก: mtaccess

29 เม.ย. 63 , 13:40:01
ตอบกลับ #6

PNR

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #6 เมื่อ: 29 เม.ย. 63 , 13:40:01 »
พอดีผมไม่มี SQL เทสที่เครื่อง แต่ถ้าเราใช้การแปลง เป็น Cstr ในกรณีเป็นข้อความ หรือพวก Cint  กรณีเป็นตัวเลข ก่อนนำไป Join กันว่าจะช่วยได้ไหม เช่น

โค๊ด: [Select]
SELECT Employee.ID, Employee.EmployeeCode, Employee.EmployeeName, CStr([EmployeeDivision]) AS EmployeeDivision1, CStr([EmployeeLocation]) AS EmployeeLocation1 FROM Employee WHERE (((CStr([EmployeeDivision]))=[forms]![Form1]![comboDivision]) AND ((CStr([EmployeeLocation]))=[forms]![Form1]![comboLocation]));
โดยในซัพฟอร์ม ตรงControlSource ใส่ EmployeeLocation1 กับ EmployeeDivision1 แทน
:meaw: :grin: :shout:
 
โพสต์นี้ได้รับคำขอบคุณจาก: mtaccess

29 เม.ย. 63 , 13:43:28
ตอบกลับ #7

mtaccess

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #7 เมื่อ: 29 เม.ย. 63 , 13:43:28 »
คงต้องรีโมทไปดูหน่อยแล้วครับ
Anydesk ไปเช็คได้ไหม
 :sweat: :sweat:

ทำได้แล้วค่ะ พอดี Export Database type ที่อยู่ใน MS Access ไปเป็น SQL Server type เปลี่ยนไปหมดค่ะ ลองไปนั่งตรวจสอบและแก้ไข type ตอนนี้ล็อกอินมาแล้วได้ตามที่ต้องการแล้วค่ะ ขอบคุณมากๆนะคะ

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

29 เม.ย. 63 , 13:47:26
ตอบกลับ #8

PNR

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #8 เมื่อ: 29 เม.ย. 63 , 13:47:26 »
อันนี้ต้องขอความรู้จากอาจารย์สันติสุข
แต่ถ้าได้แล้วก็ดีเลยครับ
 :shout: :shout:
« แก้ไขครั้งสุดท้าย: 29 เม.ย. 63 , 13:52:32 โดย PNR »
:meaw: :grin: :shout:
 
โพสต์นี้ได้รับคำขอบคุณจาก: mtaccess

30 เม.ย. 63 , 12:04:56
ตอบกลับ #9

Kxess

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #9 เมื่อ: 30 เม.ย. 63 , 12:04:56 »
มาช้าไป เล่าให้ฟังแล้วกันนะครับ
ผมเพิ่งย้ายจาก ms access ไปใช้ sql server ใช้อยู่ซักพัก แล้วเปลี่ยนไปใช้ mysql เมื่อไม่นานมานี้ เพราะ online สะดวกกว่า ผมพบว่า sql server ค่อนข้างหนัก และช้า ขนาดผ่าน lan ยังช้ากว่า mysql ที่ออนไลน์

จากที่ได้ลองใช้ sql server อยู่ซักพัก
ต้องระวังคือ ทุกตารางต้องมี pk หลังจากการ export ไป sqlserver pk จะหาย
ชนิดข้อมูลก็จะถูกแปลง ซึ่งบางชนิดมันไม่ตรงกับที่เราต้องการ ต้องตรวจสอบและเปลี่ยนใหม่ เช่นพวก autonumber / yesno / currency
- join ต้องเป็นชนิดข้อมูลเดียวกัน ตัวเลขก็ต้องตัวเลข (ควรใช้เป็นตัวเลข เป็น text ไม่แนะนำ)
- type mismatch ส่วนใหญ่คือ ชนิดข้อมูลไม่ตรงกัน
- การดึงข้อมูลมาแสดง ต้องดึง pk มาด้วยเสมอ

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

04 พ.ค. 63 , 14:51:21
ตอบกลับ #10

mtaccess

: การแสดงข้อมูลใน Subform ใน MS Access
« ตอบกลับ #10 เมื่อ: 04 พ.ค. 63 , 14:51:21 »
มาช้าไป เล่าให้ฟังแล้วกันนะครับ
ผมเพิ่งย้ายจาก ms access ไปใช้ sql server ใช้อยู่ซักพัก แล้วเปลี่ยนไปใช้ mysql เมื่อไม่นานมานี้ เพราะ online สะดวกกว่า ผมพบว่า sql server ค่อนข้างหนัก และช้า ขนาดผ่าน lan ยังช้ากว่า mysql ที่ออนไลน์

จากที่ได้ลองใช้ sql server อยู่ซักพัก
ต้องระวังคือ ทุกตารางต้องมี pk หลังจากการ export ไป sqlserver pk จะหาย
ชนิดข้อมูลก็จะถูกแปลง ซึ่งบางชนิดมันไม่ตรงกับที่เราต้องการ ต้องตรวจสอบและเปลี่ยนใหม่ เช่นพวก autonumber / yesno / currency
- join ต้องเป็นชนิดข้อมูลเดียวกัน ตัวเลขก็ต้องตัวเลข (ควรใช้เป็นตัวเลข เป็น text ไม่แนะนำ)
- type mismatch ส่วนใหญ่คือ ชนิดข้อมูลไม่ตรงกัน
- การดึงข้อมูลมาแสดง ต้องดึง pk มาด้วยเสมอ

ถ้าเป็นไปใช้ Database mysql ต้องมีการเปลี่ยนแปลงคำสั่งโปรแกรมที่เขียนไว้ใน MS Access ไหมคะ ไม่ค่อยถนัดใช้ mysql เลยค่ะ รบกวนแนะนำด้วยค่ะ พอดีจะย้าย database จาก MS access ไปไว้ SQL server ช่วงนี้อยู่ในการทดสอบการใช้งานอยู่ค่ะ ถ้า mysql ดีกว่าก็จะลองทำดู แต่ไม่แน่ใจว่าต้องมีการแก้ไข code โปรแกรมที่เขียนใน MS Access รึเปล่า

 


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