Files correlati : ps0713.exe Ricompilazione Demo : [ ] Commento E' possibile ora copiare file da e verso ftp. git-svn-id: svn://10.65.10.50/branches/R_10_00@21019 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			133 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| #include <lffiles.h>
 | |
| #include <recarray.h>
 | |
| 
 | |
| #include "ps0713lib.h"
 | |
| #include "../ca/commesse.h"
 | |
| 
 | |
|                                       ////////////////////////////////
 | |
|                                       ////    TCOMMESSA_STRING    ////
 | |
|                                       ////////////////////////////////
 | |
| 
 | |
| //IDLAVORO: metodo che restituisce l'Idlavoro
 | |
| const TString16 TCommessa_string::idlavoro()
 | |
| {
 | |
|   return get(0);
 | |
| }
 | |
| 
 | |
| //GRUPPO: metodo che restituisce il gruppo
 | |
| const int TCommessa_string::gruppo()
 | |
| {
 | |
|   return get_int(1);
 | |
| }
 | |
| 
 | |
| //CONTO: metodo che restituisce il conto
 | |
| const int TCommessa_string::conto()
 | |
| {
 | |
|   return get_int(2);
 | |
| }
 | |
| 
 | |
| //SOTCO: metodo che restituisce il sottoconto
 | |
| const long TCommessa_string::sotco()
 | |
| {
 | |
|   return get_long(3);
 | |
| }
 | |
| 
 | |
| const TString16 TCommessa_string::contostr()
 | |
| {
 | |
| 	TString & str = get_tmp_string(24);
 | |
| 
 | |
| 	str.format("%d|%d|%ld", gruppo(), conto(), sotco());
 | |
|   return str;
 | |
| }
 | |
| 
 | |
| 
 | |
| //metodo costruttore
 | |
| TCommessa_string::TCommessa_string(const char* idlavoro, const int gruppo, const int conto, const long sotco)
 | |
| {
 | |
|   add(idlavoro);
 | |
|   add(gruppo);
 | |
|   add(conto);
 | |
|   add(sotco);
 | |
| }
 | |
| 
 | |
| 
 | |
| 
 | |
|                                       /////////////////////////
 | |
|                                       ////    TCOMMESSA    ////
 | |
|                                       /////////////////////////
 | |
| 
 | |
| //CODICE: metodo che restituisce il codice di ripartizione
 | |
| const TString8 TCommessa::codice() const
 | |
| {
 | |
|   return _codice;
 | |
| }
 | |
| 
 | |
| //CMSSTR: metodo che restituisce la TToken_string contenente le informazioni di codcms e del conto
 | |
| const TCommessa_string TCommessa::cmsstr() const
 | |
| {
 | |
|   return _commessa;
 | |
| }
 | |
| 
 | |
| //metodo costruttore
 | |
| TCommessa::TCommessa(const char* codcms)
 | |
| {
 | |
|   TString80  str    = cache().get(LF_COMMESSE, codcms, COMMESSE_CODCONTO);
 | |
|   const int  gruppo = atoi(str.left(3))  > 0  ? atoi(str.left(3))  : 0;
 | |
|   const int  conto  = atoi(str.mid(3,3)) > 0  ? atoi(str.mid(3,3)) : 0;
 | |
|   const long sotco  = atol(str.right(6)) > 0L ? atol(str.right(6)) : 0L;
 | |
| 
 | |
|   TCommessa_string cms(codcms, gruppo, conto, sotco);
 | |
| 
 | |
|   _commessa = cms;
 | |
| }
 | |
| 
 | |
|                                       //////////////////////////
 | |
|                                       ////    TVB_RECSET    ////
 | |
|                                       //////////////////////////
 | |
| 
 | |
| TRecnotype TVB_recset::new_rec(const char* buf)
 | |
| {
 | |
|   TToken_string str(256,'\t'); //nuovo record tab separator
 | |
| 
 | |
|   if(buf && *buf)
 | |
|   {
 | |
|     bool apici=false;
 | |
| 
 | |
|     for (const char* c = buf; *c ; c++)
 | |
|     {
 | |
|       if (*c == '"')
 | |
|       {
 | |
|         apici = !apici;
 | |
|       }
 | |
|       else
 | |
|       {
 | |
|         if (*c == separator())
 | |
|         {
 | |
|           if (!apici)
 | |
|             str << str.separator();
 | |
|           else
 | |
|             str << *c;
 | |
|         }
 | |
|         else
 | |
|           str << *c;
 | |
| 
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   const TRecnotype n = TText_recordset::new_rec(str);
 | |
| 
 | |
|   if (n >= 0)
 | |
|     row(n).separator(str.separator());
 | |
|   
 | |
|   return n;
 | |
| }
 | |
| 
 | |
| 
 | |
| TVB_recset::TVB_recset(const char * fileName, const char s)
 | |
|            : TCSV_recordset("CSV(,)")
 | |
| {
 | |
| 	set_separator(s);
 | |
|   load_file(fileName);
 | |
| }
 |