Overview Schemas Index

PART_AND_ZONE_LAMINATE_TABLES_MIM (jsdai.SPart_and_zone_laminate_tables_mim)


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)