2016-03-02 78 views
2

在Alfresco中,如何禁用多選下拉操作。假設我刪除了幾個文件。所以我選擇了所有這些文件。現在,如果任何選定的文件具有特定的方面,則不應啓用刪除選項。我怎樣才能做到這一點?Alfresco多選 - 根據某個方面禁用刪除選項

這就是我試過的。但沒有運氣。

<action type="action-link" id="onActionDelete" label="menu.selected-items.delete" notAspect="p:hasSecondaryParent" /> 

我在這裏的期望是,如果任何所選擇的項目有「P:hasSecondaryParent」方面則我不希望在「所選項目」中的「刪除」操作下拉。所有其他時間應該顯示

回答

1

您需要爲此創建操作評估程序。有框外有可用的方面評估器,您需要使用該評估器來在該評估器中設置您的自定義方面。現在將該評估器添加到刪除操作的配置中。重新啓動服務器而就是這樣。

Ex。

<bean id="evaluator.doclib.indicator.exifMetadata" class="org.alfresco.web.evaluator.HasAspectEvaluator"> 
    <property name="aspects"> 
    <list> 
     <value>exif:exif</value> 
    </list> 
    </property> 

這是例如,從開箱環境文件則需要更換方面的姓名和評估的ID。然後將此評估程序添加到您的操作配置中。

<config evaluator="string-compare" condition="DocLibActions"> 

    <actions> 
    <!-- Download document --> 
    <action id="custom-action" type="link" label="customaction"> 
     <evaluator>evaluator.doclib.indicator.exifMetadata</evaluator> 
    </action> 
    </actions> 

+1

能否請您舉一些例子嗎?根據我的理解,我們不能將評估者添加到多選行動中。這是Alfresco的缺陷。 –

+0

我正在使用Alfresco Community 5.1,並且評估程序不能用於多選。 – vikash