sc0100.h Aggiunte variabili di supporto ai colori sc0101.cpp Corretto messaggio d'errore sugli importi sc2100a.uml Modificata ricerca sul codice lingua sc2101.cpp Cambiate due chiamate dirette con funzioni membro git-svn-id: svn://10.65.10.50/trunk@4288 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			103 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| #include <prefix.h>
 | |
| #include <utility.h>
 | |
| 
 | |
| #include "sc2101.h"                    
 | |
| #include "sc2100a.h"                    
 | |
| 
 | |
| #include <comuni.h>
 | |
| 
 | |
| bool TEC_mask::codprof_handler(TMask_field& f, KEY k)
 | |
| {                                                             
 | |
|   if (f.to_check(k))
 | |
|   {
 | |
|     TEdit_field & e = (TEdit_field &) f;
 | |
|     
 | |
|     e.check_type(CHECK_REQUIRED);
 | |
|     
 | |
|     const bool ok = e.check();
 | |
|     
 | |
|     e.check_type(CHECK_NONE);
 | |
|     
 | |
|     if (k == K_ENTER && !ok)
 | |
|     {
 | |
|       if (f.is_editable())
 | |
|       {
 | |
|         TEditable_field& ef = (TEditable_field&) f;
 | |
|         return f.error_box(ef.get_warning());
 | |
|       }
 | |
|     }
 | |
|   }
 | |
|   return TRUE;
 | |
| }                   
 | |
| 
 | |
| 
 | |
| bool TEC_mask::lingua_handler(TMask_field& f, KEY k)
 | |
| {             
 | |
|   if (k == K_TAB && f.focusdirty())
 | |
|   {
 | |
|     TCursor& cur = *(((TEdit_field&)(f.mask().field(F_CODPROF))).browse()->cursor());
 | |
|     // whew
 | |
|     TString16 lin = f.get();      
 | |
|     if (lin != cur.curr().get("CODPROF").mid(4))
 | |
|       f.mask().field(F_CODPROF).check(RUNNING_CHECK);
 | |
|   }                           
 | |
|   return TRUE;
 | |
| } 
 | |
| 
 | |
| 
 | |
| 
 | |
| TEC_mask::TEC_mask(const char* name) : TSelection_mask(name), _ditta(LF_NDITTE)
 | |
| {
 | |
|   _ditta.add(LF_ANAG,   "TIPOA==TIPOA|CODANAGR==CODANAGR");
 | |
|   _ditta.add(LF_COMUNI, "COM==COMRF(COMRES)", 1, LF_ANAG, 101);
 | |
|   _ditta.add(LF_COMUNI, "COM==COMRES", 1, LF_ANAG, 102);
 | |
| 
 | |
|    set_handler(F_CODPROF, codprof_handler);
 | |
|    set_handler(F_LINPROF, lingua_handler);
 | |
| }
 | |
| 
 | |
| TEC_mask::~TEC_mask()
 | |
| {
 | |
| }             
 | |
| 
 | |
| void TEC_mask::on_firm_change()
 | |
| {    
 | |
|   TMask::on_firm_change();
 | |
| 
 | |
|   _ditta[0].put("CODDITTA", prefix().get_codditta());
 | |
|   if (_ditta.read() == NOERR)
 | |
|   {                        
 | |
|     const int alias = _ditta[LF_ANAG].get_char("TIPOA") == 'F' ? -101 : -102;
 | |
|     set(F_LUOGOSEND, _ditta.lfile(alias).get("DENCOM"));  
 | |
|   }    
 | |
| }
 | |
| 
 | |
| void TEC_mask::start_run()
 | |
| {
 | |
|   on_firm_change();
 | |
| }
 | |
| 
 | |
| const char* TEC_mask::get_prof_base() const
 | |
| {
 | |
|   return BASE_EC_PROFILE;
 | |
| } 
 | |
| 
 | |
| const TString& TEC_mask::get_prof_code() const
 | |
| {
 | |
|   return get(F_CODPROF);
 | |
| } 
 | |
| 
 | |
| const TString& TEC_mask::get_prof_lang() const
 | |
| {
 | |
|   return get(F_LINPROF);
 | |
| }
 | |
| 
 | |
| const char* TEC_mask::get_prof_name() const
 | |
| {                
 | |
|   TString& tmp=(TString&)_tmp;
 | |
|   tmp = get_prof_code();
 | |
|   tmp << get_prof_lang();
 | |
|   return _tmp;
 | |
| }
 | |
| 
 |