The sample task copy-flow (i.e. the workflow ContinueTaskCopyFlow) automatically records when a task has been started and when it has been completed, as well as recording a task completion percentage based on the task workstate:
A task is considered to be 'started' when it transitions to a workstate with the 'inProcess' status, it is considered completed when it transitions to a workstate with the 'completed' status. See also Tasks copy flow for more details.
Where the task workstate status names are defined?
The status names are defined in BASESTRINGS.EN.XML:
<!-- Enumerations captions for task.status and event.status -->
<StringDesc Scope="EnumCaption" Name="needsAction" Value="New" />
<StringDesc Scope="EnumCaption" Name="completed" Value="Closed" />
<StringDesc Scope="EnumCaption" Name="inProcess" Value="Assigned" />
<StringDesc Scope="EnumCaption" Name="cancelled" Value="Cancelled" />
<StringDesc Scope="EnumCaption" Name="tentative" Value="Tentative" />
<StringDesc Scope="EnumCaption" Name="confirmed" Value="Confirmed" />
IMPORTANT NOTE
The ContinueTaskCopyFlow workflow contains the calendar workstate names in English as hard-coded and which won't work for the systems where the calendar workstates have different names, e.g. translated in another language. The standard names are:
For the explanation of the meaning of the standard calendar workstate names, see Tasks copy flow.
If you localized the names of your calendar workstates, following the above scheme, add at the end of their names the word in English, e.g (Planning), (Production), (Layout) etc. This will make sure that the standard workflow continues to work for you. A (more difficult) alternative is to add the new lines to the workflow, with the following syntax
<trans source="<yoursourceworkstate>" dest="<yourdestworkstate>" target="<targetname>"/>
See also There is no transition from A to B.
Example in the standard workflow
<xsl:variable name="transitionsFragment">
<trans source="Rejected" dest="Planning" target="Plan"/>
<trans source="Rejected" dest="Layout" target="Layout"/>
<trans source="Rejected" dest="Production" target="Assign"/>
<trans source="Planning" dest="Rejected" target="Reject"/>
<trans source="Planning" dest="Layout" target="Layout"/>
<trans source="Planning" dest="Production" target="Assign"/>
<trans source="Layout" dest="Rejected" target="Reject"/>
<trans source="Layout" dest="Production" target="Fill"/>
<trans source="Layout" dest="Complete" target="Complete"/>
<trans source="Production" dest="Review" target="Complete"/>
<trans source="Production" dest="Complete" target="Upload"/>
<trans source="Production" dest="Rejected" target="Reject"/>
<trans source="Review" dest="Production" target="Reject"/>
<trans source="Review" dest="Complete" target="Complete"/>
<trans source="Review" dest="Layout" target="Complete"/>
<trans source="Complete" dest="Review" target="Reject"/>
<trans source="Complete" dest="Production" target="Reject"/>
<trans source="Complete" dest="Layout" target="Reject"/>
<trans source="In Progress" dest="New" target="Reject" />
<trans source="In Progress" dest="Done" target="Complete"/>
<trans source="New" dest="In Progress" target="Assign"/>
<trans source="New" dest="Done" target="Complete"/>
<trans source="Done" dest="New" target="Rejected"/>
<trans source="Done" dest="In Progress" target="Rejected"/>
</xsl:variable>
percentComplete attribute
The workstates have a 'percentComplete' attribute that the ContinueTaskCopyFlow workflow uses to set the 'percentComplete' attribute of the tasks.
The above settings are in the schema (Tark4Include.xsd) and also the following string files:
Config\Strings\BaseStrings.en.xml
Config\Strings\ArchiveStrings.xml
Config\Strings\Tark4Strings.xml
Data files:
Config\Data\GN4\sampleCalendarCopyFlow.xml
Global configuration files:
Config\Global\GN4_Tark4_Common\PortalConfig.xml
Config\Global\GN4\edAdmin4_Config.xml
Config\Global\GN4\ted4_Config.xml
Config\Global\GN4\wf_ContinueTaskCopyFlow.xml
See also