diff --git a/cg/cg4200.cpp b/cg/cg4200.cpp index 03a16e179..81c59691c 100755 --- a/cg/cg4200.cpp +++ b/cg/cg4200.cpp @@ -165,12 +165,12 @@ bool TCopia_archivi::menu(MENU_TAG) const bool copy_ivd = _msk->get_bool(F_IVD); if (copy_pcon || copy_causali || copy_clifo || copy_ivd) { - set_firm(to_firm); - TLocalisamfile mov(LF_MOV); - - if (mov.eod() == 0) + if (prefhndl->exist(to_firm)) { - if (prefhndl->exist(to_firm)) + set_firm(to_firm); + TLocalisamfile mov(LF_MOV); + + if ((mov.eod() == 0) || (!copy_pcon && !copy_causali && !copy_clifo)) { TString mess("Attenzione "); int count = 0; @@ -222,10 +222,10 @@ bool TCopia_archivi::menu(MENU_TAG) copyivd(from_firm, to_firm); } } - else error_box("Gli archivi della ditta %d non sono stati ancora generati",to_firm); + else error_box("La copia si puo' effettuare solo se non sono stati registrati movimenti"); + set_firm(_default_firm); } - else error_box("La copia si puo' effettuare solo se non sono stati registrati movimenti"); - set_firm(_default_firm); + else error_box("Gli archivi della ditta %d non sono stati ancora generati",to_firm); _msk->reset(); } }