<?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>Question Re: Java code for user-wise report access list in Technology Q&amp;A</title>
    <link>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaa-p/10202704#M3686767</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This gets a little complicated because security can be assigned to specific users, but also to user gropus.&amp;nbsp; Also you have both Explicit Principals - user and groups that have been explicitly granted access to something - and Effective Principals - users and groups that have inherited access to something.&amp;nbsp; You also have to look at the access level and advanced rights assigned to determine whether they have access or whether the access has been taken away.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, here's some potential logic for you:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get the list of users.&amp;nbsp; I would create a UserInfo class that has, at a minimum, the Title (User ID) and Full Name and put these in a HashMap&amp;lt;Integer, UserInfo&amp;gt; that has a key of the SI_ID for the user.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get the list of groups - I would create a GroupInfo class that has the group name and then a HashMap&amp;lt;Integer, UserInfo&amp;gt; of the users who are members of that group.&amp;nbsp; Then I would put these in a HashMap&amp;lt;Integer, GroupInfo&amp;gt; that has the SI_ID of the group as its key.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get a list of the Access Levels - I put these in a HashMap&amp;lt;Integer, String&amp;gt; that thas the SI_ID of the role/access level and its name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get the list of reports. &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - For each report, walk through the ExplicitPrincipals (getSecurityInfo2().getExplicitPrincipals()).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - For each ExplicitPrincipal, walk through the ExplicitRoles (getRoles())&amp;nbsp; to build a string of the access levels that are assigned (there can be multiple...)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If the ExplicitPrincipal is a group (found in your group hashmap), walk through the group's list of users and output the information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If the ExplicitPrincipal is a user (found in your user hashmap), output the user info.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If there is no role assigned, walk through the list of ExplicitRights (getRights()) for the principal to make sure that the "View Object" right has been assigned.&amp;nbsp; If it has, output as above.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Repeat all of these steps for the EffectivePrincipals found in getSecurityInfo2().getEffectivePrincipals() to show folks who have inherited rights.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Dell&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 06 Mar 2014 16:03:36 GMT</pubDate>
    <dc:creator>DellSC</dc:creator>
    <dc:date>2014-03-06T16:03:36Z</dc:date>
    <item>
      <title>Java code for user-wise report access list</title>
      <link>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaq-p/10202702</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dear All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a very big requirement and I have no idea where to begin. I only have a limited experience with SAP BI's Java SDK and has mostly used it for just generating list of all reports with their folder path or list of all users in a group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This time though I have a big ambition (or at least I think it would be a difficult one to pull off)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I need&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Is a list of all reports with all users who has access to it and the access level they have.&lt;/P&gt;&lt;P&gt;It needs to have following columns&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Report Name, Full Report Path, User ID (and Name if possible), Access level&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am also trying to write a code for list of reports and the user groups that has to it.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I have&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I know how to retrieve the list of all reports and I know how to retrieve list of users. But what I don't know is how to connect them or to get the access level they have.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So if anyone can help me out, it would be great. It would be even more great if I could have a ready to use code! I know it is too much to ask, but as I said I am a novice to Java part and if you give me pieces, it would take me days to stitch em up and make a full code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So if there are any kind ones out there, please help!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2014 15:12:48 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaq-p/10202702</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2014-03-06T15:12:48Z</dc:date>
    </item>
    <item>
      <title>Re: Java code for user-wise report access list</title>
      <link>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaa-p/10202703#M3686766</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Refer to the blog at&lt;/P&gt;&lt;P&gt;&lt;A __default_attr="103349" __jive_macro_name="blogpost" class="jive_macro jive_macro_blogpost" data-orig-content="Getting the Universe Access Level for UserGroups using Enterprise Java SDK" href="https://community.sap.com/" modifiedtitle="true" title="Getting the Universe Access Level for UserGroups using Enterprise Java SDK"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The blog is to get the usergroup access levels on folder. You can change the two queries in the code to&lt;/P&gt;&lt;P&gt;String query = "SELECT&amp;nbsp; SI_ID,SI_NAME FROM&amp;nbsp; ci_systemobjects WHERE&amp;nbsp; SI_kind='user' ";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IInfoObjects infoobjects = iStore.query(query);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String universeQuery = "SELECT&amp;nbsp; SI_ID,SI_NAME FROM ci_infoobjects WHERE SI_Kind='crystalreport'";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IInfoObjects universes = iStore.query(universeQuery);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Doing so you we get users access levels for all crystal reports.&lt;/P&gt;&lt;P&gt;You would need to check the login in the code and construct one according to your needs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Prithvi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2014 15:55:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaa-p/10202703#M3686766</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2014-03-06T15:55:33Z</dc:date>
    </item>
    <item>
      <title>Re: Java code for user-wise report access list</title>
      <link>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaa-p/10202704#M3686767</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This gets a little complicated because security can be assigned to specific users, but also to user gropus.&amp;nbsp; Also you have both Explicit Principals - user and groups that have been explicitly granted access to something - and Effective Principals - users and groups that have inherited access to something.&amp;nbsp; You also have to look at the access level and advanced rights assigned to determine whether they have access or whether the access has been taken away.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, here's some potential logic for you:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get the list of users.&amp;nbsp; I would create a UserInfo class that has, at a minimum, the Title (User ID) and Full Name and put these in a HashMap&amp;lt;Integer, UserInfo&amp;gt; that has a key of the SI_ID for the user.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get the list of groups - I would create a GroupInfo class that has the group name and then a HashMap&amp;lt;Integer, UserInfo&amp;gt; of the users who are members of that group.&amp;nbsp; Then I would put these in a HashMap&amp;lt;Integer, GroupInfo&amp;gt; that has the SI_ID of the group as its key.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get a list of the Access Levels - I put these in a HashMap&amp;lt;Integer, String&amp;gt; that thas the SI_ID of the role/access level and its name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Get the list of reports. &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - For each report, walk through the ExplicitPrincipals (getSecurityInfo2().getExplicitPrincipals()).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - For each ExplicitPrincipal, walk through the ExplicitRoles (getRoles())&amp;nbsp; to build a string of the access levels that are assigned (there can be multiple...)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If the ExplicitPrincipal is a group (found in your group hashmap), walk through the group's list of users and output the information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If the ExplicitPrincipal is a user (found in your user hashmap), output the user info.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If there is no role assigned, walk through the list of ExplicitRights (getRights()) for the principal to make sure that the "View Object" right has been assigned.&amp;nbsp; If it has, output as above.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Repeat all of these steps for the EffectivePrincipals found in getSecurityInfo2().getEffectivePrincipals() to show folks who have inherited rights.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Dell&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2014 16:03:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaa-p/10202704#M3686767</guid>
      <dc:creator>DellSC</dc:creator>
      <dc:date>2014-03-06T16:03:36Z</dc:date>
    </item>
    <item>
      <title>Re: Java code for user-wise report access list</title>
      <link>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaa-p/10202705#M3686768</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your quick and helpful answers. I did a little research on my own and made a lot of progress. Let me share the code I am using&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;&amp;lt;%@ page import = "com.crystaldecisions.sdk.exception.SDKException,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.occa.report.lib.ReportSDKServerException,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.framework.*,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.occa.infostore.*,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.occa.report.*,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.properties.*,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.occa.report.application.*,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.occa.managedreports.*,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.occa.report.data.*,&lt;/P&gt;
&lt;P&gt;com.crystaldecisions.sdk.plugin.desktop.user.*,&lt;/P&gt;
&lt;P&gt;java.util.*,&lt;/P&gt;
&lt;P&gt;java.io.*"&lt;/P&gt;
&lt;P&gt;%&amp;gt;&lt;/P&gt;
&lt;P&gt;&amp;lt;%&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; // User Credentials&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String username = "";&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String password = "";&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String cmsname&amp;nbsp; = "";&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String authType = "";&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IEnterpriseSession enterpriseSession = null;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; writeToLog("ReportObjectID"+"%"+"ReportName"+"%"+"ReportPath"+"%"+"User/UserGroup Name"+"%"+"User/UserGroup ID"+"%"+"AccessLevel Title"+"%"+"AccessLevel ID"+"%"+"Inherited/Explicit");&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; // Log onto Enterprise&lt;/P&gt;
&lt;P&gt;&amp;nbsp; enterpriseSession = CrystalEnterprise.getSessionMgr().logon(username, password, cmsname, authType);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IInfoStore boInfoStore = (IInfoStore)enterpriseSession.getService("", "InfoStore");&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IInfoObjects infoObjects = boInfoStore.query("Select SI_ID from CI_INFOOBJECTS where SI_KIND = 'CrystalReport' OR SI_KIND = 'Webi'");&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; for(int j=0; j&amp;lt;infoObjects.size();j++)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IInfoObject report = (IInfoObject)infoObjects.get(j);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String path = getInfoObjectPath(report);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String title = report.getTitle();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String ReportObjectID = String.valueOf(report.getID());&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ISecurityInfo2 securityInfo = report.getSecurityInfo2();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IEffectivePrincipals effectivePrincipals = securityInfo.getEffectivePrincipals();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Iterator CurrentObject = effectivePrincipals.iterator();&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; while (CurrentObject.hasNext())&lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IEffectivePrincipal effectivePrincipal = (IEffectivePrincipal)CurrentObject.next();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IEffectiveRoles effectiveRoles = effectivePrincipal.getRoles();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Iterator roleIT = effectiveRoles.iterator();&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; while (roleIT.hasNext())&lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; IEffectiveRole effectiveRole = (IEffectiveRole)roleIT.next();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; writeToLog(String.valueOf(ReportObjectID)+"%"+title+"%"+path+"%"+effectivePrincipal.getName()+"%"+String.valueOf(effectivePrincipal.getID())+"%"+effectiveRole.getTitle()+"%"+String.valueOf(effectiveRole.getID())+"%"+Boolean.valueOf(effectiveRole.isInherited()));&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; out.println("All Done");&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;%&amp;gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;lt;%!&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; public static String getInfoObjectPath(IInfoObject infoobject) throws SDKException&lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; String path = "";&lt;/P&gt;
&lt;P&gt;&amp;nbsp; while (infoobject.getParentID() != 0)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; infoobject=infoobject.getParent();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; path = "/" + infoobject.getTitle() + path;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; return path;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;lt;%! &lt;/P&gt;
&lt;P&gt;&amp;nbsp; public void writeToLog(String msg) &lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; try &lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; // Set up Logging File&lt;/P&gt;
&lt;P&gt;&amp;nbsp; FileOutputStream FSout;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PrintStream pStream; // declare a print stream object&lt;/P&gt;
&lt;P&gt;&amp;nbsp; FSout = new FileOutputStream("C:\\TestOutput2.csv", true);&amp;nbsp; // Append&lt;/P&gt;
&lt;P&gt;&amp;nbsp; pStream = new PrintStream(FSout); &lt;/P&gt;
&lt;P&gt;&amp;nbsp; pStream.println(msg);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; pStream.close();&lt;/P&gt;
&lt;P&gt;&amp;nbsp; } &lt;/P&gt;
&lt;P&gt;&amp;nbsp; catch (IOException e) &lt;/P&gt;
&lt;P&gt;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //error writing to log&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;%&amp;gt;&lt;/P&gt;
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;This pretty much does all that I wanted to accomplish. Thank you again for the help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Mar 2014 14:41:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/java-code-for-user-wise-report-access-list/qaa-p/10202705#M3686768</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2014-03-11T14:41:08Z</dc:date>
    </item>
  </channel>
</rss>

