最近,我收到一个要求,在事务和报告的对象文档中添加一个超链接。点击此链接,系统应该能够重定向并打开存储在solution manager系统或share point上的文档,我想分享可能的解决方案,可以用来实现预期的结果。
要求:
用户将点击"点击这里打开"SAP.com网站"系统就会打开https://www.sap.com网址浏览器的新会话
同样,要求提供一个超链接以打开存储在客户网络上的文档,在share point或solution manager系统上(可以为solution manager系统上存储的文档生成链接)。
可能的解决方案:
选项1:使用SAP提供的URLA选项。
缺点:
使用此解决方案,我们面临长度的限制,即可以在超链接中传递的字符数。由于DS的标记不能扩展到新行,我们只剩下72个字符,其中我们必须提供标签和网址。这个选项被排除,因为存储在内部网络上的文档的URL可能非常长。
选项2:事务链接。
提供事务并将事务链接到报告,该报告将具有以下代码
缺点:
具有此限制方法是为每个我们要在文档中提供。
选项3:为文档类创建自定义文档类和FM。
步骤1)在TDCLD表中创建表条目。此表包含文档类
表:TDCLD是允许维护的文档类的主表。但是,企业信息化软件,大数据啥意思,没有相同的表维护生成器。此外,没有可用于维护此表数据的tcode/report。因此,您必须通过SE16或SE16N维护此表。最好是复制一个表条目,并为受尊重的值提供您自己的名称。在我们的示例中,微信返利机器人安全吗,document类是ZRJK.
步骤2)Coping standard FM.
Copy FM的URLA\u OBJECT\u SHOW和URLA\u OBJECT\u TITLE的前4个字符应该是document类。在我们的示例中,ZRJK\u OBJECT\u SHOW和ZRJK\u OBJECT\u TITLE.
步骤3)将值从文档传递到FM。DOKNAME将包含传递给FM的值。
在"ZRJK"后面的字符串。包含将传递给FM的文档名。在我们的示例中,我们传递存储在solution manager系统上的文档的LOIO号。
步骤4)在FM中构建URL并调用浏览器中的链接。
保留标题的FM,正文为空。在我们的示例中,ZRJK\u OBJECT\u TITLE是从URLA\u OBJECT\u TITLE复制的,但主体为空。由于使用最后一个选项,我们在FM中获得控制,其中dokname包含通过文档传递的文档名称,微信返利机器人哪个好,因此我们可以根据需要构建许多解决方案。
同样,请参阅以下文章以获取更多信息:
https://blogs.sap.com/2014/05/29/tip-n-6-how-to-add-hyperlink-inside-message-long-text/https://archive.sap.com/discussions/message/16044394#16044394
上述URL提供了另一种在对象文档中添加超链接的方法,这是一种面向对象的方法。要使用这种方法,我们必须创建自己的自定义类,该类继承class:CL\u EPSS\u SAPEVENT,然后实现方法:RESOLVE\u LINK。此外,我们还必须维护表中的类详细信息:EPSSA2.
这两种方法(面向对象方法和使用FM的方法)都可以使用,并且是为给定需求提供解决方案的最佳选择。
但是,使用面向对象的方法,解决方案用标准类替换自定义类,然后从内部调用标准类标准文档类的自定义类。使用FM方法,FM在独立模式下工作,而不替换标准类。
让我知道你对博客的看法,物联网产品,并欢迎所有改进博客的评论。