cancel
Showing results for 
Search instead for 
Did you mean: 

delete interval characteristic values using Variant Configuration Function

Former Member
0 Kudos

We need to delete characteristic values, when one value has a specific value during the configuration from a Material (mm02) to prevent classification inconsistency

Calling a (P)function in a Procedure seems the right way. It works well for all values except interval numeric values ( eg. 200 - 300 nm ) . If i call CUDB_GET_VALLIST for this specific char, i will get a NO_VALUE_FOUND Exception. Debugging shows me, that the internal table 'CUDBD_AW_FACT_I' doesn't contain the specific characteristic and i don't know why. It works for the same characteristic with only a single value and without interval (300 nm ).

Are there any other suggestions ?

Thank your very much

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hi Alexander,

We have a similar issue. but in our case the Char was used in another constraint and so the restrictable flag was set.

I tried to see if the following Fms work, but it did not due to restrictable flag. You can try this and see if this solves your problem

CUPR_GET_VAL and CUPR_DEL_VAL

Cheers

Ravi

0 Kudos

Well, this sounds like you should use restrictable characteristics and you should eliminate unwanted values with constraints, either with hard coded constraints (not so good) or via variant tables (good).

Flavio
Active Contributor
0 Kudos

Hi Alexander,

Maybe I haven't clearly understood your need, but if your goal is to avoid to show a certain range, for a characteristic with interval vals allowed, based on a certain value in another characteristic,  then why don't use an object dependency (Precondition type) and attach it to the relevant value range?

Say, we have CHAR_A,  that is the driving characteristic, having values 'AAA', 'BBB', 'CCC'.

Then, we have CHAR_B, interval vals allowed, with ranges '100 - 200 N/m', '200 - 300 N/m', '300 - 400 N/m'.

Now, we want that the range '200 - 300 N/m' shall not be allowed if CHAR_A has the value 'BBB', then the object dependency (Precondition) shall look like the following:

$parent.CHAR_A <> 'BBB'

Simply attach it to the value range  '200 - 300 N/m' in the CHAR_B. It should work.

Thanks and bye,

Flavio

0 Kudos

Hi Alexander,

I might be wrong, but as long as the characteristics master does not have set the flag "interval vals allowed" the characteristics cant_have an interval value. In this case the interval in the charateristics master is only used to define possible value ranges. However, the characteristic is alloewd only to have a specific value out of any of these ranges.

Regards, Karlheinz