BusinessModel

class deepfos.element.bizmodel.BusinessModel(element_name: str, folder_id: str = None, path: str = None, server_name: str = None)

业务模型元素

提供逻辑表访问、审批流配置读取以及按模型关系保存数据等高频能力。

快速开始

from deepfos.element.bizmodel import BusinessModel

bm = BusinessModel('my_biz_model')

# 获取元素名为order的逻辑表
order_tbl = bm.logic_tables['order']
# 固定筛选条件  year = '2024' & period = '3'
order_tbl.lock(year__eq='2024', period__eq='3')
df_order = order_tbl.query()

detail_tbl = bm.logic_tables['order_detail']
detail_tbl.lock(year__eq='2024', period__eq='3')
df_detail = detail_tbl.query()

# 更改 df_order 和 df_detail的数据
....
# 保存
data = {'order': df_order, 'order_detail': df_detail}
bm.save(data)
参数
  • element_name – 元素名

  • folder_id – 元素所在的文件夹id

  • path – 元素所在的文件夹绝对路径

提示

如果不提供folder_id和path,将会使用元素名和元素类型进行全局搜索。 如果找到 唯一匹配 的元素,那么一切正常,否则将会报错。

方法

async_check_exist(ele_name[, ele_type, …])

异步查询元素是否存在

attach(data, primary_kv[, parent_kv, …])

追加数据

build_save_data(data_map[, table, …])

将多张数据表的 DataFrame 组织成业务模型保存载荷

check_exist(ele_name[, ele_type, folder, …])

查询元素是否存在

copy_rows(config)

对模型表做数据拷贝

save(data[, allow_detached_data, …])

保存数据

set_approval(primary[, operation, …])

设置审批流

set_approval_batch(operation_name, …[, …])

设置审批流(已废弃)

set_approval_ex(operation_name, main_primary_kv)

设置审批流

wait_for(attr)

异步等待成员变量

属性

api

同步 API 对象

approval_process

模型配置的审批流信息

async_api

异步 API 对象

default_partition_id

默认分区id

element_info

元素信息

element_type

元素类型

logic_tables

以逻辑表格式存储的业务模型数据表

meta

业务模型的元数据信息

models_permission

模型审批对象

permission

权限配置信息

sub_models

子模型信息

table_memo

数据表uuid -> 逻辑表表节点的字典