Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

【Access文章】更新/追加到临时表记录的常见问题

时 间:2017-03-14 08:08:33
作 者:杨雪   ID:42182  城市:南京
摘 要:更新/追加到临时表记录的常见问题
正 文:

 

问题描述:

这个是主子窗体,子窗体绑定的是临时表 TMP_出库流水明细表,现在要将  商品库存分仓库查询.库存数量  更新到  TMP_出库流水明细表.库存数量。

以上代码只更新第一条怎么回事?

解答:

rstTmp打开的整个表

每次都定位在第一条数据

不能更新全部的。

解决办法:

循环里面执行更新查询语句

strSQL = "Select * FROM [商品库存分仓库查询] "
    Set rst = OpenADORecordset(strSQL, , cnn)
    Set rstTmp = CurrentDb.OpenRecordset("TMP_库存流水明细表")

    Do Until rst.EOF
        CurrentDb.Execute "Update TMP_库存流水明细表 SET 库存数量=" & rst!库存数量 & " Where 商品ID=" & rst!商品ID & " and [仓库]='" & Me.Parent.[出货仓库] & "'"
        rst.MoveNext
    Loop

    rst.Close
    rstTmp.Close 

类似代码:

Private Sub Command1_Click()

    Dim strSQL As String

    strSQL = "insert into TMP_物料计划明细表(BOM明细ID,订单编号,业务单号,客户名称,产品型号编号,数量,要求交期,物料代码,物料描述,单位,物料属性,采购员,入库提前期,采购提前期,单耗,生产损耗) select BOM明细ID,订单编号,业务单号,客户名称,产品型号编号,数量,要求交期,物料代码,物料描述,单位,物料属性,采购员,入库提前期,采购提前期,单耗,生产损耗 from BOM明细查询 where 业务单号= '" & Me.业务单号 & "' and  BOM类别= '" & Me.BOM类别 & "'"
    DoCmd.RunSQL strSQL
    Dim rst: Set rst = CurrentDb.OpenRecordset("Select * FROM TMP_物料计划明细表 Where 供应商编号 Is Null")
    Do Until rst.EOF
        rst.Edit
        rst!供应商编号 = DLookup("供应商编号", "最近生效最低有效报价查询", "物料代码='" & rst!物料代码 & " '")
        rst!供应商名称 = DLookup("供应商名称", "供应商信息表", "供应商编号='" & rst!供应商编号 & " '")
        rst!单价 = DLookup("定价", "最近生效最低有效报价查询", "物料代码='" & rst!物料代码 & " '")
        rst.Update
        rst.MoveNext
    Loop
    rst.Close

    Me.sfrDetail.Requery
    MsgBox "……"
End Sub

 

 



Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助