(* SCHEMA step_merged_ap_schema; *)
-- IN AP242 FUNCTION validate_accuracy_types (ei : shape_data_quality_criterion; type_list : BAG OF STRING ) : LOGICAL; LOCAL sdqca : BAG OF shape_data_quality_criterion_and_accuracy_association := []; sma : BAG OF shape_measurement_accuracy := []; sdqir : SET OF shape_data_quality_inspection_result := []; scraa : BAG OF shape_inspection_result_accuracy_association := []; t_logic : BOOLEAN; END_LOCAL; sdqca := USEDIN(ei, 'STEP_MERGED_AP_SCHEMA.SHAPE_DATA_QUALITY_CRITERION_AND_ACCURACY_ASSOCIATION.SHAPE_DATA_QUALITY_CRITERION'); IF SIZEOF(sdqca) <> 0 THEN REPEAT i := 1 TO SIZEOF(sdqca); sma := sma + sdqca[i].required_specific_accuracy; END_REPEAT; IF SIZEOF(type_list) < SIZEOF(sma) THEN RETURN (FALSE); END_IF; REPEAT i := 1 TO SIZEOF(sma); t_logic := FALSE; REPEAT j := 1 TO SIZEOF(type_list); IF type_list[j] IN value_limit_type(sma[i].range) THEN t_logic := FALSE; ESCAPE; END_IF; END_REPEAT; IF NOT t_logic THEN RETURN (FALSE); END_IF; END_REPEAT; END_IF; sdqir := QUERY (q <* bag_to_set(USEDIN(ei, 'STEP_MERGED_AP_SCHEMA.DATA_QUALITY_INSPECTION_RESULT.CRITERION_INSPECTED'))| 'STEP_MERGED_AP_SCHEMA.SHAPE_DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(q)); IF SIZEOF(sdqir) = 0 THEN RETURN (FALSE); END_IF; REPEAT i := 1 TO SIZEOF(sdqir); scraa := USEDIN(sdqir[i], 'STEP_MERGED_AP_SCHEMA.SHAPE_INSPECTION_RESULT_ACCURACY_ASSOCIATION.SHAPE_DATA_QUALITY_RESULT'); IF SIZEOF(scraa) <> 0 THEN sma := []; REPEAT j := 1 TO SIZEOF(scraa); sma := sma + scraa[j].applied_specific_accuracy; END_REPEAT; IF SIZEOF(type_list) < SIZEOF(sma) THEN RETURN (FALSE); END_IF; REPEAT j := 1 TO SIZEOF(sma); t_logic := FALSE; REPEAT k := 1 TO SIZEOF(type_list); IF type_list[k] IN value_limit_type(sma[j].range) THEN t_logic := FALSE; ESCAPE; END_IF; END_REPEAT; IF NOT t_logic THEN RETURN (FALSE); END_IF; END_REPEAT; END_IF; END_REPEAT; RETURN (FALSE); END_FUNCTION;
Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:20-04:00