[RESOLVIDO] ICMS da despesa do documento - RE1001D

Discussão em 'EMS , HCM e Totvs 11' iniciado por Bruno Nicola, Março 13, 2015.

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

    Bruno Nicola Membro Participativo

    Estou fazendo a UPC em questão acima, porém não consegui jogar valor no campo que preciso no momento do leave do campo que faço a checagem, somente nos eventos ( p-ind-event ). Peguei as handles dos campos, consigo jogar o valor no campo que tenho que jogar, porém somente nos eventos, no leave não consegui. Pesquisei aqui no forum e estou tentando dar on leave, porém não passa por lá.
    De uma olhada na UPC, deixei somente a parte que estou testando a passagem pelo leave e não passa :

    /* --------------------------------
    variaveis para o controle da upc
    -------------------------------- */
    define input parameter p-ind-event as character no-undo.
    define input parameter p-ind-object as character 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 character no-undo.
    define input parameter p-row-table as rowid no-undo.

    define variable h-nat-oper-ac as handle no-undo.
    define variable h-de-aliquota-icm as handle no-undo.

    IF p-ind-event = "before-display" AND p-ind-object = "CONTAINER" Then Do:

    RUN zep\busca-handle.p(input 'nat-oper-ac', 'fill-in', p-wgh-frame, output h-nat-oper-ac).

    RUN zep\busca-handle.p(input 'de-aliquota-icm', 'fill-in', p-wgh-frame, output h-de-aliquota-icm).

    if valid-handle(h-nat-oper-ac) then do:
    ON 'leave':U OF h-nat-oper-ac
    DO:
    MESSAGE "passei" VIEW-AS ALERT-BOX. /* aqui é onde vou fazer o find e as tratativas que tenho que fazer para jogar valor no campo que preciso alterar */
    RETURN.
    END.

    END.

    END.
  2. woliveira

    woliveira Sem Pontuação

    Boa tarde Richard, vc poderia me ajudar na utilização da chamda do programa re1001e, pois estou fazendo um especifico para importação de XML e estou precizando chamar esse programa para informar a nota de devolução.
  3. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    o macete pra ver como executar um programa se não estiver usando temp-tables ou campos global shared, abre o .r no bloco de notas, marca pra ele fazer o "word wrap" e procura por temp-table, vc vai achar a temp-table que o programa recebe, faço muito isso com os rp.r, e vc também verá as procedures que vc pode chamar depois que fizer um run persistent no programa e quais parametros deve passar.
  4. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    é que eu tenho uma UPC no RE1001E e não o chamo de outro programa.
  5. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    O problema ai meu caro é que os on leave não dá pra usar desse jeito, vc tem que fazer assim ....
    Código:
                    on LEAVE of lote     persistent run upc/upc-re1001b1_leave.p(codEmitente, serieDocto, nroDocto, natOperacao, itCodigo, lote, validade).
    
    Não dá pra fazer o on leave "local" vamos assim dizer.
  6. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    Meu caro, nesse caso vc cria na upc um botão que é copia do botão que te interessa, simples, pega o handle dele, cria um botão novo e copia todas as propriedades dele, inclusive a imagem, é handle:propriedade = handleOrigem:propriedade, usa o comando move-to-top pra que seu botão fique por cima do original, dentro do seu botão, depois que fizer tudo que vc precisa, faz apply 'choose' to handleOrigem, dai ele vai executar a tarefa do botão original
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página