cancel
Showing results for 
Search instead for 
Did you mean: 

How to Inactivate a Condition record

Former Member
0 Kudos

Hi,

I have a new condition type (Item Level defined) with a condition record.

When i create a sales order i get this condition type pulled in some of the line items if it has matching values defined in the condition record.

Now my requirement is to inactivate the condition record in some cases of the line items.

How do i do this?

I am not so familiar with routines.,,,, BUt tried putting a breakpoint in some existing routines & tried changing the value of KOMP-KINAK to 'X'.

Did not help!

Would appreciate if somone can explain me in detail to handle this scenario.

regards,

Kevin.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

hey ,

in order to inactivate condition type you have to write a requirement_routine in trans' VOFM .

after that :

go to trans' v/08 ( pricing procedure ) and attach the routine in column "requirement" .

in what cases you want to inactive to condition ?

BR

Edited by: Arie Helman on Aug 5, 2009 5:11 PM

Answers (2)

Answers (2)

Former Member
0 Kudos

To De-activate the Condition Record for the Selected Condition Type & for the selected combination , kindly maintain the Validity period "From' to "To" as previous date and run the New Sales Process or just Update the Pricing in the already Existing Orders.

Best Regards,

Ankur

Former Member
0 Kudos

Thanks for your replies.

My requirement is that i need to get this done by only routines in VOFM.

As a intial step i tried changing the value of KOMP-KINAK field to 'X' in debugging in one of the existing routines. ( I did not attach this routine to the condition type in v/08 )

But it doen't seem to deactivate the condition record.

Is my approach right?

Please advice.

Kevin.

Former Member
0 Kudos

But I am not able to understand that why are you maintaining a Routine ,if the same can be achieved through by closing the Validity Period.

SAP has lot of options to maintain the specific requirement but if the same can be maintained through easy steps then why to go into the depth.Other option is you can maintain a Logic in the User Exit regarding the same Requirement.I hope this will solve your purpose.

Best Regards,

Ankur

Former Member
0 Kudos

Hi Ankur,

The requirement is something different.

I need to do so many checks on the material & the line item count.

ONly upon satisfying those conditions i need to have this condition type active.

There should be some standard way of activating or inactivating the condition type through routines.

Like you said if i change the validity date this condition type won't be applicable in any of the sales orders.

That is as good as not defining the condition type itself.

But in my case i want the condition type to be active/Inactive dynamically based on some checks that i will have to do.

Thanks for replying.

Hope i made the req clear this time.

Thanks for your patience.

Kevin.

0 Kudos

Hi Kevin Nash,

You can create a new Requirement to assign it to the Condition type into the Pricing procedure, so when the condition type is being determine, the program check the Requirement routine where you will put your validation, if your validations are OK the condition type is determine, if not the condition type won't appear in the pricing. This way is more clear to the customer because the condition doesn't appear in the Condition screen.

Thanks,

Mariano.

Former Member
0 Kudos

Hi Mariano,

Thanks for your reply.

I was looking to do something like this.

In this i need the following confirmations.

1. I create one more new routine for eg. 905 ( This would require an access key).

2. Assign this number to the condition type in the transaction v/08.

3. Inside the routine if i write sy-subrc = 4.

Will the condition type disaapear from the pricing screen?

Please advice.

Kevin.

0 Kudos

Hi Kevin,

Yes, you need and access key to create a new routine. Then assign this new routine in the pricing procedure by V/08. Inside the routine you going to verify the different fields you need to check and if the fields have the right value then you should set sy-subrc = 0 if not sy-subrc = 4.

Thanks,

Mariano.

Former Member
0 Kudos

Thanks Mariano.

I will try this.

regards,

Kevin.

Former Member
0 Kudos

Hi,

Can you tell me one that you want to inactive you condition record forever.

Or for just few process you want to inactive you condition record.

See if you want to inactivate your condition record for forever then you can use release status in the condition record.

You have to define the processing status by going to the path.

IMG u2013 SD u2013 Basic function u2013 pricing u2013 define processing status.

Make the new entries over there and save the setting.

Now go to V/05 and select your condition table and activate the release status for the condition table.

Now with this you can deactivate your condition record in by giving the processing status in VK11.

Regards

Raj.

Former Member
0 Kudos

No Raj.

I need to have it active in an one order & inactive in other order depending on some dynamic conditions.

regards,

Kevin.

Former Member
0 Kudos

Hi,

Then if possible create the two different pricing procedure.

One for this sales order and other for rest of the sales order.

Because how can make one condition record inactive in one sales order only.

Other wise you have to make one more condition type in your pricing procedure.

So if you enter that condition type then your particular condition type value will be neglected.

This can be done by writing up the routine.

Hope so you will understand what i have written.

Go to your pricing procedure and see the functionality of PN00 condition type.

if you enter PN00 manually in sales order it deativate your all previous condition types.

so you can maintain routine some thing like that only and it will deativate the condition type of your choice only.

Regards

Raj.

Edited by: Raj Aryan Malhotra on Aug 7, 2009 1:07 PM

Former Member
0 Kudos

Kevin

Did setting sy-subrc = 4 in a requirement de-activate the condition dynamically for you?

I am an SD consultant who can write requirements and am also looking to dynamically de-activate a condition.

I had also found the setting komv (or xkomv) kinak would de-activate. I found a routine that set it to "Z"?

Possible anything other than blank is good.?

Please let me know how you have progressed?

Many thanks

Derrick

Former Member
0 Kudos

Kevin

Did setting sy-subrc = 4 in a requirement de-activate the condition dynamically for you?

I am an SD consultant who can write requirements and am also looking to dynamically de-activate a condition.

I had also found the setting komv (or xkomv) kinak would de-activate. I found a routine that set it to "Z"?

Possible anything other than blank is good.?

Please let me know how you have progressed?

Many thanks

Derrick

Former Member
0 Kudos

HI kevin,

There are many threads for you queries.

Reqt :: condition record is maintained and is active. But the condition record should be active /inactive in sales document (order/billing) depending on the fulfillment criterion.

Soln :

1. create a routine in vofm. access key is reqd. Write requisite logic as per reqt in routine.

Simply creating routine will not help. You also need to execute program "rvkred77" for activating it.

2. then you need to test it in sales docuement. For testing the routine what you can do is put breakpoint for the include in "se38" and then create sales order/billing. Systme will automatically branch into that routine and there you can check precise behaviour of your routine.

3. If requiremetn is complex wyou can also build routine at access level of access sequence. i.e if cndition type is xyz and there are five tables(access) then you can maintain requirement(routine) for each access(table)

If condition record is active but teh requirements( routine) is not fulfilled tehn in pricing procedure system will shown teh condition type record but ti will not have any effect on pricing. i.e status would be inactive it reqt of riutine are not met.

This will defintely address your query. Rwd pts if helpful

regards

Former Member
0 Kudos

Hello,

Something you can try:

First inactivate the record in the condition master (t/c VK12 -- select the condition, then tick the delete icon near bottom of screen)

Now go into the order item (t/c VA02) and at item level go into the condition screen & choose Update button.

What will happen is the previous condition will be replaced with whatever is now current.