RULE unique_dimensional_location_constraint

(* SCHEMA Ap242_managed_model_based_3d_engineering_mim_LF; *)
RULE unique_dimensional_location_constraint for (product_definition_shape, dimensional_location);
LOCAL
 ssa : SET OF shape_aspect := [];
 bdl : BAG OF dimensional_location := [];
 pass : BOOLEAN := TRUE;
END_LOCAL;
REPEAT i := 1 TO SIZEOF (product_definition_shape) WHILE pass;
 bdl := [];
 ssa := bag_to_set(USEDIN(product_definition_shape[i], 'AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF.' + 'SHAPE_ASPECT.' + 'OF_SHAPE'));
 REPEAT i := 1 to SIZEOF (dimensional_location) WHILE pass;
  IF (dimensional_location[i]\shape_aspect_relationship.relating_shape_aspect IN ssa) AND
     (dimensional_location[i]\shape_aspect_relationship.name <> '') THEN
   bdl := bdl + dimensional_location[i];
  END_IF;
 END_REPEAT;
 IF (SIZEOF(bag_to_set(bdl)) <> SIZEOF(bdl)) THEN pass := FALSE;
 END_IF;
END_REPEAT;
WHERE
  WR1 : pass;
END_RULE;

[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:20:10-04:00