RULE thickness_laminate_table_component_select

(* SCHEMA step_merged_ap_schema; *)
-- IN AP203e2
RULE thickness_laminate_table_component_select FOR (thickness_laminate_definition, next_assembly_usage_occurrence, product_related_product_category );
   LOCAL
      i : INTEGER;
      j : INTEGER;
      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;

[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2024-09-06T14:00:33-04:00