Boa tarde! Estou desenvolvendo uma extração de dados para um arquivo TXT mto simples, porém me deparei com um problema envolvendo Cotação/Pedido. A idéia é saber quantos PEDIDOS estão em aberto, apenas um controle gerencial de vendas. Segue o código: Código: output to value ('c:\pedidos.txt'). for each ped-venda no-lock where ped-venda.dt-entrega >= date('01/12/2009') and ped-venda.dt-entrega <= date('31/12/2009'), each ped-item of ped-venda no-lock, each emitente fields(cod-emitente nome-emit nome-abrev) where emitente.cod-emitente = ped-venda.cod-emitente no-lock: put ped-venda.nome-abrev at 1 ped-venda.cod-emitente at 15 ped-venda.nr-pedcli at 30 ped-venda.vl-tot-ped at 55. if ped-venda.cod-sit-ped = 1 then put "Em aberto" at 75. else if ped-venda.cod-sit-ped = 2 then put "Atendido parcial" at 75. else if ped-venda.cod-sit-ped = 3 then put "Atendido Total" at 75. if ped-venda.cod-sit-ped = 1 or ped-venda.cod-sit-ped = 2 or ped-venda.cod-sit-ped = 3 then do: find first nota-fiscal where nota-fiscal.nome-ab-cli = emitente.nome-abrev and nota-fiscal.nr-pedcli = ped-venda.nr-pedcli no-lock no-error. if avail nota-fiscal and ped-item.cod-sit-item <> 1 then do: put nota-fiscal.nr-nota-fis at 100. end. end. end. output close. O que acontece: como eu devo tratar as Cotações de Venda? No código acima ele apresenta o relatório contendo Cotações e Pedidos. Onde eu deveria utilizar o FIND FIRST, para trazer somente o primeiro registro de cada? Agradeço qq ajuda. abraços e obrigado
Porque você esta com a instrução abaixo se não utiliza ? each ped-item of ped-venda no-lock, Você não precisa entrar no detalhe se precisa saber somente os pedidos que estão pendentes... Abraços,
Obrigado pelo retorno, Acho que não entendi... ou talvez vc não me entendeu... O problema é que o código acima, esta aprensentando duplicidade dos registros trazidos e tb as Cotações misturadas, sendo que deveria apresentar somente os Pedidos. Agradeço,
Exatamente isto, se você tirar a instrução vai passar a imprimir o pedido e não os ítens do pedido...
Marly Carril, mais uma vez obrigado.. Caso, tenha como executar a rotina, vc vai ver que ele não esta apresentando os itens. Ele apresenta as informações dos PEDIDOS (correto) junto com aquilo que ainda não é pedido (Cotação - errado). E ainda, os pedidos aparecem duplicados, veja abaixo o meu resultado:
Achei! É o seguinte: Para separar os PEDIDOS das COTAÇÕES, basta setar na condição Where o campo ped-venda.completo=TRUE Obrigado a todos!