Java 如何在VersionOne中重新排列表达式中提及的顺序?

Java 如何在VersionOne中重新排列表达式中提及的顺序?,java,rest,versionone,Java,Rest,Versionone,我使用JavaAPI以编程方式为VersionOne资产创建对话。在检查Web UI上的对话时,我看到提到的资产是按字母顺序排列的 我想知道是否有一种方法可以推翻提及的默认安排。目标安排将来自父资产->子资产 大概是这样的: 默认设置:添加重置按钮(任务)、添加提交按钮(任务)、创建UI(故事) 目标:创建UI(故事)、添加重置按钮(任务)、添加提交按钮(任务) 我试过一些东西: 查看表达式和消息元数据。找不到任何与排序或排序相关的内容 首先添加父资产,然后添加子资产: // create

我使用JavaAPI以编程方式为VersionOne资产创建对话。在检查Web UI上的对话时,我看到提到的资产是按字母顺序排列的

我想知道是否有一种方法可以推翻提及的默认安排。目标安排将来自父资产->子资产

大概是这样的:

  • 默认设置:添加重置按钮(任务)、添加提交按钮(任务)、创建UI(故事)
  • 目标:创建UI(故事)、添加重置按钮(任务)、添加提交按钮(任务)
我试过一些东西:

  • 查看表达式和消息元数据。找不到任何与排序或排序相关的内容
  • 首先添加父资产,然后添加子资产:

    // create a new conversation; this will act as the container of the expression (message)
    
    IAssetType conversationType = super.connection.metaModel.getAssetType(CONVERSATION);
    Asset conversationAsset = super.connection.services.createNew(conversationType, Oid.Null);
    super.connection.services.save(conversationAsset);
    
    // create a new expression containing the error message
    
    IAssetType expressionType = super.connection.metaModel.getAssetType(EXPRESSION);
    IAttributeDefinition expressionContentAttr = super.connection.metaModel.getAttributeDefinition(EXPRESSION_CONTENT);
    IAttributeDefinition expressionBelongsTo = super.connection.metaModel.getAttributeDefinition(EXPRESSION_BELONGS_TO);
    IAttributeDefinition expressionMentionsAttr = super.connection.metaModel.getAttributeDefinition(EXPRESSION_MENTIONS);
    
    Asset expressionAsset = super.connection.services.createNew(expressionType, Oid.Null);
    
    // set the message
    expressionAsset.setAttributeValue(expressionContentAttr, message);
    
    // add the message to the conversation
    expressionAsset.setAttributeValue(expressionBelongsTo, conversationAsset.oid);
    
    // set the context of the expression to belong to the VersionOne record
    Oid oid = Oid.fromToken(entity.oid, super.connection.metaModel);
    expressionAsset.addAttributeValue(expressionMentionsAttr, oid);
    
    // add mentions of other assets to the conversation
    for (String assetOid : assetOids) {
        Oid otherOid = Oid.fromToken(assetOid, super.connection.metaModel);
        expressionAsset.addAttributeValue(expressionMentionsAttr, otherOid);
    }
    
    super.connection.services.save(expressionAsset);
    

  • 如果您选中meta,您将看到提及是一个多关系属性。不幸的是,无法设置多重关系属性中项目的顺序。 以下是用于检查元数据的查询:

    VersionOne UI有一些逻辑,可以在显示对话之前设置对话的顺序