卡片分录添加操作按钮如何监听原创
金蝶云社区-Coding
Coding
3人赞赏了该文章 1,039次浏览 未经作者许可,禁止转载编辑于2022年05月09日 09:11:42

仿照人人差旅的差旅报销中行程信息,每个卡片有编辑和删除操作

图片.png

经过搜索,这两个使用图片展示的控件,设置允许点击,编辑不设置任何操作代码,删除设置删除分录的操作代码即可

图片.png


插件代码是kd.fi.er.formplugin.web.TripReimburseBillEdit的基类kd.fi.er.formplugin.web.TripBaseBillEdit

registerListener(EventObject e) {
    .registerListener(e).addClickListeners(String[]{})}


click(EventObject evt) {
    .click(evt)String key = ((Control)evt.getSource()).getKey()String entityId = .getView().getEntityId()IDataModel model = .getModel()DynamicObject dataEntity = model.getDataEntity()String billStatus = dataEntity.getString()var8 = -
    switch(var8) {
        case 0:
            int tripEntryIndex = model.getEntryCurrentRowIndex("tripentry");
            this.openTripExpenseEntry(tripEntryIndex, true);
            break;
    }
}


如果是普通的label标签,直接可以使用

CardEntry cardEntry = this.getView().getControl("");
cardEntry.addCellClickListener(this);

来获取点击的是哪个label,第几行数据,但是如果是图片,button(按钮)、Image(图片展示)、Vector(图标)都无法在cellClick事件中获取到点击的是哪个字段标识。

(CellClickEvent cellClickEvent) {
    row = cellClickEvent.getRow()String fieldKey = cellClickEvent.getFieldKey()


最后感谢 @ISV产品研发赋能部_高俊 老师的指导,终于翻到了代码的位置,解决了单元格点击图片无法响应具体操作的问题。

赞 3