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

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titleGETCONTENT

こちらの関数は、エクスポート可能なすべてのYellowfinコンテンツを返します。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

OrgRefStringこちらのオプションパラメーターは、クライアント組織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>GETCONTENT</function>          
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE
ContentResourcesContentResource[]エクスポート可能なYellowfinのコンテンツの詳細を含むオブジェクト配列です。

応答の例

サービスは、今回の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>
            <contentResources>
               <resourceCode>AUDITREPORTS</resourceCode>
               <resourceDescription>Audit Reports</resourceDescription>
               <resourceId>56339</resourceId>
               <resourceName>Audit Reports</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTCATEGORY</resourceType>
               <resourceUUID>a6bdc6b5-a832-42a2-98c7-18273900d0aa</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>ADMINREPORTS</resourceCode>
               <resourceDescription>Admin Reports</resourceDescription>
               <resourceId>56340</resourceId>
               <resourceName>Admin Reports</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>f7fb32b7-1573-4899-916f-c34afb9a865d</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>CONTENTUSAGE</resourceCode>
               <resourceDescription>Content Usage</resourceDescription>
               <resourceId>56341</resourceId>
               <resourceName>Content Usage</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>6bae5230-c1f9-4491-8a8b-f14b1ae660d7</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>USERACCESS</resourceCode>
               <resourceDescription>User Access</resourceDescription>
               <resourceId>56342</resourceId>
               <resourceName>User Access</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>0c7ddde4-fa03-4e88-b37b-7b5e4aad5e1d</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>TUTORIAL</resourceCode>
               <resourceDescription>Tutorial</resourceDescription>
               <resourceId>60706</resourceId>
               <resourceName>Tutorial</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTCATEGORY</resourceType>
               <resourceUUID>a23c2ec6-a2fa-45c7-b5da-dcf3f02e6633</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>ATHLETES</resourceCode>
               <resourceDescription>Athletes</resourceDescription>
               <resourceId>60707</resourceId>
               <resourceName>Athletes</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>72e4b4bd-a482-4a01-a031-c6ab76dbb3a5</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>CAMP</resourceCode>
               <resourceDescription>Camp</resourceDescription>
               <resourceId>60708</resourceId>
               <resourceName>Camp</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>465411e5-594b-478e-af64-c0f59fc4546f</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>KPIS</resourceCode>
               <resourceDescription>KPIs</resourceDescription>
               <resourceId>60709</resourceId>
               <resourceName>KPIs</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>d514c643-dc01-4781-8905-d34e761ccd19</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>MARKETINGBOOKING</resourceCode>
               <resourceDescription>Marketing &amp; Booking</resourceDescription>
               <resourceId>60710</resourceId>
               <resourceName>Marketing &amp; Booking</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>dbe6d0a3-c088-4d71-b65a-f383aaa54be9</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>TRAINING</resourceCode>
               <resourceDescription>Training</resourceDescription>
               <resourceId>60711</resourceId>
               <resourceName>Training</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>c503ea57-cc69-43a9-98bc-a90ebbe1c864</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceDescription/>
               <resourceId>70101</resourceId>
               <resourceName>Oracle database</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>DATASOURCE</resourceType>
            </contentResources>
            <contentResources>
               <resourceDescription/>
               <resourceId>70109</resourceId>
               <resourceName>Oracle</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>DATASOURCE</resourceType>
            </contentResources>
            <contentResources>
               <resourceDescription>Ski Team is the demonstration and tutorial database.</resourceDescription>
               <resourceId>54700</resourceId>
               <resourceName>Ski Team</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>DATASOURCE</resourceType>
            </contentResources>
            <contentResources>
               <resourceDescription/>
               <resourceId>54701</resourceId>
               <resourceName>Yellowfin Configuration Database</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>DATASOURCE</resourceType>
            </contentResources>
            <contentResources>
               <resourceDescription/>
               <resourceId>70108</resourceId>
               <resourceName>c</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>DATASOURCE</resourceType>
            </contentResources>
            <contentResources>
               <resourceDescription/>
               <resourceId>70110</resourceId>
               <resourceName>f</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>DATASOURCE</resourceType>
            </contentResources>
            <contentResources>
               <resourceDescription>This is a tutorial view for training and demo purposes.</resourceDescription>
               <resourceId>60543</resourceId>
               <resourceName>Ski Team</resourceName>
               <resourceType>VIEW</resourceType>
               <resourceUUID>e3632adb-5194-460c-a172-c085416f493f</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceDescription>This view should be used to monitor usage of Yellowfin by User and Content Type.</resourceDescription>
               <resourceId>56169</resourceId>
               <resourceName>Yellowfin Usage Audit</resourceName>
               <resourceType>VIEW</resourceType>
               <resourceUUID>fb6416c4-441e-42b3-a442-e7426f25f6b4</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceDescription>This dashboard contains a set of reports covering general system and admin information, including performance, sessions, data source &amp; view usage.</resourceDescription>
               <resourceId>57438</resourceId>
               <resourceName>Admin</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>GROUP</resourceType>
               <resourceUUID>33827292-cda6-4071-965f-730ccbc53519</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceDescription>This is an analytic tab that is used to understand examine metrics split by various demographics and filters.</resourceDescription>
               <resourceId>61195</resourceId>
               <resourceName>Analysis</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>GROUP</resourceType>
               <resourceUUID>f19e63f5-7175-4c57-897d-ed865aba8972</resourceUUID>
            </contentResources>
            </contentResources>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>92029c8ae4f1db0f33bf0b7370c1088a</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("GETCONTENT");
  • 特定のクライアント組織を識別することもできます。

     

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

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

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

 

  • 返される応答には、次の要素が含まれます。:StatusCodeとContentResource。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_getcontent.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("GETCONTENT");
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
            if ("SUCCESS".equals(rs.getStatusCode()) ) {
                        out.write("<br>Success");
                        ContentResource[] crs = rs.getContentResources();
                        out.write("<table>");
                        out.write("<tr><td> id </td><td> type </td><td> UUID </td></tr>");
                        for (ContentResource c: crs) {
                                    out.write("<tr>");
                                    out.write("<td>" + c.getResourceId() + "</td><td>" + c.getResourceType() + "</td><td>" + c.getResourceUUID() + "</td>");
                                    out.write("</tr>");
                        }
            }
            else {
            out.write("<br>Failure");
            out.write(" Code: " + rs.getErrorCode());
            }          
%>
Expand
titleEXPORTCONTENT

こちらの関数は、選択したYellowfinのコンテンツを、XMLファイルにエクスポートします。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

OrgRefStringこちらのオプションパラメーターは、クライアント組織IDを指定するために使用することができます。
ContentResourcesContentResourceエクスポートするコンテンツを指定するために使用するオブジェクトです。以下の表を参照してください。

 

以下のパラメーターは、こちらの関数を呼び出すためにContentResourceオブジェクトに指定します。

ContentResource要素データ型説明
ResourceIDIntegerコンテンツの内部IDを提供する必須パラメーターです。
ResourceTypeString

コンテンツタイプを指定する必須パラメーターです。選択肢は、以下の通りです。

  • RPTCATEGORY
  • RPTSUBCATEGORY
  • DATASOURCE
  • VIEW
  • GROUP
  • REPORT
  • ETLPROCESS
ResourceUUIDStringこちらのオプションパラメーターは、コンテンツのUUIDを提供するために使用することができます。

 

リクエストの例

以下は、こちらのリクエストの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>EXPORTCONTENT</function>
            <contentResources>
               <resourceId>56169</resourceId>
               <resourceType>VIEW</resourceType>
            </contentResources>         
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE
BinaryAttachmentsReportBinaryObject[]エクスポート可能なYellowfinのコンテンツの詳細を含むオブジェクト配列です。以下の表を参照してください。

 

ReportBinaryObject配列は、こちらの呼び出しに以下のパラメーターを返します。

ReportBinaryObject要素データ型説明
KeyStringこちらの関数のバイナリーオブジェクト保存に一意のキーは、「EXPORT/XML」です。
ContentTypeStringこちらの関数のMIME型は「text/XML」です。
DataByte[]こちらの配列は、XMLファイルに保存可能なコンテンツのメタデータを含みます。

 

 

応答の例

サービスは、今回の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>
            <function>EXPORTCONTENT</function>
            <contentResources>
               <resourceId>56169</resourceId>
               <resourceType>VIEW</resourceType>
            </contentResources>         
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("EXPORTCONTENT");
  • オブジェクトを使用してエクスポートするコンテンツを指定します。

     

    Code Block
    themeEclipse
    languagejava
    ContentResource[] cr = new ContentResource[1];
    cr[0] = new ContentResource();
    cr[0].setResourceId(70058);
    cr[0].setResourceType("GROUP");
    cr[0].setResourceOrgId(1);
  • リクエストにオブジェクトを配置します。

     

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

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

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

 

  • 返される応答には、次の要素が含まれます。:StatusCodeとReportBinaryObject。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_exportcontent.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.io.PrintWriter" %>
<%
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("EXPORTCONTENT");
  
// specify which dashboard to export:
ContentResource[] cr = new ContentResource[1];
cr[0] = new ContentResource();
cr[0].setResourceId(70058);
cr[0].setResourceType("GROUP");
cr[0].setResourceOrgId(1);
  
rsr.setContentResources(cr);
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
            out.write("<br>Success");
            byte[] data = rs.getBinaryAttachments()[0].getData();
            String xml = new String(data, "UTF-8");
            PrintWriter writer = new PrintWriter("/Applications/Yellowfin 7.4/YFexport.xml", "UTF-8");
            writer.println(xml);
            writer.close();
             
            ReportBinaryObject[] bo = rs.getBinaryAttachments();
            for (ReportBinaryObject o : bo){
                        out.write("<br><br>Key: " + o.getKey());
                        out.write("<br>Content Type: " + o.getContentType());
            }
             
  
} else {
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
}
%>
Expand
titleGETEXPORTDEPENDENCIES

こちらの関数は、特定のコンテンツのすべての依存関係を返します。ContentResourceオブジェクトは、リソースID(GETCONTENTの呼び出しを使用して取得することができます)とともにコンテンツを指定するために使用します。 例えば、レポートが定義されたコンテンツタイプであれば、応答にはレポートカテゴリー、サブカテゴリー、データソース、ビューなどの依存関係が表示されます。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

OrgRefStringこちらのオプションパラメーターは、クライアント組織IDを指定するために使用することができます。
ContentResourcesContentResource依存関係を取得するコンテンツのメタデータを含むオブジェクトです。以下の表を参照してください。

 

以下のパラメーターは、こちらの関数を呼び出すためにContentResourceオブジェクトに指定します。

ContentResource要素データ型説明
ResourceIDIntegerコンテンツの内部IDを提供する必須パラメーターです。
ResourceTypeString

コンテンツタイプを指定する必須パラメーターです。選択肢は、以下の通りです。

  • RPTCATEGORY
  • RPTSUBCATEGORY
  • DATASOURCE
  • VIEW
  • GROUP
  • REPORT
  • ETLPROCESS
ResourceUUIDStringこちらのオプションパラメーターは、コンテンツのUUIDを提供するために使用することができます。

 

リクエストの例

以下は、こちらのリクエストの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>GETEXPORTDEPENDENCIES</function>
            <contentResources>
               <resourceId>56169</resourceId>
               <resourceType>VIEW</resourceType>
            </contentResources>         
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope> 

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE
ContenResourcesContentResource[]指定した成果物の依存関係のメタデータを含むオブジェクト配列です。

 

応答の例

サービスは、今回の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>
            <contentResources>
               <resourceDescription/>
               <resourceId>54701</resourceId>
               <resourceName>Yellowfin Configuration Database</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>DATASOURCE</resourceType>
            </contentResources>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>97d7f893d787daf2806a13cdfa6f09d3</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("GETEXPORTDEPENDENCIES");
  • 特定のクライアント組織を識別することもできます。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setOrgRef("org1");
  • ContentResourceオブジェクトを使用して、依存関係を取得するコンテンツの詳細を指定します。

     

    Code Block
    themeEclipse
    languagejava
    ContentResource[] cr = new ContentResource[1];
      
    cr[0] = new ContentResource();
    cr[0].setResourceId(70307);
    cr[0].setResourceType("GROUP");
    cr[0].setResourceOrgId(1);
  • リクエストにオブジェクトを配置します。

     

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

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

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

 

  • 返される応答には、次の要素が含まれます。:StatusCodeとContentResource。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_getexportdependecies.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.io.PrintWriter" %>
<%
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("GETEXPORTDEPENDENCIES");
  
ContentResource[] cr = new ContentResource[1];
  
cr[0] = new ContentResource();
cr[0].setResourceId(70307);
cr[0].setResourceType("GROUP");
cr[0].setResourceOrgId(1);
  
rsr.setContentResources(cr);
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
            out.write("<br>Success");
            ContentResource[] crs = rs.getContentResources();
            out.write("<table>");
            out.write("<tr><td> id </td><td> type </td><td> UUID </td></tr>");
            for (ContentResource c: crs) {
                        out.write("<tr>");
                        out.write("<td>" + c.getResourceId() + "</td><td>" + c.getResourceType() + "</td><td>" + c.getResourceUUID() + "</td>");
                        out.write("</tr>");
   }
} else {
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
}
%>

...

Expand
titleGETIMPORTCONTENT

こちらの関数は、提供されるYFX、またはXMLファイルを読み、特定のコンテンツをインポート可能なContentResourceオブジェクトへ配置します。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

OrgRefStringこちらのオプションパラメーターは、クライアント組織IDの指定に使用することができます。
ParameterString[]こちらの配列は、ファイルからインポートされるコンテンツの詳細とStringsを含みます。最初のStringは、UTF-8 Stringのバイト配列です。次はファイルタイプであり、「YFX」、または「XML」になります。

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE
ContenResourcesContentResource[]

インポートするYellowfinのコンテンツの詳細を含むオブジェクト配列です。

  

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("GETIMPORTCONTENT");
  • インポートするデータを含むファイルを指定します。

     

    Code Block
    themeEclipse
    languagejava
    Path path = Paths.get("/Applications/Yellowfin 7.4/qwerty.yfx");
     
    byte[] data = Files.readAllBytes(path);
    byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
    String f = new String(encodeBase64, "UTF-8");
  • ファイルの拡張子を提供します。例:YFX、またはXMLのいずれかです。

     

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

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

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

 

  • 返される応答には、次の要素が含まれます。:StatusCodeとContentResource。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_getimportcontent.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.nio.file.Paths" %>
<%@ page import="java.nio.file.Path" %>
  
<%
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("GETIMPORTCONTENT");
  
Path path = Paths.get("/Applications/Yellowfin 7.4/qwerty.yfx");      // existing file
  
byte[] data = Files.readAllBytes(path);
byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
String f = new String(encodeBase64, "UTF-8");
  
rsr.setParameters(new String[]{f,"YFX"});
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
            ContentResource[] cr = rs.getContentResources();
            out.write("<br>Success");
            for (ContentResource o : cr){
                        out.write("<br><br>resourceType: " + o.getResourceType());
                        out.write("<br>resourceCode: " + o.getResourceCode());
                        out.write("<br>resourceName: " + o.getResourceName());
                        out.write("<br>resourceDescription: " + o.getResourceDescription());
                        out.write("<br>resourceOrgId: " + o.getResourceOrgId());
                        out.write("<br>resourceId: " + o.getResourceId());
                        out.write("<br>resourceUUID: " + o.getResourceUUID());
            }
} else {
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
}
%>

...

Expand
titleIMPORTCONTENT

こちらの関数は、XML、またはYFXファイルからコンテンツをYellowfinへインポートします。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

OrgRefStringこちらのオプションパラメーターは、クライアント組織IDの指定に使用することができます。
ParametersString[]こちらの配列は、インポート、検証されるコンテンツの詳細とStringsを含みます。最初のStringは、UTF-8 Stringのバイト配列です。次はファイルタイプであり、「YFX」、または「XML」になります。
ImportOptionsImportOption[]こちらのオプションパラメーターは、コンテンツのインポート方法を定義するために使用することができます。こちらを指定しない場合、Yellowfinはすべてのコンテンツを新規として、ファイルに含まれるそのままの状態でインポートします。

 

リクエストの例

以下は、こちらのリクエストの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>
         <!--Optional:-->
         <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <function>IMPORTCONTENT</function>
            <parameters>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0i ... </parameters>
            <parameters>XML</parameters>
            <importOption>
                    <optionIndex>0</optionIndex>
                        <optionKey>OPTION</optionKey>
                        <optionValue>REPLACE</optionValue>
                    <optionIndex>1</optionIndex>
                        <optionKey>EXISTING</optionKey>
                        <optionValue>70279</optionValue>
             </importOption>
          </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE

注意:ステータスは、実際のインポートが実行されたかどうかに関わらず、呼び出しが実行されたかどうかに対応します。

  

応答の例

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

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

 

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("IMPORTCONTENT");
  • インポートするデータを含むファイルを指定します。

     

    Code Block
    themeEclipse
    languagejava
    Path path = Paths.get("/Applications/Yellowfin 7.4/YFexport.xml");
      
    byte[] data = Files.readAllBytes(path);
    byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
    String f = new String(encodeBase64, "UTF-8");
  • ファイルの拡張子を提供します。例:YFX、またはXMLのいずれかです。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setParameters(new String[]{f,"XML"});
  • ファイル内のコンテンツのインポート方法を指定します。

     

    Code Block
    themeEclipse
    languagejava
    ImportOption[] options = new ImportOption[2];
    options[0] = new ImportOption();
    options[0].setItemIndex(0);
    options[0].setOptionKey("OPTION");
    options[0].setOptionValue("REPLACE");
                 
    options[1] = new ImportOption();
    options[1].setItemIndex(0);
    options[1].setOptionKey("EXISTING");
    options[1].setOptionValue("70279");
  • リクエストにインポートオプションオブジェクトを設定します。

     

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

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

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

 

  • 返される応答には、次の要素が含まれます。:StatusCode。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_importcontent.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.nio.file.Paths" %>
<%@ page import="java.nio.file.Path" %>
<%
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("IMPORTCONTENT");
  
/*      Yfexport.xml contains just one report with no dependencies
            which can be retrieved using an EXPORTCONTENT web service call and passing a single report id.
            FYI. Latest Yellowfin builds do not allow export Yellowfin content WITHOUT dependencies,
            so ImportOption in this example will not suit any YFX file.
            You need to define proper ImportOption anyway
*/
Path path = Paths.get("/Applications/Yellowfin 7.4/YFexport.xml");
  
byte[] data = Files.readAllBytes(path);
byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
String f = new String(encodeBase64, "UTF-8");
  
rsr.setParameters(new String[]{f,"XML"});
  
            ImportOption[] options = new ImportOption[2];
            options[0] = new ImportOption();
            options[0].setItemIndex(0);
            options[0].setOptionKey("OPTION");
            options[0].setOptionValue("REPLACE");
             
            options[1] = new ImportOption();
            options[1].setItemIndex(0);
            options[1].setOptionKey("EXISTING");
             
            /*      existing report Id. Can be retrieved from ReportHeader table of Yellowfin database, ReportId column.
                        keep in mind that the reportId changes each time when a user modifies the report.
                        You can use the GETIDFORUUID call to get the valid reportId value for the report.
            */
            options[1].setOptionValue("70279");
             
rsr.setImportOptions(options);
  
AdministrationServiceResponse rs1 = adminService.remoteAdministrationCall(rsr);
             
            if ("SUCCESS".equals(rs1.getStatusCode()) ) {
                        out.write("<br>Test Import Success");
            }
            else {
            out.write("Failure");
            out.write(" Code: " + rs1.getErrorCode());
            }          
  
%>

...

Expand
titleTESTIMPORTCONTENT

こちらの関数は、YFX、またはXMLファイルからコンテンツをインポートし、テスト、または検証を行います。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

OrgRefStringこちらのオプションパラメーターは、クライアント組織IDの指定に使用することができます。
ParameterString[]こちらの配列は、インポート、検証されるコンテンツの詳細とStringsを含みます。最初のStringは、UTF-8 Stringのバイト配列です。次はファイルタイプであり、「YFX」、または「XML」になります。
ImportOptionsImportOption[]こちらのオプションパラメーターは、コンテンツのインポート方法を定義するために使用することができます。

 

リクエストの例

以下は、こちらのリクエストの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>
         <!--Optional:-->
         <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <function>TESTIMPORTCONTENT</function>
            <parameters>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0i ... </parameters>
            <parameters>XML</parameters>
            <importOption>
                    <optionIndex>0</optionIndex>
                        <optionKey>OPTION</optionKey>
                        <optionValue>REPLACE</optionValue>
                    <optionIndex>1</optionIndex>
                        <optionKey>EXISTING</optionKey>
                        <optionValue>70279</optionValue>
             </importOption>
          </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope> 

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE
ImportIssuesImportIssue[]

ファイルインポート中に発生した問題を含むオブジェクト配列です。

ContentResourcesContentResource[]インポートするYellowfinのコンテンツの詳細を含むオブジェクト配列です。

  

応答の例

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

Code Block
languagexml
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
            <contentResources>
               <resourceDescription>months, 6/3/2018 8:53 AM</resourceDescription>
               <resourceId>70279</resourceId>
            <resourceName>My Report 1000</resourceName>
            <resourceType>REPORT</resourceType>
               <resourceUUID>fd3794b3-62c0-4cf8-bac0-755e68d9c41e</resourceUUID>
            </contentResources>
            <errorCode>0</errorCode>
            <importIssues>
            <issueElements>
                <messageKey>error.reports.import.view</messageKey>
                <renderedMessage>View has not been selected.</renderedMessage>
            </issueElements>
            <issueElements>
                  <messageKey>error.reports.import.category</messageKey>
                <renderedMessage>Folder has not been selected.</renderedMessage>
            </issueElements>
            <resource>
                  <resourceDescription>months, 6/3/2018 8:53 AM</resourceDescription>
                 <resourceId>70279</resourceId>
                <resourceName>My Report 1000</resourceName>
                  <resourceType>REPORT</resourceType>
                  <resourceUUID>fd3794b3-62c0-4cf8-bac0-755e68d9c41e</resourceUUID>
            </resource>
            </importIssues>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>ab398569ce36672e9d776c3dae3804d6</sessionId>
          <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("TESTIMPORTCONTENT");
  • インポートするデータを含むファイルを指定します。

     

    Code Block
    themeEclipse
    languagejava
    Path path = Paths.get("/Applications/Yellowfin 7.4/qwerty.yfx");
     
    byte[] data = Files.readAllBytes(path);
    byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
    String f = new String(encodeBase64, "UTF-8");
  • ファイルの拡張子を提供します。例:YFX、またはXMLのいずれかです。

     

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

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

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

 

  • インポートしたコンテンツをテストします。

     

    Code Block
    themeEclipse
    languagejava
    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                out.write("<br>Success");
    
                ContentResource[] crs = rs.getContentResources();
    
                ImportIssue[] ImportIssues = rs.getImportIssues();
                out.write("<br>Import Issues: " + (ImportIssues!=null?ImportIssues.length:"no issues"));
    
                out.write("<table>");
                out.write("<tr><td> ResourceId </td><td> ResourceType </td><td> ResourceName </td><td> ResourceUUID </td></tr>");
                for (ContentResource c: crs) {
                            out.write("<tr>");
                            out.write("<td>" + c.getResourceId() + "</td><td>" + c.getResourceType() + "</td><td>" + c.getResourceName() + "</td><td>" + c.getResourceUUID() + "</td>");
                            out.write("</tr>");
       }
    } else {
                out.write("Failure");
                out.write(" Code: " + rs.getErrorCode());
    }
  • 応答は、次の要素を含みます。StatusCode、ImportIssues、ContentResources。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_testimportcontent.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.nio.file.Paths" %>
<%@ page import="java.nio.file.Path" %>
<%
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("TESTIMPORTCONTENT");
  
Path path = Paths.get("/Applications/Yellowfin 7.4/www.yfx");             // existing file
  
byte[] data = Files.readAllBytes(path);
byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
String f = new String(encodeBase64, "UTF-8");
  
rsr.setParameters(new String[]{f,"YFX"});
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
            out.write("<br>Success");
             
            ContentResource[] crs = rs.getContentResources();
             
            ImportIssue[] ImportIssues = rs.getImportIssues();
            out.write("<br>Import Issues: " + (ImportIssues!=null?ImportIssues.length:"no issues"));
             
            out.write("<table>");
            out.write("<tr><td> ResourceId </td><td> ResourceType </td><td> ResourceName </td><td> ResourceUUID </td></tr>");
            for (ContentResource c: crs) {
                        out.write("<tr>");
                        out.write("<td>" + c.getResourceId() + "</td><td>" + c.getResourceType() + "</td><td>" + c.getResourceName() + "</td><td>" + c.getResourceUUID() + "</td>");
                        out.write("</tr>");
   }
} else {
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
}
%>

...

Expand
titleEXPORTTRANSLATIONALL

こちらのwebサービスは、翻訳されたコンテンツをCSVファイルにエクスポートします。返されるデータは、すべての有効なビュー、レポート、ダッシュボードにわたる翻訳可能なコンテンツです。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

 

リクエストの例

以下は、こちらのリクエストの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>EXPORTTRANSLATIONALL</function>
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE
ContentTypeStringエクスポートファイルのタイプです。例えば、テキストやカンマ区切り値、などが該当します。
FileNameString生成されるファイル名です。
BinaryDataString翻訳データとともにBase64でエンコードされたString

  

応答の例

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

Code Block
languagexml
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
            <binaryData>77u/VVVJRCxUZXh0IFR5cGUsS2V5LE9yaWdpbmFsIFRleHQs ... </binaryData>
            <contentType>text/comma-separated-values</contentType>
            <errorCode>0</errorCode>
            <fileName>Translations - 10 Mar 2018.csv</fileName>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>4a19aa468b23ab18d3aee5c7121bcacd</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>

 

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("EXPORTTRANSLATIONALL");
  • リクエストを構成したら、呼び出しを実行します。

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

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

 

  • 応答は、次の要素を含みます。StatusCode、BinaryData、FileName、ContentType。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_exporttranslationall.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.io.PrintWriter" %>
<%
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("EXPORTTRANSLATIONALL");
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
             
            if ("SUCCESS".equals(rs.getStatusCode()) ) {
                        out.write("<br>Success");
                         
                        //response.setBinaryData(Base64.encodeBytes(pdf.getData()));
                         
                        String Base64encoded = rs.getBinaryData();
                        Base64encoded = Base64encoded.replace("\n", "").replace("\r", "");
                         
                        byte[] bytes = Base64encoded.getBytes();
                        byte[] decoded = java.util.Base64.getDecoder().decode(bytes);
                         
                        String text = new String(decoded, "UTF-8");
                        PrintWriter writer = new PrintWriter("/Applications/Yellowfin 7.4/" + rs.getFileName(), "UTF-8");
                        writer.println(text);
                        writer.close();
            }
            else {
            out.write("<br>Failure");
            out.write(" Code: " + rs.getErrorCode());
            }          
%>
Expand
titleIMPORTTRANSLATION

こちらの関数は、Yellowfinに翻訳CSVファイルをインポートします。このファイルは、指定したコンテンツをエクスポートする際に、コンテンツ翻訳プロセス中に生成されます。他の詳細とともに、ファイルには、他に指定した言語のカラム(列)が含まれます。翻訳したコンテンツをその構成されたカラム(列)に追加し、こちらの関数を使用して、システムにファイルをインポートし直します。

 

リクエストパラメーター

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

Function

String

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

BinaryDataString[]翻訳CSVファイルを表すバイトを含む配列です。

 

リクエストの例

以下は、こちらのリクエストの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>IMPORTTRANSLATION</function>
            <binaryData>-17</binaryData>
            <binaryData>-69</binaryData>
            <binaryData>-65</binaryData>
            <binaryData>85</binaryData>
            <binaryData>85</binaryData>
                ...
        </arg0>
    </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答パラメーター

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE

ステータスは、ファイルのインポートが成功したかどうかに対応します。

  

応答の例

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

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

 

手順

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

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

    Code Block
    themeEclipse
    languagejava
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);
    rsr.setFunction("IMPORTTRANSLATION");
  • インポートする翻訳CSVファイルを指定します。

     

    Code Block
    themeEclipse
    languagejava
    Path path = Paths.get("/Applications/Yellowfin 7.4/Translations - 8 Mar 2018.csv"); // existing file
    byte[] data = Files.readAllBytes(path);
      
    rsr.setBinaryData(data);
  • リクエストを構成したら、呼び出しを実行します。

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

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

 

  • 応答は、次の要素を含みます。StatusCode。(より詳細な情報は、上記応答パラメーターの表を参照してください)

 

 

完成例

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

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

Code Block
themeEclipse
languagejava
<%      
/*      ws_importtranslation.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.nio.file.Paths" %>
<%@ page import="java.nio.file.Path" %>
<%
  
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 the password of the account above
rsr.setOrgId(1);
rsr.setFunction("IMPORTTRANSLATION");
  
Path path = Paths.get("/Applications/Yellowfin 7.4/Translations - 8 Mar 2018.csv");       // existing file
  
byte[] data = Files.readAllBytes(path);
  
rsr.setBinaryData(data);
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
            if ("SUCCESS".equals(rs.getStatusCode()) ) {
                        out.write("<br>Success");
            }
            else {
            out.write("<br>Failure");
            out.write(" Code: " + rs.getErrorCode());
            }          
%>

...