30日間の無料評価版をお試しいただけます。

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Anchor
top
top

 

以下は、Yellowfinの構成に使用することのできるwebサービスです。これらのwebサービスでは、Yellowfinのシステム構成設定を管理し、管理者モードに入ることができます。

 

 

基礎的な構成関数

以下のwebサービスは、Yellowfinのシステムや、カスタムシステム構成設定を更新するために使用します。

Expand
titleSAVECONFIGURATION

こちらの関数は、Yellowfinのシステム構成設定を更新します。これは、Yellowfinのデータベース内の構成テーブルの設定詳細を直接変更することで機能しますが、一般的なシステム設定のみ適用することが可能で、カスタム設定には適用できません。Yellowfinは、ConfigTypeCodeカラム(列)の値が「SYSTEM」であることを確認することで、これを判断します。そのため、これは基本的にデフォルト組織に適用されます。こちらの関数は、Yellowfinのシステム構成設定を更新します。これは、Yellowfinデータベース内の構成テーブルの設定詳細を直接変更することで機能しますが、カスタム設定ではなく、一般的なシステム設定のみが影響を受けます。Yellowfinは、ConfigTypeCodeカラム(列)の値が「SYSTEM」であることを確認してこれらを判別します。そのため、これは基本的にデフォルト組織に影響します。

データベーステーブルが更新されたら、これらの変更を反映するためにYellowfinを再起動しなくてはいけません。

 

リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「SAVECONFIGURATION」に設定します。

ParameterString[]

文字列の配列です。このパラメーターは構成設定を渡すために使用します。最初の文字列は、configCodeのコンテンツで、二番目は構成テーブルのconfigDataである必要があります。文字列の配列です。このパラメーターはシステム構成設定を渡すために使用します。最初の文字列は、configCodeのコンテンツで、二番目は構成テーブルのconfigDataである必要があります。

ClientAdministrationClientOrg構成を更新する特定のクライアント組織を指定するために使用するオプションパラメーターです。しかし、こちらが指定されない場合、構成設定はデフォルト組織に適用されます。システム構成設定の大部分はグローバルのため、特定のクライアントに設定できないことに留意しておいてください。システム構成を更新する特定のクライアント組織を指定するために使用するオプションパラメーターです。しかし、こちらが指定されない場合、システム構成設定はデフォルト組織に適用されます。システム構成設定の大部分はグローバル設定のため、特定のクライアントには設定できないことに留意してください。

 以下は、新規ユーザーを作成するために、AdministrationClientOrgオブジェクトに設定しなくてはいけない必須パラメーターです。

以下は、新規ユーザーを作成するために、AdministrationClientOrgオブジェクトに設定しなくてはいけない必須パラメーターです。

パラメーターデータ型説明
ClientReferenceIdStringクライアントを識別するために使用する固有のIDです。

 

リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

Code Block
languagexml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:remoteAdministrationCall>
         <arg0>
          <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <function>SAVECONFIGURATION</function>
            <parameters>Simple_Authentication</parameters>
            <parameters>true</parameters>     
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE

応答の例

サービスは、今回のSOAPの例に基づき、以下の応答を返します。

Code Block
themeEclipse
languagexml
<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>15359eb5b3d7d2c63c6f43affe5f3b45</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

Expand
title詳細手順
  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    Code Block
    themeEclipse
    languagejava
    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
      
    rsr.setLoginId("admin@yellowfin.com.au");      
    rsr.setPassword("test"); 
    rsr.setOrgId(1);
    rsr.setFunction("SAVECONFIGURATION");
  • パラメーターオブジェクト内で更新する構成設定を渡します。以下のコードの例では、Yellowfinの認証方法を「Simple」に設定しています。パラメーターオブジェクト内で更新するシステム構成設定を渡します。以下のコード例では、Yellowfinの認証方法を「Simple」に設定しています。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION","TRUE"});
  • リクエストを構成したら、呼び出しを実行します。

    Code Block
    languagejava
    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

    管理サービスを初期化します。実行方法の詳細は、管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。

 

  • 応答を取得するために、以下のコードを追加します。応答には、StatusCodeが含まれます。(より詳細な情報は、上記応答パラメーターの表を参照してください)

     

    Code Block
    themeEclipse
    languagejava
    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                    out.write("<br>Success");
                    }
                    else {
                    out.write("<br>Failure");
                    out.write(" Code: " + rs.getErrorCode());
                    }

 

完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_saveconfiguration.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_saveconfiguration.jsp」を実行します。

Code Block
themeEclipse
languagejava
<%          
/*              ws_SAVECONFIGURATION.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.*" %>
<%
  
/*             
    This example sets Yellowfin authentication method to Simple.
    That means, once Yellowfin has been restarted, the
    LOGINUSERNOPASSWORD call can be used to log users into Yellowfin with no password provided.
*/
  
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 webservices admin account
rsr.setPassword("test");                        // set to the password of the account above
rsr.setOrgId(1);
rsr.setFunction("SAVECONFIGURATION");
  
rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION","TRUE"});
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
                out.write("<br>Success");
                }
                else {
                out.write("<br>Failure");
                out.write(" Code: " + rs.getErrorCode());
                }              
%>
Expand
titleSAVECUSTOMPARAMETER

こちらの関数は、Yellowfinのカスタムシステム構成設定を更新します。カスタムパラメーターは、クライアント組織に適用することができます。これは、Yellowfinデータベース内の構成テーブルの詳細を直接変更することで機能します。Yellowfinは、ConfigTypeCodeカラム(列)の値が「CUSTOM」であることを確認して変更する設定を判別します。

データベーステーブルが更新されたら、変更内容を反映するためにYellowfinを再起動しなくてはいけません。

こちらの関数は、Yellowfin内のカスタム構成設定を更新します。カスタムパラメーターは、クライアント組織に適用することができます。これは、Yellowfinのデータベース内の構成テーブルの詳細を直接変更することで機能します。Yellowfinは、ConfigTypeCodeカラム(列)の値が「CUSTOM」のものを確認することで、変更をする設定を判断します。

データベーステーブルを更新したら、変更内容を反映するためにYellowfinを再起動しなくてはいけません。

 

リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「SAVECUSTOMPARAMETER」に設定します。

ParametersString[]文字列の配列です。最初の文字列をconfigCodeの値に設定し、二番目を構成テーブルのconfigDataカラム(列)の値に設定します。文字列の配列です。最初の文字列をconfigCodeの値に設定し、二番目を構成テーブルのconfigDataカラム(列)の値に設定します。
ClientAdministationClientOrg構成を更新する特定のクライアント組織を指定するために使用するオプションパラメーターです。しかし、こちらを指定しない場合は、構成設定はデフォルト組織に適用されます。システム構成を更新する特定のクライアント組織を指定するために使用するオプションパラメーターです。しかし、こちらを指定しない場合は、構成設定はデフォルト組織に適用されます。

 以下は、新規ユーザーを作成するためにAdministrationClientOrgオブジェクトに設定しなくてはいけない必須パラメーターです。

以下は、新規ユーザーを作成するためにAdministrationClientOrgオブジェクトに設定しなくてはいけない必須パラメーターです。

パラメーターデータ型説明
ClientReferenceIdStringクライアント組織を識別するために使用する固有のIDです。

 

リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

Code Block
languagexml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:remoteAdministrationCall>
         <arg0>
          <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <function>SAVECUSTOMPARAMETER</function>
            <parameters>Simple_Authentication</parameters>
            <parameters>true</parameters>     
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE

応答の例

サービスは、今回のSOAPの例に基づき、以下の応答を返します。

Code Block
themeEclipse
languagexml
<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>471080457c1359cbf09c29cd348f97d1</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

Expand
title詳細手順
  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを指定します。

    Code Block
    themeEclipse
    languagejava
    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
      
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");  
    rsr.setOrgId(1);
    rsr.setFunction("SAVECUSTOMPARAMETER");
  • パラメーターオブジェクト内で更新する構成設定を渡します。以下のコードの例では、Yellowfinの認証方法を「Simple」に設定しています。パラメーターオブジェクト内で更新するシステム構成設定を渡します。以下のコード例では、Yellowfinの認証方法を「Simple」に設定しています。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION","TRUE"});
  • リクエストを構成したら、呼び出しを実行します。

    Code Block
    languagejava
    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

    管理サービスを初期化します。実行方法の詳細は、管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。

 

  • 応答を取得するために、以下のコードを追加します。応答にはStatusCodeが含まれます。(より詳細な情報は、上記応答パラメーターの表を参照してください)

     

    Code Block
    themeEclipse
    languagejava
    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                    out.write("<br>Success");
                    }
                    else {
                    out.write("<br>Failure");
                    out.write(" Code: " + rs.getErrorCode());
                    }



 

完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_savecustomparameter.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_savecustomparameter.jsp」を実行します。

Code Block
themeEclipse
languagejava
<%          
/*              ws_savecustomparameter.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.*" %>
<%
  
/*             
    This example set Yellowfin authentication method to Simple.
    That means, once Yellowfin has been restarted,
    LOGINUSERNOPASSWORD call can be used to log users into Yellowfin with no password provided.
*/
  
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");                        // change to the password of the account above
rsr.setOrgId(1);
rsr.setFunction("SAVECUSTOMPARAMETER");
  
rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION","TRUE"});
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
                out.write("<br>Success");
                }
                else {
                out.write("<br>Failure");
                out.write(" Code: " + rs.getErrorCode());
                }              
%>
Expand
titleLOADCONFIGURATION

こちらのwebサービスは、現在のYellowfinのシステム構成詳細を取得します。これは、ConfigCode要素を指定することで実行されます。システムは、Yellowfinデータベース内の構成テーブルの該当するconfigDataカラム(列)に保存されている値を取得します。YellowfinはConfigTypeCodeカラム(列)に「SYSTEM」を含む値を確認するため、(カスタムではなく)システムパラメーターのみを読み込むことに留意してください。

例えばこれを使用することで、パスワードなしのログインをユーザーに許可する、simple認証が有効になっているかどうかを検証することができます。

こちらのwebサービスは、現在のYellowfinのシステム構成詳細を取得します。これは、ConfigCode要素を指定することで実行されます。システムは、Yellowfinのデータベース内の構成テーブルの要素の該当するconfigDataカラム(列)に保存されている値を取得します。YellowfinはConfigTypeCodeカラム(列)内の「SYSTEM」を含む値を確認するため、(カスタムではなく)システムパラメーターを読み込むことに留意してください。

例えば、これを使用することで、simple認証が有効になっているかどうかを確認し、パスワードなしにユーザーログインをすることができます。

 

リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「LOADCONFIGRATION」に設定します。

ParameterString[]

文字列の配列です。これは、ConfigCode要素の値を渡すために使用します。

ClientAdministrationClientOrg構成を更新する特定のクライアント組織を指定するために使用するオプションパラメーターです。しかし、こちらが指定されない場合は、構成設定はデフォルト組織に適用されます。システム構成を更新する特定のクライアント組織を指定するために使用するオプションパラメーターです。しかし、こちらが指定されない場合、システム構成設定はデフォルト組織に適用されます。

 以下のパラメーターは、新規ユーザーを作成するためにAdministrationClientOrgオブジェクトに設定しなくてはいけない必須パラメーターです。

以下のパラメーターは、新規ユーザーを作成するためにAdministrationClientOrgオブジェクトに設定しなくてはいけない必須パラメーターです。

パラメーターデータ型説明
ClientReferenceIdStringクライアント組織を識別するために使用する固有のIDです。

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE
BinaryDataString(Yellowfinのリポジトリデータベースから)(Yellowfinリポジトリデータベースから)指定したConfiguration.configCode要素のconfigDataの値を含みます。構成テーブル内にConfigCodeが見つからない場合は、Null値が返されます。configCode要素のconfigDataの値を含みます。構成テーブル内に指定したConfigCodeが見つからない場合は、Null値が返されます。

手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

Expand
title詳細手順
  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    Code Block
    themeEclipse
    languagejava
    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
      
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");  
    rsr.setOrgId(1);
    rsr.setFunction("LOADCONFIGURATION");
  • パラメーターオブジェクト内で更新する構成設定を渡します。以下のコードの例では、Yellowfinの認証方法を「Simple」に設定しています。パラメーターオブジェクト内で更新するシステム構成設定を渡します。以下のコード例では、Yellowfinの認証方法を「Simple」に設定しています。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION"});


  • リクエストを構成したら、呼び出しを実行します。

    Code Block
    languagejava
    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

    管理サービスを初期化します。実行方法の詳細は、管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。

 

  • 応答を取得するために以下のコードを追加します。(より詳細な情報は、上記応答パラメーターの表を参照してください)応答を取得するために以下のコードを追加します。(返される応答については、上記応答パラメーターの表を参照してください)

     

    Code Block
    themeEclipse
    languagejava
    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                    out.write("<br>Success");
                    String data = rs.getBinaryData();
                    out.write("<br>ConfigData: " + data);
                    }
    else {
                    out.write("<br>Failure");
                    out.write(" Code: " + rs.getErrorCode());
    }

 

完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_loadconfiguration.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_loadconfiguration.jsp」を実行します。

Code Block
themeEclipse
languagejava
<%          
/*              ws_loadconfiguration.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 webservices admin account
rsr.setPassword("test");                                                        // change to be the password of the account above
rsr.setOrgId(1);
rsr.setFunction("LOADCONFIGURATION");
  
rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION"});
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
                out.write("<br>Success");
String data = rs.getBinaryData();
                out.write("<br>ConfigData: " + data);
                }
else {
                out.write("<br>Failure");
                out.write(" Code: " + rs.getErrorCode());
}              
%>
Expand
titleLOADCUSTOMPARAMETER

こちらのwebサービスは、Yellowfinのカスタムシステム構成詳細を取得します。これは、ConfigCode要素を指定することで実行されます。システムは、Yellowfinデータベース内の構成テーブルの該当するconfigDataカラム(列)に保存されている値を取得します。YellowfinはConfigTypeCodeカラム(列)に「CUSTOM」を含む値を確認するため、カスタムパラメーターのみが読み込まれます。

例えばこれを使用することで、パスワードなしのログインをユーザーに許可する、simple認証が有効になっているかどうかを検証することができます。 

 

リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「LINKDATASOURCELOADCUSTOMPARAMETER」に設定します。

 Parameter String[] 

文字列の配列です。これは、ConfigCode要素の値を渡すために使用します。

 
Client AdministrationClientOrg システム構成を更新する特定のクライアント組織を指定するために使用するオプションパラメーターです。しかし、こちらが指定されない場合、システム構成設定はデフォルト組織に適用されます。

 以下のパラメーターは、AdministrationDataSourceClientLinkに提供されます。

以下のパラメーターは、新規ユーザーを作成するためにAdministrationClientOrgオブジェクトに設定しなくてはいけない必須パラメーターです。

パラメーター説明

ClientOrgId

Integer

 

ClientOrgRef

String

 

SourceId

Integer

必須フィールド

 

リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

データ型説明
ClientReferenceIdStringクライアント組織を識別するために使用する固有のIDです。

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE
BinaryDataString(Yellowfinリポジトリデータベースから)指定したConfiguration.configCode要素のconfigDataの値を含みます。構成テーブル内に指定したConfigCodeが見つからない場合は、Null値が返されます。

手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

Expand
title詳細手順
  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    Code Block
    themeEclipse
    languagejava
    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
      
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");  
    rsr.setOrgId(1);
    rsr.setFunction("LOADCUSTOMPARAMETER");
  • パラメーターオブジェクト内で更新するシステム構成設定を渡します。以下のコード例では、Yellowfinの認証方法を「Simple」に設定しています。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION"});
  • リクエストを構成したら、呼び出しを実行します。

    Code Block
    languagejava
    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

    管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。

 

  • 応答を取得するために以下のコードを追加します。(返される応答については、上記応答パラメーターの表を参照してください)

     

    Code Block
    themeEclipse
    languagejava
    if ("SUCCESS".equals(rs.getStatusCode()) ) {
    
Code Block
languagexml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/"> <soapenv:Header/> <soapenv:Body> <web:remoteAdministrationCall> <arg0> <loginId>admin@yellowfin.com.au</loginId> <password>test</password>
  •          
<orgId>1</orgId>
  •        out.write("<br>Success");
         
<function>LINKDATASOURCE</function>
  •            String 
<sourceId>74374</sourceId>
  • data = rs.getBinaryData();
              
<sourceClientLink>
  •       out.write("<br>ConfigData: " + data);
           
<sourceId>74376</sourceId>
  •          }
    else {
                    
</sourceClientLink>
  • out.write("<br>Failure");
                
</arg0>
  •     
</web:remoteAdministrationCall> </soapenv:Body> </soapenv:Envelope>

 

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE
LoadedDataSourcesAdministrationDataSourceリンクされたデータソースの詳細を含むオブジェクト配列です。

応答の例

サービスは、今回のSOAPの例に基づき、以下の応答を返します。

  • out.write(" Code: " + rs.getErrorCode());
    }

 

完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_loadcustomparameter.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_loadcustomparameter.jsp」を実行します。

Code Block
themeEclipse
languagexmljava
/*<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
    <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
       ws_loadcustomparameter.jsp <return>
            <errorCode>0</errorCode>
            <loadedDataSource>
               <accessLevelCode>UNSECURE</accessLevelCode>
            <clientSources>
*/
%>
<%@ 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 =  <clientOrgId>13004</clientOrgId>
      (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
  
rsr.setLoginId("admin@yellowfin.com.au");       // provide your Yellowfin web <clientOrgRef>org1</clientOrgRef>
services admin account
rsr.setPassword("test");                <sourceId>74376</sourceId>
        // set to the </clientSources>
password of the account above
rsr.setOrgId(1);
rsr.setFunction("LOADCUSTOMPARAMETER");
  
rsr.setParameters(new String[]{"SIMPLE_AUTHENTICATION"});
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
     <connectionDriver>com.mysql.jdbc.Driver</connectionDriver>
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
          <connectionPath/>
      out.write("<br>Success");
String data = rs.getBinaryData();
      <connectionString>jdbc:mysql://localhost:3306/default</connectionString>
          out.write("<br>ConfigData: " + data);
  <connectionTimeout>180</connectionTimeout>
               <connectionType>JDBC</connectionType>}
else {
               <connectionTypeCode>GENERICUSER</connectionTypeCode>
               <inheritChildSourceFilters>false</inheritChildSourceFilters> out.write("<br>Failure");
               <maxRows>10000</maxRows>
               <maxmimumConnections>5</maxmimumConnections>
  out.write(" Code: " + rs.getErrorCode());
}              
%>

 

 

管理者モード関数

以下のwebサービスを使用することで、「管理者」モードの有効/無効を設定することができます。管理者モードは、特定のユーザーロール権限のセットに設定することが可能で、これはモードが有効な場合に、すべてのユーザーに適用されます。

こちらの項目では、このモードが有効、または無効の場合の挙動について、より詳細に紹介にします。

Expand
titleENABLEADMINMODE

こちらのwebサービスは、Yellowfinインスタンスの管理者モードを有効にします。こちらのサービスを使用することで、すべてのユーザーロールに適用されるユーザー権限のセットを渡すことができます。これにより、現在アクティブなユーザーおよび、こちらの関数を呼び出した後にログインするユーザーも含めて、すべてのユーザーの権限を、この関数内で定義されたひとつに変更することができます。

これは、閲覧権限のみの基礎的な「report consumer」ロールを付与されたユーザーがいる場合に、こちらの関数を使用して、有効なセッション権限を変更し、レポートの削除を含み、完全なレポートアクセスを許可することができます。同様に、こちらのサービスを使用することで、すべてのアクティブユーザーのロールからレポート編集機能を削除し、Yellowfinを編集不可にすることもできます。

これらのロール関数を設定するには、関数コードとアクセスレベルを指定しなくてはいけません。一覧に無い関数はすべて、既存のロールのアクセスレベルを使用します。アクセスレベルの未指定は、関数の無効化と同義です。

クラスタ設定の場合、この関数は、パラメーターリクエスト要素を使用して、クラスタ内の特定のノードに通知し、管理者モードを有効にするよう設定することができます。

このモードを有効にすると、すべての新しいセッションはモード内の権限セットを適用します。すべての有効なセッションと、これからログインするユーザーの権限を元に戻すには、DISABLEADMINMODEを渡し、このモードを無効にします。

このモードは、一度有効化した後に設定内容を更新することができないため、既に管理者モードが有効で、新しいアクセスレベルのセットを設定したい場合は、まずモードを無効化し、更新されたアクセスレベルとともに再びこれを有効化しなくてはいけません。

 

リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「ENABLEADMINMODE」に設定します。

RoleFunctionListMap<String, String>アクセスレベルにマッピングされたロール関数名の一覧です。これらは、管理者モード内で有効化されるロール関数です。各関数コードでは、CRUDの概念を使用してアクセスレベルを提供します。アクセスレベルが提供されない場合、その関数は含まれません。値の選択肢は、AdministrationFunctionオブジェクト定義を参照してください。
ParameterString[]

これは、クラスタ設定の場合に使用されます。この配列は、「true」、または「TRUE」いずれかの文字列を渡して、クラスタ内のすべてのノードに通知をすることで、管理者モードを有効にします。こちらで値が渡されない場合、デフォルトではfalseが設定されるため、管理者モードは有効化されません。

 

リクエストの例

以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを示しています。

Code Block
themeEclipse
languagexml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body><minimumConnections>1</minimumConnections>
            <refreshTime>3</refreshTime>
            <sourceDescription/>
               <sourceId>74374</sourceId>
               <sourceName>Default</sourceName>
            <sourceOptions>
      <web:remoteAdministrationCall>
            <optionKey>ISOLATIONLEVEL</optionKey><arg0>
            <loginId>admin@yellowfin.com.au</loginId>
      <optionValue>1</optionValue>
      <password>test</password>
            <valueDataType>1<<orgId>1</valueDataType>orgId>
            <<orgRef>org1</sourceOptions>orgRef>
            <sourceOptions>
<function>ENABLEADMINMODE</function>
            <parameters>true</parameters>
          <optionKey>USESCHEMA</optionKey>
  <roleFunctionList>
                <optionValue>true<<key>MIREPORT</optionValue>key>
                  <valueDataType>6<<value>CRUD</valueDataType>value>
            </sourceOptions>roleFunctionList>
         </arg0>
   <sourceOptions>
   </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

Code Block
themeEclipse
languagexml
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
        <optionKey>HOSTNAME</optionKey><ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
         <optionValue>localhost</optionValue>   <errorCode>0</errorCode>
            <messages>Successfully Authenticated   <valueDataType>2</valueDataType>User: admin@yellowfin.com.au</messages>
            </sourceOptions><messages>Web Service Request Complete</messages>
            <sourceOptions><sessionId>517ce15c32a079dc1528424c03d86691</sessionId>
            <statusCode>SUCCESS</statusCode>
       <optionKey>PORT<  </optionKey>return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

 

手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

Expand
title詳細手順
  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    Code Block
    themeEclipse
    languagejava
    AdministrationServiceRequest asr = new AdministrationServiceRequest();
    
    
    asr.setLoginId("admin@yellowfin.com.au");
    asr.setPassword("test");
    asr.setOrgId(new Integer(1));
    asr.setFunction("ENABLEADMINMODE");
  • クラスタ設定の場合は、クラスタ内のすべてのノードにアラートを出し、管理者モードを有効にします。

     

    Code Block
    themeEclipse
    languagejava
    asr.setParameters(new String[] { "true" });
  • 管理者ロールに要求されるロール関数を設定します。各ロール関数名で、そのアクセスレベルを指定します。

     

    Code Block
    themeEclipse
    languagejava
    Map<String, String> roleFunctionList = new HashMap<>();
    
    roleFunctionList.put("SYSTEMINFO", "");
    roleFunctionList.put("REPORTDASHBOARD", "R");
    roleFunctionList.put("DASHPUBLIC", "R");
    roleFunctionList.put("MIREPORT", "R");
    roleFunctionList.put("STORYBOARD", "R");
  • リクエストに一覧を追加します。

     

    Code Block
    themeEclipse
    languagejava
    asr.setRoleFunctionList(roleFunctionList);
  • リクエストを構成したら、呼び出しを実行します。

    Code Block
    languagejava
    AdministrationServiceResponse rs = rssbs.remoteAdministrationCall(asr);

    管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。

 

  • 返される応答には、StatusCodeパラメーターが含まれます。(返される応答については、上記応答パラメーターの表を参照してください)

     

 

完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_enableadminmode.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_enableadminmode.jsp」を実行します。

Code Block
themeEclipse
languagejava
<%@ 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.*" %>
<%
/*
Enable Admin Mode
Enables administrative mode with the list of functions in roleFunctionList.
A parameter is set to indicate this should notify the cluster.
*/
  
AdministrationServiceResponse rs = null;
AdministrationServiceRequest asr = new AdministrationServiceRequest();
AdministrationServiceService ts = new AdministrationServiceServiceLocator("localhost", 8080,
"/services/AdministrationService", false);
AdministrationServiceSoapBindingStub rssbs = (AdministrationServiceSoapBindingStub) ts
.getAdministrationService();
  
asr.setLoginId("admin@yellowfin.com.au");
asr.setPassword("test");
asr.setOrgId(new Integer(1));
asr.setFunction("ENABLEADMINMODE");
asr.setParameters(new String[] { "true" });
  
Map<String, String> roleFunctionList = new HashMap<>();
roleFunctionList.put("SYSTEMINFO", "");
roleFunctionList.put("REPORTDASHBOARD", "R");
roleFunctionList.put("DASHPUBLIC", "R");
roleFunctionList.put("MIREPORT", "R");
roleFunctionList.put("STORYBOARD", "R");
  
asr.setRoleFunctionList(roleFunctionList);
  
rs = rssbs.remoteAdministrationCall(asr);
  
if ("SUCCESS".equals(rs.getStatusCode())) {
for (String message : rs.getMessages()) {
out.write(message + "<BR>");
}
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%>
Expand
titleDISABLEADMINMODE

こちらのwebサービスは、Yellowfinインスタンスの管理者モードを無効にします。これにより、アクティブユーザーと、これからログインするユーザーのユーザー権限が、元のロール権限に戻ります。クラスタ環境の場合、すべてのノードに通知をして管理者モードを無効にするためには、パラメーターリクエスト要素を使用して、「true」、または「TRUE」いずれかの文字列を渡さなくてはいけません。要素内で値が指定されない場合は、デフォルトで「false/FALSE」が設定されるので、管理者モードを無効にすることはできません。

 

リクエストパラメーター

以下のパラメーターは、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「DISABLEADMINMODE」に設定します。

ParameterString[]

これは、クラスタ設定の場合に使用されます。この配列は、「true」、または「TRUE」いずれかの文字列を渡して、クラスタ内のすべてのノードに通知をすることで、管理者モードを無効にします。こちらで値が渡されない場合、デフォルトではfalseが設定されるため、管理者モードは無効化されません。

 

リクエストの例

以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを示しています。

Code Block
themeEclipse
languagexml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:remoteAdministrationCall>
         <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <orgRef>org1</orgRef>
            <function>DISABLEADMINMODE</function>
            <parameters>true</parameters>  
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

Code Block
themeEclipse
languagexml
<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>b2aedaafa1350f99c904b88c5daa14e0</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

 

手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

Expand
title詳細手順
  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    Code Block
    themeEclipse
    languagejava
    AdministrationServiceRequest asr = new AdministrationServiceRequest();
     
     
    asr.setLoginId("admin@yellowfin.com.au");
    asr.setPassword("test");
    asr.setOrgId(new Integer(1));
    asr.setFunction("DISABLEADMINMODE");
  • クラスタ設定の場合は、クラスタ内のすべてのノードにアラートを出し、管理者モードを無効にします。

     

    Code Block
    themeEclipse
    languagejava
    asr.setParameters(new String[] { "true" });
  • リクエストを構成したら、呼び出しを実行します。

    Code Block
    languagejava
    AdministrationServiceResponse rs = rssbs.remoteAdministrationCall(asr);

    管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。

 

  • 返される応答には、StatusCodeパラメーターが含まれます。(返される応答については、上記応答パラメーターの表を参照してください)

     

 

完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_disableadminmode.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_disableadminmode.jsp」を実行します。

Code Block
themeEclipse
languagejava
<%@ 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.*" %>
<%
/*
Disable Admin Mode
Disables administrative mode. A parameter is set to indicate this should notify the cluster.
*/
AdministrationServiceResponse rs = null;
AdministrationServiceRequest asr = new AdministrationServiceRequest();
AdministrationServiceService ts = new AdministrationServiceServiceLocator("localhost", 8080,
"/services/AdministrationService", false);
AdministrationServiceSoapBindingStub rssbs = (AdministrationServiceSoapBindingStub) ts
.getAdministrationService();
asr.setLoginId("admin@yellowfin.com.au");
asr.setPassword("test");
asr.setOrgId(new Integer(1));
asr.setFunction("DISABLEADMINMODE");
asr.setParameters(new String[] { "true" });
rs = rssbs.remoteAdministrationCall(asr);
if ("SUCCESS".equals(rs.getStatusCode())) {
for (String message : rs.getMessages()) {
out.write(message + "<BR>");
}
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%>
Expand
titleGETROLEFUNCTIONS

こちらのwebサービスは、Yellowfinで利用可能なすべてのロール関数と、その説明情報を取得します。結果は、データベースクエリーから返された、ロウ(行)を表す文字列の二次元配列になります。カラム(列)は、以下の通りです。

  • Function Code:データベース内で関数を定義するために使用する文字列です。
  • Function Name:ロール管理画面に表示される関数の名前です。
  • Function Description:ロール管理画面に表示される関数の説明です。
  • Uses CRUD:この関数のCRUD(作成、閲覧、編集、削除)権限使用有無を示すフラグです。

 

リクエストパラメーター

以下のパラメーターは、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「GETROLEFUNCTIONS」に設定します。

ParameterString[]

設定されている場合は、データベースのパスワードを渡すために使用するパラメーター配列です。

 

リクエストの例

以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを示しています。

Code Block
themeEclipse
languagexml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:remoteAdministrationCall>
         <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <orgRef>org1</orgRef>
            <function>GETROLEFUNCTIONS</function>    
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE
QueryResultsReportRow[]ロール関数の詳細を含むオブジェクトです。詳細は、以下を参照してください。

 

以下のパラメーターが、ReportRowオブジェクトに返されます。

ReportRow要素データ型説明

Function Code

String

データベース内で関数を定義するために使用する文字列です。

Function Name

String

ロール管理画面に表示される関数の名前です。

Function Description

String

ロール管理画面に表示される関数の説明です。

Uses CRUD

String

この関数のCRUD(作成、閲覧、編集、削除)権限使用有無を示すフラグです。


 

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

Code Block
themeEclipse
languagexml
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">        <optionValue>3306</optionValue>
                  <valueDataType>1</valueDataType>
            </sourceOptions>
            <sourceOptions>
                  <optionKey>DATABASE</optionKey><return>
                  <optionValue>default</optionValue><errorCode>0</errorCode>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
   <valueDataType>2</valueDataType>
         <messages>Web Service Request <Complete</sourceOptions>messages>
            <sourceOptions><queryResults>
                  <optionKey>USEFETCHSIZE</optionKey><dataValue>ACCESSFILTER</dataValue>
               <dataValue>Access   <optionValue>false<Filter</optionValue>dataValue>
               <dataValue>Allows users to <valueDataType>6</valueDataType>
set or change the access filter on a     </sourceOptions>report</dataValue>
            <sourceOptions>
    <dataValue>0</dataValue>
            <optionKey>FETCHSIZE<</optionKey>queryResults>
            <queryResults>
     <optionValue/>
          <dataValue>CONTENTACCESS</dataValue>
        <valueDataType>2</valueDataType>
       <dataValue>Folder Access</dataValue>
    </sourceOptions>
           <dataValue>Allow <sourceOptions>
users to configure content folders.</dataValue>
              <optionKey>YF_DRIVER_SELECTION</optionKey>
 <dataValue>0</dataValue>
            </queryResults>
      <optionValue>com.mysql.jdbc.Driver</optionValue>
      .
            <valueDataType>2</valueDataType>.
            </sourceOptions>.
               <sourceType>MYSQL</sourceType><queryResults>
               <timezone>AUSTRALIA<dataValue>SHOWHEADERFOOTERADMIN</SYDNEY</timezone>dataValue>
               <userName>root</userName>  <dataValue>Header/Footer Admin</dataValue>
               <userPassword>kOjvh+lsaec=</userPassword>
            </loadedDataSource><dataValue>Allow the user to edit the Header and Footer displayed throughout the system.</dataValue>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> <dataValue>0</dataValue>
            <messages>Web Service Request Complete</messages></queryResults>
            <sessionId>a8ea7db63b9b96bdcda9e0f9bba067d1<<sessionId>31e386b7f19b97d6dcdea223f6b2f737</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

Expand
title詳細手順
  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    Code Block
    themeEclipse
    languagejava
    AdministrationServiceRequest rsrasr = new AdministrationServiceRequest();
    rsr 
    asr.setLoginId("admin@yellowfin.com.au");
    rsrasr.setPassword("test");
    rsrasr.setOrgId(new Integer(1));
     
    rsrasr.setFunction("LINKDATASOURCE");

    デフォルト組織のデータソースのIDを提供します。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setSourceId(74374GETROLEFUNCTIONS");
  • リンクするクライアント組織のソースIDを提供します。パスワードを提供し、データベースへのアクセスを提供します。

     

    Code Block
    themeEclipse
    languagejava
    AdministrationDataSourceClientLink link = new AdministrationDataSourceClientLink();
    link.setSourceId(74376);
    rsr.setSourceClientLink(link);asr.setParameters(new String[] { "root" });
  • リクエストを構成したら、呼び出しを実行します。

    Code Block
    languagejava
    AdministrationServiceResponse rs = adminServicerssbs.remoteAdministrationCall(rsrasr);

    管理サービスを初期化します。実行方法の詳細は、管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。

 

  • 返される応答には、他の情報とともにStatusCodeパラメーターが含まれます。これら詳細は、上記応答パラメーターの表を参照してください。応答からの通常メッセージをすべて保存します。

     

    Code Block
    themeEclipse
    languagejava
    for (String message : rs.getMessages()) {
    out.write(message + "<BR>");
    }
  • また、ロール関数の詳細とともにHTMLテーブルを作成します(カラム(列)名は最初のロウ(行)に表示され、データベースクエリーからの各ロウ(行)は、その後出力されます)

    応答を取得します。(より詳細な情報は、上記応答パラメーターの表を参照してください)

     

    Code Block
    themeEclipse
    languagejava
    if ("SUCCESS".equals(rs.getStatusCode()) ) {
            out.write("<table>");
    out.write("<th>Function Code</th>");
    out.write("<th>Function Name</th>");
    out.write("<th>Function Description</th>");
    out.write("<th>Uses CRUD</th>");
    for (ReportRow row : rs.getQueryResults()) {
        out.write("<tr>");
        for (String data : row.getDataValue()) {
            out.write("<br>Success<th>");
     + data + "</th>");
        }
             
    }
    else {
                    out.write("<br>Failure");
                    out.write(" Code: " + rs.getErrorCode());
    }

 

完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_linkdatasource.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
    • out.write("</tr>");
      }
      out.write("</table>");

     

    完成例

    以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

    1. コードをコピーして、「ws_getrolefunctions.jsp」として保存します。
    2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
    3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
    4. インターネットブラウザから、「http://<host>:<port>/ws_getrolefunctions.jsp」を実行します。

    Code Block
    themeEclipse
    languagejava
    <%@ 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.*" %>
    <%
    /*
    Get Role Functions
    インターネットブラウザから、「http://<host>:<port>/ws_linkdatasource.jsp」を実行します。
    Code Block
    themeEclipse
    languagejava
    /*              ws_linkdatasourcegetrolefunctions.jsp
    Returns all of the role functions available from the OrgFunction table with descriptions from the OrgReferenceCodeDesc table. Also includes whether the function uses CRUD        level access.
    */
    %>
    <%@AdministrationServiceResponse pagers 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");                        // change to the password of the account above
    rsr.setOrgId(1);
    rsr.setFunction("LINKDATASOURCE");
     
    rsr.setSourceId(74374);
    AdministrationDataSourceClientLink link = new AdministrationDataSourceClientLink();
    link.setSourceId(74376);
    rsr.setSourceClientLink(link);
      
    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
      
    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                    out.write("<br>Success");
                     
    }
    else {
                    out.write("<br>Failure");
                     null;
    AdministrationServiceRequest asr = new AdministrationServiceRequest();
    AdministrationServiceService ts = new AdministrationServiceServiceLocator("localhost", 8080, "/services/AdministrationService", false);
    AdministrationServiceSoapBindingStub rssbs = (AdministrationServiceSoapBindingStub) ts
    .getAdministrationService();
    asr.setLoginId("admin@yellowfin.com.au");
    asr.setPassword("test");
    asr.setOrgId(new Integer(1));
    asr.setFunction("GETROLEFUNCTIONS");
    asr.setParameters(new String[] { "root" }); // Database password
     
    rs = rssbs.remoteAdministrationCall(asr);
    if ("SUCCESS".equals(rs.getStatusCode())) {
    for (String message : rs.getMessages()) {
    out.write(message + "<BR>");
    }
    // Create a simple table with the results
    out.write("<table>");
    out.write("<th>Function Code</th>");
    out.write("<th>Function Name</th>");
    out.write("<th>Function Description</th>");
    out.write("<th>Uses CRUD</th>");
    for (ReportRow row : rs.getQueryResults()) {
    out.write("<tr>");
    for (String data : row.getDataValue()) {
    out.write("<th>" + data + "</th>");
    }
    out.write("</tr>");
    }
    out.write("</table>");
    } else {
    out.write("Failure");
    out.write(" Code: " + rs.getErrorCode());
    }              
    %>

     

    horizontalrule
    Styleclass
    ClasstopLink

    ページトップ

     

    ...