Đánh giá chủ đề:
  • 2 Votes - 4.5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Thủ Thuật] Lưu vết chương trình khi nhập liệu
#31
(23-06-15, 10:12 AM)Noname Đã viết:
(22-06-15, 06:12 PM)kiengxuong Đã viết: Xin chào mọi người mình làm giống bạn đã chạy ok trên file acc bình thường  nhưng khi mình cho table tblLuuVetChuongTrinh lên sql rồi mình link table tới sql  nó báo lỗi ở phần code 
Function CapNhatLuuVet(fUserName, fOldValue, fNewValue, fControlName, fFormName)

Dim DB As DAO.Database
Dim rst As DAO.Recordset
Set DB = CurrentDb
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenSnapshot)
rst.AddNew   báo lỗi
rst!TenUser = fUserName
rst!GiaTriCu = fOldValue
rst!GiatriMoi = fNewValue
rst!TenControl = fControlName
rst!TenForm = fFormName
rst!NgayCapNhat = Date
rst!GioCapNhat = time()
rst.Update
rst.Close
Set rst = Nothing
Set DB = Nothing
End Function

mong bạn chỉnh sửa giúp mình Cảm ơn bạn rất nhiều 
khongventoan@gmail.com

Nó báo lỗi gì vậy bạn?
Đối với table dạng link, nếu bạn muốn thêm xóa sửa thì truyền đối số là dbOpenDynaset
Nếu chỉ muốn truy vấn (như dlookup) thì dùng dbOpenSnapshot sẽ cải thiện tốc độ.
Cảm ơn bạn đã trả lời mình nó báo lỗi
 Run-time error '3622':

you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn xem giúp mình
Chữ ký của kiengxuong Xin chào, mình là kiengxuong, Tham gia http://thuthuataccess.com/forum từ ngày 05-06 -15.
Reply
Những người đã cảm ơn
#32
(24-06-15, 02:15 PM)kiengxuong Đã viết: Cảm ơn bạn đã trả lời mình nó báo lỗi
 Run-time error '3622':

you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn xem giúp mình

Bạn đổi dòng này:
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenSnapshot)
Thành
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenDynaset)
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#33
(24-06-15, 02:29 PM)Noname Đã viết:
(24-06-15, 02:15 PM)kiengxuong Đã viết: Cảm ơn bạn đã trả lời mình nó báo lỗi
 Run-time error '3622':

you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn xem giúp mình

Bạn đổi dòng này:
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenSnapshot)
Thành
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenDynaset)

mình sửa lại dbopendynaset rồi nó báo lỗi:
run-time error '3622
you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn nhiều
Chữ ký của kiengxuong Xin chào, mình là kiengxuong, Tham gia http://thuthuataccess.com/forum từ ngày 05-06 -15.
Reply
Những người đã cảm ơn
#34
(24-06-15, 03:10 PM)kiengxuong Đã viết:
(24-06-15, 02:29 PM)Noname Đã viết:
(24-06-15, 02:15 PM)kiengxuong Đã viết: Cảm ơn bạn đã trả lời mình nó báo lỗi
 Run-time error '3622':

you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn xem giúp mình

Bạn đổi dòng này:
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenSnapshot)
Thành
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenDynaset)

mình sửa lại dbopendynaset rồi nó báo lỗi:
run-time error '3622
you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn nhiều
Tham khảo bài này để sửa lỗi nhé!
http://thuthuataccess.com/forum/thread-1957.html
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#35
(24-06-15, 03:10 PM)kiengxuong Đã viết:
(24-06-15, 02:29 PM)Noname Đã viết:
(24-06-15, 02:15 PM)kiengxuong Đã viết: Cảm ơn bạn đã trả lời mình nó báo lỗi
 Run-time error '3622':

you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn xem giúp mình

Bạn đổi dòng này:
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenSnapshot)
Thành
Mã:
Set rst = DB.OpenRecordset("tblLuuVetChuongTrinh", dbOpenDynaset)

mình sửa lại dbopendynaset rồi nó báo lỗi:
run-time error '3622
you must use dbseechanges option with Openrecordset when accessing a SQL server table that has an INDENTITY column
cám ơn bạn nhiều
Có bạn nào biet cách link table trong access tới FTP server không chỉ mình làm với
Chữ ký của kiengxuong Xin chào, mình là kiengxuong, Tham gia http://thuthuataccess.com/forum từ ngày 05-06 -15.
Reply
Những người đã cảm ơn
#36
Xin hỏi tác giả. Có cách nào để tblcapnhatluuviet chỉ lưu dữ liệu trong khoảng thời gian mới nhất khoảng 3 tháng chẳng hạn. Vì nếu ko có cách kiểm soát thì chương trình sẽ ngày 1 nặng và chậm.
Chữ ký của tvn_hut Xin chào, mình là Dameaccess, Tham gia http://thuthuataccess.com/forum từ ngày 06-06 -13.
Reply
Những người đã cảm ơn
#37
(31-05-12, 02:53 PM)n2kp Đã viết:
(29-05-12, 05:40 PM)connguoi123 Đã viết: Trong trường hợp mình muốn trong bảng tblLuuvetchuongtrinh có nêu rõ được cả bản ghi nào được user tác động kô  ( để biết người sử dụng tác động vào record nào - Ví dụ  số hóa đơn nào chẳng hạn )? Vậy phải làm như nào, mong các bạn chỉ giáo thêm, tôi thấy cái này hay và tiện lợi quá. Cám ơn rất nhiều.

Chào bạn,
Bạn có thể thêm một trường (vd:IDHoadon) vào tblLuuvetchuong trình và trong Function CapNhatLuuVet bạn thêm một tham số IDhoadon, lúc đó Function CapNhatLuuVet chi tiết sẽ như thế này:
Function CapNhatLuuVet(IDhoadon, fUserName, fOldValue, fNewValue, fControlName, fFormName)
Dim db As Database
Dim rst As Recordset
Set db = CurrentDb
Set rst = db.OpenRecordset("tblLuuVetChuongTrinh")
rst.AddNew
rst!IDhoadon = IDhoadon
rst!TenUser = fUserName
rst!GiaTriCu = fOldValue
rst!GiatriMoi = fNewValue
rst!TenControl = fControlName
rst!TenForm = fFormName
rst!NgayCapNhat = Date
rst!GioCapNhat = Time()
rst.Update
rst.Close
Set rst = Nothing
Set db = Nothing
End Function

Thân chào.
Nếu làm như thế này thì chỉ các Form có IDhoadon mới lưu được sao, Form có ID khác thì phải làm modun khác à các bác
Chữ ký của hungle2006 hungle2006,gia nhập Thủ Thuật Access từ 10-10 -15.
Reply
Những người đã cảm ơn
#38
(25-04-16, 12:29 AM)hungle2006 Đã viết: Nếu làm như thế này thì chỉ các Form có IDhoadon mới lưu được sao, Form có ID khác thì phải làm modun khác à các bác

Không phải là Form có IDhoadon mà là table Lưu vết chương trình có cột là IDhoadon ( ở đây bạn đặt kiểu dữ liệu gì mà sau này bạn có thể truy xuất để theo dõi.

Còn cái trên kia là một hàm phối hợp với nút Lưu hay sự kiện sữa xóa gì đó!
Thâ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
#39
Bạn N2kp ơi, tôi thêm trường Idhoadon như bạn hướng dẫn không được, báo lỗi ở hàm, bạn xem lại giùm nhé
Chữ ký của hungle2006 hungle2006,gia nhập Thủ Thuật Access từ 10-10 -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
  Tránh xung đột dữ liệu trong access quocdung9999 16 1,689 23-11-16, 11:13 AM
Bài mới nhất: quocdung9999
  [Thủ Thuật] Tạo thanh tiến trình trên Form (Progress bar) khi xử lý dữ liệu ongke0711 18 1,492 21-10-16, 10:17 PM
Bài mới nhất: ongke0711
  [Hỏi] Quá trình thực hiện một lệnh với CSDL dinh_trong_hoa 1 174 02-08-16, 04:06 PM
Bài mới nhất: ongke0711
Photo Hướng dẫn tính tôn kho từ một bảng chi tiết nhập xuất tt1212 8 398 17-06-16, 04:47 PM
Bài mới nhất: tt1212
  Sử dụng Class Module và Kết nối dữ liệu SQL SERVER trong Access VBA lehongduc 42 17,028 12-06-16, 12:28 PM
Bài mới nhất: lehongduc

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ơ