Patch level : 11.0

Files correlati     : mg4.exe mg4300.msk mg4300.frm
Ricompilazione Demo : [ ]
Commento            :
Corretta stampa registro di magazzino in definitiva


git-svn-id: svn://10.65.10.50/branches/R_10_00@21033 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2010-10-19 15:22:14 +00:00
parent 668c990335
commit 74ecc8ba11
4 changed files with 121 additions and 109 deletions

View File

@ -1,5 +1,5 @@
#include <applicat.h> #include <applicat.h>
#include <printapp.h> #include <printer.h>
#include <recarray.h> #include <recarray.h>
#include <tabutil.h> #include <tabutil.h>
@ -10,6 +10,7 @@
#include "movmag.h" #include "movmag.h"
#include "rmovmag.h" #include "rmovmag.h"
#include "../cg/cglib01.h"
#include "../ve/veconf.h" #include "../ve/veconf.h"
#include "mglib.h" #include "mglib.h"
#include "mg4300.h" #include "mg4300.h"
@ -18,13 +19,13 @@
class TRegistro_giornalemag : public TRegistro_std class TRegistro_giornalemag : public TRegistro_std
{ {
public: public:
int freq_stampa() const { return get_int("I3"); } int freq_stampa() const { return get_int("I3"); }
bool raggruppato() const { return get_bool("B1"); } bool raggruppato() const { return get_bool("B1"); }
bool ragg_mag() const { return get_bool("B2"); } bool ragg_mag() const { return get_bool("B2"); }
bool ragg_giac() const { return get_bool("B3"); } bool ragg_giac() const { return get_bool("B3"); }
bool ragg_clafis() const { return get_bool("B4"); } bool ragg_clafis() const { return get_bool("B4"); }
bool ragg_grpfis() const { return get_bool("B5"); } bool ragg_grpfis() const { return get_bool("B5"); }
bool ragg_caus() const { return get_bool("B6"); } bool ragg_caus() const { return get_bool("B6"); }
long last_numreg() const { return get_long("I4"); } long last_numreg() const { return get_long("I4"); }
void set_last_numreg(long n) { put("I4",n); } void set_last_numreg(long n) { put("I4",n); }
@ -68,10 +69,10 @@ class TGiornalemag : public TForm_stampemg
TConfig *conf_ditta; TConfig *conf_ditta;
TArticolo_giacenza * _curr_art; TArticolo_giacenza * _curr_art;
TString16 _codlist,_catven; TString8 _codlist,_catven;
word last_pag_stampata; word last_pag_stampata;
long last_num_reg; long _last_num_reg;
TRegistro_giornalemag *_reg_giorn; TRegistro_giornalemag* _reg_giorn;
private: private:
TArticolo_giacenza &curr_art(); TArticolo_giacenza &curr_art();
@ -86,67 +87,71 @@ protected:
public: public:
void set_parametri(TMask & m); void set_parametri(TMask & m);
bool can_be_printed(); bool can_be_printed() const;
bool validate(TForm_item &cf, TToken_string &s); virtual bool validate(TForm_item &cf, TToken_string &s);
TGiornalemag(const char *name,const char *code) ; TGiornalemag(const char* name, const char* code) ;
~TGiornalemag(); ~TGiornalemag();
}; };
TArticolo_giacenza &TGiornalemag::curr_art() TArticolo_giacenza& TGiornalemag::curr_art()
{ {
TRectype & magrec=relation()->lfile(LF_MAG).curr(); const TRectype& magrec=relation()->curr(LF_MAG);
if (_curr_art==NULL || _curr_art->codice()!=magrec.get(MAG_CODART) ) { const TString80 codart = magrec.get(MAG_CODART);
if (_curr_art==NULL || _curr_art->codice()!= codart)
{
if (_curr_art) delete _curr_art; if (_curr_art) delete _curr_art;
_curr_art=new TArticolo_giacenza(magrec.get(MAG_CODART)); _curr_art=new TArticolo_giacenza(codart);
} }
return *_curr_art; return *_curr_art;
} }
bool TGiornalemag::validate(TForm_item &cf, TToken_string &s) bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
{ {
const TString code(s.get(0)); // prende il primo parametro, il codice del messaggio CHECK(_reg_giorn->num() == LF_TAB, "Giornale sputtanato: cacciare Feltri per continuare");
const TString80 code(s.get(0)); // prende il primo parametro, il codice del messaggio
TString16 subcode;
TString valore,vv; TString valore,vv;
TString subcode;
if (code=="_USER") { if (code=="_USER") {
subcode=s.get(); subcode=s.get();
if (subcode== "INTEST_REG") { if (subcode== "INTEST_REG") {
cf.set(_reg_giorn->intest()); cf.set(_reg_giorn->intest());
return TRUE; return true;
} else if (subcode== "INTEST_DITTA") { } else if (subcode== "INTEST_DITTA") {
if (_reg_giorn->stampa_intditta()) if (_reg_giorn->stampa_intditta())
s = "_DITTA,!RAGSOC"; s = "_DITTA,!RAGSOC";
else else
return TRUE; return true;
} else if (subcode== "PAGENO") { } else if (subcode== "PAGENO") {
valore << (int)(last_pag_stampata+printer().getcurrentpage()); valore << (int)(last_pag_stampata+printer().getcurrentpage());
cf.set(valore); cf.set(valore);
return TRUE; return true;
} else if (subcode== "NUMREGST") { } else if (subcode== "NUMREGST") {
valore << last_num_reg; valore << _last_num_reg;
cf.set(valore); cf.set(valore);
return TRUE; return true;
} else if (subcode=="INCNUMREGST") { } else if (subcode=="INCNUMREGST") {
last_num_reg=max(last_num_reg,_reg_giorn->last_numreg())+1; _last_num_reg=max(_last_num_reg,_reg_giorn->last_numreg())+1;
if (stampa_def) if (stampa_def)
{ {
_reg_giorn->set_last_numreg(last_num_reg); _reg_giorn->set_last_numreg(_last_num_reg);
_reg_giorn->rewrite(); _reg_giorn->rewrite();
} }
return TRUE; return true;
} else if (subcode== "REGISTRASTAMPA") { } else if (subcode== "REGISTRASTAMPA") {
TRectype & movr=cursor()->relation()->lfile(LF_MOVMAG).curr(); TRectype& movr = cursor()->curr(LF_MOVMAG);
if ((1 || movr.get_long("NUMREGST")<=last_num_reg )&& stampa_def) if ((1 || movr.get_long("NUMREGST")<=_last_num_reg )&& stampa_def)
{ {
// movimento ancora da registrare // movimento ancora da registrare
movr.put("NUMREGST",last_num_reg+1); movr.put("NUMREGST",_last_num_reg+1);
cursor()->relation()->lfile(LF_MOVMAG).rewrite(); cursor()->relation()->lfile(LF_MOVMAG).rewrite();
_reg_giorn->set_pag_stampate(last_pag_stampata+printer().getcurrentpage()); _reg_giorn->set_pag_stampate(last_pag_stampata+printer().getcurrentpage());
@ -158,24 +163,27 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
TDate datamov(cursor()->relation()->curr(LF_MOVMAG).get_date("DATAREG")); TDate datamov(cursor()->relation()->curr(LF_MOVMAG).get_date("DATAREG"));
switch (freq_stampa ) { switch (freq_stampa ) {
case 0: case 0:
valore.format(FR("%7g Movimento del %s "), (double)last_num_reg+1, (const char *)datamov.string()); valore.format(FR("%7g Movimento del %s "), (double)_last_num_reg+1, (const char *)datamov.string());
valore << cursor()->relation()->curr(LF_MOVMAG).get("DESCR"); valore << cursor()->relation()->curr(LF_MOVMAG).get("DESCR");
break; break;
default: default:
valore.format(FR("%7g Movimenti di %s, dal %d al %d"), (double)last_num_reg+1, valore.format(FR("%7g Movimenti di %s, dal %d al %d"), (double)_last_num_reg+1,
(const char *)itom(datamov.month()), (const char *)itom(datamov.month()),
(int)((datamov.day()-1)/freq_stampa)*freq_stampa+1, (int)((datamov.day()-1)/freq_stampa)*freq_stampa+1,
(int)min(((datamov.day()-1)/freq_stampa+1)*freq_stampa,TDate::last_day(datamov.month(),datamov.year())) ); (int)min(((datamov.day()-1)/freq_stampa+1)*freq_stampa,TDate::last_day(datamov.month(),datamov.year())) );
break; break;
} }
cf.set(valore); cf.set(valore);
return TRUE; return true;
} else if (subcode== "DATA_STAMPA") {
valore = stampa_def ? "" : TDate(TODAY).string();
cf.set(valore);
return true;
} else if (subcode== "INFO_FISC") { } else if (subcode== "INFO_FISC") {
valore.cut(0); valore.cut(0);
if (!ragg_mag) if (!ragg_mag)
{ {
vv=cursor()->relation()->lfile(LF_RMOVMAG).get("CODMAG"); vv=cursor()->curr(LF_RMOVMAG).get("CODMAG");
valore << TR("Mag.") << vv.mid(0,3); valore << TR("Mag.") << vv.mid(0,3);
vv=vv.mid(3,2); vv=vv.mid(3,2);
if (vv.not_empty()) if (vv.not_empty())
@ -186,10 +194,10 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
vv = ""; vv = "";
} }
const TRectype& anamag = cursor()->relation()->curr(LF_ANAMAG); const TRectype& anamag = cursor()->curr(LF_ANAMAG);
if (ragg_articoli) if (ragg_articoli)
{ {
valore << TR("Art.") << cursor()->relation()->lfile(LF_ANAMAG).get(ANAMAG_CODART) << ' '; valore << TR("Art.") << cursor()->curr(LF_ANAMAG).get(ANAMAG_CODART) << ' ';
TString livello(cursor()->relation()->curr(LF_RMOVMAG).get("LIVGIAC")); TString livello(cursor()->relation()->curr(LF_RMOVMAG).get("LIVGIAC"));
if (livello.not_empty() && livello_giac != 0) if (livello.not_empty() && livello_giac != 0)
@ -211,22 +219,22 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
{ {
if (ragg_classi) if (ragg_classi)
{ {
valore << TR("Classe fiscale ") << cursor()->relation()->lfile(LF_ANAMAG).get(ANAMAG_CLASSEFIS) << ' '; valore << TR("Classe fiscale ") << cursor()->curr(LF_ANAMAG).get(ANAMAG_CLASSEFIS) << ' ';
if (ragg_raggart) if (ragg_raggart)
{ {
valore << TR(" ragg. ") << cursor()->relation()->lfile(LF_ANAMAG).get(ANAMAG_RAGGFIS) << ' '; valore << TR(" ragg. ") << cursor()->curr(LF_ANAMAG).get(ANAMAG_RAGGFIS) << ' ';
} }
} else { } else {
vv.cut(0); vv.cut(0);
vv << TR("Art. ") << cursor()->relation()->lfile(LF_ANAMAG).get(ANAMAG_CODART); vv << TR("Art. ") << cursor()->curr(LF_ANAMAG).get(ANAMAG_CODART);
} }
} }
valore << vv; valore << vv;
cf.set(valore); cf.set(valore);
return TRUE; return true;
} }
else if (subcode== "INFO_CAUS") else if (subcode== "INFO_CAUS")
{ {
@ -247,7 +255,7 @@ bool TGiornalemag::validate(TForm_item &cf, TToken_string &s)
valore << TR("Causale ") << cf.get() << ' ' << rec_caus.get("S0"); valore << TR("Causale ") << cf.get() << ' ' << rec_caus.get("S0");
} }
cf.set(valore); cf.set(valore);
return TRUE; return true;
} }
} }
return TForm_stampemg::validate(cf, s); return TForm_stampemg::validate(cf, s);
@ -373,24 +381,25 @@ void TGiornalemag::calcola_range_movimenti(TRecnotype& primo, TRecnotype& ultimo
void TGiornalemag::set_parametri(TMask & m) void TGiornalemag::set_parametri(TMask & m)
{ {
// set static variables // set static variables
_annoes=m.get_int(F_ANNOES);
_dadata=m.get_date(F_DATAIN); _dadata=m.get_date(F_DATAIN);
_adata=m.get_date(F_DATAFIN); _adata=m.get_date(F_DATAFIN);
freq_stampa = m.get_int(F_FREQ); freq_stampa = m.get_int(F_FREQ);
stampa_def = (*m.get(F_DEFINITIVA) == 'D'); stampa_def = m.get(F_DEFINITIVA)[0] == 'D';
ragg_mag = m.get_bool(F_RAGGMAG); ragg_mag = m.get_bool(F_RAGGMAG);
ragg_articoli = m.get_bool(F_RAGGARTICOLI ); ragg_articoli = m.get_bool(F_RAGGARTICOLI );
ragg_classi = m.get_bool(F_CLASSEFISART ); ragg_classi = m.get_bool(F_CLASSEFISART );
ragg_raggart = m.get_bool(F_RAGGFISART ); ragg_raggart = m.get_bool(F_RAGGFISART );
ragg_caus = m.get_bool(F_RAGGCAUS ); ragg_caus = m.get_bool(F_RAGGCAUS );
livello_giac = m.get_int(F_TOLIVELLOGIAC); livello_giac = m.get_int(F_TOLIVELLOGIAC);
_annoes=m.get_int(F_ANNOES);
cur=cursor(); cur=cursor();
giofrm = this; giofrm = this;
// load Tregistro // load Tregistro
if (_reg_giorn) delete _reg_giorn; if (_reg_giorn)
_reg_giorn= new TRegistro_giornalemag(m.get(F_CODREG),m.get_int(F_ANNOES)); delete _reg_giorn;
_reg_giorn= new TRegistro_giornalemag(m.get(F_CODREG),_annoes);
last_pag_stampata=_reg_giorn->pag_stampate(); last_pag_stampata=_reg_giorn->pag_stampate();
last_num_reg=_reg_giorn->last_numreg(); _last_num_reg=_reg_giorn->last_numreg();
// show/hide sections // show/hide sections
find_field('B',odd_page,"HEADER_RAGG_FISC").show( find_field('B',odd_page,"HEADER_RAGG_FISC").show(
@ -409,7 +418,7 @@ void TGiornalemag::set_parametri(TMask & m)
int err; int err;
for (err = mag.first(); err == NOERR; err = mag.next()) for (err = mag.first(); err == NOERR; err = mag.next())
{ {
const TString16 codmag(mag.get("CODTAB").left(3)); const TString4 codmag = mag.get("CODTAB").left(3);
if (codmag.len() == 3 && mag.get("S8")==m.get(F_CODREG)) if (codmag.len() == 3 && mag.get("S8")==m.get(F_CODREG))
_cod_magazzini.add(codmag); _cod_magazzini.add(codmag);
} }
@ -433,31 +442,30 @@ void TGiornalemag::set_parametri(TMask & m)
cursor()->setregion(recfr, recto); cursor()->setregion(recfr, recto);
// setta il filtro sui magazzini di questo giornale // setta il filtro sui magazzini di questo giornale
cursor()->set_filterfunction(filter_func,FALSE); cursor()->set_filterfunction(filter_func,false);
} }
bool TGiornalemag::filter_func(const TRelation* r) bool TGiornalemag::filter_func(const TRelation* r)
{ {
// const TRectype& movmag = r->curr(LF_MOVMAG);
const TRectype& rmovmag = r->curr(LF_RMOVMAG); const TRectype& rmovmag = r->curr(LF_RMOVMAG);
const TRectype& movmag = cache().get(LF_MOVMAG, rmovmag.get(RMOVMAG_NUMREG)); const TRectype& movmag = cache().get(LF_MOVMAG, rmovmag.get(RMOVMAG_NUMREG));
const TDate datareg = movmag.get_date(MOVMAG_DATAREG); const TDate datareg = movmag.get_date(MOVMAG_DATAREG);
if (datareg.year() != _annoes) if (datareg.year() != _annoes)
return FALSE; return false;
if (!_dadata.empty() && datareg < _dadata) if (!_dadata.empty() && datareg < _dadata)
return FALSE; return false;
if (!_adata.empty() && datareg > _adata) if (!_adata.empty() && datareg > _adata)
return FALSE; return false;
const TString4 codmag = rmovmag.get(RMOVMAG_CODMAG).left(3); const TString4 codmag = rmovmag.get(RMOVMAG_CODMAG).left(3);
if (!_cod_magazzini.is_key(codmag)) if (!_cod_magazzini.is_key(codmag))
return FALSE; return false;
// considera solo le causali "fiscali" o quelle che movimentano le rimanenze iniziali(movimenti d'apertura) // considera solo le causali "fiscali" o quelle che movimentano le rimanenze iniziali(movimenti d'apertura)
bool rval = FALSE; bool rval = false;
TString16 codcaus = rmovmag.get(RMOVMAG_CODCAUS); TString8 codcaus = rmovmag.get(RMOVMAG_CODCAUS);
if (codcaus.empty()) if (codcaus.empty())
codcaus = movmag.get(MOVMAG_CODCAUS); codcaus = movmag.get(MOVMAG_CODCAUS);
TCausale_magazzino* caus = (TCausale_magazzino*)_cau_magazzino.objptr(codcaus); TCausale_magazzino* caus = (TCausale_magazzino*)_cau_magazzino.objptr(codcaus);
@ -467,33 +475,41 @@ bool TGiornalemag::filter_func(const TRelation* r)
return rval; return rval;
} }
bool TGiornalemag::can_be_printed() bool TGiornalemag::can_be_printed() const
{ {
bool ok = true;
if (stampa_def) if (stampa_def)
{ {
TDate dadata = _dadata, adata;
if (!dadata.ok())
{
TEsercizi_contabili esc;
esc.code2range(_annoes, dadata, adata);
}
TLocalisamfile mov(LF_MOVMAG); TLocalisamfile mov(LF_MOVMAG);
mov.setkey(3); mov.setkey(3);
mov.put(MOVMAG_DATAREG,_dadata); mov.put(MOVMAG_DATAREG, dadata);
mov.read(); if (mov.read(_isgteq) == NOERR && !mov.bof())
mov.prev(); {
if (!mov.eof() || mov.get(MOVMAG_NUMREGST)!=_reg_giorn->last_numreg()) const long numreg = mov.get_long(MOVMAG_NUMREG); // Debugging purpose only
return FALSE; const long mov_num = mov.get_long(MOVMAG_NUMREGST);
const long reg_num = _reg_giorn->last_numreg();
ok = mov_num == reg_num;
}
} }
return TRUE; return ok;
} }
TGiornalemag::TGiornalemag(const char *name,const char *code) : TGiornalemag::TGiornalemag(const char *name,const char *code) :
TForm_stampemg(name,code),_curr_art(NULL), TForm_stampemg(name,code),_curr_art(NULL),
last_pag_stampata(0),last_num_reg(0),_reg_giorn(NULL) last_pag_stampata(0),_last_num_reg(0),_reg_giorn(NULL)
{ { }
}
TGiornalemag::~TGiornalemag() TGiornalemag::~TGiornalemag()
{ {
if (_curr_art) delete _curr_art; if (_curr_art) delete _curr_art;
if (_reg_giorn) delete _reg_giorn; if (_reg_giorn) delete _reg_giorn;
} }
// dichiarazioni degli static // dichiarazioni degli static
@ -516,46 +532,30 @@ int TGiornalemag::_annoes;
// STAMPA giornale // STAMPA giornale
class TStampa_giornalemag : public TSkeleton_application class TStampa_giornalemag : public TSkeleton_application
{ {
TStampemg_mask * _mask;
TGiornalemag * _giorn_mag; // to be moved into TPrint_application
TCursor * _cur;
protected: protected:
virtual bool create();
virtual bool destroy();
virtual void main_loop(); virtual void main_loop();
public:
TStampa_giornalemag() {}
}; };
bool TStampa_giornalemag::create()
{
open_files(LF_ANAMAG, LF_MOVMAG, LF_RMOVMAG, LF_TAB, LF_TABCOM, 0);
_mask = new TStampemg_mask("mg4300");
_mask->show(F_TOLIVELLOGIAC, livelli_giacenza().enabled()); // Abilita la gestione del dettaglio livello giacenza
return TSkeleton_application::create();
}
bool TStampa_giornalemag::destroy()
{
delete _mask;
return TRUE;
}
void TStampa_giornalemag::main_loop() void TStampa_giornalemag::main_loop()
{ {
while (_mask->run() == K_ENTER) open_files(LF_ANAMAG, LF_MOVMAG, LF_RMOVMAG, LF_TAB, LF_TABCOM, 0);
TStampemg_mask mask("mg4300");
mask.show(F_TOLIVELLOGIAC, livelli_giacenza().enabled()); // Abilita la gestione del dettaglio livello giacenza
while (mask.run() == K_ENTER)
{ {
if (_mask->magazz_ini().gestmag(TRUE)) if (mask.magazz_ini().gestmag(true))
{ {
_giorn_mag = new TGiornalemag("mg4300", ""); TGiornalemag* giorn_mag = new TGiornalemag("mg4300", "");
_giorn_mag->set_parametri(*_mask); giorn_mag->set_parametri(mask);
if (_giorn_mag->can_be_printed())
_giorn_mag->print(); bool can_print = giorn_mag->can_be_printed();
else if (!can_print)
error_box(TR("Impossibile stampare il giornale dalla data indicata")); can_print = yesno_box(TR("Non risultano stampati i movimenti precedenti:\nContinuare ugualmente?"));
delete _giorn_mag; if (can_print)
giorn_mag->print();
delete giorn_mag;
} }
} // while true } // while true
return ; return ;
@ -565,6 +565,6 @@ void TStampa_giornalemag::main_loop()
int mg4300(int argc, char* argv[]) int mg4300(int argc, char* argv[])
{ {
TStampa_giornalemag a; TStampa_giornalemag a;
a.run(argc,argv,TR("Stampa giornale di magazzino")); a.run(argc, argv, TR("Stampa giornale di magazzino"));
return 0; return 0;
} }

View File

@ -36,11 +36,11 @@ SECTION HEADER ODD 5
MESSAGE _USER,INTEST_DITTA MESSAGE _USER,INTEST_DITTA
END END
STRINGA 2 10 DATA 2
BEGIN BEGIN
KEY "Data" KEY "Data"
PROMPT 66 1 "Data " PROMPT 66 1 ""
MESSAGE _TODAY MESSAGE _USER,DATA_STAMPA
END END
STRINGA 4 45 STRINGA 4 45
@ -50,7 +50,7 @@ SECTION HEADER ODD 5
MESSAGE _USER,INTEST_REG MESSAGE _USER,INTEST_REG
END END
STRINGA 5 80 STRINGA 5 90
BEGIN BEGIN
KEY "Separatore (iniziale)" KEY "Separatore (iniziale)"
PROMPT 1 3 "------------------------------------------------------------------------------------------------------------------------------------------------------" PROMPT 1 3 "------------------------------------------------------------------------------------------------------------------------------------------------------"
@ -71,7 +71,11 @@ SECTION HEADER ODD 5
BEGIN BEGIN
PROMPT 75 4 "Valore" PROMPT 75 4 "Valore"
END END
STRINGA 5 80 STRINGA 10
BEGIN
PROMPT 84 4 "Causale"
END
STRINGA 5 90
BEGIN BEGIN
KEY "Separatore (iniziale)" KEY "Separatore (iniziale)"
PROMPT 1 5 "------------------------------------------------------------------------------------------------------------------------------------------------------" PROMPT 1 5 "------------------------------------------------------------------------------------------------------------------------------------------------------"
@ -110,7 +114,6 @@ SECTION BODY ODD 2
BEGIN BEGIN
PROMPT 10 1 "" PROMPT 10 1 ""
MESSAGE COPY,FF_INFOCAUS MESSAGE COPY,FF_INFOCAUS
FIELD CAUS
FIELD LF_MOVMAG->CODCAUS FIELD LF_MOVMAG->CODCAUS
END END
STRINGA 102 12 STRINGA 102 12
@ -119,6 +122,12 @@ SECTION BODY ODD 2
FIELD LF_UMART->UM FIELD LF_UMART->UM
MESSAGE COPY,FF_UMTOT MESSAGE COPY,FF_UMTOT
END END
STRINGA 105
BEGIN
FLAGS "H"
FIELD CAUS
MESSAGE COPY,666
END
END END
SECTION RAGG_FISCALE 1 0 0 FILE LF_RMOVMAG GROUP FISC_FIELD SECTION RAGG_FISCALE 1 0 0 FILE LF_RMOVMAG GROUP FISC_FIELD
@ -226,6 +235,11 @@ SECTION BODY ODD 2
MESSAGE _NUMEXPR,#FF_VALTOT/#FF_QTARAGGFIS MESSAGE _NUMEXPR,#FF_VALTOT/#FF_QTARAGGFIS
GROUP 2 GROUP 2
END END
STRINGA 666
BEGIN
// La riga copia qui la sua causale
PROMPT 85 1 ""
END
END // totali ragg_ END // totali ragg_
END // RAGG CRONOLOGICO END // RAGG CRONOLOGICO
END // BODY: CICLO MOV END // BODY: CICLO MOV

View File

@ -38,7 +38,7 @@ END
LISTBOX F_DEFINITIVA 10 LISTBOX F_DEFINITIVA 10
BEGIN BEGIN
PROMPT 2 3 "Si desidera la stampa " PROMPT 2 3 "Modalità di stampa "
ITEM "P|di prova" ITEM "P|di prova"
ITEM "D|definitiva" ITEM "D|definitiva"
END END

View File

@ -49,12 +49,10 @@ bool TRegistro_std::write(bool rewrite) const
{ {
int err = ~NOERR; int err = ~NOERR;
TTable reg("REG"); TTable reg("REG");
reg.set_curr((TRectype *)this);
if (rewrite) if (rewrite)
err = reg.rewrite(); err = reg.rewrite_write(*this);
else else
err = reg.write(); err = reg.write(*this);
return err == NOERR; return err == NOERR;
} }