Bom dia, Tenho a seguinte dúvida, eu criei um programa para produção, mas o que acontece é o seguinte, o usuário da produção, fica com um programa aberto, neste programa existe um browser com o que deve ser produzido conforme o outro usuário na outra ponta utiliza um programa de programação de produção...pois bem, o que acontece é o seguinte, o usuário que faz a programação da produção inclui alguns itens para serem produzidos, mas o do outro lado o browser não atualiza automaticamente, ele só vai ver novas solicitações se clicar em uma função que coloquei de atualização dando um novo open query no browser... eu preciso de uma função que faça automaticamente esta atualização a cada 3 segundos por exemplo ou a cada nova inclusão na tabela relacionada ao browser..... Att, Diogo
Pode utilizar um PsTimer e programa-lo para refrescar o browse de 3 em 3 segundos. (mais fácil) Pode também utilizar comunicação por sockets (no momento em que o utilizador insere um item, o programa manda uma comunicação para o programa de modo a actualizar o browse). Tenho um programa que utiliza os sockets e outro que utiliza o PsTimer. Se precisar, posso anexar no fórum. Baltazar
Exemplo AutoRun: AutoRun.w Exemplo Sockets (1) hl_u0007.w - Programa Base (Tem um OCX, mas não precisa dele) (2) hl_u0008.w - Programa que envia a Comunicação Estes dois programas fazem comunicação bi-direccional. (Não precisa de fazer isso). Basta fazer comunicação do (2) para o (1). Espero que ajude Baltazar
Diogo, Estava com o mesmo problema, e o Suporte Progress me passou este exemplo para utilizar o PSTimer que permite a execução (exemplo um contador), ao mesmo tempo que você pode efetuar outras alterações em tela. Lembrando que o intervalo do PSTimer é em MILISEGUNDOS. No lugar que ele esta utilizando o contador, você pode substituir pela abertura do seu browser. Para para o processo utilize: chCtrlFrameSTimer:Enabled = false. Código: ID: 19064 Title: "ACTIVEX - How To Program The Progress PSTtimer OCX?" Created: 08/24/1999 Last Modified: 08/02/2007 Status: Verified Goals: How to Program the Progress PSTimer OCX? How to add code for the PSTimer OCX's 'Tick' event? Facts: Progress 9.x Progress 8.x OpenEdge 10.x Windows Fixes: The example is a fill-in field whose value increases by 1 every two seconds. It uses the OCX.Tick event and the Interval attribute of the PSTimer OCX. Step by Step details: 1) Start a UIB session. 2) Create a new window (regular or Smart Window). 3) add an integer fill-in field to the window. Its default name is FILL-IN-1. 4) Add the PSTimer OCX object. The PSTimer icon in the object palette is a stopwatch. 5) Create an OCX.Tick event for the PSTimer with the following code: (Use the New button to create events not listed in the event combo-box.) FILL-IN-1 = FILL-IN-1 + 1. DISPLAY FILL-IN-1 WITH FRAME {&FRAME-NAME}. 6) Add a button widget to the window. 7) Create a CHOOSE trigger for the button with the following code: chCtrlFrame:PSTimer:Interval = 2000. Espere que ajude. Att.