Patch level : 12.0 302

Files correlati     :  ba0.exe
Commento            :

Corretto cambio studio quando da un codice ditta presente in quello studio ad un altro studio dove quel codice ditta non esiste.
Ora la ditta viene richiesta quando nello studio di destinazione ce n'è più di una.

git-svn-id: svn://10.65.10.50/branches/R_10_00@23390 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
bonazzi 2016-10-25 22:35:50 +00:00
parent dccbe6df8b
commit 63d59963a3

View File

@ -1906,36 +1906,27 @@ bool TMenu_application::choose_study()
enable_options_menu(false);
TStudy_mask m;
bool ok = m.run() == K_ENTER;
if (ok)
TPrefix& p = prefix();
const TString oldstudy = p.get_studio();
bool ok = m.run() == K_ENTER;
if (ok && oldstudy != m.get(DLG_USER))
{
TPrefix& p = prefix();
long ditta = p.get_codditta();
if (ditta > 0)
ini_set_int(CONFIG_STUDIO, "Main", "Firm", ditta); // memorizza ditta corrente
ok = p.set_studio(m.get(DLG_USER));
if (ok)
{
ditta = ini_get_int(CONFIG_STUDIO, "Main", "Firm", 0); // recupera ditta corrente
if (ditta <= 0)
{
TPointer_array ditte;
if (p.firms(ditte) > 0)
ditta = ditte.get_long(0);
}
_menu.set_firm(ditta);
deconnect_user();
ok = check_user();
enable_options_menu(true); // Abilita le voci di personalizzazione
_menu.set_firm(0L);
}
if (ok)
_mask->stop_run(K_F9); // Ricarica maschera
else
dispatch_e_menu(M_FILE_QUIT); // Termina applicazione gracefully
}
// Abilita le voci di personalizzazione
enable_options_menu(true);
else
enable_options_menu(true); // Abilita le voci di personalizzazione
return ok;
}