Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

How I check RFQ Long text in user exit/BADI/enhancement spot

0 Kudos

Dear Experts,

     I want to set some RFQ header long text as required fields. I try to read text in enhancement spot by using FM READ_TEXT and READ_TEXT_INLINE.

But

- READ_TEXT can get only text that was already saved.

- READ_TEXT_INLINE - It's OK when I change RFQ but I cannot use it when I created RFQ because there is no RFQ number.

Thanks for your help,

Duangsamorn.

3 REPLIES 3

Former Member
0 Kudos

Hi Duangsamorn,

Good day.

First try to find out whether the Header Text field can be made mandatory by any  Configuration settings which will be well know by Functional Consultants.

Secondly you can create a Transaction Variant using SHD0 Transaction and set the field as MANDATORY.

At Last as you have worked on READ_TEXT and READ_TEXT_INLINE Function modules you can write a small logic .

Thirdly Goto the respective Transaction and navigate to Long Text screen editor and Select Goto->Header in the Menu  .

For example I had taken WCTK Tcode

If you find the  :: Object ID as ''TM0000000001WA'' and Text ID LTXT in such format concatenate these two and use READ_TEXT Function Module and you can check whether the table entires are found .

For Change Transaction you can use the READ_TEXT FM as you wil be having the Header ID.

Thanks & Regards,

Seshadri.

0 Kudos

Dear Seshadri.

Thanks for your help.

First, I've already talk with functional. We cannot made it mandatory by any Configuration settings because it is not a field (we can set short text as mandatory but cannot set long text). Please suggest me if I wrong.

Secondly, I try SHD0 transaction and I think it will not help. There are many long text in RFQ header. The screen field name of every long text is the same(RM06E-LTEX1). I don't want to set every long text  to mandatory.

Thirdly, I confuse with your suggestion.

When I Select Goto->Header in long text screen. I found this information

  Text ID : A32

  Text Object : EKKO

  Text Name :                         (It's blank)

What should I do? Normally text name will be RFQ number.


Best regards,

Duangsamorn.

raymond_giuseppi
Active Contributor
0 Kudos

READ_TEXT can get only text that was already saved.

Actually No, READ_TEXT can read buffered data, so not yet saved.

(Look for catalog local in documentation, try some IMPORT catalog FROM MEMORY ID 'SAPLSTXD' to get list of text currently in memory, remember FG may use temporary keys for texts.)

(Better ?) Alternative : If you use BAdI ME_PROCESS_REQ_CUST, the received parameters carry Interface IF_LONGTEXTS_MM which allows you to read long text during processing.

  • For RFQ which exit/BAdI did you try, are you able to map/identify the current RFQ to an instance of an object which carries the Interface (e.g. instance of CL_PO_HEADER_HANDLE_MM)?

Regards,
Raymond