|
RULE thickness_laminate_table_component_select FOR (thickness_laminate_definition, next_assembly_usage_occurrence, product_related_product_category); LOCAL i , j , k : INTEGER ; dkuhr : LOGICAL ; nnauo : INTEGER ; nprpc : INTEGER ; rp : product ; END_LOCAL ; dkuhr := TRUE ; REPEAT i := LOINDEX ( thickness_laminate_definition ) TO HIINDEX ( thickness_laminate_definition ) ; nnauo := 0 ; REPEAT j := LOINDEX ( next_assembly_usage_occurrence ) TO HIINDEX ( next_assembly_usage_occurrence ) ; IF ( thickness_laminate_definition [ i ] = next_assembly_usage_occurrence [ j ] . relating_product_definition ) THEN rp := next_assembly_usage_occurrence [ j ] . related_product_definition . formation . of_product ; nprpc := 0 ; REPEAT k := LOINDEX ( product_related_product_category ) TO HIINDEX ( product_related_product_category ) ; IF ( ( rp IN product_related_product_category [ k ] . products ) AND ( product_related_product_category [ k ] . name IN [ 'ply' , 'filament laminate' , 'processed core' ] ) ) THEN nprpc := nprpc + 1 ; END_IF ; END_REPEAT ; IF ( nprpc = 1 ) THEN nnauo := nnauo + 1 ; ELSE dkuhr := FALSE ; ESCAPE ; END_IF ; END_IF ; END_REPEAT ; IF ( dkuhr = FALSE ) THEN ESCAPE ; END_IF ; IF ( nnauo <> 1 ) THEN dkuhr := FALSE ; ESCAPE ; END_IF ; END_REPEAT ; WHERE wr1: dkuhr ; END_RULE; -- thickness_laminate_table_component_select |
|
public class RThickness_laminate_table_component_select public int rWr1(SdaiContext _context) public int run(SdaiContext _context, A_string violations) |