cancel
Showing results for 
Search instead for 
Did you mean: 

Upload only 1 register

Former Member
0 Kudos

Hi experts,

I have a deeply question ... Im gonna to try to explain:

I have an View in R/3 with fields: CASE(key) POSITION(key) HOUR.

Example:

1 0 10:00

1 1 10:01

2 1 17:30

I upload all the registers in a BACKUP OSD.

But I want to seleccionate ONLY the first position (1rst register) to another OSD (after BACKUP) in DELTA LOADING.

How can I do it? In the START RUTINE? I will check in the ODS if there are data with the CASE. But when you are loading the data in the ODS, it will be loading with order of positions?

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

You already have the required easy parameter which uniquely defines/matches your requirement. ie hour field

If you have below records in Back up ODS

1 0 10:00

1 1 10:01

2 1 17:30

Always go for full upload from back up ods to another coz the delta will provide you the final version of truth..which doesnt matches your requirement.

Now in Transformantion, Write the start routine to manage the 1st record.

Pseudo code.

internal table = sourcepackage

Sort tthe internal table by CASE(key) POSITION(key) HOUR by ascending.

Delete adjacent duplicates by comparing CASE(key) POSITION(key) HOUR.

Now move the internaltable data into sourcepackage.

Former Member
0 Kudos

My option:

Load the first time with delta, and do the START rutine (SORT and DELETE duplicates).

Then, in every DELTA, I can check if there is a register with the CASE. If exist, DELETE, else, LOAD.

what are you thinking?

Thanks a lot!

Former Member
0 Kudos

If you want to go with delta then you have to ensure that your 1 register is not overwritten by the final version coz of delta concept.

Means you have to define the key field in a ods in such a way that the 1 register is not overwritten.

If you have a hour field in a key fiedl then we dont have a problem with delta as every time the hour will not remain same so entire log will be maintained but its not the correct business logic unless until you need entire log of order in back up ods.

Former Member
0 Kudos

Hi Marcus,

Your logic will work fine, but it will have an impact on performance with time.

Also think of a case where you get 2 entries in the same data package.

--> Add a code to delete here as well.

and you get 2 entries in 2 different data packages.

-Vikram

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

I didnt correclty understand you question.I assume after loading

1 0 10:00

1 1 10:01

2 1 17:30

into BACKUP OSD you want to load only (1 0 10:00) into another target as a delta load right?

You can write a start routine for this in the where you can directly read from the active table of BACKUP OSD only the 1s record.

Regards,

Ravi