当前位置:编程学习 > VB >>

VB程序错误:“当前记录集不支持更新。这可能是提供程序的限制,也可能是选定锁定类型的限制”

Public Sub JZ()     '定义结账函数
  newcnn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=CYGLXT;Data Source=DA64A01A064B44A"
  SQL1 = "update 点单临时表 set 结账日期='" + Trim(rq.text) + "',是否结账='是' where 单据号='" + Trim(labdjh.Caption) + "'"
  newcnn.Execute SQL1
  SQL2 = "insert 日点单信息表(房台编号,房台类别,商品编号,商品名称,单位,数量,单价,金额,点单日期,结账日期,服务员编号,服务员姓名,状态,单据号,是否结账,备注) select 房台编号,房台类别,商品编号,商品名称,单位,数量,单价,金额,点单日期,结账日期,服务员编号,服务员姓名,状态,单据号,是否结账,备注 from 点单临时表 where 单据号='" + Trim(labdjh.Caption) + "'"
  newcnn.Execute SQL2
  SQL3 = "delete 点单临时表 where 是否结账='是'and 单据号='" +_
 Trim(labdjh.Caption) + "'"
  newcnn.Execute SQL3  
  SQL4 = "update 房间台号信息表 set 状态='空闲' where 编号='" + _
Label4(0).Caption + "'"
  newcnn.Execute SQL4
  newcnn.Close  '关闭连接
End Sub


Private Sub Comnoagio_Click()     '不打折结账
  If Frame10.Visible = False Then
     mystr = MsgBox("确认不打折结账吗?", vbYesNo)
     If mystr = vbYes Then
        rs1.Open "select * from 日结账表 order by 结账单据号",cnn,adOpenKeyset, adLockOptimistic
       rs1.AddNew
        rs1.Fields("结账单据号") = labdjh.Caption
        rs1.Fields("房台编号") = Label4(0).Caption
        rs1.Fields("日期") = Now
        rs1.Fields("结款金额") = Val(Labyfje.Caption)
        rs1.Fields("结款人") = Trim(Labxm.Caption)
        rs1.Fields("结款方式") = "现金"
        rs1.Fields("结款说明") = "现金结款" & Val(Labyfje.Caption) & "元"
        rs1.Update
        rs1.Close
     Call JZ     '调用函数
        MsgBox ("结账完毕!")
        Call main_qtgl_mdgl.list_change     '调用函数
        main_qtgl_mdgl.Enabled = True
        Unload Me
     End If
  End If
End Sub
--------------------编程问答-------------------- rs1.Open "select * from 日结账表 order by 结账单据号",cnn,adOpenKeyset, adLockOptimistic 

这里的cnn是哪里赋值的? --------------------编程问答-------------------- 另外,你把adOpenKeyset换成adOpenForwardOnly试试。

还有,.CursorLocation = adUseClient --------------------编程问答--------------------
在公共模块里赋的值
--------------------编程问答-------------------- 哥们!不行呀! --------------------编程问答-------------------- 你把CNN的赋值语句写出来看看 --------------------编程问答-------------------- 把“order by 结账单据号”删掉就ok了!
谢谢大家!
补充:VB ,  网络编程
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,