ba3100.cpp Provo a togliere new TTable_application
ba3600.cpp Corretti handlers bislacchi ba3600a.uml Messo grassetto ad alcuni testi git-svn-id: svn://10.65.10.50/trunk@4047 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
8c47fa1eee
commit
97e94f2c91
@ -479,8 +479,7 @@ int TGeneric_table_app::rewrite(const TMask& m)
|
||||
|
||||
int ba3100(int argc, char* argv[])
|
||||
{
|
||||
TGeneric_table_app* a = new TGeneric_table_app;
|
||||
a->run(argc, argv, "Tabella");
|
||||
delete a; // Bella battuta!
|
||||
TGeneric_table_app a;
|
||||
a.run(argc, argv, "Tabella");
|
||||
return 0;
|
||||
}
|
||||
|
112
ba/ba3600.cpp
112
ba/ba3600.cpp
@ -1,8 +1,6 @@
|
||||
#include <mask.h>
|
||||
#include <printapp.h>
|
||||
//#include <relation.h>
|
||||
#include <tabutil.h>
|
||||
//#include <utility.h>
|
||||
#include <sort.h>
|
||||
#include <progind.h>
|
||||
#include <prefix.h>
|
||||
@ -14,13 +12,9 @@
|
||||
#include "ba3.h"
|
||||
#include "ba3600.h"
|
||||
|
||||
#define ALIAS 50
|
||||
|
||||
static TString256 tmp;
|
||||
|
||||
const int TABLBU = (int)TTable::name2log("%LBU");
|
||||
|
||||
class BA3600_application : public TPrintapp
|
||||
class TStampa_indici : public TPrint_application
|
||||
{
|
||||
struct ind_lib
|
||||
{
|
||||
@ -59,12 +53,10 @@ class BA3600_application : public TPrintapp
|
||||
bool _stamp_bollato, _pag_ann, _pag_fuori_sequenza,_stampa_intesta,_stampa_ind;
|
||||
TString _ind_dta,_civ_dta,_cap_dta,_com_dta,_prov_dta;
|
||||
|
||||
public:
|
||||
|
||||
bool menu (MENU_TAG m) { return TPrintapp::menu(m) ; }
|
||||
public: // TPrint_application
|
||||
virtual bool user_create() ;
|
||||
virtual bool user_destroy();
|
||||
bool set_print(int);
|
||||
virtual bool set_print(int);
|
||||
|
||||
virtual bool preprocess_page (int,int);
|
||||
virtual print_action postprocess_page (int,int);
|
||||
@ -89,24 +81,36 @@ public:
|
||||
void descrizione();
|
||||
void dati_anagrafici_ditta(TString&,TString&,TString&,TString&,TString&);
|
||||
|
||||
BA3600_application() {}
|
||||
TStampa_indici();
|
||||
virtual ~TStampa_indici() { }
|
||||
};
|
||||
|
||||
void BA3600_application::init_sort()
|
||||
TStampa_indici::TStampa_indici()
|
||||
: _lib(NULL), _sort(NULL)
|
||||
{
|
||||
}
|
||||
|
||||
void TStampa_indici::init_sort()
|
||||
{
|
||||
if (_lib)
|
||||
delete _lib;
|
||||
_lib = new ind_lib;
|
||||
_sort = new TSort (sizeof(ind_lib));
|
||||
|
||||
if (_sort)
|
||||
delete _sort;
|
||||
_sort = new TSort(sizeof(ind_lib));
|
||||
|
||||
_sort->addsortkey((char*)&(_lib->anno) - (char*)&(_lib->anno),4);
|
||||
_sort->addsortkey((char*)&(_lib->mese) - (char*)&(_lib->anno),2);
|
||||
_sort->addsortkey((char*)&(_lib->nini_plib) - (char*)&(_lib->anno),5);
|
||||
|
||||
_sort -> addsortkey((char*)&(_lib->anno) - (char*)&(_lib->anno),4);
|
||||
_sort -> addsortkey((char*)&(_lib->mese) - (char*)&(_lib->anno),2);
|
||||
_sort -> addsortkey((char*)&(_lib->nini_plib) - (char*)&(_lib->anno),5);
|
||||
_sort->init();
|
||||
}
|
||||
|
||||
//Crea sort ordina i record della tabella %INL per mese registrazione, anno
|
||||
//registrazione e numero iniziale pagine registro libro unico
|
||||
|
||||
void BA3600_application::crea_sort()
|
||||
void TStampa_indici::crea_sort()
|
||||
{
|
||||
long anno,numini_paglib,numfin_paglib,codditta,numini_pagut,numfin_pagut;
|
||||
TString cod_reg,cod_vidimaz,dep,app;
|
||||
@ -209,7 +213,7 @@ void BA3600_application::crea_sort()
|
||||
//con l'ultima pagina dell'ultimo indice solo se il i libri
|
||||
//selezionati sono gli stessi (libro di studio e libro di stampa).
|
||||
|
||||
void BA3600_application::dati_libro_unico()
|
||||
void TStampa_indici::dati_libro_unico()
|
||||
{
|
||||
TTable lbu ("%LBU");
|
||||
TString dep;
|
||||
@ -227,7 +231,7 @@ void BA3600_application::dati_libro_unico()
|
||||
}
|
||||
}
|
||||
|
||||
void BA3600_application::descrizione()
|
||||
void TStampa_indici::descrizione()
|
||||
{
|
||||
TTable lbu ("%LBU");
|
||||
TString16 dep;
|
||||
@ -238,7 +242,7 @@ void BA3600_application::descrizione()
|
||||
_desc_cod_lib_su = lbu.get ("S0");
|
||||
}
|
||||
|
||||
void BA3600_application::intestatario(TString& cofi,TString& paiv,TString& ragsoc,TString& ind,
|
||||
void TStampa_indici::intestatario(TString& cofi,TString& paiv,TString& ragsoc,TString& ind,
|
||||
TString& civ,TString& cap,TString& com,TString& prov)
|
||||
{
|
||||
TString codcom;
|
||||
@ -280,13 +284,9 @@ void BA3600_application::intestatario(TString& cofi,TString& paiv,TString& ragso
|
||||
}
|
||||
}
|
||||
|
||||
bool BA3600_application::set_print(int)
|
||||
bool TStampa_indici::set_print(int)
|
||||
{
|
||||
KEY tasto;
|
||||
|
||||
// _msk->set_mode(MODE_QUERY);
|
||||
tasto = _msk->run();
|
||||
|
||||
KEY tasto = _msk->run();
|
||||
if (tasto == K_ENTER)
|
||||
{
|
||||
_tipo_stampa = _msk->get_int(F_TIPO_STAMPA);
|
||||
@ -327,7 +327,7 @@ bool BA3600_application::set_print(int)
|
||||
}
|
||||
|
||||
/*********
|
||||
bool BA3600_application::preprocess_page(int file, int counter)
|
||||
bool TStampa_indici::preprocess_page(int file, int counter)
|
||||
{
|
||||
if (_tipo_stampa == 1)
|
||||
{
|
||||
@ -348,20 +348,17 @@ bool BA3600_application::set_print(int)
|
||||
}
|
||||
***********/
|
||||
|
||||
void BA3600_application::postclose_print()
|
||||
void TStampa_indici::postclose_print()
|
||||
{ // Se ha stampato in definitiva, aggiorna il numero di pagine stampate sul libro unico.
|
||||
// Viene incrementato del numero di pagine stampate per gli indici
|
||||
if ((_tipo_stampa == 2))
|
||||
{
|
||||
TString dep;
|
||||
long numfin_paglib;
|
||||
|
||||
_tab_lbu->zero();
|
||||
dep.format ("%4d%-3s", _anno, (const char*)_cod_lib_stampa); // Va aggiornato il libro sul quale si stampa!
|
||||
_tab_lbu->put("CODTAB", (const char*) dep);
|
||||
_tab_lbu->put("CODTAB", dep);
|
||||
if (_tab_lbu->read() == NOERR)
|
||||
{
|
||||
numfin_paglib = _tab_lbu->get_long("I1");
|
||||
long numfin_paglib = _tab_lbu->get_long("I1");
|
||||
numfin_paglib += get_page_number();
|
||||
_tab_lbu->put("I1", numfin_paglib);
|
||||
_tab_lbu->rewrite();
|
||||
@ -369,7 +366,7 @@ void BA3600_application::postclose_print()
|
||||
}
|
||||
}
|
||||
|
||||
bool BA3600_application::preprocess_page(int file, int counter)
|
||||
bool TStampa_indici::preprocess_page(int file, int counter)
|
||||
{
|
||||
struct ind_lib* lib = (struct ind_lib*) _buff;
|
||||
long nini_plib;
|
||||
@ -436,7 +433,7 @@ bool BA3600_application::preprocess_page(int file, int counter)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void BA3600_application::set_page(int file, int counter)
|
||||
void TStampa_indici::set_page(int file, int counter)
|
||||
{
|
||||
if (_tipo_stampa == 1)
|
||||
setta_righe_prova();
|
||||
@ -444,11 +441,9 @@ void BA3600_application::set_page(int file, int counter)
|
||||
setta_righe_bollato();
|
||||
}
|
||||
|
||||
void BA3600_application::setta_righe_prova()
|
||||
void TStampa_indici::setta_righe_prova()
|
||||
{
|
||||
int i;
|
||||
|
||||
i = 1;
|
||||
int i = 1;
|
||||
|
||||
if (_pag_fuori_sequenza)
|
||||
set_row (i++,"@10gPAGINE FUORI SEQUENZA");
|
||||
@ -481,11 +476,9 @@ void BA3600_application::setta_righe_prova()
|
||||
set_row (i ,"@27g#t #t #t #t #t", &_ind_dta, &_civ_dta, &_cap_dta, &_com_dta, &_prov_dta);
|
||||
}
|
||||
|
||||
void BA3600_application::setta_righe_bollato()
|
||||
void TStampa_indici::setta_righe_bollato()
|
||||
{
|
||||
int i;
|
||||
|
||||
i = 1;
|
||||
int i = 1;
|
||||
|
||||
// if (_pag_fuori_sequenza)
|
||||
// set_row (i++,"@10gPAGINE FUORI SEQUENZA");
|
||||
@ -517,7 +510,7 @@ void BA3600_application::setta_righe_bollato()
|
||||
set_row (i ,"@27g#t #t #t #t #t", &_ind_dta, &_civ_dta, &_cap_dta, &_com_dta, &_prov_dta);
|
||||
}
|
||||
|
||||
print_action BA3600_application::postprocess_page(int file, int counter)
|
||||
print_action TStampa_indici::postprocess_page(int file, int counter)
|
||||
{
|
||||
if (_buff == NULL)
|
||||
return NEXT_PAGE;
|
||||
@ -525,7 +518,7 @@ print_action BA3600_application::postprocess_page(int file, int counter)
|
||||
return REPEAT_PAGE;
|
||||
}
|
||||
|
||||
const char* BA3600_application::ragsoc_ditta(long codditta)
|
||||
const char* TStampa_indici::ragsoc_ditta(long codditta)
|
||||
{
|
||||
TLocalisamfile nditte(LF_NDITTE);
|
||||
|
||||
@ -541,7 +534,7 @@ const char* BA3600_application::ragsoc_ditta(long codditta)
|
||||
return tmp;
|
||||
}
|
||||
|
||||
void BA3600_application::dati_anagrafici_ditta(TString& ind,TString& civ,TString& cap,
|
||||
void TStampa_indici::dati_anagrafici_ditta(TString& ind,TString& civ,TString& cap,
|
||||
TString& com,TString& prov)
|
||||
{
|
||||
TLocalisamfile anag (LF_ANAG);
|
||||
@ -581,7 +574,7 @@ void BA3600_application::dati_anagrafici_ditta(TString& ind,TString& civ,TString
|
||||
}
|
||||
}
|
||||
|
||||
const char* BA3600_application::descrizione_codreg(const TString& codreg)
|
||||
const char* TStampa_indici::descrizione_codreg(const TString& codreg)
|
||||
{
|
||||
TString16 dep;
|
||||
dep.format("%4d%-3s", _anno, (const char*)codreg);
|
||||
@ -598,7 +591,7 @@ const char* BA3600_application::descrizione_codreg(const TString& codreg)
|
||||
return tmp;
|
||||
}
|
||||
|
||||
void BA3600_application::compatta_ragsoc(TString& ragsoc)
|
||||
void TStampa_indici::compatta_ragsoc(TString& ragsoc)
|
||||
{
|
||||
TString app;
|
||||
|
||||
@ -612,7 +605,7 @@ void BA3600_application::compatta_ragsoc(TString& ragsoc)
|
||||
}
|
||||
}
|
||||
|
||||
void BA3600_application::preprocess_header()
|
||||
void TStampa_indici::preprocess_header()
|
||||
{
|
||||
if (_tipo_stampa ==1)
|
||||
crea_intestazione_prova();
|
||||
@ -621,7 +614,7 @@ void BA3600_application::preprocess_header()
|
||||
crea_intestazione_bollato();
|
||||
}
|
||||
|
||||
void BA3600_application::crea_intestazione_prova()
|
||||
void TStampa_indici::crea_intestazione_prova()
|
||||
{
|
||||
TString datastampastr;
|
||||
TString sep(132);
|
||||
@ -658,7 +651,7 @@ void BA3600_application::crea_intestazione_prova()
|
||||
set_header (7, (const char *) sep);
|
||||
}
|
||||
|
||||
void BA3600_application::crea_intestazione_bollato()
|
||||
void TStampa_indici::crea_intestazione_bollato()
|
||||
{
|
||||
TString datastampastr;
|
||||
TString sep(132);
|
||||
@ -699,7 +692,7 @@ void BA3600_application::crea_intestazione_bollato()
|
||||
set_header (7, (const char *) sep);
|
||||
}
|
||||
|
||||
bool BA3600_application::user_create()
|
||||
bool TStampa_indici::user_create()
|
||||
{
|
||||
_nditte = new TLocalisamfile (LF_NDITTE);
|
||||
_anag = new TLocalisamfile (LF_ANAG);
|
||||
@ -712,7 +705,7 @@ bool BA3600_application::user_create()
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool BA3600_application::user_destroy()
|
||||
bool TStampa_indici::user_destroy()
|
||||
{
|
||||
delete _msk;
|
||||
|
||||
@ -721,17 +714,20 @@ bool BA3600_application::user_destroy()
|
||||
delete _nditte;
|
||||
delete _anag;
|
||||
delete _comuni;
|
||||
|
||||
// Guy's wise advice
|
||||
if (_lib)
|
||||
delete _lib;
|
||||
if (_sort)
|
||||
delete _sort;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
int ba3600 (int argc, char* argv[])
|
||||
{
|
||||
|
||||
BA3600_application a;
|
||||
|
||||
TStampa_indici a;
|
||||
a.run(argc, argv, "Stampa indici registro libro unico");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -45,12 +45,12 @@ END
|
||||
|
||||
TEXT F_TITOLO_PROVA
|
||||
BEGIN
|
||||
PROMPT -11 7 "STAMPA DI PROVA"
|
||||
PROMPT -11 7 "@bSTAMPA DI PROVA"
|
||||
END
|
||||
|
||||
TEXT F_TITOLO_BOLLATO
|
||||
BEGIN
|
||||
PROMPT -11 7 "STAMPA SU LIBRI BOLLATI DELLO STUDIO"
|
||||
PROMPT -11 7 "@bSTAMPA SU LIBRI BOLLATI DELLO STUDIO"
|
||||
END
|
||||
|
||||
DATE F_DATA_STAMPA
|
||||
|
Loading…
x
Reference in New Issue
Block a user