帖子
帖子
用户
博客
课程
显示全部楼层
2
帖子
1
勋章
49
Y币

如何通过一个按钮打开一个原厂单据的参照

[复制链接]
发表于 2023-11-3 14:29:23
原厂单据新增一个按钮,需要通过这个按钮打开工作站参照


通过下面的方式  后端可以返回参照数据,但是无法弹出弹框,不知道红框框起来的TransferTable应该怎么来

点击按钮后后端接口返回情况

本帖子中包含更多资源,您需要 登录 才可以下载或查看,没有帐号?立即注册

X
30
帖子
1
勋章
159
Y币
2.在扩展脚本中监听你配置按钮的click方法,然后调参照的弹出方法即可,代码如下:

// 以下代码需要在扩展脚本中实现
var transferReferModel = new cb.models.ReferModel({
   cRefType: 'auth_User_Ref', // 弹出参照的refCode
   multiple: 'true',          // 是否多选
   domainKey: process.env.__DOMAINKEY__,
});
// TransferTable就是你单据上配置的那个参照的cItemName
viewmodel.addProperty('TransferTable', transferReferModel); // 将这个参照添加到单据的viewmodel中
transferReferModel.setVisible(false); // 将页面配置的参照隐藏
// 监听按钮的点击事件
viewmodel.get('btnAllocateUser').on('click',function(data){
  // ... 如果参照需要回显,这里还需要获取参照已选值,执行参照的setValue方法给参照赋值
  // 比如: transferReferModel.setValue([{id:**,name:**}])
    transferReferModel.browse(true);// 参照弹出
})
transferReferModel.on('afterValueChange',function(data){
    console.log(data.value); // 参照选择后的值
})

3.如果是按钮弹出卡片上已有的一个参照

const referModel = viewModel.get("参照CItemName")
referModel.setVisible(false);
viewmodel.get('按钮').on('click',function(data){
    referModel.browse(true);// 参照弹出
})
referModel.on('afterValueChange',function(data){
    console.log(data.value); // 参照选择后的值
})
您需要登录后才可以回帖 登录

本版积分规则