Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Hỏi] Sinh maso tự động trên form
#1
Chào mọi người
Mình có 1 table.chứa 2 trường ID là autonumber và trường maso là number.
Mình muốn khi nhập dữ liệu trên form thì maso tự sinh ra lấy ngày tháng năm hiện tại.
vd: ngày 19 tháng 8 năm 2015 thì sẽ là :1982015001. 001 sẽ tự động tăng khi nhập dữ liệu vào form và sẽ tự động giảm khi xóa record
Ai demo giúp mình với
Thank
Chữ ký của thanhquyt thanhquyt,gia nhập Thủ Thuật Access từ 25-08 -15.
Reply
Những người đã cảm ơn
#2
Câu hỏi bạn cầm làm rõ vài vấn đề.

1. ID là autonumber để làm cái gì?
2. Tạo sao maso là number. chứ không phải là kiểu text? ví dụ nếu là ngày 01/01/2015 => theo ý bạn nó sẽ cho ra 112015.001 (10 ký tự) => số ký tự không thống nhất so với ý định của bạn trên là 1982015001. 001 (14 ký tự)
3. từ 001-999, vậy huốt 999 bạn có muốn lấy số 1000 hay không?

* Kết luận, cú pháp đưa ra không thống nhất, cần tìm cú pháp cho ra 1 số ổn định mới có thể viết code tự tăng lên.

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 thanhquyt
#3
Trước hết cảm ơn maidinhdan
Không cần trường id là autonumber.Mình chỉ cần trường maso là text như bạn nói.và maso sẽ tự động có dạng 112015.001 (10 ký tự). 
Bạn code giúp mình được không
Chữ ký của thanhquyt thanhquyt,gia nhập Thủ Thuật Access từ 25-08 -15.
Reply
Những người đã cảm ơn
#4
Nếu bạn xác định như vậy cũng không ổn. Bài của bạn có 3 vế.

Vế 1: lấy ngày tháng năm, cái này tôi ok, không hỏi nửa: => 8 ký tự đầu.
Vế 2:  là dấu chấm

Vế 3: bạn phải thống nhất là bao nhiêu ký tự, không lẽ bạn chỉ có 999 record.
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
#5
(25-08-15, 09:48 PM)thanhquyt Đã viết: Chào mọi người
Mình có 1 table.chứa 2 trường ID là autonumber và trường maso là number.
Mình muốn khi nhập dữ liệu trên form thì maso tự sinh ra lấy ngày tháng năm hiện tại.
vd: ngày 19 tháng 8 năm 2015 thì sẽ là :1982015001. 001 sẽ tự động tăng khi nhập dữ liệu vào form và sẽ tự động giảm khi xóa record
Ai demo giúp mình với
Thank


Tại sao phải thêm trường auto number rồi cắt ra 001. Nếu như đến 999 rồi thì trở lại 000 hay 001. Tặng bạn một cách xử lý nhẹ nhàng:
=Format$(Now();"yyyymmddhhmmss").
Sẽ không có chuyện trùng từ giờ cho đến năm 12015
Còn nếu chương trình chỉ cần sử dụng từ nay đến năm 3014.
=Format$(Now();"yymmddhhmmss").
Còn nếu chắc chắn dữ liệu của bạn ít hơn 1000 record. Đồng thời sắp thứ tự sau mỗi lần xử lý khi thêm xóa thì viết code VBA hơi bị nhiều. post lên csdl mình sẽ xử lý cho. Mình thì không bao giờ đưa thứ tự vào primary keys cả. Muốn gì thì ra report sắp thứ tự thôi
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 maidinhdan
#6
Vế 2: dấu chấm. nếu bạn code được thì càng tốt nếu phức tạp quá thì ko cần cũng được
Vế 3: thay vì 001 thành 0001. 9999 record như vậy là ok rồi
Chữ ký của thanhquyt thanhquyt,gia nhập Thủ Thuật Access từ 25-08 -15.
Reply
Những người đã cảm ơn
#7
(26-08-15, 12:34 AM)tranthanhan1962 Đã viết:
(25-08-15, 09:48 PM)thanhquyt Đã viết: Chào mọi người
Mình có 1 table.chứa 2 trường ID là autonumber và trường maso là number.
Mình muốn khi nhập dữ liệu trên form thì maso tự sinh ra lấy ngày tháng năm hiện tại.
vd: ngày 19 tháng 8 năm 2015 thì sẽ là :1982015001. 001 sẽ tự động tăng khi nhập dữ liệu vào form và sẽ tự động giảm khi xóa record
Ai demo giúp mình với
Thank


Tại sao phải thêm trường auto number rồi cắt ra 001. Nếu như đến 999 rồi thì trở lại 000 hay 001. Tặng bạn một cách xử lý nhẹ nhàng:
=Format$(Now();"yyyymmddhhmmss").
Sẽ không có chuyện trùng từ giờ cho đến năm 12015
Còn nếu chương trình chỉ cần sử dụng đến năm 3014.
=Format$(Now();"yymmddhhmmss").

Xin hỏi bạn vậy trườnng maso có tự động tao ra maso không. =Format$(Now();"yyyymmddhhmmss"). thì chèn nó ở đâu vậy
Chữ ký của thanhquyt thanhquyt,gia nhập Thủ Thuật Access từ 25-08 -15.
Reply
Những người đã cảm ơn
#8
(26-08-15, 12:40 AM)thanhquyt Đã viết: Xin hỏi bạn vậy trườnng maso có tự động tao ra maso không. =Format$(Now();"yyyymmddhhmmss"). thì chèn nó ở đâu vậy

Ok. Trên record của bạn sẽ có các trường khác là record souce của textbox nào đó. Ví dụ hoten chẳng hạn.
Code như sau:
 

Mã PHP:
Private Sub hoten_AfterUpdate()
    If VarType(maso.Value) = 1 Then
        maso
.Value Format$(Now(), "yyyymmddhhmmss")
    End If
End Sub 

 
Sử dụng If VarType(maso.Value) = 1 để xử lý khi mã số đã có rồi nó sẽ không tạo nữa. Nếu không mỗi lần bạn chỉnh sửa hoten nó sẽ tạo lại
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 Noname


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Ngày tháng tự động theo hệ thống trungminh 3 252 10-09-16, 12:33 PM
Bài mới nhất: cpucloi
  [Help] Tự động chọn dữ liệu theo cột đằng trước minbk 10 1,711 05-06-16, 10:32 AM
Bài mới nhất: tacongthang
  [Help] Code không hoạt động được với Linked table vulhu06 2 372 26-01-16, 02:30 PM
Bài mới nhất: lttruc682
  [Hỏi] Về type data Yes/No trên Access 2016 kennguyen2301 2 342 07-12-15, 06:52 PM
Bài mới nhất: kennguyen2301
  [Hỏi] Độ rộng của form khi mở access thanhquyt 1 365 14-09-15, 12:49 PM
Bài mới nhất: tranthanhan1962

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ơ