Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Creating a Tableview with time dependant entries

jrg_wulf
Active Contributor
0 Kudos

Hi experts,

i have created a table for the purpose of mapping external to internal values. As per request, these entries have a limited validity, so i have added DATBI as last keyfield and DATAB as first nonkey. I have based these fields on data-elements ENDDA and BEGDA and was able to create the time dependent maintenance. Now i've got buttons for "Delimit" and "Expand<->collapse" in addition to the usual buttons.

The problem now is, that delimiting doesn't work as expected. The selected entry is set to the new start date, keeps the old DATBI value and i can modify the functional part.

So far it's all well but instead of having the old entry actually delimited, it simpy has vanished.

I have these entries for example:

MANDT  BUKRS  DATBI       DATAB       VALEX    VALIN

010    WZZZ   99991231    20120101    A1       99

Now i press delimit and enter 01.01.2014 as new date. I then get the Line

010    WZZZ   99991231    20140101    A1       99

and can edit it

but instead of the expected resulting entries:

010    WZZZ   20131231    20120101    A1       99

010    WZZZ   99991231    20140101    A1       72

i only get the one, last entry:

010    WZZZ   99991231    20140101    A1       72

What do i have to do in order to fulfill my requirement? What am i missing here.

Thanks for for any help.

Best regards - Jörg

1 ACCEPTED SOLUTION

jrg_wulf
Active Contributor

Hi all,

i've done a bit of testing and finally i succeeded.

Now here's what i found out:

When you build a new table, with start- and enddate, the sequence obviously doesn't matter.

When you follow the proceedings, it will work as suggested and as expected.

My problem was, that i hadn't built the table from scratch, but had an existing table altered to meet the requirement. For some reason, this deemingly doesn't work.

So i saved the data from my tables, deleted them completely (structure, database, FMs and all)

and built them anew, generated table dependencies and refilled them.

Works like a charm.

One other thing i found out is, it is of specific importance, which dataelements you use.

ENDDA and BEGDA works whereas DATBI and DATAB won't!

Thanks for all of your response.

Regards - Jörg

14 REPLIES 14

FredericGirod
Active Contributor
0 Kudos

Hi,

that's looking like the price condition VK11 / VK12

You expected to have this logic in a SM30 transaction ? or do you have create your own program ?

regards

Fred

0 Kudos

Hi Frédéric,

yes, i expect to have it in sm30 - like it is in the majority of HR tables.

There's plenty of documentation on this and i did everything that it suggests.

The functionality seems to be there, only it doesn't work as expected.

Oh - and it is not price conditions, but one of a set of custom built tables.

Regards Jörg.


former_member188827
Active Contributor
0 Kudos

After generating table maintenance,choose menu:

       ENVIRONMENT----> Generate Time-Dep

and check again.

Regards

Ajit_K_Panda
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Wulf,

You can see the following link. In tmg, you can do this.

http://help.sap.com/saphelp_erp60_sp/helpdata/en/c1/df5c3c3b067331e10000000a114084/content.htm

Regards,

Ajit

0 Kudos

Hi Ajit and netweaver developer,

thanks both for your reply, but this is exactly what i did to get the additional buttons for delimiting and expanding.

According to this document, it should have worked all right.

Only trouble is - it doesn't.

Regards - Jörg

0 Kudos

Hi Jorg

In order to achieve this you can do as follow. One you are inside SM30. Next to the Periods you see one button. Press that first then click on delimit. After that press enter two times you will a new del;imited record also get created

Nabheet

0 Kudos

Hi Nabheet,

i'm not sure if i understand you correctly.

I am able to create the new entry - i'm missing the old one.

I think it is a bit confusing to speak in terms of new and old when dealing with time dependencies.

So in other words:

The existing entry, with the existing enddate gets shortened at the begindate. It is set to the entered dilimit date. This is the new entry (although it is the old one in regard of the key fields)

My expectation (and experience from HR tables) is, that another entry gets created, with the former begindate and ending one day short of dilimit date, conserving the existing dependent values.

This would be the old entry then and this is, where my expectation is not met.

There is no predecessing entry. The old values are just gone.

Regards Jörg

0 Kudos

Hi Jorg

Please find attached below the steps taken to create delmited record as you need. Hope it helps

Thanks

Nabheet

0 Kudos

Hi Nabheet,

i noticed, that in your example, start_date is key field and end_date is Tabels not. Could it possibly mean, that it only works this way round?

I'm wondering because almost all HR table i know, have the opposite setting.

If it's that simple, i'd be glad to just swap fields.

I will try out as soon as possible.

Regards - Jörg

jrg_wulf
Active Contributor

Hi all,

i've done a bit of testing and finally i succeeded.

Now here's what i found out:

When you build a new table, with start- and enddate, the sequence obviously doesn't matter.

When you follow the proceedings, it will work as suggested and as expected.

My problem was, that i hadn't built the table from scratch, but had an existing table altered to meet the requirement. For some reason, this deemingly doesn't work.

So i saved the data from my tables, deleted them completely (structure, database, FMs and all)

and built them anew, generated table dependencies and refilled them.

Works like a charm.

One other thing i found out is, it is of specific importance, which dataelements you use.

ENDDA and BEGDA works whereas DATBI and DATAB won't!

Thanks for all of your response.

Regards - Jörg

nabheetscn
Active Contributor
0 Kudos

Good to hear..thanks for sharing the detailed solution. The SAP help states clearly which all dataelement we can use..

Nabheet

0 Kudos

Yes, at Time-Dependent Table/View, you can read


· for the start date

Field name BEGDA  or

Data element BEGDATUM or

Data element VIM_BEGDA or

Data element BEGDA

· for the end date

Field name ENDDA  or

Data element ENDATUM or

Data element VIM_ENDDA or

Data element ENDDA.

All four data elements are in the domain DATUM.

Regards,

Raymond

former_member182465
Active Participant
0 Kudos

Thanks for sharing the solution...

shivalingesh
Explorer
0 Kudos

Hi,

How can i remove the expansion button .., ie i want to display all the records...