// 776200.cpp - Immissione nuova dichiarazione 770 #include #include #include #include #include #include "776200a.h" #include "77lib.h" class TImmissioneDichiarazione : public TApplication { private: TRelation* _rel; TMask* _msk; int _anno_dic; protected: virtual bool menu(MENU_TAG); virtual void on_config_change(); virtual bool create(); virtual bool destroy(); bool do_it(); public: TImmissioneDichiarazione() {} ~TImmissioneDichiarazione() {} }; bool TImmissioneDichiarazione::create() { TApplication::create(); _rel = new TRelation (LF_BASE); _rel->add(LF_BASEBIS, "CODDITTA=CODDITTA"); _msk = new TMask ("776200a"); dispatch_e_menu (BAR_ITEM(1)); return TRUE; } bool TImmissioneDichiarazione::destroy() { delete _rel; delete _msk; return TApplication::destroy(); } bool TImmissioneDichiarazione::do_it() { KEY tasto; _msk->set(F_ANNODIC, _anno_dic); while ((tasto = _msk->run()) != K_QUIT) { long codditta = _msk->get_long(F_CODDITTA); if (exist_dichiar_770(codditta)) { warning_box("La dichiarazione della ditta %d esiste gia'", codditta); continue; } if (enter_dichiar_770(codditta, _anno_dic)) message_box("Dichiarazione inserita"); } return tasto == K_ENTER; } bool TImmissioneDichiarazione::menu(MENU_TAG mt) { if (mt == BAR_ITEM(1)) return do_it(); return FALSE; } void TImmissioneDichiarazione::on_config_change() { TConfig conf(CONFIG_STUDIO); _anno_dic = (int)conf.get_long(ANNO_SEL, NULL); } int ImmissioneDichiarazioni(int argc, char* argv[]) { TImmissioneDichiarazione app; app.run(argc, argv, "Immissione dichiarazione"); return 0; }