COBOL - SEARCH ALL
Publicado por Moises (1 intervención) el 18/03/2023 14:30:50
Buenos días.
Estoy empezando un curso de COBOL, y tengo una pregunta un tanto simple quizás para aquellos más experimentados, pero que, para mí, es difícil encontrar respuesta.
Le agradecería a alguien que pudiese explicarme el porqué.
Adjunto código:
-----------------------------------------
05 TBL-MES-ANYO REDEFINES MESES
OCCURS 12 TIMES
ASCENDING KEY IS AUX-KEY-MES
INDEXED BY NDX-I.
10 AUX-KEY-MES PIC X(10).
-----------------------------------------
Se puede ver la declaración de una tabla con ASCENDING KEY..
Y aquí una búsqueda:
-----------------------------------------
SEARCH ALL TBL-MES-ANYO
AT END
DISPLAY 'MES NO ENCONTRADO = ' AUX-BUSCAR
WHEN AUX-KEY-MES(NDX-I) = AUX-BUSCAR
SET AUX-I-DISPLAY TO NDX-I
DISPLAY 'MES ENCONTRADO = ' TBL-MES-ANYO(NDX-I)
' IND = ' AUX-I-DISPLAY
DISPLAY AUX-KEY-MES(NDX-I)
DISPLAY TBL-MES-ANYO(NDX-I)
END-SEARCH.
-----------------------------------------
Mi pregunta es , porqué se hace uso de AUX-KEY-MES(NDX-I) si es una clave ?
Acaso AUX-KEY-MES es una copia de TBL-MES-ANYO ?
Sería posible usar también en el WHEN la variable TBL-MES-ANYO(NDX-I) ?
Se que quizá para alguno de ustedes la respuesta sea simple, pero para mí es algo confuso saber cómo se comporta exactamente AUX.-KEY-MES.
Agradecería su ayuda.
Un saludo.
Estoy empezando un curso de COBOL, y tengo una pregunta un tanto simple quizás para aquellos más experimentados, pero que, para mí, es difícil encontrar respuesta.
Le agradecería a alguien que pudiese explicarme el porqué.
Adjunto código:
-----------------------------------------
05 TBL-MES-ANYO REDEFINES MESES
OCCURS 12 TIMES
ASCENDING KEY IS AUX-KEY-MES
INDEXED BY NDX-I.
10 AUX-KEY-MES PIC X(10).
-----------------------------------------
Se puede ver la declaración de una tabla con ASCENDING KEY..
Y aquí una búsqueda:
-----------------------------------------
SEARCH ALL TBL-MES-ANYO
AT END
DISPLAY 'MES NO ENCONTRADO = ' AUX-BUSCAR
WHEN AUX-KEY-MES(NDX-I) = AUX-BUSCAR
SET AUX-I-DISPLAY TO NDX-I
DISPLAY 'MES ENCONTRADO = ' TBL-MES-ANYO(NDX-I)
' IND = ' AUX-I-DISPLAY
DISPLAY AUX-KEY-MES(NDX-I)
DISPLAY TBL-MES-ANYO(NDX-I)
END-SEARCH.
-----------------------------------------
Mi pregunta es , porqué se hace uso de AUX-KEY-MES(NDX-I) si es una clave ?
Acaso AUX-KEY-MES es una copia de TBL-MES-ANYO ?
Sería posible usar también en el WHEN la variable TBL-MES-ANYO(NDX-I) ?
Se que quizá para alguno de ustedes la respuesta sea simple, pero para mí es algo confuso saber cómo se comporta exactamente AUX.-KEY-MES.
Agradecería su ayuda.
Un saludo.
Valora esta pregunta
0