Confronta i record dalla posizione 1 a 5, di due file flat VB e scrivi i record corrispondenti in 3 ° file JCL

StackOverflow https://stackoverflow.com/questions/19839956

  •  29-07-2022
  •  | 
  •  

Domanda

 file 1 :   AAAAA1234
            AAA111ZZZ
            BBBB111ZZ 

file2  :    KAAAA1234
            AAA111ZZZ
            BBBB111ZZ

I file verranno confrontati per le prime 5 lettere e quindi il terzo file scriverà

 FILE 3 :   AAA111ZZZ
            BBBB111ZZ
È stato utile?

Soluzione

JOINKEYS FILE=F1,FIELDS=(1,5,A)
JOINKEYS FILE=F2,FIELDS=(1,5,A)
REFORMAT FIELDS=(F1:1,9)
SORT FIELDS=COPY

Ciò corrisponderà ai due file, solo le corrispondenze di processo (i disallineamenti verranno ignorati) e creerà un record per il compito principale dei joinkeys che è il record di input da F1. L'attività principale copierà semplicemente il suo input nel suo output. L'output sarà sullo stato. Gli ingressi sono srtjfnf1 e srtjnf2.

Se questo è correlato alla tua domanda precedente, a seconda del prodotto di ordinamento, quale livello di quel prodotto e se hai una "patch" o meno, è possibile inserire qualsiasi elaborazione include/ometti in un file jnfnctnl (dove n si trova n 1 o 2 a seconda del file di input). Ti salva un intero passo. Potresti anche includere/omettere nel compito principale dei joinkeys, ma perché ordinare più del necessario.

Se il tuo file 1 è già in ordine di ordinamento, puoi aggiungere ,SORTED Ai joinkeys per quel file. In tal caso e hai DFSort (facci sapere che sulla domanda precedente) puoi anche porre ,NOSEQCHK.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top