diff --git a/at/at2700.cpp b/at/at2700.cpp index 407364467..4ed2f694e 100755 --- a/at/at2700.cpp +++ b/at/at2700.cpp @@ -954,10 +954,15 @@ bool TStampaPerCategorie::set_print(int m) } break; case F_FILEPERS: - { - _tipostampa=filepers; - if (yesno_box("Azzerare il contenuto del file prima dell'elaborazione?")) - _filepers->zap(); + { + if (_filepers == NULL) + message_box("Manca il file di destinazione: opzione non selezionabile"); + else + { + _tipostampa=filepers; + if (yesno_box("Azzerare il contenuto del file prima dell'elaborazione?")) + _filepers->zap(); + } } break; } @@ -1236,7 +1241,12 @@ bool TStampaPerCategorie::user_create() add_cursor(new TSorted_cursor(_rel,"SOG_CODSEZ|SOG_CODSOT","",3)); _msk = new TMask("at2700a"); _file = new TExternisamfile("$file"); - _filepers = new TExternisamfile("$filepers"); + TFilename namepers("filepers"); + namepers.ext("dbf"); + if (namepers.exist()) + _filepers = new TExternisamfile(namepers); + else + _filepers = NULL; TConfig config(CONFIG_STUDIO); TString16 etformato = config.get("EtFormato"); @@ -1270,7 +1280,8 @@ bool TStampaPerCategorie::user_destroy() delete _form_car; delete _form_eti; delete _msk; - delete _filepers; + if (_filepers != NULL) + delete _filepers; delete _file; delete _sfamiglia; delete _sbenemerenze;