[RESOLVIDO] Alterar DEFAULT de programa EMS

Discussão em 'EMS , HCM e Totvs 11' iniciado por FernandaSantos, Setembro 16, 2009.

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

    FernandaSantos Membro Participativo

    Olá Pessoal!

    Como eu faço para mudar o default de um campo num programa que é chamado pelo botão parâmetro sem o usuário precisar clicar no botão para mudá-lo??

    A situação é a seguinte:
    Hoje um programa da Datasul ao chamar o programa pelo botão “Parâmetro” o campo já vem “marcado” (YES) :


    Como a opção "marcada" nunca é usada, o usuário precisa todas as vezes antes de confirmar a transação (no programa principal) chamar o programa de parâmetros e desmarcar essa opção (deixando o registro = NO):


    Acredito que essa consistência deva ser colocada na UPC do programa principal, minha dúvida é como pode ser feito?

    PS: Não pode ser colocado na UPC do próprio programa pq assim o usuário continuaria tendo que clicar no botão de parâmetro e essa não é a intenção....


    Obrigada!!!

    Arquivos Anexados:

  2. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Acredito que a única maneira, seria se o programa gravasse este valor em alguma variável global, e através de uma UPC no programa principal vc alterasse este valor.

    Tenta utilizar o ProSpy do Protools, para tentar descobrir as variáveis globais do programa.

    Qualquer coisa posta o programa para tentar encontrar.

    T+
  3. FernandaSantos

    FernandaSantos Membro Participativo

    Oi Cleilton,
    Obrigada por me responder!

    Então, eu havia analisado o log do SPY e ele me apontou justamente que o programa chamado pelo programa principal recebe uma variável do tipo lógico como parâmetro, e o problema na passagem do parâmetro é q essa mesma variável é retornada para o programa principal.

    Eu não consegui visualizar no log gerado “variáveis” somente os eventos/procedures e o valor passado como parâmetro.

    Você teria um exemplo de UPC em uma DIOLOG? Em qual dos Eventos eu poderia colocar uma validação no ON CHOOSE do botão Ok (bt-ok)?? :D

    Qualquer dica é válida!... ;)

    Desde já obrigada

    Fernanda
  4. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Olá Fernanda,

    Pelo que observei no programa, mesmo sem vc me dizer qual é (eu descobri), não vejo uma saída, devido a passagem de parâmetros, e o programa principal não dar abertura para isto.

    Uma opção para diminuir um clique seria a UPC para esta sua tela de parâmetros, porém fiz o teste e não foi possível atribuir um valor para o campo, pois o valor do campo recebido só é setado após todos os eventos de UPC. (qualquer ação que façamos não é aplicada)

    Outra alternativa seria o Screen Optmizer, se vc tivesse licença, porém já testei e também não funcionou.

    Infelizmente acho que seus usuários terão que ficar clicando mesmo.

    Att.
  5. FernandaSantos

    FernandaSantos Membro Participativo

    Realmente, por não conseguir validar no último evento é que complicou. :(

    Estava tentando fazer o seguinte:

    Na upc do programa principal eu coloquei no evento ‘AFTER-INITIALIZE’ para dar um ‘APPLY CHOOSE’ no botão "bt-param"


    O botão "bt-param" chama o programa "filho" (tela de parâmetros, tipo DIALOG) que por sua vez tem cadastrada uma upc.


    Normalmente escolhe-se um evento para colocar a consistência, neste caso como o último evento é "transparente" e eu não consigo interagir, na upc, sem referenciar um evento (dessa forma faz para todos) eu mudo o valor do campo togle-box e em seguida eu dou um Apply Choose no botão Ok (não haveria problema pq essa Upc só é executada uma vez na execução do programa principal no evento "AFTER-INITIALIZE").

    O problema é q este apply choose no botão Ok (da Dialog) não funciona!
    Tentei de várias maneiras até mesmo criar um botão que sobreponha o bt-ok padrão (nesse botão criado na upc o aplly chosse funciona!)


    Enfim, em último caso se não for mesmo possível o usáário terá que interagir e alterar manualmente o valor campo.

    Muito Obrigada pela ajuda! :D

    Fernanda
  6. mcarril

    mcarril Membro Participativo

    Oi Fê, você olhou se este "Considera ultima transação", não é campo de tabela com initial yes ? É uma variável mesmo ?

    E não tem como setar a variável e descobrir o nome da frame e fechar ela ?

    Desculpe a ignorância.. Não trabalho com Datasul...


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

Compartilhe esta Página