2006 May 28 8:33 AM
in this user exit i made
I_AKTYP = 'X'.
i_essr-lblni = '1212121'.
and i get message that this structure cannot be change why?
2006 May 28 9:21 AM
Hi
because I_ESSR and I_AKTYP are importing parameters and these kind of parameters of fm can't be changed.
It can change only exporting, changing and table parameters.
Max
2006 May 28 9:19 AM
Rani,
The parameters I_AKTYP AND I_ESSR might be importing only not changing or exporting.
So, that is why error is being thrown. Take a look at the function moduel parameters specifications.
Regards,
Ravi
Note : Please mark the helpful answers
2006 May 28 9:21 AM
Hi
because I_ESSR and I_AKTYP are importing parameters and these kind of parameters of fm can't be changed.
It can change only exporting, changing and table parameters.
Max
2006 May 28 9:23 AM
do you have an idea how can i update the reference field
(xblnr) in the service entry sheet table essr during the savig action
2006 May 28 9:27 AM
May be you will have to find a different user exit which will give these parameters in change mode.
Else, you need find a BADI, if one is available for service entry sheet.
Regards,
Ravi
Note : Please mark the helpful answers
2006 May 28 9:30 AM
Hi
You can try to use another exit or try by field-symbols:
FIELD-SYMBOLS: <FS> TYPE ESSR.
DATA: STRUCTURE_NAME(20) VALUE '(XXXXXX)YYYY'.
ASSIGN (STRUCTURE_NAME) TO <FS>.
<FS>-XBLNR = .......
XXXXXX is name of main program where structure YYYY is defined, so you have to find XXXXXX program and YYYY structure by debug.
Max
2006 May 28 9:47 AM
hi guys.
if you can see in my previos QA i ask about it and i get
ANswer of this user exit and 021 too.
i asked for examp but you told me it's simple??
2006 May 28 9:58 AM
Hi Rani
Use EXIT_SAPLMLSR_010 (Set Entry Sheet Header Data) exit to change XBLNR.
Here in ESSR structure youc an set XBLNR value and export the same.
Regds
Manohar
2006 May 28 10:01 AM
thank you
i found it to but i have in 20 data that's good for me to select ( i_essr) .
i can do user exit in user exit
in 20 to call 10.
like this
it_ESSR-lblni = itab-lblni.
call function 'EXIT_SAPLMLSR_010'
exporting
i_ekko = it_ekko
i_ekpo = it_ekpo
changing
c_essr = it_ESSR
.
2006 May 28 10:06 AM
Hmmm. No you cannot do this, as the program flow gets disturbed.
Anyway you will also get data of ESSR in 10 exit aswell.
If you want to transfer data between exits then you have to export and import the memory variables.
Regards
Manohar
2006 May 28 10:16 AM
----
INCLUDE ZXMLUU27 *
----
loop at itab assigning <ls_itab>.
select single aufnr
from ebkn
into <ls_itab>-aufnr
where banfn = <ls_itab>-banfn
and bnfpo = <ls_itab>-bnfpo
and loekz = ' '.
endloop.
it_ESSR-lblni = itab-lblni.
call function 'EXIT_SAPLMLSR_010'
exporting
i_ekko = it_ekko
i_ekpo = it_ekpo
changing
c_essr = it_ESSR
.
how could i do it?
PLS
2006 May 28 10:24 AM
Rani,
If both the user exits are firing, why do you want to call 10 from 20. And more over calling like that will not work. Because even if you are able to change the values in 10, ultimately the values will have to be passed through 20.
So, you need to make sure that 10 fires and you changes the values there.
Regards,
Ravi
2006 May 28 10:25 AM
Hi Rani,
I suggest in using only 010 exit. Here you will get banfn & bnfpo values to , then you can set xblnr.
you can only set non-key values.
In your code above you are trying to change ENTRY SHEET NUMBER. Is this the requirement?
Regds
Manohar
2006 May 28 10:27 AM
2006 May 28 10:30 AM
Field for External entry sheet number is LBLNE, you are trying to change the key LBLNI (Entry sheet number).
Regds
Manohar
2006 May 28 10:45 AM
opposit
i need to change LBLNE i have LBLNI
with this data i need to update LBLNE
2006 May 28 10:48 AM
Hi
I checked the exit EXIT_SAPLMLSR_010 and it can change only the values of the fields of enhancement structure.
So I don't think you can change a value of a standard field.
You should do this thing:
set a break-point in EXIT_SAPLMLSR_010 and find the point if standard program where this exit is called, after past (in a post) the abap code placed before calling it.
In this way we can see the standard program used before calling the exit and perhaps we can explain you a way to change a value for standard field.
-
> I'm very sorry
I'm wrong the exit EXIT_SAPLMLSR_021 is to change the data for enhancement structure, so EXIT_SAPLMLSR_010 should be good for you.
The exit EXIT_SAPLMLSR_010 and EXIT_SAPLMLSR_020 belong to the same function group so they can read all global data of function group.
I don't know where and how you fill the ITAB table, but if you define it in include ZXMLUTOP (in std LXMLUTOP), this table'll be able to be read by both user-exit.
So in EXIT_SAPLMLSR_020 you'll do the reading:
loop at itab assigning <ls_itab>.
select single aufnr from ebkn into <ls_itab>-aufnr
where banfn = <ls_itab>-banfn
and bnfpo = <ls_itab>-bnfpo
and loekz = ' '.
endloop.
C_ESSR-lblni = itab-lblni.
and in the exit EXIT_SAPLMLSR_010 you set the value
it_ESSR-lblni = itab-lblni.
You haven't call this last exit in the EXIT_SAPLMLSR_020, but you have to check the sequence: the EXIT_SAPLMLSR_020 should be triggered before EXIT_SAPLMLSR_010, shouldn't it?
Max
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |