1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Anuncie Aqui
    Anuncie aqui você Também: fdantas@4each.com.br

Chamar Programa Passando Parametros

Discussão em 'Progress 4GL' iniciado por andreluisbrandao, Junho 7, 2011.

  1. cagimenes

    cagimenes Sem Pontuação

    Bom, os zoons padrão do EMS 5 tem um esquema um pouco diferente pra serem usados. Segue um exemplo de código comentado, referentes ao programa de zoom do cadastro de matriz de tradução.

    /* primeiro da um find na tabela que se deseja pesquisar utilizando como chave de pesquisa o campo que será atualizado pelo zoom */
    find first matriz_trad_cta_ctbl_ext no-lock
    where matriz_trad_cta_ctbl_ext.cod_unid_organ = v_cod_empres_usuar /*estou utilizando essa variável pois so me intereaasm as matrizes da empresa corrente */
    and matriz_trad_cta_ctbl_ext.cod_matriz_trad_cta_ext = c_cod_matriz_trad_cta_ext:screen-value in frame f-pg-sel no-error. /* este é o campo que será atualizado pelo zoom */

    /* esta variável deve ser criada no definitions obedecendo à seguinte regra : v_rec_nome_da_tabela, onde nome_da_tabela é a tabela à qual o programa de zoom faz referência*/
    assign v_rec_matriz_trad_cta_ctbl_ext = (if avail matriz_trad_cta_ctbl_ext then recid(matriz_trad_cta_ctbl_ext) else ?).

    /* aqui eu rodo o programa sem parâmetro algum */
    run prgint/utb/utb119ka.w.

    if v_rec_matriz_trad_cta_ctbl_ext <> ? then do: /* esse trecho só será executado caso a pesquisa tenha retornado algum valor */
    /* aqui eu vou reposicionar o registro da tabela que estou trabalhando para o registro retornado pela pesquisa, atraves do recid (rowid no EMS2) */
    find first matriz_trad_cta_ctbl_ext no-lock
    where recid(matriz_trad_cta_ctbl_ext) = v_rec_matriz_trad_cta_ctbl_ext no-error.
    /* e finalmente atualizo o campo do meu cadastro com o campo que desejo pegar da tabela */
    assign c_cod_matriz_trad_cta_ext:screen-value in frame f-pg-sel = matriz_trad_cta_ctbl_ext.cod_matriz_trad_cta_ext.
    end.
  2. yurifranzoni

    yurifranzoni Sem Pontuação

    Rapaz, muito obrigado! Tava precisando exatamente disso, nada que um tópico de um ano de vida não resolva.

    Valeu!!

Compartilhe esta Página