Compare registros da posição 1 a 5, de dois arquivos planos VB e escreva os registros correspondentes no 3º arquivo JCL

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

  •  29-07-2022
  •  | 
  •  

Pergunta

 file 1 :   AAAAA1234
            AAA111ZZZ
            BBBB111ZZ 

file2  :    KAAAA1234
            AAA111ZZZ
            BBBB111ZZ

Os arquivos serão comparados pelas primeiras 5 letras e, portanto, o 3º arquivo escreverá

 FILE 3 :   AAA111ZZZ
            BBBB111ZZ
Foi útil?

Solução

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

Isso corresponderá aos dois arquivos, apenas correspondências de processo (as incompatibilidades serão ignoradas) e criarão um registro para a tarefa principal dos joinkys, que é o registro de entrada da F1. A tarefa principal apenas copiará sua entrada para sua saída. A saída estará em classificação. As entradas são srtjfnf1 e srtjnf2.

Se isso estiver relacionado à sua pergunta anterior, dependendo do tipo de produto que você possui, qual nível desse produto e se você tem um "patch" ou não, pode colocar qualquer processamento de incluir/omitir em um arquivo jnfnctnl (onde n é 1 ou 2, dependendo de qual arquivo de entrada). Economiza um passo inteiro. Você também pode incluir/omitir na tarefa principal dos JoinKeys, mas por que classificar mais do que precisa.

Se o seu arquivo 1 já estiver em ordem de classificação, você pode adicionar ,SORTED para os jointkeys para esse arquivo. Se sim e você tem DFSort (por favor, deixe -nos saber disso na pergunta anterior), você também pode colocar ,NOSEQCHK.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top