表单插件中如何获取子单据体字段值

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

表单插件中如何获取子单据体字段值

问题描述

  • 问题一:在表单插件中获取当前表单的子单据体的字段值

  • 问题二:在表单插件中获取DynamicObject对象中的子单据体的字段值

  • 问题三:在表单插件中获取平铺对象中的子单据体的字段值

解决方案

  • 问题一的解决方案:

       步骤1.  获取当前表单的数据模型(类型为BillModel)

       步骤2. 从数据模型中获取到单据体(类型为DynamicObjectCollection)

       步骤3. 从单据体的每一行中获取该行的子单据体对象(类型为DynamicObjectCollection

       步骤4. 从子单据体的每一行中获取该行对应的字段

       示例代码如下:

// 步骤1.获取当前表单的数据模型对象
BillModel model = (BillModel) this.getModel();   

// 步骤2.从数据模型中获取到单据体
DynamicObjectCollection entryEntity = model.getEntryEntity("单据体标识");

// 步骤3.从单据体的每一行中获取gai行的子单据体对象,这里通过遍历的方式展现该效果
for (DynamicObject entry : entryEntity) {    
    // 获取当前单据体行的子单据体    
    DynamicObjectCollection subEntryEntity = entry.getDynamicObjectCollection("子单据体标识");  
      
    // 从子单据体的每一行中获取当前行的子单据体的字段值,这里通过遍历的方式展现该效果    
    for (DynamicObject subEntry : subEntryEntity) {        
        Object value = subEntry.get("字段标识");    
    }
}
  • 问题二的解决方案:与问题一解决方案的思路相同,示例代码如下:

// 假设从BusinessDataServiceHelper中获取到某单据的DynamicObject
DynamicObject dynamicObject = BusinessDataServiceHelper.load(id, "单据编码");

// 步骤1.从DynamicObject中获取单据体
DynamicObjectCollection entryEntity = dynamicObject.getDynamicObjectCollection("单据体标识");

// 步骤2.从单据体的每一行中获取该行的子单据体对象,这里通过遍历的方式展现该效果
for (DynamicObject entry : entryEntity) {        
    // 获取当前单据体行的子单据体  
    DynamicObjectCollection subEntryEntity = entry.getDynamicObjectCollection("子单据体标识"); 
    // 从子单据体的每一行中获取当前行的子单据体的字段值,这里通过遍历的方式展现该效果        
    for (DynamicObject subEntry : subEntryEntity) {                
        Object value = subEntry.get("字段标识");        
    }
}
  • 问题三的解决方案:平铺对象获取子单据体字段的方法为 dynamicObject.get("单据体标识.子单据体标识.字段标识"),示例代码如下

// 假设从QueryServiceHelper中获取到平铺对象
DynamicObjectCollection dynamicObjectCollection = QueryServiceHelper.query("单据标识", "查询字段", filter);

// 从单据体的每一行中获取该行的子单据体对象,这里通过遍历的方式展现该效果
for (DynamicObject dynamicObject : dynamicObjectCollection ) {            
    
    // 获取子单据体中的字段
    Object obj = dynamicObject.get("单据体标识.子单据体标识.字段标识");
}











表单插件中如何获取子单据体字段值

问题描述问题一:在表单插件中获取当前表单的子单据体的字段值问题二:在表单插件中获取DynamicObject对象中的子单据体的字段值问题三:在...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息