For Programmers: Free Programming Magazines  


Home > Archive > Cobol > March 2006 > alternate key on numeric field









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author alternate key on numeric field
gianluigi beuzard

2006-03-14, 3:55 am

How to convert or use a numeric field to put it into an alternate key for
accessing an indexed file ?

For example, I got :

ENVIRONMENT DIVISION.
...
INPUT-OUTPUT SECTION;
FILE-CONTROL.
SELECT FLIV ASSIGN TO DISK;
ORGANIZATION INDEXED;
ACCESS MODE DYNAMIC;
RECORD KEY IS COD-LIV;
ALTERNATE RECORD TTL-LIV;
ALTERNATE RECORD AUT-LIV DUPLICATES;
(* 1) // here I would use NTH-LIV, QT-LIV and QTR-LIV as
alternates key !!!
FILE STATUS IS FS-LIV;

DATA DIVISION.
FILE SECTION.
FD FLIV LABEL RECORD STANDARD;
VALUE OF FILE-ID IS "LIVRES.DAT".

01 ENR-LIV;
02 COD-LIV PIC 5(X).
02 TTL-LIV PIC 5(X).
02 AUT-LIV PIC 5(X).
02 NTH-LIV PIC 99. <--- ??
02 QT-LIV PIC 99. <--- ??
02 QTR-LIV PIC 99. <--- ??





Rick Smith

2006-03-14, 7:55 am


"gianluigi beuzard" <gbeuzard@skynet.be> wrote in message
news:441687d9$0$1176$ba620e4c@news.skynet.be...
> How to convert or use a numeric field to put it into an alternate key for
> accessing an indexed file ?
>
> For example, I got :
>
> ENVIRONMENT DIVISION.
> ...
> INPUT-OUTPUT SECTION;
> FILE-CONTROL.
> SELECT FLIV ASSIGN TO DISK;
> ORGANIZATION INDEXED;
> ACCESS MODE DYNAMIC;
> RECORD KEY IS COD-LIV;
> ALTERNATE RECORD TTL-LIV;
> ALTERNATE RECORD AUT-LIV DUPLICATES;
> (* 1) // here I would use NTH-LIV, QT-LIV and QTR-LIV as
> alternates key !!!
> FILE STATUS IS FS-LIV;
>
> DATA DIVISION.
> FILE SECTION.
> FD FLIV LABEL RECORD STANDARD;
> VALUE OF FILE-ID IS "LIVRES.DAT".
>
> 01 ENR-LIV;
> 02 COD-LIV PIC 5(X).
> 02 TTL-LIV PIC 5(X).
> 02 AUT-LIV PIC 5(X).
> 02 NTH-LIV PIC 99. <--- ??
> 02 QT-LIV PIC 99. <--- ??
> 02 QTR-LIV PIC 99. <--- ??


Use something like
02 alt-key.
03 nth-liv pic 99.
03 qt-liv pic 99.
03 qtr-liv pic 99.
with
alternate record alt-key

Or, if the compiler recognizes split-keys
(Micro Focus, for example)
alternate record alt-key = nth-liv qt-liv qtr-liv



Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com