<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Completed Worflows by user in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291809#M244939</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am after a list of WorkflowItem by user. (Who started the workflow)&amp;nbsp; I can get them by&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; workflowService.getCompletedWorkflws();&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;and then loop through for the getItiator(),&amp;nbsp; but that seems like that's wrong for very large amount of workflows.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So I try a workflow query like this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Map&amp;lt;QName,Object&amp;gt; map = new HashMap&amp;lt;QName,Object&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;map.put(QName.createQName(AlfrescoModel.BPM_NAMESPACE,"creator"), userId);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WorkflowInstanceQuery query = new WorkflowInstanceQuery();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;query.setActive(false);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;query.setCustomProps(map);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;List&amp;lt;WorkflowInstance&amp;gt; workflowList = workflowService.getWorkflows(query);&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;this is always returning 0 workflows.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;WHat am I doing wrong?&amp;nbsp; Is there a good tutorial on the workflow query?&amp;nbsp; The API documentation is NO help at all.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 26 Apr 2014 00:02:07 GMT</pubDate>
    <dc:creator>mangar</dc:creator>
    <dc:date>2014-04-26T00:02:07Z</dc:date>
    <item>
      <title>Completed Worflows by user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291809#M244939</link>
      <description>I am after a list of WorkflowItem by user. (Who started the workflow)&amp;nbsp; I can get them by&amp;nbsp;&amp;nbsp;&amp;nbsp; workflowService.getCompletedWorkflws();‍‍‍and then loop through for the getItiator(),&amp;nbsp; but that seems like that's wrong for very large amount of workflows.So I try a workflow query like this:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Map&amp;lt;QNam</description>
      <pubDate>Sat, 26 Apr 2014 00:02:07 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291809#M244939</guid>
      <dc:creator>mangar</dc:creator>
      <dc:date>2014-04-26T00:02:07Z</dc:date>
    </item>
    <item>
      <title>Re: Completed Worflows by user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291810#M244940</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Using&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Map&amp;lt;QName,Object&amp;gt; map = new HashMap&amp;lt;QName,Object&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;map.put(QName.createQName(AlfrescoModel.BPM_NAMESPACE,"creator"), userId);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;WorkflowInstanceQuery query = new WorkflowInstanceQuery();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;query.setCustomProps(map);&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;will search workflow instances that have a global variable named {AlfrescoModel.BPM_NAMESPACE}creator and with value userId,it is not what you are looking for.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If you want to search workflow instances that&amp;nbsp; started&amp;nbsp; by some one,please do as below&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //First get a person node by user using PersonService.getPerson(String userName)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NodeRef personNode = personService.getPerson(userId);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //then define qname initiation search condition&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static final QName QNAME_INITIATOR = QName.createQName(NamespaceService.DEFAULT_URI, WorkflowConstants.PROP_INITIATOR);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Map&amp;lt;QName,Object&amp;gt; map = new HashMap&amp;lt;QName,Object&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;map.put(QNAME_INITIATOR, userId);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;WorkflowInstanceQuery query = new WorkflowInstanceQuery();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;query.setCustomProps(map);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // search &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;query.setActive(false);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;List&amp;lt;WorkflowInstance&amp;gt; workflowList = workflowService.getWorkflows(query);&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 26 Apr 2014 01:39:18 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291810#M244940</guid>
      <dc:creator>kaynezhang</dc:creator>
      <dc:date>2014-04-26T01:39:18Z</dc:date>
    </item>
    <item>
      <title>Re: Completed Worflows by user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291811#M244941</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;OK, 2 things,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; 1.&amp;nbsp; I believe you mean map.put(QNAME_INITIATOR, personNode);&amp;nbsp; Because that works!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; 2.&amp;nbsp; I printed out the properties of the workflow and I got this from my log:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Workflow Prop:{&lt;/SPAN&gt;&lt;A href="http://www.alfresco.org/model/content/1.0}creator" rel="nofollow noopener noreferrer"&gt;http://www.alfresco.org/model/content/1.0}creator&lt;/A&gt;&lt;SPAN&gt; Value:userid2&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So why did my original query not work?&amp;nbsp; Is there a difference between a process variable and a global variable? &lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 26 Apr 2014 03:08:23 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291811#M244941</guid>
      <dc:creator>mangar</dc:creator>
      <dc:date>2014-04-26T03:08:23Z</dc:date>
    </item>
    <item>
      <title>Re: Completed Worflows by user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291812#M244942</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BR /&gt;&lt;SPAN&gt;Generally, properties setted in customProps will match global variable with same name in&amp;nbsp; workflow instance.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;But QNAME_INITIATOR is a special property ,it will match startBy field.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 26 Apr 2014 11:03:41 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/completed-worflows-by-user/m-p/291812#M244942</guid>
      <dc:creator>kaynezhang</dc:creator>
      <dc:date>2014-04-26T11:03:41Z</dc:date>
    </item>
  </channel>
</rss>

