[RESOLVIDO] Alterar depósito padrao via progrmação

Discussão em 'EMS , HCM e Totvs 11' iniciado por jesualdo.dias, Abril 1, 2011.

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

    jesualdo.dias Sem Pontuação

    Bom dia a todos,

    preciso por gentileza de ajuda para alterar via programação na tabela item-uni-estab do EMS todos os itens que estão no estabelecimento 8 para depósito padrão PP se o mesmo item no estabelecimento 1 tiver como depósito padrão o depósito PP. Alguém poderia me ajudar, demonstrando como ficaria o código?

    Obrigado.
  2. muertebr

    muertebr Membro Participativo

    Bom eu entendi que você qué troca oq ta no estabelecimento 8 para o depósito padrão 'PP', o resto não consegui compreende,

    pra aquela parte basta faze:
    Código:
    FOR EACH item-uni-estab EXCLUSIVE-LOCK
        WHERE item-uni-estab.cod-estabel = '8'.
        ASSIGN item-uni-estab.deposito-pad = "PP".
    END.
  3. jesualdo.dias

    jesualdo.dias Sem Pontuação

    Bom dia Miguel,

    na verdade não quero trocar o depósito de todos os itens do estab 8 para PP; o q eu quero é q o código troque o depósito do item no estab 8 apenas para os itens que no estab 1 estiverem com depósito PP.

    deve fazer uma validação,,,,,
    no estab 1 o item está c/ depósito padrão PP? se sim,,, então para o estab 8 este item deve receber o depósitoPP tbm.
  4. muertebr

    muertebr Membro Participativo

    Segue então novo código, usando buffer:

    Código:
    DEF BUFFER bf-item FOR item-uni-estab.
    FOR EACH item-uni-estab EXCLUSIVE-LOCK
        WHERE item-uni-estab.cod-estabel = '8'.
        FIND FIRST bf-item NO-LOCK
            WHERE bf-item.it-codigo = item-uni-estab.it-codigo AND
                  bf-item.cod-estabel = '1' AND
                  bf-item.deposito-pad = "PP" NO-ERROR.
        IF AVAIL bf-item THEN
            ASSIGN item-uni-estab.deposito-pad = "Novo Depósito".
    END.
    Irá alterar os item do estabelecimento 8 onde o mesmo item no estabelecimento '1' estiver no depósito 'pp'.
  5. jesualdo.dias

    jesualdo.dias Sem Pontuação

    Obrigado Miguel,

    deu certo,

    em 10 linhas vc me ajudou a agilizar um trabalhão.
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página