-
Tạo Tạo Tiền tố cho trường đánh số tự động trong Access
thaomobilecntv > 09-12-21, 05:43 PM
Xin Hướng dẫn tạo một trường đánh số tự động có kèm Tiền tố. Ví dụ: Trường MaPhieu dữ liệu sẽ tự điền PBH-000001, PBH-00000,....
Mình mới sử dụng được Trường kiểu Autonumber chỉ tạo ra được kiểu số từ 1, 2, 3,...
Mong anh em nhiệt tình hướng dẫn. Thanhks all! -
RE: Tạo Tạo Tiền tố cho trường đánh số tự động trong Access
ongke0711 > 09-12-21, 07:15 PM
(09-12-21, 05:43 PM)thaomobilecntv Đã viết: Xin Hướng dẫn tạo một trường đánh số tự động có kèm Tiền tố. Ví dụ: Trường MaPhieu dữ liệu sẽ tự điền PBH-000001, PBH-00000,....
Trong diễn đàn có nhiều bài viết về tạo số thứ tự tự động rồi đó bạn. Dùng công cụ tìm kiếm ở góc phải nhé.
https://thuthuataccess.com/forum/thread-9993.html
https://thuthuataccess.com/forum/thread-9777.html
https://thuthuataccess.com/forum/thread-...age-2.html
...
Mã PHP:Function TaoSoPBH() As String
Dim rsStt As DAO.Recordset
Dim sSQL As String
Dim Stt As Long
sSQL = "SELECT Max(CLng(Right(SoPBH,6))) As SttMax FROM tblPhieuXuat"
Set rsStt = CurrentDb.OpenRecordset(sSQL, dbOpenDynaset)
If IsNull(rsStt!SttMax) Then
Stt = 1
Else
Stt = rsStt!SttMax + 1
End If
TaoSoPBH = "PBH-" & Right$("000000" & Stt, 6)
rsStt.Close
Set rsStt = Nothing
End Function -
RE: Tạo Tạo Tiền tố cho trường đánh số tự động trong Access
tranthanhan1962 > 10-12-21, 12:22 AM
Dễ mà MaPhieu="PBH-" & Format([Autonumber],"000000"). Nhưng mà đâu có dễ dàng như vậy. xóa 1 phiếu sẽ không còn liên tục nữa, tốt nhất nên tìm hiểu kỹ theo hướng dẫn của bác ongke0711. -
RE: Tạo Tạo Tiền tố cho trường đánh số tự động trong Access
ongke0711 > 10-12-21, 07:32 AM
Tạo số phiếu tự động, không trùng thì bạn dùng cách tôi hướng dẫn hoặc cách tận dụng trường Autonumber đơn giản và nhanh như cách anh tranthanhan1962 đã nói. Nhưng bạn cần chú ý là thời điểm tạo số phiếu: nếu dùng trường Autonumber thì số phiếu chỉ được tạo sau khi dữ liệu được ghi xuống Table, khi đó Autonumber mới phát sinh số mới. Còn tạo không dùng Autonumber (như cách tôi nói ở trên) thì số phiếu sẽ được tạo ngay khi bạn bắt đầu nhập liệu mới. Tuỳ theo cách thiết kế Form nhập liệu của bạn mà dùng cách này hay cách khác.
Một điều bạn cần phải biết là không bao giờ tạo được số phiếu liên tục vì trong thực tế phát sinh sẽ có nghiệp vụ xoá phiếu, khi đó số sẽ không còn liên tục. Và nguyên tắc cũng không có việc tạo lại số phiếu bù vào số phiếu đã xoá vì tính thời gian thực của dữ liệu, không có chuyện dữ liệu tạo sau mà có số thứ tự nhỏ hơn dữ liệu đã nhập trước đó.