It is not a good idea to update back-end tables. Oracle will stop supporting your instance.
You need to go to each physical layer and make it non-costable first. Then you can update all the physical records to the same costable type.
By physical record, I mean each record in the database - 1-Jan to 12-Feb is one physical record..
The system throws the error, when you have different costable rules for different dates.
So, you could either delete future or old records to have a single record and then have the costing details.
Navigate to the first date of the element link record, make the element as not-costed.
Navigate to the send date for the same link, make it not-costed.
Do the same for all the records for the element link.
Now go to whichever record you want and make the link as costed or fixed-costed, based on your business needs.
Hope that helps.
thanks a lot.
that worked finally.
Actually I feel i must confess and I wish it help others from repeating my mistakes.
I have created a backup table for the two records of the element link and set
,BALANCING_KEYFLEX_ID = NULL
,COSTABLE_TYPE ='N' --'C'
,TRANSFER_TO_GL_FLAG = 'N'
But that did not solve my problem from the front end and error above still popped up.
So, I tried to restore the records to the first state using my backup table. It didn't work. The update trigger failed.
However I realized later that the values of COST_ALLOCATION_KEYFLEX_ID are different in both records in the backup table. I guess I should have tried in the first place to undo the last change or set its effective date to the start date of the element link.
Thanks a lot Vigneswar. You have been a great help.