aggiunta busta e corretta stampa firme

git-svn-id: svn://10.65.10.50/trunk@3351 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1996-08-09 08:32:24 +00:00
parent 9687be385a
commit 8f2fd1122d
2 changed files with 61 additions and 37 deletions

View File

@ -335,7 +335,7 @@ BEGIN
KEY "C.A.P. Ufficio distrettuale"
PROMPT 138 46 ""
FIELD 204@->S7
FILED 213@->CAPCOM
FIELD 213@->CAPCOM
GROUP 20
END

View File

@ -4003,6 +4003,7 @@ protected:
void stampa_corpo(TPrinter& pr);
void stampa_totali(TPrinter& pr);
void stampa_firma(TPrinter& pr);
public:
TQuadroA(const char* form, const char* quadro) : TDicForm(form, quadro) {}
@ -4044,6 +4045,26 @@ void TQuadroA::stampa_totali(TPrinter& pr)
}
}
void TQuadroA::stampa_firma(TPrinter& pr)
{
TPrint_section& totali = section('F', last_page);
totali.update();
TForm_item& signature = totali.find_field(2);
const int lasty = signature.y();
TPrintrow empty;
for (int i = 0; i < totali.items(); i++)
{
if (i < lasty)
pr.print(empty);
else
pr.print(totali.row(i));
_RigaCorr++;
}
}
void TQuadroA::next_page(TPrinter& pr)
{
fill_page(pr, -1); // formfeed "adattato"
@ -4184,12 +4205,15 @@ bool TQuadroA::print(const long codditta, const long NumFis, const long NumNoFis
if (elementi >= elementi_pagina(QUARTA))
{
jump_to_line(pr, riga_totali(QUARTA));
if (stampato_ultimo)
{
jump_to_line(pr, riga_totali(QUARTA));
stampa_totali(pr);
stampati_totali = TRUE;
}
else
stampa_firma(pr);
next_page(pr);
elementi = 0;
}
@ -4880,19 +4904,19 @@ HIDDEN const int BASE_PAGINE = 4;
class TBase1 : public TDicForm
{
private:
long _codditta;
TRelation* r; // usate per contare i soci
TCursor* c;
long iContaSoci();
long _codditta;
TRelation* r; // usate per contare i soci
TCursor* c;
long iContaSoci();
protected:
void stampa_corpo(TPrinter& pr);
void stampa_soci(TPrinter& pr);
virtual int dic_form_len() const { return BASE_FORMLEN-2; }
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
virtual void stampa_totali(TPrinter& pr) {}
virtual void aggiorna_totali(const char tipo) {}
virtual void set_body(TPrinter& pr, const char tipo) {}
virtual int prima_riga(PaginaQuadro p) const { return 11; }
virtual int dic_form_len() const { return BASE_FORMLEN-2; }
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
virtual void stampa_totali(TPrinter& pr) {}
virtual void aggiorna_totali(const char tipo) {}
virtual void set_body(TPrinter& pr, const char tipo) {}
virtual int prima_riga(PaginaQuadro p) const { return 11; }
public:
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
TBase1(const char* sNomeForm, const char* quadro);
@ -4975,8 +4999,8 @@ void TBase1::stampa_soci(TPrinter& pr)
fut.field(4).set(sDataNa);
fut.field(5).set(sCodFis);
fut.field(6).set(sCodQua);
pr.print(fut.row(i++));
_RigaCorr++;
pr.print(fut.row(i++));
_RigaCorr++;
}
}
if (usa_progind()) progind()->addstatus(1);
@ -5006,15 +5030,15 @@ bool TBase1::print(const long codditta, const long NumFis, const long NumNoFis)
class TBase2 : public TDicForm
{
private:
long _codditta;
long _codditta;
protected:
void stampa_corpo(TPrinter& pr);
virtual int dic_form_len() const { return BASE_FORMLEN; }
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
virtual void stampa_totali(TPrinter& pr) {}
virtual void aggiorna_totali(const char tipo) {}
virtual void set_body(TPrinter& pr, const char tipo) {}
virtual int prima_riga(PaginaQuadro p) const { return 1;}
virtual int dic_form_len() const { return BASE_FORMLEN; }
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
virtual void stampa_totali(TPrinter& pr) {}
virtual void aggiorna_totali(const char tipo) {}
virtual void set_body(TPrinter& pr, const char tipo) {}
virtual int prima_riga(PaginaQuadro p) const { return 1;}
public:
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
TBase2(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro) {}
@ -5052,22 +5076,22 @@ bool TBase2::print(const long codditta, const long NumFis, const long NumNoFis)
class TStampaBase : public TStampaQuadro
{
private:
TBase1* _fBase1;
TBase2* _fBase2;
TRelation* _rel;
TCursor* _cur, *_cur2;
protected:
virtual bool user_create();
virtual bool user_destroy();
virtual bool conta_tipi_per() const { return FALSE; }
virtual TDicForm* get_form() const { return _fBase1; }
virtual TCursor* get_cursor() const { return _cur; }
virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
public:
TStampaBase(char livel) : TStampaQuadro("Base", livel) { }
private:
TBase1* _fBase1;
TBase2* _fBase2;
TRelation* _rel;
TCursor* _cur, *_cur2;
protected:
virtual bool user_create();
virtual bool user_destroy();
virtual bool conta_tipi_per() const { return FALSE; }
virtual TDicForm* get_form() const { return _fBase1; }
virtual TCursor* get_cursor() const { return _cur; }
virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
public:
TStampaBase(char livel) : TStampaQuadro("Base", livel) { }
};
bool TStampaBase::user_create()