Dimension¶
- class deepfos.element.dimension.Dimension(element_name: str, folder_id: str = None, path: str = None, strict: bool = False, server_name: str = None)¶
维度元素
提供维度成员的读取、新增、删除、修改及保存能力,支持以表达式批量查询成员。
- 参数
element_name – 元素名
folder_id – 元素所在的文件夹id
path – 元素所在的文件夹绝对路径
strict – 是否开启严格校验模式。开启后会校验所有成员是否存在于系统维度中,会额外发起网络请求,性能略有损失,默认关闭。
admonition (.) – : 快速开始
code-block (.) – : pythonfrom deepfos.element.dimension import Dimension, DimMemberdim = Dimension(‘org’)# 读取所有成员members = dim.members# 增加成员并保存dim.add_member(DimMember(name=’A01’, parent_name=’A’))dim.save()# 按表达式查询mbrs = dim.query(‘Base(#root,0)’, fields=[‘ud1’])mbr = mbrs[0]ud1 = mbr.ud1name = mbr.name
note (.) – :-
add_member、delete_member、update_member等写操作只在内存中修改,必须调用save()才会提交到系统。-strict=True开启后写操作会验证父成员是否存在,适合生产环境的数据完整性场景。
提示
如果不提供folder_id和path,将会使用元素名和元素类型进行全局搜索。 如果找到 唯一匹配 的元素,那么一切正常,否则将会报错。
方法
add_member(*members[, silent])增加维度成员
async_check_exist(ele_name[, ele_type, …])异步查询元素是否存在
check_exist(ele_name[, ele_type, folder, …])查询元素是否存在
delete_member(*members[, silent])删除维度成员
delete_shared_memeber(member[, parent_name, …])删除共享维度成员
load_dataframe(dataframe[, strategy, reorder])保存
DataFrame数据至维度query(expression[, fields, as_model, role, …])查询成员
reorder_members(memo, complete)成员重排序
save([reorder])保存维度
等效于调用DeepModel创建的维度的数据同步
to_deepmodel_object(object_name[, …])维度成员导入至已有DeepModel对象
update(member_name, **attrs)更新维度成员
update_parent(member_name, origin_parent, …)修改系统已有维度成员的父级成员
update_parent_batch(dataframe)批量修改系统已有维度成员的父级成员
wait_for(attr)异步等待成员变量
属性
同步 API 对象
异步 API 对象
元素信息
元素类型
当前维度实例是否连接到 1.0 版本接口
当前维度的所有成员
当前维度的元信息
维度层级关系表
维度数据表