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

QQ登录

只需一步,快速开始

查看: 964|回复: 3

[结贴] 自定义Action后台建立数据,grid出错

[复制链接]

9

主题

33

帖子

131

积分

初级会员

Rank: 2

积分
131
QQ
发表于 2016-3-25 17:08:58 | 显示全部楼层 |阅读模式
一个按钮,调用了一个自定义的Action事件,这个事件是建立了一个从表的数据的数据。//自定义Action
       public static void createOP_DepCostCollectionCostitem(String fMasterID, String fDutyDepName, String fProjectID) {                // 通过fProjectID,fDutyDepName查询并过滤项目成本科目记录
                // 查询结果列:成本科目fID,费用名称fName,
                String bselect = "select BD_CostItems.fID,BD_CostItems.fName from BD_CostItems BD_CostItems ";
                String bfilter1 = "where BD_CostItems.fProjectID = '" + fProjectID + "' ";
                String bfilter2 = "and BD_CostItems.fDutyDepName like '%" + fDutyDepName + "%'";
                String bksql = bselect + bfilter1 + bfilter2;
                Table costitemTable = KSQL.select(bksql, null, COSTITEM_MODLE, null);
                // 新建明细表
                // 成本科目迭代
                Iterator<Row> rows = costitemTable.iterator();
                String dselect = "select OP_DepCostCollectionDetail.* from OP_DepCostCollectionDetail OP_DepCostCollectionDetail ";
                String dfilter1 = "where OP_DepCostCollectionDetail.fMasterID = '" + fMasterID + "'";
                String dksql = dselect + dfilter1;
                Table detailTable = KSQL.select(dksql, null, DEPCOST_MODLE, null);
               
                detailTable.getMetaData().setKeyColumn("fID");
                detailTable.getMetaData().setStoreByConcepts("OP_DepCostCollectionDetail");
               
                while (rows.hasNext()) {
                        Row costRow = rows.next();
                        Row newRow = detailTable.appendRow(CommonUtils.createGUID());
                        newRow.setState(ModifyState.NEW);
                        newRow.setValue("version", 0);
                        newRow.setValue("fCostItemsID", costRow.getValue("fID"));
                        newRow.setValue("fMasterID", fMasterID);
                        newRow.setValue("fCharge", costRow.getValue("fName"));
                }
                detailTable.save(DEPCOST_MODLE);
        }



//JS代码
Model.prototype.button8Click = function(event) {
                var detailData = this.comp("detailData");
                if (detailData.getCount() == 0) {
                        var params = new biz.Request.ActionParam();
                        params.setString("fMasterID", this.comp("mainData").getCurrentRow().val("fID"));
                        params.setString("fDutyDepName", this.comp("mainData").getCurrentRow().val("fDutyDepName"));
                        params.setString("fProjectID", this.comp("mainData").getCurrentRow().val("fProjectID"));
                        biz.Request.sendBizRequest({
                                "context" : this.getContext(),
                                "action" : "createOP_DepCostCollectionCostitemAction",
                                "parameters" : params,
                                "callback" : function(data) {
                                        data.ignoreError = false;
                                        if (data.state) {
                                                justep.Util.hint("导入科目成功!");
                                                detailData.refreshData();
                                        } else {
                                                throw new Error("导入科目失败!请联系管理员。");
                                        }
                                }

                        });
                } else {
                        alert("成本科目已导入!")
                }
        };

//因为在JS调用事件代码中加上了refreshData的方法,所以grid会马上展示



但是在之后,页面的主表data的保存按钮(我在页面中没有添加从表data的保存按钮)会异常,无论点击多少次都不会变成禁用状态
而且在关闭页面时会出现错误提示

Cannot read property 'jqGrid' of null

TypeError: Cannot read property 'jqGrid' of null at n.ViewComponent.extend.getGridParam (eval at <anonymous> (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:1:0), <anonymous>:211:333718) at n.ViewComponent.extend.isGroupingField (eval at <anonymous> (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:1:0), <anonymous>:211:330799) at eval (eval at <anonymous> (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:1:0), <anonymous>:211:328991) at r.extend.fire (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:59:240393) at r.extend.fireEvent (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:59:241557) at justep.ModelComponent.extend._doValueChange (http://localhost:8080/x5/UI2/v_f6bf744ed7b54464ac516a4bc7096a96l_zh_CNs_desktopd_pc/system/common.min.js:7:32959) at null.callback (http://localhost:8080/x5/UI2/v_f6bf744ed7b54464ac516a4bc7096a96l_zh_CNs_desktopd_pc/system/common.min.js:7:31969) at Object.f.notifySubscribers (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:59:136660) at Object.u.utils.extend.valueHasMutated (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:59:139651) at Object.u.utils.extend.set (http://localhost:8080/x5/UI2/v_61d7f433b9e64478b2ba3ea577295142l_zh_CNs_desktopd_pc/system/core.min.js:59:139466)

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-3-25 17:48:19 | 显示全部楼层
在biz.Request.sendBizRequest执行外面调用data的刷新看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

9

主题

33

帖子

131

积分

初级会员

Rank: 2

积分
131
QQ
 楼主| 发表于 2016-3-28 09:22:37 | 显示全部楼层
jishuang 发表于 2016-3-25 17:48
在biz.Request.sendBizRequest执行外面调用data的刷新看看

还是那样
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-3-28 11:48:12 | 显示全部楼层
不调用action操作都没问题吗?

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



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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 09:52 , Processed in 0.064129 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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