Corretta base per modulaser
git-svn-id: svn://10.65.10.50/trunk@3815 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
40596d8ff5
commit
dce7521c75
147
m770/77stba.cpp
147
m770/77stba.cpp
@ -38,6 +38,7 @@ TBase1::TBase1(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm,
|
|||||||
c = new TCursor(r);
|
c = new TCursor(r);
|
||||||
_bAllegSoci=FALSE;
|
_bAllegSoci=FALSE;
|
||||||
_base_formlen = BASE_FORMLEN;
|
_base_formlen = BASE_FORMLEN;
|
||||||
|
_GiaMessoStartDoc=FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
TBase1::~TBase1()
|
TBase1::~TBase1()
|
||||||
@ -178,8 +179,10 @@ bool TBase1::print(const long codditta, const long NumFis, const long NumNoFis)
|
|||||||
{
|
{
|
||||||
TCursor* cur = cursor();
|
TCursor* cur = cursor();
|
||||||
TPrinter& pr = printer();
|
TPrinter& pr = printer();
|
||||||
_codditta=codditta;
|
_codditta=codditta;
|
||||||
|
// Usata per modulaser in fill_page()
|
||||||
|
set_curr_page(PRIMA);
|
||||||
|
|
||||||
if (!InitPrint(codditta))
|
if (!InitPrint(codditta))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
pr.formlen(_base_formlen);
|
pr.formlen(_base_formlen);
|
||||||
@ -189,8 +192,11 @@ bool TBase1::print(const long codditta, const long NumFis, const long NumNoFis)
|
|||||||
{
|
{
|
||||||
ClearFlagModulaser();
|
ClearFlagModulaser();
|
||||||
TPrintrow r;
|
TPrintrow r;
|
||||||
if (!_GiaMessoStartDoc)
|
if (!_GiaMessoStartDoc)
|
||||||
|
{
|
||||||
put_modulaser(r, STARTDOC);
|
put_modulaser(r, STARTDOC);
|
||||||
|
_GiaMessoStartDoc=TRUE;
|
||||||
|
}
|
||||||
put_modulaser(r, STARTDITTA);
|
put_modulaser(r, STARTDITTA);
|
||||||
put_modulaser(r, STARTPAGE, 1);
|
put_modulaser(r, STARTPAGE, 1);
|
||||||
pr.print(r);
|
pr.print(r);
|
||||||
@ -223,6 +229,11 @@ bool TBase2::print(const long codditta, const long NumFis, const long NumNoFis)
|
|||||||
{
|
{
|
||||||
TCursor* cur = cursor();
|
TCursor* cur = cursor();
|
||||||
TPrinter& pr = printer();
|
TPrinter& pr = printer();
|
||||||
|
if (_modulaser)
|
||||||
|
{
|
||||||
|
ClearFlagModulaser();
|
||||||
|
set_curr_page(SECONDA);
|
||||||
|
}
|
||||||
_codditta=codditta;
|
_codditta=codditta;
|
||||||
filtra(codditta);
|
filtra(codditta);
|
||||||
_RigaCorr=0;
|
_RigaCorr=0;
|
||||||
@ -267,13 +278,6 @@ int TBase3::stampa_L(TPrinter& pr)
|
|||||||
|
|
||||||
TCursor& cur = *cursor();
|
TCursor& cur = *cursor();
|
||||||
|
|
||||||
/* if (iChiaveL==2)
|
|
||||||
cur.setkey(1);
|
|
||||||
else
|
|
||||||
cur.setkey(2);
|
|
||||||
|
|
||||||
filtra(_codditta); */
|
|
||||||
|
|
||||||
bool finito=FALSE;
|
bool finito=FALSE;
|
||||||
int righe=0;
|
int righe=0;
|
||||||
while (!finito)
|
while (!finito)
|
||||||
@ -332,6 +336,11 @@ bool TBase3::print(const long codditta, const long NumFis, const long NumNoFis)
|
|||||||
TPrinter& pr = printer();
|
TPrinter& pr = printer();
|
||||||
_codditta=codditta;
|
_codditta=codditta;
|
||||||
reset_totali_L();
|
reset_totali_L();
|
||||||
|
if (_modulaser)
|
||||||
|
{
|
||||||
|
ClearFlagModulaser();
|
||||||
|
set_curr_page(TERZA);
|
||||||
|
}
|
||||||
_RigaCorr=0;
|
_RigaCorr=0;
|
||||||
|
|
||||||
// Legge dai par.studio l'ordinamento da usare per L
|
// Legge dai par.studio l'ordinamento da usare per L
|
||||||
@ -864,8 +873,15 @@ bool TBase4::print(const long codditta, const long NumFis, const long NumNoFis)
|
|||||||
_bAggN=_bAggP=_bAggR=_bAggQ=_bAggS=_bAggT=FALSE;
|
_bAggN=_bAggP=_bAggR=_bAggQ=_bAggS=_bAggT=FALSE;
|
||||||
TCursor* cur = cursor();
|
TCursor* cur = cursor();
|
||||||
TPrinter& pr = printer();
|
TPrinter& pr = printer();
|
||||||
|
// per modulaser end-doc (v.fill_page())
|
||||||
|
_EndPrintDitta=TRUE;
|
||||||
_codditta=codditta;
|
_codditta=codditta;
|
||||||
filtra(codditta);
|
filtra(codditta);
|
||||||
|
if (_modulaser)
|
||||||
|
{
|
||||||
|
ClearFlagModulaser();
|
||||||
|
set_curr_page(QUARTA);
|
||||||
|
}
|
||||||
_RigaCorr=0;
|
_RigaCorr=0;
|
||||||
(*cur)=0L;
|
(*cur)=0L;
|
||||||
jump_to_line(pr, prima_riga(PRIMA));
|
jump_to_line(pr, prima_riga(PRIMA));
|
||||||
@ -919,7 +935,6 @@ bool TStampaBase::print_quadro(const int OffsetDitta, const bool modulaser)
|
|||||||
int start=0, last=0;
|
int start=0, last=0;
|
||||||
// Flag per distinguere la prima pagina con posizionamento da quelle successive senza
|
// Flag per distinguere la prima pagina con posizionamento da quelle successive senza
|
||||||
bool GiaPosizionato=FALSE;
|
bool GiaPosizionato=FALSE;
|
||||||
|
|
||||||
// Setta formlen prima di printer.open per avere la lunghezza giusta nel caso di
|
// Setta formlen prima di printer.open per avere la lunghezza giusta nel caso di
|
||||||
// stampa a video
|
// stampa a video
|
||||||
printer().formlen(BASE_FORMLEN);
|
printer().formlen(BASE_FORMLEN);
|
||||||
@ -983,9 +998,12 @@ bool TStampaBase::print_quadro(const int OffsetDitta, const bool modulaser)
|
|||||||
else
|
else
|
||||||
_fBase1->set_formlen(BASE_FORMLEN-HEADER_PRIMA_NOPOS);
|
_fBase1->set_formlen(BASE_FORMLEN-HEADER_PRIMA_NOPOS);
|
||||||
_fBase1->print(codditta, fis, nofis);
|
_fBase1->print(codditta, fis, nofis);
|
||||||
GiaPosizionato=TRUE;
|
GiaPosizionato=TRUE;
|
||||||
|
|
||||||
_fBase2->print(codditta, fis, nofis);
|
_fBase2->print(codditta, fis, nofis);
|
||||||
_fBase3->print(codditta, fis, nofis);
|
_fBase3->print(codditta, fis, nofis);
|
||||||
|
// Dice a base4 se e' sull'ultima ditta (per modulaser end-doc)
|
||||||
|
_fBase4->set_last_ditta(i==last);
|
||||||
_fBase4->print(codditta, fis, nofis);
|
_fBase4->print(codditta, fis, nofis);
|
||||||
}
|
}
|
||||||
printer().close();
|
printer().close();
|
||||||
@ -1255,73 +1273,6 @@ int TQuadroN::prima_riga(PaginaQuadro p) const
|
|||||||
return 4+HEADER_PRIMA_NOPOS;
|
return 4+HEADER_PRIMA_NOPOS;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*void TBase4::fill_riga_QT(TPrint_section& sec,const int num)
|
|
||||||
{
|
|
||||||
TString sVal;
|
|
||||||
int start=1,end=6;
|
|
||||||
for (int i = start; i <= end; i++)
|
|
||||||
{
|
|
||||||
TForm_item& fi = sec.find_field(i);
|
|
||||||
if (num < _righeQT.items())
|
|
||||||
{
|
|
||||||
const TRigaQT& rN = _righeQT[num];
|
|
||||||
if (i==start)
|
|
||||||
sVal=rN.sMesePag();
|
|
||||||
else if (i==start+1)
|
|
||||||
sVal=rN.sAnnoPag();
|
|
||||||
else if (i==start+2)
|
|
||||||
sVal=rN.ContVers(fi.picture());
|
|
||||||
else if (i==start+3)
|
|
||||||
sVal=rN.ContRimb(fi.picture());
|
|
||||||
else if (i==start+4)
|
|
||||||
sVal=rN.Interessi(fi.picture());
|
|
||||||
else if (i==start+5)
|
|
||||||
sVal=rN.CodReg();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
sVal="";
|
|
||||||
fi.set(sVal);
|
|
||||||
TPrintrow& row=sec.row(0);
|
|
||||||
row.put(sVal,fi.x()-1);
|
|
||||||
}
|
|
||||||
} */
|
|
||||||
|
|
||||||
/*
|
|
||||||
void TBase4::fill_riga_PS(TPrint_section& sec,const int num)
|
|
||||||
{
|
|
||||||
TString sVal;
|
|
||||||
int start=1,end=8;
|
|
||||||
for (int i = start; i <= end; i++)
|
|
||||||
{
|
|
||||||
TForm_item& fi = sec.find_field(i);
|
|
||||||
if (num < _righePS.items())
|
|
||||||
{
|
|
||||||
const TRigaPS& rN = _righePS[num];
|
|
||||||
if (i==start)
|
|
||||||
sVal=rN.sImposta(fi.picture());
|
|
||||||
else if (i==start+1)
|
|
||||||
sVal=rN.sIntDip(fi.picture());
|
|
||||||
else if (i==start+2)
|
|
||||||
sVal=rN.sIntDat(fi.picture());
|
|
||||||
else if (i==start+3)
|
|
||||||
sVal=rN.sTipoVers();
|
|
||||||
else if (i==start+4)
|
|
||||||
sVal=rN.sCodTrib();
|
|
||||||
else if (i==start+5)
|
|
||||||
sVal=rN.sDataVers();
|
|
||||||
else if (i==start+6)
|
|
||||||
sVal=rN.sSerie();
|
|
||||||
else if (i==start+7)
|
|
||||||
sVal=rN.sNumero();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
sVal="";
|
|
||||||
fi.set(sVal);
|
|
||||||
TPrintrow& row=sec.row(0);
|
|
||||||
row.put(sVal,fi.x()-1);
|
|
||||||
}
|
|
||||||
} */
|
|
||||||
|
|
||||||
int TQuadroN::stampa_N(TPrinter& pr,const int ptrN)
|
int TQuadroN::stampa_N(TPrinter& pr,const int ptrN)
|
||||||
{
|
{
|
||||||
TPrint_section& body = section('B', odd_page);
|
TPrint_section& body = section('B', odd_page);
|
||||||
@ -1476,44 +1427,6 @@ int TQuadroN::stampa_T(TPrinter& pr,const int ptrT)
|
|||||||
return riga;
|
return riga;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
void TBase4::fill_riga_NR(TPrint_section& sec,const int num, const int side)
|
|
||||||
{
|
|
||||||
TString sVal;
|
|
||||||
int start,end;
|
|
||||||
if (side==0)
|
|
||||||
{
|
|
||||||
start=0;
|
|
||||||
end=4;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
start=4;
|
|
||||||
end=8;
|
|
||||||
}
|
|
||||||
for (int i = start; i < end; i++)
|
|
||||||
{
|
|
||||||
TForm_item& fi = sec.field(i);
|
|
||||||
if (num < _righeNR.items())
|
|
||||||
{
|
|
||||||
const TRigaN& rN = _righeNR[num];
|
|
||||||
if (i==start)
|
|
||||||
sVal=rN.sMeseRif();
|
|
||||||
else if (i==start+1)
|
|
||||||
sVal=rN.sAnnoRif();
|
|
||||||
else if (i==start+2)
|
|
||||||
sVal=rN.ImpRimb(fi.picture());
|
|
||||||
else if (i==start+3)
|
|
||||||
sVal=rN.CompAss(fi.picture());
|
|
||||||
}
|
|
||||||
else
|
|
||||||
sVal="";
|
|
||||||
fi.set(sVal);
|
|
||||||
TPrintrow& row=sec.row(0);
|
|
||||||
row.put(sVal,fi.x()-1);
|
|
||||||
}
|
|
||||||
} */
|
|
||||||
|
|
||||||
int TQuadroN::dic_form_len() const
|
int TQuadroN::dic_form_len() const
|
||||||
{
|
{
|
||||||
if (_PaginaPosizionamento)
|
if (_PaginaPosizionamento)
|
||||||
|
@ -20,6 +20,7 @@ class TBase1 : public TDicForm
|
|||||||
void stampa_corpo(TPrinter& pr);
|
void stampa_corpo(TPrinter& pr);
|
||||||
void stampa_soci(TPrinter& pr);
|
void stampa_soci(TPrinter& pr);
|
||||||
bool bAllegSoci() const { return _bAllegSoci; }
|
bool bAllegSoci() const { return _bAllegSoci; }
|
||||||
|
virtual bool ultima_pagina() const { return FALSE; } // usato in fill_page per modulaser
|
||||||
virtual int dic_form_len() const;
|
virtual int dic_form_len() const;
|
||||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||||
virtual void stampa_totali(TPrinter& pr) {}
|
virtual void stampa_totali(TPrinter& pr) {}
|
||||||
@ -27,6 +28,7 @@ class TBase1 : public TDicForm
|
|||||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||||
virtual int prima_riga(PaginaQuadro p) const;
|
virtual int prima_riga(PaginaQuadro p) const;
|
||||||
public:
|
public:
|
||||||
|
bool _GiaMessoStartDoc; // flag per modulaser 'inizio-documento'
|
||||||
void set_formlen(const int formlen) { _base_formlen = formlen; }
|
void set_formlen(const int formlen) { _base_formlen = formlen; }
|
||||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||||
TBase1(const char* sNomeForm, const char* quadro);
|
TBase1(const char* sNomeForm, const char* quadro);
|
||||||
@ -39,6 +41,7 @@ class TBase2 : public TDicForm
|
|||||||
long _codditta;
|
long _codditta;
|
||||||
protected:
|
protected:
|
||||||
void stampa_corpo(TPrinter& pr);
|
void stampa_corpo(TPrinter& pr);
|
||||||
|
virtual bool ultima_pagina() const { return FALSE; } // usato in fill_page per modulaser
|
||||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||||
@ -59,6 +62,7 @@ class TBase3 : public TDicForm
|
|||||||
void reset_totali_L();
|
void reset_totali_L();
|
||||||
bool aggiuntivoL() const { return _bAggiuntivoL; }
|
bool aggiuntivoL() const { return _bAggiuntivoL; }
|
||||||
int stampa_L(TPrinter& pr);
|
int stampa_L(TPrinter& pr);
|
||||||
|
virtual bool ultima_pagina() const { return FALSE; } // usato in fill_page per modulaser
|
||||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||||
@ -192,7 +196,7 @@ class TBase4 : public TDicForm
|
|||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
long _codditta;
|
long _codditta;
|
||||||
bool _bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
|
bool _bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
|
||||||
protected:
|
protected:
|
||||||
int _IdFirma;
|
int _IdFirma;
|
||||||
TRigheNR _righeR; // array dei record N e R
|
TRigheNR _righeR; // array dei record N e R
|
||||||
@ -212,13 +216,15 @@ class TBase4 : public TDicForm
|
|||||||
void stampa_Q(TPrinter& pr);
|
void stampa_Q(TPrinter& pr);
|
||||||
void stampa_R(TPrinter& pr);
|
void stampa_R(TPrinter& pr);
|
||||||
void stampa_S(TPrinter& pr);
|
void stampa_S(TPrinter& pr);
|
||||||
void stampa_T(TPrinter& pr);
|
void stampa_T(TPrinter& pr);
|
||||||
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
virtual int dic_form_len() const { return BASE_FORMLEN; }
|
||||||
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||||
int calcola_firma();
|
int calcola_firma();
|
||||||
public:
|
public:
|
||||||
|
void set_last_ditta(const bool last_ditta) { _LastDitta = last_ditta; }
|
||||||
|
virtual bool ultima_pagina() const { return TRUE; } // usato in fill_page per modulaser
|
||||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||||
TBase4(const char* sNomeForm, const char* quadro) : _IdFirma(824), TDicForm(sNomeForm, quadro) {}
|
TBase4(const char* sNomeForm, const char* quadro) : _IdFirma(824), TDicForm(sNomeForm, quadro) {}
|
||||||
virtual ~TBase4() {}
|
virtual ~TBase4() {}
|
||||||
|
@ -502,9 +502,6 @@ void TDicForm::put_modulaser(TPrintrow& row, ModulaserKey Cmd, int page)
|
|||||||
cofi = cod_fis(_codditta);
|
cofi = cod_fis(_codditta);
|
||||||
ragsoc = get_ragsoc(_codditta);
|
ragsoc = get_ragsoc(_codditta);
|
||||||
}
|
}
|
||||||
// cofi.format("%-16s", (const char*)_cur->file(-116).get(ANA_COFI));
|
|
||||||
// ragsoc = _cur->file(LF_NDITTE).get(NDT_RAGSOC);
|
|
||||||
|
|
||||||
riga << cofi; // Cod.Fiscale
|
riga << cofi; // Cod.Fiscale
|
||||||
riga << "$00/"; // Cod.Studio/
|
riga << "$00/"; // Cod.Studio/
|
||||||
if (_tipo_ditta == estinto)
|
if (_tipo_ditta == estinto)
|
||||||
@ -516,7 +513,6 @@ void TDicForm::put_modulaser(TPrintrow& row, ModulaserKey Cmd, int page)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STARTPAGE:
|
case STARTPAGE:
|
||||||
// riga = "<VK>*1*";
|
|
||||||
riga = BuildModulaserStartPage();
|
riga = BuildModulaserStartPage();
|
||||||
riga << page;
|
riga << page;
|
||||||
_GiaMessoStartPage[page] = TRUE;
|
_GiaMessoStartPage[page] = TRUE;
|
||||||
@ -1870,7 +1866,7 @@ bool TQuadroD::controlla_percentuale(TCursor& cur)
|
|||||||
char tipo = rec.get_char(QUD_TIPOA);
|
char tipo = rec.get_char(QUD_TIPOA);
|
||||||
long codana = rec.get_long(QUD_CODANAGR);
|
long codana = rec.get_long(QUD_CODANAGR);
|
||||||
real perc = rec.get_real(QUD_PERC);
|
real perc = rec.get_real(QUD_PERC);
|
||||||
TString codcaus = cur->curr(-14).get("S2");
|
TString codcaus = cur.curr(-14).get("S2");
|
||||||
|
|
||||||
if (ditta == ditta_p && tipo == tipo_p &&
|
if (ditta == ditta_p && tipo == tipo_p &&
|
||||||
codana == codana_p && codcaus == codcaus_p &&
|
codana == codana_p && codcaus == codcaus_p &&
|
||||||
|
Loading…
x
Reference in New Issue
Block a user