SAP BOM长文本存表

1 Introduction

In the passage We will introduce that how to save in the long text . We will use FM ‘SAVE_TEXT’ .

2 Code

   LOOP AT IT_STPOX WHERE IDNRK = GS_ALV-IDNRK AND POSNR  = GS_ALV-POSNR AND STLAL = GS_ALV-STLAL.
                UPDATE STPO SET LTXSP = '1' WHERE STLTY = IT_STPOX-STLTY AND STLNR = IT_STPOX-STLNR AND STLKN = IT_STPOX-STLKN AND STPOZ = IT_STPOX-STPOZ.
                CONCATENATE   IT_STPOX-STLTY  IT_STPOX-STLNR IT_STPOX-STLKN IT_STPOX-STPOZ  INTO GV_NAME1.
                DATA: U_NAME     TYPE TDOBNAME,
                      U_TDID     TYPE TDID,
                      U_TDOBJECT TYPE TDOBJECT,
                      U_SPLIT    TYPE STRING.

                DATA LV_NUM TYPE I.
                data lv_mod type i.

                CLEAR:GS_THEAD,GS_LINES,LV_NUM,LV_MOD.
                REFRESH GT_LINES.
                GS_THEAD-MANDT = SY-MANDT .
                GS_THEAD-TDOBJECT = 'BOM'.      "文本对象
                GS_THEAD-TDNAME = SY-MANDT && GV_NAME1.
                GS_THEAD-TDID ='MPO'.           "文本ID
                GS_THEAD-TDSPRAS = SY-LANGU."语言

                CLEAR:lv_mod,LV_NUM.

                LV_NUM = LV_LEN DIV 40.
                lv_mod = lv_len mod 40.
                LV_NUM = LV_NUM + 1.

                DO LV_NUM TIMES.
                   IF SY-INDEX EQ 1.
                      GS_LINES-TDFORMAT = '*'.
                      GS_LINES-TDLINE = GS_ALV-POTX1+0(40).
                      APPEND GS_LINES TO GT_LINES.
                   ELSEIF SY-INDEX EQ 2.
                      GS_LINES-TDFORMAT = '*'.
                      GS_LINES-TDLINE = GS_ALV-POTX1+40(40).
                      APPEND GS_LINES TO GT_LINES.
                   ELSEIF SY-INDEX EQ 3.
                       IF SY-INDEX EQ LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+80(LV_MOD).
                          APPEND GS_LINES TO GT_LINES.
                       ELSEIF SY-INDEX LT LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+80(40).
                          APPEND GS_LINES TO GT_LINES.
                        ENDIF.
                   ELSEIF SY-INDEX EQ 4.
                      IF SY-INDEX EQ LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+120(LV_MOD).
                          APPEND GS_LINES TO GT_LINES.
                       ELSEIF SY-INDEX LT LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+120(40).
                          APPEND GS_LINES TO GT_LINES.
                        ENDIF.
                   ELSEIF SY-INDEX EQ 5.
                       IF SY-INDEX EQ LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+160(LV_MOD).
                          APPEND GS_LINES TO GT_LINES.
                       ELSEIF SY-INDEX LT LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+160(40).
                          APPEND GS_LINES TO GT_LINES.
                        ENDIF.
                   ELSEIF SY-INDEX EQ 6.
                       IF SY-INDEX EQ LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+200(LV_MOD).
                          APPEND GS_LINES TO GT_LINES.
                       ELSEIF SY-INDEX LT LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+200(40).
                          APPEND GS_LINES TO GT_LINES.
                        ENDIF.

                   ELSEIF SY-INDEX EQ 7.
                      IF SY-INDEX EQ LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+240(LV_MOD).
                          APPEND GS_LINES TO GT_LINES.
                       ELSEIF SY-INDEX LT LV_NUM.
                          GS_LINES-TDFORMAT = '*'.
                          GS_LINES-TDLINE = GS_ALV-POTX1+240(40).
                          APPEND GS_LINES TO GT_LINES.
                        ENDIF.

                   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值