以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关联表的自动编号 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=43462) |
-- 作者:seal51 -- 发布时间:2013/12/7 22:05:00 -- 关联表的自动编号 产品主表和产品零件表关联, 产品主表知道如何自动编号, 但关联表“产品零件表”里的序号如何自动编号呢? |
-- 作者:有点甜 -- 发布时间:2013/12/7 22:14:00 -- 编写datarowadded事件,然后在Tables("产品.零件")表中拿到最大的需要用compute,然后在最大中加1。 Dim max As Long max = Tables("产品.零件").Compute("max(序号)") e.datarow("序号") = max + 1
|
-- 作者:seal51 -- 发布时间:2013/12/7 22:26:00 -- 虽然还糊涂着呢, 但问题解决了,需要仔细研究一下, 谢谢老师! |
-- 作者:seal51 -- 发布时间:2014/1/15 8:15:00 -- 下面这个代码为什么编号到10就不自动在加1了呢?(只能从1到10 ,不能继续11,12 。。。) Dim max As Long |
-- 作者:狐狸爸爸 -- 发布时间:2014/1/15 8:26:00 -- 序号改为整数型 |
-- 作者:seal51 -- 发布时间:2014/1/15 21:14:00 -- 如何实现01,02,03。。。。。 |
-- 作者:有点甜 -- 发布时间:2014/1/15 21:35:00 -- Dim max As String max = Tables("表B").Compute("max(序号)") If max > "" Then e.DataRow("序号") = format(val(max)+1, "00") Else e.DataRow("序号") = "01" End If
|
-- 作者:seal51 -- 发布时间:2014/1/15 21:41:00 -- 谢谢, 我加入这段代码到 DataRowAdded
怎么没起作用,还是1,2,3,。。,不是01,02,03,。。。 |
-- 作者:有点甜 -- 发布时间:2014/1/15 21:49:00 -- 呃,我测试有效,你再试试,看看表名,看看数据。 |
-- 作者:seal51 -- 发布时间:2014/1/15 21:51:00 -- 我的是关联表,不会有影响吧 |