Foxtable(狐表)用户栏目专家坐堂 → 增加数据出错


  共有2568人关注过本帖树形打印复制链接

主题:增加数据出错

帅哥哟,离线,有人找我吗?
裴保民
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
增加数据出错  发帖心情 Post By:2020/2/13 19:35:00 [显示全部帖子]

Dim dt As DataTable = DataTables("收支交易流水")
Dim max  As  String
Dim idx  As  Integer
Dim xrq As String = Format(Date.Today,"yyyyMMdd")
Dim max  As  String  
max = dt.Compute("Max(单号)","单号 like 'HD & xrq & %'")
If max > ""  Then  '如果存在最大编号
    idx = CInt(max1.SubString(10)) + 1  '获得最大编号的后三位顺序号,并加1
Else
    idx = 1  '否则顺序号等于1
End  If
For Each dr1 As DataRow In dt.Select("单号 is null")
    Dim str As String = "HD" & xrq & Format(idx,"0000")
    Dim fdr As DataRow = dt.find("单号 ='" & str & "'")
    If fdr Is Nothing
        dr1("单号") = str
    End If
    idx += 1
Next

代码哪有问题?自动编号为什么隔一行已添加呢

图片点击可在新窗口打开查看此主题相关图片如下:截图00.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/2/13 19:59:37编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/2/14 9:24:00 [显示全部帖子]

单号不自动编号,都是一个号

图片点击可在新窗口打开查看此主题相关图片如下:截图01.jpg
图片点击可在新窗口打开查看




Dim dt As DataTable = DataTables("收支交易流水")
Dim max  As  String
Dim idx  As  Integer
Dim xrq As String = Format(Date.Today,"yyyyMMdd")
max = dt.Compute("Max(SZJYLSID)","SZJYLSID like 'SZJYLS%'")
If max > ""  Then  '如果存在最大编号
    idx = CInt(max.SubString(6)) + 1  '获得最大编号的后三位顺序号,并加1
Else
    idx = 1  '否则顺序号等于1
End  If
For Each dr As DataRow In dt.Select("SZJYLSID is null")
    Dim str As String = "SZJYLS" & Format(idx,"000000")
    Dim fdr As DataRow = dt.find("SZJYLSID= '" & str & "'")
    If fdr Is Nothing
        dr("SZJYLSID") = str
    End If
    idx += 1
Next
dt.Save
Dim max1  As  String
max1 = dt.Compute("Max(单号)","单号 like 'HD & xrq & %'")   是不是这段代码的问题呀?
If max1 > ""  Then  '如果存在最大编号
    idx = CInt(max1.SubString(10)) + 1  '获得最大编号的后三位顺序号,并加1
Else
    idx = 1  '否则顺序号等于1
End  If
For Each dr1 As DataRow In dt.Select("单号 is null")
    Dim str As String = "HD" & xrq & Format(idx,"0000")
    'Dim fdr As DataRow = dt.find("单号 ='" & str & "' And [_Identify] <> " & e.DataRow("_Identify"))
    'If fdr Is Nothing
        dr1("单号") = str
   ' End If
    idx += 1
Next


同样的代码SZJYLSID自动都能自动编号

[此贴子已经被作者于2020/2/14 9:32:10编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/2/14 9:44:00 [显示全部帖子]

第一次

图片点击可在新窗口打开查看此主题相关图片如下:第一次.jpg
图片点击可在新窗口打开查看
第二次

图片点击可在新窗口打开查看此主题相关图片如下:第二次.jpg
图片点击可在新窗口打开查看
第三次

图片点击可在新窗口打开查看此主题相关图片如下:第三次.jpg
图片点击可在新窗口打开查看


如果放到“SZJYLSID”字段上运行是正确的
第一次

图片点击可在新窗口打开查看此主题相关图片如下:正确1.jpg
图片点击可在新窗口打开查看
第二次

图片点击可在新窗口打开查看此主题相关图片如下:正确2.jpg
图片点击可在新窗口打开查看
第三次

图片点击可在新窗口打开查看此主题相关图片如下:正确3.jpg
图片点击可在新窗口打开查看



[此贴子已经被作者于2020/2/14 9:49:56编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/2/14 10:59:00 [显示全部帖子]

max1 = dt.Compute("Max(单号)","单号 like 'HD" & xrq & "%'")蓝老师这句代码如果 不加“HD”怎么写呀?
我是这样写的max1 = dt.Compute("Max(单号)","单号 like ' " & xrq & "%'")
怎么老是错呀?
[此贴子已经被作者于2020/2/14 10:59:35编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/2/14 11:27:00 [显示全部帖子]

max = DataTables("收支交易流水").Compute("Max(单号)","单号 like '" & bh & "%'")
      msgbox(max)
就是按您的格式写的还是无数据

图片点击可在新窗口打开查看此主题相关图片如下:错误.jpg
图片点击可在新窗口打开查看


[此贴子已经被作者于2020/2/14 11:27:42编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/2/14 11:38:00 [显示全部帖子]

奇怪了结果还是一样无数据

 回到顶部