Files correlati : Ricompilazione Demo : [ ] Commento :corretta chiamata dei BAR_ITEM con BAR_ITEM_ID git-svn-id: svn://10.65.10.50/trunk@18333 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			586 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			586 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| #include "cglib04.h"
 | |
| #include "cg6802.h"
 | |
| 
 | |
| bool TAnn_mov::create()
 | |
| {
 | |
|   TApplication::create();
 | |
| 
 | |
|   _pcon     = new TLocalisamfile (LF_PCON);
 | |
|   _clifo    = new TLocalisamfile (LF_CLIFO);
 | |
|   _mov      = new TLocalisamfile (LF_MOV);  
 | |
|   _rmov     = new TLocalisamfile (LF_RMOV);
 | |
|   _rmoviva  = new TLocalisamfile (LF_RMOVIVA);
 | |
|   _part     = new TLocalisamfile (LF_PARTITE);
 | |
|   _scad     = new TLocalisamfile (LF_SCADENZE);
 | |
|   _pagsca   = new TLocalisamfile (LF_PAGSCA);
 | |
| 
 | |
|   _rec_mov  = new TRectype (LF_MOV);  
 | |
|   
 | |
|   _registra = FALSE;
 | |
|   
 | |
|   dispatch_e_menu (BAR_ITEM_ID(1));
 | |
| 
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::destroy()
 | |
| {
 | |
|   delete _pcon;
 | |
|   delete _clifo;
 | |
|   delete _mov;                                
 | |
|   delete _rmov;
 | |
|   delete _rmoviva;  
 | |
|   delete _part;
 | |
|   delete _scad;
 | |
|   delete _pagsca;
 | |
| 
 | |
|   delete _rec_mov;  
 | |
|   
 | |
|   return TApplication::destroy();
 | |
| }                                
 | |
| 
 | |
| void TAnn_mov::apri_temp_file()
 | |
| {
 | |
|   TString80 tmpmov = "%";
 | |
|   tmpmov  << get_firm_dir();
 | |
|   tmpmov << "\\" << TEMP_MOV;
 | |
|   TString80 tmprmov = "%";
 | |
|   tmprmov << get_firm_dir();         
 | |
|   tmprmov << "\\" << TEMP_RMOV;  
 | |
|   TString80 tmprmoviva = "%";
 | |
|   tmprmoviva << get_firm_dir();     
 | |
|   tmprmoviva << "\\" << TEMP_RMOVIVA;                     
 | |
|   TString80 tmppart = "%";
 | |
|   tmppart  << get_firm_dir();
 | |
|   tmppart << "\\" << TEMP_PART;
 | |
|   TString80 tmpscad = "%";
 | |
|   tmpscad << get_firm_dir();         
 | |
|   tmpscad << "\\" << TEMP_SCAD;  
 | |
|   TString80 tmppagsca = "%";
 | |
|   tmppagsca << get_firm_dir();     
 | |
|   tmppagsca << "\\" << TEMP_PAGSCA;                     
 | |
|   
 | |
|   _tmov     = new TIsamtempfile(LF_MOV, tmpmov, 0);
 | |
|   _trmov    = new TIsamtempfile(LF_RMOV, tmprmov, 0);
 | |
|    
 | |
|   _is_iva = FALSE; 
 | |
|   TString tmp = tmprmoviva.mid(1);
 | |
|   tmp << ".dbf";
 | |
|   if (fexist(tmp))
 | |
|   {
 | |
|     _tiva     = new TIsamtempfile(LF_RMOVIVA, tmprmoviva, 0);
 | |
|     _is_iva = TRUE;
 | |
|   }
 | |
| 
 | |
|   _is_salda = FALSE; 
 | |
|   tmp = tmppart.mid(1);
 | |
|   tmp << ".dbf";
 | |
|   if (fexist(tmp))
 | |
|   {
 | |
|     _tpart    = new TIsamtempfile(LF_PARTITE, tmppart, 0);
 | |
|     _tscad    = new TIsamtempfile(LF_SCADENZE, tmpscad, 0);
 | |
|     _tpagsca  = new TIsamtempfile(LF_PAGSCA, tmppagsca, 0);        
 | |
|     _is_salda = TRUE;
 | |
|   }  
 | |
| }
 | |
| 
 | |
| void TAnn_mov::chiudi_tempfile()
 | |
| {
 | |
|   delete _tmov;                  
 | |
|   delete _trmov;    
 | |
|   if (_is_iva)
 | |
|     delete _tiva;
 | |
|   if (_is_salda)
 | |
|   {
 | |
|     delete _tpart;
 | |
|     delete _tscad;
 | |
|     delete _tpagsca;
 | |
|   }  
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::set()
 | |
| {
 | |
|   _dittaric = get_firm();
 | |
|   
 | |
|   if (!esegui_controlli()) return FALSE;
 | |
|   
 | |
|   apri_temp_file();
 | |
|   
 | |
|   if (!video())
 | |
|   {
 | |
|     if (_registra)  
 | |
|       setta_parametri_record(" ","C");
 | |
|   }
 | |
|   
 | |
|   chiudi_tempfile();
 | |
|   return FALSE;
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::video()
 | |
| {   
 | |
|   TMask* msk = new TMask("cg6802a");
 | |
|   KEY     tasto;
 | |
|   
 | |
|   do
 | |
|   { 
 | |
|     tasto = msk->run();
 | |
|     
 | |
|     if (tasto != K_ENTER)
 | |
|     {
 | |
|       delete msk;
 | |
|       return FALSE;
 | |
|     }
 | |
|     
 | |
|     if (esiste_testata_mov(*msk))
 | |
|     {
 | |
|       TMask* mask = new TMask("cg6802b");
 | |
|       
 | |
|       mask->set_handler(F_REGIVA,    codice_registro_hnd);
 | |
|       mask->set_handler(F_CODCAUS,   codice_causale_hnd);  
 | |
|       
 | |
|       setta_campi_maschera(*mask);
 | |
|       
 | |
|       tasto = mask->run();
 | |
|       
 | |
|       switch (tasto)
 | |
|       {
 | |
|       case K_ESC :
 | |
|         break;
 | |
|         
 | |
|       case K_QUIT :
 | |
|         break;       
 | |
|         
 | |
|       case K_DEL :
 | |
|       {
 | |
|         annulla(*mask);
 | |
|         _registra = TRUE;
 | |
|       }
 | |
|         break;
 | |
|         
 | |
|       default:
 | |
|         break;
 | |
|       }
 | |
|       delete mask;
 | |
|     }
 | |
|   }
 | |
|   while (tasto != K_QUIT);                              //K_ENTER
 | |
| 
 | |
|   delete msk;
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::esiste_testata_mov(TMask& m)
 | |
| {
 | |
|   _numreg = m.get_long(F_NUMREG);
 | |
|   
 | |
|   _tmov->setkey(1);
 | |
|   _tmov->zero();
 | |
|   _tmov->put(MOV_NUMREG, _numreg);
 | |
|   
 | |
|   if (_tmov->read() == NOERR)
 | |
|     *_rec_mov = _tmov->curr();  
 | |
|   else
 | |
|     return error_box(TR("Registrazione richiesta NON PRESENTE tra i movimenti in trasferimento"));
 | |
|   
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| void TAnn_mov::setta_campi_maschera(TMask& m)
 | |
| {  
 | |
|   TDate   datareg (_rec_mov->get_date(MOV_DATAREG));
 | |
|   TDate   datadoc (_rec_mov->get_date(MOV_DATADOC));
 | |
|   TString numdoc    = _rec_mov->get     (MOV_NUMDOC);
 | |
|   TString regiva    = _rec_mov->get     (MOV_REG);
 | |
| //  regiva.trim();
 | |
|   long    protiva   = _rec_mov->get_long(MOV_PROTIVA);
 | |
|   TString codcaus   = _rec_mov->get     (MOV_CODCAUS);
 | |
|   
 | |
|   m.set(F_NUMREG,    _numreg);
 | |
|   m.set(F_DATAREG,   datareg.string());
 | |
|   m.set(F_DATADOC,   datadoc.string());
 | |
|   m.set(F_NUMDOC,    numdoc);
 | |
|   m.set(F_REGIVA,    regiva);
 | |
|   m.set(F_PROTIVA,   protiva);
 | |
|   m.set(F_CODCAUS,   codcaus);
 | |
| 
 | |
|   m.disable(F_NUMREG);
 | |
|   m.disable(F_DATAREG);
 | |
|   m.disable(F_DATADOC);
 | |
|   m.disable(F_NUMDOC);
 | |
|   m.disable(F_REGIVA);
 | |
|   m.disable(F_PROTIVA);
 | |
|   m.disable(F_CODCAUS);
 | |
| }   
 | |
| 
 | |
| void TAnn_mov::annulla(TMask& m)
 | |
| {
 | |
|   TRectype* rec_rmov,* rec_riva;
 | |
|   rec_rmov = new TRectype (LF_RMOV);
 | |
| 
 | |
| // Cancello la testata del movimento
 | |
| 
 | |
|   long numreg = m.get_long(F_NUMREG);
 | |
| 
 | |
|   _tmov->setkey(1);
 | |
|   _tmov->zero();
 | |
|   _tmov->put(MOV_NUMREG, numreg); 
 | |
|   if (_tmov->read() == NOERR)    
 | |
|     _tmov->remove();
 | |
| 
 | |
| // Cancello tutte le righe di Primanota  
 | |
| 
 | |
|   _trmov->setkey(1);
 | |
|   _trmov->zero();
 | |
|   _trmov->put(RMV_NUMREG, numreg); 
 | |
|   *rec_rmov = _trmov->curr();
 | |
|   
 | |
|   for (_trmov->read(); !_trmov->eof(); _trmov->next())
 | |
|   {
 | |
|     if (_trmov->curr() > *rec_rmov) break;
 | |
|     
 | |
|     _trmov->remove();
 | |
|   }
 | |
|   
 | |
|   delete rec_rmov;
 | |
| 
 | |
| // Cancello tutte le righe iva
 | |
|   
 | |
|   rec_riva = new TRectype (LF_RMOVIVA);
 | |
| 
 | |
|   _tiva->setkey(1);
 | |
|   _tiva->zero();
 | |
|   _tiva->put(RMI_NUMREG, numreg); 
 | |
|   *rec_riva = _tiva->curr();
 | |
|   
 | |
|   for (_tiva->read(); !_tiva->eof(); _tiva->next())
 | |
|   {
 | |
|     if (_tiva->curr() > *rec_riva) break;
 | |
|     
 | |
|     _tiva->remove();
 | |
|   }
 | |
|   
 | |
|   delete rec_riva;  
 | |
|   
 | |
|   if (_is_salda)
 | |
|   { 
 | |
|     TRectype* rec_part;
 | |
|     
 | |
|     rec_part = new TRectype (LF_PARTITE);
 | |
| 
 | |
|     _tpart->setkey(2);
 | |
|     _tpart->zero();
 | |
|     _tpart->put(PART_NREG, numreg); 
 | |
|     *rec_part = _tpart->curr();
 | |
|   
 | |
|     for (_tpart->read(_isgteq); !_tpart->eof(); _tpart->next())
 | |
|     {  
 | |
|       if (_tpart->curr() != *rec_part) break;
 | |
|       
 | |
|       int     tipomov    = _tpart->get_int (PART_TIPOMOV);
 | |
|       char    tipocf     = _tpart->get_char(PART_TIPOCF);
 | |
|       int     gruppo     = _tpart->get_int (PART_GRUPPO);
 | |
|       int     conto      = _tpart->get_int (PART_CONTO);
 | |
|       long    codcf      = _tpart->get_long(PART_SOTTOCONTO);  
 | |
|       int     anno       = _tpart->get_int (PART_ANNO);
 | |
|       TString numpart    = _tpart->get     (PART_NUMPART);  
 | |
|       int     nriga      = _tpart->get_int (PART_NRIGA);
 | |
| 
 | |
|       if (!controlla_abbuoni_diffcam(tipocf,gruppo,conto,codcf,anno,numpart,nriga,0))
 | |
|         continue;
 | |
|       
 | |
|       if (tipomov == 1)
 | |
|       {
 | |
|         _tscad->zero();
 | |
|         _tscad->put(SCAD_TIPOCF,       tipocf);
 | |
|         if (gruppo != 0)
 | |
|           _tscad->put(SCAD_GRUPPO,     gruppo);
 | |
|         if (conto != 0)
 | |
|           _tscad->put(SCAD_CONTO,      conto);
 | |
|         if (codcf != 0)
 | |
|           _tscad->put(SCAD_SOTTOCONTO, codcf);
 | |
|         _tscad->put(SCAD_ANNO,         anno);
 | |
|         _tscad->put(SCAD_NUMPART,      numpart);
 | |
|         _tscad->put(SCAD_NRIGA,        nriga);  
 | |
|     
 | |
|         TRectype scad (_tscad->curr());
 | |
|     
 | |
|         for (_tscad->read(_isgteq); !_tscad->eof(); _tscad->next())
 | |
|         {    
 | |
|           TString rec  = scad.get(SCAD_NUMPART);
 | |
|           TString file = _tscad->get(SCAD_NUMPART);
 | |
|                                                       
 | |
|           if (_tscad->curr() != scad || file != rec) break;
 | |
|                             
 | |
|           int nrata = _tscad->get_int (SCAD_NRATA);
 | |
|           
 | |
|           sgancia_pagamenti(tipocf,gruppo,conto,codcf,anno,numpart,nriga,nrata);                            
 | |
|           
 | |
|           _tscad->remove();
 | |
|         }
 | |
|       }
 | |
|     
 | |
|       if (tipomov != 1)
 | |
|       {
 | |
|         _tpagsca->zero();
 | |
|         _tpagsca->put(PAGSCA_TIPOC,      tipocf);  
 | |
|         if (gruppo != 0)
 | |
|           _tpagsca->put(PAGSCA_GRUPPO,     gruppo);
 | |
|         if (conto != 0)
 | |
|           _tpagsca->put(PAGSCA_CONTO,      conto);
 | |
|         if (codcf != 0)
 | |
|           _tpagsca->put(PAGSCA_SOTTOCONTO, codcf);
 | |
|         _tpagsca->put(PAGSCA_ANNO,       anno);
 | |
|         _tpagsca->put(PAGSCA_NUMPART,    numpart);
 | |
|     
 | |
|         TRectype pagsca (_tpagsca->curr());
 | |
|     
 | |
|         for (_tpagsca->read(_isgteq); !_tpagsca->eof(); _tpagsca->next())
 | |
|         {                                               
 | |
|           int nrigp = _tpagsca->get_int(PAGSCA_NRIGP);         
 | |
|            
 | |
|           TString rec  = pagsca.get(PAGSCA_NUMPART);
 | |
|           TString file = _tpagsca->get(PAGSCA_NUMPART);
 | |
|            
 | |
|           if (_tpagsca->curr() != pagsca || file != rec) break;
 | |
|         
 | |
|           if (nriga != nrigp) continue;
 | |
|           
 | |
|           _tpagsca->remove();
 | |
|         }
 | |
|       }  
 | |
|       _tpart->remove();
 | |
|     }
 | |
|     delete rec_part;  
 | |
|   }
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::controlla_abbuoni_diffcam(char tipo,int g,int c,long s,int anno,TString& npart,int nriga,int nrata)
 | |
| {
 | |
|   TIsamtempfile& pagsca = *_tpagsca;
 | |
|   
 | |
|   pagsca.setkey(1);
 | |
|   pagsca.zero();
 | |
|   pagsca.put(PAGSCA_TIPOC,      tipo);
 | |
|   pagsca.put(PAGSCA_GRUPPO,     g);
 | |
|   pagsca.put(PAGSCA_CONTO,      c);
 | |
|   pagsca.put(PAGSCA_SOTTOCONTO, s);
 | |
|   pagsca.put(PAGSCA_ANNO,       anno);
 | |
|   pagsca.put(PAGSCA_NUMPART,    npart);
 | |
|   pagsca.put(PAGSCA_NRIGA,      nriga);
 | |
|   if (nrata != 0)
 | |
|     pagsca.put(PAGSCA_NRATA,    nrata);
 | |
|       
 | |
|   TRectype pagamenti (pagsca.curr());
 | |
|   
 | |
|   for (pagsca.read(_isgteq); !pagsca.eof(); pagsca.next())
 | |
|   {        
 | |
|     TString rec  = pagamenti.get(PAGSCA_NUMPART);
 | |
|     TString file = pagsca.get(PAGSCA_NUMPART);
 | |
|     
 | |
|     if (pagsca.curr() != pagamenti || file != rec) break;
 | |
|     
 | |
|     real abbuoni = pagsca.get_real(PAGSCA_ABBUONI);
 | |
|     real diffcam = pagsca.get_real(PAGSCA_DIFFCAM);
 | |
|     if (abbuoni != ZERO || diffcam != ZERO)
 | |
|       return FALSE;
 | |
|   }                
 | |
|   return TRUE;              
 | |
| }
 | |
| 
 | |
| void TAnn_mov::sgancia_pagamenti(char tipo,int g,int c,long s,int anno,TString& npart,int nriga,int nrata)
 | |
| {
 | |
|   TIsamtempfile& pagsca = *_tpagsca;
 | |
|   
 | |
|   pagsca.setkey(1);
 | |
|   pagsca.zero();
 | |
|   pagsca.put(PAGSCA_TIPOC,      tipo);
 | |
|   pagsca.put(PAGSCA_GRUPPO,     g);
 | |
|   pagsca.put(PAGSCA_CONTO,      c);
 | |
|   pagsca.put(PAGSCA_SOTTOCONTO, s);
 | |
|   pagsca.put(PAGSCA_ANNO,       anno);
 | |
|   pagsca.put(PAGSCA_NUMPART,    npart);
 | |
|   pagsca.put(PAGSCA_NRIGA,      nriga);
 | |
|   pagsca.put(PAGSCA_NRATA,      nrata);
 | |
|   
 | |
|   TRectype pagamenti (pagsca.curr());
 | |
|   
 | |
|   for (pagsca.read(_isgteq); !pagsca.eof(); pagsca.next())
 | |
|   {   
 | |
|     TString rec  = pagamenti.get(PAGSCA_NUMPART);
 | |
|     TString file = pagsca.get(PAGSCA_NUMPART);
 | |
|     
 | |
|     if (pagsca.curr() != pagamenti || file != rec) break;
 | |
|     
 | |
|     TRectype pag (pagsca.curr());
 | |
|     
 | |
|     pag.put(PAGSCA_NRIGA, 9999);
 | |
|     pag.put(PAGSCA_NRATA, 9999);
 | |
|     
 | |
|     TRecnotype nrec = pagsca.recno();
 | |
|     pagsca.remove();
 | |
|     pagsca.curr() = pag;
 | |
|     if (pagsca.read() == NOERR)
 | |
|     { 
 | |
|       real importo  = pagsca.get_real(PAGSCA_IMPORTO) + pag.get_real(PAGSCA_IMPORTO);
 | |
|       real impval   = pagsca.get_real(PAGSCA_IMPORTOVAL) + pag.get_real(PAGSCA_IMPORTOVAL);
 | |
|       real ritenute = pagsca.get_real(PAGSCA_RITENUTE) + pag.get_real(PAGSCA_RITENUTE);
 | |
|       real ritsoc   = pagsca.get_real(PAGSCA_RITSOC) + pag.get_real(PAGSCA_RITSOC);
 | |
|       pagsca.put(PAGSCA_IMPORTO,    importo);
 | |
|       pagsca.put(PAGSCA_IMPORTOVAL, impval);
 | |
|       pagsca.put(PAGSCA_RITENUTE,   ritenute);
 | |
|       pagsca.put(PAGSCA_RITSOC,     ritsoc);
 | |
|       pagsca.put(PAGSCA_ACCSAL, "A");    
 | |
|       pagsca.rewrite();
 | |
|     }
 | |
|     else      
 | |
|     {
 | |
|       pagsca.curr() = pag;
 | |
|       pagsca.write();     
 | |
|     }             
 | |
|                   
 | |
|     pagsca.readat(nrec);
 | |
|   }                              
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::leggi_trasfer()
 | |
| { 
 | |
|   _trasf = _tras_file.path(_dittaric);
 | |
|   _trasf << HEADER;
 | |
|   
 | |
|   _tras_file.open(_trasf);
 | |
|   
 | |
|   if (_tras_file.exist())
 | |
|   {  
 | |
|     if (_tras_file.read_control_rec())
 | |
|       _control_rec = _tras_file.record();
 | |
|     else
 | |
|       return error_box(TR("Rilevati gravi errori negli archivi:procedura interrotta"));
 | |
|   } 
 | |
|   else
 | |
|     return error_box(TR("Al momento non presenti trasferimenti attivi sulla ditta selezionata"));
 | |
|   
 | |
|   return TRUE; 
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::codice_registro_hnd(TMask_field& f, KEY k)
 | |
| { 
 | |
|   TTable reg ("REG");
 | |
|   TString descr,dep;
 | |
|   
 | |
|   if (k == K_TAB)
 | |
|   {              
 | |
|     TString codreg = f.get();
 | |
|     TDate   datareg (f.mask().get(F_DATAREG));
 | |
|     int     anno   = date2esc(datareg);
 | |
|     
 | |
|     reg.zero();
 | |
|     reg.put("CODTAB", codreg);
 | |
|     if (reg.read() == NOERR)
 | |
|     {
 | |
|       descr = reg.get("S0");
 | |
|       f.mask().set(F_DESCRREG, descr);
 | |
|     }
 | |
|   } 
 | |
|   
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::codice_causale_hnd(TMask_field& f, KEY k)
 | |
| {
 | |
|   TLocalisamfile cau (LF_CAUSALI);
 | |
|   TString descr;
 | |
|   
 | |
|   if (k == K_TAB)
 | |
|   {         
 | |
|     TString codcau = f.get();
 | |
|     
 | |
|     cau.setkey(1);
 | |
|     cau.zero();
 | |
|     cau.put("CODCAUS", codcau);
 | |
|     if (cau.read() == NOERR)
 | |
|     {
 | |
|       descr = cau.get("DESCR");
 | |
|       f.mask().set(F_DESCRCAU, descr);
 | |
|     }                                 
 | |
|   }            
 | |
| 
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::esegui_controlli()
 | |
| {                    
 | |
|   TConfig conf(CONFIG_DITTA);           
 | |
|   
 | |
|   _std = conf.get("FlStTra");
 | |
| 
 | |
|   if (!prefix().exist(_dittaric))
 | |
|     return error_box(TR("Rilevati GRAVI ERRORI negli archivi: procedura interrotta"));
 | |
| 
 | |
|   if (!leggi_trasfer())
 | |
|     return FALSE;      
 | |
|   
 | |
|   if (!controlli())
 | |
|     return FALSE;
 | |
|   
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::controlli()
 | |
| {                
 | |
|   TString16 chiave,sigla;
 | |
|   
 | |
|   chiave = _control_rec.sub(241,256);
 | |
|   chiave.trim();        
 | |
|   sigla  = _control_rec.sub(240,241);
 | |
|   sigla.trim();
 | |
| 
 | |
|   if (_std == "M" && sigla == "Z" && chiave != "")
 | |
|     return error_box(TR("Variazione NON POSSIBILE: trasferimento movimenti gia' iniziato"));           
 | |
|   
 | |
|   if (_std == "M" && sigla == "U")
 | |
|     return error_box(TR("Variazione NON POSSIBILE: trasferimento movimenti gia' iniziato"));           
 | |
| 
 | |
|   if (_std == "M" && sigla == "B")
 | |
|     return error_box(TR("Variazione NON POSSIBILE: trasferimento movimenti gia' iniziato"));           
 | |
|   
 | |
|   if (_std == "*") 
 | |
|   {
 | |
|     warning_box(TR("Trasferimento interamente completato: proseguire per cancellare il file"));    
 | |
|     _tras_file.remove_all();
 | |
|     setta_parametri_record(""," ");
 | |
|     return FALSE;
 | |
|   }
 | |
| 
 | |
|   if (_std == "T")
 | |
|     return error_box(TR("Variazione NON POSSIBILE: eseguire prima la ricezione delle tabelle"));           
 | |
|   
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| void TAnn_mov::leggi_record_controllo()
 | |
| {
 | |
|   _tras_file.read_control_rec();
 | |
|   _control_rec = _tras_file.record();
 | |
| }
 | |
| 
 | |
| void TAnn_mov::setta_parametri_record(const TString& sigla,const TString& flag)
 | |
| { 
 | |
|   TConfig conf (CONFIG_DITTA);
 | |
|   
 | |
|   conf.set("FlStTra", flag);
 | |
| 
 | |
|   leggi_record_controllo();
 | |
|   _control_rec.overwrite(sigla,240);
 | |
|     
 | |
|   const int size = 1024;
 | |
|     
 | |
|   _tras_file.write_control_rec(_control_rec, size);
 | |
| }
 | |
| 
 | |
| bool TAnn_mov::menu(MENU_TAG m)
 | |
| {
 | |
|   if (m == BAR_ITEM_ID(1))
 | |
|     return set(); 
 | |
|   return FALSE;
 | |
| }
 |