cancel
Showing results for 
Search instead for 
Did you mean: 

FI Validation OB28 : using dynamic set for WBS

Former Member
0 Kudos

Dear Gurus,

I want to make validation in FI with OB28 to validate WBS number start with D910002* only valid for GL account 400000.

But, I find difficulties on how to create formula for D910002* ( this range is alphanumeric)

I created Basic Set (GS01) ZGL_COS , with dynamic set, I put range as D910002AAAAAA – D910002ZZZZZZ

My plan for validation will be as below :

Prerequisite :

BKPF-BUKRS = ‘1000’ AND BSEG-PROJK IN ZGL_COS

Check :

BSEG-HKONT = ‘400000

But I can’t Save it, SAP give error message as below :

The entry of group ZGL_COS_NONPOC is not valid

Message no. GR383

Diagnosis

The entry of set ZGL_COS_NONPOC2 is invalid, because it is a selection variant or contains a selection variant.

Since values that are selected with selection variants can change at any time without changing the definition of the group, selection variants cannot be used in the following positions:

•     In the columns of a Report Writer report

•     as default sets for set variables

System Response

The entry is rejected.

Procedure

Enter a group that does not contain a selection variant.

It seems SAP recognizes my data as “selection variant”.

Do you guys know how to validate WBS with alphanumeric ranges in the efficient way?

Thank you.

Accepted Solutions (1)

Accepted Solutions (1)

iklovski
Active Contributor
0 Kudos

Hi,

In the message ZGL_COS_NONPOC and ZGL_COS_NONPOC2 are mentioned. However, in the validation formula you described, I see no such sets. So, please, check where did you put a link to these groups.

Regards,

Eli

P.S. Also, if this is a range, you can manage it without a set. Just create a rule: BSEG-PROJK >= X AND BSEG-PROJK <= Y, where X and Y are the extreme values of the range

Former Member
0 Kudos

Apologize, I mean as below :

Prerequisite :

BKPF-BUKRS = ‘1000’ AND BSEG-PROJK IN ZGL_COS

Check :

BSEG-HKONT = ‘400000

But I can’t Save it, SAP give error message as below :

The entry of group ZGL_COS_COS is not valid

Message no. GR383

Diagnosis

The entry of set ZGL_COS  is invalid, because it is a selection variant or contains a selection variant.

Since values that are selected with selection variants can change at any time without changing the definition of the group, selection variants cannot be used in the following positions:

•     In the columns of a Report Writer report

•     as default sets for set variables

System Response

The entry is rejected.

Procedure

Enter a group that does not contain a selection variant.

**

If I put rule BSEG-PROJK >= X AND BSEG-PROJK <= Y, it only applies for numeric value, Cmiiw, my value are alphanumeric, like D90001.LDD.X1A , D90001.LDD.X1B, etc. So, basically I need to validate all D910001* ,


how should I apply this in the formula ?

Thank you

iklovski
Active Contributor
0 Kudos

It will apply also for alphanumeric values, not only to numbers.

Alternatively, please, clarify how you created your set, based on which field/table.

Former Member
0 Kudos

Hi Eli,

I want to validate Wbs element (BSEG-PROJK) with value D910002* (every Wbs that start from D910002)

I have tried your suggestion to use formula >= and <=, and but no success.

narasimhulu_konnipati
Active Contributor
0 Kudos

If i understand your query, then you want to allow certain WBS elements get posted to GL 40000.

Create a the basic set in GS01 with BSEG-PROJK as your base selection field.

Rest of the validation is same.

You should select the Set which you created in GGB0 and save it.

iklovski
Active Contributor
0 Kudos

The set is to be based on PSPR-PS_POSNR.

Former Member
0 Kudos

Hi Eli,

Thanks for your reply.

I can't use PRPS-PS_POSNR because Sap give errors "set & doesn't exist or can't be used"

Additionally, I used BSEG-PROJK in prerequisite as in my explanation above and not PRPS-PS_POSNR.

But, thanks anyway.

Former Member
0 Kudos

Hi Narasimhulu

Yes, that is my query. I used set BSEG-PROJK already, but sap give error as above. The point is how to limit only Wbs with D910002* (all Wbs start with the D910002).

I have tried to use >= and =<, no success

Put D910002* in the set and formula, no success

Put D910002AAAA - D910002ZZZZ in the set and formula, also no success.

I can't enter every Wbs element in my set because thats mean I have to maintain two times in Wbs master data and also in the set,

Anyone maybe has other ideas?

iklovski
Active Contributor
0 Kudos

Sorry, but I don't get your problem. Just out of curiosity I created a set based on PRPS-PSPNR and build a validation in the way you described: I have no errors whatsoever. Please, re-check that your set is created correctly.

Former Member
0 Kudos

You can't use PRPS-PSPNR, because in OB28 I am using BSEG-PROJK,

To make it clear, I will re-write my query :

I want to validate BSEG-PROJK with value only for D910002*, I have many wbs master data that start with D910002, (e.g. D910002.LDD.0010, D910002.XC1.0020, D910002.XY1.0020, etc.)

So I create OB28 as follow :

Prerequisite :

BKPF-BUKRS = ‘1000’ AND BSEG-PROJK IN ZGL_COS

Check :

BSEG-HKONT = ‘400000

ZGL_COS is a set based on BSEG-PROJK, using set with single value, because using Dynamic set will trigger error message as in my first posting.

In the set I can't use asterisk (*), which is required in my formula, I can't enter all my wbs in the set, because I will need to maintain the set every time there is new WBS with D910002*

I already tried to use >= and <= as you suggested, but no success,

Is there any other ideas ?

Hopefully my question is clear.

Really appreciate your response

Thank you very much.

iklovski
Active Contributor
0 Kudos

Don't base your set on BSEG-PROJK; base it on the table and field which I mentioned.

Former Member
0 Kudos

I use PRPS-PSPNR already and sap give error as below as in my previous posting:

"set zgl_cos doesn't exist or can't be used"

I think it is because I used BSEG-PROJK in prerequisite but use different table in the set PRPS-PSPNR.

I need to validate BSEG-PROJK in Fi posting, not PRPS-PSPNR in Wbs master data.

iklovski
Active Contributor
0 Kudos

The set and the corresponding field are not necessary to be the same. They just have to be based on the same data element. if PSPNR is not good, try POSID from the same table.

Former Member
0 Kudos

I have tried PSPNR, POSID, POSKI, all which has Wbs element in the value, but none of them working

*sorry for big font in my previous posting, coz I'm using my mobile phone to post.

Thanks anyway.

iklovski
Active Contributor
0 Kudos

No problem for the font

Ok, I see your point. I did some research and got to the conclusion, that you cannot do it with BSEG-PROJK. The values in BSEG-PROJK are converted WBS codes, i.e. internal codes used by SAP. So, even assuming that you can create a set with the values in question and use it in a validation, won't solve the problem.

You will be forced to use user-exit in your validation and convert the values. You can consult note

77268 - Conversion of sub-fields not correct for conversion information. If you are not familiar with user-exists in validation, consult note 842318.

Former Member
0 Kudos

Hi Eli,

Thank you for your reply,

I have also consult my colleague about this, and it seems there is no other way than to apply user exit,

I will try to implement this.

Thank you once again.

Case-closed.

Answers (1)

Answers (1)

0 Kudos

Hi there,

Have a look to the note below that may help:

169973 - Error GR383 although set variable is used

Former Member
0 Kudos

Hi angel,

Thanks for your reply,

Is applying this note would sort out the issue? Have you try this before?

Currently we are in no option to applying any notes because we don't want to make major changes to the system environment, but maybe we can use it as the last resort.

Thanks again.

former_member197737
Contributor
0 Kudos

Hi Rama,

If your account 400000 is a cost element you can try a CO validation (OKC7):

pre-requisite:


COBL-HKONT = '400000'

Check:

COBL-PS_POSID :1-7: = 'D910002'

Best Regards!

Former Member
0 Kudos

Hello,

The requirement is to validate in FI not in CO, as for uniformity.

But thanks anyway.