vuquanghai > 01-05-13, 06:55 AM
quan_pc > 01-05-13, 01:41 PM
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim rs2 As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("khachhang")
Set rs2 = db.OpenRecordset("hoadon")
rs.MoveFirst
rs2.MoveFirst
Do While (rs.EOF = False)
If (rs.Fields("BIENKIEMSOAT") = BIENKIEMSOAT.Value) Then
MsgBox "Ten da co"
Exit Sub
End If
rs.MoveNext
Loop
rs.AddNew
rs.Fields("BIENKIEMSOAT") = BIENKIEMSOAT.Value
rs.Fields("LOAIXE") = LOAIXE.Value
rs.Fields("BAIGUIXE") = BAIGUIXE.Value
rs.Update
rs.Close
rs2.MoveNext
rs2.AddNew
rs2.Fields("BIENKIEMSOAT") = BIENKIEMSOAT.Value
rs2.Fields("LOAIXE") = LOAIXE.Value
rs2.Update
rs2.Close
db.Close
MsgBox "ok"
End Sub
ttm20062008 > 01-05-13, 06:32 PM
vuquanghai > 01-05-13, 06:43 PM
Xuân Thanh > 02-05-13, 04:21 PM
(01-05-13, 01:41 PM)quan_pc Đã viết: Bạn viết lại lệnh cho cái nút "Khách gởi xe" thay vì viết bằng macro bạn chọn [Event Procedure] ... sau đó bỏ đoạn code này vào.
Bạn cần xác định các khoá chính ở rs2 để điền vào cho phù hợp, code bên dưới là ví dụ còn sơ sài khi nào bạn làm ổn định sẽ bẫy lỗi sau, lưu ý là bạn phải viết cái rs2 điền đầy đủ các trường trong bảng HoaDon vào bên dưới mình mới ghi 2 cái bks vs loaixe nên bỏ vào nó sẽ báo lỗi thiếu thông tin.
Mã:Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim rs2 As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("khachhang")
Set rs2 = db.OpenRecordset("hoadon")
rs.MoveFirst
rs2.MoveFirst
Do While (rs.EOF = False)
If (rs.Fields("BIENKIEMSOAT") = BIENKIEMSOAT.Value) Then
MsgBox "Ten da co"
Exit Sub
End If
rs.MoveNext
Loop
rs.AddNew
rs.Fields("BIENKIEMSOAT") = BIENKIEMSOAT.Value
rs.Fields("LOAIXE") = LOAIXE.Value
rs.Fields("BAIGUIXE") = BAIGUIXE.Value
rs.Update
rs.Close
rs2.MoveNext
rs2.AddNew
rs2.Fields("BIENKIEMSOAT") = BIENKIEMSOAT.Value
rs2.Fields("LOAIXE") = LOAIXE.Value
rs2.Update
rs2.Close
db.Close
MsgBox "ok"
End Sub
...
rs.MoveFirst
rs2.MoveFirst
Do While (rs.EOF = False)
If (rs.Fields("BIENKIEMSOAT") = BIENKIEMSOAT.Value) Then
MsgBox "Ten da co"
Exit Sub
End If
rs.MoveNext
Loop
....
If Dcount("BIENKIEMSOAT","khachhang") > 1 Then
MsgBox "Ten da co"
Exit Sub
Else
rs.AddNew
....