[RESOLVIDO] UPC

Discussão em 'EMS , HCM e Totvs 11' iniciado por Ivone, Março 19, 2014.

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

    Ivone Membro Participativo

    Boa tarde, preciso fazer uma upc do programa prgfin/cmg/cmg704ca.p, onde preciso do nome do arquivo que foi escolhido pelo usuário. Não estou conseguindo fazer isso. Help.

    DEFINE INPUT PARAMETER p-ind-event AS CHAR NO-UNDO.
    DEFINE INPUT PARAMETER p-ind-object AS CHAR NO-UNDO.
    DEFINE INPUT PARAMETER p-wgh-object AS HANDLE NO-UNDO.
    DEFINE INPUT PARAMETER p-wgh-frame AS WIDGET-HANDLE NO-UNDO.
    DEFINE INPUT PARAMETER p-cod-table AS CHAR NO-UNDO.
    DEFINE INPUT PARAMETER p-row-table AS ROWID NO-UNDO.

    DEFINE NEW GLOBAL SHARED VAR wh-objeto AS WIDGET-HANDLE NO-UNDO.
    DEFINE NEW GLOBAL SHARED VAR wh-bco-string AS WIDGET-HANDLE NO-UNDO.
    DEFINE VAR c-objeto AS CHAR NO-UNDO.

    DEFINE VAR codigo AS CHAR FORMAT "XXX".
    DEFINE VAR tipo AS CHAR FORMAT "X".
    DEFINE VAR text-string AS CHARACTER NO-UNDO FORMAT "x(201)".

    DEFINE temp-table arq-bb
    FIELD linha-1 AS CHAR FORMAT "X(45)"
    FIELD linha-2 AS CHAR FORMAT "X(158)".

    ASSIGN wh-objeto = p-wgh-frame:first-child.
    DO WHILE VALID-HANDLE(wh-objeto):

    IF wh-objeto:NAME = "v_nom_filename_import" THEN
    ASSIGN wh-bco-string = wh-objeto.

    IF wh-objeto:TYPE = 'Field-group' THEN DO:
    /*....e vai para o primeiro campo*/
    ASSIGN wh-objeto = wh-objeto:first-child.
    END.
    ELSE DO: /*Caso contrario vai para o proximo.*/
    ASSIGN wh-objeto = wh-objeto:NEXT-SIBLING.
    END.
    END.

    /*************** GRAVAÇÃO ******************/

    IF p-ind-event = "ASSIGN" AND
    p-ind-object = "VIEWER" THEN DO:

    IF VALID-HANDLE(wh-bco-string) THEN
    ASSIGN text-string = wh-bco-string:SCREEN-VALUE.

    MESSAGE text-string.
  2. jaisonantoniazzi

    jaisonantoniazzi Membro Ativo

    Olá @Ivone
    antes de analisar o teu problema, favor verificar se o parâmetro p-row-table é RECID, pois é EMS5.

    Sobre a UPC, o que você precisa é:
    1. Declarar a variável text-string como GLOBAL,
    2. Esconder o botão OK da TOTVS,
    3. Criar um botão OK falso sobre o botão da TOTVS, que ao ser clicado, aplicará o choose no botão OK da TOTVS (novo programa).
    Neste novo programa criado bastará declarar a variável text-string como global e mostrar o screen-value, como já fez.
    Favor curtir as minhas publicações em http://4each.com.br/resources/

    Atenciosamente,
    Jaison Antoniazzi
    Ivone curtiu isso.
  3. Ivone

    Ivone Membro Participativo

    Cara valeu, muito obrigada! só foi eu mudar text-string para GLOBAL.
    Deus te abençõe!
  4. jaisonantoniazzi

    jaisonantoniazzi Membro Ativo

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

Compartilhe esta Página