on_open evento

Quando o método open de um item é chamado no cliente ou no servidor, a aplicação do servidor executa o seguinte código:

result = None
if self.task.on_open:
    result = self.task.on_open(self, params)
if result is None and self.on_open:
    result = self.on_open(self, params)
if result is None:
    result = self.execute_open(params)

Ele verifica se a tarefa possui um manipulador de evento on_open. Se o manipulador de evento on_open estiver declarado no módulo do servidor da tarefa, ele é executado.

Se o manipulador de evento on_open da tarefa não estiver declarado ou o resultado do manipulador for None, o método verifica se o item possui um manipulador de evento on_open. Se estiver declarado no módulo do servidor do item, ele é executado.

Se o resultado retornado pelo manipulador de evento do item for None, o método execute_open do item é chamado, que gera a consulta SQL, a executa e retorna o resultado.

Exemplo

Aqui está um exemplo de como o on_open pode ser usado