表单插件中如何获取子单据体字段值
问题描述
问题一:在表单插件中获取当前表单的子单据体的字段值
问题二:在表单插件中获取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对象中的子单据体的字段值问题三:在...
点击下载文档
本文2024-09-23 01:15:02发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-144746.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章