Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]计件工资录入

1楼
zhangqinyun 发表于:2011/10/4 16:43:00

由于一个人要做几个工序,所以我要设计以下功能

 

如: 姓名    工序               数量

       张三    R1,R2,R3

输入工序后自动变成:

       姓名    工序               数量

      张三    R1        

      张三    R2    

      张三    R3

 

所以,我在ValidateEdit里加了以下代码

 

If e.Col.Name = "工序" Then
    If e.Text.Contains(",") Then
        Dim Values() As String
        Values = e.Text.split(",")
        e.Text = Values(0)
        Dim cr As Row = e.Row
        Dim Ar As Row
        For Index As Integer = 1 To Values.Length - 1
            Ar = Tables("计件表").InsertNew
            Ar("日期") = cr("日期")
            Ar("令号") = cr("令号")
            Ar("部门") = cr("部门")
            Ar("姓名") = cr("姓名")
            Ar("工种") = cr("工种")
            Ar("工序") = Values(Index)
        Next
    End If
End If

 

 

 

但是运行就自动跳出了。。。。我试了下把Tables("计件表").InsertNew改为DataTables("计件表").AddNew可以,但是那个加行加在最后面。。

谁帮我改改代码啊

2楼
zhangqinyun 发表于:2011/10/4 17:06:00
谁帮帮我啊,我想了半天都没想出来哪里错了,,
3楼
yangming 发表于:2011/10/4 18:08:00

发狐表文件上来看看吧,也可以另加一列排序列,通过排序来达到插入行的效果

[此贴子已经被作者于2011-10-4 18:10:17编辑过]
4楼
zhangqinyun 发表于:2011/10/5 11:56:00

我试了,上面的代码是死循环,但我想不明白怎么就死循环le。。

5楼
kylin 发表于:2011/10/5 11:58:00
你把例子上传来,大家一起看看才可以诊断,光凭几个数据确实很难细致帮助你的。
6楼
lruiqiu 发表于:2011/10/5 12:18:00

 For Index As Integer = 1 To Values.Length - 1
            Ar = Tables("计件表").InsertNew
            Ar("日期") = cr("日期")
            Ar("令号") = cr("令号")
            Ar("部门") = cr("部门")
            Ar("姓名") = cr("姓名")
            Ar("工种") = cr("工种")
            Ar("工序") = Values(Index)
Next

这段就是一个死循环啊,每插入一行,Values.Length - 1的值也会增加啊

7楼
zhangqinyun 发表于:2011/10/5 13:46:00

我搞明白了,,楼上的说错了,上面的不是死循环

下面的是死循环了

If e.Col.Name = "工序" Then
    If e.Text.Contains(",") Then
        Dim Values() As String
        Values = e.Text.split(",")
        e.Text = Values(0)
        Dim cr As Row = e.Row
        Dim Ar As Row
        For Index As Integer = 1 To Values.Length - 1

因为

Ar = Tables("计件表").InsertNew
插入行会改变Current,离开编辑单元格,但是ValidateEdit里的代码还没完成,,

共7 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02637 s, 2 queries.