<?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 Re: How to retrieve associations of a content type in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307951#M261081</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Delegations are stored in childAssocs, but content model for them is quite tricky to support 'delegation by role' in addition to 'default delegation'. See slide 17 in &lt;/SPAN&gt;&lt;A href="http://www.slideshare.net/itdsystems/orgchart-for-alfresco-lightning-talk" rel="nofollow noopener noreferrer"&gt;http://www.slideshare.net/itdsystems/orgchart-for-alfresco-lightning-talk&lt;/A&gt;&lt;SPAN&gt; for details.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There are two options to achieve what you want. The first one:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var originalUser = people.getPerson("user1");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var delegateeUserName;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if(originalUser.hasAspect("alvexoc&lt;img id="smileysurprised" class="emoticon emoticon-smileysurprised" src="https://connect.hyland.com/i/smilies/16x16_smiley-surprised.png" alt="Smiley Surprised" title="Smiley Surprised" /&gt;rgchartMember"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(originalUser.properties["alvexoc&lt;img id="smileysurprised" class="emoticon emoticon-smileysurprised" src="https://connect.hyland.com/i/smilies/16x16_smiley-surprised.png" alt="Smiley Surprised" title="Smiley Surprised" /&gt;utOfOffice"] == true)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var delegation = originalUser.childAssocs["alvexoc:delegation"][0];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;delegateeUserName = delegation.assocs["alvexoc:delegationTarget"][0].properties.userName;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;logger.log(" %%% " + delegateeUserName);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;logger.log(delegatee + " *******$$$$$$$$*******");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;logger.log("Person is in the office ********************");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;However, I'd prefer the second option and use native Alvex root-scope object:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// We use orgchart.getPerson() here instead of people.getPerson()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var originalUser = orgchart.getPerson("user1");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if(originalUser.getOutOfOffice())&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; var delegateeUser = originalUser.getDefaultDelegation().getTarget();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; logger.log( "Out of office, delegated to: " + delegateeUser.getUserName() );&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; logger.log( "In office" );&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This method is better not only because it's shorter. The point is that we (as Alvex development team) will provide API-level backward compatibility, but we can not guarantee that backend models will stay the same in the future Alvex releases.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only thing to note about native 'orgchart' root scope object - call to orgchart.getPerson() returns JscriptOrgchartPerson object. You can take a look at &lt;/SPAN&gt;&lt;A href="https://github.com/ITDSystems/alvex/blob/master/core/orgchart/repo/src/java/com/alvexcore/repo/orgchart/jscript/JscriptOrgchartPerson.java" rel="nofollow noopener noreferrer"&gt;https://github.com/ITDSystems/alvex/blob/master/core/orgchart/repo/src/java/com/alvexcore/repo/orgchart/jscript/JscriptOrgchartPerson.java&lt;/A&gt;&lt;SPAN&gt; for methods available.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 24 Nov 2013 20:39:05 GMT</pubDate>
    <dc:creator>avasyukov</dc:creator>
    <dc:date>2013-11-24T20:39:05Z</dc:date>
    <item>
      <title>How to retrieve associations of a content type</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307949#M261079</link>
      <description>Good day,I am trying to retrieve known associations off a type that is attached to a node using javascript. I have tried several ways that seems not to work, or perhaps I just do not know. Here is the script I am running in attempt of achieving this.&amp;lt;javascript&amp;gt;var originalUser = people.getPer</description>
      <pubDate>Fri, 22 Nov 2013 09:19:43 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307949#M261079</guid>
      <dc:creator>darkredd</dc:creator>
      <dc:date>2013-11-22T09:19:43Z</dc:date>
    </item>
    <item>
      <title>Re: How to retrieve associations of a content type</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307950#M261080</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have heard of Alvex but I have not looked at its content model. Are you sure that alvexoc:delegation is a *child* association and not a *peer* association? If it is a peer association, use assocs instead of childAssocs.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Jeff&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 22 Nov 2013 20:51:34 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307950#M261080</guid>
      <dc:creator>jpotts</dc:creator>
      <dc:date>2013-11-22T20:51:34Z</dc:date>
    </item>
    <item>
      <title>Re: How to retrieve associations of a content type</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307951#M261081</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Delegations are stored in childAssocs, but content model for them is quite tricky to support 'delegation by role' in addition to 'default delegation'. See slide 17 in &lt;/SPAN&gt;&lt;A href="http://www.slideshare.net/itdsystems/orgchart-for-alfresco-lightning-talk" rel="nofollow noopener noreferrer"&gt;http://www.slideshare.net/itdsystems/orgchart-for-alfresco-lightning-talk&lt;/A&gt;&lt;SPAN&gt; for details.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There are two options to achieve what you want. The first one:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var originalUser = people.getPerson("user1");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var delegateeUserName;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if(originalUser.hasAspect("alvexoc&lt;img id="smileysurprised" class="emoticon emoticon-smileysurprised" src="https://connect.hyland.com/i/smilies/16x16_smiley-surprised.png" alt="Smiley Surprised" title="Smiley Surprised" /&gt;rgchartMember"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(originalUser.properties["alvexoc&lt;img id="smileysurprised" class="emoticon emoticon-smileysurprised" src="https://connect.hyland.com/i/smilies/16x16_smiley-surprised.png" alt="Smiley Surprised" title="Smiley Surprised" /&gt;utOfOffice"] == true)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var delegation = originalUser.childAssocs["alvexoc:delegation"][0];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;delegateeUserName = delegation.assocs["alvexoc:delegationTarget"][0].properties.userName;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;logger.log(" %%% " + delegateeUserName);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;logger.log(delegatee + " *******$$$$$$$$*******");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;logger.log("Person is in the office ********************");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;However, I'd prefer the second option and use native Alvex root-scope object:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// We use orgchart.getPerson() here instead of people.getPerson()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var originalUser = orgchart.getPerson("user1");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if(originalUser.getOutOfOffice())&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; var delegateeUser = originalUser.getDefaultDelegation().getTarget();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; logger.log( "Out of office, delegated to: " + delegateeUser.getUserName() );&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; logger.log( "In office" );&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/javascript&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This method is better not only because it's shorter. The point is that we (as Alvex development team) will provide API-level backward compatibility, but we can not guarantee that backend models will stay the same in the future Alvex releases.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only thing to note about native 'orgchart' root scope object - call to orgchart.getPerson() returns JscriptOrgchartPerson object. You can take a look at &lt;/SPAN&gt;&lt;A href="https://github.com/ITDSystems/alvex/blob/master/core/orgchart/repo/src/java/com/alvexcore/repo/orgchart/jscript/JscriptOrgchartPerson.java" rel="nofollow noopener noreferrer"&gt;https://github.com/ITDSystems/alvex/blob/master/core/orgchart/repo/src/java/com/alvexcore/repo/orgchart/jscript/JscriptOrgchartPerson.java&lt;/A&gt;&lt;SPAN&gt; for methods available.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 24 Nov 2013 20:39:05 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307951#M261081</guid>
      <dc:creator>avasyukov</dc:creator>
      <dc:date>2013-11-24T20:39:05Z</dc:date>
    </item>
    <item>
      <title>Re: How to retrieve associations of a content type</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307952#M261082</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi avasyukov.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You solution worked like a charm. As you might have guessed, I had tried all other avenues I knew or thought of to no good; one of the attempts was very close to your solution, just lacked something.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am very grateful for your assistance. However, option 2 does not seem to work.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;DarkRedd&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Nov 2013 07:58:45 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-retrieve-associations-of-a-content-type/m-p/307952#M261082</guid>
      <dc:creator>darkredd</dc:creator>
      <dc:date>2013-11-25T07:58:45Z</dc:date>
    </item>
  </channel>
</rss>

