- Correzione errore MI2162 su Ripristino movimenti da inviare. - Correzione errore MI3480 su invio PC e invio Sistema. - Correzione errore MI3479 su ricezione da PC e ricezione da Sistema. git-svn-id: svn://10.65.10.50/trunk@3862 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			113 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			113 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| #include "cg6903.h"
 | |
| #include "cg6900a.h"
 | |
| 
 | |
| bool TRip_flag::create()
 | |
| {
 | |
|   TApplication::create();
 | |
| 
 | |
|   _mov   = new TLocalisamfile (LF_MOV); 
 | |
|   _part  = new TLocalisamfile (LF_PARTITE);
 | |
|   
 | |
|   dispatch_e_menu (BAR_ITEM(1));
 | |
| 
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| bool TRip_flag::destroy()
 | |
| {
 | |
|   delete _mov;                          
 | |
|   delete _part;
 | |
|   
 | |
|   return TApplication::destroy();
 | |
| }
 | |
| 
 | |
| bool TRip_flag::set()
 | |
| {              
 | |
|   TMask* msk = new TMask("cg6903a");
 | |
|   KEY k;
 | |
|       
 | |
|   k = msk->run();
 | |
|   
 | |
|   if (k == K_ENTER)
 | |
|   {
 | |
|     long  ditta  = msk->get_long(F_DITTAINV);
 | |
|     TDate datalim (msk->get(F_DATA));
 | |
|     bool  rippn  = msk->get_bool(F_RIPPN);
 | |
|     bool  ripiva = msk->get_bool(F_RIPIVA);
 | |
|     bool  ripsc  = msk->get_bool(F_RIPSC);
 | |
| 
 | |
|     if (!prefix().exist(ditta))
 | |
|     {
 | |
|       error_box("Libreria archivi ditta non presente su disco");
 | |
|       return FALSE;
 | |
|     }
 | |
| 
 | |
|     if (!rippn && !ripiva && !ripsc)
 | |
|     {
 | |
|       delete msk;
 | |
|       return FALSE; // Se non flaggo nessuno dei tre non ha
 | |
|      }             // senso scorrere l'archivio.
 | |
|                                          
 | |
|     set_firm(ditta);
 | |
|     
 | |
|     if (rippn || ripiva)
 | |
|     {
 | |
|       long cicli = _mov->items();
 | |
|       _prog = new TProgind(cicli,"Ripristino movimenti in corso... Prego attendere.",FALSE);
 | |
| 
 | |
|       _mov->setkey(1);
 | |
|       _mov->zero();
 | |
| 
 | |
|       for (_mov->first();!_mov->eof();_mov->next())
 | |
|       { 
 | |
|         TDate datareg (_mov->get_date(MOV_DATAREG));
 | |
|       
 | |
|         _prog->addstatus(1);
 | |
|       
 | |
|         if (datareg < datalim) continue;
 | |
|       
 | |
|         if (rippn)                      
 | |
|           _mov->zero(MOV_INVIATO);
 | |
|         if (ripiva)  
 | |
|           _mov->zero(MOV_INVIVA);
 | |
| 
 | |
|         _mov->rewrite();
 | |
|       }
 | |
|       delete _prog;
 | |
|     }
 | |
|     if (ripsc)
 | |
|     {
 | |
|       long cicli = _part->items();
 | |
|       _prog = new TProgind(cicli,"Ripristino movimenti saldaconto in corso... Prego attendere.",FALSE);
 | |
| 
 | |
|       _part->setkey(1);
 | |
|       _part->zero();
 | |
| 
 | |
|       for (_part->first();!_part->eof();_part->next())
 | |
|       { 
 | |
|         TDate datareg (_part->get_date(PART_DATAREG));
 | |
|       
 | |
|         _prog->addstatus(1);
 | |
|       
 | |
|         if (datareg < datalim) continue;
 | |
|       
 | |
|         _part->zero(PART_INVIATA);
 | |
| 
 | |
|         _part->rewrite();
 | |
|       }
 | |
|       delete _prog;
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   delete msk;
 | |
|   return FALSE;
 | |
| }
 | |
| 
 | |
| bool TRip_flag::menu(MENU_TAG m)
 | |
| {  
 | |
|   if (m == BAR_ITEM(1))  
 | |
|     return set();
 | |
|     
 | |
|   return FALSE;
 | |
| }
 |