All Frameworks Class Hierarchy This Framework Previous Next Indexes
KnowledgeInterfaces Interface CATICkeRelationExp
System.IUnknown
|
+---System.IDispatch
|
+---System.CATBaseUnknown
|
+---KnowledgeInterfaces.CATICkeNaming
|
+---KnowledgeInterfaces.CATICkeRelation
|
+---CATICkeRelationExp
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATICkeRelationExp
Interface dedicated to relations with textual body management (formulas/Checks/Rules).
Role: An expressional relation is a relation whose links between parameters is defined
by a language contained in a text.
- Formulas valuate one literal from several ones.
- Rules valuate several literals from several ones.
- Checks use several literals in input and produces a diagnosis.
This interface is implemented on those 3 objects
- See also:
- CATICkeRelation
Method Index
- o
Body(CATCke::Boolean&,CATIParmPublisher_var&)
- Get the relations body.
- o
CatchEvaluationError(int)
- Defines if the relation will catch evaluation error.
- o
CheckMagnitude()
- Checks magnitude coherence.
- o
Expression()
- Returns the underlying expression.
- o
IntegrateToUpdate(int)
- Integrates this relation to update.
- o
IsEvaluationErrorCatched()
- Indicates if an evaluation error has been caught.
- o
IsIntegratedToUpdate()
- Tests if the relation is integrated with part update.
- o
Modify(CATCkeListOfParm,CATUnicodeString&,CATIParmPublisher_var&,CATCke::Boolean&)
- Modifies the body and the list of parameters.
Methods
o Body
public virtual CATUnicodeString Body( | const CATCke::Boolean& | iReCompute | = 0, |
| const CATIParmPublisher_var& | iRoot | = NULL_var) const = 0 |
-
Get the relations body.
- Parameters:
-
- iReCompute
- true if body is to be recomputed
- iRoot
- used to name parameters with RelativeName (root) method
- Returns:
- body
o CatchEvaluationError
public virtual void CatchEvaluationError( | int | yes) = 0 |
-
Defines if the relation will catch evaluation error.
- Parameters:
-
- yes
- equal true if you want to catch evaluation error
o CheckMagnitude
public virtual CATCke::Boolean CheckMagnitude( | )const = 0 |
-
Checks magnitude coherence.
This method may raise syntax errors (CATCkeErrorMKS). No ability to catch them in CAA.
- Returns:
-
Legal values: the test can be either CATCke::True if magnitude coherence is Ok
CATCke::False if it isn't.
o Expression
-
Returns the underlying expression.
o IntegrateToUpdate
public virtual HRESULT IntegrateToUpdate( | int | yes) = 0 |
-
Integrates this relation to update.
Role:: for relations using features, relations are not synchroneous and so are not immediately updated
when an inputs changes. This method allows to have this sort of relation updated along the part.
Restriction : This method works only for relations embedded in a part, and using features
- Parameters:
-
- yes
- if equal to 0 : removes integration to part update, if not : integrates to part update
- Returns:
- S_OK if the method succeeds, E_FAIL else
o IsEvaluationErrorCatched
public virtual int IsEvaluationErrorCatched( | )= 0 |
-
Indicates if an evaluation error has been caught.
- Returns:
- 1 if true , else 0
o IsIntegratedToUpdate
public virtual int IsIntegratedToUpdate( | )= 0 |
-
Tests if the relation is integrated with part update.
- Returns:
- 1 if true , else 0
o Modify
public virtual CATCke::Boolean Modify( | const CATCkeListOfParm | iListParameters, |
| const CATUnicodeString& | iBody, |
| const CATIParmPublisher_var& | iRoot | = NULL_var, |
| const CATCke::Boolean& | iRealnames | = 1) = 0 |
-
Modifies the body and the list of parameters.
This method may raise syntax error (CATCkeParseException). No ability to catch them in CAA.
This method may raise evaluation error (CATLifEvaluationError). No ability to catch them in CAA.
- Parameters:
-
- iListParameters
- list of parameters that can be used in the body
- iBody
- string describing the body
- iRoot
- used to name parameters with RelativeName (root) method
and so to be able to recognize parameters by their name
Not used in realnames = false mode
- iRealnames
- = 2 possibilities to name a parameter in the body.
Legal values:
CATCke::True names used are the one returned by RelativeName (root) and we try to recognize names used in the body with parameters of iListParameters..
CATCke::False names used are a1,a2,a3,etc...
a1 meaning the first parameter of iListParameters, a2, the second one, etc....
We advise you strongly to use this second method in your application to avoid NLS problems .
- Returns:
- true if parse OK, false instead.
if a syntax error occurs, a CATCkeParseException exception is raised in realname=true
else a CATLifError is "raised" that you can catch with CATLifErrorManager services
This object is included in the file: CATICkeRelationExp.h
If needed, your Imakefile.mk should include the module: KnowledgeItf