在 SAP 官方的差旅审批示例中,一条差旅记录的创建并不是业务流程的终点。运行在 SAP BTP ABAP environment 中的差旅应用创建记录后,需要启动 SAP Build Process Automation 中的审批流程,将差旅状态设置为待审批。审批人在任务收件箱中完成操作,审批结果再通过回调返回 ABAP 应用,推动差旅状态变为接受或拒绝。记录、审批任务和业务状态分布在不同的应用中,却必须围绕同一笔差旅申请协同工作。SAP Developer Center这个实际存在的官方示例,把 Integration Use Cases 所关心的问题呈现得很清楚。我们开发的并不只是一个能够发送 HTTP 请求的方法,而是一段跨越系统边界的业务关系。应用之间需要知道交换什么信息、什么时候交换、由谁处理,以及处理结果如何回到业务对象上。从 ABAP 开发的角度看,集成工作的难点经常不在请求报文有多复杂,而在于我们是否准确理解了这次通信的业务目的。同样是把一组字段从一个系统发送到另一个系统,可能是在同步分析数据,也可能是在请求创建业务单据,还可能是在通知其他应用某项业务变化已经发生。这几种需求的实现方式、成功标准和异常处理策略,都存在明显差异。SAP 对 ABAP 集成的说明区分了数据集成、流程集成和事件集成。数据集成关注通信参与方之间的数据交换,不必依附于某个预先定义的业务流程。流程集成则沿着业务流程组织应用之间的通信。事件集成关注具有业务意义的状态变化