Foxtable(狐表)用户栏目专家坐堂 → 自动生成编号


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

主题:自动生成编号

帅哥哟,离线,有人找我吗?
xlrboy
  41楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:996 威望:0 精华:0 注册:2018/9/13 16:41:00
  发帖心情 Post By:2019/1/23 8:06:00 [只看该作者]

版主您好!   我新建了用户后在切换用户时提示
.NET Framework 版本:2.0.50727.8793
Foxtable 版本:2018.9.9.1
错误所在事件:表,物资出门证台账,PrepareEdit
详细错误信息:
调用的目标发生了异常。
从字符串“XMGLB-20190116-001”到类型“Boolean”的转换无效。
输入字符串的格式不正确。

这个是列的类型不对吗?

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


加好友 发短信
等级:幼狐 帖子:134 积分:996 威望:0 精华:0 注册:2018/9/13 16:41:00
  发帖心情 Post By:2019/1/23 8:39:00 [只看该作者]

版主您好!    
41楼问题已经解决,清空原数据就可以了。
[此贴子已经被作者于2019/1/23 8:50:30编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  43楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/23 9:06:00 [只看该作者]

 

如果还有问题,贴出对应的代码和错误。

 

 


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


加好友 发短信
等级:幼狐 帖子:134 积分:996 威望:0 精华:0 注册:2018/9/13 16:41:00
  发帖心情 Post By:2019/4/15 13:49:00 [只看该作者]

版主您好!  重新做了个编码自动生成,从申购日期列提取日期+0001,生成物料编码,参考24楼写了存储进程,执行报错,不知道哪里问题。(直接发代码发不上来只好发截图了)
               
图片点击可在新窗口打开查看此主题相关图片如下:存储4.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  45楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/15 15:13:00 [只看该作者]

你已经建了一个存储过程啊,不要重复建立啊。不然,你先移除,再建立

 

DROP PROCEDURE 存储过程名称


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


加好友 发短信
等级:幼狐 帖子:134 积分:996 威望:0 精华:0 注册:2018/9/13 16:41:00
  发帖心情 Post By:2019/4/16 14:42:00 [只看该作者]

版主您好!  存储过程已经建立好了,执行通过了,调用代码我参考后编写如下,第9行 如何修改,现在的物料编码是日期+序号。没有部门代码了如何取消
                Dim dr As DataRow = e.DataRow
Dim pf As String
If dr.RowState <> DataRowState.Added Then '如果不是新增行
    Return '那么返回
ElseIf dr.IsNull("申购日期") Then '如果没有输入日期
     e.Cancel = True '取消保存此行
     MessageBox.Show("必须输入日期!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
     Return
     pf = dr("部门代码") & "-" &Format(dr("申请日期"),"yyyyMMdd") '否则获得编号的前缀,两位年,两位月
End If
Dim cmd As new SQLCommand
cmd.C
cmd.CommandText = "usp_GetCode"
cmd.StoredProcedure = True
cmd.Parameters.Add("@deptCode",pf)
cmd.Parameters.Add("@key",1,True)
cmd.ExecuteNonQuery
Dim key As Integer  = cmd.Parameters("@key") '获取存储过程返回的日期值
e.DataRow("编号") = pf & "-" & Format(Key,"0000")

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  47楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/16 15:31:00 [只看该作者]

 

pf = dr("部门代码") & "-" &Format(dr("申请日期"),"yyyyMMdd") '否则获得编号的前缀,两位年,两位月

 

改成

 

pf = Format(dr("申请日期"),"yyyyMMdd")


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


加好友 发短信
等级:幼狐 帖子:134 积分:996 威望:0 精华:0 注册:2018/9/13 16:41:00
  发帖心情 Post By:2019/4/16 16:00:00 [只看该作者]

发送了两个错误  
.NET Framework 版本:2.0.50727.8800
Foxtable 版本:2018.9.9.1
错误所在事件:
详细错误信息:
过程或函数 'usp_GetCode_1' 需要参数 '@deptCode',但未提供该参数。
提供程序无法确定 Int32 值。例如,该行刚刚创建,未提供 Int32 列的默认值,并且使用者尚未设置新 Int32 值。

.NET Framework 版本:2.0.50727.8800
Foxtable 版本:2018.9.9.1
错误所在事件:表,加工件台账,BeforeSaveDataRow
详细错误信息:
调用的目标发生了异常。
列“编号”不属于表 加工件台账。


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


加好友 发短信
等级:幼狐 帖子:134 积分:996 威望:0 精华:0 注册:2018/9/13 16:41:00
  发帖心情 Post By:2019/4/16 16:06:00 [只看该作者]

存储进程如下
图片点击可在新窗口打开查看此主题相关图片如下:存储2.jpg
图片点击可在新窗口打开查看

编号列我已经添加了
图片点击可在新窗口打开查看此主题相关图片如下:存储1.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  50楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/16 16:27:00 [只看该作者]

红色改成你自己的表的列的名字
 
e.DataRow("某列") = pf & "-" & Format(Key,"0000")

 回到顶部
总数 64 上一页 1 2 3 4 5 6 7 下一页