Finder Workflow

Finder Workflow is the next-generation interface for Alfred Desktop for managing workflows. It makes use of the Alfred API to communicate with Alfresco. Finder Workflow is distributed under the form of an AMP.

Changes from Workflows 1.0

  1. The special field transitions has been removed, since transitions are always shown in the navigation bar at the top of the page. The line - Id: transitions should be removed from all configurations. Should this field still be present, an error is shown instead of task transition buttons.
  2. All workflow task fields are editable by default. Fields can be hidden when in edit mode by removing Edit from the RenderMode field option. Alternatively, fields can be forced in read only mode by adding the ReadOnly: true configuration option (not yet implemented).
  3. Command configuration (Id: commands-configuration), is-relevant-evaluators and is-executable-evaluators are currently not supported.
  4. ReadOnly: true is not supported yet.
  5. Force: true is not supported yet.

Forms Configuration of Finder Workflow

Finder Workflows is configured using the YAML forms configuration placed in Data Dictionary/Fred/Forms.

Finder Workflow Configuration for Alfred Desktop

Injection in Alfred Desktop browser tab

Finder Workflows 2.0 can be injected in Alfred Desktop by placing a context XML file in Data Dictionary/Fred/Config.

<objects xmlns="http://www.springframework.net">

    <object id="repository.service-locator"
            type="Xenit.Fred.Session.IoC.RepositoryServiceLocatorAdaptor, Xenit.Fred.Session"
            singleton="true">
        <property name="Repository" ref="repository" />
    </object>
  <object id="control.mediator.wf-webbrowser"
           parent="control.mediator.browser"
           singleton="false">
    <!--
    URL: https://dpv.dev.xenit.eu/alfresco/s/finder-workflow
    Example with URL:
        {url:schema}://{url:host}:{url:port}/{url:context}/[URL]?ticket={auth:ticket}
    Can also be used to point to another server:
        https://workflows2.myalfresco.com/alfresco/s/finder-workflow?ticket={auth:ticket}
    -->
    <property name="Name" value="Workflows 2.0" />
    <property name="Url" value="{url:schema}://{url:host}:{url:port}/{url:context}/s/finder-workflow?alf_ticket={auth:ticket}" />
  </object><br />    <object id="bootstrap.controllers"
            type="Xenit.Fred.Session.Bootstrap.BootstrapControllers, Xenit.Fred.Session"
            singleton="true">
        <property name="ControllerHost" expression="@(application-controller).PrimaryWindowController.MainController.TabController" />
        <property name="ControllerList">
            <list element-type="IController">
                <ref object="controller.session.browser.main" />
                <ref object="controller.session.search.main" />
                <ref object="controller.workflow-overview" />
                <ref object="control.mediator.wf-webbrowser" />
            </list>
        </property>
    </object>

  <object id="command.builder.workflow-overview-2"
          parent="command.builder.tab-hosted-controller"
          type="Xenit.Fred.View.CommandBuilder.WebBrowserTabControllerCommandBuilder, Xenit.Fred.View"
          init-method="Register">
    <property name="Title" value="Workflow 2.0 Overview" />
    <property name="Parent" ref="menu.window" />
    <property name="LocalIconName" value="workflows.png" />

    <property name="ID" value="control.mediator.wf-webbrowser" />

    <property name="Executable">
      <list element-type="ICommandEvaluator">
        <ref object="command.eval.not-available-offline" />
      </list>
    </property>
  </object><br /></objects>