Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

求大师帮助,入库信息输入一条就会把上一条覆盖掉!

djq4110  发表于:2021-04-01 21:59:17  
复制

代码如下:

Private Sub btnSave_Click()
    On Error GoTo ErrorHandler


    If Not CheckRequired(Me) Then Exit Sub
    If Not CheckTextLength(Me) Then Exit Sub


    Dim cnn: Set cnn = CurrentProject.Connection  'ADO.Connection()


   cnn.BeginTrans
   Dim blnTransBegin As Boolean: blnTransBegin = True


    Dim strSQL: strSQL = "SELECT * FROM [tblInbound] WHERE [物料编码]=" & SQLText(Me![物料编码])
    Dim rst:    Set rst = ADO.OpenRecordset(strSQL, adLockOptimistic, cnn)
    If rst.EOF Then rst.AddNew
    UpdateRecord Me, rst
    '你的自定义代码
    rst!物料编码 = Me!物料编码
    rst!物料名称 = Me!物料名称
    rst!型号 = Me!型号
    rst!规格 = Me!规格
    rst!单位 = Me!单位
    rst!数量 = Me!数量
    rst!入库时间 = Me!入库时间
    rst.Update
    rst.Close


   cnn.CommitTrans
   blnTransBegin = False


    RequeryDataObject gsfrList
    MsgBoxEx LoadString("Saved Successfully."), vbInformation


    If Me.DataEntry Then
        Me.InitData
    Else
        DoCmd.Close acForm, Me.Name, acSaveNo
    End If


ExitHere:
    Set rst = Nothing
    Set cnn = Nothing
    Exit Sub


ErrorHandler:
   'If blnTransBegin Then
   '    cnn.RollbackTrans
   '    blnTransBegin = False
   'End If
    If RDPErrorHandler(Me.Name & ": Sub btnSave_Click()") Then
        Resume
    Else
        Resume ExitHere
    End If
End Sub

 

Top
西出阳关无故人 发表于:2021-04-01 22:21:07

如果是记录新增入库清单,就把

If rst.EOF Then rst.AddNew

变成

rst.AddNew

不要  If rst.EOF Then  ,就是因为这个条件不成立(表中存在同样的物料编码的入库记录),所以总是覆盖原来的记录.



djq4110 发表于:2021-04-01 23:10:32
代码已改,但是保存的时候会报错,图片上传不了,只能发文字了(由于将在索引、主关键字、或关系中创建重复的值,请求对表的改变没有成功。改变该字段中的或包含重复数据的字段中的数据,删除索引或重新定义索引以允许重复的值并再试一次)

西出阳关无故人 发表于:2021-04-02 06:30:14
那是你把物料编码设为主键了吧?作为入库记录,不可以设物料编码为主键,一般使用入库编号为主键.

djq4110 发表于:2021-04-05 17:35:03
谢谢!

总记录:4篇  页次:1/1 9 1 :