RANGES RS_HKONT FOR BSEG-HKONT. RS_HKONT-SIGN = 'I'. RS_HKONT-OPTION = 'CP'. RS_HKONT-LOW = '2241*'. APPEND RS_HKONT. CLEAR RS_HKONT. REFRESH: LT_OUTPUT.
时间: 2024-02-19 07:00:03 浏览: 160
这段 ABAP 代码的含义是:
1. 定义一个区间变量 RS_HKONT,用于存储 BSEG-HKONT 字段的值。
2. 设置 RS_HKONT 的筛选条件为 'I'(包含)和 'CP'(模糊匹配)。
3. 将 RS_HKONT 的范围设置为 '2241*',也就是以 '2241' 开头的任何值。
4. 将 RS_HKONT 添加到区间表中。
5. 清空 RS_HKONT 变量的值。
6. 刷新 LT_OUTPUT 表格变量。
这段代码的作用是筛选 BSEG-HKONT 字段以 '2241' 开头的所有值,并将结果存储在 LT_OUTPUT 表格变量中。
相关问题
RV_INVOICE_DOCUMENT_READ 写一个DEMO
RV_INVOICE_DOCUMENT_READ是一个SAP函数模块,用于读取SAP FI发票(Invoice)的相关信息。以下是一个简单的DEMO:
```
REPORT demo_rv_invoice_document_read.
DATA: lv_invoice_doc_num TYPE rbkp-belnr, " 发票号码
lt_invoice_items TYPE TABLE OF rseg, " 发票行项目
lt_invoice_tax TYPE TABLE OF bset. " 发票税额
* 设置发票号码
lv_invoice_doc_num = '10000001'.
* 调用函数模块 RV_INVOICE_DOCUMENT_READ
CALL FUNCTION 'RV_INVOICE_DOCUMENT_READ'
EXPORTING
belnr = lv_invoice_doc_num " 发票号码
TABLES
rseg_tab = lt_invoice_items " 发票行项目
bset_tab = lt_invoice_tax. " 发票税额
* 输出发票行项目信息
IF lt_invoice_items IS NOT INITIAL.
WRITE: / 'Invoice Items:'.
LOOP AT lt_invoice_items INTO DATA(ls_item).
WRITE: / ls_item-buzei, ls_item-hkont, ls_item-dmbtr.
ENDLOOP.
ENDIF.
* 输出发票税额信息
IF lt_invoice_tax IS NOT INITIAL.
WRITE: / 'Invoice Tax:'.
LOOP AT lt_invoice_tax INTO DATA(ls_tax).
WRITE: / ls_tax-shkzg, ls_tax-saknr, ls_tax-betrg.
ENDLOOP.
ENDIF.
```
注意:在实际使用中,需要根据具体的业务场景和需求,进行相应的参数设置和数据处理。
开发一个SAP通用会计凭证生成平台,用ABAP代码写一个出来
好的,下面是一个简单的SAP通用会计凭证生成平台的ABAP代码:
```
REPORT zgenerate_gj.
TABLES: bseg.
DATA: it_bseg TYPE TABLE OF bseg,
wa_bseg LIKE LINE OF it_bseg.
PARAMETERS: p_bukrs TYPE bukrs,
p_blart TYPE blart,
p_budat TYPE budat_d.
START-OF-SELECTION.
wa_bseg-bukrs = p_bukrs.
wa_bseg-blart = p_blart.
wa_bseg-budat = p_budat.
wa_bseg-shkzg = 'S'.
wa_bseg-hkont = '100000'.
wa_bseg-wrbtr = '1000'.
APPEND wa_bseg TO it_bseg.
CLEAR wa_bseg.
wa_bseg-bukrs = p_bukrs.
wa_bseg-blart = p_blart.
wa_bseg-budat = p_budat.
wa_bseg-shkzg = 'H'.
wa_bseg-hkont = '200000'.
wa_bseg-wrbtr = '-1000'.
APPEND wa_bseg TO it_bseg.
CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
EXPORTING
documentheader = wa_bkpf
TABLES
accountgl = it_bseg
EXCEPTIONS
document_not_posted = 1
err_document_number = 2
err_date_invalid = 3
err_currency_not_found = 4
err_company_not_found = 5
OTHERS = 6.
IF sy-subrc = 0.
WRITE: / 'SAP通用会计凭证生成成功!'.
ELSE.
WRITE: / 'SAP通用会计凭证生成失败!'.
ENDIF.
```
代码中使用了SAP提供的BAPI_ACC_DOCUMENT_POST函数来生成通用会计凭证。首先,定义了一个bseg表的内部表it_bseg,用于存储会计凭证的分录数据。然后,根据输入的参数p_bukrs、p_blart、p_budat生成两条分录数据,并添加到it_bseg中。接着,调用BAPI_ACC_DOCUMENT_POST函数生成会计凭证,并根据返回值判断生成是否成功。最后,输出相应的结果信息。
需要注意的是,代码中只生成了两条分录,实际应用中需要根据业务需求生成相应的分录数据。
阅读全文