[RESOLVIDO] Ajuda para FOR EACH

Discussão em 'EMS , HCM e Totvs 11' iniciado por flybhz, Setembro 17, 2009.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. flybhz

    flybhz Sem Pontuação

    boa tarde a todos,
    pessoal desculpe pela duvida e falta de conhecimento, mas é que estou iniciando agora no progress e datasul entao tenho varias dificuldades, estou vendo algumas apostilas está sendo otimo porque estou aprendendo muito, porem tenho algumas solicitacoes que preciso de atender de imediato e nao sei como faze-las.

    preciso listar todos os itens de pedidos que sairam e os que tambem nao sairam, ou seja, pedidos que foram atendidos parcialmente tiveram alguns itens faturados e foi gerado NF, porem tenho no mesmo pedido itens que nao foram atendidos e que preciso listar eles tambem..
    como vou saber que o item foi atendido?
    terei uma nota fiscal para o pedido que tem o item que foi atendido
    como vou saber que o item nao foi atendido?
    nao terei uma nota para este item do mesmo pedido acima
    ex:
    pedido Nota Fiscal
    abc01
    -item23454 este item nao atendeu
    -item43256 008888888 (este item atendeu o cliente)
    Obs.: sao do mesmo pedido...
    alguem pode me ajudar a fazer?
    obrigadoo
  2. Giuliano

    Giuliano Sem Pontuação

    boa tarde....

    Eu tenho um relatorio parecido com isso e faço assim

    da um for each na tabela ped-venda
    o campo que vel a situação dele é a ped-venda.cod-sit-ped
    1 - Aberto
    2 - Atendido Parcial
    e assim vai

    depois voce faz um for each ped-item of ped-venda
    ele tras todos os itens desse pedido que tambem tem o campo situação do item
    ( ped-item.cod-sit-item )


    Vê se isso já ajudou você

    Um abraço
  3. flybhz

    flybhz Sem Pontuação

    Ola amigo,
    preciso listar o que foi gerado nota fiscal e o que tambem nao foi isso no que diz respeito a item do pedido. gerar isso em um txt que possa depois ser importado pro excel coisas desta natureza, tudo isso com intuito de gerenciar o grau de BOs que tenho na empresa.
    so que o que parece ser simples para quem nao domina é muito dificil e é o meu caso.
    abracos e obrigado.
  4. jonas

    jonas Membro Participativo

    Veja se ajuda:

    Código:
    output to value ('c:\pedidos.txt').
    
    for each ped-venda no-lock where ped-venda.dt-entrega = date('04/09/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.nr-pedcli    at 15
            ped-venda.cod-emitente at 30
            emitente.nome-emit     at 42
            ped-item.qt-pedida     at 83
            ped-item.qt-atendida   at 98.
            
        if ped-venda.cod-sit-ped = 1 then
            put "Em aberto" at 114.
        else if ped-venda.cod-sit-ped = 2 then
            put "Atendido parcial" at 114.
        else if ped-venda.cod-sit-ped = 3 then
            put "Atendido Total" at 114.
    
        if 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 then do:
                put nota-fiscal.nr-nota-fis at 135
                    nota-fiscal.serie       at 150.
                    
            end.
        end.
        
    end.                                                                                                
    output close.
    
    Abraços
  5. flybhz

    flybhz Sem Pontuação

    boa noite amigo,
    eu consigo mostrar tambem os itens de um pedido que foi atendido parcial, ou seja, os itens que nao foram atendidos neste pedido parcial?
    explicando, nesta consulta um pedido parcial ele mostra os itens que foram parcialmente atendidos(maravilha), porem neste pedido parcial eu tenho os itens que nao foram atendidos, consigo mostrar eles tambem junto com os parcialmente atendidos? ou seja preciso mostrar todos os itens de um pedido tanto os que foram atendidos quanto os que nao foram atendidos.
    ficou claro ou confundi ainda mais as coisas? desculpe pela confusao...
    Muito obrigado..
    abs....obrigado mesmo...
  6. jonas

    jonas Membro Participativo

    Boa noite colega

    Sim é possível inserir a informação por item.
    Você está colocando um parâmetro para o usuário informar se ele deseja que sejam listados itens atendidos total, parcial, não atendidos ou todos?
    Ou serão listados todos os itens independente do status do item (em aberto, atendido parcial e atendido total).
    Se você quer listar todos os itens, pode fazer da forma abaixo, informando o status do item:
    ped-venda.cod-sit-ped = 1 então será impresso o valor "Em aberto"
    ped-venda.cod-sit-ped = 2 então será impresso o valor "Atendido Parcial"
    ped-venda.cod-sit-ped = 3 então será impresso o valor "Atendido Total"

    Código:
    Código:
    if ped-venda.cod-sit-ped = 1 then
            put "Em aberto" at 114.
        else if ped-venda.cod-sit-ped = 2 then
            put "Atendido parcial" at 114.
        else if ped-venda.cod-sit-ped = 3 then
            put "Atendido Total" at 114.
    Seria isso o que você precisa?
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página