问题标签 [sap-xi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sap - 通过 pdfbox/icafe4j 将 PDF 转换为多页 TIFF 在 SAP PI 中失败
我们在 SAP PI (7.40) 环境中遇到问题。我们从不同的界面获取发票(xml、csv、pdf),在此过程中,我们必须向 OCR 提供商发送一个 tiff 文件(通过 pdfbox/icafe4j 从 pdf 转换)。pdf 可以是:
- 传入的 pdf
- 我们自己生成的 pdf(通过 pdfbox,来自 xml 或 csv 输入)。
转换是在外部 java 类中实现的。它适用于大多数 pdf 文件。只有少数 pdf 文件在我们在 Linux(!!) 上运行的 SAP PI 环境中出现异常。并且相同的转换在本地Windows(!!)环境中运行良好,没有任何错误。
Linux 环境的部分异常:
摘自java实现:
在我们找到有关 TIFFTweaker 类更新的以下内容后,我们实施了更新,之后异常没有被抛出,但如链接中所述,它被吞下。
https://github.com/dragon66/icafe/issues/63
这不是很有帮助,因为我们必须有 OCR 的 tiff 文件。
我们还查看了 pdf 字节流的内部结构,发现有一些特殊的部分处理字体/编码:TrueType 字体和“/Encoding / Identity-H ”......所有不在我们的 Linux 下运行的 pdf 文件系统包含这个“ Identity-H ”。
有没有人在 Linux 上进行此转换时有类似的经验/错误?
知道除了尝试之外我们还能做什么吗?也许在 Linux 或其他东西下缺少一些库!?
还请看一下这个转换(可能有助于理解):
https://www.mail-archive.com/users@pdfbox.apache.org/msg09569.html
我在没有任何更多代码或受影响的 pdf 文件的情况下开始我的这个问题的初始条目,但如果需要,请提供它。
堆栈跟踪:
web-services - 调用多个 RFC 的 SAP PI Web 服务
我已经要求 SAP PI 供应商开发人员创建具有多个操作的单个 Web 服务,其中每个操作都会调用一个 RFC,我被告知它需要是单个 RFC 和单个操作,是否不可能有单个 Web具有多个操作的服务,其中每个操作调用一个 RFC ?
rest - SAP PI RFC 到 REST 通信,无需映射。可能的?
我们有一个场景,我们应该通过 PI 将数据从 SAP ECC 发送到税务局,其中 SAP ECC 将使用 RFC 与 PI 对话,而税务局 PI 应该使用 REST API 发送数据。
我们在 SAP ECC 中有一个工具,可以按照税务机关要求的结构创建 XML。因此,不需要在 PI 中修改、映射、翻译任何内容。
有没有办法将 RFC 中的 XML“字符串”从 SAP ECC 发送到 PI,而不是映射它,并使用 REST API 进一步发送?
税务机关的响应需要作为 RFC 调用的返回值发送回 SAP ECC。
这都是没有映射的可行解决方案吗?
xslt - 如何删除 xsi: PI XSLT 映射中的属性?
我目前正在研究 SAP NW PI(流程集成),我们有一个使用 SOAP 的第三方系统的入站有效负载,有效负载类似于
命名空间应该在每个元素上都有前缀 ns0 的第一个问题。此问题已使用以下 XSLT 映射修复
现在我的问题是从元素中删除 xsi 属性,我应该如何做到这一点?
intellij-idea - IntelliJ Ultimate 无法从 SAP PI WSDL 文件生成代码
我们的 PI 版本不支持 REST Web 服务,因此我们使用他们的 SOAP Web 服务并提供 REST Web 服务来为外部实体提供 REST Web 服务支持。我有我们用来在 Eclipse 中导入的 SAP-PI WSDL 文件,它生成 9 个 java 类文件
但是当我在 IntelliJ 中导入该 WSDL 文件时,它不会生成 1 个 java 类文件。
SI_XXXX_XXXXXXXX_OUTProxy
IntelliJ 中缺少这个 java 类。任何建议将不胜感激。
java - SAP PI UDF 将没有时间的日期转换为日期时间 ISO8601 字符串
我需要为 SAP PI 编写一个 java 函数,它以以下格式为我的 XML 映射返回一个字符串:yyyy-MM-dd T HH:mm:ss(例如,2018-08-15T00:00:00
)即使我的源字段只是一个没有时间的日期字段(例如,2018-08-15
)。
我已经尝试过SimpleDateFormat
Java 类,但我无法让它工作。有没有一种简单的方法可以做到这一点?
在建议的帖子(答案/重复/链接)中,我找不到我要找的东西。猜想我没有足够清楚地描述问题,但问题是我从源 XML (SAP PO) 获取日期,我需要将其转换为目标 XML 中的 ISO 8601 日期。
感谢 Ole,我想出了以下“初学者”功能(为了完整性):
因为它现在只需要一个没有时间的日期,它可能会使用“StartOfDay”。也许我稍后会调整它以查看字符串中是否有时间部分。
谢谢大家帮忙!
mapping - SAP PI 消息映射不映射值
在 SAP PI 7.4 中,我在尝试在消息映射中映射某些东西时遇到了一些困难,这看起来很简单。
输入是这样的。
我需要这个映射到以下结构
尝试映射时,我会这样做:
员工 -> 新对象
ExternalIdList -> ExternalEmployeeList
ExternalId -> ExternalEmployee
外部标识 -> 外部标识
测试映射时,创建了 3 个 ExternalEmployee 节点,但只有第一个节点在 ExternalId 中包含值“aaa”。其他 2 个 ExternalEmployee 没有得到 ExternalId:
我已经尝试了相当多的节点功能或更改了上下文,但似乎没有任何效果。推荐的解决方案是什么?
也许事先添加一个 XSLT 映射以在输入消息中的 ExternalIdList 和 ExternalId 之间插入一个级别?这似乎有很多绒毛。
在此先感谢,欢迎每一个正确方向的提示!
java - 调用方法 getInputParameters() 时出现 NullPointerException
我正在 SAP PI 7.5 中使用由操作映射中指定的标记名称绑定的以下参数进行参数化 Java 映射
在使用有效负载在 OM 的测试选项卡中测试以下 java 映射时,会出现以下错误:
NullPointerException,同时尝试调用从局部变量“this**”加载的对象的字段加载的空对象的方法 com.sap.aii.mapping.api.TransformationInput.getInputParameters()
我调试了代码,但没有发现问题,有什么建议吗?
请在下面找到 XmlNFe_To_Mail 类的 Java 代码。BodyText 类也用于获取一些内容。在 XmlNFe_To_Mail 类中遇到错误。
}
请让我知道应该进行哪些更改。谢谢。
java - 无法在 SAP PI 7.5 中的参数化 Java 映射中显示树视图
我正在研究parameterized
java映射。在操作映射中进行测试时,它给了我们错误 Unable to display tree view; Error when parsing an XML document (Premature end of file.)
并且跟踪日志显示Resource not found: META-INF/services/javax.xml.transform.TransformerFactory
。我们也遇到了同样的问题,DocumentFactory
但是我们编写了以下代码并解决了documentfactory
问题
但是我们仍然面临同样的错误TransformerFactory
。请在下面找到整个代码,请让我知道要进行的更改。
XmlNFe_To_Mail :
BodyText.java:
请在下面找到跟踪日志:
请让我知道需要进行哪些更改。谢谢 :)