diff --git a/ba/ba0.cpp b/ba/ba0.cpp index a823a27f0..edc227da7 100755 --- a/ba/ba0.cpp +++ b/ba/ba0.cpp @@ -10,6 +10,8 @@ #include #include #include +#include +#include #include "ba0.h" #include "ba0100a.h" @@ -123,7 +125,17 @@ bool TMenu_application::build_firm_data(long codditta, bool flagcom) if (exist) return message_box("Direttorio dati danneggiato, impossibile attivare la ditta %ld", codditta); if (!yesno_box("Gli archivi della ditta %ld non esistono: si desidera generarli?", codditta)) - return FALSE; + return FALSE; + + TLocalisamfile ditte(LF_NDITTE); + ditte.zero(); + ditte.put(NDT_CODDITTA,codditta); + if (ditte.read(_isequal,_testandlock) == _islocked) + { + message_box("Archivi della ditta %ld in fase di creazione da parte di un altro utente.",codditta); + return FALSE; + } + set_autoload_new_files(yesno_box("Si desidera precaricare gli archivi standard")); s = s.path(); s.rtrim(1); @@ -204,7 +216,9 @@ bool TMenu_application::build_firm_data(long codditta, bool flagcom) reg.put("B9", "X"); reg.rewrite(); } - } + } + ditte.reread(_unlock); + set_firm(codditta); set_autoload_new_files(TRUE);