04、ABAP考试试卷

ABAP考试试卷

题目一、请声明一个结构数据类型TY_HEAD,结构下面包含一个内表数据类型TY_ITEM

TYPES: BEGIN OF TY_ITEM,
          NAME  TYPE  CHAR6,
          GENDER TYPE CHAR2,
          AGE    TYPE  I,
      END OF TY_ITEM. 
TYPES: BEGIN OF TY_HEAD,
          TY_ITEM  TYPE  TY_ITEM,
      END OF TY_HEAD. 

题目二、请列举至少6个系统字段SY及其本身的作用,例:SY-SUBRC——返回代码值(0,如果操作成功)

SY-DATUM: 当前系统日期
SY-UZEIT: 当前系统时间
SY-INDEX: 当前LOOP循环过的次数
SY-REPID: 当前程序名称
SY-TCODE: 当前执行程序的Transaction code
SY-ULINE: 画横线

题目三、请声明一个带表工作区的内表数据对象GT_DATA(包含哪些字段自定义即可)

TYPES: BEGIN OF ty_head,
         name  TYPE  char6,
       END OF ty_head. 
DATA: gt_data TYPE STANDARD TABLE OF ty_head.

题目四、(基础语法)获取数据对象的数据类型

DATA: text  TYPE c LENGTH 1,
      name  TYPE F.
DESCRIBE FIELD name TYPE text.
WRITE: / 'name的数据类型为:', text.

题目五、如下图所示gv_yearmonth为char6类型的变量,赋值gv_yearmonth为系统当前日期年月部分的值

在这里插入图片描述

gv_yearmonth = SY-DATUM(6).

题目六、(基础语法)将字符串变量str向左移动1位字符

SHIFT str BY 1 PLACES LEFT.

题目七、如下图所示语法返回true还是false,并请解释原因?

在这里插入图片描述

true
A CA B: A至少包含B中的任意一个字符

题目八、(基础语法)GT_DATA为带表工作区的内表数据对象,如何清空表数据

clear: GT_DATA.

题目九、已知如下图所示的内表数据对象gt_line,假设该内表有数据,请写出按col1、col2字段进行二分法读取单行数据的语法(提示:排序语法也需写出来)

在这里插入图片描述

SORT gt_line BY COL1 COL2.
READ TABLE gt_line INTO DATA(gs_line) WITH KEY col1 = '' col2 = '' BINARY SEARCH.
  IF sy-subrc = 0 .
    WRITE: / gs_line-col1, gs_line-col2, gs_line-col3, gs_line-col4.
  ENDIF.

题目十、(基础语法)获取内表gt_line中数据的行数

gt_line_rows = LINES( gt_line ).

题目十一、如下图所示的两个ABAP语句有何区别?两个语句一般应用于什么场景?

在这里插入图片描述

COMMIT WORK: 异步更新
COMMIT WORK AND WAIT:同步更新

题目十二、如何在选择界面如下图所示位置添加“模板下载”按钮,请写出关键代码

在这里插入图片描述

TABLES: sscrfields.
...
SELECTION-SCREEN FUNCTION KEY 1. "模板下载
...
* 设置屏幕按钮
FORM frm_button .
  DATA: functxt TYPE smp_dyntxt.
  CLEAR functxt.
  functxt-icon_id   = ICON_SAVE_AS_TEMPLATE."icon_view_form
  functxt-icon_text = '模板下载'.
  sscrfields-functxt_01 = functxt.
ENDFORM.

题目十三、请描述一下ALV报表开发的基本流程

1、定义内表
2、设置屏幕
3、从底表中获取数据到内表中
4、设置fieldcat
5、ALV显示

题目十四、假设ALV内表有一列字段名为“DETAIL”,如何将这一列设为可编辑状态?请写出关键代码

gs_fcat_lvc-edit = &8.
'DETAIL' '' '详情' '' '' '' '' 'X'.

题目十五、请完成以下操作步骤:复制GUI状态到SE38本地程序,然后在复制的GUI状态中添加“过账”按钮。(操作步骤请截图)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 23
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值