苍穹各种参数后台获取原创
金蝶云社区-开发者赋能部_吴富彪
开发者赋能部_吴富彪
18人赞赏了该文章 3690次浏览 未经作者许可,禁止转载编辑于2022年02月22日 13:55:18

应用场景:

金蝶云苍穹目前有的参数类型为:公共参数、应用参数、单据参数、单据类型参数、云产品参数、列表选项参数、用户组织参数、用户选项参数8种类型。每种参数对应不同的应用场景功能。

参数接口类:

SystemParamServiceHelper

ParameterHelper

ParameterReader



模板类型

可实现功能

集团管控

需要发布

公共参数

对基础平台的参数做极度设定

不支持

云产品参数

对云参数做集中设定

支持

应用参数

对应用参数做集中设定

支持

单据参数

对单据参数做集中设定

不支持

单据类型参数

对单据类型参数做集中设定

不支持

列表选项参数

对列表选项参数做集中设定

不支持

用户选项参数

对用户选项参数做集中设定

不支持

用户组织参数

对用户组织参数做集中设定

不支持


image.png


代码获取各种参数:

公共参数:

Object hidehometab = SystemParamServiceHelper.getPublicParameter("参数标识");

云产品参数:

AppInfo appInfo = AppMetadataCache.getAppInfo("应用标识");

String cloudId = appInfo.getCloudId();

String appId = appInfo.getAppId();

long orgId = RequestContext.get().getOrgId();

DynamicObject systemParameter = ParameterReader.getSystemParameter(cloudId, appId, orgId, 0);

应用参数:

//获取应用参数        

//获取当前登录业务单元id        

long orgId = RequestContext.get().getOrgId();        

//从缓存中获取应用信息        

AppInfo ptstDemo = AppMetadataCache.getAppInfo("应用标识");        

//获取应用的主键        

String appId = ptstDemo.getId();                        

AppParam apm = new AppParam();        

apm.setAppId(appId);       

// 参数的组织   

apm.setOrgId(orgId);       

//获取整体应用参数        

Map<String,Object> params = SystemParamServiceHelper.loadAppParameterFromCache(apm);

//从整个应用参数中获取某个参数属性值        

Object obj = params.get("参数标识");

单据参数:

//获取单据参数

//获取单据参数对象

DynamicObject dynamicObject = ParameterReader.getBillParameter("单据标识");

BillParam kdec_os_bill_reg = SystemParamServiceHelper.loadBillParameterFromCache("单据标识");

Object isviewbill = dynamicObject.get("参数标识");

单据类型参数:

//获取单据类型参数

List<String> appids = new ArrayList<>();

//应用id

appids.add(appId);

//通过应用id集合获取单据类型

List<Map<String, Object>> billTypesByAppId = BillTypeServiceHelper.getBillTypesByAppId(appids);

if(null != billTypesByAppId && billTypesByAppId.size() >0 ){

//获取单据类型主键id

Long id = (Long) billTypesByAppId.get(0).get("id");

//获取单据类型参数,formId为单据的标识,paramFormId为单据类型参数页面的标识

DynamicObject billTypeParameter = (DynamicObject) SystemParamServiceHelper.getBillTypeParameter("单据标识", "单据类型参数页面的标识", id);

int anInt = billTypeParameter.getInt("参数标识");

}

列表选项参数:

//获取列表参数

//获取当前上下文信息

RequestContext requestContext = RequestContext.get();

//获取当前登录用户的id

long currUserId = requestContext.getCurrUserId();

//获取列表选项参数DynamicObject对象,formId是列表对应的单据标识,listOption是列表选项参数页面的标识

DynamicObject listOptionParameter = ParameterReader.getListOptionParameter(currUserId, "单据标识", "列表选项参数页面的标识", null);

Object o = listOptionParameter.get("参数标识");

用户选项参数:

用户组织参数:

赞 18