以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于添加数据问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=129112) |
||||
-- 作者:裴保民 -- 发布时间:2018/12/21 16:49:00 -- 关于添加数据问题 有一张商户数据表怎么实现复制一条数据?要实现复制后的数据商户名不能重复如果重复就将商户名加上一个后缀(1)关键是如果已经复制过一次或多次了再加后缀(1)还是重复了,怎么实现依次判断全商户名或商户名加后缀(1)(2)(3)等等直至不重复后就执行复制操作呢? |
||||
-- 作者:有点甜 -- 发布时间:2018/12/21 16:54:00 -- 查找个数,如
Dim c = DataTables("表A").compute("count(第一列)", "商户名 = \'" & 某个值 & "\'") msgbox(c) If c <= 0 Then msgbox("不变") Else msgbox(c-1) End If |
||||
-- 作者:裴保民 -- 发布时间:2018/12/21 17:07:00 -- 第一条没复制前的数据商户名是原名没有后面的值(1) |
||||
-- 作者:有点甜 -- 发布时间:2018/12/21 17:08:00 -- 认认真真看懂2楼代码。改写到自己的代码里面去。 |
||||
-- 作者:裴保民 -- 发布时间:2018/12/21 23:49:00 -- 甜老师可能是我表达的不明白的原因,附表如下图 选定某一行后单击复制按钮后实现如下
(1)如果在原数据行第一次复制时(因为第一次添加数据时时不带区别符的,只有复制后的数据才带区别符的,以避免商户名重复。),将原数据行的“商户名称”字段尾部加上一个区别符如“(1)”、“(2)”、“(3)“等。以避免商户名重复。 (2)如果选中的行中的“商户名称”字段带有区别符时,如“(1)”就将“(1)”区别符替换为其他区别符如“(2)”,以避免商户名重复。 (3)“商户名称”命名规则是:不带区别符优先命名,其次是带区别符,区别符是从小到大来命名的,如(1)、(2)、(3)、(4)、(5)、(6)等等,必须连着号并且不重复命名规则。
此主题相关图片如下:微信截图_20181221232353.png |
||||
-- 作者:有点蓝 -- 发布时间:2018/12/22 9:04:00 -- 建议增加一个辅助整数序号列,用作区别。因为作为字符串,2是比11大的,这样的话要取出最大值就很麻烦。 |
||||
-- 作者:裴保民 -- 发布时间:2018/12/22 9:19:00 -- 那该用什么思路来实现其中一条数据时商户名是不能重复的呢? 一个客户可能有好几个同名的商户名称但是添加时不知道该客户有几个商户,想实现再添加数据时来座椅循环判断只要查出第一次出现不重复的商户名称时就执行复制数据动作 我的思路是:先判断商户名称+(1)如果该数据存在,就执行判断断商户名称+(2)如果该数据存在,就执行判断断商户名称+(3)以此类推直至查到数据库中“商户名称”不重复时就执行复制动作并赋值该字段
[此贴子已经被作者于2018/12/22 9:29:58编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2018/12/22 9:42:00 -- 增加一个辅助整数序号列,用作区别。 |
||||
-- 作者:裴保民 -- 发布时间:2018/12/22 9:48:00 --
不明白怎么实现这一功能
|
||||
-- 作者:有点蓝 -- 发布时间:2018/12/22 10:09:00 --
|