Tenho um Dialog que atualizo de vez em quando a msg para o usuario ir acompanhando o andamento do processo. Funciona bem... ao ser o fato de que de cada 100 execuções (digamos), uma ou duas da erro. Não consegui identificar quando isso ocorre e nem o por que. So sei que eh muito inconstante. Ha dias que não acontece de jeito nenhum. Já em outros, a frequencia é um tanto incomodadora!
O Dialog eh o abaixo! O erro acontece quando atualizo a msg mostrada na janela!
**************************************************************
FUNCTION MsgFinalCupom( cMsg, nValor, hbBotao )
**************************************************************
LOCAL oGroup1, oLabel1, oGroup2, oLabel2, oLabel3
If hbBotao = Nil
hbBotao := .f.
EndIf
FechaMsg()
INIT DIALOG oDlgFinalCupom TITLE "Cria Soft" ;
COLOR 10342094 ;
SIZE 596,275 ;
STYLE DS_CENTER + WS_VISIBLE ;
ON INIT {|| If( hbBotao = .f., oButMsgFinalCupom:disable(),) }
@ 12,09 GROUPBOX oGroup1 CAPTION "Status" SIZE 572,90 ;
STYLE BS_LEFT
@ 21,46 SAY oLabel1 CAPTION cMsg SIZE 556,30 ;
STYLE SS_CENTER +DT_VCENTER+DT_SINGLELINE ;
FONT HFont():Add( '',0,-18,700,,,)
InkeyGui(30)
***
***
@ 13,101 GROUPBOX oGroup2 CAPTION "" SIZE 572,90 ;
STYLE BS_LEFT
@ 30,120 SAY oLabel2 CAPTION "Troco" TRANSPARENT SIZE 198,59 ;
STYLE SS_RIGHT ;
FONT HFont():Add( '',0,-48,700,,,)
oLabel2:FontBold := .T.
@ 260,113 SAY nValor TRANSPARENT SIZE 268,68 ;
STYLE DT_VCENTER+DT_SINGLELINE;
COLOR 255 ;
FONT HFont():Add( '',0,-63,700,,,)
@ 240,202 BUTTONEX oButMsgFinalCupom CAPTION "Ok" SIZE 98,32 ;
ON CLICK {|| oDlgFinalCupom:Close() } ;
STYLE WS_TABSTOP
If hbBotao = .f.
oDlgFinalCupom:Activate(.t.)
Else
oDlgFinalCupom:Activate(.f.)
Endif
InkeyGui(100)
Return .T.
*********************************************************
FUNCTION AtualizaMsgFinalCupom(vMensagem)
*********************************************************
oDlgFinalCupom:ACONTROLS[2]:SETTEXT(vMensagem)
RETURN NIL
O erro (Error BASE/1004 Metodo nao exportado: ACONTROLS) eh nessa linha oDlgFinalCupom:ACONTROLS[2]:SETTEXT(vMensagem)
Alguém tem idéia de que detalhe estou esquecendo?
Janio