Abap 将命名空间/FOO/的代码和数据类型复制到第二个SAP系统

Abap 将命名空间/FOO/的代码和数据类型复制到第二个SAP系统,abap,sap-basis,Abap,Sap Basis,在过去的几周里,我开发了一些带有名称空间/prefix/FOO/的代码。名称空间是正式的。它是在SAP注册的 如果第二个客户希望使用我们的代码,如何将此命名空间中的所有代码和数据从一个sap系统传输到另一个sap系统 在这个名称空间下,有一些数据类型和一些abap代码,一些只有旧的SAP(netweaver 7.4),没有HANA 这个问题不是关于通常的传输(dev->qual->prod)。这很有效 相关:以下是如何在不访问操作系统和文件系统的情况下做到这一点 释放包含代码的工作台传输(在SE

在过去的几周里,我开发了一些带有名称空间/prefix/FOO/的代码。名称空间是正式的。它是在SAP注册的

如果第二个客户希望使用我们的代码,如何将此命名空间中的所有代码和数据从一个sap系统传输到另一个sap系统

在这个名称空间下,有一些数据类型和一些abap代码,一些只有旧的SAP(netweaver 7.4),没有HANA

这个问题不是关于通常的传输(dev->qual->prod)。这很有效


相关:

以下是如何在不访问操作系统和文件系统的情况下做到这一点

  • 释放包含代码的工作台传输(在
    SE01
    SE10
    中)
  • 每次释放传输时,都会在
    data
    cofiles
    目录中写入两个文件,这些目录可以在
    DIR\u TRANS
    目录中找到(请参见
    AL11
    )。这些文件的命名与您的传输完全相同,带有
    R
    K
    前缀以及以SAP系统名称命名的扩展名,为了本例的缘故,请将其命名为
    XYZ
  • 在SAP GUI中使用报告启动命令行
    RSBDCOS0
    (事务
    SE38
  • 将工作目录设置为您选择的目录,并在其中创建一个名为
    transport
    的文件夹,其中包含两个子文件夹
    data
    cofiles
  • 将传输文件复制到工作目录中的
    transport
    目录中。在Windows系统上,它可能是这样的

    复制%DIR\u TRANS%\data\R.XYZ。\transport\data
    复制%DIR\u TRANS%\cofiles\K.XYZ。\transport\cofiles

  • 使用SAP Archiver(
    sapcar
    )应用程序将
    transport
    目录的内容打包到工作目录中。在Windows系统上,它可能是这样的

    cd传输
    sapcar-cvf XYZK.SAR数据\R.XYZ文件\K.XYZ

  • 将文件从应用程序服务器下载到本地客户端,例如使用
    SE37
    和功能模块
    ARCHIVFILE\u server\u到\u client

  • 使用功能模块将文件上载到目标SAP应用程序服务器
    ARCHIVFILE\u CLIENT\u to\u server

  • 在目标服务器中启动操作系统命令行,就像在第3点中一样

  • 解压缩
    SAR
    文件

    sapcar-xvf XYZK.SAR
    复制cofiles\K.XYZ%DIR\u TRANS%\cofiles
    复制数据\R.XYZ%DIR\u TRANS%\data

  • 转到事务
    STMS
    并刷新传输导入队列。首先要导入的传输现在应该在队列中可见


  • %DIR\u TRANS%
    必须替换为您可以在源系统和目标系统的
    AL11
    中看到的目录。

    您可以尝试新的SAP传输系统,该系统在S4HANA等新环境中积极推广,并建议作为CTS+的替代品,称为

    名称空间为
    /FOOBAR/REPORT
    的对象使用abapGit序列化为
    #FOOBAR#REPORT.prog.abap

    要移动客户命名空间中的对象以在目标系统中创建此命名空间,请执行以下操作:

    • 在SE03中创建名称空间,名称空间角色=C,并添加修复许可证
    • 在SE03中打开名称空间进行修改
    • 创建名称空间包
    • 在SE03->更改对象目录条目中将包原始系统更改为当前系统
    • 像正常一样克隆/拉
    然后通过Git以常规方式拉取它们,它们应该出现在客户名称空间中


    如果所有带名称空间的对象都存储在同一个包中,则移动整个包的任务对您来说要简单得多。

    只需将其打包到传输中,然后将其导入目标系统即可。没有检查您导入的内容,无论是
    Z
    Y
    还是
    /FOO/
    。唯一的检查是在软件组件版本上完成的,您可以通过强制关闭它(如果您完全确定您正在做什么)。确保
    /FOO
    编码的所有依赖项也在目标系统中。我假设您熟悉
    STMS
    事务。@guettli:您的意思是两个SAP系统没有连接(所以通常的STMS方式不起作用)?@JozsefSzikszai是的(我想是的,我不知道STMS的所有功能)。为一个客户开发的软件应该用于另一个客户。好的,这是一个基本问题:当传输发布时(我假设所有内容都是一个传输-至少这是可取的),将创建两(1)个文件。这两个文件必须从源SAP服务器复制到目标SAP服务器。Basis应该知道哪些是特定的文件夹。这也可能有用:(1)我希望我记得correctly@JozsefSzikszai非常感谢您的评论(基础问题)。请写下来作为答案。我想我的用例/问题很常见。没有官方的办法吗?当然有。您可以要求Basis的负责人为您执行此操作。是否没有此过程的官方(和公共可用)文档?我喜欢自己做事。或者至少我希望自己能做到这一点。