$(function () { pageContext.i18n.modTalk = 'moderation talk'; pageContext.i18n.replyToComment = 'Reply'; pageContext.i18n.modTalkEmpty = 'moderation talk is empty'; pageContext.url.getModTalk = "/comments/%25ID%25/listModTalk.json"; pageContext.url.possibleCommentRecipients = "/comments/%ID%/possibleRecipients.json"; pageContext.url.commentEdit = '/comments/%25ID%25/edit.html'; pageContext.url.commentView = '/comments/%ID%/view.html'; pageContext.i18n.commentVisibility = { 'full': 'Viewable by all users', 'op': 'Viewable by the original poster', 'mod': 'Viewable by moderators', 'opAndMod': 'Viewable by moderators and the original poster', 'other': 'Advanced visibility', 'dialogTitle': 'Comment visibility', 'selectGroups': 'Visible to groups', 'selectOther': 'Other recipients', 'selectOriginalPoster': 'Original poster', 'selectModerators': 'Moderators', 'selectAssignees': 'Asked to answer users' }; pageContext.i18n.commentMenuLabels = { 'comment-edit': 'comments.menu.edit', 'comment-delete': 'comments.menu.delete', 'comment-convert': 'comments.menu.convert' };pageContext.i18n.answer= { bestAnswer: 'Best Answer', controlBar : { accept: 'Accept', unaccept: 'Unaccept', acceptCommand: 'Accept this answer as correct', cancelAcceptedCommand: 'Remove this answers accepted status' } }; window.croles = { u: false, op: false, m: false, og: false, as: false, ag: false, dc: false, doc: false, eo: false, ea: false }; tools.init({ q: { e: false, ew: false, eo: false, r: false, ro: false, d: false, dow: false, fv: false, c: false, co: false, p: false, tm: false , ms: false, mos: false }, n: { f: false, vf: false, vfo: false, vr: false, vro: false, c: false, co: false, vu: false, vd: false, w: false, wo: false, l: false }, c: { e: false, eo: false, d: false, dow: false, ta: false, tao: false, l: false }, a: { e: false, ew: false, eo: false, d: false, dow: false, a: false, aoq: false, ao: false, tc: false, tco: false, p: false, tm: false }, pc: croles }, { tc: true, nsc: true }); commandUtils.initializeLabels(); }); Skip to Content

Restrict match code F4 tax code on ME21N - Purchase order

May 19, 2017 at 08:40 AM


avatar image

Hi Experts,

I need to restrict the F4 "hit list" of Tax Codes by the Company Code inserted on the PO header, on t-codes ME21N/ME22N/ME23N.

Would anyone know how to customize tax code field in Invoice tab restricting access to certain values that appear in the F4 search help screen?

I already created validation of the inserted tax code by implementing BAdI ME_PROCESS_PO_CUST. What I now need is to customize the search help for the field...

I know that there's the option to select personal list, but that will not restrict users access to certain tax codes...


10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

2 Answers

Peter Jonker May 19, 2017 at 09:44 AM

One option is to use a search help exit function module where you check the result before display and delete the entries which you do not want the user to see. This FM you can add to the search help. I think you should check the transaction code or program in which the search help is called to restrict the exit only to the transaction codes and/or programs where you want to use this filter.

Show 5 Share
10 |10000 characters needed characters left characters exceeded

Hi Peter Jonker,

Thanks for your prompt reply.

This is the standard search help for field tax code on PO screen: SH_T007A

I can see there's exit F4_TAXCODE_USER_EXIT.

The only way to change results that appear in the matchcode hit list would be to implement an implicit enhancement point in the exit.

And that's not something I was willing to do: enhance standard code...


You have no other choice, haven't you? Or abandon the requirement.


Hi Sandra,

Thanks for your reply.

But abandon the requirement? I don't think that's a good idea...

That's definitely not an option on my list.

Anyway, implementing an implicit enhancement point is one way to go.

Anyone know more options?


I don't understand why you hesitate. Is Enhancement Framework evil? ;-)


Don't think it's evil, just looking for better options...

Jürgen L May 19, 2017 at 12:49 PM

do you already have already this OSS note in your system?

1175497 - F4 help MWSKZ in FB01 ME21N ME31K for CoCd w/o Plants Abroad

Show 2 Share
10 |10000 characters needed characters left characters exceeded

Hi Jürgen,

Thanks for you reply.

I read note 1175497, but couldn't figure out how this would help me.

I need to customize the tax code F4 list, depending on the company code in the header of PO.


let us assume this OSS note provides a code fix that makes your program do exactly what you want...

as it says "Implement the correction instructions.....Afterwards, the tax codes displayed in the F4 help are all those

assigned to the company code country"