Files correlati : Ricompilazione Demo : [ ] Commento : git-svn-id: svn://10.65.10.50/trunk@18409 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			146 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			146 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| // 773400.cpp - gestione tabelle 770
 | |
| #include <tabapp.h>  
 | |
| 
 | |
| #include "77tbca7.h"
 | |
| 
 | |
| // Lista modifiche
 | |
| // 
 | |
| // 21.12.95  i codici quadro con 1015 sono C-E1 (= tolto E2) (nf)
 | |
| //           la perc. r.a. non e' piu' obbligatoria (nf)
 | |
| //
 | |
| // 14.5.96  Modifiche per dichiarazione 96 (nf)
 | |
| //
 | |
| 
 | |
| class Tab770_application : public Tab_application
 | |
| {
 | |
|   private:
 | |
|     TMask*  _msk;   
 | |
|     TString _tabname;
 | |
|     
 | |
|   protected:  
 | |
|     bool  IsCausali() const { return _tabname == "%CA7"; }
 | |
|     void  SetDefaultValueCausali(TMask& m);
 | |
|     void  init_mask(TMask& m);
 | |
|   public:      
 | |
|     bool user_create();                      
 | |
|     virtual void init_modify_mode(TMask& m);    
 | |
|     virtual void init_insert_mode(TMask& m);
 | |
|     virtual void init_query_mode(TMask& m); 
 | |
|     virtual bool firm_change_enabled() const;
 | |
|     Tab770_application() {}
 | |
|     virtual ~Tab770_application() {}
 | |
| };
 | |
| 
 | |
| HIDDEN inline Tab770_application& app() {return (Tab770_application&) main_app();}
 | |
| 
 | |
| HIDDEN bool codqua_handler(TMask_field& f, KEY k)
 | |
| {
 | |
|   if (f.to_check(k))
 | |
|   {
 | |
|     TMask& m = f.mask();
 | |
|     const int trib = m.get_int(F_CODTRIB);
 | |
|     if (trib == 1015)               
 | |
|     {  
 | |
|       const TString& quad = m.get(F_QUADRCE2); 
 | |
|       if (quad != "LA" && quad != "SF" && quad != "SG")
 | |
|         return f.error_box("Con il codice tributo 1015 si possono indicare solo i quadri LA-SF-SG");
 | |
|     }
 | |
|   }
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| HIDDEN bool codtrib_handler(TMask_field& f, KEY k)
 | |
| {
 | |
|   if (k == K_TAB)
 | |
|   { 
 | |
|     TMask& m = f.mask();
 | |
|     const int trib = atoi(f.get());
 | |
|         
 | |
|     if (trib == 1015) 
 | |
|     {
 | |
|       m.hide(F_QUADRAT);
 | |
|       m.show(F_QUADRCE2);
 | |
|     }
 | |
|     else 
 | |
|     {
 | |
|       m.hide(F_QUADRCE2);
 | |
|       m.show(F_QUADRAT);
 | |
|     }      
 | |
|   }
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| HIDDEN bool descr_handler(TMask_field& f, KEY k)
 | |
| {
 | |
|   if (k == K_ENTER)
 | |
|   { 
 | |
|     TMask& m = f.mask();
 | |
|     const TString descr = f.get();
 | |
|     
 | |
|     if (descr == "")
 | |
|     {
 | |
|       f.error_box("La descrizione e' obbligatoria");
 | |
|       return FALSE;
 | |
|     }      
 | |
|   }
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| void Tab770_application::SetDefaultValueCausali(TMask& m)
 | |
| {
 | |
|   TString sPercAss(m.get(F_PERASS));
 | |
| 
 | |
|   sPercAss.trim();
 | |
| 
 | |
|   if (sPercAss.empty())
 | |
|     m.set(F_PERASS,      "100.00"); // % ass. imponibile
 | |
| }
 | |
| 
 | |
| void Tab770_application::init_mask(TMask& m)
 | |
| {
 | |
|   if (IsCausali())
 | |
|     SetDefaultValueCausali(m);
 | |
| }
 | |
| 
 | |
| void Tab770_application::init_query_mode(TMask& m)
 | |
| {
 | |
|   init_mask(m);
 | |
| }
 | |
| 
 | |
| void Tab770_application::init_insert_mode(TMask& m)
 | |
| {
 | |
|   init_mask(m);
 | |
| }
 | |
| 
 | |
| void Tab770_application::init_modify_mode(TMask& m)
 | |
| {}
 | |
| 
 | |
| bool Tab770_application::user_create()
 | |
| { 
 | |
|   Tab_application::user_create();
 | |
|   _msk     = get_mask();
 | |
|   _tabname = get_tabname();
 | |
| 
 | |
|   if (IsCausali()) 
 | |
|   {
 | |
|     _msk->set_handler(F_CODTRIB,  codtrib_handler);
 | |
|     _msk->set_handler(F_QUADRCE2, codqua_handler);
 | |
|     _msk->set_handler(F_QUADRAT,  codqua_handler);
 | |
|   }
 | |
|   return TRUE;
 | |
| }                               
 | |
| 
 | |
| bool Tab770_application::firm_change_enabled() const
 | |
| { 
 | |
|   return FALSE;
 | |
| }
 | |
| 
 | |
| int m73400(int argc, char* argv[])
 | |
| {
 | |
|   Tab770_application a;
 | |
|   a.run(argc,argv, "Tabelle");
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| 
 |