HELPLIB.HLB  —  COBOL  PROCEDURE_DIVISION, SEARCH
  The SEARCH statement searches for a table element that satisfies a
  condition.  It sets the value of the associated index to point to the
  table element.

1  –  1format_serial

  The SEARCH statement searches for a table element that satisfies a
  condition.  It sets the value of the associated index to point to the
  table element.

  Format 1 -

   SEARCH src-table [ VARYING pointr ] [ AT END stment ]

      { {WHEN cond stment} ... END-SEARCH   }
      {                                     }
      { {WHEN cond { stment        } }      }
      { {          { NEXT SENTENCE } } ...  }

1.1  –  src-table

  is a table identifier.

1.2  –  pointr

  is an index-name or the identifier of a data item described as USAGE
  INDEX, or an elementary numeric data item with no positions to the
  right of the assumed decimal point.

1.3  –  cond

  is any conditional expression.

1.4  –  stment

  is an imperative statement.

2  –  2format_binary

  The SEARCH statement searches for a table element that satisfies a
  condition.  It sets the value of the associated index to point to the
  table element.

  Format 2 -

   SEARCH ALL src-table [ AT END stment ]

       WHEN { elemnt    { IS EQUAL TO } arg }
            {           { IS =        }     }
            { cond-name                     }

      [ AND { elemnt    { IS EQUAL TO } arg } ] ...
      [     {           { IS =        }     } ]
      [     { cond-name                     } ]

        { stment [ END-SEARCH ] }
        { NEXT SENTENCE         }

2.1  –  src-table

  is a table identifier.

2.2  –  stment

  is an imperative statement.

2.3  –  elemnt

  is an indexed data-name.  It refers to the table element against
  which the argument is compared.

2.4  –  arg

  is the argument tested against each element (elemnt) in the search.
  It is an identifier, a literal, or an arithmetic expression.

2.5  –  cond-name

  is a condition-name.
Close Help