供应商注册页面二开相关问题汇总

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

供应商注册页面二开相关问题汇总

Q:为什么在BOS设计器中的【供应商注册资料】增加控件,供应商注册页面不生效?

A:供应商注册资料为独立的H5页面,不是系统中自动生成的通用基础资料,该功能适用于第一次注册供应商时之用。


Q:如果想修改这个页面,加一些必录项该如何操作?

A:客户需要具备二开能力,可以去服务器Kingdee-->WebSite-->Html5目录下拿到SupReg.html这个文件,在必录项前加上<span class="span_spec">* </span>,并在checkBeforeSave()加上对应字段的校验操作


Q:供应商注册上的基础资料希望可以按组织过滤,应该如何实现?

A:需要反编译服务端组件:Kingdee.K3.SCM.SCP.Business.PlugIn.dll的ScpSupRegHandler类,在查询基础资料时在FilterString中加上对应的条件即可


Q:想要在供应商注册页面新增字段,应该如何操作?

A:首先客户需要具备二开的能力,总体分为三个步骤:

1.去服务器Kingdee-->WebSite-->Html5目录下拿到SupReg.html这个文件,并增加对应前端控件(目前仅支持文本、单选、多选控件)

2.反编译服务端组件:Kingdee.K3.SCM.SCP.Business.PlugIn.dll的ScpSupRegHandler类,在通版基础上,自己去解析前端新增的字段

3.找到App_Data中的Common.config文件并修改路由配置(通版配置为:<add path="SRM/ScpSupRegHandler" verb="*" type="Kingdee.K3.SCM.SCP.Business.PlugIn.ScpSupRegHandler,Kingdee.K3.SCM.SCP.Business.PlugIn" />,二开需要改为自己的)


Q:想要在供应商注册页面增加多选基础资料,如何实现?

A:由于供应商注册资料为独立的H5页面,目前暂不能支持BOS设计器中所有的控件,仅支持文本框、复选框、单选下拉框和多选下拉框,多选下拉框的样式在通版中已经提供,新增时可以参考:

<div class="info_div"><span class="span_nomal">多选结算方式</span></div><select id="FMulSettleTypeId" autocomplete="off" multiple="multiple"></select>


多选下拉框一共有3处地方需要处理:1.初始化 2.查询供应商 3.保存供应商

1.在初始化时要加上:

$(function(){

    $('#FMulSettleTypeId').multipleSelect({

            placeholder: "请选择",

            selectAllText: "全选",

            allSelected: "选择全部"

    });

});


2.查询供应商(QuerySupReg)

let sceneIdList = resultData.FMulSettleTypeId;

let sceneIdArr = sceneIdList.split(",");

$('#FMulSettleTypeId option').each(function (i, content) {

        if ($.inArray($.trim(content.value), sceneIdArr) >= 0) {

                this.selected = true;

        }

});

//加载保存过后的多选值后,要调用刷新

$("#FMulSettleTypeId").multipleSelect('refresh');


3.保存供应商(如后端需要逗号分隔的字符串可以参考如下示例)

// 获取select元素的options属性

const options = $('#FMulSettleTypeId')[0].options               

const selectedValueArr = []              

for (let i = 0; i < options.length; i++) {

        // 如果该option被选中,则将它的value存入数组

        if (options[i].selected) {

                selectedValueArr.push(options[i].value)

        }

}

// 如果后端需要字符串形式,比如逗号分隔

const selectedValueStr = selectedValueArr.join(',')


具体可以参考:https://wenku.my7c.com/article/253915978210245888?fromAction=POST_ARTICLE 的介绍



大佬可以给写个例子吗?如何添加一个字段

供应商注册页面二开相关问题汇总

Q:为什么在BOS设计器中的【供应商注册资料】增加控件,供应商注册页面不生效?A:供应商注册资料为独立的H5页面,不是系统中自动生成的通...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息