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

金蝶云苍穹定义了八种参数类型,每种服务于不同场景,如公共参数、云产品参数等。各类型参数接口提供功能设定,但并非都支持集中设定。文本详细展示了获取各种参数值的代码实现方式,包括通过系统服务、缓存读取等方式获取公共参数、云产品参数、应用参数、单据参数等。

应用场景:

金蝶云苍穹目前有的参数类型为:公共参数、应用参数、单据参数、单据类型参数、云产品参数、列表选项参数、用户组织参数、用户选项参数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("参数标识");

用户选项参数:

用户组织参数:

图标赞 19
19人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!