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

Versions Compared

Key

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

Anchor
top
top

 

Yellowfinのレポートwebサービスは、Yellowfinのレポートには必須ではないが、いまだ有効ないくつかのレガシー関数から構成されています。以下は、これらの概要です。これらのサービスについてより詳細な情報はご希望の場合は、Yellowfinのサポートチームにお問い合わせください。

 

 

基礎的な関数

Expand
titleTESTEXPIRESESSION

こちらの関数は、レポートwebサービスが機能しているかをテストするために使用します。EXPIRESESSIONリクエストは、指定したYellowfinのセッションを期限切れにします。

 これを実行するコードは、以下の通りです。

リクエスト要素
Code Block
themeEclipse
languagejava
ReportServiceRequest rsr = new ReportServiceRequest();
ReportServiceResponse rs = null;
 
rsr.setLoginId(this.username);
rsr.setPassword(this.password);
// This is the primary organization
rsr.setOrgId(new Integer(1));
rsr.setReportRequest("EXPIRESESSION");
// This is the Session ID
rsr.setSessionId("5361781d-c3aa-4c97-bc13-883210ff8a6e");
 
rs = ReportService.remoteReportCall(rsr);
Expand
titleGETCOMMENTS

こちらの関数は、特定のレポートにコメントがあれば、それをすべて取得します。

 

リクエスト要素

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

ReportRequestStringwebサービス関数です。「GETCOMMENTS」に設定します。
OrgRefStringクライアント組織の内部参照IDです。(オプション設定)クライアント組織からレポートを検索する場合は、こちらを使用します。こちらを設定しない場合、デフォルト(プライマリー)組織内のレポートが検索されます。
ReportIdIntegerコメントを取得するレポートのIDを提供することができます。

リクエストの例

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

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

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

LoginId

String

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

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

Password

String

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

OrgId

Integer

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

ReportRequestStringwebサービス関数です。TEST」に設定します。
OrgRefStringクライアント組織内部参照IDです。(オプション設定)

 

リクエストの例

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

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:remoteReportCall>
        <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <reportRequest>TEST</reportRequest>          
         </arg0>
      </web:remoteReportCall>
   </soapenv:Body>
</soapenv:Envelope>

 

応答要素

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

応答要素データ型説明

StatusCode

String

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

  • SUCCESS
  • FAILURE

 

応答の例

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

Code Block
themeEclipse
languagexml
<S<soapenv:Envelope xmlns:Ssoapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteReportCallResponse xmlns:ns2web="http://webservices.web.mi.hof.com/">
         <return><soapenv:Header/>
            <canDrill>false</canDrill><soapenv:Body>
            <dashboardEnabled>false</dashboardEnabled><web:remoteReportCall>
            <errorCode>0</errorCode><arg0>
            <messages>Successfully Authenticated User: admin@yellowfin<loginId>admin@yellowfin.com.au</messages>loginId>
            <messages>Connection Tested Successfully</messages><password>test</password>
            <messages>Unknown Or Unsupported Request: TEST</messages><orgId>1</orgId>
            <messages>Web Service Request Complete</messages><reportRequest>GETCOMMENTS</reportRequest>
            <private>false</private>
            <sessionId>f78fe29edb19bbfe45626c2203249f4b</sessionId>
        <reportId>70012</reportId>
    <statusCode>SUCCESS</statusCode>
         </return>arg0>
      </ns2web:remoteReportCallResponse>remoteReportCall>
   </Ssoapenv:Body>
</Ssoapenv:Envelope>

 

手順

応答要素

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。応答には、これらの主要なパラメーターが含まれます。

expand
応答要素
title
データ型
詳細手順
説明
管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。

StatusCode

code

String

theme

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

Eclipse
  • SUCCESS
language
  • FAILURE
CommentsReportComment[]指定したレポートのコメントを含むオブジェクトです。

 

応答の例

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

特定のクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

 

リクエストを構成したら、呼び出しを実行します。
java
ReportServiceRequest rsr = new ReportServiceRequest();
 
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(new Integer(1));
 
rsr.setReportRequest("TEST");
Code Block
themeEclipse
language
java
rsr.setOrgRef("org1");      // search for the report in this client org
Code Block
languagejava
ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

 

返される応答には、StatusCodeパラメーターが含まれます詳細は、応答パラメーターの表を参照してください。

 

完成例

以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_test_reportservices.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • xml
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
          <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
             <return>
    
    インターネットブラウザから、「http://<host>:<port>/ws_test_reportservices.jsp」を実行します。
    Code Block
    themeEclipse
    languagejava
    <%          
    /*   <author>System Administrator</author>
              ws_test_reportservices.jsp  <authoringMode>JAVA</authoringMode>
                *<averageRunTime>0</averageRunTime>
    %>
    <%@  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="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
         
     
        ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("TEST");
        rsr.setOrgRef("1");
         
         
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
        if ("SUCCESS".equals(rs.getStatusCode())) {
             <canDrill>false</canDrill>
                <category>Tutorial</category>
                <comments>
                   <author>System Administrator</author>
                   <authorId>5</authorId>
                   <comment>&lt;span>Great info.&lt;/span></comment>
                   <commentDate>2018-03-18 17:32:54</commentDate>
                   <commentId>2004</commentId>
      JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class);
              <lastActivityDate>2018-03-18  Marshaller m = context.createMarshaller();
    17:33:13</lastActivityDate>
                   <parentCommentId>0</parentCommentId>
         m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); // To format XML
              <reportId>70012</reportId>
            JAXBElement<ReportServiceResponse> rootElement = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs); <statusCode>OPEN</statusCode>
                m.marshal(rootElement,out);
    </comments>
                <comments>
                   <author>System Administrator<//out.write("Success");
    author>
                   <authorId>5</authorId>
             } else {
        <comment>&lt;span>Want to see more out.write("Failure");
    structure.&lt;/span></comment>
              out.write(" Code: " + rs.getErrorCode());
        }
    %>
    Expand
    titleINFO

    こちらのwebサービスは、指定したレポートの詳細を取得します。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestString

    webサービス関数です。「INFO」に設定します。

    OrgRefStringクライアント組織内部参照IDです。(オプション設定)
    ReportIdInteger特定のレポートを検索するために、レポートIDを提供することができます。

     

    リクエストの例

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

    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>
         <commentDate>2018-03-18 17:33:13</commentDate>
                   <commentId>2005</commentId>
             <web:remoteReportCall>
            <arg0>
    <lastActivityDate>2018-03-18 17:33:13</lastActivityDate>
                   <parentCommentId>2004</parentCommentId>
                   <loginId>admin@yellowfin.com.au</loginId><reportId>70012</reportId>
                <password>test</password>   <statusCode>OPEN</statusCode>
                <orgId>1<</orgId>comments>
                <reportRequest>INFO<<dashboardEnabled>true</reportRequest>dashboardEnabled>
                <reportId>60712</reportId><dataOutput>COLUMN</dataOutput>
                <datasource>Ski Team</datasource>
                <<errorCode>0</arg0>errorCode>
          </web:remoteReportCall>      <formatCode>CHART</formatCode>
       </soapenv:Body>
    </soapenv:Envelope>

     

    応答要素

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

    応答要素データ型説明

    StatusCode

    String

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

    • SUCCESS
    • FAILURE
    ReportNameString

    指定したレポートの名前です。

    ReportDescriptionString指定したレポートの説明です。
    ReportUUIDInteger指定したレポートの一意のID(または、UUID)です。
    HitCountIntegerレポートがアクセスされた回数です。
    FormatCodeStringレポートの書式コードです。
    AverageRunTimeIntegerレポートの平均実行時間です。
    CategoryStringレポートが保存されているカテゴリーです。
    SubCategoryStringレポートのサブカテゴリーです。
    ReportUsageIntegerレポートが使用、またはアクセスされた回数です。
    ViewNameStringビューの名前です。
    DatasourceStringデータソースの名前です。
    AuthorStringレポートを作成したユーザーです。
    AuthoringModeStringレポートが作成されたモードです。
    ReportTemplateStringレポートのテンプレートです。
    DataOutputStringデータ出力です。例:カラム(列)
    DashboardEnabledBooleanダッシュボードが有効化されている場合はTrueです。
    LastModifiedDateDateレポートが最後に変更された日付です。

     

    応答の例

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

    Code Block
    themeEclipse
    languagexml
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
          <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">         <hitCount>3</hitCount>
                <lastModifiedDate>2018-03-07</lastModifiedDate>
                <lastRunDuration>0</lastRunDuration>
                <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
             <return>
       <messages>Loaded Report: 70012 Successfully</messages>
          <author>System Administrator</author>
         <messages>Web Service Request Complete</messages>
        <authoringMode>JAVA</authoringMode>
            <preRunFilterString><![CDATA[<div class="rptFilterLogicText">
    <span   <averageRunTime>0</averageRunTime>
            class="rptFilterLogicIdentifier">Invoiced Date</span>
    Between
    <span class="rptFilterLogicIdentifier">Current Date - 6 Years And Current Date</span>
    </div>
    .
    .
    .
        <canDrill>false<]]></canDrill>preRunFilterString>
                <category>Tutorial<<private>false</category>
    private>
                <reportDescription>This report provides a high level summary of <dashboardEnabled>true<campaigns</dashboardEnabled>reportDescription>
                <dataOutput>COLUMN<<reportId>70012</dataOutput>reportId>
                <datasource>Ski<reportName>Campaign Team<Summary</datasource>reportName>
                <errorCode>0<<reportTemplate>CHART</errorCode>reportTemplate>
                <formatCode>REPORTANDCHART</formatCode><reportUUID>3e842fae-02f7-4ad3-a632-ca267e0078da</reportUUID>
                <hitCount>0<<reportUsage>100</hitCount>reportUsage>
                <lastModifiedDate>2017-06-26</lastModifiedDate><sessionId>3ab136a400081d88c09526f8bdf9e2e7</sessionId>
                <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages><statusCode>SUCCESS</statusCode>
                <messages>Loaded Report: 60712 Successfully</messages><subCategory>Marketing &amp; Booking</subCategory>
                <messages>Collating<tags>No Report Information<tags</messages>tags>
                <messages>Web Service Request Complete</messages><viewName>New View</viewName>
             </return>
       <preRunFilterString><![CDATA[<div class="rptFilterLogicText">
    <span class="rptFilterLogicIdentifier">Company Name</span>
    In List
    <span class="rptFilterLogicIdentifier">[User Prompt]</span>
    </div>]]></preRunFilterString>
           </ns2:remoteReportCallResponse>
       </S:Body>
    </S:Envelope>

     

    手順

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

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

      Code Block
      themeEclipse
      languagejava
      ReportServiceRequest rsr = new ReportServiceRequest();
       
      rsr.setLoginId("admin@yellowfin.com.au");
      rsr.setPassword("test");
      rsr.setOrgId(new Integer(1));
       
      rsr.setReportRequest("GETCOMMENTS");
    • レポートが保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

       

      Code Block
      themeEclipse
      languagejava
      rsr.setOrgRef("org1");      
    <private>false<
    • //
    private>
    •  search for the report in this client org
    • どのレポートのコメントを取得するか指定することができます。

       

      Code Block
      themeEclipse
      languagejava
      rc.setReportId(60712);
    • ステータスを変更するコメントを指定します。新しいステータスオプションは以下の通りです。

       

    • リクエストに「rc」オブジェクトを渡します。

       

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

      Code Block
      languagejava
      ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

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

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

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

    Code Block
    themeEclipse
    languagejava
    <%   <reportDescription>Top N Agencies compared to all other Agencies
    /* by  demographic</reportDescription>
                <reportId>60712</reportId>
    ws_getcomments.jsp             <reportName>Agency Benchmark<*/reportName>
    %>
      
    <%@ page language="java" contentType="text/html; charset=UTF-8" %>
    <%@ page import="com.hof.util.*, java.util.*,  <reportTemplate>REPORTANDCHART</reportTemplate>
                <reportUUID>c83357db-8aef-4ec7-ab72-fce34de9ee77</reportUUID>
                <reportUsage>0</reportUsage>
                <sessionId>900e9dfabd21bdef75410fa88fe501dd</sessionId>
                <statusCode>SUCCESS</statusCode>
                <subCategory>Marketing &amp; Booking</subCategory>
                <tags>No tags</tags>
                <viewName>New View</viewName>
             </return>
          </ns2:remoteReportCallResponse>
       </S:Body>
    </S:Envelope>

     

    手順

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

    java.text.*" %>
    <%@ page import="com.hof.web.form.*" %>
    <%@ page import="com.hof.mi.web.service.*" %>
    <%@ page import="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
    /*
      Create Group
      Using Java generated stubs rather that using the Yellowfin webservices API..
    */
     
    ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("GETCOMMENTS");
        rsr.setReportId(56401);
         
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
         
    %>
    管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。

    Expand
    titleLEAVECOMMENT

    LEAVECOMMENTリクエストは、特定のレポートのコメントに、コメントや応答を追加します。

    これを実行するコードは、以下の通りです。

    Expand
    title詳細手順
    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    ReportComment comment = new ReportComment();
     
    rsr.setLoginId(
    "admin@yellowfin.com.au"
    this.username);
    rsr.setPassword(
    "test");
    this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    
    rsr.setReportRequest("
    INFO
    LEAVECOMMENT");
  • レポートの保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setOrgRef("org1");      // search for the report in this client org
  • どのレポートのコメントのステータスを変更するか指定することができます。

     
    
     
    comment.setComment("This is my comment");
    comment.setAuthorId(5);
    // If this is a response to a comment, then specify the parent comment ID
    comment.setParentCommentId(702);
    rsr.setReportComment(comment);
     
    rs = ReportService.remoteReportCall(rsr);
    Expand
    titleDELETECOMMENT

    DELETECOMMENTリクエストは、レポートから特定のコメントを削除します。

    これを実行するコードは、以下の通りです。

    レポートのクライアント参照ID、またはセッションIDを指定することもできます。

    rsr.setReportClientReferenceId("1"
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    ReportComment comment = new ReportComment();
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.
    setSessionId
    setReportRequest("
    18607a5670842650d512976b5d7ccddd");リクエストを構成したら、呼び出しを実行します。
    ReportServiceResponse rs=rsc
    DELETECOMMENT");
     
    comment.setCommentId(702);
    rsr.setReportComment(comment);
     
    rs = ReportService.remoteReportCall(rsr);
    Code Block
    themeEclipse
    languagejava
    rsr.setReportId(60712);
    Code Block
    themeEclipse
    languagejava
    Code Block
    languagejava
    レポートwebサービスを初期化します。実行方法の詳細は、こちらを参照してください。 ReportSchemaオブジェクトは、レポートカラム(列)の情報を含む、以下のパラメーターを返します。
    Expand
    title
    COMMENTSTATUS
    返される応答には、他のレポート固有のパラメーターとともに、StatusCodeパラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。

    こちらの関数は、レポートコメントのステータスを設定するために使用します。ステータスオプションは、次の通りです。:OPEN、EDITED、RESOLVED、DELETED

     

    リクエスト要素

    完成例

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

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_info_report.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • リクエスト要素データ型説明

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「COMMENTSTATUS」に設定します。
    ReportCommentReportCommentステータスを設定するレポートコメントの詳細を含むオブジェクトです。以下のを参照してください。
    OrgRefStringクライアント組織の内部参照IDです。(オプション設定)クライアント組織内のレポートを検索する場合は、こちらを使用します。こちらが設定されない場合、レポートがデフォルト(プライマリー)組織から検索されます。
    ReportIdInteger特定のレポートを検索するために、レポートIDを提供することができます。

     

    Anchor
    以下表
    以下表
    こちらの関数のReportCommentオブジェクトに設定しなくてはいけない必須パラメーターがあります。

    ReportComment要素データ型説明取得コード
    CommentIdIntegerコメントのIDです。getCommentId()
    StatusCodeString新しいステータスを提供します。ステータスオプションは、次の通りです。:OPEN、EDITED、RESOLVED、DELETEDgetStatusCode()

     

    リクエストの例

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

    インターネットブラウザから、「http://<host>:<port>/ws_info_report.jsp」を実行します。

    Code Block
    themeEclipse
    languagejavaxml
    <%          
    /* <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
       <soapenv:Header/>
       <soapenv:Body>
          <web:remoteReportCall>
           ws_info_report.jsp  <arg0>
                *<loginId>admin@yellowfin.com.au</loginId>
    %>
      
    <%@ 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="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
     
    ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("INFO");
     
        rsr.setOrgRef("1");
        rsr.setReportId(60712);
        rsr.setReportClientReferenceId("1");
        rsr.setSessionId("18607a5670842650d512976b5d7ccddd");
     
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
        if ("SUCCESS".equals(rs.getStatusCode())) { <password>test</password>
                <orgId>1</orgId>
                <reportRequest>COMMENTSTATUS</reportRequest>
                <reportId>60712</reportId>
                <reportComment>
                    <commentId>12345</commentId>
                    <statusCode>OPEN</statusCode>
                </reportComment>
             </arg0>
       JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class); </web:remoteReportCall>
       </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>
         Marshaller m = context.createMarshaller();
    <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
             <return>
        m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); // To format XML
           <canDrill>false</canDrill>
                <dashboardEnabled>false</dashboardEnabled>
         JAXBElement<ReportServiceResponse> rootElement = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs);
     <errorCode>0</errorCode>
                 m.marshal(rootElement,out);
    <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
                <messages>Web //out.write("Success");
    Service Request Complete</messages>
         }      else {
    <private>false</private>
                out.write("Failure");<sessionId>6dc344c3e5dee88864998f4acc17d676</sessionId>
            out.write(" Code: " + rs.getErrorCode());
        }
    %>
    Expand
    titleSCHEMA
     <statusCode>SUCCESS</statusCode>
             </return>
          </ns2:remoteReportCallResponse>
       </S:Body>
    </S:Envelope>

     

    手順

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

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

      Code Block
      themeEclipse
      languagejava
      ReportServiceRequest rsr = new ReportServiceRequest();
       
      rsr.setLoginId("admin@yellowfin.com.au");
      rsr.setPassword("test");
      rsr.setOrgId(new Integer(1));
       
      rsr.setReportRequest("COMMENTSTATUS");
    • レポートが保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

       

      Code Block
      themeEclipse
      languagejava
      rsr.setOrgRef("org1");      // search for the report in this client org
    • こちらの関数は、レポートに与える新しいステータスを指定するために、ReportCommentオブジェクトを要求します。

       

      Code Block
      themeEclipse
      languagejava
      ReportComment rc=new ReportComment();
    • ステータスを変更するレポートのコメントを指定することもできます。

       

      Code Block
      themeEclipse
      languagejava
      rc.setReportId(60712);
    • ステータスを変更するコメントと、新しいステータスを指定します。

       

      Code Block
      themeEclipse
      languagejava
      rc.setCommentId(12345);
      rc.setStatusCode("OPEN");
    • リクエストに「rc」オブジェクトを渡します。

       

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

      Code Block
      languagejava
      ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

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

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

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

    Code Block
    themeEclipse
    languagejava
    <%          
    /*     

    こちらのwebサービスは、レポートのカラム(列)やフィルターのメタデータを含む、指定したレポートのスキーマ情報を返します。レポートは、そのレポートID、またはwebサービス名を提供することで指定しなくてはいけません。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「SCHEMA」に設定します。
    OrgRefStringクライアント組織内部参照IDです。(オプション設定)
    ReportIdInteger特定のレポートを検索するための内部レポートIDです。レポートIDは、レポートが編集される度に変更されます。ヒント:関連するレポートIDを取得するために、GETIDFROMUUID関数を使用することができます。
    ObjectNameString(オプション設定)レポートのwebサービス名です。レポートIDが提供されている場合、こちらは必要ありません。

     

    リクエストの例

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

    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:remoteReportCall>
             <arg0>
             ws_commentstatus.jsp   <loginId>admin@yellowfin.com.au</loginId>
                <password>test<*/password>
    %>
      
    <%@ page language="java" contentType="text/html; charset=UTF-8" %>
    <%@ page import="com.hof.util.*, java.util.*,  <orgId>1</orgId>
                <reportRequest>SCHEMA</reportRequest>
                <reportId>60712</reportId>
                </arg0>
          </web:remoteReportCall>
       </soapenv:Body>
    </soapenv:Envelope>

     

    応答要素

    応答には、これらの主要なパラメーターが含まれます。

    応答要素データ型説明

    StatusCode

    String

    Webサービスリクエストのステータスです。値の選択肢は、以下の通りです。

    • SUCCESS
    • FAILURE

    Columns

    ReportSchema[]

    レポート結果セット内の各カラム(列)と、レポートにユーザープロンプトフィルターのデータを渡す必要があるかの情報(メタデータ)を含むReportSchemaオブジェクトの配列です。より詳細な情報は、以下のを参照してください。

    Author

    String

    レポートを作成したユーザーの名前です。

    AuthoringMode

    String

     

    AverageRunTime

    Integer

     

    CanDrill

    Boolean

    レポートのドリル可否です。

    Category

    String

    レポートが保存されているフォルダーの名前です。

    SubCategory

    String

    レポートが保存されているサブフォルダーの名前です。

    DashboardEnabled

    Boolean

     

    DataOutput

    String

    以下のいずれかになります。

    • COLUMN
    • ROW
    • PIVOT

    Datasource

    String

    レポートが依存するデータソースの名前です。

    DrillCode

    String

    レポートで利用可能な場合のドリルタイプです。以下のいずれかになります。

    • DRILLDOWN
    • DRILLTHROUGH
    • DRILLANYWHERE

    FormatCode

    String

    指定したレポートの書式コードです。以下のいずれかになります。

    • REPORTANDCHART
    • CHART
    • REPORT

    HitCount

    Integer

    指定したレポートがアクセスされた回数です。

    LastModifiedDate

    String

    レポートが最後に変更された日付です。

    LastRunDuration

    Integer

     

    PreRunFilterString

    String

     

    Private

    Boolean

    レポートが非公開、または公開のどちらであるかを定義します。(レガシーサービスの場合は非公開です)

    ReportDescription

    String

    指定したレポートの説明です。

    ReportId

    Integer

    指定したレポートのIDです。 

    ReportName

    String

    指定したレポートの名前です。

    ReportTemplate

    String

    レポートに適用するテンプレートです。以下のいずれかになります。

    • REPORTANDCHART
    • CHART
    • REPORT

    ReportUUID

    String

    レポートのUUIDです。

    ReportUsage

    Integer

     

    ViewName

    String

    レポートが依存するビューの名前です。

    Tags

    String

     

    ErrorCode

    Integer

    webサービスが失敗した場合のエラーのコード番号です。

    Messages

    String[]

    レポートがサーバ上で実行されている時のデバッグ情報を示す文字列の配列です。デバッグとエラーのトレーシングに使用されます。
    Anchor
    以下の表以下の表
    パラメーター説明

    ColumnName

    String

    レポートカラム(列)の名前です。

    DisplayName

    String

    カラム(列)の表示名です。

    ColumnLength

    String

    レポートカラム(列)の長さです。

    FieldId

    Integer

    カラム(列)のフィールドIDです。

    DataType

    String

    レポートカラム(列)のデータ型です。

    SortOrder

    Integer

    カラム(列)を並べかえる順序です。

    Hidden

    Boolean

    レポートでのカラム(列)表示有無です。

    NumberOfDecimals

    Integer

     

    OutputLocation

    String

     

    AllowPrompt

    Boolean

    フィルターのみの設定です。

    CachedValues

    Boolean

    フィルターのみの設定です。フィルターのキャッシュ値使用有無です。

    FilterDisplayType

    String

    フィルターのみの設定です。カラム(列)がフィルタの場合のフィルター表示タイプです。

    FilterId

    String

    フィルターのみの設定です。カラム(列)がフィルターの場合のフィルターIDです。

    FilterOmittable

    Boolean

    フィルターのみの設定です。

    FilterType

    String

    フィルターのみの設定です。フィルタータイプと、プロンプトに投入する必要のあるデータを決定します。

    DefaultValue1

    String

    フィルターのみの設定です。フィルターが設定されている場合の最初のデフォルト値です。

    DefaultValue2

    String

    フィルターのみの設定です。フィルターが設定されている場合の二番目のデフォルト値です。

    FilterTypeCode

    String

    フィルターのみの設定です。

    FilterUUID

    String

    フィルターのみの設定です。フィルターのUUIDです。

    MinimumValue

    BigDecimal

    フィルターのみの設定です。フィルターが設定されている場合の最小値です。

    MaximumValue

    BigDecimal

    フィルターのみの設定です。フィルターが設定されている場合の最大値です。

    ParentFilterId

    Integer

    フィルターのみの設定です。依存フィルターが設定されている場合の親フィルターのフィルターIDです。

    Prompt

    Boolean

    フィルターのみの設定です。カラム(列)がプロンプトフィルターであるかどうかです。

    ValueUnitCode

    String

    フィルターのみの設定です。フィルターが設定されている場合の時間単位です。

    応答の例

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

    Code Block
    themeEclipse
    languagexml
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
        <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">java.text.*" %>
    <%@ page import="com.hof.web.form.*" %>
    <%@ page import="com.hof.mi.web.service.*" %>
    <%@ page import="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
    /*
      Create Group
      Using Java generated stubs rather that using the Yellowfin webservices API..
    */
     
    ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("COMMENTSTATUS");
         
        ReportComment rc=new ReportComment();
        rc.setReportId(60712);
        rc.setCommentId(12345);
        rc.setStatusCode("OPEN");
        rsr.setReportComment(rc);
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
        if ("SUCCESS".equals(rs.getStatusCode())) {
              JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class);
                Marshaller m = context.createMarshaller();
                m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); // To format XML
                JAXBElement<ReportServiceResponse> rootElement = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs);
                m.marshal(rootElement,out);
            <return>//out.write("Success");
        } else {
           <author>System Administrator</author> out.write("Failure");
            out.write(" Code: "  <authoringMode>JAVA</authoringMode>+ rs.getErrorCode());
        }
    %>
    Expand
    titleDISTRIBUTEINBOX

    DISTRIBUTEINBOXリクエストは、受信者一覧の受信トレイにレポートを配信します。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    // Specify the Person ID values for your list of recipients
    String[] reportoptions = { "11111", "5", "10101"};
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("DISTRIBUTEINBOX");
    rsr.setReportOptions(reportoptions);
    rsr.setReportId(12345);
    // This is an optional distribution text for all recipients
    rsr.setDistributionText("A message for recipients");
     
    rs = ReportService.remoteReportCall(rsr);
    Expand
    titleGETDISPLAYEDREPORTID

    GETDISPLAYEDREPORTIDリクエストは、現在表示されているレポートのレポートIDを返します。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("GETDISPLAYEDREPORTID");
     
    rs = ReportService.remoteReportCall(rsr);

     

    返されるReportServiceResponseオブジェクトの構成は、以下の通りです。

    応答要素データ型説明取得コード

    DisplayedReportId

    Integer

    現在表示されているレポートのレポートIDです。

    getDisplayedReportId()

    Expand
    titleGETKPI

    GETKPIリクエストは、特定のKPIレポートのKPIオブジェクトを返します。こちらの関数リクエストは通常、モバイルアプリケーション内で活用されます。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("GETKPI");
    rsr.setReportId(12345);
     
    rs = ReportService.remoteReportCall(rsr);

     

    返されるReportServiceResponseオブジェクトの構成は、以下の通りです。

    応答要素データ型説明取得コード

    KPI

    KPIオブジェクト

    これが、特定のKPIメトリック(数値)の実績、目標、および差異の値を保持するカスタムKPIオブジェクトです。(KPIを参照してください)。

    getKPI()

    Expand
    titleGETDRILLANYWHEREMENU

    GETDRILLANYWHEREMENUリクエストは、選択したレポートカラム(列)で使用可能なドリルエニウェアメニューを返します。こちらの関数リクエストは通常、モバイルアプリケーション内で活用されます。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("GETDRILLANYWHEREMENU");
    rsr.setReportId(12345);
    // This is an integer field which is the Field ID of the selected column
    rsr.setDrillAnywhereFieldId(3);
    // This is the actual value of the column
    rsr.setDrillAnywhereCellValue("5000");
     
    rs = ReportService.remoteReportCall(rsr);

     

    返されるReportServiceResponseオブジェクトの構成は、以下の通りです。

    応答要素

    データ型

    説明取得コード

    DrillAnywhereCategories

    Array(String)

    文字列の配列です。

    getDrillAnywhereCategories()

    DrillAnywhereTargets

    Array (DrillAnywhereTarget)

    ドリルエニウェアカテゴリーのドリルエニウェア目標を一覧表示するDrillAnywhereTargetオブジェクトの配列です(DrillAnywhereTargetを参照してください)。

    getDrillAnywhereTargets()

    Expand
    titleSUBSCRIBEDETAILS

    SUBSCRIBEDETAILSリクエストは、特定のレポートのスケジュールレコードを返します。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    ScheduleRecord sr = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("SUBSCRIBEDETAILS");
    rsr.setReportId(12345):
    // This is the ID of the user to be subscribed
    rsr.setReportUserId(19090);
     
    rs = ReportService.remoteReportCall(rsr);
    sr = rs.getSchedule();

     

    返されるReportServiceResponseオブジェクトの構成は、以下の通りです。

    応答要素データ型説明取得コード

    ScheduleRecord

    ScheduleRecordオブジェクト

    購読詳細と条件を含むScheduleRecordオブジェクトです(ScheduleRecordを参照してください)。

    getSchedule()

    Expand
    titleSUBSCRIBE

    SUBSCRIBEリクエストは、指定したユーザーの指定したレポートへの購読を作成、または変更します。こちらの関数リクエストは通常、現在の購読情報を取得するために、SUBSCRIBEDETAILSのあとに呼び出されます。そうでない場合、こちらの関数の呼び出しのために、ScheduleRecordオブジェクトを作成して適切なデータを投入する必要があります(ScheduleRecordを参照してください)。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    // Either retrieve a current ScheduleRecord beforehand or create a new one. A new one is created in this example
    ScheduleRecord sr = new ScheduleRecord();
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("SUBSCRIBE");
    rsr.setReportId(12345):
    // This is the ID of the user to be subscribed
    rsr.setReportUserId(19090);
     
    // Refer to the ScheduleRecord schema definition for all possible variables
    sr.setRecipient(19090);
    sr.setFormat("PDF");
    sr.setSubject("Athlete Analysis");
    sr.setBodyText("Pay attention to the data in October");
    sr.setFrequencyTypeCode("FORTNIGHTLY");
    sr.setFrequencyCode("ONE");
    sr.setFrequencyUnit(1);
    sr.setAdvancedTimezoneCode("AUSTRALIA/SYDNEY");
    // total of seconds from 12am - the example below is set for 5.30pm
    sr.setAdvancedTime(63000);
     
    rs = ReportService.remoteReportCall(rsr);
    Expand
    titleUNSUBSCRIBE

    UNSUBSCRIBEリクエストは、指定したレポートから、指定したユーザーの購読を停止します。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("UNSUBSCRIBE");
    rsr.setReportId(12345):
    // This is the ID of the user to be subscribed
    rsr.setReportUserId(19090);
     
    rs = ReportService.remoteReportCall(rsr);
    Expand
    titleLOADDASHBOARDTAB

    LOADDASHBOARDTABリクエストは、指定したダッシュボードタブとそのメタデータを読み込みます。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    DashboardDefinition dd = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("LOADDASHBOARDTAB");
    // This is the ID of the dashboard tab
    rsr.setDashboardTabId(11111);
     
    rs = ReportService.remoteReportCall(rsr);
    dd = rs.getDashboard();

     

    返されるReportServiceResponseオブジェクトの構成は、以下の通りです。

    応答要素データ型説明取得コード

    DashboardDefinition

    DashboardDefinitionオブジェクト

    ダッシュボードタブのメタデータを含むDashboardDefinitionオブジェクトです(DashboardDefinitionを参照してください)。

    getDashboard()

    Expand
    titleLOADPARENTDASHBOARDTAB

    こちらの関数は、特定のダッシュボードの親タブの定義、またはメタデータを取得します。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「LOADPARENTDASHBOARDTAB」に設定します。
    OrgRefStringクライアント組織の内部参照IDを指定するオプション設定です。
    DashboardTabIdInteger読み込まれるダッシュボードを指定する内部IDです。
    SessionIdInteger(オプション設定)IDを使用して以前のセッションを指定します。
    LanguageCode (オプション設定)言語を指定します。
    ReportsOption (オプション設定)レポートを送信する電子メールアドレスの一覧です。

    リクエストの例

    以下の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:remoteReportCall>
            <arg0>  <averageRunTime>0</averageRunTime>
                <canDrill>false</canDrill>
               <category>Tutorial</category>
                <columns>
                   <columnName>Region</columnName>
                   <dataType>TEXT</dataType>
                <displayName>Athlete Region</displayName>
                <fieldId>1</fieldId>
                <hidden>false</hidden>
                   <numberOfDecimals>0</numberOfDecimals>
                   <outputLocation>COLUMN</outputLocation>
                   <prompt>false</prompt>
                   <sortOrder>0</sortOrder>
                </columns>
                <columns>
                   <allowPrompt>false</allowPrompt>
                   <cachedValues>true</cachedValues>
                   <columnName>Region</columnName>
                   <dataType>TEXT</dataType>
                <displayName>Athlete Region</displayName>
                <filterDisplayType>DROPDOWN</filterDisplayType>
                   <filterId>74908</filterId>
                   <filterOmittable>true</filterOmittable>
                   <filterType>INLIST</filterType>
                   <filterTypeCode>FILTER</filterTypeCode>
                 <filterUUID>d4ea61ab-247e-403a-b51b-8243aeea63db</filterUUID>
                   <numberOfDecimals>0</numberOfDecimals>
                   <prompt>true</prompt>
                   <sortOrder>0</sortOrder>
                </columns>
                <dashboardEnabled>true</dashboardEnabled>
                <dataOutput>COLUMN</dataOutput>
                <datasource>Ski Team !!!</datasource>
                <drillCode>DRILLDOWN</drillCode>
                <errorCode>0</errorCode>
                <formatCode>REPORTANDCHART</formatCode>
                <hitCount>3</hitCount>
                <lastModifiedDate>2018-06-07</lastModifiedDate>
                <lastRunDuration>0</lastRunDuration>
                <messages>Successfully Authenticated User: admin@yellowfin<loginId>admin@yellowfin.com.au</messages>loginId>
                <password>test</password>
        <messages>Loaded Report: 74907 Successfully</messages>
         <orgId>1</orgId>
           <messages>Collating Schema Information</messages>
       <reportRequest>LOADPARENTDASHBOARDTAB</reportRequest>
             <messages>Web Service Request Complete<<dashboardTabId>61251</messages>dashboardTabId>
             </arg0>
       <preRunFilterString><![CDATA[<div class="rptFilterLogicText">
    <span class="rptFilterLogicIdentifier">Athlete Region</span>
    In List
    <span class="rptFilterLogicIdentifier">[User Prompt]</span>
    </div>]]></preRunFilterString>
        </web:remoteReportCall>
       </soapenv:Body>
    </soapenv:Envelope>

     

    応答要素

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

    応答要素データ型説明

    StatusCode

    String

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

    • SUCCESS
    • FAILURE
    DashboardDashboardDefinition指定したダッシュボードとそのサブタブのメタデータを含むオブジェクトです。

     

    応答の例

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

    Code Block
    themeEclipse
    languagexml
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
             <private>false</private><ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
             <return>
        <reportDescription>Ski Team, 8/6/2018 9:36 AM</reportDescription>      <canDrill>false</canDrill>
                <reportId>74907</reportId><dashboard>
                <reportName>cached   filters<<accessCode>UNSECURE</reportName>accessCode>
                <reportTemplate>REPORTANDCHART</reportTemplate>   <categoryCode>TUTORIAL</categoryCode>
                <reportUUID>982500e8-7b33-476b-be47-6a1aab611349</reportUUID>
       <elements>
                   <reportUsage>100</reportUsage>   <columnNumber>1</columnNumber>
                <sessionId>7e9971ea99fff609387ac1c504abcc63</sessionId>      <entityId>60947</entityId>
                <statusCode>SUCCESS</statusCode>      <entityTypeCode>REPORT</entityTypeCode>
                <subCategory>Training</subCategory>      <portletHeight>448</portletHeight>
                <tags>No tags</tags>      <portletStatus>RESTORED</portletStatus>
                <viewName>Ski Team</viewName>
          <rowNumber>3</rowNumber>
                 </return>     <sequenceNumber>1</sequenceNumber>
        </ns2:remoteReportCallResponse>
                  </S:Body>
    </S:Envelope>

     

    手順

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

    Expand
    title詳細手順
    インターネットブラウザから、「http://<host>:<port>/ws_reportschema.jsp」を実行します。
    rsr.setOrgRef("org1");
    <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</
    /
    tabId>
        
    search
     
    for
     
    the
     
    report
     
    in
     
    this
     
    client org
  • ステータスを変更するレポートのコメントを指定することができます。

     

  • Code Block
    themeEclipse
    languagejava
    管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
     
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(new Integer(1));
     
    rsr.setReportRequest("SCHEMA");

    レポートの保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

     

    Code Block
    themeEclipse
    languagejava
    Code Block
    themeEclipse
    languagejava
    rsr.setReportId(70045);
    リクエストを構成したら、呼び出しを実行します。
    Code Block
    languagejava
    ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

    返される応答には、他のレポート固有のパラメーターとともに、StatusCodeパラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_reportschema.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • <%       </elements>
            
    /*       <elements>
           ws_reportschema.jsp           <columnNumber>1</columnNumber>
                      *<entityId>61001</entityId>
    %>
    <%@   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.*" %>
    <%
        ReportServiceResponse rs = null;             <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>363</portletHeight>
        ReportServiceRequest rsr = new ReportServiceRequest();
        ReportServiceService ts = new ReportServiceServiceLocator("localhost", 8080, "/services/ReportService", false);
    <portletStatus>RESTORED</portletStatus>
         ReportServiceSoapBindingStub rssbs = (ReportServiceSoapBindingStub) ts.getReportService();
      
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
    <rowNumber>1</rowNumber>
         rsr.setOrgId(1);
        rsr.setReportRequest("SCHEMA");
         
        rsr.setReportId(70045);<sequenceNumber>1</sequenceNumber>
         
        rs = rssbs.remoteReportCall(rsr);
      
        if ("SUCCESS".equals(rs.getStatusCode())) { <startDate>2017-06-26T00:00:00+10:00</startDate>
            out.write("Success </br>");
             <tabId>61251</tabId>
                   </elements>
                ReportSchema[] schema = rs.getColumns(); <elements>
                      <columnNumber>1</columnNumber>
                      for (ReportSchema s: schema)
    <entityId>61097</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>374</portletHeight>
                       //display filters:
    <portletStatus>RESTORED</portletStatus>
                      <rowNumber>2</rowNumber>
                      <sequenceNumber>1</sequenceNumber>
                      if (s.getFilterType() != null && s.getFilterTypeCode().equals("FILTER")){
    <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <elements>
                      <columnNumber>1</columnNumber>
                  out.write("<br>Display Name: " + s.getDisplayName()); <entityId>61046</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>331</portletHeight>
                      <portletStatus>RESTORED</portletStatus>
                      out.write("<br>Filter UUID:" + s.getFilterUUID());<rowNumber>3</rowNumber>
                      <sequenceNumber>2</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <elements>
             out.write("<br>Filter Id:" + s.getFilterId());         <columnNumber>1</columnNumber>
                      <entityId>61067</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                    }  <portletHeight>225</portletHeight>
        }     else {
            out.write(rs.getStatusCode());<portletStatus>RESTORED</portletStatus>
            out.write(rs.toString());
              }
    %>
    Expand
    titleFILTEROPTIONS

    webサービスは、指定したレポートのフィルター値を返します。

    注意:現在、このリクエストにユーザー情報を渡す方法はありません。そのため、特定の値を制限するアクセスフィルターがレポートに適用されている場合、ログインしているユーザー(このwebサービスを呼び出しているユーザー)がアクセスできるフィルター値のみが返されます。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「FILTEROPTIONS」に設定します。
    OrgRefString(オプション設定)特定のクライアント組織を指定してレポートを検索する場合の、クライアント組織内部参照IDです。こちらが指定されてない場合、デフォルト組織から検索されます。
    ReportClientReferenceIdString(オプション設定)特定のクライアント組織を指定する、別のオプションです。
    ReportIdInteger特定のレポートを検索するための内部レポートIDです。レポートIDは、レポートが編集される度に変更されます。ヒント:関連するレポートIDを取得するために、GETIDFROMUUID関数を使用することができます。
    ObjectNameString内部フィルターIDです。ヒント:レポートが編集される度に変更されるため、SCHEMA関数を使用して有効なフィルターIDを取得します。

     

    リクエストの例

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

    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:remoteReportCall>
    <rowNumber>3</rowNumber>
                      <sequenceNumber>3</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   <arg0>
    </elements>
                   <loginId>admin@yellowfin.com.au</loginId><elements>
                    <password>test<  <columnNumber>2</password>columnNumber>
                    <orgId>1<  <entityId>61035</orgId>entityId>
                      <reportRequest>FILTEROPTIONS<<entityTypeCode>REPORT</reportRequest>entityTypeCode>
                     <reportId>70066< <portletHeight>373</reportId>portletHeight>
                      <objectName>70081<<portletStatus>RESTORED</objectName>portletStatus>
             </arg0>
             <<rowNumber>2</web:remoteReportCall>rowNumber>
       </soapenv:Body>
    </soapenv:Envelope>

     

    応答要素

    応答には、これらの主要なパラメーターが含まれます。

    応答要素データ型説明

    StatusCode

    String

    Webサービスリクエストのステータスです。値の選択肢は、以下の通りです。

    • SUCCESS
    • FAILURE

    Results

    ReportRow[]

    利用可能なフィルター値の配列です。より詳細な情報は、以下のを参照してください。

    Author

    String

    レポートを作成したユーザーの名前です。

    AuthoringMode

    String

     

    AverageRunTime

    Integer

     

    CanDrill

    Boolean

    レポートのドリル可否です。

    Category

    String

    レポートが保存されているフォルダーの名前です。

    SubCategory

    String

    レポートが保存されているサブフォルダーの名前です。

    DashboardEnabled

    Boolean

     

    DataOutput

    String

    以下のいずれかになります。
    • COLUMN
    • ROW
    • PIVOT

    Datasource

    String

    このレポートに使用されているデータソースの名前です。

    FormatCode

    String

    指定したレポートの書式コードです。以下のいずれかになります。

    • REPORTANDCHART
    • CHART
    • REPORT

    HitCount

    Integer

    指定したレポートがアクセスされた回数です。

    LastModifiedDate

    String

    レポートが最後に変更された日付です。

    LastRunDuration

    Integer

     

    PreRunFilterString

    String

     

    Private

    Boolean

    レポートが非公開、または公開のどちらであるかを定義します。(レガシーサービスの場合は非公開です)

    ReportDescription

    String

    指定したレポートの説明です。 

    ReportId

    Integer

    指定したレポートのIDです。 

    ReportName

    String

    指定したレポートの名前です。 

    ReportTemplate

    String

    レポートに適用するテンプレートです。以下のいずれかになります。

    • REPORTANDCHART
    • CHART
    • REPORT

    ReportUUID

    String

    レポートのUUIDです。

    ReportUsage

    Integer

     

    ViewName

    String

    レポートが依存するビューの名前です。 

    Tags

    String

     

    ErrorCode

    Integer

    webサービスが失敗した場合のエラーのコード番号です。 

    Messages

    String[]

    レポートがサーバ上で実行されている場合にデバッグ情報を示す文字列の配列です。デバッグとエラーのトレーシングに使用されます。  Anchor以下の表2以下の表2ReportRowオブジェクトは、以下のパラメーターを返します。
    パラメーター説明
    DataValueString[]レポート結果セット内の各カラム(列)データの文字列の配列です。

    応答の例

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

    Code Block
    themeEclipse
    languagexml
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
        <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
            <return>               <sequenceNumber>1</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <endDate>9999-12-31T00:00:00+11:00</endDate>
                   <filters>
                      <componentId>0</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>SUMMARYCHART</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>SUMMARYCHART</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>SUMMARYCHART</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>61035</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>CHART</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>61067</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>SUMMARYCHART</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>61097</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>REPORT</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <entityId>61250</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>HELPON</formatKey>
                      <formatValue>true</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <entityId>61250</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>SUBTABS</formatKey>
                      <formatValue>OFF</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <entityId>61250</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>UNITSELECTION</formatKey>
                      <formatValue>OFF</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <groupTypeCode>ANALYTIC</groupTypeCode>
                   <languageCode>EN</languageCode>
                   <longDescription/>
                   <owner>1</owner>
                   <ownerTypeCode>ORGANISATION</ownerTypeCode>
                   <parentGroupId>0</parentGroupId>
                   <shortDescription>Sales Performance</shortDescription>
                   <startDate>2017-06-26T00:00:00+10:00</startDate>
                   <statusCode>OPEN</statusCode>
                   <subCategoryCode>ATHLETES</subCategoryCode>
                   <subtabs>
                      <elements>
                         <columnNumber>1</columnNumber>
                         <entityId>60947</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>448</portletHeight>
                         <portletStatus>RESTORED</portletStatus>
                         <rowNumber>3</rowNumber>
                         <sequenceNumber>1</sequenceNumber>
                         <startDate>2017-06-26T00:00:00+10:00</startDate>
                         <tabId>61251</tabId>
                      </elements>
                      <elements>
                         <columnNumber>1</columnNumber>
                         <entityId>61001</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>363</portletHeight>
                         <portletStatus>RESTORED</portletStatus>
                         <rowNumber>1</rowNumber>
                         <sequenceNumber>1</sequenceNumber>
                         <startDate>2017-06-26T00:00:00+10:00</startDate>
                         <tabId>61251</tabId>
                      </elements>
                      <elements>
                         <columnNumber>1</columnNumber>
                         <entityId>61097</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>374</portletHeight>
                         <portletStatus>RESTORED</portletStatus>
                         <rowNumber>2</rowNumber>
                         <sequenceNumber>1</sequenceNumber>
                         <startDate>2017-06-26T00:00:00+10:00</startDate>
                         <tabId>61251</tabId>
                      </elements>
                      <elements>
                         <columnNumber>1</columnNumber>
                         <entityId>61046</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>331</portletHeight>
                         <portletStatus>RESTORED</portletStatus>
                         <rowNumber>3</rowNumber>
                         <sequenceNumber>2</sequenceNumber>
                         <startDate>2017-06-26T00:00:00+10:00</startDate>
                         <tabId>61251</tabId>
                      </elements>
                      <elements>
                         <columnNumber>1</columnNumber>
                         <entityId>61067</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>225</portletHeight>
                         <portletStatus>RESTORED</portletStatus>
                         <rowNumber>3</rowNumber>
                         <sequenceNumber>3</sequenceNumber>
                         <startDate>2017-06-26T00:00:00+10:00</startDate>
                         <tabId>61251</tabId>
                      </elements>
                      <elements>
                         <columnNumber>2</columnNumber>
                         <entityId>61035</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>373</portletHeight>
                         <portletStatus>RESTORED</portletStatus>
                         <rowNumber>2</rowNumber>
                         <sequenceNumber>1</sequenceNumber>
                         <startDate>2017-06-26T00:00:00+10:00</startDate>
                         <tabId>61251</tabId>
                      </elements>
                      <endDate>9999-12-31T00:00:00+11:00</endDate>
                      <filters>
                         <componentId>0</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>DEFAULTDISPLAY</formatKey>
                         <formatValue>SUMMARYCHART</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>0</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>DEFAULTDISPLAY</formatKey>
                         <formatValue>SUMMARYCHART</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>0</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>DEFAULTDISPLAY</formatKey>
                         <formatValue>SUMMARYCHART</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>61035</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>DEFAULTDISPLAY</formatKey>
                         <formatValue>CHART</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>61067</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>DEFAULTDISPLAY</formatKey>
                         <formatValue>SUMMARYCHART</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>61097</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>DEFAULTDISPLAY</formatKey>
                         <formatValue>REPORT</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>0</componentId>
                         <entityId>61250</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>HELPON</formatKey>
                         <formatValue>true</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>0</componentId>
                         <entityId>61250</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>SUBTABS</formatKey>
                         <formatValue>OFF</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>0</componentId>
                         <entityId>61250</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>UNITSELECTION</formatKey>
                         <formatValue>OFF</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <groupTypeCode>SUBTAB</groupTypeCode>
                      <languageCode>EN</languageCode>
                      <owner>0</owner>
                      <parentGroupId>0</parentGroupId>
                      <shortDescription>New Tab</shortDescription>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <statusCode>OPEN</statusCode>
                      <styleCode>TWO</styleCode>
                      <tabId>61251</tabId>
                   </subtabs>
                   <tabId>61250</tabId>
                </dashboard>
                <dashboardEnabled>false</dashboardEnabled>
                <errorCode>0</errorCode>
                <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
                <messages>Attempting to Load Dashboard Tab: 61251</messages>
                <messages>Web Service Request Complete</messages>
                <private>false</private>
                <sessionId>af433c1d0f0cffa9d3a7e1ef8c72abf6</sessionId>
                <statusCode>SUCCESS</statusCode>
             </return>
          </ns2:remoteReportCallResponse>
       </S:Body>
    </S:Envelope><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
          <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
             <return>
                <canDrill>false</canDrill>
                <dashboard>
                   <accessCode>UNSECURE</accessCode>
                   <categoryCode>TUTORIAL</categoryCode>
                   <elements>
                      <columnNumber>1</columnNumber>
                      <entityId>60947</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>448</portletHeight>
                      <portletStatus>RESTORED</portletStatus>
                      <rowNumber>3</rowNumber>
                      <sequenceNumber>1</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <elements>
                      <columnNumber>1</columnNumber>
                      <entityId>61001</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>363</portletHeight>
                      <portletStatus>RESTORED</portletStatus>
                      <rowNumber>1</rowNumber>
                      <sequenceNumber>1</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <elements>
                      <columnNumber>1</columnNumber>
                      <entityId>61097</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>374</portletHeight>
                      <portletStatus>RESTORED</portletStatus>
                      <rowNumber>2</rowNumber>
                      <sequenceNumber>1</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <elements>
                      <columnNumber>1</columnNumber>
                      <entityId>61046</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>331</portletHeight>
                      <portletStatus>RESTORED</portletStatus>
                      <rowNumber>3</rowNumber>
                      <sequenceNumber>2</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <elements>
                      <columnNumber>1</columnNumber>
                      <entityId>61067</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>225</portletHeight>
                      <portletStatus>RESTORED</portletStatus>
                      <rowNumber>3</rowNumber>
                      <sequenceNumber>3</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <elements>
                      <columnNumber>2</columnNumber>
                      <entityId>61035</entityId>
                      <entityTypeCode>REPORT</entityTypeCode>
                      <portletHeight>373</portletHeight>
                      <portletStatus>RESTORED</portletStatus>
                      <rowNumber>2</rowNumber>
                      <sequenceNumber>1</sequenceNumber>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <tabId>61251</tabId>
                   </elements>
                   <endDate>9999-12-31T00:00:00+11:00</endDate>
                   <filters>
                      <componentId>0</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>SUMMARYCHART</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                      <entityId>0</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>DEFAULTDISPLAY</formatKey>
                      <formatValue>SUMMARYCHART</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <componentTypeCode>REPORT</componentTypeCode>
                <author>System Administrator</author>      <entityId>0</entityId>
                <authoringMode>JAVA</authoringMode>
          <entityTypeCode>REPORTGROUP</entityTypeCode>
           <averageRunTime>0</averageRunTime>
                <canDrill>false<<formatKey>DEFAULTDISPLAY</canDrill>formatKey>
               <category>Tutorial</category>
           <formatValue>SUMMARYCHART</formatValue>
          <dashboardEnabled>true</dashboardEnabled>
                <dataOutput>COLUMN<<groupId>61250</dataOutput>groupId>
                 <datasource>Ski  Team<</datasource>filters>
                 <errorCode>0</errorCode>  <filters>
                <formatCode>REPORTANDCHART</formatCode>
          <componentId>61035</componentId>
          <hitCount>2</hitCount>
                <lastModifiedDate>2018-06-18</lastModifiedDate><componentTypeCode>REPORT</componentTypeCode>
                <lastRunDuration>0</lastRunDuration>
          <entityId>0</entityId>
          <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
             <entityTypeCode>REPORTGROUP</entityTypeCode>
       <messages>Loaded Report: 70080 Successfully</messages>
                <messages>Retrieving Options<<formatKey>DEFAULTDISPLAY</messages>formatKey>
                  <messages>Request Contains No ReportFilter Records.<<formatValue>CHART</messages>formatValue>
                <messages>Region (FilterId: 70082 ) Requires User Prompt<<groupId>61250</messages>groupId>
                <messages>Ignoring Prompt Filter On Field: 70082</messages>
        </filters>
             <messages>DEMOGRAPHIC (FilterId: 70081 ) Requires User Prompt</messages><filters>
                 <messages>Web   Service Request Complete<<componentId>61067</messages>componentId>
                <preRunFilterString><![CDATA[<div class="rptFilterLogicText">
    <span class="rptFilterLogicIdentifier">Athlete Region</span>
    In List
    <span class="rptFilterLogicIdentifier">[User Prompt]</span>
    </div>
    <div class="rptFilterLogicText">
    AND
    <span class="rptFilterLogicIdentifier">Demographic</span>
    In List
    <span class="rptFilterLogicIdentifier">(Adventure, Relaxation, Family, Culture)</span>
    </div>]]></preRunFilterString>
     <componentTypeCode>REPORT</componentTypeCode>
                      <private>false<<entityId>0</private>entityId>
                 <reportDescription>Ski    Team, 18/6/2018 2:49 PM</reportDescription>
    <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <reportId>70066<<formatKey>DEFAULTDISPLAY</reportId>formatKey>
                <reportName>qwerty</reportName>
          <formatValue>SUMMARYCHART</formatValue>
          <reportTemplate>REPORTANDCHART</reportTemplate>
                <reportUUID>c105ab26-9744-434d-9c8c-9fb9e48d80c0</reportUUID><groupId>61250</groupId>
                <reportUsage>100</reportUsage>
       </filters>
             <results>
          <filters>
             <dataValue>Asia</dataValue>
             <componentId>61097</componentId>
          <dataValue>Asia</dataValue>
                <<componentTypeCode>REPORT</results>componentTypeCode>
                <sessionId>eb31d9392a25c8c40995237650837cd5</sessionId>
          <entityId>0</entityId>
          <statusCode>SUCCESS</statusCode>
                <subCategory>Training<<entityTypeCode>REPORTGROUP</subCategory>entityTypeCode>
                  <tags>No tags</tags>
       <formatKey>DEFAULTDISPLAY</formatKey>
             <viewName>New View</viewName>
            <<formatValue>REPORT</return>formatValue>
        </ns2:remoteReportCallResponse>
       </S:Body>
    </S:Envelope>

     

    手順

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

    Expand
    title詳細手順
    インターネットブラウザから、「http://<host>:<port>/ws_filteroptions.jsp」を実行します。
    ReportServiceRequest
     
    rsr
     
    =
     
    new
     
    ReportServiceRequest();
     
    rsr.setLoginId("admin@yellowfin.com.au"); rsr.setPassword("test"); rsr.setOrgId(new
     
    Integer(1));
     
    rsr.setReportRequest("FILTEROPTIONS");
  • フィルターを取得するレポートを指定します。

     

  • Code Block
    themeEclipse
    languagejava
    管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
    Code Block
    themeEclipse
    languagejava
    Code Block
    themeEclipse
    languagejava
    rsr.setReportId(70066);
  • 特定のフィルターを取得する場合は、ObjectNameパラメーターにフィルターIDを提供します。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setObjectName("70081");
  • リクエストを構成したら、呼び出しを実行します。
    Code Block
    languagejava
    ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

    返される応答には、他のレポート固有のパラメーターとともに、StatusCodeパラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_filteroptions.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • <%     <groupId>61250</groupId>
                   </filters>
                   <filters>
                      <componentId>0</componentId>
                      <entityId>61250</entityId>
                      <entityTypeCode>REPORTGROUP</entityTypeCode>
                      
    /*<formatKey>HELPON</formatKey>
                      <formatValue>true</formatValue>
         ws_filteroptions.jsp             <groupId>61250</groupId>
                   *</
    %>
    <%
    filters>
                   <filters>
                      <componentId>0</componentId>
             ReportServiceResponse rs = null;
             <entityId>61250</entityId>
          ReportServiceRequest rsr = new ReportServiceRequest();            <entityTypeCode>REPORTGROUP</entityTypeCode>
        ReportServiceService    ts = new ReportServiceServiceLocator("localhost", 8080, "/services/ReportService", false);
        ReportServiceSoapBindingStub<formatKey>SUBTABS</formatKey>
     rssbs = (ReportServiceSoapBindingStub) ts.getReportService();
      
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(1);<formatValue>OFF</formatValue>
        rsr.setReportRequest("FILTEROPTIONS");
          
        rsr.setReportId(70066);
        rsr.setObjectName("70081");<groupId>61250</groupId>
                   </filters>
      
           
        rs = rssbs.remoteReportCall(rsr);
     <filters>
       
        if ("SUCCESS".equals(rs.getStatusCode())) {
            out.write("Success </br>"); <componentId>0</componentId>
                        <entityId>61250</entityId>
                    ReportRow[] rows = rs.getResults(); <entityTypeCode>REPORTGROUP</entityTypeCode>
                      <formatKey>UNITSELECTION</formatKey>
                      for (ReportRow r: rows) {
    <formatValue>OFF</formatValue>
                      <groupId>61250</groupId>
                   </filters>
                   <groupTypeCode>ANALYTIC</groupTypeCode>
            //display filter values:     <languageCode>EN</languageCode>
                   <longDescription/>
                   <owner>1</owner>
        
               <ownerTypeCode>ORGANISATION</ownerTypeCode>
                   <parentGroupId>0</parentGroupId>
                   <shortDescription>Sales Performance</shortDescription>
                   <startDate>2017-06-26T00:00:00+10:00</startDate>
                   out.write("<br>" + r.getDataValue()[0]);
    <statusCode>OPEN</statusCode>
                   <subCategoryCode>ATHLETES</subCategoryCode>
                   <subtabs>
                      <elements>
           }
        } else {
            out.write(rs.getStatusCode());<columnNumber>1</columnNumber>
            out.write(rs.toString());
        }
    %>

     

     

     

    レポート結果セット関数

    これらのwebサービスは、レポートにより生成される結果に固有のものです。

    Expand
    titleRESULTSET

    こちらのwebサービスは、指定したレポートの結果データと、レポートのメタデータを取得します。レポートの結果は、書式設定されていないそのままの形式になります。この結果は、ReportRowオブジェクトの配列に保存され、このオブジェクトは、各結果ロウ(行)を表します。そのため、各ロウ(行)に対して、結果データの各カラム(列)のデータを含む文字列の配列が存在します。

    注意:このデータを、文字列表現から各特定のカラム(列)のデータ型に変換するのは、webサービスクライアント次第です。各カラム(列)のデータ型は、SCHEMA関数で取得することができます。

    例えば、以下は2つのカラム(列)を含み、各ユーザーロールに割り当てられたユーザー数を特定するロール集計レポートを示しています。

    ユーザーロール人数
    System Administrator1
    Consumer & Collaborator5
    Report Content Writer4

    こちらのwebサービスは、各ユーザーロールのReportRowオブジェクトを返します。各オブジェクトは、2つのデータ文字列を含みます。ひとつはロール名であり、もうひとつはユーザー数を表示します。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「RESULTSET」に設定します。
    OrgRefStringクライアント組織内部参照IDです。(オプション設定)
    ReportIdInteger結果データを参照するレポートのIDです。

     

    リクエストの例

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

    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:remoteReportCall>             <entityId>60947</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>448</portletHeight>
                         <portletStatus>RESTORED</portletStatus>
                         <rowNumber>3</rowNumber>
             <arg0>
                <loginId>admin@yellowfin.com.au</loginId><sequenceNumber>1</sequenceNumber>
                <password>test</password>
             <startDate>2017-06-26T00:00:00+10:00</startDate>
       <orgId>1</orgId>
                <reportRequest>RESULTSET</reportRequest>
          <tabId>61251</tabId>
          <reportId>58511</reportId>
                </arg0>elements>
          </web:remoteReportCall>
       </soapenv:Body>
    </soapenv:Envelope>

     

    応答要素

    応答には、これらの主要なパラメーターが含まれます。(より詳細な応答パラメーターの一覧は、ReportServiceResponseオブジェクトを参照してください)

    応答要素データ型説明

    StatusCode

    String

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

    • SUCCESS
    • FAILURE
    ResultsReportRow[]レポートのデータセットの結果を含むオブジェクトの配列です。

     

    応答の例

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

    Code Block
    themeEclipse
    languagexml
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
          <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/"> <elements>
             <return>
                <author>System Administrator<<columnNumber>1</author>
    columnNumber>
                        <authoringMode>JAVA< <entityId>61001</authoringMode>entityId>
                  <averageRunTime>0</averageRunTime>
           <entityTypeCode>REPORT</entityTypeCode>
                      <canDrill>false</canDrill>
       <portletHeight>363</portletHeight>
                    <category>Audit Reports</category>     <portletStatus>RESTORED</portletStatus>
                <dashboardEnabled>true</dashboardEnabled>
             <rowNumber>1</rowNumber>
                    <dataOutput>COLUMN</dataOutput>     <sequenceNumber>1</sequenceNumber>
                <datasource>Yellowfin Configuration Database</datasource>         <startDate>2017-06-26T00:00:00+10:00</startDate>
                <errorCode>0</errorCode>
                <formatCode>REPORTANDCHART</formatCode><tabId>61251</tabId>
                <hitCount>4</hitCount>
          </elements>
          <lastModifiedDate>2016-04-13</lastModifiedDate>
                <lastRunDuration>0</lastRunDuration><elements>
                <lastRunStatus>RUN_NOERROR</lastRunStatus>
             <columnNumber>1</columnNumber>
       <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
                <messages>Loaded Report: 58511 Successfully<<entityId>61097</messages>entityId>
                <messages>Returning RAW Resultset</messages>
           <entityTypeCode>REPORT</entityTypeCode>
         <messages>Request Contains No ReportFilter Records.</messages>
                <messages>Report Run Successfully<<portletHeight>374</messages>portletHeight>
                <messages>Web Service Request Complete</messages>
           <portletStatus>RESTORED</portletStatus>
         <private>false</private>
                <reportDescription/>
        <rowNumber>2</rowNumber>
            <reportId>58511</reportId>
                <reportName>Role Population<<sequenceNumber>1</reportName>sequenceNumber>
                <reportTemplate>REPORTANDCHART</reportTemplate>
                <reportUUID>00c65743-15f8-4f93-ace1-e3d4d2b956eb</reportUUID>
     <startDate>2017-06-26T00:00:00+10:00</startDate>
               <reportUsage>7</reportUsage>
              <tabId>61251</tabId>
      <results>
                   <dataValue>System Administrator<</dataValue>elements>
                   <dataValue>1</dataValue>
       <elements>
             </results>
                <results><columnNumber>1</columnNumber>
                   <dataValue>Consumer &amp; Collaborator</dataValue>
        <entityId>61046</entityId>
               <dataValue>5</dataValue>
                <<entityTypeCode>REPORT</results>entityTypeCode>
                <sessionId>c958af74f677c4b1f575bd728d3b25d0</sessionId>
                <statusCode>SUCCESS</statusCode><portletHeight>331</portletHeight>
                <subCategory>User Access</subCategory>
                <tags>No tags</tags><portletStatus>RESTORED</portletStatus>
                <viewName>NEW VIEW</viewName>
             <<rowNumber>3</return>rowNumber>
          </ns2:remoteReportCallResponse>
       </S:Body>
    </S:Envelope>

     

    手順

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

    Expand
    title詳細手順
    インターネットブラウザから、「http://<host>:<port>/ws_resultset.jsp」を実行します。
    ReportServiceRequest
     
    rsr
     
    =
     
    new
     
    ReportServiceRequest();
     
    rsr.setLoginId("admin@yellowfin.com.au"); rsr.setPassword("test"); rsr.setOrgId(new
     
    Integer(1));
     
    rsr.setReportRequest("RESULTSET");
  • 結果セットを取得するレポートを指定します。

     

  • Code Block
    themeEclipse
    languagejava
    管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
    Code Block
    themeEclipse
    languagejava
    Code Block
    themeEclipse
    languagejava
    rsr.setReportId(60712);
  • レポートクライアント参照IDを指定することもできます。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setReportClientReferenceId("1");
  • リクエストを構成したら、呼び出しを実行します。
    Code Block
    languagejava
    ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

    返される応答には、他のレポート固有のパラメーターとともに、StatusCodeと結果パラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_resultset.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • <%       <sequenceNumber>2</sequenceNumber>
                         <startDate>2017-06-26T00:00:00+10:00</startDate>
               
    /*          <tabId>61251</tabId>
        ws_resultset.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="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
         
    ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("RESULTSET");
        rsr.setReportId(60712);
        rsr.setReportClientReferenceId("1");
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
        if ("SUCCESS".equals(rs.getStatusCode())) {
    elements>
                      <elements>
                         <columnNumber>1</columnNumber>
                         <entityId>61067</entityId>
                         <entityTypeCode>REPORT</entityTypeCode>
                         <portletHeight>225</portletHeight>
                
             <portletStatus>RESTORED</portletStatus>
     JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class);
                Marshaller m = context.createMarshaller();
      <rowNumber>3</rowNumber>
              m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); // To format XML
          <sequenceNumber>3</sequenceNumber>
          JAXBElement<ReportServiceResponse> rootElement = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs);
            <startDate>2017-06-26T00:00:00+10:00</startDate>
        m.marshal(rootElement,out);   
            //out.write("Success");
        } else {<tabId>61251</tabId>
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
     </elements>
          }
     
         
    %>
    Expand
    titleFORMATTEDRESULTSET

    こちらのwebサービスは、RESULTSET関数の呼び出しに類似していますが、結果セットをレポートのフォーマッターを使用して返します。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「FORMATTEDRESULTSET」に設定します。
    OrgRef

    String

    クライアント組織内部参照IDです。(オプション設定)
    ReportIdInteger結果データを参照するレポートのIDです。

     

    リクエストの例

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

    Code Block
    languagexml
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
       <soapenv:Header/> <elements>
       <soapenv:Body>
          <web:remoteReportCall>
             <arg0>
       <columnNumber>2</columnNumber>
             <loginId>admin@yellowfin.com.au</loginId>
                <password>test<<entityId>61035</password>entityId>
                <orgId>1</orgId>
             <entityTypeCode>REPORT</entityTypeCode>
             <reportRequest>FORMATTEDRESULTSET</reportRequest>
                <reportId>58511<<portletHeight>373</reportId>portletHeight>
                </arg0>
          </web:remoteReportCall>
       </soapenv:Body>
    </soapenv:Envelope>

     

    応答要素

    応答には、これらの主要なパラメーターが含まれます。(より詳細な応答パラメーターの一覧は、ReportServiceResponseオブジェクトを参照してください)

    応答要素データ型説明

    StatusCode

    String

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

    • SUCCESS
    • FAILURE
    ResultsReportRow[]レポートのデータセットの結果を含むオブジェクトの配列です。

    応答の例

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

    Code Block
    themeEclipse
    languagexml
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
       <S:Body>
       <portletStatus>RESTORED</portletStatus>
                        <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
      <rowNumber>2</rowNumber>
            <return>
                <author>System Administrator<<sequenceNumber>1</author>sequenceNumber>
                  <authoringMode>JAVA</authoringMode>
           <startDate>2017-06-26T00:00:00+10:00</startDate>
                     <averageRunTime>0</averageRunTime>    <tabId>61251</tabId>
                <canDrill>false</canDrill>
          </elements>
                     <category>Audit Reports</category>
     <endDate>9999-12-31T00:00:00+11:00</endDate>
                 <dashboardEnabled>true</dashboardEnabled>
         <filters>
           <dataOutput>COLUMN</dataOutput>
                <datasource>Yellowfin Configuration Database<<componentId>0</datasource>componentId>
                <errorCode>0</errorCode>
                <formatCode>REPORTANDCHART<<componentTypeCode>REPORT</formatCode>componentTypeCode>
                <hitCount>5</hitCount>
             <entityId>0</entityId>
       <lastModifiedDate>2016-04-13</lastModifiedDate>
                <lastRunDuration>0</lastRunDuration>
          <entityTypeCode>REPORTGROUP</entityTypeCode>
          <lastRunStatus>RUN_NOERROR</lastRunStatus>
                <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> <formatKey>DEFAULTDISPLAY</formatKey>
                <messages>Loaded  Report: 58511 Successfully</messages>
         <formatValue>SUMMARYCHART</formatValue>
           <messages>Returning RAW Resultset</messages>
                <messages>Request<groupId>61250</groupId>
     Contains No ReportFilter Records.</messages>
                <messages>Report Run Successfully<</messages>filters>
                <messages>Web Service Request Complete</messages>
       <filters>
             <private>false</private>
                <reportDescription<componentId>0</>componentId>
                 <reportId>58511</reportId>
            <componentTypeCode>REPORT</componentTypeCode>
         <reportName>Role Population</reportName>
                <reportTemplate>REPORTANDCHART</reportTemplate>
       <entityId>0</entityId>
             <reportUUID>00c65743-15f8-4f93-ace1-e3d4d2b956eb</reportUUID>
                <reportUsage>9<<entityTypeCode>REPORTGROUP</reportUsage>entityTypeCode>
                <results>
             <formatKey>DEFAULTDISPLAY</formatKey>
          <dataValue>System Administrator</dataValue>
                   <dataValue>1<<formatValue>SUMMARYCHART</dataValue>
    formatValue>
                        < <groupId>61250</results>groupId>
                <results>
          </filters>
             <dataValue>Consumer  &amp; Collaborator</dataValue>
          <filters>
             <dataValue>5</dataValue>
                <<componentId>0</results>componentId>
                <sessionId>1e4f0c8ee07d24a5500f952a459b1652</sessionId>
             <componentTypeCode>REPORT</componentTypeCode>
            <statusCode>SUCCESS</statusCode>
                <subCategory>User Access<<entityId>0</subCategory>entityId>
                <tags>No tags</tags>
            <entityTypeCode>REPORTGROUP</entityTypeCode>
        <viewName>NEW  VIEW</viewName>
             </return>
          <<formatKey>DEFAULTDISPLAY</ns2:remoteReportCallResponse>formatKey>
         </S:Body>
    </S:Envelope>

     

    手順

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

    Expand
    title詳細手順
    管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
     
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(new Integer(1));
     
    rsr.setReportRequest("FORMATTEDRESULTSET");
  • 書式設定された結果セットを取得するレポートを指定します。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setReportId(60712);
  • レポートクライアント参照IDを指定することができます。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setReportClientReferenceId("1");
  • リクエストを構成したら、呼び出しを実行します。
    Code Block
    languagejava
    ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

    返される応答には、他のレポート固有のパラメーターとともに、StatusCodeと結果パラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_resultset.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • インターネットブラウザから、「http://<host>:<port>/ws_resultset.jsp」を実行します。
    Code Block
    themeEclipse
    languagejava
    <%                <formatValue>SUMMARYCHART</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>61035</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
    /*                     <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
       ws_resultset.jsp                  *<formatKey>DEFAULTDISPLAY</
    %>
    <%@ 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="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
         
    ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("FORMATTEDRESULTSET");
        rsr.setOrgRef("1");
        rsr.setReportId(60712);
        rsr.setReportClientReferenceId("1");
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
        if ("SUCCESS".equals(rs.getStatusCode())) {
    formatKey>
                         <formatValue>CHART</formatValue>
                         <groupId>61250</groupId>
                      </filters>
                      <filters>
                         <componentId>61067</componentId>
                         <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
              JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class);
            <formatKey>DEFAULTDISPLAY</formatKey>
        Marshaller m = context.createMarshaller();
                m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); <formatValue>SUMMARYCHART<//formatValue>
       To format XML
                JAXBElement<ReportServiceResponse> rootElement = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs);
     <groupId>61250</groupId>
                   m.marshal(rootElement,out);   </filters>
            //out.write("Success");
        } else {
        <filters>
        out.write("Failure");
             out.write(" Code: " + rs.getErrorCode());
        }<componentId>61097</componentId>
         
    %>

     

     

     

    その他

    Expand
    titleSENDTOEMAIL

    こちらの関数は、受信者の電子メールアドレスにレポートを送信します。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「SENDTOEMAIL」に設定します。
    OrgRefStringクライアント組織の内部参照IDを指定するためのオプションパラメーターです。
    ReportIdInteger電子メール送信されるレポートの内部IDです。
    ReportsOptionString[]レポート送信先となる電子メールアドレスの一覧です。
    AlterationCommand  
    SessionIdInteger(オプション設定)IDを使用して以前のセッションを指定します。
    LanguageCode (オプション設定)言語を指定します。

     

    リクエストの例

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

    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:remoteReportCall>                 <componentTypeCode>REPORT</componentTypeCode>
                         <entityId>0</entityId>
                         <entityTypeCode>REPORTGROUP</entityTypeCode>
                         <formatKey>DEFAULTDISPLAY</formatKey>
             <arg0>
                <loginId>admin@yellowfin.com.au</loginId>
    <formatValue>REPORT</formatValue>
                   <password>test</password>
          <groupId>61250</groupId>
          <orgId>1</orgId>
                <reportRequest>SENDTOEMAIL<</reportRequest>filters>
                  <reportId>70012</reportId>
        <filters>
             <alterationCommand>drill-down|70012</alterationCommand>
                <reportOptions><componentId>0</componentId>
                    <string>binish.sheikh@yellowfin.com.au</string>
         <entityId>61250</entityId>
             </reportOptions>
                <<entityTypeCode>REPORTGROUP</arg0>entityTypeCode>
          </web:remoteReportCall>
        </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:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/"> <formatKey>HELPON</formatKey>
             <return>
                <author>System Administrator<<formatValue>true</author>formatValue>
                <authoringMode>JAVA</authoringMode>
             <groupId>61250</groupId>
          <averageRunTime>0</averageRunTime>
                <canDrill>false<</canDrill>filters>
                <category>Tutorial</category>
          <filters>
             <dashboardEnabled>true</dashboardEnabled>
                <dataOutput>COLUMN<<componentId>0</dataOutput>componentId>
                <datasource>Ski Team</datasource>
             <entityId>61250</entityId>
          <errorCode>0</errorCode>
                <formatCode>CHART</formatCode>
       <entityTypeCode>REPORTGROUP</entityTypeCode>
             <hitCount>3</hitCount>
                <lastModifiedDate>2018-03-07</lastModifiedDate><formatKey>SUBTABS</formatKey>
                <lastRunDuration>0</lastRunDuration>
             <formatValue>OFF</formatValue>
       <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
                <messages>Loaded Report: 70012 Successfully<<groupId>61250</messages>groupId>
                   <messages>Web Service Request Complete<</messages>filters>
                   <preRunFilterString><![CDATA[<div class="rptFilterLogicText">
    <span class="rptFilterLogicIdentifier">Invoiced Date</span>
    Between
    <span class="rptFilterLogicIdentifier">Current Date - 6 Years And Current Date</span>
    </div>
    .
    .
    .
    ]]></preRunFilterString>
     <filters>
                         <private>false<<componentId>0</private>componentId>
                <reportDescription>This  report provides a high level summary of campaigns<<entityId>61250</reportDescription>entityId>
                <reportId>70012</reportId>
                <reportName>Campaign Summary</reportName>
      <entityTypeCode>REPORTGROUP</entityTypeCode>
              <reportTemplate>CHART</reportTemplate>
                <reportUUID>3e842fae-02f7-4ad3-a632-ca267e0078da</reportUUID><formatKey>UNITSELECTION</formatKey>
                <reportUsage>100</reportUsage>
                <sessionId>fa0cc79a9ea229bd5df85b4a7f50c878</sessionId><formatValue>OFF</formatValue>
                <statusCode>SUCCESS</statusCode>
             <groupId>61250</groupId>
       <subCategory>Marketing &amp; Booking</subCategory>
                <tags>No tags<</tags>filters>
                 <viewName>New View</viewName>     <groupTypeCode>SUBTAB</groupTypeCode>
             </return>
          </ns2:remoteReportCallResponse>
       <<languageCode>EN</S:Body>
    </S:Envelope>

     

    手順

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

    Expand
    title詳細手順
    インターネットブラウザから、「http://<host>:<port>/ws_sendtoemail.jsp」を実行します。
    rsr.setOrgRef("org1");
    languageCode>
                      
    // search for the report in this client org
  • 電子メール送信するレポートと、その変更コマンドを指定します。

     

  • Code Block
    themeEclipse
    languagejava
    管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
      
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(new Integer(1));
     
    rsr.setReportRequest("SENDTOEMAIL");

    レポートの保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

     

    Code Block
    themeEclipse
    languagejava
    Code Block
    themeEclipse
    languagejava
    rsr.setReportId(60712);
    rsr.setAlterationCommand("drill-down|60712");
  • レポートの送信先となる電子メールアドレスを提供します。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setReportOptions(new String[]{ "dummy@dummy.com"});
  • リクエストを構成したら、呼び出しを実行します。
    Code Block
    languagejava
    ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

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

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

  • コードをコピーして、「ws_sendtoemail.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • /*<owner>0</owner>
                      <parentGroupId>0</parentGroupId>
                      <shortDescription>New Tab</shortDescription>
                      <startDate>2017-06-26T00:00:00+10:00</startDate>
                      <statusCode>OPEN</statusCode>
                      <styleCode>TWO</styleCode>
                      <tabId>61251</tabId>
                   </subtabs>
      ws_sendtoemail.jsp             *<tabId>61250</tabId>
                </dashboard>
                <dashboardEnabled>false</dashboardEnabled>
                <errorCode>0</errorCode>
                <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
                <messages>Attempting to Load Dashboard Tab: 61251</messages>
                <messages>Web Service Request Complete</messages>
                <private>false</private>
                <sessionId>af433c1d0f0cffa9d3a7e1ef8c72abf6</sessionId>
                <statusCode>SUCCESS</statusCode>
             </return>
          </ns2:remoteReportCallResponse>
       </S:Body>
    </S:Envelope>

     

    手順

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

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

      Code Block
      themeEclipse
      languagejava
      ReportServiceRequest rsr = new ReportServiceRequest();
        
      rsr.setLoginId("admin@yellowfin.com.au");
      rsr.setPassword("test");
      rsr.setOrgId(new Integer(1));
       
      rsr.setReportRequest("LOADPARENTDASHBOARDTAB");
    • レポートが保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

       

      Code Block
      themeEclipse
      languagejava
      rsr.setOrgRef("org1");      // search for the report in this client org
    • 詳細を取得するダッシュボードタブを指定します。

       

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

      Code Block
      languagejava
      ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

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

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

    1. コードをコピーして、「ws_loadparentdashboardtab.jsp」として保存します。
    2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
    3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
    4. インターネットブラウザから、「http://<host>:<port>/ws_loadparentdashboardtab.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.*" %>
    <%@ page import="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
         
     
        ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("SENDTOEMAIL");
        rsr.setOrgRef("1");
        rsr.setReportId(60712);
        rsr.setAlterationCommand("drill-down|60712");
        rsr.setReportOptions(new String[]{ "dummy@dummy.com"});
        rsr.setReportClientReferenceId("1");
        rsr.setDashboardTabId(70080);
         
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
        if ("SUCCESS".equals(rs.getStatusCode())) {
             
              
              JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class);
                Marshaller m = context.createMarshaller();
                m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); // To format XML
             ws_loadparentdashboardtab.jsp .  JAXBElement<ReportServiceResponse> rootElement*/
     = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs);
                m.marshal(rootElement,out);   
                
            //out.write("Success");
        } else {
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
        }
    %>
    Expand
    titleCOMMAND

    webサービスレポートのレポートからのインタラクションを処理します。こちらの関数は、レポートページの変更、ドリルスルー、ドリルダウン、ドリルエニウェアの実行、シリーズ選択の変更など、レポートでのインタラクションに使用します。

    AlterationCommandパラメーターは、レポートに組み込まれたテキストコードであり、レポートを変更するためにwebサービスに戻すことができます。

     

    リクエスト要素

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

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

    LoginId

    String

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

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

    Password

    String

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

    OrgId

    Integer

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

    ReportRequestStringwebサービス関数です。「COMMAND」に設定します。
    OrgRefStringクライアント組織の内部参照IDです。(オプション設定)
    ReportIdInteger処理をするレポートのIDです。
    AlterationCommandStringレポートに適用するコマンドです。これは、レポートの変更方法を指定します。このパラメーターは、レポートに組み込まれたテキストコードです。レポート詳細取得時に、この値をwebサービスに渡すことでレポートを変更することができます。 
    CommandHistoryString(オプション設定)パイプされたコマンドの一覧です。(レポートがセッションから消去されている場合、コマンドを順番に適用します)
    SessionIDString(オプション設定)以前のセッションのIDです。
    LanguageCodeString(オプション設定)言語を指定します。

     

    応答要素

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

    応答要素データ型説明

    StatusCode

    String

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

    • SUCCESS
    • FAILURE

     

    手順

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

    
    <%@ 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="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
    <%
         
     
        ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
     
       rsr.setLoginId("admin@yellowfin
    .com.au"); rsr.setPassword("test"); rsr.setOrgId(new Integer(1)); rsr.setReportRequest("COMMAND");
  • レポートの保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。

     

  • Expand
    title詳細手順
    管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
    Code Block
    themeEclipse
    languagejava
    Code Block
    themeEclipse
    languagejava
    rsr.setReportClientReferenceId("1");
  • レポートに適用するコマンドを追加します。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setAlterationCommand("DRILLDOWN|60712|53655|RXVyb3Bl");
  • 必要に応じて、以前のリクエストからセッションIDを渡します。

     

    Code Block
    themeEclipse
    languagejava
    rsr.setSessionId("ce509806176f6a0563767bfb0b2bb36f");
  • リクエストを構成したら、呼び出しを実行します。
    Code Block
    languagejava
    ReportServiceResponse rs=rsc.remoteReportCall(rsr);

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

     

    返される応答には、他の固有なパラメーターとともに、StatusCodeパラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。

     

    完成例

    以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。

    .com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("LOADPARENTDASHBOARDTAB");
        rsr.setOrgRef("1");
        rsr.setReportId(60712);
        rsr.setAlterationCommand("drill-down|60712");
        rsr.setReportClientReferenceId("1");
        rsr.setDashboardTabId(70080);
         
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
        if ("SUCCESS".equals(rs.getStatusCode())) {
              JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class);
                Marshaller m = context.createMarshaller();
                m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); // To format XML
                JAXBElement<ReportServiceResponse> rootElement = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs);
                m.marshal(rootElement,out);
            //out.write("Success");
        } else {
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
        }
    %>
    Expand
    titleAPPLYDASHBOARDFILTERS

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    DashboardFilter[] dfarray = null;
    DashboardFilter df = new DashboardFilter();
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    
  • コードをコピーして、「ws_command_report.jsp」として保存します。
  • root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  • 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  • インターネットブラウザから、「http://<host>:<port>/ws_command_report.jsp」を実行します。
    Code Block
    themeEclipse
    languagejava
    <%@page import="com.thoughtworks.xstream.io.xml.StaxDriver"%>
    <%@ 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="javax.xml.bind.JAXBContext" %>
    <%@ page import="javax.xml.bind.Marshaller" %>
    <%@ page import="java.io.StringWriter" %>
    <%@ page import="javax.xml.bind.JAXBElement" %>
    <%@ page import="javax.xml.namespace.QName" %>
     
     
    <%
     
    ReportService rsc = new ReportService();   //("localhost", 8080, "admin@yellowfin.com.au", "test", "/services/ReportService");
        ReportServiceRequest rsr = new ReportServiceRequest();
        rsr.setLoginId("admin@yellowfin.com.au");
        rsr.setPassword("test");
        rsr.setOrgId(new Integer(1));
        rsr.setReportRequest("COMMANDAPPLYDASHBOARDFILTERS");
    // This is the ID of the dashboard tab
    rsr.setDashboardTabId(11111);
     
    df.setTabId(11111);
    df.setReportId(6071212121);
     
     
        rsr.setAlterationCommand("DRILLDOWN|60712|53655|RXVyb3Bldf.setFilterId(33333);
    df.setFilterType("BETWEEN");
    df.setFilterValue("120|150");
    dfarray[0] 
        = df;
    rsr.setReportClientReferenceIdsetDashboardFilters("1"dfarray);
     
    rs =  rsrReportService.setSessionIdremoteReportCall("ce509806176f6a0563767bfb0b2bb36f");
        ReportServiceResponse rs=rsc.remoteReportCall(rsr);
         
        if ("SUCCESS".equals(rs.getStatusCode())) {
             
            %> <xmp> <%
              JAXBContext context = JAXBContext.newInstance(ReportServiceResponse.class);
                Marshaller m = context.createMarshaller();
                m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); // To format XML
                JAXBElement<ReportServiceResponse> rootElement = new JAXBElement<ReportServiceResponse>(new QName("ReportServiceResponse"), ReportServiceResponse.class, rs);
                m.marshal(rootElement,out);   
                %></xmp><%
            //out.write("Success");
        } else {
            out.write("Failure");
            out.write(" Code: " + rs.getErrorCode());
        }
    %>rsr);
    Expand
    titleGETDASHBOARDREPORTFILTERVALUES

    GETDASHBOARDREPORTFILTERVALUESリクエストは、ダッシュボードタブ上の特定のレポートのフィルターメタデータを返します。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
    ReportFilter[] rf = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("GETDASHBOARDREPORTFILTERVALUES");
    // This is the ID of the dashboard tab
    rsr.setDashboardTabId(11111);
    rsr.setReportId(22222);
     
    rs = ReportService.remoteReportCall(rsr);
    rf = rs.getReportFilters();

     

    返されるReportServiceResponseオブジェクトの構成は、以下の通りです。

    応答要素

    データ型説明取得コード

    ReportFilters

    Array (ReportFilter)

    各フィルターのメタデータを含むFilterオブジェクトの配列です(ReportFilterを参照してください)。

    getReportFilters()

    Expand
    titleRUNDASHBOARDREPORT

    RUNDASHBOARDREPORTリクエストは、ダッシュボードタブ上の指定したレポートを実行し、エクスポートします。応答はグラフ、GISマップ、CSSスタイルを含む、Base64でエンコードされたHTMLが含まれます。

    これを実行するコードは、以下の通りです。

    Code Block
    themeEclipse
    languagejava
    ReportServiceRequest rsr = new ReportServiceRequest();
    ReportServiceResponse rs = null;
     
    rsr.setLoginId(this.username);
    rsr.setPassword(this.password);
    // This is the primary organization
    rsr.setOrgId(new Integer(1));
    rsr.setReportRequest("RUNDASHBOARDREPORT");
    // This is the ID of the dashboard tab
    rsr.setDashboardTabId(11111);
    rsr.setReportId(22222);
     
    rs = ReportService.remoteReportCall(rsr);

     

    返されるReportServiceResponseオブジェクトの構成は、以下の通りです。

    応答要素

    データ型説明取得コード

    BinaryData

    String

    Base64でエンコードされたHTMLのバイナリーチャンクです。

    getBinaryData()

    Charts

    Array (ReportChart)

    ReportChartオブジェクトの配列です(ReportChartを参照してください)。

    getCharts()

    ReportStyle

    String

    CSSスタイルです。

    GetReportStyle()

    Breadcrumbs

    Array(Breadcrumb)

    Breadcrumbオブジェクトの配列です。

    getBreadcrumbs()

    GoogleMaps

    Array(GMap)

    レポートのグラフが使用している場合のGoogleMapsオブジェクトの配列です。

    getGoogleMaps()

    GisMap

    Array(GISMap)

    レポートのグラフが使用している場合のGISMapオブジェクトの配列です。

    getGisMap()

     

    horizontalrule
    Styleclass
    ClasstopLink

    ページトップ

     

    ...