Como definir um Buffer dentro de um programa. Meu caso: Dentro do EMS5 tenho os títulos de Antecipação. Mediante o EMS2 esses títulos são prestados conta. No EMS5 ele tem a tabela de Movimentos do AP (movto_tit_ap). Nesta programa na parte de Titulos Relac ele faz uma for each da Tit_ap e da Movto_tit_ap. Porem nos movimentos ele tem um Buffer da Tit_ap para poder buscar a chave da nota que abateu a antecipação. Como Definir o Buffer para tirar uma cópia da Tit_ap. para poder ler novamente a Tit_ap. Ex de como eu gostaria que ficasse esse relatório. NO CAMPO NOTA, como eu consigo buscar a nota que abateu um título, sendo que a informação é gravada dentro da mesma tabela. Nota Data Valor Original Saldo 0001 18/11/2010 100,00 10,00 Dt Trans Nota Valor Abat Abrev Transação 18/11/2010 0452 90,00 BXA Baixa
Caro colega, eu não consegui entender bem a sua dúvida, mas um buffer pode ser usado no exemplo seguinte: 01) Preciso ler um título qualquer e depois buscar todos os títulos relacionados a este que está na memória, ou seja: Código: find first titulo(1) where <condição> no-lock no-error. for each titulo(2) of titulo(1) where <condicao> no-lock: disp titulo(1).<campos> titulo(2).<campos>. end. 02) Neste caso, a rotina se perderia pois ao dar um FIND guardou-se na memória o registro do titulo(1), porém ao fazer o FOR EACH na titulo(2) perde-se os dados da titulo(1), ocasionando erro na rotina, neste caso usamos o buffer, que é uma cópia exata da tabela titulo na memoria, ou seja, eu consigo trabalhar com 2 insdtâncias da tabela em tempo de execução: Código: def buffer bf-titulo for titulo. find first titulo where <condição> no-lock no-error. for each bf-titulo of titulo where <condicao> no-lock: disp titulo.<campos> bf-titulo.<campos>. end. A diferença do BUFFER da TEMP-TABLE, é que o Buffer mantem todas as caracteristicas da tabela, inclusive ao fazer inclusão/modificação/exclusão afetará diretamente na tabela do banco de dados, já a TEMP-TABLE é somente na memória da sessão, porém você terá que sempre popular ela.
Obrigado pela ajuda, estive fazendo um outro relatório e o Buffer funcionou perfeitamente. Precise listar uma ordem de produção, e os itens da composição. Usei o buffer para listar a descrição destes itens. e funcionou perfeitamente. Obrigado