起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2197|回复: 9

[结贴] 行复制的问题?

[复制链接]

91

主题

339

帖子

894

积分

高级会员

Rank: 4

积分
894
QQ
发表于 2015-11-6 21:41:22 | 显示全部楼层 |阅读模式
本帖最后由 hbyczg 于 2015-11-7 08:23 编辑

在一个页面中有一个grid绑定bizdata,现在需要通过点击按钮将grid的当前行的值复制生成一个新行,请问如何实现?我用的是x5V3.2.1,还有另一个需求:有一个订单页,上面主从设置了互逆,客户经常下同样的订单,想要实现点击”复制生成订单“按钮,生成一张新订单,生成的新订单的主表日期和编号是新的,其它包括订单明细上的产品都是自动从老订单复制过来的。这个如何实现?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2015-11-9 09:52:34 | 显示全部楼层
如果只是简单的可以用data上提供的assign方法可以参考
var rowa = data.getCurrentRow();
var row = mainData.add();
row.assign(rowa);

如果是复制的时候要把从的数据也进行操作以及某些字段值的修改,推荐写action
在action中通过sql或者ksql操作
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

91

主题

339

帖子

894

积分

高级会员

Rank: 4

积分
894
QQ
 楼主| 发表于 2015-11-9 19:31:14 | 显示全部楼层
jishuang 发表于 2015-11-9 09:52
如果只是简单的可以用data上提供的assign方法可以参考
var rowa = data.getCurrentRow();
var row = mainDa ...

我试了一个下在同一个bizdata下用assign方法可以看到新生成了一条记录,但不能保存,保存就出错
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2015-11-10 11:57:24 | 显示全部楼层
hbyczg 发表于 2015-11-9 19:31
我试了一个下在同一个bizdata下用assign方法可以看到新生成了一条记录,但不能保存,保存就出错 ...

通过一个data直接复制,rowid是相同的,保存的时候应该会提示主键重复了吧

具体的错误提示是什么?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

91

主题

339

帖子

894

积分

高级会员

Rank: 4

积分
894
QQ
 楼主| 发表于 2015-11-10 16:24:31 | 显示全部楼层
jishuang 发表于 2015-11-10 11:57
通过一个data直接复制,rowid是相同的,保存的时候应该会提示主键重复了吧

具体的错误提示是什么? ...

更新记录ER_WP, ER_WP, key="59DB076B106144D9837B56C3E90595ED"出错, 不存在符合条件的数据, UPDATE ER_WP ER_WP SET ER_WP = :ER_WP_new, ER_WP.fCPMC = :fCPMC_new, ER_WP.fCPXH = :fCPXH_new, ER_WP.fDJ = :fDJ_new, ER_WP.fDW = :fDW_new, ER_WP.fGG = :fGG_new, ER_WP.fLX = :fLX_new, ER_WP.fPP = :fPP_new, ER_WP.version = :version + 1 WHERE ER_WP= :ER_WP_old AND ER_WP.version = :version_old,保存数据失败!
编码:JUSTEP150186
原因:JUSTEP150186
隐藏详细
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.justep.system.action.Engine.invokeActions(Native Method)
at com.justep.system.action.Engine.invokeActions(Unknown Source)
at com.justep.business.server.BusinessServer.doAction(Unknown Source)
at com.justep.business.server.BusinessServer.doExcute(Unknown Source)
at com.justep.business.server.BusinessServer.excute(Unknown Source)
at com.justep.business.server.BusinessServer.excute(Unknown Source)
at com.justep.business.server.BusinessServerServlet.execService(Unknown Source)
at com.justep.business.server.BusinessServerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
at com.justep.x.bs.BusinessServerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.justep.exception.BusinessException: 编码: JUSTEP150186; 提示: 更新记录ER_WP, ER_WP, key="59DB076B106144D9837B56C3E90595ED"出错, 不存在符合条件的数据, UPDATE ER_WP ER_WP SET ER_WP = :ER_WP_new, ER_WP.fCPMC = :fCPMC_new, ER_WP.fCPXH = :fCPXH_new, ER_WP.fDJ = :fDJ_new, ER_WP.fDW = :fDW_new, ER_WP.fGG = :fGG_new, ER_WP.fLX = :fLX_new, ER_WP.fPP = :fPP_new, ER_WP.version = :version + 1 WHERE ER_WP= :ER_WP_old AND ER_WP.version = :version_old; 可能的原因: 数据被其他用户修改了; 数据被其他用户删除了
at com.justep.exception.BusinessException.create(Unknown Source)
at com.justep.system.data.impl.TableImpl.edit(Unknown Source)
at com.justep.system.data.impl.TableImpl.save(Unknown Source)
at com.justep.system.data.impl.TableImpl.save(Unknown Source)
at com.justep.system.data.BizData.save(Unknown Source)
at BizProcedure.save(BizProcedure.java:143)
... 27 more
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2015-11-10 17:22:37 | 显示全部楼层
js代码具体怎么写的发一下看看?新增的执行的应该是insert,不是update
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

91

主题

339

帖子

894

积分

高级会员

Rank: 4

积分
894
QQ
 楼主| 发表于 2015-11-10 19:22:19 | 显示全部楼层
jishuang 发表于 2015-11-10 17:22
js代码具体怎么写的发一下看看?新增的执行的应该是insert,不是update

var data = this.comp("treeData");
var row2 = this.comp('treeData').getCurrentRow();
var row =data.add();
row.assign(row2);
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2015-11-11 13:47:06 | 显示全部楼层
参考
var data = this.comp("bizData1");
                var oldrow = data.getCurrentRow();
                data.newData();
                row = data.getCurrentRow();
                row.assign(oldrow);
                data.setValue("AP_HJ",UUID.createUUID());
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

19

主题

45

帖子

107

积分

初级会员

Rank: 2

积分
107
QQ
发表于 2016-2-23 14:11:51 | 显示全部楼层
jishuang 发表于 2015-11-11 13:47
参考
var data = this.comp("bizData1");
                var oldrow = data.getCurrentRow();

你好我用这个方法 复制数据后 保存还是报错 提示的是更新操作
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-2-23 15:11:30 | 显示全部楼层
发具体的错误信息
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-18 08:18 , Processed in 0.108698 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表