| 发表于:2007-02-02 16:04:506楼 得分:0 |
dim mydatarow as datarow dim mytable2 as datatable dim rcount as integer, i as integer, j as integer dim mycmd as new oledbcommand mytable1 = myset.tables(0) '如果该货架号没有数据则不会进行删除 if mytable1.rows.count = 0 then exit sub end if mytable2 = mytable1.clone '在数据集中生成第二张表以存放table1中标注为删除行的数据 mytable2.tablename = "table2 " mytable2.clear() if myset.tables.count < 2 then myset.tables.add(mytable2) end if rcount = myset.tables(0).rows.count - 1 record = new integer(rcount) {} for i = 0 to rcount '获取dayagrid控件中被选中的单元行的行号 record(i) = -1 if datagr.isselected(i) = true then record(i) = i end if next dim k as integer for i = 0 to rcount mydatarow = mytable2.newrow if record(i) > -1 then for j = 0 to mytable1.columns.count - 1 mydatarow(j) = mytable1.rows(i).item(j) next mytable2.rows.add(mydatarow) mytable1.rows(i).delete() k = k + 1 end if next if k = 0 then exit sub end if if messagebox.show( "有 " & k.tostring & "条数据被选中 " _ & vbcrlf & vbcrlf & "确定要删除选中的数据吗? " & vbcrlf & vbcrlf & "选择 '是 ',则数据将无法恢复 ", me.text, messageboxbuttons.yesno, messageboxicon.warning) = dialogresult.yes then mytable1.acceptchanges() if mytable2.rows.count > 0 then with mycmd .commandtext = "delview " .commandtype = commandtype.storedprocedure .connection = con end with for i = 0 to mytable2.rows.count - 1 dim pitem as oledbparameter = mycmd.parameters.add( "@item ", oledbtype.longvarchar) dim pupc as oledbparameter = mycmd.parameters.add( "@upc ", oledbtype.longvarchar) dim pitemname as oledbparameter = mycmd.parameters.add( "@itemname ", oledbtype.longvarchar) dim pguig as oledbparameter = mycmd.parameters.add( "@guig ", oledbtype.longvarchar) dim pea as oledbparameter = mycmd.parameters.add( "@ea ", oledbtype.longvarchar) dim pnumber as oledbparameter = mycmd.parameters.add( "@number ", oledbtype.longvarchar) dim parea as oledbparameter = mycmd.parameters.add( "@area ", oledbtype.longvarchar) dim pscanno as oledbparameter = mycmd.parameters.add( "@scanno ", oledbtype.integer) pitem.value = mytable2.rows(i)(1).tostring pupc.value = mytable2.rows(i)(2).tostring pitemname.value = mytable2.rows(i)(3).tostring pguig.value = mytable2.rows(i)(4).tostring pea.value = mytable2.rows(i)(5).tostring pnumber.value = combobox2.text parea.value = combobox1.text pscanno.value = mytable2.rows(i)(0).tostring mycmd.EXECutenonquery() mycmd.parameters.clear() next end if else for each mydatarow in mytable1.rows if mydatarow.rowstate = datarowstate.deleted then mydatarow.rejectchanges() end if next end if | | |
|