标签: bapi

SAP R/3从IDoc XML文件中删除尾随空格

我有一个使用SAP JCo 3库的Java应用程序.其中一个用例包括从SAP实例(R/3,ERP 6.0 EhP 7)接收IDoc文件并将其转换为XML.问题是,在转换过程中(由IDoc库执行),字段末尾的右侧空格会被修剪.显然,减少邮件大小.到目前为止,我还没有找到任何可以从Java端完成的配置.

在网上搜索,我从SAP方面找到了以下建议:

  • whiteSpace=preserve从XSD编辑器设置
  • 设置xml.fieldContentFormatting=nothing在发件人文件/ FTP适配器

但是,我无法找到这些工具,也没有相应地配置它们.

我将非常感谢对这两种方法或任何其他解决方案的任何见解.

abap bapi idoc sapjco3 sap-r3

11
推荐指数
1
解决办法
949
查看次数

有关使用SAP JCo 3.x的教程,手册和文档

你知道使用JCo 3.x的任何体面的文档来源吗?

我能找到的大多数材料都已经过时,并且可以参考以前的版本(JCo 2.x).如果有人想知道,我找到的东西是:

这个是JCo 3,但仅涵盖基础知识:

java sap bapi idoc jco

8
推荐指数
1
解决办法
2万
查看次数

SAP JCo:JCoDestination与JCoClient

我正在使用JCo库从Java调用SAP中的函数.到目前为止我的调用工作正常,但是当我在互联网上寻求帮助时,总会有一个JCoClient用于获取功能,进行提交等等.

但是JCO 3中不存在JCoClient类.

相反,我使用JCoDestination我用配置文件创建的实例.

JCoClient和JCoDestination有什么区别?为什么没有人谈论JCoDestination,但总是JCoClient?

java sap bapi jco

7
推荐指数
1
解决办法
7733
查看次数

通过GUI抑制在ABAP中调用现有SAP报告

我想将SAP程序(事务)的功能公开为BAPI.我需要调用报告并提供范围过滤器,以便绕过GUI.

有没有人有SUBMIT ... WITH ... ABAP构造的工作示例,或者有关如何完成我需要做的事情的其他建议?

sap abap bapi

6
推荐指数
1
解决办法
1万
查看次数

SAP的BAPI API是专有的,还是仅仅是其他东西的包装器?

所以,我刚刚被卷入涉及SAP的项目中.具体来说,我需要使用SAPs BAPI API从"客户端"SAP系统中提取大量信息.鉴于SAP是一个封闭的平台,我一直难以找到SAP和BAPI的人/事/地点/时间/方式的高级概述.特别

  1. BAPI只是SOAP和/或XML-RPC的包装器,还是完全专有的通信格式?

  2. 是否有用于处理这些API的PHP扩展或库?

  3. 我已经看到了ABAP的首字母缩写词.它意味着什么,它适合什么?

在这一点上,我正在寻找可以给我10,000英尺视图的好资源.我意识到你可以花一辈子的时间来使用这些ERP系统,但仍然不了解整个事情.我只想要一个基本概述,这样我就可以和"客户"的SAP人员交谈,而不是一个完整的新手.

php sap soap bapi

6
推荐指数
3
解决办法
3972
查看次数

BAPI_TRANSACTION_COMMIT 与 WAIT = 'X' 在 BADi 中

当在 BADi 中等于 'X' 时,使用带有 'WAIT' 参数的 'BAPI_TRANSACTION_COMMIT' 会产生什么影响?我应该期望 SAP 在 LUW 提交时提交数据吗?

我知道在“BAPI_TRANSACTION_COMMIT”内部,如果您指定参数“WAIT”=“X”,它会发生“COMMIT WORK”或“COMMIT WORK AND WAIT”。

我也知道在 BADi 中进行“COMMIT WORK”是不正确的,但是如果我通过 BAPI 使用“COMMIT WORK AND WAIT”?

关于 COMMIT 的 SAP 文档说:

这将按照注册的顺序和在公共数据库 LUW 中执行所有高优先级 (VB1) 更新功能模块。如果不指定添加 AND WAIT,则程序不会等到更新工作进程执行完毕(异步更新),而是在 COMMIT WORK 后立即恢复。但是,如果指定了添加 AND WAIT,则 COMMIT WORK 之后的程序处理将不会继续,直到更新工作进程执行了高优先级更新功能模块(同步更新)。

当所有高优先级更新功能模块都成功完成后,该语句将按照注册顺序一起执行低优先级(VB2)更新功能模块在一个公共数据库LUW中。

我的困惑出现是因为我们有一个 BADi 实现,其中调用了带有参数 'WAIT' = 'X' 的上述函数,并且我们发现了一个 SAP Notes,它禁止在该 BADi 中使用“COMMIT WORK”,但是它说“提交工作”而不是“提交工作并等待”。

所以我可以认为实现是正确的,因为当 LUW 完成时,数据将被提交......或不。任何意见?

abap commit bapi badi

6
推荐指数
1
解决办法
2万
查看次数

如何在SAP系统上搜索可用的函数和表

我必须承认我不是SAP R/3编程方面的专家,因此这更像是一个基本问题.

有没有办法在SAP系统上获取可访问的RFC模块和/或表的列表?在互联网上的许多例子中,我发现了一个似乎可以在每个SAP系统上使用的RFC模块("SD_RFC_CUSTOMER_GET"),我想知道是否还有更多这些标准RFC模块可以使用.我可以轻松地在SAP系统中查询所有可用的SAP查询,但我找不到使用RFC模块或表格执行此操作的方法.在Google上搜索了几个小时之后,我甚至找不到这些RFC模块的列表...所以我错过了一些东西或者这是不可能的?

在此先感谢您的帮助.

.net c# sap abap bapi

5
推荐指数
1
解决办法
6994
查看次数

使用TransactionID时SAP JCo RETURN表为空

我正在使用JCo库访问SAP标准BAPI。嗯,除了我使用TID(TransactionID)时RETURN表始终为空之外,其他所有内容也都可以正常工作。

当我仅删除TID时,我得到的RETURN表中填充有Warnings等。但是不幸的是,我需要对事务性BAPI使用TID,否则不会提交更改。

为什么使用TID时RETURN TABLE为空?

还是我必须将更改提交到事务性BAPI?

这是BAPI访问的伪代码:

import com.sap.conn.jco.*;
import org.apache.commons.logging.*;

public class BapiSample {

    private static final Log logger = LogFactory.getLog(BapiSample.class);
    private static final String CLIENT = "400";
    private static final String INSTITUTION = "1000";
    protected JCoDestination destination;

    public BapiSample() {
        this.destination = getDestination("mySAPConfig.properties");
    }

    public void execute() {
        String tid = null;
        try {
            tid = destination.createTID();
            JCoFunction function = destination.getRepository().getFunction("BAPI_PATCASE_CHANGEOUTPATVISIT");

            function.getImportParameterList().setValue("CLIENT", CLIENT);
            function.getImportParameterList().setValue("INSTITUTION", INSTITUTION);
            function.getImportParameterList().setValue("MOVEMNT_SEQNO", "0001");
            // Here we will then all parameters of the BAPI....
            // ... …
Run Code Online (Sandbox Code Playgroud)

sap bapi jco

5
推荐指数
1
解决办法
2292
查看次数

使用 JCo 打印 BAPI 列表

我建立了到 SAP 服务器的连接,我想在我的 Java 程序中打印 BAPI 列表。我正在使用 sapjco3.jar。

有什么办法吗?

java bapi jco sapjco3

5
推荐指数
2
解决办法
2203
查看次数

如何使用sapjco3和Eclipse连接到SAP系统?

我需要通过标准BAPI调用连接到SAP Systems.我已经安装了JCo(sapjco3)并将.jar添加到Eclipse中的构建路径中.

但由于我是网络/服务器编程的初学者,我不知道如何在Eclipse和SAP系统之间建立连接......任何人都可以为此提供基本解决方案或一些想法吗?

谢谢你的问候!

java eclipse sap bapi jco

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

bapi ×10

sap ×7

jco ×5

abap ×4

java ×4

idoc ×2

sapjco3 ×2

.net ×1

badi ×1

c# ×1

commit ×1

eclipse ×1

php ×1

sap-r3 ×1

soap ×1