0

Derivation of Funded Program from WBS using Assignment

Apr 21 at 11:48 AM

42

Hi all,

I have to derive Funded Program from WBS on a 1:1 relationship. I want to achieve this using assignment which will make it easy for user because they don't have to maintain derivation every time they create a new WBS. WBS number has separators and i also did the same with the Funded Program for example:

WBS 5.222.1 = FP 5.222.1 The problem is when I derive the funded program, the system takes out the separators on deriving the funded program.This is because the WBS is stored without separators in table PRPS, whilst the Funded Program is stored with separators in table FMMEASURE . So when I run the derivation using assignment, the result comes out as on the below screen.

wbs-fp.png

Please advise on how I can have the Funded Program to be derived with separators.

Regards

Jordan



wbs-fp.png (26.5 kB)
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Eli Klovski Moderator SAP Mentor Apr 21 at 11:57 AM
0

Hi,

Instead of 'assignment, use rule of type 'function module' and select this one: FMDT_READ_MD_WBS_ELEMENT.

There you have both values of WBS - converted and non-converted. You can take whatever you want and pass it to Funded program.

Regards,

Eli

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

Hi,

Thanks I will try this and get back to you.

Regards

Jordan

0

Hi Eli,

I have used the function module as advised.

poski.png

WBS source field is POSID which does not contain special characters. That means when deriving the Funded Program, the system counts the number of characters from the WBS field. For example WBS 52221 is derived to FP 5.222 because the number of characters are 5. This is not correct because it should come out as 5.222.1.

How do I manage this?

Regards

Jordan

poski.png (37.8 kB)
0
I don't follow you... what is limited to 5 characters and why?

POSID includes dots, commas, etc.


0

Hi Eli,

In our case POSID doesnt include dots, but POSKI is the one which does. So because the functional module is reading POSID as source field, it derives the Funded Program using the number of characters found in POSID. In the example I used above, POSID = 52221, whilst POSKI = 5.222.1, so Funded Program is derived as 5.222 and gives an error.

Regards

Jordan

0

Your screenshot makes sense, but the result you are describing does not :)

The module shouldn't care less if the length of POSID is 5 characters or less. As soon as it identifies the line, it should take the value of POSKI (in your case, since it's there where you keep this dotted version) without any restriction on the length, unless you specify it deliberately.

Well, if standard FM doesn't work (though, I cannot see why), you can use a user-exit and do exactly the same: approach PRPS with WBS value and store POSKI value in FMDERIVE.

0