Notei que no webhelp trás assim:
onApplicationInit - Este evento é executado quando o aplicativo é carregado apenas pela primeira vez
onScriptInit - Este evento é executado quando o aplicativo está carregando
onLoad - Este evento ocorre quando a página é carregada, ou seja, quando estiver a navegar a partir de um registro para outro, clicando nos botões (novo, inserção, etc.)
Muitos iniciantes como eu se perdem nesta explicações simplistas do WebHelp.
E por vezes fazem coisas erradas como acessar as variáveis locais da aplicação no onScriptInit de um formulário.
Exemplo: Quero substituir o “campoteste” que tem seu conteúdo buscado na base de dados pela palavra “oi;”
{campoteste} = “oi”; —> Isto so vai funcionar no onLoad.
Se colocar no onApplicationInit ou no onScriptInit ele irá continuar a carregar a string do banco de dados. O único local onde permite eu trabalhar o campo após executad o sql é no onLoad
Por isto coloco aqui a explicação que achei mais válida e que encontrei no help dos metódos.
#####################################################################################################
onApplicationInit
Este evento ocorre antes da aplicação executar o SQL. Só é executada ao carregar a aplicação.
É usado para verificações de variáveis e para verificações de segurança.
Ex:
if ([glo_var_depto] != ‘financeiro’){
sc_redir(app_x.php);
}
Notou a frase verificação de segurança e de variávieis? viu que ocorre antes da aplicação executar o SQL?
#####################################################################################################
onScriptInit
Para formulário: Este evento ocorre antes da inicialização do formulário, neste momento, as variáveis locais da aplicação, não estão disponíveis.
Para um formulário de controle: Este evento ocorre antes da inicialização do formulário de controle.
O código é executado antes que a aplicação seja iniciada, neste momento, as variáveis locais da aplicação, não estão disponíveis para uso. E o SQL ainda não foi executado.
Aqui o sql ainda não foi executado e se guardar algo em uma variável de campo o sql irá substituir o que você fez.
Também as variáveis locais não estão disponíveis.
#####################################################################################################
onLoad
Este evento é executado antes que o formulário seja carregado. Neste momento todas as variáveis da aplicação estão disponíveis.
Podemos neste evento mover alguns valores padrão para os campos do formulário.
Ex:
{empresa} = [glo_empresa];
//movendo uma variavel de sessão [glo_empresa] para o campo do form {empresa}.
#####################################################################################################
Espero que isto ajude os iniciantes como me ajudou.