标签: sap-basis

除了锁定的对象之外,我可以将对象的更改保存到另一个 TR 中吗?

当我尝试切换到报告源的编辑模式时,会出现一个弹出窗口告诉我

“将为用户 XXX 的以下请求创建一个新任务”。

还建议传输请求。

但是,我不想在此请求中保存我的更改,而是保存在另一个现有请求中。我不知道我的系统中正在实施任何版本控制系统,也不知道如何检查。

我正在努力实现的目标是可能的吗?如果是这样,如何?

versioning abap transport sap-basis

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

如何使 ABAP 代码在任何基于 ABAP 的系统中工作

我经常通过论坛、github 等分享 ABAP 代码,这些代码通常旨在适用于任何基于 ABAP 的系统。不幸的是,经常发生这样的情况:我使用的某些对象(数据库表、类型等)仅存在于我正在使用的解决方案中(例如在 ABAP 系统上运行的 SAP CRM)。

需要了解的是,SAP 开发了多种解决方案,它们独立于其他解决方案,但要安装在 ABAP 系统上,其中包括 ABAP 语言本身以及紧密链接的外部对象(如 ABAP 字典中的对象)。此类SAP解决方案有SAP R/3、SAP CRM、SAP SRM、SAP SCM/APO、SAP BW、S/4HANA、BW/4HANA、SAP Solution Manager等。

例如,假设我想问一个有关 ABAP 中联接的问题,我提供了以下示例(我在 SAP CRM 系统上开发,但问题与 S/4HANA 无关):

REPORT.
DATA gt_partner TYPE TABLE OF crmd_order_index-partner_no.
SELECT DISTINCT a~partner_no
    INTO TABLE gt_partner
    FROM crmd_order_index AS a INNER JOIN crm_jest AS b
    ON a~header = b~objnr
    UP TO 10 ROWS.
cl_demo_output=>write( crmd_order_index ).
Run Code Online (Sandbox Code Playgroud)

许多人拥有 S/4HANA,而不是 SAP CRM,因此代码无法在他们的系统上编译,因为数据库表crmd_order_index仅存在于 SAP CRM 中。也许那些人不会回答或者他们无法验证他们的答案,所以我想我可以努力改进这个例子并使其在任何 ABAP 系统上工作。这当然是一个非常简单的示例,但想象一下您有数十或数百行。

我知道一种解决方案是在我们自己的笔记本电脑上安装 …

abap sap-basis

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

对象仍处于非活动版本

我已经创建了一个基本的应用程序来获取 SAP ABAP 中的公司详细信息,其中包含以下详细信息。

  1. 包名:ZSPT_930AM_PKG_1
  2. 应用程序名称:ZSPT_930AM_CMPNY_INFO_1
  3. 交易代码:Z39CD
  4. 传输请求编号:EC6K900010
  5. 子请求编号:EC6K900011

我已经激活了我的应用程序和配置,如包,T-Code 也工作正常,但是当我尝试发布我的传输请求时,我仍然收到以下错误。请在下面附上的图 5 中找到错误。

这是我的包裹 这是我的申请,你可以看到申请的状态是ACTIVE 我的应用程序的交易代码 这是我的运输请求组织者,这里我的请求是 EC6K900010 这是我的错误

我已经验证了我的所有配置,但仍然不知道我哪里出错了,它仍然显示对象处于非活动状态。有人请帮我解决这个问题。

abap sap-basis alv

4
推荐指数
1
解决办法
4208
查看次数

RFC_READ_TABLE OPTIONS 中子查询的使用

是否可以在 SAP 中的 RFC_READ_TABLE 的 OPTIONS 参数表中使用子查询?

像这样的东西

field in (select otherfield from othertable where ...)
Run Code Online (Sandbox Code Playgroud)

sap-basis

3
推荐指数
1
解决办法
2210
查看次数

在 PDF 中显示 UTF-8 字符

我试图通过从后端将 PDF 转换为二进制字符串来显示 PDF。这是我正在进行的 ajax 调用

    $.ajax({
        type : 'GET',
        url : '<url>',          
        data : oParameters,
        contentType : 'application/pdf;charset=UTF-8',
        success : function(odata) {

            window.open("data:application/pdf;charset=utf-8," + escape(odata));
Run Code Online (Sandbox Code Playgroud)

} });

当我尝试在新窗口中打开 PDF 时,网址看起来像

数据:应用程序/pdf;字符集=utf-8,%25PDF-1.3%0D%0A%25%uFFFD%uFFFD%uFFFD%uFFFD%0D%0A2%200%20obj%0D%0A/WinAnsiEncoding%0D... ....

如您所见,它使用“WinAnsiEncoding”来显示 PDF。因此,某些字符无法正确显示。如何将其更改为 UTF-8?

编辑:后端在ABAP中。我正在使用功能模块“CONVERT_OTF”将 smartform 转换为 OTF,然后转换为字符串。

           CALL FUNCTION fname
         EXPORTING
           user_settings      = space
           control_parameters = ls_ctropt
           output_options     = ls_output
           gv_lang            = lv_lang
         IMPORTING
           job_output_info    = ls_body_text
         EXCEPTIONS
           formatting_error   = 1
           internal_error     = 2
           send_error         = 3
           user_canceled      = 4
           OTHERS             = 5.

CALL FUNCTION 'CONVERT_OTF'
          EXPORTING …
Run Code Online (Sandbox Code Playgroud)

javascript pdf utf-8 character-encoding sap-basis

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

se01、se09 和 se10 有什么区别?

请解释为什么在基于 ABAP 的系统中传输处理有不同的事务代码(se01se09se10)。有什么区别?

sap-basis

3
推荐指数
1
解决办法
6547
查看次数

SOAMANAGER 无法显示

正如该主题所暗示的那样,我无法访问 SOAMANAGER 事务,经过几天的思考,我不知所措。

我的环境: - SAP HANA [开发人员版] 上的 SAP NetWeaver 7.50 SP1 AS ABAP 和 SAP BW,来自http://scn.sap.com/docs/DOC-41566

我的尝试:

  • 我已经激活:default_host/sap/bc/webdynpro/sap/APPL_SOAP_MANAGEMENT
  • 尝试使用“developer”和“DDIC”访问 SOAMANAGER

它试图打开的链接: http://vhcala4hci.wdf.sap.corp:50000/sap/public/myssocntl?sap-client=001

除了 APPL_SOAP_MANAGEMENT 或端口为 0 的问题之外,我在 google 上找不到任何其他问题/解决方案。我希望有人能帮帮忙。

更新:SE93 -> SOAMANAGER 在此处输入图片说明

如果我转到 SICF ... Services,找到 APPL_SOAP_MANAGEMENT,右键单击,然后测试服务,我会得到以下链接:

http://vhcala4hci.wdf.sap.corp:50000/sap/bc/webdynpro/sap/appl_soap_management?sap-client=001

虽然它具有相同的效果“找不到服务器”。我也尝试用 IP 替换地址,但结果相同......“找不到服务器”。

abap trial sap-basis

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

避免ABAP程序在生产性ERP系统中运行的安全方法

我需要开发一个ABAP程序,该程序为SAP Basis做一些动作。该程序只能在测试/开发系统中运行,在生产系统中运行该程序并不安全。

我需要任何安全的方法来防止程序高效运行。我可以读取T000表中的类别字段,并检查系统是否有效,但是这种方式不是100%安全的。任何具有调试/变量修改授权的用户都可以避免这种情况。

可能的解决方案是根本不将ABAP程序导入生产系统。同时,我们有一个从生产环境到QA的系统副本(Oracle DB从PROD完全复制到QA并重命名)。这意味着在复制每个PROD-> QA之后,新程序将在质量检查中删除,我们需要将其从DEV重新导入到质量检查中。因此,这种方式并不方便。

有什么办法更安全吗?

sap abap sap-basis

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