[RESOLVIDO] Chamada FT4001

Discussão em 'EMS , HCM e Totvs 11' iniciado por lima, Outubro 14, 2010.

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

    lima Membro Participativo

    Boa noite pessoal,

    alguém já precisou chamar o FT4001.w por um programa especifico? Estou com problemas na chamada dele, se eu faço a chamada apenas como ftp\ft4001.w os botões em baixo do browse ficam desabilitados. Porém, se eu faço a chamada da seguinte forma funciona:
    RUN ftp\ft4001.w persistent SET h_ft4001.
    RUN dispatch IN h_ft4001 ("initialize").

    O problema é que não consigo deixar a tela chamadora desabilitada, pq esta rodando a tela do ft4001 persistente.

    segue o código que desenvolvi.

    {&WINDOW-NAME}:SENSITIVE = no.
    RUN ftp\ft4001.w persistent SET h_ft4001.
    RUN dispatch IN h_ft4001 ("initialize").
    {&WINDOW-NAME}:SENSITIVE = YES.

    Obrigado.
  2. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Caro colega,

    Acredito que você tenha identificado por que a tela não fica desabilitada, pois uma vez persistente a rotina irá até o final do código, neste caso executa o RUN, depois o INITIALIZE e por fim habilita a Window.

    Fiz um teste em minha máquina e com o código abaixo consegui bloquear a tela chamadador até acontecer o evento CLOSE do FT4001, mas lembre-se de um detalhe, não use o {&window-name}, coloque o nome da Windows Chamadora direto, só assim é que funcionou. Ok?

    Neste código, coloquei o WAIT-FOR para aguardar até o fechamento da Ft4001 para executa o sensitive=yes.

    Código:
    
        wWin:sensitive = no. 
    
        run ftp\ft4001.w persistent set h_ft4001.
    
        run dispatch in h_ft4001 ("initialize").
    
        wait-for close of h_ft4001.
    
        wWin:sensitive = yes. 
    
    
  3. lima

    lima Membro Participativo

    Muito obrigado Eduardo, funcionou perfeitamente.

    Abraço.
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página