• Nút Thêm dữ liệu trên form
  • Nút Thêm dữ liệu trên form

    vulhu06 > 12-03-14, 12:09 PM

    Chào A/C
    Em tìm trên diển đàn nhưng không thấy, nên mạo muội hỏi tại đây
    Em có 01 form nguồn DL là từ table, 01 nút Thêm, Lưu
    Tình hình là khởi đầu em nhấn nút Thêm, nhập dữ liệu , nhấn nút Lưu thì ok. Nhưng khi nhấn tiếp nút Thêm lần nữa thì báo lỗi (you can't go to the specified record) và không nhập liệu được nữa

    Đây là code nút thêm :
    Dim rs As Recordset
    Dim max As String
    DoCmd.GoToRecord , , acNewRec
    Set rs = CurrentDb.OpenRecordset("donvi", dbOpenTable)
    max = DMax ("[madv]", "[donvi]")
    txtmadv.SetFocus
    txtmadv.Text = Right("0000" & Val(max) + 1, 4)
    txtdv.SetFocus
    txtmadv.Enabled = False

    Lưu
    Dim rs As Recordset
    Set rs = CurrentDb.OpenRecordset("donvi", dbOpenTable)
    rs.AddNew
    rs!Madv = Me.txtmadv
    rs!Donvisd = Me.txtdv
    rs.Update
    MsgBox "Thành công"
    rs.Close

    Mong các A/C chỉ giáo, em có up hình nhưng không được
  • RE: Nút Thêm dữ liệu trên form

    trunghieu > 12-03-14, 05:04 PM

    Có thể có những lỗi sau:
    - Form bạn nhập có nguồn từ table nhưng bạn thiết kế nhập từ các textbox không lấy nguồn từ table sau đó cập nhật vào table bằng nút Lưu. Cho nên khi bạn nhấn nút thêm, access không thể đưa bạn sang record mới được.
    Khắc phục: nếu bạn chỉ nhập bằng các textbox không có nguồn từ các field của table thì bạn chỉ cần bỏ dòng lệnh docmd.gotorecord,,acnewrecord thay bằng
    txtmadv = null
    txtdv = null
    - TH khác có thể do quá trình thiết kế mắc các lỗi về khóa chính, hoặc các thiết kế của form gây lỗi di chuyển record.
    Nếu không khắc phục được bạn gửi file lên để mọi người giúp đỡ.
  • RE: Nút Thêm dữ liệu trên form

    vulhu06 > 13-03-14, 10:14 AM

    (12-03-14, 05:04 PM)trunghieu Đã viết: Có thể có những lỗi sau:
    - Form bạn nhập có nguồn từ table nhưng bạn thiết kế nhập từ các textbox không lấy nguồn từ table sau đó cập nhật vào table bằng nút Lưu. Cho nên khi bạn nhấn nút thêm, access không thể đưa bạn sang record mới được.
    Khắc phục: nếu bạn chỉ nhập bằng các textbox không có nguồn từ các field của table thì bạn chỉ cần bỏ dòng lệnh docmd.gotorecord,,acnewrecord thay bằng
    txtmadv = null
    txtdv = null
    - TH khác có thể do quá trình thiết kế mắc các lỗi về khóa chính, hoặc các thiết kế của form gây lỗi di chuyển record.
    Nếu không khắc phục được bạn gửi file lên để mọi người giúp đỡ.

    Cám ơn bạn đã quan tâm, hôm qua sau khi gởi câu hỏi lên diễn đàn mình cứ khó chịu , bực mình (vì không làm được). Tối đến ngủ không được nên phải ngâm cứu lại, cuối cùng ok rồi.
    Tất cả do dòng txtmadv.enabled = false, Khi đó con trỏ vị khóa nên không di chuyển qua record khác được
  • RE: Nút Thêm dữ liệu trên form

    Lê Văn Giáp > 16-01-17, 10:33 AM

    Nguyên nhân do mất quan hệ, dữ liệu khóa phụ ở table quan hê  nhiều có mà trong trong table master k có dữ liệu đó. 
    Tìm dữ liệu trong table quan hệ child xóa nó đi là xong!