giornale dell'esercizio corrispondente. git-svn-id: svn://10.65.10.50/trunk@220 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			108 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
// cg4401.cpp
 | 
						|
// 
 | 
						|
 | 
						|
#include <applicat.h>
 | 
						|
#include <isam.h>
 | 
						|
#include <strings.h>
 | 
						|
#include <lffiles.h>
 | 
						|
#include <utility.h>
 | 
						|
 | 
						|
#include <nditte.h>
 | 
						|
#include <anagr.h>
 | 
						|
#include <comuni.h>
 | 
						|
 | 
						|
#include "cg4400.h"
 | 
						|
 | 
						|
static TString256 tmp;
 | 
						|
 | 
						|
TRectype& TDati_ditta::look_com(const char * cod)
 | 
						|
{
 | 
						|
  _comuni->zero();
 | 
						|
  _comuni->put(COM_COM,cod);
 | 
						|
  _comuni->read();
 | 
						|
  if (_comuni->bad()) _comuni->zero();
 | 
						|
  return _comuni->curr();  
 | 
						|
}
 | 
						|
 | 
						|
TDati_ditta::TDati_ditta(long cod_ditta, int stampa_width)
 | 
						|
{
 | 
						|
  _stampa_width = stampa_width;
 | 
						|
  _codditta = cod_ditta;
 | 
						|
  _nditte = new TLocalisamfile(LF_NDITTE);
 | 
						|
  _anag   = new TLocalisamfile(LF_ANAG);
 | 
						|
  _comuni = new TLocalisamfile(LF_COMUNI);
 | 
						|
}
 | 
						|
 | 
						|
TDati_ditta::~TDati_ditta()
 | 
						|
{
 | 
						|
  delete _anag; delete _nditte; delete _comuni;
 | 
						|
}
 | 
						|
 | 
						|
void TDati_ditta::get_dati_ditta ()
 | 
						|
{
 | 
						|
  TString16     codanagr;
 | 
						|
  char          tipoa;
 | 
						|
 | 
						|
  _nditte->zero();
 | 
						|
  _nditte->put(NDT_CODDITTA, _codditta);   
 | 
						|
  _nditte->read();
 | 
						|
 | 
						|
  if (_nditte->bad()) _nditte->zero();
 | 
						|
 | 
						|
  _ragsoc  = _nditte->get(NDT_RAGSOC);
 | 
						|
  codanagr = _nditte->get(NDT_CODANAGR);
 | 
						|
  tipoa    = _nditte->get_char(NDT_TIPOA);
 | 
						|
 | 
						|
  _anag->setkey(1);
 | 
						|
  _anag->zero();
 | 
						|
  _anag->put (ANA_TIPOA, tipoa);
 | 
						|
  _anag->put (ANA_CODANAGR, codanagr);
 | 
						|
  _anag->read();
 | 
						|
  if (_anag->bad()) _anag->zero();
 | 
						|
  
 | 
						|
  _cofi      = _anag->get(ANA_COFI);
 | 
						|
  _paiva     = _anag->get(ANA_PAIV);
 | 
						|
  _comunefis = _anag->get(ANA_COMRF);
 | 
						|
 | 
						|
  if (_comunefis.trim().empty()) 
 | 
						|
    _comunefis = _anag->get(ANA_COMRES);
 | 
						|
 | 
						|
  TRectype dep = look_com (_comunefis);
 | 
						|
 | 
						|
  _comunefis = dep.get(COM_DENCOM);
 | 
						|
  _provfis   = dep.get(COM_PROVCOM);
 | 
						|
  _cap       = dep.get(COM_CAPCOM);
 | 
						|
  if (_comunefis.trim().empty()) 
 | 
						|
  {
 | 
						|
    _viafis = _anag->get(ANA_INDRF);
 | 
						|
    _viafis.rtrim();
 | 
						|
    _viafis << " " << _anag->curr().get (ANA_CIVRF); 
 | 
						|
  }
 | 
						|
  else
 | 
						|
  {
 | 
						|
    _viafis = _anag->get(ANA_INDRES);
 | 
						|
    _viafis.rtrim();
 | 
						|
    _viafis << " " << _anag->get (ANA_CIVRES); 
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
const char * TDati_ditta::prima_riga()
 | 
						|
{
 | 
						|
  get_dati_ditta();
 | 
						|
  tmp << "Ditta " << _codditta << ' ' << _ragsoc << " Via " << _viafis << ' ' 
 | 
						|
    << _cap << ' ' << _comunefis << ' ' << _provfis;
 | 
						|
  return tmp;
 | 
						|
}
 | 
						|
 | 
						|
const char * TDati_ditta::seconda_riga()
 | 
						|
{
 | 
						|
  tmp = "";
 | 
						|
  tmp = "Data @<";
 | 
						|
  tmp.right_just(_stampa_width-15);
 | 
						|
  tmp.overwrite (format ("Partita iva %s @26gCodice fiscale %s", 
 | 
						|
                         (const char*)_paiva, (const char*)_cofi));
 | 
						|
  return tmp;
 | 
						|
}
 | 
						|
 | 
						|
 |