สมัครสมาชิก
 

การทำการเลือกหลายรายการเพื่อทำการเบิกใน access ค่ะ โดยที่ให้รายการที่เลือกลิ้งค์ไปยังฟอร์มการเบิกค่ะ



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

12 เม.ย. 62 , 11:30:29
อ่าน 206 ครั้ง

Supanida

ขอสอบถามค่ะ ถ้าต้องการทำการเบิกแบบเลือกหลายรายการเพื่อให้ลิ้งค์ไปยังฟอร์มการเบิกสามารถทำได้ยังไงค่ะ ในโปรแกรม access
 // การล็อคอินเข้าaccess ให้ผลต่างกันเช่น ยูสเซอร์แอดมินสามารถเข้าได้ทุกฟอร์ม ส่วนยูเซอร์ที่ไม่ใช่แอดมิน เข้าได้แค่ฟอร์มการค้นหาและฟอร์มการเบิกค่ะ
« แก้ไขครั้งสุดท้าย: 14 เม.ย. 62 , 22:05:09 โดย Supanida »

 

12 เม.ย. 62 , 13:06:32
ตอบกลับ #1

ปิ่นณรงค์

  • ผู้ชำนาญการไท.Access
  • *
  • กระทู้: 567
  • พลังขอบคุณ: 472

  • Programer สาย DIY (ไม่ใช่อาจารย์นะครับ)

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

ถ้าต้องการทำการเบิกแบบเลือกหลายรายการเพื่อให้ลิ้งค์ไปยังฟอร์มการเบิกสามารถทำได้ยังไงค่ะ ในโปรแกรม access
ออกแบบหน้าตาฟอร์มไว้แบบไหนครับ ถ้าเลือกหลายๆรายการ คุณอาจจะสร้างListbox เพื่อทำการเลือกรายการ(Multi Select) ได้คับ

การล็อคอินเข้าaccess ให้ผลต่างกันเช่น ยูสเซอร์แอดมินสามารถเข้าได้ทุกฟอร์ม ส่วนยูเซอร์ที่ไม่ใช่แอดมิน เข้าได้แค่ฟอร์มการค้นหาและฟอร์มการเบิกค่ะ

คุณอาจจะสร้าง ตาราง User ขึ่นมา และมี Field พวก UserName , Password , Permisions
ตรงส่วนของ Permisions นั้น เราจะกำหนดสิทธิ์ในการเข้าถึงฟอร์มต่างๆ คอนโทรล ต่างๆ ได้คับ
เช่น กำหนด สิทธิ์ไว้ 2 แบบ Admin และ User โดยกำหนด ให้หลังล๊อกอิน แล้วให้มีการเช็คสิทธิ์ของ User
โดย ถ้าไม่มีสิทธิ์ปุ่มเปิดฟอร์มนั้นจะไม่สามารถกดได้ หรือถ้าอยากซ่อนไว้ก็ใส่ Botton.visible = false แทน Botton.Enabled = false นะครับ
ส่วนตัวอย่างคำสั่ง การเช็คสิทธิ์
สมมุติ textbox ที่กรอก Username ชื่อ UserBox
       Table Field UserName , Password , Permissions
       กำหนดตัวแปลเก็บค่า ชื่อ ChkPermissions

Dim ChkPermissions as String
ChkPermissions = DLookup("[Permissions]", "User", "[UserName]='" & Me.UserBox & "'")
Select Case ChkPermissions
Case "Admin"
   BtnSearch.enabled = true
   BtnWithdraw.Enabled = true
   BtnEtc.Enabled = true
   Btn บลาๆๆๆ.Enabled = true
Case "User"
   BtnSearch.enabled = true
   BtnWithdraw.Enabled = true
   BtnEtc.Enabled = False
   Btn บลาๆๆๆ.Enabled = False
End Select

ถ้าคุณสร้างฟอร์มไว้แล้ว แต่ยังไม่สามารถเพิ่มโค้ดเองได้ ก็ส่งตัวอย่างฟอร์มมาได้คับ
« แก้ไขครั้งสุดท้าย: 12 เม.ย. 62 , 13:19:04 โดย ปิ่นณรงค์ »
:love: :grin:
 
โพสต์นี้ได้รับคำขอบคุณจาก: nikorn, Supanida

12 เม.ย. 62 , 20:06:31
ตอบกลับ #2

Supanida

ถ้าต้องการทำการเบิกแบบเลือกหลายรายการเพื่อให้ลิ้งค์ไปยังฟอร์มการเบิกสามารถทำได้ยังไงค่ะ ในโปรแกรม access
ออกแบบหน้าตาฟอร์มไว้แบบไหนครับ ถ้าเลือกหลายๆรายการ คุณอาจจะสร้างListbox เพื่อทำการเลือกรายการ(Multi Select) ได้คับ

การล็อคอินเข้าaccess ให้ผลต่างกันเช่น ยูสเซอร์แอดมินสามารถเข้าได้ทุกฟอร์ม ส่วนยูเซอร์ที่ไม่ใช่แอดมิน เข้าได้แค่ฟอร์มการค้นหาและฟอร์มการเบิกค่ะ

คุณอาจจะสร้าง ตาราง User ขึ่นมา และมี Field พวก UserName , Password , Permisions
ตรงส่วนของ Permisions นั้น เราจะกำหนดสิทธิ์ในการเข้าถึงฟอร์มต่างๆ คอนโทรล ต่างๆ ได้คับ
เช่น กำหนด สิทธิ์ไว้ 2 แบบ Admin และ User โดยกำหนด ให้หลังล๊อกอิน แล้วให้มีการเช็คสิทธิ์ของ User
โดย ถ้าไม่มีสิทธิ์ปุ่มเปิดฟอร์มนั้นจะไม่สามารถกดได้ หรือถ้าอยากซ่อนไว้ก็ใส่ Botton.visible = false แทน Botton.Enabled = false นะครับ
ส่วนตัวอย่างคำสั่ง การเช็คสิทธิ์
สมมุติ textbox ที่กรอก Username ชื่อ UserBox
       Table Field UserName , Password , Permissions
       กำหนดตัวแปลเก็บค่า ชื่อ ChkPermissions

Dim ChkPermissions as String
ChkPermissions = DLookup("[Permissions]", "User", "[UserName]='" & Me.UserBox & "'")
Select Case ChkPermissions
Case "Admin"
   BtnSearch.enabled = true
   BtnWithdraw.Enabled = true
   BtnEtc.Enabled = true
   Btn บลาๆๆๆ.Enabled = true
Case "User"
   BtnSearch.enabled = true
   BtnWithdraw.Enabled = true
   BtnEtc.Enabled = False
   Btn บลาๆๆๆ.Enabled = False
End Select

ถ้าคุณสร้างฟอร์มไว้แล้ว แต่ยังไม่สามารถเพิ่มโค้ดเองได้ ก็ส่งตัวอย่างฟอร์มมาได้คับ

อันนี้เป็นตัวอย่างฟอร์มการค้นหาค่ะ เป็น single from ค่ะ คือต้องการเลือกรายการจากฟอร์มนี้ แล้วพอกดปุ่มทำรายการเบิกจะลิ้งค์รายการที่เราทำการเลือกไว้ไปยังฟอร์มทำการเบิกค่ะ

 

แล้วส่วนเรื่องการล็อคอิน ต้องสร้างตารางใหม่หรอคะ

อันนี้เป็นฟอร์มทำการเบิกค่ะอันนี้เป็นตารางข้อมูลรหัสผ่านและยูสเซอร์ เราไม่สามารถตั้งค่าจากตารางนี้ได้หรอค่ะ


ขอสอบถามอีกเรื่องด้วยค่ะ การทำให้ยอดรับเข้าบอกเพิ่มเข้าไปกับจำนวนยอดเดิม แล้วก็การตัดจำนวนให้ลดลงเวลาเบิกของสามารถทำได้อย่างไรค่ะ พอดีทำแบบใช้คิวรีแล้วมันรันไม่ได้ค่ะ
« แก้ไขครั้งสุดท้าย: 12 เม.ย. 62 , 20:48:41 โดย Supanida »

 


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