Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Cách chuyển lớp cho học viên bằng form.
#1
Em có 2 table: HOCCHINHTHUC và HOCVIEN_HOCTHU.
HOCVIEN(mahv, hoten, ngaysinh, phai, sonha, sdtnha, sdtdd,email, tinhtrang)
HOCVIEN_HOCTHU(mahv_ht, hoten_hvht, ngaysinh_hvht, phai_hvht, sonha_hvht, sdtnha_hvht, sdtdd_hvht,email_hvht,tinhtrang_hvht)
Em muốn tạo 1 cái form chuyển lớp cho học viên từ học thử sang học thiệt như sau: Khi học viên đến đăng ký học thì nhà trường sẽ xếp vào lớp học thử mà học viên đó sẽ có 1 cái mã học viên học thử( mahv_ht). Sau quá trình học thử xong, nếu muốn trở thành học viên chính thức của trường thì liên hệ với phòng đào tạo để xin chuyển lớp. Khi đến xin chuyển lớp thì học viên cho nguời quản lý biết mahv_ht. Sau đó người quản lý tiến hành chuyển lớp, những thông tin mà đã có trong HOCVIEN_HOCTHU sẽ được mang qua hết table HOCVIEN avf đồng thời tạo cho học viên đó 1 cái mahv để quản lý.
Yêu cầu đề bài là như vậy, mong mọi người giúp đỡ em. Em cảm ơn rất nhiều.
Chữ ký của maixuanthu Kiên trì và bình tĩnh sẽ giúp bạn thành công!
Reply
Những người đã cảm ơn
#2
Bạn dùng Query Insert để chèn thông tin vào tabale HOCVIEN được mà rất đơn giản.

Nhưng theo ý kiếdn của mình: 2 table cấu trúc i chang nhau thì tách ra làm chi cho nó rối. Để học viên học thử vào chung luôn đi, tạo thêm 1 field HocThu (Yes/No) chẳng hạn để đánh dấu bé nào đang học thử. Sau đó bé muốn chuyển lớp ta chỉ cần chỉnh lại field HocThu thôi, đơn giản hơn, dễ quản lý, dễ thống kê hơn.

Còn cách sinh mã hocvien thì bạn xem
http://thuthuataccess.com/forum/post-188...l#pid18821 ở đây để tìm hiểu thêm xem sao nhé! Try hard! 030
ღღღღღTài sản của bomnhauag (View All Items) ღღღღღ
Reply
Những người đã cảm ơn Noname
#3
Em muốn viết bằng code được không anh? Anh có thể giúp e được không?
Chữ ký của maixuanthu Kiên trì và bình tĩnh sẽ giúp bạn thành công!
Reply
Những người đã cảm ơn
#4
Đâu có nhât thiết phải dùng VBA hả bạn, vì bạn chỉ kiểm soát từng học viên và xem xét họ đã đủ điều kiện chuyển từ học thử sang học thật chưa! Hãy làm 1 form trong đó có sử dụng RadioBox để thiết lập giá trị của trường Học là False/True thì sẽ chuyển được trạng thái sang học thật hoặc học thử thôi mà.
(Đây là bài tôi viết với ý tưởng của bạn "bợm nhậu").
Chữ ký của paulsteigel ====================
Quốc gia hưng vong
Thất phu hữu trách
====================
Reply
Những người đã cảm ơn bomnhauag , Noname
#5
Làm theo cách của BOM là hay nhất. Nếu không hãy tham khảo topic này http://thuthuataccess.com/forum/thread-6382.html
Thân mến
Chữ ký của Xuân Thanh Trăm năm trước thì ta chưa gặp
Trăm năm sau biết gặp được không?
Cuộc đời sắc sắc không không
Thì thôi ta cứ hết lòng vì nhau
ღღღღღTài sản của Xuân Thanh (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#6
Pác này chắc muốn chương trình cho có vẻ chuyên nghiệp đây nhỉ?
Tớ làm phần quản lý nhân sự ở công ty (phục vụ nhu cầu công việc), cũng tạo 2 bảng lý lịch có nhiều filed giống nhau, một bảng cho khối học việc thử việc, một bảng là nhân viên chính thức
Lý do tạo 2 bảng (mà không tạo Yes/No) là do có những người thử việc không đạt, không được tuyển dụng (nhưng vẫn là con ông cháu cha hoặc vì quan hệ đối tác) mà vẫn phải để đó để chờ ...., nếu đưa chung vào 1 bảng thì số record tương đối nhiều. Do đó tớ dùng như ý tưởng của maixuanthu và bomnhauag (tạo query update) là OK Lightbulb
Chữ ký của cpucloi Tôi chỉ biết mỗi một điều là những điều tôi biết được còn quá ít 021
Gmail: cgiahuy13@gmail.com


ღღღღღTài sản của cpucloi (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#7
(03-07-13, 07:21 PM)cpucloi Đã viết: Pác này chắc muốn chương trình cho có vẻ chuyên nghiệp đây nhỉ?
Tớ làm phần quản lý nhân sự ở công ty (phục vụ nhu cầu công việc), cũng tạo 2 bảng lý lịch có nhiều filed giống nhau, một bảng cho khối học việc thử việc, một bảng là nhân viên chính thức
Lý do tạo 2 bảng (mà không tạo Yes/No) là do có những người thử việc không đạt, không được tuyển dụng (nhưng vẫn là con ông cháu cha hoặc vì quan hệ đối tác) mà vẫn phải để đó để chờ ...., nếu đưa chung vào 1 bảng thì số record tương đối nhiều. Do đó tớ dùng như ý tưởng của maixuanthu và bomnhauag (tạo query update) là OK Lightbulb
Tôi có làm 1 file ví dụ như link dưới đây!
http://www.sfdp.net/thuthuataccess/thuth...ects=0&d=1
Thực ra việc quản lý chung hay riêng cũng không phải là vấn đề quan trọng vì với Access vài trăm ngàn bản ghi cũng không có gì là quá nhiều. Tùy thuộc nhu cầu quản lý mà có thể sau thời gian người ta xóa hoặc chuyển bớt bản ghi.
File ví dụ của tôi làm thử việc thiết lập trạng thái của nhân viên, người dùng có thể thay thế check box bằng radio button với nhãn Chính thức hoặc thử việc cho tiện. Tôi dùng một đoạn VBA nhỏ để đổi nhãn khi người dùng chọn trạng thái của Check box.
Xin chia sẻ.
Chữ ký của paulsteigel ====================
Quốc gia hưng vong
Thất phu hữu trách
====================
Reply
Những người đã cảm ơn Xuân Thanh , Noname
#8
Ý của anh chị em có thể hiểu. Nhưng yêu cầu của đề bài là khi học viên đến đăng ký học thì người quản lý sẽ hỏi học thiệt hay học thử? Nếu học thiệt luôn thì mình sẽ cập nhật thông tin vào trong table HOCVIEN còn nếu muốn học thử thì ta sẽ cập nhật thông tin vào table HOCVIENHOCTHU. Sau 1 buổi học thử thì nếu học viên muốn học thiệt luôn thì sẽ đến đăng ký lại nữa, nhưng lần này mình không hỏi thông tin nữa mà mình chỉ cần đưa hết thông tin bên table học thử qua thôi. Nên mới cần chuyển lớp. Nhưng 1 cái khó khăn là mahv và mhv_ht không giống nhau nên em không phải biết làm sao? Mong mọi người giúp đỡ em.
Chữ ký của maixuanthu Kiên trì và bình tĩnh sẽ giúp bạn thành công!
Reply
Những người đã cảm ơn
#9
(09-07-13, 12:15 AM)maixuanthu Đã viết: Ý của anh chị em có thể hiểu. Nhưng yêu cầu của đề bài là khi học viên đến đăng ký học thì người quản lý sẽ hỏi học thiệt hay học thử? Nếu học thiệt luôn thì mình sẽ cập nhật thông tin vào trong table HOCVIEN còn nếu muốn học thử thì ta sẽ cập nhật thông tin vào table HOCVIENHOCTHU. Sau 1 buổi học thử thì nếu học viên muốn học thiệt luôn thì sẽ đến đăng ký lại nữa, nhưng lần này mình không hỏi thông tin nữa mà mình chỉ cần đưa hết thông tin bên table học thử qua thôi. Nên mới cần chuyển lớp. Nhưng 1 cái khó khăn là mahv và mhv_ht không giống nhau nên em không phải biết làm sao? Mong mọi người giúp đỡ em.
Nếu theo yêu cầu thế thì ta làm thế cũng được. Tuy nhiên, tham số
Trích dẫn:mahv và mhv_ht không giống nhau nên em không phải biết làm sao
làm cho tôi thấy băn khoăn về cách đặt vấn đề và bạn nên làm rõ hơn một chút.
Cách tiếp cận của tôi (theo yêu cầu đầu bài) là:
1. Thiết kế 2 bảng quản lý học viên, cấu trúc y hệt nhau, khác tên
2. Thiết kế form sửa thông tin học viên, trong đó có 1 listbox hiển thị danh sách học viên, 1 lựa chọn về nguyện vọng học (thử/ chính thức) và nút Lưu. Rowsource của listbox là 1 Querry dạng Union từ 3 trường Mã học viên, Tên bảng, Tên học viên của 2 bảng đã thiết kế với Bound Column là 1, Column Count là 3, ColumnWidths là 0;0;1
3. RecordSource của form sẽ tự động được điều chỉnh khi người dùng chọn học viên từ danh sách nhờ sự kiện Listbox_Click
Viết đoạn VBA xác định xem họ đang chọn đối tượng từ bảng nào, từ đó thiết lập query của form dạng
Select * from tbl... wher ID=xx;
Căn cứ vào bảng dữ liệu thì Checkbox về nguyện vọng cũng được thay đổi theo.
Nên khai báo 1 biến toàn cục trong form để xác định trạng thái gốc của checkbox trước và sau khi bấm nút lưu để xác định các hành động cần làm trong bước 3.
4. Khi nút lưu được nhấn chương trình sẽ thực hiện
+ Kiểm tra xem học viên chọn là học thử hay chính thức và trạng thái trước đây là gì.
+ Nếu giờ là chính thức, trước đây là thử thì phải làm 2 việc
- Nếu là thử thì thực thi query Insert into tblHocvien (cac truong) values (gia tri) hoac Select into ...., và
- Delete * from tblHocvienthu where ID=mahocvien;
- Sau đó chuyển recordsource của form về tblHocvien đồng thời cập nhập dữ liệu của Listbox;
+ Nếu vẫn giữ trạng thái cũ, thì không phải làm gì cả.
Tôi có thể viết code giúp bạn, nhưng bạn nên sử dụng gợi ý của tôi để làm từ từ, mục tiêu là ta học chứ không phải là có người làm hộ, nhiều khi xem code của họ chả hiểu gì...
Xin chia sẻ thế
Bài mô phỏng ví dụ này trong liên kết dưới đây nhé!
http://www.sfdp.net/thuthuataccess/thuth...ects=0&d=1
Chữ ký của paulsteigel ====================
Quốc gia hưng vong
Thất phu hữu trách
====================
Reply
Những người đã cảm ơn Noname


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Cách đề tạo Combo Box và List Box Tương ứng Godspear 9 302 Hôm qua, 03:44 PM
Bài mới nhất: toancvp
  [Hỏi] Refresh Form và tiếp tục hoạt động Godspear 2 83 Hôm qua, 12:48 PM
Bài mới nhất: Godspear
  Tạo Menu dạng TreeView bằng Query (không dùng ActiveX) ongke0711 4 267 06-12-16, 09:16 PM
Bài mới nhất: toancvp
  [Hỏi] Cách thêm dữ liệu vào form Main_Sub NganNguyen 1 38 06-12-16, 02:23 AM
Bài mới nhất: maidinhdan
  Tự động hiện Form khi loading hết thời gian ChiMai 1 49 02-12-16, 08:59 PM
Bài mới nhất: ongke0711

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ