Yellowfinのレポートwebサービスは、Yellowfinのレポートには必須ではないが、いまだ有効ないくつかのレガシー関数から構成されています。以下は、これらの概要です。これらのサービスについてより詳細な情報はご希望の場合は、Yellowfinのサポートチームにお問い合わせください。
EXPIRESESSIONリクエストは、指定したYellowfinのセッションを期限切れにします。
これを実行するコードは、以下の通りです。
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);
こちらの関数は、特定のレポートにコメントがあれば、それをすべて取得します。
リクエスト要素
以下の要素は、こちらのリクエストとともに渡されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 |
Password | String | 上記アカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 |
ReportRequest | String | webサービス関数です。「GETCOMMENTS」に設定します。 |
OrgRef | String | クライアント組織の内部参照IDです(オプション設定)。クライアント組織からレポートを検索する場合は、こちらを使用します。こちらを設定しない場合、デフォルト(プライマリー)組織内のレポートが検索されます。 |
ReportId | Integer | コメントを取得するレポートのIDを提供することができます。 |
リクエストの例
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを示しています。
<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>GETCOMMENTS</reportRequest> <reportId>70012</reportId> </arg0> </web:remoteReportCall> </soapenv:Body> </soapenv:Envelope>
応答要素
応答には、これらの主要なパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
Comments | ReportComment[] | 指定したレポートのコメントを含むオブジェクトです。 |
応答の例
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:remoteReportCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/"> <return> <author>System Administrator</author> <authoringMode>JAVA</authoringMode> <averageRunTime>0</averageRunTime> <canDrill>false</canDrill> <category>Tutorial</category> <comments> <author>System Administrator</author> <authorId>5</authorId> <comment><span>Great info.</span></comment> <commentDate>2018-03-18 17:32:54</commentDate> <commentId>2004</commentId> <lastActivityDate>2018-03-18 17:33:13</lastActivityDate> <parentCommentId>0</parentCommentId> <reportId>70012</reportId> <statusCode>OPEN</statusCode> </comments> <comments> <author>System Administrator</author> <authorId>5</authorId> <comment><span>Want to see more structure.</span></comment> <commentDate>2018-03-18 17:33:13</commentDate> <commentId>2005</commentId> <lastActivityDate>2018-03-18 17:33:13</lastActivityDate> <parentCommentId>2004</parentCommentId> <reportId>70012</reportId> <statusCode>OPEN</statusCode> </comments> <dashboardEnabled>true</dashboardEnabled> <dataOutput>COLUMN</dataOutput> <datasource>Ski Team</datasource> <errorCode>0</errorCode> <formatCode>CHART</formatCode> <hitCount>3</hitCount> <lastModifiedDate>2018-03-07</lastModifiedDate> <lastRunDuration>0</lastRunDuration> <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> <messages>Loaded Report: 70012 Successfully</messages> <messages>Web Service Request Complete</messages> <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> <private>false</private> <reportDescription>This report provides a high level summary of campaigns</reportDescription> <reportId>70012</reportId> <reportName>Campaign Summary</reportName> <reportTemplate>CHART</reportTemplate> <reportUUID>3e842fae-02f7-4ad3-a632-ca267e0078da</reportUUID> <reportUsage>100</reportUsage> <sessionId>3ab136a400081d88c09526f8bdf9e2e7</sessionId> <statusCode>SUCCESS</statusCode> <subCategory>Marketing & Booking</subCategory> <tags>No tags</tags> <viewName>New View</viewName> </return> </ns2:remoteReportCallResponse> </S:Body> </S:Envelope>
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
ReportServiceRequest rsr = new ReportServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); rsr.setPassword("test"); rsr.setOrgId(new Integer(1)); rsr.setReportRequest("GETCOMMENTS");
レポートが保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。
rsr.setOrgRef("org1"); // search for the report in this client org
どのレポートのコメントを取得するか指定することができます。
rc.setReportId(60712);
ステータスを変更するコメントを指定します。新しいステータスオプションは以下の通りです。
リクエストに「rc」オブジェクトを渡します。
rsr.setReportComment(rc);
リクエストを構成したら、呼び出しを実行します。
ReportServiceResponse rs=rsc.remoteReportCall(rsr);
レポートwebサービスを初期化します。実行方法の詳細は、こちらを参照してください。
返される応答には、StatusCodeパラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。
完成例
以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_getcomments.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_getcomments.jsp」を実行します。
<% /* ws_getcomments.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" %> <% /* 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); %>
LEAVECOMMENTリクエストは、特定のレポートのコメントに、コメントや応答を追加します。
これを実行するコードは、以下の通りです。
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.setReportRequest("LEAVECOMMENT"); 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);
DELETECOMMENTリクエストは、レポートから特定のコメントを削除します。
これを実行するコードは、以下の通りです。
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.setReportRequest("DELETECOMMENT"); comment.setCommentId(702); rsr.setReportComment(comment); rs = ReportService.remoteReportCall(rsr);
こちらの関数は、レポートのコメントのステータスを設定するために使用します。ステータスのオプションは、次の通りです。:OPEN、EDITED、RESOLVED、DELETED
リクエスト要素
以下の要素は、こちらのリクエストとともに渡されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 |
Password | String | 上記アカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 |
ReportRequest | String | webサービス関数です。「COMMENTSTATUS」に設定します。 |
ReportComment | ReportComment | ステータスを設定するレポートのコメントの詳細を含むオブジェクトです。以下の表を参照してください。 |
OrgRef | String | クライアント組織の内部参照IDです(オプション設定)。クライアント組織内のレポートを検索する場合は、こちらを使用します。こちらが設定されない場合、レポートはデフォルト(プライマリー)組織から検索されます。 |
ReportId | Integer | 特定のレポートを検索するためにレポートIDを提供することができます。 |
こちらの関数のReportCommentオブジェクトに設定しなくてはいけない必須パラメーターがあります。
ReportComment要素 | データ型 | 説明 | 取得コード |
CommentId | Integer | コメントのIDです。 | getCommentId() |
StatusCode | String | 新しいステータスを提供します。ステータスのオプションは、次の通りです。:OPEN、EDITED、RESOLVED、DELETED | getStatusCode() |
リクエストの例
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを示しています。
<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>COMMENTSTATUS</reportRequest> <reportId>60712</reportId> <reportComment> <commentId>12345</commentId> <statusCode>OPEN</statusCode> </reportComment> </arg0> </web:remoteReportCall> </soapenv:Body> </soapenv:Envelope>
応答要素
応答には、これらの主要なパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
応答の例
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
<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> <dashboardEnabled>false</dashboardEnabled> <errorCode>0</errorCode> <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> <messages>Web Service Request Complete</messages> <private>false</private> <sessionId>6dc344c3e5dee88864998f4acc17d676</sessionId> <statusCode>SUCCESS</statusCode> </return> </ns2:remoteReportCallResponse> </S:Body> </S:Envelope>
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
ReportServiceRequest rsr = new ReportServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); rsr.setPassword("test"); rsr.setOrgId(new Integer(1)); rsr.setReportRequest("COMMENTSTATUS");
レポートが保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。
rsr.setOrgRef("org1"); // search for the report in this client org
こちらの関数は、レポートに与える新しいステータスを指定するために、ReportCommentオブジェクトを要求します。
ReportComment rc=new ReportComment();
ステータスを変更するレポートのコメントを指定することもできます。
rc.setReportId(60712);
ステータスを変更するコメントと、新しいステータスのオプションを指定します。
rc.setCommentId(12345); rc.setStatusCode("OPEN");
リクエストに「rc」オブジェクトを渡します。
rsr.setReportComment(rc);
リクエストを構成したら、呼び出しを実行します。
ReportServiceResponse rs=rsc.remoteReportCall(rsr);
レポートwebサービスを初期化します。実行方法の詳細は、こちらを参照してください。
返される応答には、StatusCodeパラメーターが含まれます。詳細は、上記応答パラメーターの表を参照してください。
完成例
以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_commentstatus.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_commentstatus.jsp」を実行します。
<% /* ws_commentstatus.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" %> <% /* 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); //out.write("Success"); } else { out.write("Failure"); out.write(" Code: " + rs.getErrorCode()); } %>
DISTRIBUTEINBOXリクエストは、受信者一覧の受信トレイにレポートを配信します。
これを実行するコードは、以下の通りです。
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);
GETDISPLAYEDREPORTIDリクエストは、現在表示されているレポートのレポートIDを返します。
これを実行するコードは、以下の通りです。
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です。 |
|
GETKPIリクエストは、特定のKPIレポートのKPIオブジェクトを返します。こちらの関数リクエストは通常、モバイルアプリケーション内で活用されます。
これを実行するコードは、以下の通りです。
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を参照してください)。 |
|
GETDRILLANYWHEREMENUリクエストは、選択したレポートのカラム(列)で使用可能なドリルエニウェアメニューを返します。こちらの関数リクエストは通常、モバイルアプリケーション内で活用されます。
これを実行するコードは、以下の通りです。
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) | 文字列の配列です。 |
|
DrillAnywhereTargets | Array (DrillAnywhereTarget) | ドリルエニウェアカテゴリーのドリルエニウェア目標を一覧表示するDrillAnywhereTargetオブジェクトの配列です(DrillAnywhereTargetを参照してください)。 |
|
SUBSCRIBEDETAILSリクエストは、特定のレポートのスケジュールレコードを返します。
これを実行するコードは、以下の通りです。
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を参照してください)。 |
|
SUBSCRIBEリクエストは、指定したユーザーの指定したレポートへの購読を作成、または変更します。こちらの関数リクエストは通常、現在の購読情報を取得するために、SUBSCRIBEDETAILSのあとに呼び出されます。そうでない場合、こちらの関数の呼び出しのために、ScheduleRecordオブジェクトを作成して適切なデータを投入する必要があります(ScheduleRecordを参照してください)。
これを実行するコードは、以下の通りです。
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);
UNSUBSCRIBEリクエストは、指定したレポートから、指定したユーザーの購読を停止します。
これを実行するコードは、以下の通りです。
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);
LOADDASHBOARDTABリクエストは、指定したダッシュボードタブとそのメタデータを読み込みます。
これを実行するコードは、以下の通りです。
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を参照してください)。 |
|
こちらの関数は、特定のダッシュボードの親タブの定義、またはメタデータを取得します。
リクエスト要素
以下の要素は、こちらのリクエストとともに渡されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 |
Password | String | 上記アカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 |
ReportRequest | String | webサービス関数です。「LOADPARENTDASHBOARDTAB」に設定します。 |
OrgRef | String | クライアント組織の内部参照IDを指定するオプションパラメーターです。 |
DashboardTabId | Integer | 読み込まれるダッシュボードを指定する内部IDです。 |
SessionId | Integer | (オプション設定)IDを使用して以前のセッションを指定します。 |
LanguageCode | (オプション設定)言語を指定します。 | |
ReportsOption | (オプション設定)レポートを送信する電子メールアドレスの一覧です。 |
リクエストの例
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを示しています。
<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>LOADPARENTDASHBOARDTAB</reportRequest> <dashboardTabId>61251</dashboardTabId> </arg0> </web:remoteReportCall> </soapenv:Body> </soapenv:Envelope>
応答要素
応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
Dashboard | DashboardDefinition | 指定したダッシュボードとそのサブタブのメタデータを含むオブジェクトです。 |
応答の例
サービスは、今回にSOAPの例に基づき、以下の応答を返します。
<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> <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> <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>
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの呼び出しを実行するための基礎的なリクエストです。
ReportServiceRequest rsr = new ReportServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); rsr.setPassword("test"); rsr.setOrgId(new Integer(1)); rsr.setReportRequest("LOADPARENTDASHBOARDTAB");
レポートが保存されているクライアント組織を指定する必要がある場合は、こちらのコードを追加します。
rsr.setOrgRef("org1"); // search for the report in this client org
詳細を取得するダッシュボードタブを指定します。
rsr.setDashboardTabId(70080);
リクエストを構成したら、呼び出しを実行します。
ReportServiceResponse rs=rsc.remoteReportCall(rsr);
レポートwebサービスを初期化します。実行方法の詳細は、こちらを参照してください。
返される応答には、次のパラメーターが含まれます。StatusCode、Dashboard、Subtabs。(より詳細な情報は、上記応答パラメーターの表を参照してください)
完成例
以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_loadparentdashboardtab.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_loadparentdashboardtab.jsp」を実行します。
/* ws_loadparentdashboardtab.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("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()); } %>
これを実行するコードは、以下の通りです。
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 rsr.setOrgId(new Integer(1)); rsr.setReportRequest("APPLYDASHBOARDFILTERS"); // This is the ID of the dashboard tab rsr.setDashboardTabId(11111); df.setTabId(11111); df.setReportId(12121); df.setFilterId(33333); df.setFilterType("BETWEEN"); df.setFilterValue("120|150"); dfarray[0] = df; rsr.setDashboardFilters(dfarray); rs = ReportService.remoteReportCall(rsr);
GETDASHBOARDREPORTFILTERVALUESリクエストは、ダッシュボードタブ上の特定のレポートのフィルターメタデータを返します。
これを実行するコードは、以下の通りです。
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を参照してください)。 |
|
RUNDASHBOARDREPORTリクエストは、ダッシュボードタブ上の指定したレポートを実行し、エクスポートします。応答はグラフ、GISマップ、CSSスタイルを含む、Base64でエンコードされたHTMLを含みます。
これを実行するコードは、以下の通りです。
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のバイナリーチャンクです。 |
|
Charts | Array (ReportChart) | ReportChartオブジェクトの配列です(ReportChartを参照してください)。 |
|
ReportStyle | String | CSSスタイルです。 |
|
Breadcrumbs | Array(Breadcrumb) | Breadcrumbオブジェクトの配列です。 |
|
GoogleMaps | Array(GMap) | レポートのグラフが使用している場合のGoogleMapsオブジェクトの配列です。 |
|
GisMap | Array(GISMap) | レポートのグラフが使用している場合のGISMapオブジェクトの配列です。 | getGisMap() |