[RESOLVIDO] - Menu não monta após mudança de usuário

Olá pessoal,

Estou fazendo uma aplicação extremamente simples, mas estou com problemas na montagem de menu. O que acontece é o seguinte, quando acesso o sistema com um usuário o menu monta bem direitinho contudo, quando entro com outro usuário o menu não monta mais e quando volto ao usuário anterior também não monta mais. Preciso ficar limpando os históricos do navegador para dar certo. Como estou fazendo?

Na tela de login tenho o código:

No evento onApplicationInit

$vlUsuario = 0;
$vlTipoUsuario = 0;
$vlEmail = ‘’;

sc_set_global($vlUsuario);
sc_set_global($vlTipoUsuario);
sc_set_global($vlEmail);

No botão, do tipo PHP, o código:

$vlLogin = {Login};
$vlSenha = {Senha};
$vlSenha = md5($vlSenha);

$sql = "SELECT Usuario_ID, Usuario_Nome, Usuario_Login, ";
$sql .= "Usuario_Email, Usuario_Senha, Usuario_Tipo “;
$sql .= “FROM a002_usuarios “;
$sql .= “WHERE Usuario_Login = '”.$vlLogin.”’ AND Usuario_Senha = '”.$vlSenha.”’ ";

sc_lookup(Ds, $sql);
if(!empty({Ds})){
[vlUsuario] = {Ds[0][0]};
[vlEmail] = {Ds[0][3]};
[vlTipoUsuario] = {Ds[0][5]};
sc_redir(‘menuprincipal’,’’,’’);
}else
{
echo ‘Login ou Senha inválidos.
Tente novamente.’;
};

E no evento OnLoad do Menu Principal onde os menus deverão ser montados, o código:

if ([vlTipoUsuario] == 0){
sc_redir(login);
} else
if ([vlTipoUsuario] == 1){
sc_menu_delete(item_16);
sc_menu_delete(item_17);
sc_menu_delete(item_19);
} else
if ([vlTipoUsuario] == 2){
sc_menu_delete(item_2);
sc_menu_delete(item_3);
sc_menu_delete(item_4);
sc_menu_delete(item_6);
sc_menu_delete(item_7);
sc_menu_delete(item_11);
sc_menu_delete(item_12);
sc_menu_delete(item_13);
sc_menu_delete(item_14);
sc_menu_delete(item_15);
sc_menu_delete(item_18);
sc_menu_delete(item_21);
};

Então, como posso resolver isso?

Grato,

Ilano

Seguinte galera,
Resolvi, de forma menos profissional, a minha questão.

Primeiro, no evento onApplicationInit do formulário Login:

$vlUsuario = 0;
$vlTipoUsuario = 0;
$vlEmail = ‘’;

sc_set_global($vlUsuario);
sc_set_global($vlTipoUsuario);
sc_set_global($vlEmail);

Segundo, ainda no formulário de login, no evento do botão Login:

$vlLogin = {Login};
$vlSenha = {Senha};
$vlSenha = md5($vlSenha);

$sql = "SELECT Usuario_ID, Usuario_Nome, Usuario_Login, ";
$sql .= "Usuario_Email, Usuario_Senha, Usuario_Tipo “;
$sql .= “FROM a002_usuarios “;
$sql .= “WHERE Usuario_Login = '”.$vlLogin.”’ AND Usuario_Senha = '”.$vlSenha.”’ ";

sc_lookup(Ds, $sql);
if(!empty({Ds})){
[vlUsuario] = {Ds[0][0]};
[vlEmail] = {Ds[0][3]};
[vlTipoUsuario] = {Ds[0][5]};

sc_redir('validarusuario','','');

}else
{
echo ‘Login ou Senha inválidos.
Tente novamente.’;
};

Terceiro, no formulário validarusuario, no evento onLoad:

if ([vlTipoUsuario] == 0){
sc_redir(login);
} else
if ([vlTipoUsuario] == 1){
sc_redir(‘menuprincipal’,’’,’’);
} else
if ([vlTipoUsuario] == 2){
sc_redir(‘menu’,’’,’’);
};

Se alguém tiver uma solução mais profissional, por favor, publiquem aqui.