Duvida Consulta com mensagens

Discussão em 'Progress 4GL' iniciado por Francisco Santos, Fevereiro 12, 2014.

  1. Francisco Santos

    Francisco Santos Sem Pontuação

    Boa tarde ,
    sou novo no forum e tambem estou começando com progress.
    estou fazendo uma consulta e precisava que ao executar, fossem exibidas mensagens

    mas ao iniciar so consigo usar alert-box, o que nao seria o contrario do que quero, pois seria melhor usar um dialog-box, no entanto, nao estou conseguindo.

    eis um exemplo do codigo:


    MESSAGE "Iniciando Consulta"
    VIEW-AS DIALOG-BOX.

    OUTPUT TO VALUE ("c:\temp\consulta.csv").


    FOR EACH ems2mov.requisicao, EACH it-requisicao OF requisicao,
    EACH ems2cad.item OF it-requisicao
    WHERE ems2cad.item.it-codigo = ems2mov.it-requisicao.it-codigo
    AND requisicao.nome-abrev = 't.novais'
    AND requisicao.dt-requisicao >= 05/13/2013 NO-LOCK:


    DISPLAY

    requisicao.nr-requisicao
    requisicao.nome-abrev
    requisicao.dt-requisicao
    requisicao.loc-entrega
    item.descricao-1
    it-requisicao.qt-requisitada
    requisicao.narrativa
    requisicao.nome-aprov
    WITH WIDTH 300.

    END.
    OUTPUT CLOSE.
    MESSAGE "Consulta Concluida"
    VIEW-AS ALERT-BOX INFO BUTTONS OK.
    DOS SILENT notepad "c:\temp\consulta.csv".




    Se for possível me dar uma auxilio estarei no aguardo, desde ja agradeço.
  2. lwazevedo

    lwazevedo Membro Ativo

    Acho que entendi o que tu que fazer e para isso o ideal é você rodar uma procedure persistent onde você passa o parâmetro para um arquivo.p que monta a dialog e nesta dialog você mostra os valores...
    tipo assim...

    montaDialog.p -
    /* Procedure dentro do arquivo montaDialog*/
    procedure p-parametro:
    def var valor as char.

    assign fil-in:screen-value in frame {&frame-name} = valor.

    end procedure.

    ai no programa que você que mostrar os dados da leitura você faz o seguinte.

    def var h-comp as handle.

    run montaDialog.p persistent set h-comp.

    for each sua tabela no-lock:

    run p-parametro in h-comp (input campo.tabela).

    end.

    isso resolve teu problema, se tiver maiores dúvidas post ai.

    abs
  3. jdchaves

    jdchaves Membro Participativo

    Se eu entendi,

    Código:
    DEFINE VARIABLE h-acomp      AS HANDLE      NO-UNDO.
    
    RUN utp/ut-acomp.p PERSISTENT SET h-acomp.
    
    RUN pi-inicializar IN h-acomp (INPUT 'Consulta XXX').
    
    OUTPUT TO VALUE ("c:\temp\consulta.csv").
    
    
    FOR EACH ems2mov.requisicao, EACH it-requisicao OF requisicao,
    EACH ems2cad.item OF it-requisicao
    WHERE ems2cad.item.it-codigo = ems2mov.it-requisicao.it-codigo
    AND requisicao.nome-abrev = 't.novais'
    AND requisicao.dt-requisicao >= 05/13/2013 NO-LOCK:
    
    RUN pi-acompanhar IN h-acomp (INPUT "Gerando consulta, REQ.: " + string(requisicao.nr-requisicao)).
    
    
    DISPLAY
    
    requisicao.nr-requisicao 
    requisicao.nome-abrev 
    requisicao.dt-requisicao 
    requisicao.loc-entrega 
    item.descricao-1 
    it-requisicao.qt-requisitada 
    requisicao.narrativa 
    requisicao.nome-aprov
    WITH WIDTH 300. 
    
    END.
    OUTPUT CLOSE.
    
    RUN pi-finalizar IN h-acomp.
    
    DOS SILENT notepad "c:\temp\consulta.csv".
    
    
    

Compartilhe esta Página