FUNCTION acyclic_product_category_relationship
(* SCHEMA structural_analysis_design; *)
FUNCTION acyclic_product_category_relationship(
relation: product_category_relationship;
children: SET OF product_category
): LOGICAL;
LOCAL
i : INTEGER;
x : SET OF product_category_relationship;
local_children : SET OF product_category;
END_LOCAL;
REPEAT i := 1 TO HIINDEX(children) BY 1;
IF relation.category :=: children[i] THEN
RETURN(FALSE);
END_IF;
END_REPEAT;
x := bag_to_set(USEDIN(relation.category,'STRUCTURAL_ANALYSIS_DESIGN.'
+ 'PRODUCT_CATEGORY_RELATIONSHIP.SUB_CATEGORY'));
local_children := children + relation.category;
IF SIZEOF(x) > 0 THEN
REPEAT i := 1 TO HIINDEX(x) BY 1;
IF NOT acyclic_product_category_relationship(x[i],local_children)
THEN
RETURN(FALSE);
END_IF;
END_REPEAT;
END_IF;
RETURN(TRUE);
END_FUNCTION; -- acyclic_product_category_relationship
Referenced By
Defintion acyclic_product_category_relationship is references by the following definitions:
[Top Level Definitions] [Exit]Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:15:08-04:00