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

Parâmetros Folder UPC

Discussão em 'Progress 4GL' iniciado por rohis, Dezembro 1, 2010.

  1. rohis

    rohis Membro Ativo

    Olá!

    Criei um folder via UPC que tem um browser como objeto principal.
    Preciso passar uma variável como parâmetro para este novo browser para preencher automaticamente os campos inicial e final.

    Funciona assim: Na aba original do produto que contem a pesquisa do item, seleciono o item 10. Ao clicar na aba customizada os campos de seleção devem ser preenchidos automaticamente com o valor 10.

    Alguém pode me ajudar?
    Segue parte do código com a chamada do browser:

    RUN init-object IN p-wgh-object (INPUT "esbrw/b01upc_z02in172.w":U, /* Nome do Objeto Browser*/
    INPUT p-wgh-frame,
    INPUT "Layout = ":U,
    OUTPUT h-browse).
  2. rohis

    rohis Membro Ativo

    Pessoal consegui resolver!
    Não passei parâmetro para o browser novo. Fiz outra solução:
    1) Gravei em uma variável o item selecionado na Trigger de Value-Changed do Browser Original da Datasul
    2) Na trigger de value changed do browser novo pesquisei o handle dos objetos e gravei em uma variável auxiliar, depois foi só atrubuir o valor da variável no screen-value dos campos c-inicial e final.

    if p-wgh-object:file-name = "inbrw/b03in172.w" AND
    p-ind-object = "BROWSER" then do:
    case p-ind-event:
    when 'VALUE-CHANGED' then do:

    find ITEM where rowid(ITEM) = p-row-table no-lock no-error.
    if avail ITEM then do:
    ASSIGN c-item = ITEM.it-codigo.
    END.
    END.
    END.
    END.


    if p-wgh-object:file-name = "esbrw/b01upc_z02in172.w" AND
    p-ind-object = "BROWSER" then do:
    case p-ind-event:
    when 'VALUE-CHANGED' then do:

    if valid-handle(p-wgh-frame:first-child) then do:
    assign wgh-aux = p-wgh-frame:first-child /* FRAME PRINCIPAL DA VIEWER */
    wgh-aux = wgh-aux:first-child. /* primeiro objeto da frame principal */
    do while valid-handle(wgh-aux):
    if can-set(wgh-aux,"name") then do:

    IF wgh-aux:NAME = "c-inicial" THEN ASSIGN wgh-aux:SCREEN-VALUE = c-item.
    IF wgh-aux:NAME = "c-final" THEN ASSIGN wgh-aux:SCREEN-VALUE = c-item.
    END.
    ASSIGN wgh-aux = wgh-aux:next-sibling.
    end. /* do while valid-handle */
    end.

    END.
    END.
    END.

    Obrigada!

Compartilhe esta Página