点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨。
我已经在10天前发布了这个问题,但是由于迁移,它在SCN归档文件深处消失了。
http://archive.sap.com/discussions/thread/3963342
为了确保可以在新的"问答"部分中找到它,我在此重新发布:
我们当前的系统是Windows上的BOBJ 4.2SP2。
我们的问题是将包含通过Image-URL伪装的图像的WebI报告导出为PDF。
我在HTML模式下尝试了以下所有操作,所以我不是在谈论Applet模式...
当URL指向MS-Sharepoint(当然是某些用户凭据设置的基础)时,该图像不会显示在PDF中。 如果URL指向我们LAN上的"开放"网络服务器,它将显示在PDF中。
《用户指南》中描述的设置,例如将某些注册表项放入HKLM \ ... \ BlobManager或在报告的"单元格格式"窗口中更改"读取内容为",均不会以任何方式影响此行为; 既不积极也不消极。
我在本地浏览器的报告中看到了这两个图像。
我认为到目前为止发现的内容:
在我的浏览器(IE 11)中看到该报告意味着该URL在我的客户端上得到了解析,并在需要时将SSO凭据发送到Image-URL-Server。
将报告导出为PDF会导致在浏览器中下载PDF,这意味着PDF是在BO服务器上创建的。
我们尝试以Windows用户身份运行SIA和Tomcat服务,并具有对Sharepoint的权限。 因此,如果我以与运行服务的Windows用户相同的方式在服务器上的浏览器中打开Image-URL,则会在浏览器中看到该图像。
尽管如此,导出报告导致PDF中没有图像。
我认为问题在于,服务器上的PDF生成正在解析URL(因为它与"开放式"服务器上的图像配合使用),但是在解析URL时却不发送任何SSO凭证或身份验证标头。 >
我对这个假设是正确的吗?
如果可以,我们该怎么办?
在我们公司中,我们拥有将某些图像放入某些Sharepoint文件夹的软件,这些图像动态地包含在某些BO报告中。 将这些图像放到"开放式"网络服务器上是没有选择的。
最诚挚的问候,埃瓦尔德
嗨,
这里的问题是由于HTTP身份验证,服务器无法访问图像。 您可以通过错误消息看到它。
能否将URL设置为单元格的背景图像,并将其类型设置为可拉伸? 通常,在这种情况下不应显示该图像,这还会导致我们需要检索该图像,调整其大小然后显示该图像,如果我们无法访问该图像将不起作用。
最好的问候
苗条
你好苗条,
我刚刚和亚当打了电话,我们回答了您的问题。 没有变化。 图像在WebI中仍然可见,但是将其导出为PDF时,Sharepoint图像不存在。 不管是否拉长。 行为相同。
我再次告诉他,我在这里也说过。 在WebI中,图像的URL在浏览器中解析。 浏览器通过Sharepoint服务器处理HTTP身份验证(Windows凭据SSO),WebI可以显示图像。
导出为PDF时,服务器正在生成PDF。 因此,WebI Server尝试解析URL并从Sharepoint服务器获取图像。 Sharepoint服务器要求进行身份验证。 WebI Server会忽略(因为它仍然没有用于身份验证的任何凭据),并显示一个空单元格。
最诚挚的问候,埃瓦尔德
嗨,
您是否尝试将文档输出计划为PDF?
您可以使用 来自BOBJ服务器的URL吗?
谢谢
卫星
嗨,
不,我没有尝试安排文档,因为这不是满足我们需求的选择。 有助于缩小问题范围吗?
是的,如上所述。
如果我直接在浏览器中输入共享点图像URL(将其命名为 http:// sharepoint.local/test.png ),我看到了图像; 无论我尝试使用笔记本电脑上的浏览器还是BOBJ服务器上的浏览器。
如果在报告中将共享点图像URL用作"图像超链接",则会在报告中看到该图像; 无论是在笔记本电脑还是服务器上。
如果我将此报告导出为PDF,则看不到PDF中的图像; 无论是在笔记本电脑还是服务器上。
我仍然认为这是HTTP验证(SSO)的问题。 在浏览器中时,浏览器处理身份验证标头等。 导出报告会导致某些服务器模块改写URL并尝试获取图像,而不关心任何身份验证...
虽然只是一个假设,但对我而言,最合理的解释...
最好的问候,Ewald
在共享点服务器上是否有任何日志显示"谁"正在尝试访问该图像? (我猜想从共享点收到401响应。)
共享点上有日志,但是我使用Web调试器作为代理捕获了请求和响应。
这是BOBJ服务器发送的请求,用于创建PDF:
获取http://sharepoint.server/path/to/testimg.png HTTP/1.1
主机:sharepoint.server
接受:*/*
连接:保持活动
这是来自Sharepoint-Server的(预期)响应:
HTTP/1.1 401未经授权
内容类型:文本/纯文本; charset = utf-8
...
WWW-Authenticate:NTLM
...
Date:Fri,28 Oct 2016 11:49:14 GMT
内容长度:16 < br> Proxy-Support:基于会话的身份验证
401未经授权的
好像死路一条。 有什么想法吗?
由于我们正处于从3.1到4.2的迁移过程的中间阶段(或几乎处于末尾),因此这绝对是一个成功的选择。 我们必须向用户提供此功能。
一周热门 更多>