如何在模型文件中的工作流程中拥有文件上传属性?
我使用的是alfresco 4.2版本。我想在下面的代码中添加fileupload的属性,允许用户在工作流程中上传文件。
<type name="iabookwf:createProjectSizingTask">
<parent>bpm:workflowTask</parent>
<properties>
<property name="iabookwf:mandays">
<title>Estimated Man Days</title>
<type>d:int</type>
<mandatory>true</mandatory>
</property>
<property name="iabookwf:totalCost">
<title>Total Estimated Cost</title>
<type>d:double</type>
<mandatory>true</mandatory>
</property>
</properties>
<overrides>
<property name="bpm:packageItemActionGroup">
<default>edit_package_item_actions</default>
</property>
</overrides>
<mandatory-aspects>
<aspect>bpm:assignee</aspect>
</mandatory-aspects>
</type>
答案 0 :(得分:7)
您需要添加一个使用alfresco / components / upload / components的site-webscript表单控件。实现此目的的方法是添加共享模块扩展,它将上载组件加载到“任务”页面或模板上。然后通过web扩展目录覆盖露天表单控件,以在Form控件上包含关联的上载按钮。
除了上传按钮,您还需要添加上传处理程序,以便Alfresco知道如何处理新上传的文件。通常,这可以进入工作流程站点,工作流程目录,专用于工作流程项目等。您可以复制/粘贴和扩展露天的upload.post。* webscripts并修改它们以供您自己使用。但是,无论新上载的文件在何处,访问工作流的用户都必须具有访问该文件的权限,否则该用户的关联条目将为空。
以下是典型项目布局的屏幕截图:
完成表单控件后,编辑share-config-custom.xml以定义工作流中使用的表单,并覆盖该控件的表单条目,以使用新控件。 的份额-CONFIG-custom.xml 强>
<alfresco-config>
<config evaluator="string-compare" condition="activiti$activitiAdhoc">
<forms>
<form>
<appearance>
<field id="packageItems">
<control >
<control-param name="allowUpload">true</control-param>
</control>
</field>
</appearance>
</form>
</forms>
</config>
对于一个工作示例,您可以看到可以访问我的blog on this feature,其中包含Alfresco Enterprise Maven项目的源代码。