Running, printing, and viewing a document : Retrieving and viewing data : Retrieving report content
 
Retrieving report content
Use GetContent to retrieve the contents of a report. You can also retrieve the contents of a component within the report. Using this operation, you specify the report, the format in which to display it, and the component to retrieve from the report. Identify the component by component ID or component name. If you specify a component ID of zero, the response returns the entire report.
You can choose from the following display formats:
*CSS
*DHTML
*DHTMLLong
*DHTMLRaw
*ExcelData
*ExcelDisplay
*ImageMapURL
*PDF
*PPT
*PPTFullyEditable
*Reportlet
*RTF
*RTFFullyEditable
*XMLCompressedDisplay
*XMLCompressedExcel
*XMLCompressedPDF
*XMLCompressedPPT
*XMLCompressedReportlet
*XMLCompressedRTF
*XMLData
*XMLDisplay
*XMLReportlet
*XMLStyle
The PDF format works only for page-based information. A user cannot retrieve component-based data in PDF format.
The Reportlet format works only if the report designer enables ShowInReportlet during report design. If you choose Reportlet, the default value for the maximum height is zero, which means there is no limit to the height of the Reportlet. If you do not specify another value, BIRT iHub converts the whole component into a Reportlet.
The following example requests an entire report in XMLDisplay format. Note that the request includes a MIME boundary.
--MIME_boundary
Content-Type: text/xml;charset=utf-8
Content-Transfer-Encoding:8bit
Content-ID:<response.xml>…
<SOAP-ENV:Body>
<GetContent>
<Object>
<Name>/Temp/forecast.rptdocument</Name>
</Object>
<ViewParameter>
<Format>XMLDisplay</Format>
</ViewParameter>
<Component>0</Component>
</GetContent>
</SOAP-ENV:Body>
The preceding request returns the SOAP response and an attachment containing the data. Because the component ID is 0, the attachment contains the entire document.
--MIME_boundary
Content-Type: text/xml;charset=utf-8
Content-Transfer-Encoding:8bit
Content-ID:<response.xml>
<SOAP-ENV:Body>
<GetContentResponse>
<ContentRef>
<ContentId>Attachment</ContentId>
<ContentType>text/xml</ContentType>
</ContentRef>
<ComponentId>0</ComponentId>
</GetContentResponse>
</SOAP-ENV:Body>
--MIME_boundary
Content-Type: text/xml
Content-Transfer-Encoding:binary
Content-ID:Attachment
800
 
--MIME_boundary
0
If the requested display format is Excel, ContentType looks like the following example:
<GetContentResponse>
<ContentRef>
<ContentType>application/vnd.ms-excel</ContentType>
</ContentRef>
</GetContentResponse>