将其他字段添加到新的DataList,而不是Alfresco中的Title

时间:2016-11-25 13:10:17

标签: alfresco alfresco-share

我需要知道,在开始时,用户从Web界面创建一个新的DataList:

  • 如何删除默认的Alfresco Datalist,例如“Elenco di contatti”或“Elenco di eventi”ecc .....以便只查看我的自定义Datalist选择

  • 如何删除“Descrizione”和“Titolo”字段以及如何将其他/我的必填字段添加到Datalist创建中

see the image attached

我完全像Muralidharan在回答中告诉我的那样,但是:

当从界面我创建一个数据列表时,标题不会消失

当我尝试修改数据列表时再次显示标题,还有描述,我不想要它们

see screenshot

如何调整?

这是datalist-model.xml的代码

    <types>
<type name="acmedl:dataList">
         <title>Data List container type</title>
         <parent>cm:folder</parent>
         <properties>
            <property name="dl:dataListItemType">
               <title>List Item Type</title>
               <description>Determines which Data Dictionary type will be used when create new items within the Data List.</description>
               <type>d:text</type>
            </property>
            <property name="dl:responsiblePerson">
               <title>Data List Owner</title>               
               <type>d:text</type>
            </property>
         </properties>
        </type>

        <type name="acmedl:projectListItem">
            <title>My document</title>
            <parent>dl:dataListItem</parent>
            <properties>
                <property name="acmedl:x1">
                    <type>d:text</type>
                    <mandatory>true</mandatory>
                    <constraints>
                        <constraint ref="acmedl:x1" />
                    </constraints>
                </property>
                <property name="acmedl:x2">
                    <type>d:text</type>
                    <mandatory>true</mandatory>
                </property>
                <property name="acmedl:x3">
                    <type>d:text</type>
                    <mandatory>true</mandatory>
                </property>
            </properties>
        </type>
    </types>

这是share-config-custom.xml的代码

<!-- dl:dataList type (Creating Data Lists) -->
   <config evaluator="model-type" condition="acmedl:dataList" replace="true">
      <forms>
         <!-- Data Lists: Create new Data List -->
         <form>
            <field-visibility>
                <!-- <show id="cm:title" force="true" /> -->
               <show id="dl:responsiblePerson" force="true" />        <!-- Our custom field -->        
            </field-visibility>
            <create-form template="../data-lists/forms/datalist-new.ftl" />
            <appearance>
             <!-- <field id="cm:title" mandatory="true">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field> -->
               <field id="dl:responsiblePerson" mandatory="true">  <!-- Our custom field -->
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
            </appearance>
         </form>
      </forms>
   </config>

   <!-- dl:dataList type (Editing Data Lists) -->
   <config evaluator="node-type" condition="acmedl:dataList">
      <forms>
         <!-- Data Lists: Edit Data List details -->
         <form>
            <field-visibility>
                 <!-- <show id="cm:title" force="true" /> -->
                <show id="dl:responsiblePerson" force="true" />     <!-- Our custom field -->
            </field-visibility>
            <edit-form template="../data-lists/forms/datalist-edit.ftl" />
            <appearance>
              <!-- <field id="cm:title" mandatory="true">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field> -->
               <field id="dl:responsiblePerson" mandatory="true"> <!-- Our custom field -->
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>

            </appearance>
         </form>
      </forms>
   </config>



    <!--
        acmedl:projectListItem type create form config
        -->
    <config evaluator="model-type" condition="acmedl:projectListItem">
        <forms>
            <!-- Create item form -->
            <form>
                <field-visibility>
                    <show id="acmedl:x1" />
                    <show id="acmedl:x2" />
                    <show id="acmedl:x3" />
                </field-visibility>
                <create-form template="../data-lists/forms/dataitem.ftl" />
                <appearance>
                </appearance>
            </form>
        </forms>
    </config>

    <!--
        acmedl:projectListItem type edit form config
    -->
    <config evaluator="node-type" condition="acmedl:projectListItem">
        <forms>
            <form>
                <field-visibility>
                    <show id="acmedl:x1" />
                    <show id="acmedl:x2" />
                    <show id="acmedl:x3" />
                </field-visibility>
                <edit-form template="../data-lists/forms/dataitem.ftl" />
                <appearance>
                </appearance>
            </form>
        </forms>
    </config>

1 个答案:

答案 0 :(得分:2)

查看此代码后,dataList继承自cm:文件夹。如果要添加任何自定义属性,首先这些属性应该是dl:dataList的一部分,否则,您无法将值存储到存储库中。而且我也不确定如何将属性定制到现有的dataList中。让我问一个不同的问题。

<!-- Data List - Container. DO NOT MODIFY -->
      <type name="dl:dataList">
         <title>Data List container type</title>
         <parent>cm:folder</parent>
         <properties>
            <property name="dl:dataListItemType">
               <title>List Item Type</title>
               <description>Determines which Data Dictionary type will be used when create new items within the Data List.</description>
               <type>d:text</type>
            </property>
         </properties>
      </type>

我在数据库模型和分享方面添加了一个名为数据列表所有者(dl:responsiblePerson)的字段。基于这个想法,我希望你可以添加自己的字段。

我们假设,我们手动将自定义属性( dl:responsiblePerson )添加到dl:dataList中,如下所示。

<type name="dl:dataList">
         <title>Data List container type</title>
         <parent>cm:folder</parent>
         <properties>
            <property name="dl:dataListItemType">
               <title>List Item Type</title>
               <description>Determines which Data Dictionary type will be used when create new items within the Data List.</description>
               <type>d:text</type>
            </property>
            <property name="dl:responsiblePerson">
               <title>Data List Owner</title>               
               <type>d:text</type>
            </property>
         </properties>
      </type>

在Share方面,将以下代码段用于share-config-custom.xml文件。 始终在datalist创建表单中使用cm:title属性,否则您将获得datalist名称一些字母数字/ GUID值。

<!-- dl:dataList type (Creating Data Lists) -->
   <config evaluator="model-type" condition="dl:dataList" replace="true">
      <forms>
         <!-- Data Lists: Create new Data List -->
         <form>
            <field-visibility>
                <show id="cm:title" force="true" />
               <show id="dl:responsiblePerson" force="true" />        <!-- Our custom field -->        
            </field-visibility>
            <create-form template="../data-lists/forms/datalist-new.ftl" />
            <appearance>
             <field id="cm:title" mandatory="true">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="dl:responsiblePerson" mandatory="true">  <!-- Our custom field -->
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
            </appearance>
         </form>
      </forms>
   </config>

   <!-- dl:dataList type (Editing Data Lists) -->
   <config evaluator="node-type" condition="dl:dataList">
      <forms>
         <!-- Data Lists: Edit Data List details -->
         <form>
            <field-visibility>
                 <show id="cm:title" force="true" />
                <show id="dl:responsiblePerson" force="true" />     <!-- Our custom field -->
            </field-visibility>
            <edit-form template="../data-lists/forms/datalist-edit.ftl" />
            <appearance>
              <field id="cm:title" mandatory="true">
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>
               <field id="dl:responsiblePerson" mandatory="true"> <!-- Our custom field -->
                  <control template="/org/alfresco/components/form/controls/textfield.ftl" />
               </field>

            </appearance>
         </form>
      </forms>
   </config>

Data List Creation