You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Agile PLM:仅外部规格时如何填充Compliance calculated date字段?

解决Oracle Agile PLM中填充Compliance Calculated Date字段的方法

要填充标题栏的Compliance calculated date字段,你可以借助Agile PLM SDK的Item.setAttribute()方法,结合业务逻辑判断场景后执行赋值操作,具体步骤如下:

1. 确认字段的API名称

首先需要获取该日期字段的API名称(而非界面显示名),这是SDK操作的核心前提。你可以通过两种方式获取:

  • 登录Agile系统,进入Admin > Data Settings > Fields,定位到对应物料类下的目标字段,查看其API Name属性;
  • 或通过SDK代码动态查询:
AttributeDefinition attrDef = item.getAttributeDefinition("Compliance calculated date");
String apiName = attrDef.getApiName();

2. 编写赋值代码逻辑

在调用Item.setOverallCompliance()的同时,添加日期字段的赋值逻辑,确保仅在存在内部规格的场景下执行:

// 假设已获取到目标物料Item对象
Item item = ...;

// 判断是否存在内部规格(示例逻辑,需根据实际系统结构调整)
boolean hasInternalSpec = checkInternalSpecExistence(item);

if (hasInternalSpec) {
    // 设置Overall Compliance状态
    item.setOverallCompliance(OverallCompliance.PASS); // 替换为实际需要的合规状态

    // 设置Compliance Calculated Date为当前时间(或指定时间)
    Date calcDate = new Date();
    String dateFieldApiName = "ComplianceCalculatedDate"; // 替换为实际API名称
    item.setAttribute(dateFieldApiName, calcDate);

    // 提交事务保存修改
    item.save();
}

3. 关键注意事项

  • 权限验证:确保执行代码的用户拥有该物料字段的修改权限,否则会抛出权限异常;
  • 事务管理:修改操作需在Agile事务上下文内执行,若使用自定义扩展(如Action、Workflow),需确保事务正确提交;
  • 字段类型匹配:必须传入java.util.Date类型的值,不可使用字符串或其他类型,否则会触发类型不匹配错误;
  • 业务逻辑对齐:严格按照需求仅在存在内部规格时执行赋值,避免不符合场景下的错误修改。

内容的提问来源于stack exchange,提问作者DDOTS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 23:33:22