K3Cloud BOS设计 Python 插件 弹出列表

C#插件参照

下载

添加文本控件

添加一个 【文本】控件,属性中勾选 【显示编辑按钮】,输入【标识】、【字段名】、【绑定实体属性】
在这里插入图片描述

表单插件

  1. 点击【注册Python脚本/编辑Python脚本】
  2. 输入【脚本名称】

在这里插入图片描述

1.Python 插件脚本

1. 写窗体回调函数

def SetModel(results):
    if  results.ReturnData is None:  # 验证 返回内容是否为空
	 return;
    m = results.ReturnData[0]
    row = m.DataRow  # 获取选中行  前提是 单选,多选还未测试
    this.View.Model.SetValue("FRECIPIENT_TEL", row["FMOBILE"]);  # row[""] 是取选中行中的字段值
    this.View.Model.SetValue("FReveiceName", m.Name);  # m.Name 直接取官方字段属性

2. 封装弹出窗体函数

def Show_FrmList(form_id, filter_str):
    showParam = ListShowParameter();  # 打开列表
    showParam.Context = this.Context;
    showParam.FormId = form_id;  # 填写需要打开窗体的唯一标识
    showParam.IsShowApproved = True;  # 只显示已审核单据
    showParam.IsLookUp = True;
    showParam.MultiSelect = False;  # 单选
    showParam.PermissionItemId = PermissionConst.View;
    showParam.OpenStyle.ShowType = ShowType.Modal;
    showParam.PageId = Guid.NewGuid().ToString();
    showParam.ParentPageId = this.View.PageId;  # 当前窗体的Id     
    if filter_str != '':  # 判断筛选脚本是否为空,为空就跳过
        showParam.ListFilterParameter.Filter = filter_str;
    this.View.ShowForm(showParam, lambda x: SetModel(x));  # 打开窗体,并用lambda调用回调函数

3. 重写BeforeF7Select

def BeforeF7Select(e):  # 重写事件
    if e.FieldKey.lower() == "freveicename":  # 判断
    	cusid = this.View.Model.DataObject["FCustomerID_Id"];
    	if  cusid != 0:  # 判断父级是否选择,是  执行下一步
			filter_str = "  FCustId = '%s'" % cusid;  # 拼写筛选脚本   
			Show_FrmList("BD_CustContact", filter_str);  # 调用 弹出窗体函数(封装后的)
	else:  # 否 弹出提示框
		 this.View.ShowMessage('请先选择开票客户或者选择合同号!', MessageBoxOptions.OK);
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

漫伊

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值