Like what you see? Have a play with our trial version.

Error rendering macro 'rw-search'

null

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Objects belonging to a user in a Primary or Client Organization can be retrieved by using the web service calls defined in this section. These are used to retrieve report or dashboard metadata (such as their name, description, ID, etc.). Then links can be provided to access a selected report/dashboard via Yellowfin application (SSO and Session Options).

Note that if you require the actual data of a report (such as its HTML, or PDF), then you should use Yellowfin's Report web services.

 

Retrieving Report Objects

 

Retrieves report metadata for a specified report ID. Requires user Id and a report Id. User Id should be passed via AdministrationPerson object.

Keep in mind that each time when you edit a report, Yellowfin changes the report Id whereas the report UUID is always the same for the report. You can do GETIDFORUUID call to find out what id corresponds to the report UUID at that moment.

 

Request Parameters

The following parameters should be passed with this request:

Request Element

Data Type

Description

LoginId

String

An admin account to connect to Yellowfin web services. This can be the user ID or the email address, depending on the Logon ID method.

This account must have the “web services” role enabled, and must belong to the default (i.e. primary) org.

Password

String

Password of the above account.

OrgId

Integer

Default (i.e. primary) organization ID within Yellowfin. Always set this to 1.

Function

String

Web service function. Set this to "GETUSERREPORT".

PersonAdministrationPersonObject containing details of the user. See table below.
OrgRefStringClient organization reference ID. This parameter is not mandatory.
ReportIdIntegerThe unique ID of the report which you want details of.

 

These are the main parameters that you must set in the AdministrationPerson object for this web service call:

AdministrationPerson Element

Data Type

Description

UserID

String

To identify the user whose access is to be removed from the client org. This could be the user ID or email address, depending on the Logon ID method.

 

 


Request Example

Below is a SOAP XML example for this request:

 

 

Response Parameters

The returned response will contain these parameters:

Response Element

Data Type

Description

StatusCode

String

Status of the web service call. Possible values include:

  • SUCCESS
  • FAILURE

 

Response Example

The service will return the below response, according to our SOAP example:

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>a30aafab603330389d2bfb5a3e0faae7</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

 

Instructions

See below for step-by-step instructions on how to perform this call, using a Java example:

  • Start with a basic request for this function, which includes logging in as the admin user and specifying the web service call to perform:

    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
    
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    
    rsr.setFunction("REMOVEUSERACCESS");
  • Define the user that is to be removed from the client org:

    AdministrationPerson ap = new AdministrationPerson();
    ap.setUserId("admin@yellowfin.com.au");
    
    rsr.setPerson(ap);
    
  • Then specify which the client organization:

    AdministrationClientOrg ac = new AdministrationClientOrg();
    ac.setClientReferenceId("org3");                  // must be an existing client org
    
    rsr.setClient(ac);
    

 

  • Once the request is configured, perform the call:

    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
    

    Initialize the Administration web service. Click here to learn how to do this. 

 

  • The response returned will contain these parameters:

    Response Element

    Data Type

    Description

    StatusCode

    String

    Status of the web service call. Possible values include:

    • SUCCESS
    • FAILURE

 

 

 

Complete Example

Below is a full example of this web service call. To use it for yourself, carry out the following the steps:

  1. Copy the code and save it as ws_ removeuseraccess.jsp.
  2. Put the file in the root folder: Yellowfin/appserver/webapps/ROOT.
  3. Adjust the host, port, admin user, user whose access is to be removed and the client org. reference ID according to your environment.
  4. Run http://<host>:<port>/ws_ removeuseraccess.jsp from your Internet browser.

 

<%            
/*              ws_removeuseraccess.jsp              */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %> 
<%@ page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false);        // adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();

rsr.setLoginId("admin@yellowfin.com.au");          // provide your Yellowfin web services admin account
rsr.setPassword("test");                           // set to the password of the above account
rsr.setOrgId(1);

rsr.setFunction("REMOVEUSERACCESS");
AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("admin@yellowfin.com.au");  			

rsr.setPerson(ap);
AdministrationClientOrg ac = new AdministrationClientOrg();
ac.setClientReferenceId("org3");                  // must be an existing client org

rsr.setClient(ac);

AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

if ("SUCCESS".equals(rs.getStatusCode()) ) {
	out.write("Success");       
} else {
	out.write("Failure");
	out.write(" Code: " + rs.getErrorCode());
}
%>

 


 

  • No labels