cancel
Showing results for 
Search instead for 
Did you mean: 

Update 0Person data(time dependant) from rows to columns

0 Kudos

Hello All,

I have a generic extractor based on PA0006 infotype (addresses) coming into BW. Now, my PSA has multiple records in ROWS for same person with different ANSSA (address type). We essentially need to segregate the two address types '5' (mailing address) and '1' (permanent address) coming in rows in the PSA and set them in columns in the master data characteristic infoobject 0PERSON. The mailing and permanent addresses may or may not have same start/end dates so that's the caveat.

How can I best make this possible through start routine or end routine or field rules? Kindly share the logic.

Thank you for your inputs.

Best,
M

Accepted Solutions (0)

Answers (1)

Answers (1)

john_hawk
Active Contributor
0 Kudos

Hi Meera

I don't have access to an ECC system, so I will have to work from memory.

Let's break this problem into multiple parts.

1) Selecting the current record

Does your organization use a default of '99991231' as the default end date for current records?

Add a filter to the InfoPackage of 0ENDATE = '99991231'

Or use BW formula If 0ENDATE <> '99991231' then SKIP_RECORD

This will filter out the non-current records,

2) Flattening the mailing and permanent addresses

I'm not an ABAPer, so I will give you an ABAP solution.

Create two InfoSources an map appropriately

Person - Permanent Address ; Person Mailing Address

In the PSA to Person - Permanent Address InfoSource DTP , add a filter address type = '1'

Consider also adding a BW fromula If ZADDRTYP <> '1' then SKIP_RECORD

In the PSA to Person - Mailing Address InfoSource DTP , add a filter address type = '5'

Consider also adding a BW fromula If ZADDRTYP <> '5' then SKIP_RECORD

I hope this helps.

John Hawk