如何使用 getPropertiesDt() 从 Inventory 表中检索特定列?

问题描述 投票:0回答:1

我正在与 Autodesk Tandem 合作,并实现了一个自定义应用程序,其中显示设施及其关联视图。现在我想检索 Inventory 表中的所有列。

这是我当前的代码:

await app.displayFacility(matchingFacility, aModelIds, viewer);
await app.views.setCurrentView(matchingFacility, matchingView);
const viewer: Autodesk.Viewing.GuiViewer3D = this.oViewer;
const model: Autodesk.Viewing.Model = viewer.model;
const visibleDbIds = await model.getVisibleDbIds();
const inventoryElements: = await model.getPropertiesDt(visibleDbIds);

这工作得很好,除了缺少一些特定的列:

  • [常用][类别名称]
  • [常用][源文件]

我的问题是:

  1. 有 getPropertiesDt() 可选参数的文档吗?
  2. 如何确保上述列包含在结果中?
autodesk-tandem
1个回答
0
投票

这是该方法的完整签名:

DtModel.getPropertiesDt(dbIds: number[], options?: {
  classificatioID?: string;
  history?: boolean;
  includeDeleted?: boolean;
  intersect?: boolean;
  wantTimeSeries?: boolean;
}): Promise<any[]>;

库存组件实际上使用不同的方法来获取属性:

DtModel.query({
  includes?: {
        standard?: boolean;
        applied?: boolean;
        element?: boolean; 
        type?: boolean;
        id?: boolean;
    };
    compositeChildren?: boolean;
    dbIds: number[];
}): Promise<{ rows: any[]; cols: any[]; }>;

返回相同的数据但使用不同的结构(更适合我们的网格组件)。当我们根据库存上下文添加其他列时,还会进行一些后处理。

© www.soinside.com 2019 - 2024. All rights reserved.