Utilizar método de um objeto em um XControl

Olá, no projeto em que estou trabalhando todas as caixas de alarme(E3Alarm) são um XControl com algumas propriedades para facilitar a impressão de relatório. Porém agora quero implementar a justificativa de reconhecimento de alarme que vi no KB (https://kb.elipse.com.br/kb30900-justificando-o-reconhecimento-do-alarme/), e para isso é usado o método do E3Alarm GetFocusedEvent(), gostaria de saber se é possível eu acessar esse método pelo XControl, pois até agora só deu erro de procedimento inválido ou que o objeto não dá suporte para a propriedade ou método.

Agradeço desde já!

Qual objeto chama o método GetFocusedEvent()?

O próprio E3Alarm? E.g.: Evento de duplo clique:

Sub E3Alarm_DblClick()
	Dim obj
	Set obj = Me.GetFocusedEvent()	
	
	If Not obj Is Nothing then
		' Do stuffs...
	End If
End Sub

O script que chama o método GetFocusedEvent() é ativado por um botão que está na mesma tela em que o XControl se encontra

Ou seja, num botão na mesma tela do XC (e não contido no XC).

Uma maneira é a seguinte:

Sub btnGetFocusedEvent_Click()
    Dim objAlarm
    Dim objEventStatus
    
    ' Caminho do objeto E3Alarm dentro do xc, nao eh possivel localiza-lo pelo
    ' AppBrowser neste caso. 
    Set objAE3larm = Screen.Item("xc1").Item("E3Alarm1")
    Set objEventStatus = objAE3larm.GetFocusedEvent()   
    
    If Not objEventStatus Is Nothing Then
        ' Do stuffs...
        MsgBox objEventStatus.MEssage
    End If
End Sub
1 Like

Deu certo, muito obrigado!

meu esta dando este erro:

TelaProgHoraria_ILUM_OnPreShow
Erro na linha 7, O objeto não dá suporte para a propriedade ou método: ‘Item(…).ProgHorariaLJilum Erro de tempo de
execução do Microsoft VBScript)’
sabe me dizer como resolveria esse erro?