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

QQ登录

只需一步,快速开始

查看: 5149|回复: 7

[结贴] acton获取数据怎么放入子表tab

[复制链接]

11

主题

52

帖子

118

积分

初级会员

Rank: 2

积分
118
QQ
发表于 2017-9-12 10:32:16 | 显示全部楼层 |阅读模式
版本: BeX5V3.5 小版本号: 3.7
数据库: Oracle 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows 7 浏览器: Chrome
        Model.prototype.newBtnClick = function(event){
                var data = this.comp("mainData");
                data.newData();
                var data1 = this.comp("detailData");
                biz.Request.sendBizRequest({
                "context" : this.getContext(),
                "action" : "getSql",
                "async" : true,
                "callback" : function(callbackData) {
                            callbackData.ignoreError = false;
                            if (callbackData.state) {
                                data1.loadData(callbackData.response);
                                data1.first();
                            }
                        }
            });
        };

11

主题

52

帖子

118

积分

初级会员

Rank: 2

积分
118
QQ
 楼主| 发表于 2017-9-12 11:30:20 | 显示全部楼层
界面已经获取数据了,子表也获取了主表主键,但保持以后数据库没数据,详细见附件截图
QQ图片20170912112654.png
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-9-12 13:39:03 | 显示全部楼层
loadData的数据行状态是什么?
如果没有设置模式是none是不能保存的

可以自己在table返回前遍历table设置行状态为new
table.png
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

11

主题

52

帖子

118

积分

初级会员

Rank: 2

积分
118
QQ
 楼主| 发表于 2017-9-12 15:56:18 | 显示全部楼层
出现主键不唯一的
保存数据失败! ,
执行KSQL出错, KSQL: INSERT INTO DE_CSZB DE_CSZB(DE_CSZB, DE_CSZB.version, DE_CSZB.fCS1, DE_CSZB.fCS2, DE_CSZB.fZBID) VALUES (E_CSZB, :version, :fCS1, :fCS2, :fZBID)
编码:JUSTEP150210
隐藏详细
java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor231.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
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: 编码: JUSTEP150210; 提示: 执行KSQL出错, KSQL: INSERT INTO DE_CSZB DE_CSZB(DE_CSZB, DE_CSZB.version, DE_CSZB.fCS1, DE_CSZB.fCS2, DE_CSZB.fZBID) VALUES (E_CSZB, :version, :fCS1, :fCS2, :fZBID)
at com.justep.exception.BusinessException.create(Unknown Source)
at com.justep.system.data.impl.TableUtilsImplement.ksqlInsert(Unknown Source)
at com.justep.system.data.impl.TableUtilsImplement.ksqlExecuteUpdate(Unknown Source)
at com.justep.system.data.KSQL.executeUpdate(Unknown Source)
at com.justep.system.data.KSQL.executeUpdate(Unknown Source)
at com.justep.system.data.impl.TableImpl.insert(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:21)
... 26 more
Caused by: com.justep.exception.BusinessException: 编码: JUSTEP150039; 提示: 执行sql: INSERT INTO DE_CSZB (DE_CSZB.fID, DE_CSZB.VERSION, DE_CSZB.FCS1, DE_CSZB.FCS2, DE_CSZB.FZBID) VALUES ( ? , ? , ? , ? , ? ), binds: [70E3C5A772DE4488806568D5C359CDD3, 0, 3, 3, AD15BD48C7084B8992D0EFFD403DC3B8]出错
at com.justep.exception.BusinessException.create(Unknown Source)
at com.justep.system.ksql.KSQLUtils.execSqlUpdate(Unknown Source)
... 35 more
Caused by: java.sql.SQLException: ORA-00001: 违反唯一约束条件 (DLSC.SYS_C0013516)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:213)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:952)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1160)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3368)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
... 36 more
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-9-12 16:00:41 | 显示全部楼层
主键值具体怎么生产的?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

11

主题

52

帖子

118

积分

初级会员

Rank: 2

积分
118
QQ
 楼主| 发表于 2017-9-12 16:35:16 | 显示全部楼层
系统fid自动生产的
回复 支持 反对

使用道具 举报

11

主题

52

帖子

118

积分

初级会员

Rank: 2

积分
118
QQ
 楼主| 发表于 2017-9-12 16:37:54 | 显示全部楼层
        public static Table getSql(){
                 String ksql = "select tc.* from DE_CSSQL tc";//需要查询数据的ksql
             Table table = KSQL.select(ksql, null, "/demotest/testSql/data", null);//调用平台提供的API执行sql,并返回table
             table.getProperties().put(Table.PROP_NAME_ROWID, "tc");
             Iterator<Row> rows = table.iterator();
             while(rows.hasNext()){
                     Row row = rows.next();
                     row.setState(ModifyState.NEW);
             }
             return table;
               
        }
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-9-12 17:05:21 | 显示全部楼层
从DE_CSSQL中查出来的有导入到DE_CSSQL中?那主键肯定重复啊
table遍历的时候重新设置一下主键值

row.setString("tc", UUID.randomUUID().toString());
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-25 09:15 , Processed in 0.110158 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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