09-15-2014 11:25 AM
Hi all,
I got this dump after providing Purchase Order test using BAPI to the material. What i am trying to do here is give the text with maximum characters length. Providing text was successful. but i am getting this DUMP when i am checkting the same using MM03. where as if i upload double the length of text from a file and chek the same in MM03 i am not getting this DUMP. Kindly explain this to me.
Category ABAP Programming Error
Runtime Errors IMPORT_DECOMPRESS_FAILED
Except. CX_SY_COMPRESSION_ERROR
ABAP Program SAPLSTXD
Application Component BC-SRV-SCR
Date and Time 15.09.2014 14:44:52
Short text
Error when decompressing during IMPORT.
What happened?
Error in the ABAP Application Program
The current ABAP program "SAPLSTXD" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_COMPRESSION_ERROR', was not
caught in
procedure "READ_TEXTLINES" "(FORM)", nor was it propagated by a RAISING clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
When IMPORTing compressed data, an error occurred when
decompressing.
Unable to read an IMPORT dataset.
The dataset may have been processed using SQL and is
thus no longer readable for the IMPORT.
Missing RAISING Clause in Interface
Program SAPLSTXD
Include LSTXDFDB
Row 75
Module type (FORM)
Module Name READ_TEXTLINES
Trigger Location of Exception
Program SAPLSTXD
Include LSTXDFDB
Row 106
Module type (FORM)
Module Name READ_TEXTLINES
Source Code Extract
76 using rt_header structure thead
77 rt_client.
78 DATA: l_fol type char2.
79 DATA: l_foli type i value 84.
80 DATA: l_cp like tcp00-cpcodepage.
81 DATA: l_unich type i.
82 DATA: l_flg type char1.
83 DATA: l_sypr LIKE tcp0c-langu.
84 DATA: l_count LIKE tcp0c-country.
85 DATA: l_mod LIKE tcp0c-modifier.
86
87 refresh rt_lines.
88 move-corresponding rt_header to stxl_id.
89 * only for nonunicodesystems:
90 * the import-statment contains a conversion from internal cp
91 * to the codepage of language key.
92 * if the import-process can't assign a codepage it is using
93 * the actual systzem-codepage. So we make a SET LOCALE
94 l_unich = CL_ABAP_CHAR_UTILITIES=>charsize.
95 IF l_unich = 1.
96 GET LOCALE LANGUAGE l_sypr COUNTRY l_count MODIFIER l_mod.
97 CATCH SYSTEM-EXCEPTIONS localization_errors = 1.
98 SET LOCALE LANGUAGE rt_header-tdspras.
99 ENDCATCH.
100 IF sy-subrc <> 0.
101 SET LOCALE LANGUAGE l_sypr.
102 ENDIF.
103 ENDIF.
104
105 if rt_header-tdtexttype is initial. "SAPscript format
>>>>> import tline to rt_lines
107 from database stxl(tx)
108 client rt_client
109 id stxl_id
110 ACCEPTING TRUNCATION "important for Unicode->Nonunicode
111 IGNORING CONVERSION ERRORS.
112 else. "non-SAPscript text
113 import tline to rt_lines
114 from database stxb(tx)
115 client rt_client
116 id stxl_id
117 code page into l_cp
118 ACCEPTING TRUNCATION
119 IGNORING CONVERSION ERRORS.
120 perform convert_lines_text_2_bin tables rt_lines "B20K067422
121 using l_cp
122 changing rt_header.
123 if l_unich = 1 and ( rt_header-tdtexttype = 'RTF' or rt_header-tdtexttype = 'DOC' ).
124 * special process for new FES-OFFI handling in nonunicodesystems.
125 * now the lines without lengthvalue can be handled
Regards.
09-15-2014 11:28 AM
Dear Satish
Can you please rephrase your question. What steps exactly you took? How is PO and material text you are linking?
Nabheet
09-15-2014 11:41 AM
Hi,
We have a Purchase Order Long text in material master. We could upload the same using BAPI_Material_Savedata by giving the text in MATERIALLONGTEXT. I do not have issues while executing the bapi. i got this dump when checking the same in transaction MM03.
that too if i give some 6500 records in MATERIALLONGTEXT for the same material.
09-15-2014 11:49 AM
Hi,
but it looks that you have created corrupted MATERIALLONGTEXT using the BAPI ...
Regards,
Klaus
09-15-2014 11:56 AM
09-15-2014 12:09 PM
Yes, corrupted.
Wrong text length, codepage conversion errors (UPLOAD !), special characters (CR+LF, HORIZONTAL_TABS, ...), unicode issues, anything that corrupted the text.
Please check the SAP note below.
Regards,
Klaus
09-15-2014 12:22 PM
One small doubt.. why i am not having problem for 6400 text lines and why i am getting if i only exceed this limit. Via BAPI.
AND why i am not getting any issue at all when i upload text from a file in material master.
Regards
Chinta
09-15-2014 1:00 PM
Hi,
you can check if the text is corruptes with steps 1 to 3 of the SAP note below.
Regards,
Klaus
09-15-2014 11:31 AM
Hi,
please check the following SAP note:
http://service.sap.com/sap/support/notes/1937163
Regards,
Klaus
09-16-2014 5:11 AM
Thank You for the reply,
i ran the report given in the note well, the outcome of the report is this.
"
Error CONNE_ILLEGAL_TRANSPORT_HEADER: 0000 destroyed texts were found
Error IMPORT_MISMATCH_ERRORS: 0000 destroyed texts were found"
Does this mean i have created a corrupted data...if then, how to resolve it.
But, i get this same message even for the material which does not give me dump. 😞
Regards,
Chinta
09-16-2014 5:59 AM
Hi Chinta,
when you ran the report RSTXSCNL you got 0000 destroyed texts. Both counters were zero.
But how did you call the report?
RELID: TX
Object: MATERIAL
Run this report with empty select options for
to get all corrupted material texts.
If you want to run this report for a single material, if the material is numeric you have to pass all 18 digits, for example for material 35117 you have to write 000000000000035117 in field name to get the result from table STXL.
Regards,
Klaus
09-16-2014 6:11 AM
Dear Klaus,
I ran the report by giving all fields of information. and i also did ran it by not giving any values except
RELID: TX
Object: MATERIAL. in both cases i got the same message. check below.
case1:
report with select options for
RELID: TX
Object: MATERIAL
Result:
Error CONNE_ILLEGAL_TRANSPORT_HEADER: 0000 destroyed texts were found
Error IMPORT_MISMATCH_ERRORS: 0000 destroyed texts were found
report with empty select options for
RELID: TX
Object: MATERIAL
Result:
Error CONNE_ILLEGAL_TRANSPORT_HEADER: 0000 destroyed texts were found
Error IMPORT_MISMATCH_ERRORS: 0000 destroyed texts were found
09-16-2014 6:25 AM
Hi Chinta,
then continue with step 4 of the note and post the data of the text that causes the dump:
Regards,
Klaus
09-16-2014 9:34 AM
Klaus i am getting Dump if i use Read_text.
could u tell me what is the importance of the field SRTF2 and CLUSTR in the table STXL.
i see materials which are giving Dump have values either 0 or empty in SRTF2 and 7902 in CLUSTR.
and the materials which are not giving dump have multiple representation in this table and the field SRTF2 has values in seq 1, 2, 3....and so on.
and for the same materials atleast one value will be less than 7902 in CLUSTR.
could you explain it.
Regards
Chinta
09-16-2014 9:44 AM
Hi Satish,
Please check if any special characters or symbols exists in purchase order text for that material.
Remove that symbol and try to check with read_text.
Regards,
Prakash.
09-16-2014 9:57 AM
Prakash,
If special characters were issue, why would i wont get dump on some materials for all the materials i am using the same text.
Regards
09-16-2014 12:47 PM
Hi Chinta,
I'm low on ideas now. What you can do is the following:
Start report RSTXSCNL for the text causing the issue.
Set a break-point at line
if sy-subrc eq 1.
after the import. Check SY-SUBRC and the content of table lines.
I'm still believing, that the text is corrupted by the BAPI, but the report doesn't find it. The import in the report and in function module are a little bit different.
Please post the results. Can you find strange characters in table lines ?
Regards,
Klaus
09-17-2014 4:57 AM
Good Morning Klaus,
I did as you said, now i am getting dump while running this report also.
69
70 elseif stxl-relid eq 'TX'. " SAPscript Text Objects
71 catch system-exceptions import_mismatch_errors = 1.
>>>>> import tline to lines from database stxl(tx)
73 client stxl-mandt
74 id stxl_id.
75 endcatch.
76 if sy-subrc eq 1.
77 perform write_corrupted_text_id
78 using 'IMPORT_MISMATCH_ERRORS'.
Regards,
Chinta
09-17-2014 5:53 AM
Good Morning Chinta,
now it should be clear, that the text is corrupted and has to be deleted either (if possible) with report RSTXSCNL (but there should occur the dump) or with function module DELETE_TEXT as described in SAP note 1937163 step 3.
All corrupted texts are useless and can't be used anyway. So they should be deleted.
To find the reason you should debug the BAPI while uploading the text.
When you save a .txt file with the Microsoft Editor of Windows 7, then you can choose the text format between ANSI (plain text), Unicode, Unicode Big Endian and UTF-8. I don't know, if this is also available in Windows 8.x or for Mac OS, but you should try to upload ANSI (plain text) and eliminate special signs like horizontal tabs ( CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB ) and more.
Regards,
Klaus
09-17-2014 7:24 AM
Klaus,
After executing DELETE_TEXT. I still have the same issue.
Regards
Chinta
09-17-2014 7:54 AM
09-17-2014 8:57 AM
Hi Chinta,
after DELETE_TEXT tables STXH, STXB and STXL should not contain the text for your material any more. Please check this. You can also debug DELETE_TEXT to see any issues.
Regards,
Klaus
01-29-2015 2:27 PM
Hi Chinta,
I understand this is a older post (4 months old) but i came across similar scenario recently. Try using FM 'COMMIT_TEXT' after the 'DELETE_TEXT' is executed. That commits the deletion.
Thanks
Kiran