Aggiunti cglib01.h git-svn-id: svn://10.65.10.50/trunk@4719 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			86 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| //**************************************************
 | |
| //* Aggiornamento Flag Operazioni Intracomunitarie *
 | |
| //**************************************************
 | |
| #include <mov.h>  
 | |
| #include <rmoviva.h>
 | |
| #include <causali.h>
 | |
| 
 | |
| #include "cg1301.h"  
 | |
| 
 | |
| bool TAgg_opintra::create()
 | |
| {
 | |
|   TApplication::create();
 | |
| 
 | |
|   _causali = new TLocalisamfile(LF_ATTIV);
 | |
|   
 | |
|   dispatch_e_menu (BAR_ITEM(1));
 | |
|   return TRUE;
 | |
| }
 | |
| 
 | |
| bool TAgg_opintra::destroy()
 | |
| { 
 | |
|   delete _causali;
 | |
|   return TApplication::destroy();
 | |
| }                                
 | |
| 
 | |
| bool TAgg_opintra::menu(MENU_TAG m)
 | |
| {
 | |
|   TMask msk("cg1300a");
 | |
|   
 | |
|   while (msk.run() == K_ENTER) 
 | |
|   {
 | |
|     look_mov();
 | |
|     message_box("Aggiornamento completato");
 | |
|     //return TRUE;
 | |
|   }
 | |
|   return FALSE;
 | |
| }
 | |
| 
 | |
| void TAgg_opintra::look_mov()
 | |
| {
 | |
|   TLocalisamfile caus(LF_CAUSALI);
 | |
|   
 | |
|   TRelation rel (LF_MOV);
 | |
|   rel.add(LF_RMOVIVA, "NUMREG=NUMREG",1);
 | |
|   TCursor cursor(&rel,"",1);
 | |
|   
 | |
|   TLocalisamfile& mov = rel.lfile();
 | |
|   TLocalisamfile& rmoviva = rel.lfile(LF_RMOVIVA);
 | |
|   
 | |
|   long ditta = get_firm();
 | |
|   cursor = 0L;
 | |
|   const long nitems = cursor.items();
 | |
|   
 | |
|   TProgind p(nitems ? nitems : 1, "Aggiornamento in corso..." , TRUE, TRUE, 70);
 | |
| 
 | |
|   for (; cursor.pos() < cursor.items(); ++cursor)
 | |
|   {
 | |
|     p.addstatus(1);
 | |
|     const TString16 reg(mov.get(MOV_REG));
 | |
|     if (reg.empty()) continue;
 | |
|     
 | |
|     const TDate& datareg = mov.get_date(MOV_DATAREG);
 | |
|     //    if (datareg < "01-01-93") continue;
 | |
|     if (datareg.year() < 1993) continue;   // Meglio cosi'
 | |
|     
 | |
|     const TString16 codcaus(mov.get(MOV_CODCAUS)); 
 | |
|     if (codcaus.not_empty())
 | |
|     {
 | |
|       caus.setkey(1);
 | |
|       caus.put(CAU_CODCAUS, codcaus);
 | |
|       if (caus.read() == NOERR)
 | |
|       { 
 | |
|         bool intra = caus.get_bool(CAU_INTRACOM);
 | |
|         bool ok = rel.is_first_match(LF_RMOVIVA);
 | |
|         while (ok)
 | |
|         {
 | |
|           rmoviva.put(RMI_INTRA, intra); 
 | |
|           rmoviva.rewrite();
 | |
|           ok = rel.next_match(LF_RMOVIVA); 
 | |
|         }  
 | |
|       }
 | |
|     }   
 | |
|   } 
 | |
| }
 | |
| 
 |