Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
hướng dẫn cách tạo mã học viên
#1
tạo mã học viên tự động dựa trên các thông tin học viên bao gồm: họ tên, năm sinh, nơi sinh và giới tính. Em đã có tham khảo qua file của bác Xuanthanh nhưng thật sự chưa rõ các bước thực hiện như thế nào? Viết 1 code duy nhất gắn vào mahocvien hay là gắn sự kiện vào lần lượt các texbox trên a?
Mong mọi ngươi quan tâm.Thanks
Link bài tạo mã của bác xuân thanh:
http://thuthuataccess.com/forum/thread-6236.html

và đây là cơ sở dữ liệu của em ah:
http://www.mediafire.com/download/d6bqbqdlldb37ry/A.mdb
Chữ ký của honglv157 Xin chào, mình là honglv157, Tham gia http://thuthuataccess.com/forum từ ngày 27-05 -15.
Reply
Những người đã cảm ơn
#2
(13-08-15, 04:29 PM)honglv157 Đã viết: tạo mã học viên tự động dựa trên các thông tin học viên bao gồm: họ tên, năm sinh, nơi sinh và giới tính. Em đã có tham khảo qua file của bác Xuanthanh nhưng thật sự chưa rõ các bước thực hiện như thế nào? Viết 1 code duy nhất gắn vào mahocvien hay là gắn sự kiện vào lần lượt các texbox trên a?
Mong mọi ngươi quan tâm.Thanks
Link bài tạo mã của bác xuân thanh:
http://thuthuataccess.com/forum/thread-6236.html

và đây là cơ sở dữ liệu của em ah:
http://www.mediafire.com/download/d6bqbqdlldb37ry/A.mdb

Nói chung tạo mã chính là tạo primary keys nhằm để xử lý liên kết - một nhiều với foreign keys của một table khác. Yêu cầu trước tiên là tất cả đối tượng trong field mã trên record không được phép giống nhau. 
Có thể phối hợp STT tự đánh và các chữ cái giống nhau (Ví dụ HS01, HS02 – HOCSINH01, HOCSINH02). Đơn giản nhất là tạo 1 field ID AutoNumber. Hoặc phức tạp hơn theo cách của bạn nguyyenbalai trên bài [Help] Tự động lấy mã số học sinh và đánh số thứ tự theo loại lớp học

Vì vậy tùy theo mỗi ứng dụng từng người có cách xử lý khác nhau. Nếu không cần thiết nên tạo mã ngắn gọn khó trùng để tốc độ xử lý của phần mềm vừa nhanh vừa hiệu quả.
Để xử lý tạo mã tự động đưa công thức tạo mã vào event after update của các field liên hệ với mã.
Ví dụ Mã học sinh Nguyễn Văn A Nam 2003 0001, Lê thị  Mai Nữ 2004 0002
Chúng ta xử lý như sau:

Mã PHP:
Private Sub TENHOCSINH_ AfterUpdate()
MAHS.Value TENHOCSINH.Value “ ” IIf(GIOITINH.Value True“Nữ”“Nam”) & “ ” NAMSINH.Value “ ” FormatID.Value“0000”)
End Sub 

Tương tự
.

Private 
Sub GIOITINH _ AfterUpdate()
MAHS.Value TENHOCSINH.Value “ ” IIf(GIOITINH.Value True“Nữ”“Nam”) & “ ” NAMSINH.Value “ ” FormatID.Value“0000”)
End Sub 

Private Sub NAMSINH _ AfterUpdate()
MAHS.Value TENHOCSINH.Value “ ” IIf(GIOITINH.Value True“Nữ”“Nam”) & “ ” NAMSINH.Value “ ” FormatID.Value“0000”)
End Sub 
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn honglv157
#3
Anh Ân ơi, em đã nhập code vào form theo đúng hướng dẫn nhưng không chạy được mã học viên và tự nhảy số tt. Em dựa trên bài của anh Nguyenbalai. Em không biết sai ở chỗ nào, mong anh xem qua và sửa giúp e.
http://www.mediafire.com/download/8i876d...281%29.mdb
Chữ ký của honglv157 Xin chào, mình là honglv157, Tham gia http://thuthuataccess.com/forum từ ngày 27-05 -15.
Reply
Những người đã cảm ơn
#4
Bạn không tạo được mã số do những nguyên nhân sau:
1/Bạn thiết đặt type của MAHS là number có nghĩa là giá trị số không phải giá trị text nên khi đưa ký tự vào nó báo lỗi là điều đương nhiên.
2/Main form và Sub form có chung một giá trị dữ liệu không thể hiện rõ ràng mối quan hệ cha con.
3/Phần này bạn xem lại. Không hiểu sau khi mình tải dữ liệu của bạn về không tham chiếu được giá trị sub form từ main form(dữ liệu cũ của bạn lúc trước không bị vấn đề này)
4/Với ứng dụng của bạn chỉ cần đưa mã lớp và STT vào là đủ rồi, bạn đưa ngày sinh, nơi sinh vào chỉ làm nặng nề, rắc rối thêm chứ không có lợi ích nào cả.
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn honglv157
#5
(15-08-15, 01:32 AM)tranthanhan1962 Đã viết: ..............
3/Phần này bạn xem lại. Không hiểu sau khi mình tải dữ liệu của bạn về không tham chiếu được giá trị sub form từ main form(dữ liệu cũ của bạn lúc trước không bị vấn đề này)
..................

Chị ấy đã xóa dòng "Option Compare Database" trong form đó.

[Hình: 2015-08-15_015904.jpg]
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn tranthanhan1962 , honglv157
#6
=IIf(VarType([Forms]![F_LopHoc]![F_TTHS].[Form]![Stt])=3,[Forms]![F_LopHoc]![F_TTHS].[Form]![Stt]+1,1)
Cho em hỏi câu lệnh IFF có nghĩa là gì, chỗ STT=3 ?
Chữ ký của honglv157 Xin chào, mình là honglv157, Tham gia http://thuthuataccess.com/forum từ ngày 27-05 -15.
Reply
Những người đã cảm ơn
#7
(18-08-15, 10:31 AM)honglv157 Đã viết: =IIf(VarType([Forms]![F_LopHoc]![F_TTHS].[Form]![Stt])=3,[Forms]![F_LopHoc]![F_TTHS].[Form]![Stt]+1,1)
Cho em hỏi câu lệnh IFF có nghĩa là gì, chỗ STT=3 ?

Dịch ra tiếng việt thế này,
Cho: ([Forms]![F_LopHoc]![F_TTHS].[Form]![Stt]) là : a

Nếu kiểu dữ liệu của a là 3 ( số 3 này đại diện cho kiểu dữ liệu Long Integer) thì a cộng thêm 1, ngược lại là 1.



* Các đối số của VarType
Mã PHP:
vbEmpty 0
Chưa khởi tạo
vbNull 
1
Không có dữ liệu
vbInteger 
2
Kiểu Integer
vbLong 
3
Kiểu Long integer
vbSingle 
4
Kiểu Single
vbDouble 
5
Kiểu Double
vbCurrency 
6
Kiểu Currency
vbDate 
7
Kiểu Date
vbString 
8
Kiểu String
vbObject 
9
Là một Object
vbError 
10
Giá trị lỗi
vbBoolean 
11
Kiểu Boolean
vbVariant 
12
Kiểu Variant
vbDataObject 
13
Là một DataObject
vbDecimal 
14
Kiểu Decimal
vbByte 
17
Kiểu Byte
vbUserDefinedType 
36
1 kiểu xác định trong Variant
vbArray 
8192
Kiểu 
Array 

Thân mến!
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#8
Table DMHV( STT (Autonumber, MAHS (Format :"HV000000),....
Code tạo MHS:
Sự kiện gắn với STT
Private Sub STT_AfterUpdate()
MAHS.Value = "HV" & Right("000000" & STT, 6)
End Sub

Giúp em chỉ ra lỗi sai với a
Chữ ký của honglv157 Xin chào, mình là honglv157, Tham gia http://thuthuataccess.com/forum từ ngày 27-05 -15.
Reply
Những người đã cảm ơn
#9
(18-08-15, 11:08 AM)honglv157 Đã viết: Table DMHV( STT (Autonumber, MAHS (Format :"HV000000),....
Code tạo MHS:
Sự kiện gắn với STT
Private Sub STT_AfterUpdate()
MAHS.Value = "HV" & Right("000000" & STT, 6)
End Sub

Giúp em chỉ ra lỗi sai với a

không biết đoạn này có ý gì? Table DMHV( STT (Autonumber, MAHS (Format :"HV000000),....

Nhưng MAHS dùng Format :"HV000000" là trật rồi, có 2 cách giải quyết.
1. Chả cần dùng Format :"HV000000" ( xóa hẳn, bởi đã dùng code tự động thêm rồi)
2. Chuyển Format :"HV000000" xuống dưới Input Mask, còn size thì có cho nó là 8.

* Khuyên dùng cách 1 là hay nhất.
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn honglv157
#10
(18-08-15, 11:30 AM)maidinhdan Đã viết:
(18-08-15, 11:08 AM)honglv157 Đã viết: Table DMHV( STT (Autonumber, MAHS (Format :"HV000000),....
Code tạo MHS:
Sự kiện gắn với STT
Private Sub STT_AfterUpdate()
MAHS.Value = "HV" & Right("000000" & STT, 6)
End Sub

Giúp em chỉ ra lỗi sai với a

không biết đoạn này có ý gì? Table DMHV( STT (Autonumber, MAHS (Format :"HV000000),....

Nhưng MAHS dùng Format :"HV000000" là trật rồi, có 2 cách giải quyết.
1. Chả cần dùng Format :"HV000000" ( xóa hẳn, bởi đã dùng code tự động thêm rồi)
2. Chuyển Format :"HV000000" xuống dưới Input Mask, còn size thì có cho nó là 8.

* Khuyên dùng cách 1 là hay nhất.
Đã dùng cách 1, bỏ format nhưng mã hv vẫn không tự động thêm khi nhập record mới? Chỉ giúp chị xem chị còn phải chỉnh chỗ nào nữa?
Table DMHV( STT (Autonumber, MAHS (Format :"HV000000),.... đây là bảng học viên gồm các field với định dạng như trên.
Chữ ký của honglv157 Xin chào, mình là honglv157, Tham gia http://thuthuataccess.com/forum từ ngày 27-05 -15.
Reply
Những người đã cảm ơn


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 305 08-12-16, 03:44 PM
Bài mới nhất: toancvp
  [Hỏi] Cách thêm dữ liệu vào form Main_Sub NganNguyen 1 39 06-12-16, 02:23 AM
Bài mới nhất: maidinhdan
Photo [Hỏi] Cách tạo link để Open form toancvp 7 363 01-09-16, 11:37 PM
Bài mới nhất: toancvp
  [Help] Hướng dẫn tạo form cha con mohamedtr 2 239 06-08-16, 01:52 AM
Bài mới nhất: maidinhdan
  [Hỏi] Cách thay đổi Back Color của control theo giá trị toancvp 15 759 16-07-16, 10:43 AM
Bài mới nhất: toancvp

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ơ