Se vc precisa ler um arquivo Cobol que tem COMP3 e não pode alterar esta FD, 
então vc pode tentar o seguinte:

*** não sei se realmente é assim, apenas vou dizer a técnica possível de 
utilização ***

Para armazenar os valor em um campo COMP3 o COBOL deve fazer o com que 2 
dígitos sejam armazenados ema apenas 1 byte, isto é, como 1 byte é composto por 
8 bits, os 4 primeiros bits armazena o 1º dígito e os 4 últimos o 2º dígito, 
utilizando a lógica binária. Exemplo:

PIC 9(5)V2 (conforme o teu exemplo) => 7245389 onde os em azul são os inteiros 
e os vermelhos os decimais.
com o COMP3 isso deve ocupar 4 bytes ( "tamanho total" 7 / 2 = 3,5 => 4)

** em verde: posição bit
** em azul: valor binário
** em vermelho: notação binária para o número

byte 1 - 07 (corresponde ao chr(7))
      1 2 3 4 5 6 7 8 
      8 4 2 1 8 4 2 1 
      0 0 0 0 0 1 1 1 


byte 2 - 24 (corresponde ao chr(36))
      1 2 3 4 5 6 7 8 
      8 4 2 1 8 4 2 1 
      0 0 1 0 0 1 0 0 


byte 3 - 53 (corresponde ao chr(83))
      1 2 3 4 5 6 7 8 
      8 4 2 1 8 4 2 1 
      0 1 0 1 0 0 1 1 


byte 4 - 89 (corresponde ao chr(137))
      1 2 3 4 5 6 7 8 
      8 4 2 1 8 4 2 1 
      1 0 0 0 1 0 0 1 



Volto a dizer, não sei se é exatamente isso que o COBOL faz, mas é muito 
provável, pois o tamanho em bytes de um COMP3 é a metade do que ocuparia o 
normal. Tenta pra ver.

Abraços,
Alessandro.

----- Original Message ----- 
From: "Rodilson" <[EMAIL PROTECTED]>
To: "delphi-br @yahoogrupos.com.br" <delphi-br@yahoogrupos.com.br>
Sent: Wednesday, June 20, 2007 10:49 AM
Subject: [delphi-br] Res:Comp3 do Cobol para Numero


> Bom  dia Leandro,
> 
> O problema esta no cobol, quando você definir sua "FD" para o registro do 
> arquivo texto na Data Division, não use comp3, exemplo:
> DATA DIVISION.
>        01 REG-TXT.
>            03 VALOR  PIC 9(5)V2 COMP3. // Errado
>            03 VALOR  PIC 99999,99.          // Correto
> 
> Creio que isto deve resolver seu problema.
> 
> Um abraço,
> 
> Rodilson
> 
> [As partes desta mensagem que não continham texto foram removidas]
> 
> 
> 
> -- 
> <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
> 
> Links do Yahoo! Grupos
> 
> 
> 
> --------------------------
> E-mail Seguro Vetorial.net
> 
> Mensagem classificada como NÃO-SPAM. Para classificar como SPAM,
> encaminhe para [EMAIL PROTECTED]
> 
> Chave de Identificação: 54568,467933f3312731477644665
> 
>

[As partes desta mensagem que não continham texto foram removidas]

Responder a