Welcome to the COE Discussion Forum! 

 

To participate in the discussion forum, you must be logged in to the website.  If you forget your login information, please contact COE Headquarters at coe@coe.org or (800) 263-2255.

If you are new to the COE Discussion Forum and would like to participate, please register.

 

The COE 2008 Fall Industry Workshops

Automotive
Oct. 15-16
Troy, Michigan

 

Aerospace & Defense
Oct. 27-28
Wichita, Kansas

   

Register Today!

COE DISCUSSION FORUM
Subject: "Feature involved in an update cycle" Error

You are not authorized to post a reply.   
Author Messages
BPRASAD


03 Apr 2008 01:44 PM

I am doing a simple atttribute settting operation in KWA. However, I am getting an Update Diagnostic ERROR

I would like to know why I am getting this "Feature involved in an update cycle."--ERROR.

Here is What I am doing. And The Error I am getting. Has anyone experienced this before and know why? Thanks!!!

Brian










Brian Prasad
COE-DPC/KBE Chairperson
DOUGSNELL

04 Apr 2008 07:28 AM
I believe the situation is cause by the fact your using a rule instead of a reaction. I believe the rule acctually takes control of the Parameters it references (similar to a formula) and ultimatly is constantly checking them. Since these are static parameters (not updated by geometry) it is going to consistently be firing the "This is the slow option" message if this rule was activated.

I believe using a reaction fired on a value change of the Menu parameter would ultimatly get you the same outcome.

--Doug
STONE

14 Apr 2008 01:15 AM

I have never use get /set attribute method,
Why not use the simple rule?
As this :
if (Menu==Option1)
{Message ("this is slow option"}
else if (Menu==Option2)
{Message("this is fast option"}
else
{Message("NO option Found"}
I hope my post is usful for you ,
May be i didn't get your point,
mandy

knowledgeds

14 Apr 2008 06:29 AM
Hello,

objects that are used in KWA rules are seen as inputs of the rules. So, using the part as an input of the rule leads to an update cycle if you integrate the rule to part update. A reaction should be used to solve the problem.

Regards.
STONE

15 Apr 2008 12:08 AM
Posted By knowledgeds on 14 Apr 2008 06:29 AM
Hello,

objects that are used in KWA rules are seen as inputs of the rules. So, using the part as an input of the rule leads to an update cycle if you integrate the rule to part update. A reaction should be used to solve the problem.

Regards.


Hi, Knowledge,

I don't get your point at all ,As you point out"objects that are used in KWA rules are seen as inputs of the rules",I don't understand your method,i awlays often use objects as an input of the rule,it seems it is no problem ,Can you expatiate this  method ?

thank you !

Mandy

knowledgeds

15 Apr 2008 07:18 AM
Hello,

Usually there is no problem of update cycles : the notion of input here means : "what makes the rule non uptodate (input object modification), or what makes it evaluate (input parameter modification)".

In your rule, the part itself is an input. And when you integrate the rule to part update (notion available under rule properties and activated also if you answer yes to a question raised when you first create the rule using o non parametric object), technically speaking you create an input dependancy between the part and the rule (the rule is an input of the part, so that when the part updates, it asks before the update of the rule).

Thus, it creates an update cycle (part is an input of the rule which is an input of the part).
BPRASAD


15 Apr 2008 10:10 AM
Then why it works with a KWE Rule. In KWE rule set , you can look for any parameter on the tree and replace its contents without any apparent "Update Cycle Error."

Part is an input of the KWE rule too and a rule itself is an input of the Part, but still we do not get any UPDATE Cycle Error.

Are these two "rules (KWA and KWE) not controlled by the same UPDATE routine?

Brian Prasad
COE-DPC/KBE Chairperson
knowledgeds

15 Apr 2008 10:30 AM
In KWE rules, there is no input notion. Such a rule is applied "for all objects of a kind". The rulebase can be integrated to part or product update but the objects that are manipulated in the rule are not technically inputs of the KWE rules (they are retrieved dynamically when solving the rulebase).

STONE

16 Apr 2008 02:27 AM

Hello,Brain&Knowledgeds,
May be i find out the reason that you get this "Feature involved in an update cycle"  error,i belive that Using Getattribuatestring must have appropriate object .if using part as object ,there is an error during updating,but if using parameters as object ,there is
all right,so i belive you use an error object,see my code :
if Parameters  ->GetAttributeString("Menu" ==Parameters ->GetAttributeString("Op1"

 Message("slow"
}
else if Parameters  ->GetAttributeString("Menu" ==Parameters ->GetAttributeString("Op2"
{
 Message(" fast"
}
else
{
 Message("there is nothing "
}

Unfortunately,if you change the value of Menu,it seem that rule can't regnoize the variety of Menu,so rule don't update automatically, may be rule can't regnoize  Parameters  ->GetAttributeString("Menu",i am not certain,
Any suggestion about this issum?









knowledgeds

16 Apr 2008 02:49 AM
Hello STONE,

yes if you use the Parameters object instead of the Part object, you break the update cycle. But the Parameters object is not "integrated" itself in update mechanism, so modifying a parameter inside the Parameters does not make the Parameter not up to date, so the rule itself is not impacted (yes it is complicated).

There are several ways to solve this problem.

1. Accessing the parameters directly:
if (Menu == ...)
...
2. Using a reaction that reacts to Part Update. There is a risk that reaction evaluation reimpacts the Part so after its update, the reaction evaluates, impacts the part so the part is not up to date
3. Using a reaction that reacts to Menu parameter modification.
4. Put the menu parameter under an object that is integrated to update (for example a body), and modifying the reaction using this objects instead of Parameters one or Part one.
You are not authorized to post a reply.
Forums > COE Forums > KBE > "Feature involved in an update cycle" Error



ActiveForums 3.6

    

401 North Michigan Avenue, Chicago, IL 60611-4267 | (312) 321-5153 | (800) COE-CALL (U.S.)