error: number of WHEN ALSO subjects does not match number of EVALUATE ALSO objects – COBOL EVALUATE_ALSO_MISMATCH

EVALUATE_ALSO_MISMATCH

L'istruzione decisionale EVALUATE con criteri paralleli ('EVALUATE var1 ALSO var2') richiede che ogni clausola 'WHEN subj1 ALSO subj2' abbia esattamente lo stesso numero di soggetti.

Cosa significa questo errore?

L'istruzione decisionale EVALUATE con criteri paralleli ('EVALUATE var1 ALSO var2') richiede che ogni clausola 'WHEN subj1 ALSO subj2' abbia esattamente lo stesso numero di soggetti.

Messaggio originale

error: number of WHEN ALSO subjects does not match number of EVALUATE ALSO objects

Contesto e parole chiave

Alias

  • number of WHEN ALSO subjects does not match COBOL

Messaggi alternativi

  • numero clausole when also non corrispondente evaluate

Prodotti

  • GnuCOBOL (cobc) / IBM Enterprise COBOL / Micro Focus

Piattaforme

  • AIX
  • IBM z/OS
  • Linux
  • Windows

Parole chiave

  • cobol
  • cobol.procedure.evaluate-also-phase-mismatch
  • errore-cobol-evaluate-also-mismatch
  • file-status
  • gnucobol
  • Procedure Division e Runtime

Cause possibili

Causa tecnica per Errore COBOL: EVALUATE ... ALSO subjects mismatch (Disallineamento Criteri Multipli in EVALUATE)

L'istruzione decisionale EVALUATE con criteri paralleli ('EVALUATE var1 ALSO var2') richiede che ogni clausola 'WHEN subj1 ALSO subj2' abbia esattamente lo stesso numero di soggetti.

molto comune

Diagnosi

Diagnostica di esecuzione e file status per Errore COBOL: EVALUATE ... ALSO subjects mismatch (Disallineamento Criteri Multipli in EVALUATE)

Ispezionare la variabile FILE-STATUS, i log di runtime o compilare con i controlli di integrità di GnuCOBOL (-Wall -Wextra -fdebugging-line).

Come leggere il risultato. Evidenzia violazioni dei margini di colonna, disallineamenti nelle clausole PIC o codici di ritorno anomali.

terminal
cobc -x -Wall -Wextra main.cob -o app

Risoluzione

Risoluzione standard per Errore COBOL: EVALUATE ... ALSO subjects mismatch (Disallineamento Criteri Multipli in EVALUATE)

Difficoltà: mediaRischio: basso

Applicare la correzione al codice sorgente COBOL secondo le specifiche ANSI/ISO COBOL.

  1. Ispezionare il valore della variabile FILE STATUS o il numero di riga del compilatore
  2. Correggere la dichiarazione FD, la PICTURE o la sequenza di OPEN/READ/WRITE
  3. Ricompilare ed eseguire verificando la corretta terminazione con RETURN-CODE 0
terminal
cobc -x main.cob

Domande frequenti

Cosa significa Errore COBOL: EVALUATE ... ALSO subjects mismatch (Disallineamento Criteri Multipli in EVALUATE) in COBOL?

L'istruzione decisionale EVALUATE con criteri paralleli ('EVALUATE var1 ALSO var2') richiede che ogni clausola 'WHEN subj1 ALSO subj2' abbia esattamente lo stesso numero di soggetti.

Approfondimenti

Schede correlate