关于abap:什么是-SAP-ABAP-System-Fields

12次阅读

共计 1441 个字符,预计需要花费 4 分钟才能阅读完成。

在笔者上面这套 ABAP 教程里:

零根底疾速学习 ABAP

对 ABAP System Fields 有具体介绍:

  • 10. ABAP 编程语言中的零碎字段 (System Fields)

System Fields 在 ABAP 中用于拜访运行时数据,比方以后日期、工夫,以及正在执行的程序的名称等。上面是一些常见的 System Fields 的示例以及如何在 ABAP 中应用它们:

  1. SY-SUBRC

    SY-SUBRC 是一个用于示意上一个执行的函数模块的返回代码的 System Field。如果函数模块执行胜利,SY-SUBRC 的值将为 0。非零值示意函数模块执行失败。

    CALL FUNCTION 'SOME_FUNCTION'
      EXPORTING
        some_parameter = some_value
      IMPORTING
        some_result = result.
    
    IF SY-SUBRC = 0.
      WRITE 'Function executed successfully'.
    ELSE.
      WRITE 'Function execution failed'.
    ENDIF.
  2. SY-TCODE

    SY-TCODE 用于获取以后正在执行的 SAP 事务码的代码。

    DATA: lv_tcode TYPE sy-tcode.
    
    lv_tcode = SY-TCODE.
    WRITE: 'Current transaction code is', lv_tcode.
  3. SY-DATUMSY-UZEIT

    SY-DATUMSY-UZEIT 别离用于获取以后日期和工夫。

    DATA: lv_date TYPE sy-datum,
          lv_time TYPE sy-uzeit.
    
    lv_date = SY-DATUM.
    lv_time = SY-UZEIT.
    WRITE: 'Current date is', lv_date,
           'Current time is', lv_time.
  4. SY-CPROGSY-CPROC

    SY-CPROGSY-CPROC 用于获取以后正在执行的程序的名称和事务代码。

    DATA: lv_program TYPE sy-cprog,
          lv_transaction TYPE sy-cproc.
    
    lv_program = SY-CPROG.
    lv_transaction = SY-CPROC.
    WRITE: 'Current program is', lv_program,
           'Current transaction code is', lv_transaction.
  5. SY-MSGTYSY-MSGID

    SY-MSGTYSY-MSGID 用于获取最近一条音讯的音讯类型和音讯 ID。

    DATA: lv_msg_type TYPE sy-msgty,
          lv_msg_id TYPE sy-msgid.
    
    lv_msg_type = SY-MSGTY.
    lv_msg_id = SY-MSGID.
    WRITE: 'Message type is', lv_msg_type,
           'Message ID is', lv_msg_id.

这些仅是 ABAP 中一些常见的 System Fields 示例。System Fields 能够帮忙开发人员获取无关正在执行的程序或解决的要害信息,从而进行更有针对性的编程。在开发过程中,理解和正确应用这些字段能够进步代码的效率和品质。

总结起来,System Fields 是 ABAP 中的非凡字段,用于提供无关正在执行的程序、事务或解决的要害信息。通过拜访这些字段,开发人员能够获取运行时数据,如返回代码、以后日期工夫、事务代码、音讯信息等。这些字段在开发过程中起着重要的作用,帮忙开发人员编写更加智能和具备上下文感的代码。

正文完
 0