Hi
I have a few Zen pages, one of which is implementation of
<span class="hljs-keyword">Class</span> GMECC.DocmanConnect.Pages.downloadGPNotOnHub <span class="hljs-keyword">Extends</span> (<span class="hljs-built_in">%ZEN.Component.page</span>, <span class="hljs-built_in">%CSP.StreamServer</span>)
{
<span class="hljs-keyword">ClassMethod</span> GetId()
{
<span class="hljs-keyword">Quit</span> <span class="hljs-built_in">$Get</span>(<span class="hljs-built_in">%request.Data</span>(<span class="hljs-string">"filepath"</span>,<span class="hljs-number">1</span>))
}
<span class="hljs-keyword">ClassMethod</span> OnPreHTTP() <span class="hljs-keyword">As</span> <span class="hljs-built_in">%Boolean</span>
{
<span class="hljs-keyword">set</span> filepath = <span class="hljs-built_in">%request.Get</span>(<span class="hljs-string">"filepath"</span>)
<span class="hljs-keyword">set</span> tFs=<span class="hljs-keyword">##class</span>(<span class="hljs-built_in">%Stream.FileCharacter</span>).<span class="hljs-built_in">%New</span>()
<span class="hljs-keyword">set</span> tFs.Filename=filepath
<span class="hljs-keyword">set</span> <span class="hljs-built_in">%response.ContentType</span> = <span class="hljs-string">"application/pdf"</span>
<span class="hljs-keyword">do</span> <span class="hljs-built_in">%response.SetHeader</span>(<span class="hljs-string">"Content-Disposition"</span>,<span class="hljs-string">"attachment;filename="""</span>_<span class="hljs-built_in">$P</span>(filepath,<span class="hljs-string">"\"</span>,*)_<span class="hljs-string">""""</span>)
<span class="hljs-keyword">Do</span> <span class="hljs-built_in">%response.SetHeader</span>(<span class="hljs-string">"Content-Length"</span>,tFs.SizeGet())
<span class="hljs-keyword">Quit</span> <span class="hljs-built_in">$$$OK</span>
}
<span class="hljs-keyword">ClassMethod</span> OnPage() <span class="hljs-keyword">As</span> <span class="hljs-built_in">%Status</span>
{
<span class="hljs-keyword">set</span> myfile = <span class="hljs-keyword">##class</span>(<span class="hljs-built_in">%File</span>).<span class="hljs-built_in">%New</span>(<span class="hljs-built_in">%request.Get</span>(<span class="hljs-string">"filepath"</span>))
<span class="hljs-keyword">do</span> myfile.<span class="hljs-keyword">Open</span>(<span class="hljs-string">"S"</span>)
<span class="hljs-keyword">do</span> myfile.OutputToDevice(myfile.SizeGet()) <span class="hljs-comment">//myfile.OutputToDevice() </span>
<span class="hljs-keyword">quit</span> <span class="hljs-built_in">$$$OK</span>
}
}
And it is called via a hyperlink as follows:
GMECC.DocmanConnect.Pages.downloadGPNotOnHub?filepath=E:\blah\blah.pdf
The resultant file is correctly interpreted as a PDF, given the appropriate file name etc, but is 5Kb smaller
Any thoughts?
</body></html>