How to Upload Long Text into SAP Using Excel Sheet and SAVE_TEXT Function Module
Many times user may have requirement during uploading the data into SAP as below points.
- Upload the Long Text into SAP Using Excel Sheet (i.e. here I am explaining about a PO Text in MM Screen).
- Long Text Readable within text area no need to use horizontal bar.
Screen Shot # 1
- Create a Copy of “ALSM_EXCEL_TO_INTERNAL_TABLE” SAP Standard Function Module
into Custom Function Module “YALSM_EXCEL_TO_INTERNAL_TABLE” .
Screen Shot # 2
Screen Shot # 3
Create a “Z” Copy of “ALSMEX_TABLINE” and Increase the “Value” Field Size i.e. here I am use 2000 character , you can take as per your requirement .
Screen Shot # 4
- Create Custom Upload Program using above Custom Functional Module.
TYPES: BEGIN OF TY_ITAB ,
MATNR(18) TYPE C,
LMAKTX(2000) TYPE C,
ROW TYPE I,
TSIZE TYPE I,
END OF TY_ITAB.
“ Data Declarations – Internal Tables
DATA: I_TAB TYPE STANDARD TABLE OF TY_ITAB INITIAL SIZE 0,
IT_EXLOAD LIKE ZALSMEX_TABLINE OCCURS 0 WITH HEADER LINE,
IT_LINES LIKE STANDARD TABLE OF TLINE WITH HEADER LINE,
IT_TEXT_HEADER LIKE STANDARD TABLE OF THEAD WITH HEADER LINE,
WA TYPE TY_ITAB ,
P_ERROR TYPE SY-LISEL ,
LEN TYPE I .
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-002.
PARAMETERS:PFILE TYPE RLGRAP-FILENAME OBLIGATORY, “Excel File Name with Path
W_BEGIN TYPE I OBLIGATORY, “Excel Row beginning
W_END TYPE I OBLIGATORY. “Excel End Row
SELECTION-SCREEN END OF BLOCK B1.
IF PFILE IS INITIAL.
MESSAGE S368(00) WITH ‘Please input filename’. STOP.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR PFILE.
“ F4 Help getting Excel File Name with Comlete Path
FORM F4_FILENAME .
CALL FUNCTION ‘F4_FILENAME’
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FILE_NAME = PFILE .
“Read Legacy Data Transfer from Excel using Custom Function Module
FORM EXCEL_DATA_INT_TABLE .
CALL FUNCTION ‘YALSM_EXCEL_TO_INTERNAL_TABLE‘
FILENAME = PFILE
I_BEGIN_COL = ‘0001’ “Excel Beginning Column
I_BEGIN_ROW = W_BEGIN
I_END_COL = ‘002’ “Excel End Column
I_END_ROW = W_END
INTERN = IT_EXLOAD.
ENDFORM. ” EXCEL_DATA_INT_TABLE
“Transfer Excel data into internal table
FORM EXCEL_TO_INT .
LOOP AT IT_EXLOAD .
WA-MATNR = IT_EXLOAD-VALUE. “Material Number Leading with Zero
WA-LMAKTX = IT_EXLOAD-VALUE. “ Material Long Text
AT END OF ROW1.
WA-TSIZE = STRLEN( WA-LMAKTX ) . “Finding String Length using STRLEN
WA-ROW = IT_EXLOAD-ROW1 . “Adding Current Row Num into Internal table
APPEND WA TO I_TAB.
CLEAR WA .
ENDFORM. ” EXCEL_TO_INT
“Maintain Header, Item data and pass into “SAVE_TEXT” to save to Long Text
DATA OFF TYPE I VALUE ‘0’.
LOOP AT I_TAB INTO WA.
* Create Header
IT_TEXT_HEADER-TDID = ‘BEST’. “ Text ID for Material Master
IT_TEXT_HEADER-TDSPRAS = SY-LANGU . “ Login Language Key
IT_TEXT_HEADER-TDNAME = WA-MATNR. “Material Number leading with Zero
IT_TEXT_HEADER-TDOBJECT = ‘MATERIAL’. “ Text Object
MOVE WA-TSIZE TO LEN .
LEN = LEN / 53 + 1. “Finding Number of Row’s taken by Long Text
“ Note : Number of Row Required for Long Text Display
= Total length of long text / Number Character’s in one Row + 1
Here I am taken 53 number of character in each row ,
because in Material Master Long Text Area Display 53 Character without using Horizontal Bar . “
DO LEN TIMES .
MOVE ‘*’ TO IT_LINES-TDFORMAT.
MOVE WA-LMAKTX+OFF(53) TO IT_LINES-TDLINE.
SHIFT IT_LINES-TDLINE LEFT DELETING LEADING ‘ ‘.
OFF = OFF + 53 .
CLEAR IT_LINES .
Using SAVE_TEXT Functional Module Save Long Text to SAP
AT END OF ROW.
CALL FUNCTION ‘SAVE_TEXT’
CLIENT = SY-MANDT
HEADER = IT_TEXT_HEADER
INSERT = ‘ ‘
SAVEMODE_DIRECT = ‘X’
LINES = IT_LINES
ID = 1
LANGUAGE = 2
NAME = 3
OBJECT = 4
OTHERS = 5.
* Check the Return Code
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4 INTO P_ERROR.
CLEAR: WA ,LEN , OFF.
REFRESH IT_LINES .
ENDFORM. ” CONTOL_PARAMETER
Screen Shot # 13
Screen Shot # 14
Screen Shot # 15
Note – 933420 – ALSM_EXCEL_TO_INTERNAL_TABLE
Source Code Available in Wiki : How to Upload Long Text into SAP Using Excel Sheet and SAVE_TEXT Function Module – ABAP Developme…
Nice Document for Go-Live Phase.
🙂 thanks Bisweswar ...
Good Document.... Thanks for sharing....
Thanks Ramesh.. 🙂
Thanks Smruti 🙂
Thanks for sharing Good Document.......
This document is helpful for us, we work on the similar concept.!
Keep posting..... with New Ideas......
Yeah Sure ..
Thanks Asif .. 🙂
Good One...Many Thanks.
Good work Smruti. This is the one which is always missed by LSMW.
Thanks Ravi 🙂
It could have been a real good document.
But somehow the new style of documenting seems to be to just post screen shots of content that could easily posted as text in the document itself
No explaining words, of course an ABAPer can read the screen shots, but you tagged it as well for beginners... beginner would need some explanation
And not to forget the SCN search searchs for words, it is not able to search by words that are contained in screen shots.
Good advice Jurgen.
Thanks for Good Advice 🙂 , Now the Document is Updated .
Thumbs up, much better now.
Good effort dear Smruti !!! 🙂
Thanks Amala 🙂
Nice Document....thanks for sharing.
Thanks Shashi 🙂
Now it really helpful to copy & use.
Good detailed document there.
Thanks Jothivenkatesh.. 🙂
It's a great article to share. Thanks, and hopefully you would be able to bring out more!
Thanks Wang... 🙂
Thanks for sharing
Thanks Akberhusain .. 🙂
Well done! Thanks.
Thanks Erek 🙂
Thanks for sharing .Nice one.
Thanks Jaffer .. 🙂
Very Nice 🙂
Thanks Uday 🙂
Thanks Jinto... 😉
Helpful..thanks for sharing 🙂
Thanks Farid 🙂
Nice Job...Great Work...Thanks for sharing.
Thanks Krishna 🙂
You have done good document. many of them geting problem with uploading the long text so it will use ful for us.
Thanks Om 🙂
Very good article on using of FM SAVE_TEXT
Thanks Ashish 🙂
Thanks for your contribution to the Community.
Thanks German Meyer 🙂
Well explained. Thanks for sharing
Thanks Anoop 🙂
Helpful document 🙂
Thanks Kiran 🙂
Very helpful document and thanks a lot sharing knowledge.
Thanks Riju Thomas.. 🙂
Its very Help full document for Functional Consultant. Thanx for Sharing.
Thanks Priyaranjan ... 🙂
Informative information Smruti Ranjan Mohanty
Thanks Hemanth.. 🙂
Simple and useful INFO, Thanks For Sharing.
Thanks Giri Peram... 🙂
nice article thanks
Thanks Martin 🙂
Thank you for sharing knowledge! ➕
Perfect and excellent. Thank you very much. 🙂
all the best Erwin
Thanks Erwin Leitner 🙂
Good Article ... Thanks for sharing... 🙂
Thanks rajesh bethamcharla 🙂
Thanks for sharing...learned a lot.Was very interesting. Looking forward for some more doc like this in near future.
Yeah Sure.Amaranatha Madhaba..Thanks 🙂
Nice document with detailed steps.
Thanks Modadugu Hemanth Kumar 🙂
Nice document 🙂 ..............
Thanks ravindra devarapalli 🙂
Good to know such functionality.Really helpful dear Smruti Ranjan Mohanty.
But I have one question when you are uploading the long text it is going to save in which PO as I not found any PO no in the upload screen.
Thanks Suman Sardar 🙂
As per your question , i am used above example to uploading 'Long Text' to Material Master (i.e. MM02 ), here you find Material Number , Not PO Number .
Note: The main focus area How To Upload Long Text in to SAP Using Excel Sheet .
Thanks for the expalnation Smruti Ranjan Mohanty 🙂
Anyway great to know such things.
Nice document. thanks for sharing.
Thanks Srinivas S 🙂
Useful one!!! 🙂
Thanks Chandra Shekhar Agarwal 🙂
Thanks for sharing such a useful info.
I don't know how many people tried this logic, but when I tried you logic i am unable to upload more than 255 character from excel into internal table
Can you please share sample code as in ZIP format that really helps to me.
How to Upload Long Text into SAP Using Excel Sheet and SAVE_TEXT Function Module - ABAP Developme...
Check above Wiki link. and you need create some custom objects ..for Refer this Document Screen Shot # 2, 3, 4.
Good Work. Thank you for sharing Knowledge!
Thanks SHARDA DAS ..
Thanks Smruti for sharing the document. Its reall informative.
However, i when i upload the long text, i cannot see it in po text view in mm03 but when i use READ_TEXT FM i can see the Uploaded text.
what could be issue?
My question relates to the long text, but it does not relate with extraction or anything like that. I'm drawing blanks on how to activate the long text button located in document data tab inside of the material master?? I need to get this activated in order to input information relating between the document that's listed in that particular material master.