balzanerie di GPF. git-svn-id: svn://10.65.10.50/trunk@3080 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			105 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| 
 | |
| #include <applicat.h>
 | |
| #include <tabapp.h>  
 | |
| #include <strings.h>
 | |
| #include <stdtypes.h>
 | |
| #include <tabutil.h>
 | |
| #include <utility.h> 
 | |
| #include <prefix.h>
 | |
| 
 | |
| #include "..\ba\batbtra.h"
 | |
| 
 | |
| class Tabtra_application : public Tab_application
 | |
| {
 | |
| private:
 | |
|   TMask*  _msk;   
 | |
|   TString _tabname;
 | |
|   
 | |
| public:
 | |
|   bool user_create();
 | |
|   virtual void init_query_mode(TMask&);
 | |
|   virtual void init_modify_mode(TMask&);
 | |
|   virtual void init_insert_mode(TMask&);
 | |
| 
 | |
|   Tabtra_application() {}
 | |
|   virtual ~Tabtra_application() {}
 | |
| };
 | |
| 
 | |
| HIDDEN inline Tabtra_application& app() {return (Tabtra_application&) main_app();}
 | |
| 
 | |
| HIDDEN bool ultimo_handler(TMask& m, KEY k)
 | |
| {
 | |
|   if (k == K_SHIFT+K_F12)
 | |
|   { 
 | |
|     m.enable(F_NUMULTRAS);
 | |
|     m.enable(F_DATAULTRAS);
 | |
|   }
 | |
|   
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| HIDDEN bool ditta_handler(TMask_field& f, KEY k)
 | |
| {
 | |
|   if (k == K_TAB)
 | |
|   { 
 | |
|     long codditta = f.mask().get_long(F_CODDITTARIC);
 | |
|     
 | |
|     if (codditta != 0)
 | |
|     {
 | |
|       if (prefix().exist(codditta))
 | |
|         return TRUE;
 | |
|       else
 | |
|       {
 | |
|         f.error_box("La ditta selezionata non e' abilitata per la contabilita' ");
 | |
|         return FALSE;
 | |
|       }
 | |
|     }  
 | |
|   }      
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| void Tabtra_application::init_query_mode(TMask& m)
 | |
| {
 | |
|   m.disable(F_NUMULTRAS);
 | |
|   m.disable(F_DATAULTRAS);
 | |
| }
 | |
| 
 | |
| void Tabtra_application::init_modify_mode(TMask& m)
 | |
| {
 | |
|   m.disable(F_NUMULTRAS);
 | |
|   m.disable(F_DATAULTRAS);
 | |
| }
 | |
| 
 | |
| void Tabtra_application::init_insert_mode(TMask& m)
 | |
| {
 | |
|   m.disable(F_NUMULTRAS);
 | |
|   m.disable(F_DATAULTRAS);
 | |
| }
 | |
| 
 | |
| bool Tabtra_application::user_create()
 | |
| { 
 | |
|   Tab_application::user_create();
 | |
| 
 | |
|   _msk     = get_mask();
 | |
|   _tabname = get_tabname();
 | |
| 
 | |
|   if (_tabname == "%TRA") 
 | |
|   {  
 | |
|     _msk->set_handler(ultimo_handler);
 | |
|     _msk->set_handler(F_CODDITTARIC, ditta_handler);
 | |
|   }
 | |
| 
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| cg6300(int argc, char* argv[])
 | |
| {
 | |
|   Tabtra_application* a= new Tabtra_application;
 | |
|   
 | |
|   a->run(argc,argv, "Tabelle");
 | |
|   delete a;
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| 
 |