功能区 Workbench:“1:Attribute - ControlStep 的数据字段名称不能为 null 或为空”

Ribbon Workbench : "1:Attribute - datafieldname of ControlStep cannot be null or empty"

我尝试使用 RibbonWorkbench for CRM 2013 来创建一个按钮,将我的一个实体转换为另一个实体(非常类似于用于构建商机的合格线索按钮)。

我创建了一个拆分按钮,将其自身分为两个部分:演变和事件。然后,我在这两个部分后面创建了命令,并关联了我之前使用主 CRM 界面创建的两个 Web 资源 (JScript)。

而且...嗯,这几乎是我使用 RibbonWorkbench 所做的唯一事情。 但是在尝试发布解决方案时,我遇到了一个错误:

Your solution could not be implemented
Reasons :
1:Attribute - datafieldname of ControlStep cannot be null or empty.

我已经搜索过,但找不到系统调用的 Attribute 和 ControlStep。 我可能搜索错了,但我在 Microsoft Dynamics 社区或互联网上搜索时似乎找不到任何线索。

谁能指导我理解这个错误?

编辑:此处要求的是 RibbonWorkbench 直接生成的 UML 代码。

<?xml version="1.0" encoding="utf-16"?>
<RibbonDiffXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <CustomActions>
    <CustomAction Id="cpncyd.cpncyd_ticket.ConvertTo.CustomAction" Location="Mscrm.Form.cpncyd_ticket.MainTab.Save.Controls._children" Sequence="55">
      <CommandUIDefinition>
        <SplitButton Alt="$LocLabels:cpncyd.cpncyd_ticket.ConvertTo.Alt" Command="cpncyd.cpncyd_ticket.ConvertTo" Id="cpncyd.cpncyd_ticket.ConvertTo" Image32by32="/_imgs/ribbon/ResolveCase_32.png" Image16by16="/_imgs/ribbon/ResolveCase_16.png" LabelText="$LocLabels:cpncyd.cpncyd_ticket.ConvertTo.LabelText" Sequence="55" TemplateAlias="o1" ToolTipTitle="$LocLabels:cpncyd.cpncyd_ticket.ConvertTo.ToolTipTitle" ToolTipDescription="$LocLabels:cpncyd.cpncyd_ticket.ConvertTo.ToolTipDescription">
          <Menu Id="cpncyd.cpncyd_ticket.ConvertTo.Menu">
            <MenuSection Id="cpncyd.cpncyd_ticket.toIncident" Title="$LocLabels:cpncyd.cpncyd_ticket.toIncident.Title" Sequence="10" DisplayMode="Menu16">
              <Controls Id="cpncyd.cpncyd_ticket.ConvertToIncident.Controls" />
            </MenuSection>
            <MenuSection Id="cpncyd.cpncyd_ticket.toEvolution" Title="$LocLabels:cpncyd.cpncyd_ticket.toEvolution.Title" Sequence="20" DisplayMode="Menu16">
              <Controls Id="cpncyd.cpncyd_ticket.Section3.Section.Controls" />
            </MenuSection>
          </Menu>
        </SplitButton>
      </CommandUIDefinition>
    </CustomAction>
  </CustomActions>
  <Templates>
    <RibbonTemplates Id="Mscrm.Templates" />
  </Templates>
  <CommandDefinitions>
    <CommandDefinition Id="cpncyd.cpncyd_ticket.Evolution">
      <EnableRules />
      <DisplayRules />
      <Actions>
        <JavaScriptFunction FunctionName="Evolution" Library="$webresource:cpncyd_ticket.Evolution" />
      </Actions>
    </CommandDefinition>
    <CommandDefinition Id="cpncyd.cpncyd_ticket.Incident">
      <EnableRules />
      <DisplayRules />
      <Actions>
        <JavaScriptFunction FunctionName="Incident" Library="$webresource:cpncyd_ticket.Incident" />
      </Actions>
    </CommandDefinition>
  </CommandDefinitions>
  <RuleDefinitions>
    <TabDisplayRules />
    <DisplayRules />
    <EnableRules />
  </RuleDefinitions>
  <LocLabels>
    <LocLabel Id="cpncyd.cpncyd_ticket.ConvertTo.LabelText">
      <Titles>
        <Title description="Convertir" languagecode="1036" />
        <Title description="Convert Into" languagecode="1033" />
      </Titles>
    </LocLabel>
    <LocLabel Id="cpncyd.cpncyd_ticket.ConvertTo.ToolTipTitle">
      <Titles>
        <Title description="Convertir en tant que" languagecode="1036" />
        <Title description="Convert into" languagecode="1033" />
      </Titles>
    </LocLabel>
    <LocLabel Id="cpncyd.cpncyd_ticket.ConvertTo.ToolTipDescription">
      <Titles>
        <Title description="Convertir le ticket en tant que ... " languagecode="1036" />
        <Title description="Convert this ticket As Evolution, Incident or Closed Ticket." languagecode="1033" />
      </Titles>
    </LocLabel>
    <LocLabel Id="cpncyd.cpncyd_ticket.ConvertTo.Alt">
      <Titles>
        <Title description="Convertir en tant que..." languagecode="1036" />
        <Title description="Convert into..." languagecode="1033" />
      </Titles>
    </LocLabel>
    <LocLabel Id="cpncyd.cpncyd_ticket.toIncident.Title">
      <Titles>
        <Title description="Incident" languagecode="1036" />
        <Title description="Incident" languagecode="1033" />
      </Titles>
    </LocLabel>
    <LocLabel Id="cpncyd.cpncyd_ticket.toEvolution.Title">
      <Titles>
        <Title description="Evolution" languagecode="1036" />
        <Title description="Evolution" languagecode="1033" />
      </Titles>
    </LocLabel>
  </LocLabels>
</RibbonDiffXml>

这不是与功能区有关的消息 Xml - 它来自我认为的流程 - 尝试创建一个仅包含您尝试编辑的实体的解决方案,然后将其加载到功能区Workbench.

功能区 Workbench 将导出您加载的解决方案,然后重新导入它,因此由于任何组件的错误导致导入失败,然后发布将失败。