屏幕中设置焦点_SAP刘梦_新浪博客

关键字:
SET CURSOR语句必须位于PBO代码段中,否则不起作用。示例如下:
    SET CURSOR FIELD 'MARA-MEINS' LINE 2 OFFSET 1.


在ABAP程序中,ALV控件功能强大,操作灵活,大部分的表格都使用ALV来设计,但是ABAP基本控件中的TableView依然以设计简单、编码方便的原因而经常被使用。我们在使用TableView中需要处理的一个问题就是设置TableView的总行数。
    在屏幕上放置一个Table控件后,还要在ABAP程序中声明一个同名的TableView变量才能操作,声明示例如下。
    CONTROLS tb TYPE TABLEVIEW USING SCREEN 100.
    声明变量后,TableView的总行数可以通过字段lines来设置。如tb-lines = 10即设置Table的总行数为10,用户只能在这10行内输入数据。如果设tb-lines = 0,则垂直滚动条不可用,屏幕可见范围内的行都可以输入。通常我们设置Table的总行数等于和它关联的内表的总行数。
    需要注意的是:设置TableView的lines字段必须在PBO操作之前,也就是说必须在进入屏幕(CALL SCREEN)之前或是处理屏幕的PAI代码段中。另外,因为 lines = 0表示不处理总行数,为了实现Table的总行数为0,我们可以将Table包含的所有可输入字段的input = 0。这个操作必须在PBO代码段中进行,不能和设置lines的代码在一起,否则不起作用。
  设置input的示例代码如下(请按你的需要加以更改)。
    LOOP AT screen.
      IF screen-name = 'xxx'.
        IF tb-lines = 0.
          screen-input = 0.
        ELSE.
          screen-input = 1.
        ENDIF.
        modify screen.
      ENDIF
    ENDLOOP.

    另外就是有时需要设置屏幕的输入焦点在哪个控件上,或者是在表格的哪一行中。通过SET CURSOR语句可以设置屏幕的输入焦点,SET CURSOR语句必须位于PBO代码段中,否则不起作用。示例如下:
    SET CURSOR FIELD 'MARA-MEINS' LINE 2 OFFSET 1.
    其中FIELD后面是一个字符串或是字符串变量,是接受输入焦点的控件的名字,如果这个控件不在TABLE中,则不要使用后面的LINE关键字,当控件处 于一个Table中时,LINE表示焦点应该位于Table的第几行,OFFSET指定焦点处于控件的第N个位置,从左往右计算,最前面是0。

  提示:可以通过GET CURSOR语句得到屏幕当前的输入焦点,此语句可以在PAI和PBO代码段中使用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[2\]:前几天用到HR模块的一个函数:HR_INFOTYPE_OPERATION。这个函数是用来操作HR信息类型的。在调用这个函数之前,需要先加锁,然后调用HR_INFOTYPE_OPERATION函数进行操作,最后再解锁。\[2\]根据参数OPERATION的不同取值,可以实现不同的操作,比如创建、修改、删除等。其,主要的取值有INS、INSS和MOD。\[2\]INS表示创建一个新的记录,即使系统已经存在相同类型的记录。INSS表示创建一个新的记录,如果系统已经存在相同类型的记录,则将其转换为修改操作。MOD表示修改已存在的记录。\[3\]根据你的需求,你可以查找类似的BAPI函数来实现相同的功能。 #### 引用[.reference_title] - *1* [SAP 函数HR_INFOTYPE_OPERATION报错](https://blog.csdn.net/ptpassword/article/details/131400421)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [HR_INFOTYPE_OPERATION_SAP刘梦_新浪博客](https://blog.csdn.net/senlinmu110/article/details/109652316)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值