diff --git a/cg/cg3500.cpp b/cg/cg3500.cpp index 585bc19b9..96c71d016 100755 --- a/cg/cg3500.cpp +++ b/cg/cg3500.cpp @@ -41,7 +41,6 @@ typedef enum {stampagruppo, stampaconto, stampasottoconto, fine} tipo; class TStampa_riepilogo : public TPrintapp { - TProgind * _prog; TSaldi_list* _lista; TIsamtempfile * _tmp_saldi; tipo _tp; @@ -55,10 +54,9 @@ class TStampa_riepilogo : public TPrintapp public: - bool menu (MENU_TAG m) { return TPrintapp::menu(m) ; } - bool user_create() ; - bool user_destroy(); - bool set_print(int); + virtual bool user_create() ; + virtual bool user_destroy(); + virtual bool set_print(int); virtual bool preprocess_print(int,int); virtual void preprocess_header(); @@ -100,11 +98,17 @@ bool TStampa_riepilogo::riepilogo() cp=-1; _udata_max = 0l; - TLocalisamfile pcn(LF_PCON); + TRelation rel(LF_PCON); + TCursor cur(&rel); + cur.freeze(); + const TRectype& pcn = rel.curr(); + const TRecnotype items = cur.items(); + TProgind prog(items, TR("Elaborazione in corso..."), true, true); - for (pcn.first(); !pcn.eof(); pcn.next()) + for (cur = 0L; cur.pos() < items; ++cur) { - _prog->addstatus(1); + if (!prog.addstatus(1)) + break; g = pcn.get_int (PCN_GRUPPO); c = pcn.get_int (PCN_CONTO); s = pcn.get_long(PCN_SOTTOCONTO); @@ -182,9 +186,7 @@ bool TStampa_riepilogo::riepilogo() gp = conto.gruppo(); cp = conto.conto(); } - TRecnotype recnum = pcn.recno(); - pcn.next(); - if (pcn.eof()) + if (cur.pos() == items-1) { saldo_conto = prg_conto_dare - prg_conto_avere; prg_gruppo_dare += prg_conto_dare; @@ -236,7 +238,6 @@ bool TStampa_riepilogo::riepilogo() _tmp_saldi->write(); } } - pcn.readat(recnum); continue; } @@ -298,9 +299,7 @@ bool TStampa_riepilogo::riepilogo() cp = conto.conto(); } - TRecnotype recnum = pcn.recno(); - pcn.next(); - if (pcn.eof()) + if (cur.pos() == items-1) { saldo_conto = prg_conto_dare - prg_conto_avere; prg_gruppo_dare += prg_conto_dare; @@ -344,15 +343,15 @@ bool TStampa_riepilogo::riepilogo() //_tmp_saldi->put(SLD_PDARESCA,saldo_gruppo); else { - saldo_gruppo = saldo_gruppo * (-1.00); + saldo_gruppo = -saldo_gruppo; _tmp_saldi->put(SLD_PAVEREPRO,saldo_gruppo); // W96SALDI del 10-06-96 //_tmp_saldi->put(SLD_PAVERESCA,saldo_gruppo); } _tmp_saldi->write(); } } - pcn.readat(recnum); } + return TRUE; } @@ -372,7 +371,6 @@ bool TStampa_riepilogo::ricerca_cf(TConto& conto,int indbil,real& prg_conto_dare prg_conto_avere = 0.00; for (int i = 0; i < items; i++) { - _prog->addstatus(1); const TRectype* r = _lista->saldi(); s = r->get_long(SLD_SOTTOCONTO); prg_dare = 0.00; @@ -831,13 +829,8 @@ bool TStampa_riepilogo::set_print(int) _scelta = m.get_int(F_STAMPA); _richiesta = m.get_int(F_RICHIESTA); _data = m.get(F_DATASTAMPA); - TLocalisamfile pcn(LF_PCON); - - _prog = new TProgind(pcn.items(), TR("Elaborazione in corso..."), FALSE); - riepilogo(); - delete _prog; return TRUE; } return FALSE; diff --git a/cg/cg3500a.uml b/cg/cg3500a.uml index 89255a33a..e6b8bd768 100755 --- a/cg/cg3500a.uml +++ b/cg/cg3500a.uml @@ -5,14 +5,14 @@ PAGE "Riepilogo Gruppi/Conti" -1 -1 71 16 NUMBER F_CODDITTA 5 BEGIN PROMPT 2 1 "Ditta " - FLAGS "FRD" - USE LF_NDITTE KEY 1 - CHECKTYPE REQUIRED - INPUT CODDITTA F_CODDITTA - DISPLAY "Codice" CODDITTA + FLAGS "FRD" + USE LF_NDITTE + CHECKTYPE REQUIRED + INPUT CODDITTA F_CODDITTA + DISPLAY "Codice" CODDITTA DISPLAY "Ragione sociale @50" RAGSOC OUTPUT F_CODDITTA CODDITTA - OUTPUT F_RAGSOC RAGSOC + OUTPUT F_RAGSOC RAGSOC END STRING F_RAGSOC 50 @@ -30,7 +30,7 @@ END NUMBER F_ANNO 4 BEGIN - PROMPT 2 3 "Cod. esercizio " + PROMPT 2 3 "Esercizio " HELP "Codice esercizio di cui effettuare la stampa" FLAGS "RZ" USE ESC @@ -44,7 +44,7 @@ BEGIN ADD RUN cg0 -5 esc END -RADIOBUTTON F_STAMPA 30 +RADIOBUTTON F_STAMPA 1 30 BEGIN PROMPT 2 5 "Scelta stampa " HELP "Indicare il grado di riepilogo" @@ -52,7 +52,7 @@ BEGIN ITEM "2|Stampa riepilogo gruppi" END -RADIOBUTTON F_RICHIESTA 44 +RADIOBUTTON F_RICHIESTA 1 44 BEGIN PROMPT 2 9 "Richiesta stampa " HELP "Indicare il tipo di movimenti da stampare" @@ -60,16 +60,10 @@ BEGIN ITEM "2|Stampa progressivi movimenti eliminati" END -BUTTON DLG_OK 9 2 -BEGIN - PROMPT -12 -1 "" -END - -BUTTON DLG_QUIT 9 2 -BEGIN - PROMPT -22 -1 "" -END +ENDPAGE +TOOLBAR "topbar" 0 0 0 2 +#include ENDPAGE ENDMASK