Overview Schemas Index

ASSEMBLY_FEATURE_RELATIONSHIP_SCHEMA (jsdai.SAssembly_feature_relationship_schema)


FUNCTION find_shape_representation_of_product_definition
          (item : product_definition) : SET [0:?] OF shape_representation;

LOCAL
  local_p_d_s: SET  OF  product_definition_shape := [];
  local_p_d_s2: BAG  OF  product_definition_shape := [];
  local_s_d_r: SET  OF  shape_definition_representation := [];
  local_s_d_r2: BAG OF  shape_definition_representation := [];
  local_s_r: SET OF shape_representation := [];
  i : INTEGER;
END_LOCAL;
-- find product_definition_shape representing the product_definiton
  local_p_d_s2 := local_p_d_s2 + QUERY(pd <* USEDIN  (item, 
  'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') |
  'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN
    TYPEOF(pd));
  local_p_d_s := bag_to_set(local_p_d_s2);
-- find shape_definition_representations refereing TO  the local_p_d_s
  REPEAT  i := 1 TO  HIINDEX  (local_p_d_s);
    local_s_d_r2 := local_s_d_r2 + QUERY(pdr <* USEDIN (local_p_d_s[i], 
     'PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION') |
     'PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.SHAPE_DEFINITION_REPRESENTATION' IN
      TYPEOF(pdr)); 
  END_REPEAT;
  local_s_d_r := bag_to_set (local_s_d_r2);
  REPEAT i := 1 TO HIINDEX (local_s_d_r);
    IF('PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.SHAPE_REPRESENTATION' 
        IN TYPEOF (local_s_d_r[i].used_representation)) THEN
        local_s_r := local_s_r + local_s_d_r[i].used_representation;
    END_IF;
  END_REPEAT;
  RETURN (local_s_r);

END_FUNCTION; -- find_shape_representation_of_product_definition

public class FFind_shape_representation_of_product_definition
          public static Value run(SdaiContext _context, Value item)