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);
|
||||
_bAllegSoci=FALSE;
|
||||
_base_formlen = BASE_FORMLEN;
|
||||
_GiaMessoStartDoc=FALSE;
|
||||
}
|
||||
|
||||
TBase1::~TBase1()
|
||||
@ -178,8 +179,10 @@ bool TBase1::print(const long codditta, const long NumFis, const long NumNoFis)
|
||||
{
|
||||
TCursor* cur = cursor();
|
||||
TPrinter& pr = printer();
|
||||
_codditta=codditta;
|
||||
|
||||
_codditta=codditta;
|
||||
// Usata per modulaser in fill_page()
|
||||
set_curr_page(PRIMA);
|
||||
|
||||
if (!InitPrint(codditta))
|
||||
return FALSE;
|
||||
pr.formlen(_base_formlen);
|
||||
@ -189,8 +192,11 @@ bool TBase1::print(const long codditta, const long NumFis, const long NumNoFis)
|
||||
{
|
||||
ClearFlagModulaser();
|
||||
TPrintrow r;
|
||||
if (!_GiaMessoStartDoc)
|
||||
if (!_GiaMessoStartDoc)
|
||||
{
|
||||
put_modulaser(r, STARTDOC);
|
||||
_GiaMessoStartDoc=TRUE;
|
||||
}
|
||||
put_modulaser(r, STARTDITTA);
|
||||
put_modulaser(r, STARTPAGE, 1);
|
||||
pr.print(r);
|
||||
@ -223,6 +229,11 @@ bool TBase2::print(const long codditta, const long NumFis, const long NumNoFis)
|
||||
{
|
||||
TCursor* cur = cursor();
|
||||
TPrinter& pr = printer();
|
||||
if (_modulaser)
|
||||
{
|
||||
ClearFlagModulaser();
|
||||
set_curr_page(SECONDA);
|
||||
}
|
||||
_codditta=codditta;
|
||||
filtra(codditta);
|
||||
_RigaCorr=0;
|
||||
@ -267,13 +278,6 @@ int TBase3::stampa_L(TPrinter& pr)
|
||||
|
||||
TCursor& cur = *cursor();
|
||||
|
||||
/* if (iChiaveL==2)
|
||||
cur.setkey(1);
|
||||
else
|
||||
cur.setkey(2);
|
||||
|
||||
filtra(_codditta); */
|
||||
|
||||
bool finito=FALSE;
|
||||
int righe=0;
|
||||
while (!finito)
|
||||
@ -332,6 +336,11 @@ bool TBase3::print(const long codditta, const long NumFis, const long NumNoFis)
|
||||
TPrinter& pr = printer();
|
||||
_codditta=codditta;
|
||||
reset_totali_L();
|
||||
if (_modulaser)
|
||||
{
|
||||
ClearFlagModulaser();
|
||||
set_curr_page(TERZA);
|
||||
}
|
||||
_RigaCorr=0;
|
||||
|
||||
// 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;
|
||||
TCursor* cur = cursor();
|
||||
TPrinter& pr = printer();
|
||||
// per modulaser end-doc (v.fill_page())
|
||||
_EndPrintDitta=TRUE;
|
||||
_codditta=codditta;
|
||||
filtra(codditta);
|
||||
if (_modulaser)
|
||||
{
|
||||
ClearFlagModulaser();
|
||||
set_curr_page(QUARTA);
|
||||
}
|
||||
_RigaCorr=0;
|
||||
(*cur)=0L;
|
||||
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;
|
||||
// Flag per distinguere la prima pagina con posizionamento da quelle successive senza
|
||||
bool GiaPosizionato=FALSE;
|
||||
|
||||
// Setta formlen prima di printer.open per avere la lunghezza giusta nel caso di
|
||||
// stampa a video
|
||||
printer().formlen(BASE_FORMLEN);
|
||||
@ -983,9 +998,12 @@ bool TStampaBase::print_quadro(const int OffsetDitta, const bool modulaser)
|
||||
else
|
||||
_fBase1->set_formlen(BASE_FORMLEN-HEADER_PRIMA_NOPOS);
|
||||
_fBase1->print(codditta, fis, nofis);
|
||||
GiaPosizionato=TRUE;
|
||||
GiaPosizionato=TRUE;
|
||||
|
||||
_fBase2->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);
|
||||
}
|
||||
printer().close();
|
||||
@ -1255,73 +1273,6 @@ int TQuadroN::prima_riga(PaginaQuadro p) const
|
||||
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)
|
||||
{
|
||||
TPrint_section& body = section('B', odd_page);
|
||||
@ -1476,44 +1427,6 @@ int TQuadroN::stampa_T(TPrinter& pr,const int ptrT)
|
||||
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
|
||||
{
|
||||
if (_PaginaPosizionamento)
|
||||
|
@ -20,6 +20,7 @@ class TBase1 : public TDicForm
|
||||
void stampa_corpo(TPrinter& pr);
|
||||
void stampa_soci(TPrinter& pr);
|
||||
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 void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void stampa_totali(TPrinter& pr) {}
|
||||
@ -27,6 +28,7 @@ class TBase1 : public TDicForm
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const;
|
||||
public:
|
||||
bool _GiaMessoStartDoc; // flag per modulaser 'inizio-documento'
|
||||
void set_formlen(const int formlen) { _base_formlen = formlen; }
|
||||
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
|
||||
TBase1(const char* sNomeForm, const char* quadro);
|
||||
@ -39,6 +41,7 @@ class TBase2 : public TDicForm
|
||||
long _codditta;
|
||||
protected:
|
||||
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 void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
@ -59,6 +62,7 @@ class TBase3 : public TDicForm
|
||||
void reset_totali_L();
|
||||
bool aggiuntivoL() const { return _bAggiuntivoL; }
|
||||
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 void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
@ -192,7 +196,7 @@ class TBase4 : public TDicForm
|
||||
{
|
||||
private:
|
||||
long _codditta;
|
||||
bool _bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
|
||||
bool _bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
|
||||
protected:
|
||||
int _IdFirma;
|
||||
TRigheNR _righeR; // array dei record N e R
|
||||
@ -212,13 +216,15 @@ class TBase4 : public TDicForm
|
||||
void stampa_Q(TPrinter& pr);
|
||||
void stampa_R(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 void next_page(TPrinter& pr) { fill_page(pr, -1); }
|
||||
virtual void set_body(TPrinter& pr, const char tipo) {}
|
||||
virtual int prima_riga(PaginaQuadro p) const { return 4;}
|
||||
int calcola_firma();
|
||||
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);
|
||||
TBase4(const char* sNomeForm, const char* quadro) : _IdFirma(824), TDicForm(sNomeForm, quadro) {}
|
||||
virtual ~TBase4() {}
|
||||
|
@ -502,9 +502,6 @@ void TDicForm::put_modulaser(TPrintrow& row, ModulaserKey Cmd, int page)
|
||||
cofi = cod_fis(_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 << "$00/"; // Cod.Studio/
|
||||
if (_tipo_ditta == estinto)
|
||||
@ -516,7 +513,6 @@ void TDicForm::put_modulaser(TPrintrow& row, ModulaserKey Cmd, int page)
|
||||
}
|
||||
break;
|
||||
case STARTPAGE:
|
||||
// riga = "<VK>*1*";
|
||||
riga = BuildModulaserStartPage();
|
||||
riga << page;
|
||||
_GiaMessoStartPage[page] = TRUE;
|
||||
@ -1870,7 +1866,7 @@ bool TQuadroD::controlla_percentuale(TCursor& cur)
|
||||
char tipo = rec.get_char(QUD_TIPOA);
|
||||
long codana = rec.get_long(QUD_CODANAGR);
|
||||
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 &&
|
||||
codana == codana_p && codcaus == codcaus_p &&
|
||||
|
Loading…
x
Reference in New Issue
Block a user